FAQМаг (icq 884888, http://snipper.ru) Q: Какие существуют сканеры для определения версий различных CMS на основе метода сравнения "отпечатков" (fingerprinting)?A: Самым навороченным из таких сканеров является написанный на Ruby с применением SQLite3 DB "wafp" (Web Application Finger Printer). Работает сканер следующим образом:
Пример для phpMyAdmin (загружается файл /themes/darkblue_orange/img/b_info.png и сравнивается его чексумма):
Скачать программу и почитать подробности можно на официальном сайте www.mytty.org/wafp. Также хочу посоветовать неплохую статью (на английском языке), находящуюся по адресу http://sucuri.net/?page=docs&title=webapp-version-detection. В статье описывается метод поиска различий в файлах разных версий любых CMS, а также предлагается (на основе описанного метода) узнать версию любого WordPress блога онлайн. Напоследок, обрати внимание на "Joomla Vulnerability Scanner" от проекта OWASP (www.owasp.org/index.php/Category:OWASP_Joomla_Vulnerability_Scanner_Project) и сканер уязвимостей CMS Drupal от Raz0r'а (raz0r.name/drupalscan/). Q: Слышал, что в vBulletin найдена возможность просматривать посты под "хайдом" (доступные для просмотра после набора определенного количества сообщений). Как это сделать?A: По информации с форума Асечки хайды на vB можно просмотреть следующим образом:
Q: Как узнать, в каком формате хранится пароль в БД у определенной CMS?A: Неплохой список таких форматов и, соответственно, способов шифрования пароля находится на itdefence.ru/dbitems. Пример:
Также, многие форматы встроены в известный брутер PasswordsPro (www.insidepro.com/eng/passwordspro.shtml). Если формат хеша тебе неизвестен, то ты всегда сможешь попросить помощи на форуме авторов программы forum.insidepro.com. Q: Как проще всего отлаживать php-скрипты?A: Традиционно php-скрипты отлаживают "ручками" путем вывода всех сообщений об ошибках (директива error_reporting установлена в положение E_ALL) и расстановкой echo/print сообщений по всему коду (подробное описание ищи на http://phpfaq.ru/debug). Но эта техника пришла к нам прямиком из прошлого века! Так что спешу представить тебе замечательный отладчик Expert Debugger (phpexperteditor.com), который создали специально для тебя авторы известного редактора PHP Expert Editor. Прога использует DBG PHP Debugger, имеет комфортный интерфейс и может интегрироваться с другими редакторами и IDE или использоваться независимо. Особенности программы:
Найти отладчик можно на официальном сайте www.ankord.com. Q: Каким образом можно отслеживать статус ICQ-номера?A: Тебе поможет замечательная программа ICQ Monitor (http://avtuh.ru/2009/11/27/icq-monitor.html), которая создана для мониторинга статуса ICQ-номера (Онлайн/Оффлайн/Невидимый). Прога может следить за состоянием нужного тебе уина (в том числе и в свернутом в трей состоянии ) через заданный тобой промежуток времени и записывать все это дело в лог. Также, по этой теме тебе поможет всем известный QIP с его "Всевидящим оком" :) Q: В прошлом выпуске FAQ ты писал о наиболее популярных CMS в сети. Как у них обстоят дела с безопасностью?A: Насчет уязвимостей движков из "большой тройки" (WordPress, Drupal и Joomla!), я думаю, тебе уже все известно, а вот с немногим менее популярными CMS из нашего "топ 10" все обстоит несколько иначе. Копаются в их коде редкие энтузиасты, поэтому в свободном доступе присутствуют только эксплойты под старые версии. Тем не менее, данный факт открывает для нас огромные просторы для поиска багов. Например, не так давно я нашел выполнение произвольного PHP кода в последней версии TYPOlight. Уязвимость заключается в небезопасном использовании модификатора "e" (если этот модификатор указан, то итоговое выражение будет интерпретироваться как php-код, именно на этом факте была основана известнейшая бага в форуме phpBB2) в функции preg_replace():
Чтобы добраться до нужной нам функции, необходимо оставить подготовленный специальным образом комментарий в любой новости. Почитать о том, как сформировать такой комментарий, а также найти эксплойт ты сможешь по адресу http://snipper.ru/view/6/typolight-270-php-code-execution-exploit. Q: Как определить, какую информацию обо мне передает мой браузер при заходе на какой-либо сайт?A: Если тебе лень писать свой парсер хидеров (а именно в хидерах из любого http-запроса содержится все самое вкусное), то в данном вопросе поможет онлайн-утилита http://exploit.in/tools/anonym.php. Определяются следующие параметры:
Также нельзя забывать о простом JavaScript. С помощью скриптов на js можно выяснить многие интересные вещи о твоем компьютере, вплоть до разрешения экрана и версии OS. Если тебе интересна такая информация, то советую потестить опенсорсную альтернативу Google Analytics – Piwik (www.piwik.org). Q: Слышал об очень высоких ценах на 3х-символьные домены. Интересно было бы узнать об этом подробнее.A: Существует замечательный буржуйский сайт http://3character.com, на котором выставлены на продажу множество 3х-символьных доменов, а также приведена информация о стоимости некоторых купленных ранее доменах. Приведу для примера небольшой список наиболее крупных покупок за последние годы (домен, цена, дата продажи, покупатель):
Как видишь, цены очень и очень впечатляют, так что тебе есть смысл заняться киберсквоттингом :) Q: Решил заняться доменами. Очень часто на домайнерских форумах встречаю обозначения вроде LLLL, CCCC и т.д. Как их расшифровать? A: Приведенные тобой обозначения представляют собой маску домена. Именно по ней оцениваются его стоимость и привлекательность.
По ценности же различаются следующие классы букв:
Q: Забыл пароль от уина, которым пользуюсь на телефоне в клиенте Jimm. Как восстановить пароль?A: Помимо стандартного способа ретрива пароля через www.icq.com/password существуют и другие, более интересные, способы (вдруг ты забыл еще и мыло от номера или тебе необходимо подсмотреть пароль своей подружки :). Итак, первый способ:
Второй способ:
Где взять тот самый .rms файл от джимма, читай на форуме motofan.ru по приведенной выше ссылке. Q: Раньше для брутфорса разных сервисов использовал THC-Hydra, но утилита, увы, больше не развивается (по крайней мере, в паблике). Есть ли активные проекты, которые могут составить здоровую конкуренцию?A: Рекомендую попробовать Medusa (www.foofus.net/jmk/medusa/medusa.html), которая недавно проапгрейдилась до версии 2.0. Фишка проекта в возможности распараллелить задачу на нужное количество потоков, а также модульной структуре, благодаря которой можно подключить плагины для подбора паролей в самых разных сервисах. Сейчас доступны модули для: AFP, CVS, FTP, HTTP, IMAP, MS-SQL, MySQL, NCP (NetWare), NNTP, PcAnywhere, POP3, PostgreSQL, rexec, rlogin, rsh, SMB, SMTP (AUTH/VRFY), SNMP, SSHv2, SVN, Telnet, VmAuthd, VNC. Q: Как убедиться, что DEP включен и используется всеми программами?A: DEP, напомню для всех, расшифровывается как Data Execution Prevention. Эта специальная системы защиты предотвращает исполнения кода, который находится в области данных, чем самым обламывая работу многих сплоитов. Для того чтобы изменить параметры DEP перейди в "Панели управления -> Система -> вкладка Дополнительное -> Быстродействие -> Параметры -> вкладка Предотвращения выполнения данных". Все операции доступны только при наличии аккаунта администратора. В случае необходимости, тут же можно отключить защиту для какой-то конкретной программы. Еще один хинт того, как проще всего можно отключить DEP в системе. Все делается в одну команду через консоль: bcdedit.exe /set {current} nx AlwaysOff. Команда опять же выполняется только с правами админа. Q: Как разлочить экран, заблокированный скринсейвером без перезагрузки компьютера?A: Если провести предварительную небольшую подготовку, то разлочить компьютер можно, даже не зная пароль – просто введя любую белиберду. Для этого необходимо пропатчить процесс lsass.exe в том месте, где реализована проверка пароля. С задачей справляется скрипт для Metasploit'а (relentless-coding.blogspot.com/2010/02/windows-vista-7-targets-for-screen.html). Сплоит необходимо сохранить в директорию scripts/meterpreter в папке Metasploit'а. Запустив скрипт, можно быть уверенным, что в следующий раз, когда компьютер заблокируется скринсейвером, ты сможешь разлочить систему любым паролем. Q: Как выполнить одну и ту же команду на всех рабочих машинах домена?A: Как раз недавно узнал способ, как реализовать это без всякого дополнительного программного обеспечения. Общий синтаксис следующий: Фишка заключается в том, что с помощью команды dsquery можно извлечь информацию обо всех рабочих станций в домене, при этом большая часть сложной команды используется для того, чтобы привести подробную инфу о хостах к банальному списку из имен станций. А далее, имея на руках права администратора и зная имена всех машин в сети, можно удаленно выполнить команду на каждом из компьютеров, что мы, собственно, и делаем. Q: Делаю мини-лабораторию для анализа подозрительных сайтов и страниц (наподобие тех, который вы описывали в прошлом номере). Подыскиваю инструмент, который может найти, а еще лучше вырезать зловредный код из HTML-страницы?A: Идеально подойдет написанный на Ruby скрипт iScanner (iscanner.isecur1ty.org). Тулза очень неплохо справляется с анализом скрытых iframe'ов, анализом сценариев на javascript, vbscript и объектов activex. Q: Говорят, что если пофиксить баг, позволяющий получить в винде права системного пользователя (][ рассказывал о баге в статье "Долой Userlevel!" прошлого номера – прим. редактора), то есть шанс получить систему, которая будет постоянно вываливаться в BSOD. Как этого избежать?A: Такая ерунда происходит, если официальный патч накладываются на систему, в которой обосновалась последняя модификация руткита TDSS (он же Tidserv, TDL3 или Alureon). Соответственно рецепт правильного апдейта простой. Перед установкой патча, обязательно нужно проверить винду на наличие заразы (она, кстати, отлично уживается и в Vista, и Windows 7). Для этого есть бесплатная тулза TDSS cleaning tool (www.norman.com/support/support_tools/77201/en). Q: Как реализовать авторизацию в Linux'е с помощью флешки, телефона с включенным Bluetooth, отпечатку пальца (модная фишка на новых буках) или изображению лица с веб-камеры?A: Тут поможет механизм PAM (Pluggable Authentication Modules), предоставляющий API-интерфейс для реализации разных типов авторизации. Для каждого из типов используется свой подключаемый модуль: скажем, чтобы разрешить авторизацию по устройству Bluetooth (компьютер сам блокируется при отдалении от него), придется установить модуль pam_blue (packages.gentoo.org/package/sys-auth/pam_blue). Другие типы авторизации доступны через соответствующие модули:
Настройка каждого из типов отличается друг от друга, но подробные инструкции и даже видеомануалы легко найти на домашних страницах проектов. |