и демо инструмента.
Вот как часто вы проводя мануальное тестирование думали, что многое повторяет в разных запросах, но не можете использовать сканеры из-за того что они не узкоспециализированные и работают полностью без вашего участия и пропускают вещи?
Вот меня и посетила идея сделать полуавтоматическую замену бурпа со сценарным языком на YAML, по сути синтаксис похож на нуклеи, но вы сами инициирует запросы и видите ответы в браузере, при этом всю монотонную работу делает софт, вот
В мануальном тесте довольно часто повторения в тыканье, но заменить это сканером из-за сильной специфики и различий таргетов в баг баунти нельзя, т.к сканеры не позволяют сильную флексабельность.
Тут и приходит на помощь полу-автоматический/автоматический инструмент с полной гибкой настройкой по тому когда тестить, что ждать, таким образом можно подстраиваться полностью под сайт изучив его за некоторое время, не переписывая весь код. Теперь имею базу, бакенд инструмента который может полностью кастомизироваться с помощью YAML.
Пример:
websites:
www.reddit.com:
matcher:
matches-condition: and
match:
- condition: or
part: url
text:
- gql.reddit.com
- oauth.reddit.com
- condition: or
part: body
regex:
- ^((?!2c3efcfc2552).)*$
fuzzers:
- name: XSS Href
part: body
target:
regex:
- (http|ftp|https):\/\/([\w_-]+(?:(?:\.[\w_-]+)+))([\w.,@?^=%&:\/~+#-]*[\w@?^=%&\/~+#-])
payload: javascript:alert(visseuse)
matcher-trigger:
matches-condition: or
match:
- condition: or
part: body
text:
- XSS_HREF
Описываю:
websites - скоуп вебсайтов и настройки к ним
www.reddit.com - юрл вебсайта
matcher - блок с правилами которые фильтруют какие запросы подлежат дальнейшему фазингу
matcher-condition - переменная определяющая какая логика будет между правилами(должны ли соблюдаться все либо же хотя бы один т.е or/and
match - блок правила
condition - в правиле должно выполняться хотя бы одно условие, или все
text - текстовые условия которые должны быть в части запроса из part
regex - режексовые условия
fuzzers - блок с фаззерами и их настройкой
name - название фазера
part - часть запроса которая фазиться
target - что заменять, может иметь text либо regex цель
match-trigger блок правил которые нужны для срабатывания(может не присутствовать, тогда всегда срабатывает)
match-success(тут не присутствует) - блок правил которые определяют в каком случае фаззер дал положительный результат
Вот, я доделываю фичи управления через ТГ бота и blue team. Уже есть все остальное из приложения выше и бурпа практически
Обсуждают сегодня