
고성능 블랙박스 웹 애플리케이션 퍼저로, 내장된 페이로드 엔진, 요청 검증, 변조, 인코딩 및 고급 필터링을 통해 숨겨진 동작과 취약점을 탐지합니다.
</ 장점 | 기능 | 설치 | 사용법 | 커뮤니티 >
Firefly는 단순한 자산 검색 도구가 아닌 고급 블랙박스 퍼저입니다. Firefly는 많은 내장 검사를 통해 타겟을 테스트하여 타겟의 동작을 탐지하는 장점을 제공합니다.
go install -v github.com/Brum3ns/firefly/cmd/firefly@latest
또는
go get -v github.com/Brum3ns/firefly/cmd/firefly
firefly -h
firefly -u 'http://example.com/?query=FUZZ'
사용할 수 있는 다양한 유형의 요청 입력
기본
firefly -u 'http://example.com/?query=FUZZ' --timeout 7000
다양한 메서드와 프로토콜을 사용한 요청
firefly -u 'http://example.com/?query=FUZZ' -m GET,POST,PUT -p https,http,ws
echo 'http://example.com/?query=FUZZ' | firefly
firefly -r '
GET /?query=FUZZ HTTP/1.1
Host: example.com
User-Agent: FireFly'
HTTP Raw를 전송하고 모든 GET 및/또는 POST 파라미터를 자동 감지하여 퍼징합니다.
firefly -r '
POST /?A=1 HTTP/1.1
Host: example.com
User-Agent: Firefly
X-Host: FUZZ
B=2&C=3' -au replace
요청 검증기는 가장 중요한 부분입니다. 이 기능은 Firefly가 퍼징 대상의 핵심 동작을 알 수 있게 해줍니다. 양보다 질이 중요합니다. 더 많은 검증 요청은 더 나은 품질을 제공하지만 내부 하드웨어 성능을 희생합니다 (하드웨어에 따라 다름)
firefly -u 'http://example.com/?query=FUZZ' -e
페이로드는 높은 수준으로 사용자 지정이 가능하며, 좋은 핵심 단어 목록이 있으면 Firefly 자체 내에서 페이로드 단어 목록을 완전히 조정할 수 있습니다.
모든 페이로드의 형식을 표시하고 종료
firefly -show-payload
사용 가능한 모든 템퍼 목록
firefly -list-tamper
주어진 유형으로 모든 페이로드를 템퍼링합니다 (쉼표로 구분하여 여러 개 사용 가능)
firefly -u 'http://example.com/?query=FUZZ' -e s2c
firefly -u 'http://example.com/?query=FUZZ' -e hex
모든 페이로드를 16진수로 인코딩한 후 URL 인코딩
firefly -u 'http://example.com/?query=FUZZ' -e hex,url
firefly -u 'http://example.com/?query=FUZZ' -pr '\([0-9]+=[0-9]+\) => (13=(37-24))'
페이로드:
' or (1=1)-- -및" or(20=20)or "결과:' or (13=(37-24))-- -및" or(13=(37-24))or "여기서=>(공백 포함)은 "~로 대체"를 나타냅니다.
주어진 규칙을 포함하는 요청을 필터링/일치시키는 옵션.
응답을 무시 (필터)하도록 상태 코드 302 및 줄 수 0 필터링
firefly -u 'http://example.com/?query=FUZZ' -fc 302 -fl 0
응답을 포함 (일치)하도록 정규식 및 상태 코드 200 필터링
firefly -u 'http://example.com/?query=FUZZ' -mr '[Ee]rror (at|on) line \d' -mc 200
firefly -u 'http://example.com/?query=FUZZ' -mr 'MySQL' -mc 200
요청 프로세스에 사용할 성능 및 시간 지연
스레드 / 동시성
firefly -u 'http://example.com/?query=FUZZ' -t 35
각 동시성에 대한 시간 지연 (밀리초)
firefly -u 'http://example.com/?query=FUZZ' -t 35 -dl 2000
페이로드를 포함하는 워드리스트를 별도로 추가하거나 주어진 폴더에서 추출할 수 있음
공격 유형이 지정된 단일 워드리스트
firefly -u 'http://example.com/?query=FUZZ' -w wordlist.txt:fuzz
폴더 내 모든 워드리스트 추출. 공격 유형은 접미사 <type>_wordlist.txt에 따라 결정됨
firefly -u 'http://example.com/?query=FUZZ' -w wl/
예시
폴더
wl내 워드리스트 이름:
- fuzz_wordlist.txt
- time_wordlist.txt
JSON 출력을 강력히 권장합니다.
jq도구를 사용하여 결과를 탐색하고 비교할 수 있기 때문입니다.
(Firefly가 다른 도구와 파이프라인으로 연결된 경우 일반 텍스트가 더 나은 선택일 수 있습니다.)
간단한 일반 텍스트 출력 형식
firefly -u 'http://example.com/?query=FUZZ' -o file.txt
JSON 출력 형식 (권장)
firefly -u 'http://example.com/?query=FUZZ' -oJ file.json
커뮤니티의 모든 분들은 Firefly에 새로운 기능, 개선 사항을 제안하거나 새로운 페이로드를 추가할 수 있습니다. 풀 리퀘스트를 보내거나 의견을 댓글로 남겨주세요!