Skip to content
KitploitKITPLOIT
도구익스플로잇블로그
Log in
제출
도구익스플로잇블로그
제출

해킹, 침투 테스트 및 사이버 보안 도구를 당신의 보안 무기고에!

Kitploit은 해킹, 사이버 보안 및 침투 테스트 도구 디렉토리입니다. 최신 프로젝트 업데이트를 발견하여 취약점을 찾고, 시스템을 분석하고, 테스트를 자동화하고, 보안을 강화하세요.

피드문의개인정보© 2026 Kitploit

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
BaconSampler — 의심스러운 비콘 형태의 콜백을 위해 아웃바운드 트래픽을 탐지합니다. 정해진 시간마다 반복해서 돌아온다면 아침 식사가 아닐 테니까요. | Kitploit
도구/GitHubGitHub/logisek/baconsampler
Packet Sniffing & AnalysisReconnaissanceForensicsInformation GatheringNetwork SecurityThreat IntelligenceIntrusion DetectionDNS AnalysisLog Analysis
GitHublogisek/baconsampler

BaconSampler

의심스러운 비콘 형태의 콜백을 위해 아웃바운드 트래픽을 탐지합니다. 정해진 시간마다 반복해서 돌아온다면 아침 식사가 아닐 테니까요.

20369개월 전Kitploit 검토 완료

인기

모두 보기 →

커뮤니티에서 가장 많이 사용되는 도구를 찾아보세요.

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
저장소 보기
공유

Bacon Sampler

아웃바운드 트래픽을 스니핑하여 의심스러운 비콘 같은 콜백을 찾아냅니다. 정해진 시간마다 계속 돌아온다면, 아침 식사는 아닐 테니까요.

아웃바운드 연결 (Windows + libpcap)

Bacon Sampler는 경량 아웃바운드 연결 캐처로, 네트워크 트래픽의 지글거림을 스니핑하고 "비콘 같은" 행동(멀웨어가 본사로 전화하는 듯한 주기적이고 느린 콜백)을 플래그합니다.

수동적으로 아웃바운드 연결과 DNS 조회를 모니터링한 후, 일정한 간격, 반복되는 목적지, 이상한 지터, 일관된 바이트 크기 등 정상적인 브라우징보다는 봇이 명령을 확인하는 것처럼 보이는 패턴을 강조합니다.

Beacon Scanner의 맛있는 버전이라고 생각하세요. 무언가가 매번 같은 시간에 다시 나타난다면... 우리는 베이컨을 샘플링하는 중입니다.

기능

  • 선택적 netstat PID 상관 관계를 포함한 Pcap 캡처
  • 역 DNS 및 GeoIP (오프라인 데이터베이스 또는 무료 온라인 조회)
  • 프로토콜, 원격 포트 범위 및 IP CIDR 필터
  • 그룹 요약 (원격 IP, 프로세스 또는 국가별) 및 선택적 상위 N
  • 비콘 같은 활동 탐지 (저속 콜백)
  • 의심스러운 연결 + DNS 쿼리 행동 패턴 탐지
  • CSV/JSON 내보내기 및 파생 요약 파일
  • 모든 테이블이 포함된 선택적 HTML 보고서

사전 요구 사항

  • Windows 11
  • Python 3.10+
  • Npcap (권장) - "WinPcap API 호환 모드로 Npcap 설치" 옵션 선택
  • 오프라인 IP 국가 조회용 GeoIP 데이터베이스:
    • MaxMind GeoLite2 Country (.mmdb) 또는 DB-IP Lite (.mmdb)
    • IP2Location LITE (.BIN)
  • 전체 가시성을 위해 PowerShell을 관리자 권한으로 실행

설치

pip install -r requirements.txt

GeoIP 데이터베이스를 다운로드하고 경로를 기록해 두세요:

  • GeoLite2 또는 DB-IP Lite (.mmdb)
  • IP2Location LITE (.BIN)

무료 온라인 조회를 선호한다면 이 단계를 건너뛰고 --geoip-online을 사용할 수 있습니다.

사용법

사용 예시 (일반적인 조합)

인터페이스 목록:

python capture_outbound.py --list-interfaces

인덱스로 인터페이스 선택:

python capture_outbound.py --interface 0

여러 인터페이스 사용 (반복 가능):

python capture_outbound.py --interface "Ethernet" --interface "Wi-Fi"

또는 쉼표로 구분된 이름 사용:

python capture_outbound.py --interfaces "Ethernet,Wi-Fi"

Pcap 전용 캡처 (A) + 오프라인 GeoIP:

python capture_outbound.py --mode pcap --duration 20 --interface "Ethernet" --geoip-db "C:\Path\GeoLite2-Country.mmdb"

Pcap + netstat 상관 관계 (B) + 오프라인 GeoIP:

python capture_outbound.py --mode pcap_plus_netstat --duration 20 --interface "Ethernet" --geoip-db "C:\Path\GeoLite2-Country.mmdb"

Pcap + netstat 합집합 (A+B):

python capture_outbound.py --mode both --duration 20 --interface "Ethernet" --geoip-db "C:\Path\GeoLite2-Country.mmdb"

온라인 GeoIP (무료, 속도 제한 있음, 디스크에 캐시됨):

python capture_outbound.py --mode pcap --duration 20 --interface "Ethernet" --geoip-online ipapi

IPinfo 토큰을 사용한 온라인 GeoIP:

$env:IPINFO_TOKEN="your_token_here"
python capture_outbound.py --mode pcap --duration 20 --interface "Ethernet" --geoip-online ipinfo

또는 토큰을 명시적으로 전달:

python capture_outbound.py --mode pcap --duration 20 --interface "Ethernet" --geoip-online ipinfo --geoip-online-token "your_token_here"

온라인 GeoIP 타임아웃 및 재시도 조정:

python capture_outbound.py --mode pcap --duration 20 --interface "Ethernet" --geoip-online ipapi --geoip-timeout 2.5 --geoip-retries 1

역 DNS 비활성화 (더 빠른 실행):

python capture_outbound.py --mode pcap --duration 20 --interface "Ethernet" --no-dns

DNS 타임아웃 조정:

python capture_outbound.py --mode pcap --duration 20 --interface "Ethernet" --dns-timeout 0.5

패킷 수로 캡처 제한:

python capture_outbound.py --mode pcap --duration 60 --packet-limit 5000

프로토콜, 원격 포트 및 IP CIDR로 필터링:

python capture_outbound.py --filter-protocol tcp --filter-port 80,443,1000-2000 --allow-ip 1.2.3.0/24 --deny-ip 1.2.3.4/32

그룹 요약 및 상위 N:

python capture_outbound.py --group-by remote_ip,process --top 10

연결별 총 바이트 추적:

python capture_outbound.py --mode pcap --duration 20 --interface "Ethernet" --track-bytes

진행률 출력 비활성화:

python capture_outbound.py --no-progress

콘솔 출력 비활성화:

python capture_outbound.py --no-console

사용 예시 (고급 조합)

Pcap + netstat 합집합 (A+B) + 온라인 GeoIP + pcap, CSV, HTML 쓰기:

python capture_outbound.py --mode both --duration 20 --interface "Ethernet,Wi-Fi" --geoip-online ipapi --pcap-out "C:\Path\capture.pcap" --csv "C:\Path\outbound.csv" --html "C:\Path\outbound.html"

Pcap 전용 + 출력 폴더 + 사용자 지정 CSV/JSON 이름:

python capture_outbound.py --mode pcap --duration 20 --interface "Ethernet" --output-dir "C:\Path\Reports" --csv "C:\Path\Reports\outbound.csv" --json "C:\Path\Reports\outbound.json"

비콘 같은 활동 탐지 (저속 콜백):

python capture_outbound.py --duration 300 --beacon-min-duration 120 --beacon-min-interval 60 --beacon-max-interval 1800 --beacon-max-jitter 10 --beacon-min-packets 6 --beacon-max-rate 0.05

패턴 탐지 (일정한 간격, 지터, 반복 목적지, 일관된 크기):

python capture_outbound.py --duration 300 --track-bytes --pattern-high-jitter 120 --pattern-repeat-destination 4 --pattern-max-byte-jitter 64 --dns-pattern-min-queries 4

필터링과 함께 엄격한 비콘 + 패턴 임계값:

python capture_outbound.py --duration 600 --filter-protocol tcp --filter-port 443 --track-bytes --beacon-min-duration 180 --beacon-min-interval 90 --beacon-max-interval 900 --beacon-max-jitter 5 --beacon-min-packets 8 --pattern-high-jitter 60 --pattern-repeat-destination 5 --pattern-max-byte-jitter 32

DNS 중심 캡처 (빠른 DNS 조회 + DNS 패턴):

python capture_outbound.py --duration 180 --dns-timeout 0.25 --dns-pattern-min-queries 5 --pattern-repeat-destination 3

출력

  • 기본적으로 콘솔 테이블
  • CSV: outbound_connections.csv
  • JSON: outbound_connections.json
  • HTML: --html "report.html"
  • 비콘 발견: *_beacon_findings.csv / *_beacon_findings.json
  • 연결 패턴: *_connection_patterns.csv / *_connection_patterns.json
  • DNS 패턴: *_dns_patterns.csv / *_dns_patterns.json
  • 고유 연결: *_unique_connections.csv / *_unique_connections.json
  • 고유 프로세스: *_unique_processes.csv / *_unique_processes.json
  • 그룹 요약: *_group_remote_ip*.csv/json, *_group_process*.csv/json, *_group_country*.csv/json

사용자 지정 CSV/JSON 출력 경로:

python capture_outbound.py --mode pcap --duration 20 --interface "Ethernet" --csv "C:\Path\outbound.csv" --json "C:\Path\outbound.json"

모든 출력을 폴더로 보내기:

python capture_outbound.py --mode pcap --duration 20 --output-dir "C:\Path\Reports"

HTML 출력 쓰기:

python capture_outbound.py --html "outbound.html"

pcap 파일 쓰기:

python capture_outbound.py --mode pcap --duration 20 --interface "Ethernet" --pcap-out "capture.pcap"

명령줄 옵션

도구 다운로드