Обнаружением данной уязвимости я обязан Ragnar’у, собственно по его просьбе сейчас и пишу этот пост с целью объяснения сути самой баги. Однажды он постучал мне в асю и попросил поковыряться в web-админке DDOS-бота Illusion – видимо хотел угнать чей-то ботнет =) Предложение я принял и через некоторое время нашел уязвимость, а именно SQL-инъекцию. Так как основной функционал админки был недоступен для неавторизованных пользователей (а пароль хранился прямо в исходнике =\), то свои надежды я возложил на интерфейс для ботов, что и принесло мне успех. Итак, рассмотрим, какие значения параметров скрипт ожидает от ботов и в чем заключается уязвимость. (more…)
Year: 2008
-
PHP Bug Scanner
Опубликовано в журнале “Хакер”
#108, X-Tools
PHP Bug Scanner – это программа, предназначенная для того, чтобы сделать процесс поиска уязвимостей в PHP-приложениях более удобным и быстрым. Она основана на сканировании различных функций и переменных в PHP-скриптах, которые могут привести к возможным уязвимостям.Возможности:
- возможность сканирования как множества файлов, так и одного скрипта
- система пресетов: вы можете добавлять новые функции, изменять или удалять их
- возможность загрузки и сохранения своих пресетов
- 7 специальных пресетов, сгруппированных по категориям:
- code execution
- command execution
- directory traversal
- globals overwrite
- include
- sql injection
- miscellaneous
- сохранение и загрузка результатов
- сортировка результата по имени скрипта, номеру строки или функции, которая была найдена
- быстрый обзор скрипта с подсветкой кода и пронумерованными строками
- вычисление хэшей Zend_hash_del_key_or_index
- String 2 chr() converter – представление строки в виде ASCII-символов в соответствии с синтаксисом PHP
Написан на PHP & WinBinder, скомпилировано bamcompile
Версия 1.0Скачать
-
Javascript Hijacking
Авторы: Brian Chess, Yekaterina Tsipenyuk O’Neil, Jacob West ({brian, katrina, jacob}@fortifysoftware.com)
Дата: 12 марта 2007 года
Перевод: Raz0r
Оригинальная статья: _http://www.fortifysoftware.com/servlet/downloads/public/JavaScript_Hijacking.pdfВозрастающее количество современных Веб-приложений, часто называемых AJAX-приложениями, используют JavaScript как средство передачи информации. Данная статья описывает уязвимость, которую мы называем JavaScript Hijacking (hijacking – нападение, ограбление), позволяющую злоумышленникам получать доступ к конфиденциальной информации, содержащуюся в JS-сообщениях. Атака проводится благодаря тэгу <script>, с помощью которого возможен обход Same Origin Policy. Традиционные веб-приложения неуязвимы к описываемой атаке, так как не используют JS как метод передачи информации.
Мы исследовали 12 популярных AJAX-фреймворков , включая 4 серверных набора утилит – Direct Web Remoting (DWR), Microsoft ASP.NET Ajax (aka Atlas), xajax и Google Web Toolkit (GWT) – и 8 исключительно клиентских библиотек – Prototype, Script.aculo.us, Dojo, Moo.fx, jQuery,Yahoo! UI, Rico, и MochiKit. Мы определили, что среди них лишь в DWR 2.0 включены механизмы по предотвращению JavaScript Hijacking. Остальная же часть не предоставляет какой-либо защиты. Большинство самостоятельно написанных фреймоворков также уязвимы. (more…) -
Автоматизированная эксплуатация SQL-инъекций
Введение
Я уверен, что тебе не раз приходилось тратить довольно много времени на такое нудное и малоинтересное занятие, как определение количества столбцов между SELECT и WHERE, перебор названий таблиц, посимвольный брутфорс при атаках вида SQL Injection. Не удивлюсь, если ты скажешь, что тебе уже порядком надоело делать это вручную, каждый раз встречая эту уязвимость. Данная статья рассчитана на человека, знакомого со SQL инъекциями – в ней мы рассмотрим методы их автоматизированной эксплуатации на примере использования PHP скрипта SQLBruter 0.2, созданного мною специально для этих целей. (more…)
-
SQLBruter v0.2
Опубликовано в журнале “Хакер”
#104, X-ToolsНазначение
SQLBruter – многофункциональный скрипт, реализующий перебор различными методами при атаках типа SQL Injection. При запросах с использованием UNION очень часто требуется определить количество выбираемых полей, названия таблиц и стобцов. Все это можно сделать с помощью моего скрипта. Кроме этого, SQLBruter осуществляет посимвольный перебор, т.е. с использованием конструкций типа “AND ascii(lower(substring([query],1,1))) > 97” и т.д. Важно сказать, что вам не придется указывать позицию символа – нужно лишь указать запрос и строку, возвращенную сервером, и в итоге вы получите полное содержание поля (например с хешем). Также в скрипте предусмотрено выведение результатов в файл и использование прокси.
(more…)