Почтовые шалости

CuTTer

Xakep, номер #054, стр. 054-074-3


$mailer="Maravan (v1.0)";

$log=0;

## Skipped some code

## Добавление левой инфы в письмо

if (($info{helo}==0) && ($tbuffer=~/^HELO /i)){

$tbuffer="HELO $name\n";

$info{helo}=1;

}

if (($info{helo}==0) && ($tbuffer=~/^EHLO /i)){

$tbuffer="EHLO $name\n";

$info{helo}=1;

}

## Смена X-Mailer

if (($info{mailer}==0) && ($tbuffer=~/X-Mailer: .*\r?\n/i)){

$tbuffer=~s/X-Mailer: .*\r?\n/X-Mailer: $mailer\n/i;

$info{mailer}=1;

}

## Изменение хедера письма

if (($info{server}==0) && ($tbuffer=~/Date: /i)){

$tbuffer=$info.$tbuffer;

$info{server}=1;

}

ХХХХХХХХХХХХХХХХХХХХХ

Тебе стоит поменять в нем только следующие переменные:

$localport - порт, на котором будет работать наш SMTP-сервер. Если будешь пускать локально со своей тачки, то можешь оставить и его (25). Если же это *nix тачка, где у тебя отсутствуют root права, то поставь любой порт выше 1024.

$host - хост настоящего SMTP-сервера. Именно на него будет пересылаться скорректированное письмо. Также с ним будет происходить SMTP аутентификация, если она нужна.

$port - номер порта настоящего SMTP-сервера. Обычно всегда равно 25.

$name - приветствие при соединении. Отправляется в команде HELO. Можешь поменять на что-нибудь свое.

$mailer - имя почтовика. Добавил для розыгрыша "умных" людей. Например, можешь написать туда, что у тебя "The Bat! (v2.03) Personal" или "Zlobodrom (v1.0)". Теперь у получателя письма в заголовках будет отображаться не какой-нибудь Outlook Express, а что-то более продвинутое.

$log - логирование. 0 - выключено, 1 - включено. На самом деле можешь не включать, оно тебе на фиг не нужно.

Осталось создать еще один файл info.txt. В нем как раз и находится цепочка левых серверов, которая добавится в письмо:

Этот файл можешь менять как угодно. Все зависит от твоей фантазии и извращенности. Единственное, на что необходимо обратить внимание, это две записи: !smtp! и !smtpip!. Их придется оставить, чтобы не ломалась "правдивость" письма. Иначе пользователь сразу заметит, что цепочка рвется, причем самым наглым образом.

Установка

Здесь все просто. Для начала скачиваешь архив mailjoke.zip с www.xakep.ru (смотри раздел Х-Релизы) или берешь его с нашего диска. Далее распаковываешь это добро и делаешь необходимые корректировки в описанных выше переменных. Заливаешь файлы, причем желательно на какой-нибудь *nix сервер. Проставляешь права 755 файлу mailjoke.pl (chmod +x mailjoke.pl). Все, наш SMTP-сервер готов к запуску - ./mailjoke.pl. Сервер заработал.

Открывай почтовик. Поставь в настройках адрес нашего нового SMTP-сервера. Допустим, это maravan.ru:1025. Теперь для проверки напиши любое письмо самому себе. Отправь и чекни свою почту. Открой новое письмо. Обрати там внимание на имя почтовика и на саму цепочку адресов (для этого включи отображение служебной информации). У тебя должно получиться что-то типа этого:

Получилось весьма забавно :). Теперь, помимо шуток над своими друзьями, ты получил и анонимность в отправке писем. Так что совместили приятное с полезным.

Чего же не хватает?

Естественно, наша программа несовершенна. Она, например, всегда отправляет дурацкие даты в письме. У пользователя при просмотре это вызовет как минимум недоумение, а если задуматься глубже, то станет ясно, что письмо - fake. Поэтому даты надо подставлять уже во время отправки письма, а не хранить готовыми в файле. Также стоит добавить генератор различной длины цепочек. Причем, генерировать их с разными баннерами (т.е. менять via smtpd with ESMTP на что-то другое), подставлять живые хосты, чтобы у пользователя не возникало лишних подозрений. Можно создать массив значений для поля X-Mailer. Тогда получатели писем будут удивляться, что же это за отправитель такой странный. В общем, идей можно позапихивать предостаточно. Главное - выделить под это свое время.

Назад на стр. 054-074-2  Содержание  Вперед на стр. 054-074-4