
여러 IP에 대해 ffuf 스캔을 자동으로 실행하고 저장합니다
___ __ ____ _ __ __
/ | __ __/ /_____ / __ \(_)____/ /_ __ _______/ /____ _____
/ /| |/ / / / __/ __ \/ / / / / ___/ __ \/ / / / ___/ __/ _ \/ ___/
/ ___ / /_/ / /_/ /_/ / /_/ / / / / /_/ / /_/ (__ ) /_/ __/ /
/_/ |_\__,_/\__/\____/_____/_/_/ /_.___/\__,_/____/\__/\___/_/
git clone https://github.com/NetSPI/AutoDirbuster.git
cd AutoDirbuster && pip3 install -r requirements.txt
python AutoDirbuster.py ip_port_list.txt -w my_wordlist.txt
Ffuf는 훌륭한 디렉터리 버스터이지만 여러 IP와 포트에 대해 실행하는 것은 매우 수동적인 과정이며 스캔 사이에 많은 유휴 시간이 발생합니다. 이 스크립트는 해당 프로세스를 자동화하고 스캔 간 유휴 시간을 없애기 위해 설계되었습니다.
여러 대상을 공격하는 경우:
Nmap 실행 후 열린 포트 찾기
Nmap 결과를 검토하고 IP:포트 목록을 한 줄에 하나씩 생성
열린 포트에 대해 AutoDirbuster 실행
AutoDirbuster가 서비스가 HTTP 기반인지 확인합니다.
python AutoDirbuster.py ip_port_list.txt -w my_wordlist.txt --combine단일 대상을 공격하는 경우:
python AutoDirbuster.py -u example.com:80 -w my_wordlist.txt유용한 옵션은 다음과 같습니다:
전체 옵션 목록은 --help 플래그를 참조하십시오.
프로그램은 두 가지 데이터 소스를 사용할 수 있습니다:
python AutoDirbuster.py ip_port_list.txt -w my_wordlist.txtpython AutoDirbuster.py -u example.com:80 -w my_wordlist.txtffuf-report-{proto}_{target}_{port}subprocess.Popen()을 사용하여 실행됩니다.다음 사항을 확인하십시오:
requirements.txt에 나열된 모든 종속성이 설치되었습니까?ffuf가 설치되어 있고 시스템 PATH에 포함되어 있습니까?
ffuf -V 실행해보십시오.python -V로 확인할 수 있습니다.# python AutoDirbuster.py --help
usage:
___ __ ____ _ __ __
/ | __ __/ /_____ / __ \(_)____/ /_ __ _______/ /____ _____
/ /| |/ / / / __/ __ \/ / / / / ___/ __ \/ / / / ___/ __/ _ \/ ___/
/ ___ / /_/ / /_/ /_/ / /_/ / / / / /_/ / /_/ (__ ) /_/ __/ /
/_/ |_\__,_/\__/\____/_____/_/_/ /_.___/\__,_/____/\__/\___/_/
AutoDirbuster.py [options] {target file}
여러 IP에 대해 ffuf 스캔을 자동으로 실행 및 저장합니다.
options:
-h, --help 이 도움말 메시지를 표시하고 종료합니다.
AutoDirbuster options:
target IP:port 형식의 대상 파일 (한 줄에 하나씩)
-u, --url 단일 대상 모드, 위치 인자는 IP:port 형식의 대상
-f, --force 강제 모드; 보고서 파일 존재 여부를 확인하지 않으며,
이전 보고서를 덮어씁니다.
--dns IP 주소를 호스트명으로 자동 변환하여 dirbust 중 사용
--debug 디버그 정보 표시
--combine 스캔 후 모든 CSV 결과를 단일 파일로 병합
--quiet ffuf의 stderr 출력을 억제 (2>/dev/null에 해당);
AutoDirbuster 자체 출력 및 ffuf stdout에는 영향을 주지 않습니다.
ffuf options:
-w WORDLIST, --wordlist WORDLIST
목록 기반 무차별 대입에 사용할 단어 목록
-X METHOD, --method METHOD
사용할 HTTP 메소드; 기본값=GET
-e EXTENSIONS, --extensions EXTENSIONS
파일 확장자 목록 (예: "asp,aspx"); 기본값 없음
-t THREADS, --threads THREADS
기본 ffuf 스레드 수를 재정의합니다.
--rate RATE 초당 요청 속도
-to TIMEOUT, --timeout TIMEOUT
각 호스트에 대한 제한 시간(분 단위) 설정; 기본값 없음
-fr, --follow-redirects
리디렉션을 따릅니다; 기본값=False
-r, --recursive 재귀 모드; 기본값=False
-s STARTPOINT, --startpoint STARTPOINT
스캔 시작 지점; 기본값=/
-of OUTPUT_FORMAT, --output-format OUTPUT_FORMAT
결과를 작성할 출력 형식; 기본값=csv
-mc MATCH_CODES, --match-codes MATCH_CODES
일치시킬 HTTP 상태 코드;
기본값=200,204,301,302,307,401,403,405,500
-nac, --no-auto-calibrate
필터링 옵션을 자동으로 보정하지 않음
-H HEADER, --header HEADER
HTTP 헤더 "이름: 값", 콜론으로 구분
--custom-option CUSTOM_OPTION [CUSTOM_OPTION ...]
AutoDirbuster가 기본적으로 지원하지 않는 ffuf 옵션을 지정합니다.
인수는 쉼표로 구분된 키/값 쌍이어야 하며 앞에 '-'가 없어야 합니다.
예: --custom-option=ml,1. 제공된 인수가 불리언인 경우 빈 값을 제공하십시오:
--custom-option=sa,
Examples:
python AutoDirbuster.py ip_port_list.txt -w my_wordlist.txt
python AutoDirbuster.py -st example.com:80 -w my_wordlist.txt -mc 200,500
python AutoDirbuster.py ip_port_list.txt -w my_wordlist.txt -r -e "php,html" --dns
| 옵션 | 용도 |
|---|
| --dns | IP를 호스트명으로 변환 |
| --extensions | 스캔 시 사용할 파일 확장자 |
| --rate | 초당 요청 속도 |
| --timeout | 각 호스트에 대한 제한 시간(분 단위) 설정 |
| --match-codes | 일치시킬 HTTP 상태 코드 지정 |
| --combine | 스캔 후 모든 CSV 결과를 단일 파일로 병합 |
| --quiet | ffuf의 stderr 출력을 억제 (2>/dev/null에 해당) |
| --custom-option | AutoDirbuster가 기본적으로 지원하지 않는 ffuf 옵션을 지정 |