Нихао, %username%!
Я, как скрипткидди со стажем, хотел бы рассказать о интересной софтине от mindedsecurity — DOMinator. Это хоть и не новое, но единственное на данный момент решение для поиска dom based xss динамически (няшный динамический анализатор, который позволяет по феншую проследить за выполнением операций в js). Статические анализаторы (есть в acunetix wvs, burp suite, w3af и других) явно отстают от того, что можно найти с помощью доминатора, вот поэтому я хотел бы написать небольшой обзор, взвесить плюсы и минусы, показать пару примеров.
Внимание, это плагин. Ага, хитровыдуманный такой плагин для firefox, и огнелис-то не простой, а специальная сборка — Aurora 8. Из фич, например, отсутствие urlencode (ну это короч когда вместо site/здарова получается site/%D0%BF%D1%80%D0%B8%D0%B2%D0%B5%D1%82) поэтому проблем с кавычками в url не будет. А это неплохо так помогает имитировать всеми любимый Internet Explorer и сразу запиливать векторы под него.Сам плагин — симбиоз Firebug с дополнительной вкладкой под анализатор DOMinator’а, в логе которого и наблюдаем подозрительные места в js.
После запуска чудо-плагина и открытия страницы — url можно пофаззить кнопочкой play. Доминатор тем временем засунет переменные, интересные ему в url, и начинает следить за реакцией, кто что берёт и как использует. В логах плагина можно наблюдать наш подозрительный адрес и возможные баги, которые определяются как alert, warning и info по степени опасности. В вкладке Issue Description можно почитать, чего-же опасного обнаружил DOMinator, и как это можно использовать.
Вот демонстрация возможностей на примере vk.com
В идеале — xss будет выглядеть как-то так, его в принципе можно обнаружить и статичным анализатором :
А вот теперь о плохом. Огромные утечки памяти, циклы, зависания, краши. Софт ведет себя как отличница на вечеринке, ломается и не хочет слушаться. Иногда не видит явные и очевидные вещи, типа классических dom based. Со своей работой он справляется, пусть и придется несколько раз его перезапустить, да с «тяжёлыми» js он будет очень долго думать, а то и займет всю память и зависнет. Но на фоне отсутствия аналогов, это простимо.Получается такое двоякое впечатление, софт ведет себя как будто он на альфа-тестировании, был бы он бесплатный — цены бы ему небыло. А получается, что цена ему есть. Но в любом случае он работает, пусть и не идеально.
Купить или запросить демку можно ТУТ .
Доминируем в dom xss данный пост отсюда: Bo0oM.ru