Skip to content
KitploitKITPLOIT
도구블로그
제출
도구블로그
제출

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

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

··피드·문의·개인정보·© 2026 Kitploit

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
hawk — Linux용 네트워크, 정찰 및 공격적 보안 도구. | Kitploit
도구/GitHubGitHub/medpaf/hawk
Packet Sniffing & AnalysisReconnaissanceWi-Fi AuditingNetwork MappingPort ScanningVulnerability AnalysisDNS & Subdomain EnumerationInformation GatheringWeb SecurityDNS Analysis
GitHubmedpaf/hawk
330622년 전Kitploit 검토 완료

인기

모두 보기 →

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

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

hawk

Linux용 네트워크, 정찰 및 공격적 보안 도구.

저장소 보기

Hawk

made-with-python Size License: MIT




Hawk는 제가 한 도구에서 다른 도구로 옮겨 다니는 대신 동일한 스위트를 사용하여 다양한 종류의 작업을 수행할 수 있도록 개발한 네트워크 및 침투 테스트 유틸리티입니다.

현재 이 스크립트는 ifconfig, ping, traceroute, 포트 스캔(SYN, TCP, UDP, ACK, 종합 스캔, 호스트 검색(로컬 네트워크에서 작동 중인 장치 스캔), MAC 주소 감지(로컬 네트워크에서 호스트 IP의 MAC 주소 가져오기), 배너 그래빙, DNS 확인(지리적 위치 정보 포함), WHOIS, 하위 도메인 열거, 취약점 정찰, 패킷 스니핑, MAC 스푸핑, IP 스푸핑, SYN 플러딩, deauth 공격 및 무차별 대입 공격(베타) 등 다양한 작업을 수행할 수 있습니다.

다른 기능들은 아직 구현 중입니다. 향후 구현에는 WAF 탐지, DNS 열거, 트래픽 분석, XSS 취약점 스캐너, ARP 캐시 중독, DNS 캐시 중독, MAC 플러딩, 죽음의 핑, 네트워크 연결 해제 공격(deauth 공격이 아님), OSINT, 이메일 스푸핑, 익스플로잇, 일부 자동화 작업 등이 포함될 수 있습니다.

hawkwelcome

목차

  • 설치
    • Linux
  • 설정
  • 사용 방법
    • 네트워킹
      • ifconfig (베타)
      • ping
      • traceroute
    • 풋프린팅
      • 포트 스캔
      • 호스트 검색 (로컬 네트워크의 장치 스캔)
      • MAC 주소 감지 (로컬 네트워크에서 호스트 IP의 MAC 주소 가져오기)
      • 애플리케이션 버전 감지 (배너 그래빙이라고도 함)
      • DNS 확인 (지리적 위치 정보 포함)
      • WHOIS
      • 하위 도메인 열거
      • 디렉터리 버스팅
      • 취약점 정찰
    • 공격
      • 패킷 스니핑
      • MAC 스푸핑
      • IP 스푸핑
      • SYN 플러딩
      • Deauth 공격
      • 무차별 대입 공격 (베타)
    • 기타
      • 인터페이스에서 모니터/관리 모드 전환
      • 자동 정찰 (베타)
  • 기여
  • 라이선스

설치

참고: 현재 이 스크립트는 Linux에서만 제대로 실행됩니다. Windows나 macOS에서 시도하면 실행될 수는 있지만 수많은 오류가 나타날 것입니다.

이 스크립트는 다음에서 테스트되었습니다:

  • Kali Linux
  • Ubuntu
  • Pop!_OS

Linux

스크립트가 문제없이 실행되도록 필요한 패키지를 설치하려면 루트 권한으로 setup.sh 스크립트를 실행하기만 하면 됩니다. 현재 이 설치 스크립트는 각각 apt, dnf, pacman 패키지 관리자를 사용하는 Debian, Red Hat, Arch 기반 배포판에서만 지원됩니다(Ubuntu, Kali Linux, Parrot OS, Debian, Pop!_OS, Linux Mint, Deepin, Zorin OS, MX Linux, Elementary OS, Fedora, CentOS, Red Hat Enterprise Linux, Rocky Linux, AlmaLinux, Oracle Linux, ClearOS, Arch, Black Arch, Manjaro 등). 대부분의 시스템에서 Hawk를 설치하려면 다음 명령을 실행하기만 하면 됩니다:

root@kitploit:~
git clone https://github.com/medpaf/hawk.git
cd hawk
sudo sh setup.sh

그런 다음 안내에 따라 진행하면 됩니다. 설치 중 나타나는 오류 메시지는 무시하세요.

하지만 다른 패키지 관리자를 사용하는 다른 Linux 배포판을 사용 중이라면 해당 배포판의 패키지 관리자를 사용하여 패키지를 수동으로 설치하세요. 사용 중인 특정 배포판에 따라 이 스크립트를 실행하는 데 필요한 패키지 중 일부가 이미 설치되어 있을 수도 있습니다. 필요한 패키지를 확인하려면 setup.sh 파일을 살펴보세요.

설치가 끝난 후 프로그램을 실행하려면 프로젝트 디렉터리로 이동한 다음 python으로 hawk.py 파일을 실행하기만 하면 됩니다. 성능 향상과 권한 오류를 피하기 위해 루트로 스크립트를 실행하는 것이 좋습니다. 사용되는 명령은 다음과 같습니다:

root@kitploit:~
sudo python3 hawk.py

설정

구성을 변경하려면 files/conf.py에 있는 구성 파일로 이동하여 편집하면 됩니다.

사용 방법

ifconfig

시스템의 현재 TCP/IP 네트워크 구성을 표시하려면 다음 명령을 입력하세요:

-ifconfig

ifconfig

ping

연결 상태를 확인하기 위해 하나 이상의 호스트에 ICMP 패킷을 보내려면 다음과 같이 입력하세요:

-ping <HOST(s) IP/FQDN>

ping

traceroute

경로를 진단하고 전송 지연을 측정하려면 -traceroute 명령을 사용하세요:

-traceroute <HOST IP/FQDN>

tracert

포트 스캔

포트 스캔은 네트워크에 연결된 호스트와 실행 중인 서비스를 식별하여 잠재적인 보안 침해를 감지하는 데 도움이 됩니다.

TCP SYN(-scansyn) [스텔스 스캔이라고도 함], TCP Connect(-scantcp), UDP(-scanudp), TCP ACK(-scanack), 종합 스캔(-scan) 등 여러 스캔 유형이 지원됩니다.

-scan -host <HOST(s) IP/FQDN>

-scan -host <HOST(s) IP/FQDN> -p <PORT(s)>

IP 범위 및/또는 포트 범위를 스캔하려면 다음 명령 중 하나를 사용하세요:

-scan -host <HOST(s) IP/FQDN> -prange <START PORT> <END PORT>

-scan -iprange <START IP> <END IP> -p <PORT(s)>

-scan -iprange <START IP> <END IP> -prange <START PORT> <END PORT>

scan

이 스캔 후 22(SSH) 및 80(HTTP) 포트가 모두 열려 있음을 확인할 수 있습니다.

호스트 검색

주어진 네트워크에서 현재 작동 중인 장치를 찾으려면 다음 명령을 입력하세요:

-scanlan

그런 다음 스캔하려는 네트워크를 입력하세요.

scanlan

MAC 주소 감지

LAN에서 하나 이상의 활성 호스트의 MAC 주소를 얻으려면 다음 명령을 사용하세요:

-getmac -host <HOST(s) IP>

getmac

애플리케이션 버전 감지

버전 감지, 즉 배너 그래빙은 소프트웨어 배너 정보를 수집하는 정찰 기술입니다. 이 배너에는 일반적으로 네트워크 서비스에 대한 중요한 정보가 포함되며, 여기에는 소프트웨어 이름과 버전이 포함되지만 이에 국한되지 않습니다. FTP, 웹, SSH 및 SMTP 서버는 종종 배너에서 실행 중인 소프트웨어에 대한 중요한 정보를 노출합니다.

배너 공격은 일반적으로 열린 포트를 찾기 위한 열거 스캔으로 시작됩니다. 공격 대상 서비스를 식별한 후 특정 패킷을 보내고 지정된 정보를 위해 트래픽을 검사할 수 있습니다.

배너 그래빙을 수행하려면 특정 요구 사항에 따라 다음 명령 중 하나를 입력하세요:

-grab -host <HOST(s) IP/FQDN> -p <PORT(s)>

-grab -iprange <START IP> <END IP> -prange <START PORT> <END PORT>

-grab -host <HOST(s) IP/FQDN> -prange <START PORT> <END PORT>

-grab -iprange <START IP> <END IP> -p <PORT(s)>

grab

DNS 확인

이 기능은 UNIX 시스템에서 사용되는 잘 알려진 nslookup 명령과 유사합니다. DNS 확인을 수행하려면 다음을 입력하세요:

-ns <HOST(s) IP/FQDN>

ns

고지 사항: 이 기능은 IPinfo API를 사용합니다. 제공된 키는 다른 사람들이 사용하고 있을 수 있으므로 API 키를 본인 것으로 변경하는 것이 좋습니다. API 키를 변경하려면 files/conf.py의 구성 파일로 이동하세요.

WHOIS

WHOIS는 연락처 및 DNS 정보를 조회하기 위한 TCP 프로토콜입니다. 하나 이상의 페이지에 대한 WHOIS를 요청하려면 다음을 입력하세요:

-whois <HOST(s) IP/PQDN>

whois

하위 도메인 열거

하위 도메인 열거는 하나 이상의 도메인에 대한 유효한 하위 도메인을 찾는 과정입니다.

하위 도메인 열거는 보안 평가 범위에 속하는 많은 도메인/하위 도메인을 드러낼 수 있으며, 이는 취약점을 발견할 가능성을 높입니다.

도메인의 일반적인 하위 도메인을 찾으려면 다음과 같이 입력하세요:

-sdenum <PQDN>

이 명령은 하위 도메인을 찾기 위해 기본 워드리스트를 사용합니다. 그러나 자신만의 워드리스트를 사용하려면 다음을 입력하세요:

-sdenum <PQDN> -wordlist <WORDLIST PATH>

sdenum

디렉터리 버스팅

디렉터리 버스팅은 웹 서버 내에서 디렉터리를 찾는 과정입니다.

이 작업을 수행하려면 다음을 입력하세요:

-dirbust <HOST IP/FQDN>

이 명령은 하위 도메인을 찾기 위해 기본 워드리스트를 사용합니다. 그러나 자신만의 워드리스트를 사용하려면 다음을 입력하세요:

-dirbust <HOST IP/FQDN> -wordlist <WORDLIST PATH>

dirbust

취약점 정찰

하나 이상의 호스트에서 취약점을 스캔하려면 다음 명령을 사용하세요:

-vulnscan -host <HOST(s) IP/FQDN>

vulnscan1 vulnscan2

고지 사항: 이 기능은 Shodan API를 사용합니다. 제공된 키는 다른 사람들이 사용하고 있을 수 있으므로 API 키를 본인 것으로 변경하는 것이 좋습니다. API 키를 변경하려면 files/conf.py의 구성 파일로 이동하세요.

패킷 스니핑

패킷 스니핑을 수행하려면 다음을 입력하세요:

-sniff

sniff

고지 사항: 네트워크를 통과하는 모든 데이터를 스니핑하려면 먼저 무선 카드 또는 어댑터를 모니터 모드로 전환하세요.

MAC 스푸핑

MAC 스푸핑은 전송 NIC의 주소와 다른 MAC 주소로 프레임을 생성하는 것입니다. 인터페이스의 MAC 주소를 변경하려면 다음 명령을 입력하세요:

-macspoof -source <SOURCE MAC> -iface <INTERFACE>

macspoof

아래 스크린샷에서 볼 수 있듯이 인터페이스의 MAC 주소가 성공적으로 변경되었습니다.

macspoof2

IP 스푸핑

IP 스푸핑의 목적은 패킷이 전달되는 시스템이 송신자를 올바르게 식별할 수 없도록 원래의 소스 IP 주소를 변조하는 것입니다.

이 명령은 패치되지 않은 취약점이 있는 시스템에서만 작동합니다. 호스트의 특정 포트에 대해 IP 스푸핑을 수행하려면 다음 명령을 사용하세요:

-ipspoof -source <SOURCE IP> <SOURCE PORT> -target <TARGET IP/FQDN> <TARGET PORT>

임의의 소스 IP를 사용하려면 다음 명령을 입력하세요:

-ipspoof -source r <SOURCE PORT> -target <TARGET IP/FQDN> <TARGET PORT>

임의의 소스 포트를 사용할 수도 있습니다:

-ipspoof -source <SOURCE IP> r -target <TARGET IP/FQDN> <TARGET PORT>

ipspoof

고지 사항: 테스트 목적으로만 사용하고 자신의 시스템만 대상으로 하세요.

SYN 플러딩

SYN 플러드는 전송 계층(4계층)에 직접적인 오버헤드를 유발하고 응용 계층(7계층)에 간접적인 오버헤드를 유발하는 DDoS 공격 방법입니다.

SYN 플러딩을 시도하려면 다음을 입력하세요:

-synflood -source <SOURCE PORT> -target <TARGET IP/FQDN> <TARGET PORT>

임의의 소스 포트를 사용하려면 다음 명령을 입력하세요:

-synflood -source r -target <TARGET IP/FQDN> <TARGET PORT>

synflood

고지 사항: 테스트 목적으로만 사용하고 자신의 시스템만 대상으로 하세요.

Deauth 공격

Deauth 공격은 라우터와 해당 라우터에 연결된 하나 이상의 장치 간의 통신을 대상으로 하는 무선 공격 유형입니다. 효과적으로 대상 머신을 액세스 포인트에서 강제로 연결 해제시킵니다.

이 공격을 수행하려면 다음 명령을 사용하세요:

-deauth -target <TARGET MAC> -gateway <GATEWAY MAC> -iface <INTERFACE>

게이트웨이의 모든 클라이언트를 공격하려면 다음을 입력하세요:

-deauth -target a -gateway <GATEWAY MAC> -iface <INTERFACE>

기본 무선 인터페이스(files/conf.py에 설정)를 선택하여 공격을 수행할 수도 있습니다:

-deauth -target <TARGET MAC> -gateway <GATEWAY MAC> -iface d

deauth

위 스크린샷에서 명령을 실행한 후 해당 액세스 포인트에 연결된 모든 장치가 연결이 끊어졌으며 이 스크립트가 실행되는 동안 다시 연결할 수 없었습니다.

고지 사항: 이 공격을 수행하려면 모니터 모드를 지원하는 무선 카드 또는 어댑터가 있는지 확인하고 deauth 공격을 시도하기 전에 켜세요. 테스트 목적으로만 사용하고 자신의 시스템만 대상으로 하세요.

무차별 대입 공격

무차별 대입 공격은 암호나 사용자 이름을 풀기 위한 시도입니다.

무차별 대입 공격을 수행하여 일반적이거나 취약한 자격 증명을 찾으려면 다음을 입력하세요:

-bruteforce <SERVICE> -target <TARGET IP/FQDN> -user <USERNAME>

사용자 정의 워드리스트를 사용하려면 다음 명령을 사용하세요:

-bruteforce <SERVICE> -target <TARGET IP/FQDN> -user <USERNAME> -wordlist <WORDLIST PATH>

현재로서는 SSH 서비스만 지원됩니다.

고지 사항: 대상 서버에는 이러한 유형의 공격에 대한 방어 메커니즘이 있어 공격자의 암호 추측 시도를 차단할 수 있습니다. 테스트 목적으로만 사용하고 자신의 시스템만 대상으로 하세요.

자동 정찰

이 명령은 이 스크립트에서 사용할 수 있는 일부 정찰 기술을 자동화합니다. 이 작업을 수행하려면 다음을 입력하세요:

-autoscan <HOST(s) IP/FQDN>

인터페이스에서 모니터 또는 관리 모드 전환

대부분의 무선 사용자는 무선 카드를 AP에 연결되는 스테이션으로만 사용합니다. 관리 모드에서 무선 카드와 드라이버 소프트웨어는 관리 모드의 로컬 AP에 의존하여 무선 네트워크에 대한 연결을 제공합니다.

일부 무선 카드는 모니터 모드 기능도 지원합니다. 모니터 모드로 구성하면 무선 카드가 데이터 전송을 중지하고 현재 구성된 채널을 스니핑하여 관찰된 모든 패킷 내용을 호스트 운영 체제에 보고합니다.

인터페이스를 모니터 모드로 전환하려면 다음 명령을 사용하세요:

-mode monitor -iface <INTERFACE>

인터페이스를 기본 무선 인터페이스(files/conf.py에 설정)로 설정할 수도 있습니다:

-mode monitor -iface d

monitor

아래 스크린샷에서 볼 수 있듯이 인터페이스 모드가 성공적으로 변경되었습니다.

monitorproof

하지만 인터페이스를 다시 관리 모드로 전환하려면 다음을 입력하세요:

-mode managed -iface <INTERFACE>

인터페이스를 기본 무선 인터페이스(files/conf.py에 설정)로 설정할 수도 있습니다:

-mode managed -iface d

managed

아래 스크린샷에서 볼 수 있듯이 인터페이스 모드가 성공적으로 변경되었습니다.

managedproof

기여

이슈나 풀 리퀘스트를 만들거나 [email protected]으로 이메일을 보내주세요.

라이선스

이 저장소는 MIT 라이선스 하에 있습니다.

도구 다운로드