python, ffuf 방식 비교

agnusdei·2025년 7월 22일
0

CTF

목록 보기
49/154

1. 직접 작성한 Python 코드 (socket 이용)

  • 작동 방식:
    직접 TCP 소켓 연결을 열고, 파일에서 읽은 단어(엔드포인트 후보)를 하나씩 전송해서 서버의 반응을 확인.

  • 장점:

    • 내부 로직을 자유롭게 수정 가능 (예: 응답 조건 세밀하게 조정, 추가 로직 삽입 등)
    • TCP/UDP 등 원하는 프로토콜에 맞게 커스터마이징 가능
    • 특정 서버 프로토콜에 맞춘 맞춤형 스크립트 작성 가능
  • 단점:

    • 코드 직접 작성 및 유지보수 필요
    • 속도가 ffuf 같은 전용 도구보다 느릴 수 있음
    • 결과 분석이나 멀티스레딩 등 기능 직접 구현해야 함

2. ffuf 같은 전용 퍼징 도구 사용

  • 작동 방식:
    HTTP 요청을 보내고 응답 코드나 내용에 따라 자동으로 결과 필터링, 보고서 생성 등 다양한 기능 제공

  • 장점:

    • 매우 빠르고 효율적 (멀티스레드, 비동기 처리 기본 내장)
    • 다양한 옵션으로 응답 코드 필터링, 헤더 조작, POST 요청 등 손쉽게 사용 가능
    • 커뮤니티에서 널리 사용되어 신뢰성 높음
  • 단점:

    • 기본적으로 HTTP(S) 프로토콜 기반 (특별한 프로토콜 지원 필요시 어려움)
    • 내부 동작은 추상화되어 있어 세부 동작 수정은 제한적
    • TCP 소켓 레벨 직접 제어는 어려움

결론

  • 일반적인 웹 서비스 엔드포인트, 디렉터리 탐색은 ffuf 같은 도구가 더 빠르고 편리
  • 특수한 프로토콜, 커스텀 서버와 통신해야 하거나 세밀한 제어가 필요하면 직접 Python 같은 코드 작성 추천

profile
DevSecOps ⚙️ + CTF🚩

0개의 댓글