Автоматизацията е най-новата тенденция в търсенето на глави за грешки, като всеки ден се пускат нови рамки. Това варира от пълноценни решения с потребителски интерфейси и бек-енд бази данни до колекции от специално изградени Bash скриптове. Всички те имат своите приложения в зависимост от нивото на контрол и дълбочината на тестване, предпочитани от потребителя.

Някои очевидни ползи от автоматизацията на наградите за грешки включват:

  • Лесно идентифицирайте ниските уязвимости.
  • Непрекъснато проучване за улавяне на променящите се среди.
  • Увеличете максимално времето и печалбата чрез автоматизиране на повтарящи се задачи.

Bash скриптове

Bash скриптовете могат да бъдат чудесно въведение в пространството за автоматизация поради своята гъвкавост. Потребителите могат да започнат веднага, като използват своите съществуващи инструменти и методологии. Няма нужда да изграждате всеки компонент от рамка, просто добавете инструменти с отворен код, които са най-добри за вашия процес. Ето защо този подход е от полза и за ловците, които не владеят конкретен език, но са запознати с основните техники, които се тестват.

Друго предимство на Bash е езиковата независимост. Това позволява на ловците да изберат най-добрия инструмент за работата, независимо от основния език за програмиране. Много от инструментите за награди за грешки, които виждам и използвам, са написани или на Python, или на Go. Bash позволява и двете да бъдат изпълнени, анализирани и включени в по-нататъшни процедури за автоматизация; ако приемем, че всички инструменти и зависимости са предварително инсталирани.

Примери

Като пример, следният скрипт ще извърши изброяване на поддомейни с SubScraper и ще предаде резултатите на httprobe на Tomnomnom, за да провери за живи хостове. Всички адреси или DNS имена, добавени към out_of_scope.txt, ще бъдат премахнати преди активното изброяване, за да се спазват указанията на програмата:

#!/usr/bin/env bash
#Usage: ./enum.sh domain(dot)com
TARGET=$1
python3 subscraper.py $TARGET -o subdomains.txt
cat subdomains.txt |grep -v "$(cat out_of_scope.txt)"|httprobe

По-сложна реализация идва от lazyrecon на Nahamsec. Това използва Bash скриптове за свързване на различни инструменти и техники, автоматизиращи множество стъпки в традиционния процес на разузнаване. След това се генерира удобен за потребителя HTML отчет за показване на получените данни.

SubWalker [Изпускане на инструменти!]

Друго неочаквано приложение за автоматизация е подобряването на точността. Всеки IP адрес и поддомейн в обхвата е възможност за намиране на повече уязвимости. Затова искаме да гарантираме, че нашите инструменти предоставят възможно най-точните и задълбочени резултати.

При скорошни преследвания открих различни резултати в инструментите за изброяване на поддомейни, дори тези, които използват подобни източници. Следното демонстрира три инструмента за изброяване, насочени към една и съща програма за целия домейн и сравнение на броя на идентифицираните поддомейни:

Както можете да видите, броят на резултатите не е последователен и варира според инструмента. Ето защо, за да съм сигурен, че получавам най-точните резултати, като същевременно запазвам простотата на изпълнение само на една команда, създадох SubWalker!

SubWalker - https://github.com/m8r0wn/SubWalker

Subwalker е прост Bash скрипт, който свързва 3 общи инструмента за изброяване на поддомейни: SubScraper, AssetFinder и Sublist3r. Всеки се изпълнява едновременно, за да се намали времето и анализира резултатите, за да осигури един изходен файл без дубликати. Уникалните техники за изброяване на инструментите позволяват комбинация от констатации и тези, които се припокриват, осигуряват точност и валидиране. Като се има предвид, че всеки инструмент използва пасивни методи за събиране на информация, този подход не създава допълнителен шум или допълнителни разходи срещу целевия домейн.

Опаковане

Важно е да се отбележи, че автоматизацията не трябва да замества изцяло ръчното тестване. Често има констатации, открити само чрез ръчен анализ и взаимодействие с потребителя. Въпреки това, Bash скриптовете са чудесен начин за автоматизиране на повтарящи се задачи и освобождаване на време, което да похарчите за по-напреднали открития, които често водят до по-високи изплащания.

Коментари, въпроси, отзиви? Чувствайте се свободни да се свържете с Twitter и да следвате за още съвети за автоматизиране на награди за грешки. Приятно ловуване!