Некоторые аспекты взлома web-серверов В наше время множество организаций, учреждений, компаний, размещают в сети Интернет свои веб-сайты, так как сайт это отличная и дешёвая реклама,но многие даже не задумывались, что это далеко не безопасное предприятие. Сейчас мы попытаемся рассмотреть более-менее основной алгоритм взлома веб-сайтов. # для начала атакующий занимается сбором информации о сервере: 1) Узнаёт ХОСТ сервера, IP адрес. 2) Сканирование открытых портов, проверка версий сервисов (демонов). 3) Сканирование и обнаружение уязвимых скриптов. 4) Сбор важной информации. # Рассмотрим каждый пункт: 1) Для получения ХОСТА сервера и IP адреса можно воспользоватся утилитой Host Lookup. 2) Сканирование портов на мой взгляд лучше Nmap или любой другой порт-сканер, для определения версий сервисов можно набрать команду telnet www.server.com 21 (21 в данном случае FTP сервис, для определения других меняйте порт). 3) Для этого можно воспользоватся системами автоматизированного поиска, тоесть CGI сканером. 4) Иногда важная информация может находиться в контенте сайта, изучите самостоятельно все страници сайта посмотрите исходный код html документов, возможно вы найдёте важную информацию, это e-mail адреса, номера телефонов, Ф.И.О пользователей или администраторов. Если вам очень сильно повезёт вы найдёте пароль или данные которые в последствии окажутся словом паролем. # Информация собрана, что дальше ? Рассмотрим некоторые методы взлома через уязвимые CGI сценарии: 1) К примеру после сканирования сервера вы обнаружили несколько уязвимых скриптов ищите их описания, и применяйте на сервере, возможно вы сумеете получить ожидаемые результаты. Например очень старая дыра (1996 г.), скрипт phf но кое где он ещё присутствует. Eсли ввести в строке вашего броузера следующую строчку http://www.server.com/cgi-bin/phf?Qalias=x&0a/bin/cat%20/etc/passwd броузер выдаст вам содержимое файла /etc/passwd (если вёб-сервер имеет права доступа). Дело останется за малым, расшифровать пароли. В настоящее время существует множество уязвимых скриптов и также много описаний к их (уязвимостей) использованию. Рассмотрим методы взлома через дырки в сервисах. Проскаив порты узнав версии сервисов вы можете обнаружить что некоторые из сервисов уязвимы. Для использование дыры вам потребуется exploit их полно на http://hack.com.ru под различные ОС и сервисы. # exploit что это такое и как его использовать ? exploit - маленькая программка написанная на языке C или perl (обычно) представляет собой програмную реализацию метода атаки на уязвимый сервис. Поставляется эксплоит в исходном коде к примеру exploit.c или exlpoit.pl (не всегда) Рассмотрим использование эксплоитов на C. Единственный минус ( а может и плюс ) в том, что скомпилировать и запустить удасться только в *nix системах. Делается это следующим образом. В шелле вы переходите в каталог с эксплоитом к примеру /home затем убедимся что сплоит есть команда ls выведет листинг директории если эксплоит есть пишем gcc exploit.c -o exploit если не было ошибок при компиляции то можно запускать ./exlpoit программа выдаст нам опции как её использовать а дальше в зависимости от того какой эксплоит. Также есть эксплоиты на си и под платформу Windows. Их также не сложно скомпилировать. Если эксплоит написан на Perl его можно запускать как из под *nix, так и из под Windows. В *nix запускается анологично переходим в каталог с эксплоитом, но компилировать ничего не нужно достаточно просто запустить ./exploit.pl В Windows запустить можно, но нужно установить perl и в коде эксплоита поменять путь к перлу #!/usr/local/bin/perl на #!c:\per\perl.exe и запускать из коммандой строки. # Теперь поговорим о паролях. В *nix пароли лежат в /etc/passwd в ***BSD /etc/master.passwd но обычно они оттенены в /etc/shadow На чтение этих файлов права имеет только root. Но на многих системах создаются бэкапы файлов паролей и можно попытаться просмотреть их. Популярным является шифрование DES и MD5. Если вы имеете пароль типа root:NRb5TdPlK7Ezk:0:0:0:0 то это хэш, его надо расшифровать для этого можно воспользоваться программой John the ripper. Но если пароль в незашифрованном виде 38dx/asdf*s то его будет крайне долго расшифровывать, но возможно =) В Windows NT пароли лежат в файле C:\WinNT\repair\sam но прав на него явно не хватит... но есть бэкап этого файла c:\winnt\repair\sam._ вот его можно расшифровать L0pht Crack. P.S. Дырявые сайты очень лекго ломаются - вся сложность в том, что попробуй найди дырявый сайт. =) Автор: Gr4sp3r --------------------------------------- RusH security team - http://rst.void.ru