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

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

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

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

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
habu — 해킹 툴킷 | Kitploit
도구/GitHubGitHub/fportantier/habu
OSINT (Open Source Intelligence)Information GatheringWeb SecurityNetwork SecurityCryptographyPenetration TestingLearning & EducationDNS Analysis
GitHubfportantier/habu

habu

해킹 툴킷

저장소 보기
9831637개월 전Kitploit 검토 완료

인기

모두 보기 →

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

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

Habu Hacking Toolkit

저는 파이썬과 네트워크 해킹에 대한 몇 가지 개념을 가르치고 배우기 위해 Habu를 개발하고 있습니다.

현재 버전에 구현된 일부 기술은 다음과 같습니다:

  • ARP 포이즈닝 및 스니핑
  • DHCP 디스커버 및 스타베이션
  • 서브도메인 식별
  • 인증서 복제
  • TCP 분석 (ISN, 플래그)
  • 소셜 네트워크에서 사용자명 확인
  • 웹 기술 식별
  • 그리고 더 많은 것!

이 소프트웨어의 개발은 Securetia SRL (https://www.securetia.com/)이 지원합니다.

Hacking with Habu

다양한 유용한 사용 시나리오는 https://fportantier.github.io/hacking-with-habu/ 에 자세히 설명되어 있습니다.

사용 영상

다음 YouTube 재생 목록에는 설치 및 사용법을 보여주는 동영상이 포함되어 있습니다:

https://www.youtube.com/watch?v=rgp9seLLyqE&list=PL4HZnX8VnFXqSvNw7x-bXOn0dgxNdfnVD

텔레그램 그룹

Habu 기능, 개선 가능 사항 등에 대해 논의하고 싶다면 Habu 텔레그램 그룹을 사용할 수 있습니다: https://t.me/python_habu

기여하기

이슈와 풀 리퀘스트는 깃허브 저장소로 보내주세요: https://github.com/fportantier/habu

설치

권장 설치 방법:

::

root@kitploit:~
$ python3 -m pip install --upgrade git+https://github.com/fportantier/habu.git

이 방법은 Python 3이 설치된 모든 시스템에서 작동해야 합니다.

참고: 일부 시스템(예: Microsoft Windows)에서는 명령을 조정하여 Python 실행 파일의 올바른 경로를 가리키도록 해야 합니다.

업그레이드

이제 Git 저장소에서 직접 업그레이드하고 더 이상 존재하지 않거나 이름이 변경된 이전 명령을 정리하는 명령이 있습니다.

::

root@kitploit:~
$ habu.upgrade

도움말

모든 명령은 '--help' 옵션을 구현하며, 이는 도움말, 인수, 옵션 및 기본값을 보여줍니다.

상세 모드

거의 모든 명령이 '-v' 옵션으로 상세 모드를 구현합니다. 이는 habu가 수행 중인 작업에 대한 추가 정보를 제공할 수 있습니다.

명령 색인

  • arp.ping <#habuarpping>_
  • arp.poison <#habuarppoison>_
  • arp.sniff <#habuarpsniff>_
  • asydns <#habuasydns>_
  • b64 <#habub64>_
  • cert.clone <#habucertclone>_
  • cert.crtsh <#habucertcrtsh>_
  • cert.names <#habucertnames>_
  • config.del <#habuconfigdel>_
  • config.set <#habuconfigset>_
  • config.show <#habuconfigshow>_
  • crack.luhn <#habucrackluhn>_
  • crack.snmp <#habucracksnmp>_

habu.arp.ping

.. code-block::

root@kitploit:~
Usage: habu.arp.ping [OPTIONS] IP

  Send ARP packets to check if a host it's alive in the local network.

  Example:

  # habu.arp.ping 192.168.0.1
  Ether / ARP is at a4:08:f5:19:17:a4 says 192.168.0.1 / Padding

Options:
  -i TEXT  Interface to use
  -v       Verbose output
  --help   Show this message and exit.

habu.arp.poison

.. code-block::

root@kitploit:~
Usage: habu.arp.poison [OPTIONS] VICTIM1 VICTIM2

  Send ARP 'is-at' packets to each victim, poisoning their ARP tables for
  send the traffic to your system.

  Note: If you want a full working Man In The Middle attack, you need to
  enable the packet forwarding on your operating system to act like a
  router. You can do that using:

  # echo 1 > /proc/sys/net/ipv4/ip_forward

  Example:

  # habu.arpoison 192.168.0.1 192.168.0.77
  Ether / ARP is at f4:96:34:e5:ae:1b says 192.168.0.77
  Ether / ARP is at f4:96:34:e5:ae:1b says 192.168.0.70
  Ether / ARP is at f4:96:34:e5:ae:1b says 192.168.0.77
  ...

Options:
  -i TEXT  Interface to use
  -v       Verbose
  --help   Show this message and exit.

habu.arp.sniff

.. code-block::

root@kitploit:~
Usage: habu.arp.sniff [OPTIONS]

  Listen for ARP packets and show information for each device.

  Columns: Seconds from last packet | IP | MAC | Vendor

  Example:

  1   192.168.0.1     a4:08:f5:19:17:a4   Sagemcom Broadband SAS
  7   192.168.0.2     64:bc:0c:33:e5:57   LG Electronics (Mobile Communications)
  2   192.168.0.5     00:c2:c6:30:2c:58   Intel Corporate
  6   192.168.0.7     54:f2:01:db:35:58   Samsung Electronics Co.,Ltd

Options:
  -i TEXT  Interface to use
  --help   Show this message and exit.

habu.asydns

.. code-block::

root@kitploit:~
Usage: habu.asydns [OPTIONS]

  Requests a DNS domain name based on public and private RSA keys using the
  AsyDNS protocol https://github.com/portantier/asydns

  Example:

  $ habu.asydns -v
  Generating RSA key ...
  Loading RSA key ...
  {
      "ip": "181.31.41.231",
      "name": "07286e90fd6e7e6be61d6a7919967c7cf3bbfb23a36edbc72b6d7c53.a.asydns.org"
  }

  $ dig +short 07286e90fd6e7e6be61d6a7919967c7cf3bbfb23a36edbc72b6d7c53.a.asydns.org
  181.31.41.231

Options:
  -u TEXT  API URL
  -g       Force the generation of a new key pair
  -r       Revoke the public key
  -v       Verbose output
  --help   Show this message and exit.

habu.b64

.. code-block::

root@kitploit:~
Usage: habu.b64 [OPTIONS] [F]

  Encodes or decode data in base64, just like the command base64.

  $ echo awesome | habu.b64
  YXdlc29tZQo=

  $ echo YXdlc29tZQo= | habu.b64 -d
  awesome

Options:
  -d      decode instead of encode
  --help  Show this message and exit.

habu.cert.clone

.. code-block::

root@kitploit:~
Usage: habu.cert.clone [OPTIONS] HOSTNAME PORT KEYFILE CERTFILE

  Connect to an SSL/TLS server, get the certificate and generate a
  certificate with the same options and field values.

  Note: The generated certificate is invalid, but can be used for social
  engineering attacks

  Example:

  $ habu.certclone www.google.com 443 /tmp/key.pem /tmp/cert.pem

Options:
  --copy-extensions  Copy certificate extensions (default: False)
  --expired          Generate an expired certificate (default: False)
  -v                 Verbose
  --help             Show this message and exit.

habu.cert.crtsh

.. code-block::

root@kitploit:~
Usage: habu.cert.crtsh [OPTIONS] DOMAIN

  Downloads the certificate transparency logs for a domain and check with
  DNS queries if each subdomain exists.

  Uses multithreading to improve the performance of the DNS queries.

  Example:

  $ habu.crtsh securetia.com
  alt.securetia.com
  other.securetia.com
  www.securetia.com

Options:
  -c      Disable cache
  -n      Disable DNS subdomain validation
  -v      Verbose output
  --json  Print the output in JSON format
  --help  Show this message and exit.

habu.cert.names

.. code-block::

root@kitploit:~
Usage: habu.cert.names [OPTIONS] [NETWORK]

  Connects to each host/port and shows a summary of the certificate names.

  The hosts to connect to are taken from two possible options:

  1. -i option (default: stdin). A file where each line is a host or network

  2. An argument that can be a host or network

  If you use both methods, the hosts and networks are merged into one list.

  Example:

  $ habu.cert.names 2.18.60.240/29
  2.18.60.241         443 i.s-microsoft.com microsoft.com privacy.microsoft.com
  2.18.60.242         443 aod-ssl.itunes.apple.com aod.itunes.apple.com aodp-ssl.itunes.apple.com
  2.18.60.243         443 *.mlb.com mlb.com
  2.18.60.244         443 [SSL: TLSV1_ALERT_INTERNAL_ERROR] tlsv1 alert internal error (_ssl.c:1056)
  2.18.60.245         443 cert2-cn-public-ubiservices.ubi.com cert2-cn-public-ws-ubiservices.ubi.com
  2.18.60.246         443 *.blog.sina.com.cn *.dmp.sina.cn

  aod.itunes.apple.com
  aodp-ssl.itunes.apple.com
  aod-ssl.itunes.apple.com
  *.blog.sina.com.cn
  cert2-cn-public-ubiservices.ubi.com
  cert2-cn-public-ws-ubiservices.ubi.com
  *.dmp.sina.cn
  i.s-microsoft.com microsoft.com
  *.mlb.com mlb.com
  privacy.microsoft.com

Options:
  -p TEXT      Ports to connect to (comma separated list)
  -i FILENAME  Input file (Default: stdin)
  -t FLOAT     Time to wait for each connection
  -v           Verbose output
  --json       Print the output in JSON format
  --help       Show this message and exit.

habu.config.del

.. code-block::

root@kitploit:~
Usage: habu.config.del [OPTIONS] KEY

  Delete a KEY from the configuration.

  Note: By default, KEY is converted to uppercase.

  Example:

  $ habu.config.del DNS_SERVER

Options:
  --help  Show this message and exit.

habu.config.set

.. code-block::

root@kitploit:~
Usage: habu.config.set [OPTIONS] KEY VALUE

  Set VALUE to the config KEY.

  Note: By default, KEY is converted to uppercase.

  Example:

  $ habu.config.set DNS_SERVER 8.8.8.8

Options:
  --help  Show this message and exit.

habu.config.show

.. code-block::

root@kitploit:~
Usage: habu.config.show [OPTIONS]

  Show the current config.

  Note: By default, the options with 'KEY' in their name are shadowed.

  Example:

  $ habu.config.show
  {
      "DNS_SERVER": "8.8.8.8",
      "FERNET_KEY": "*************"
  }

Options:
  -k, --show-keys   Show also the key values
  --option TEXT...  Write to the config(KEY VALUE)
  --help            Show this message and exit.

habu.crack.luhn

.. code-block::

root@kitploit:~
Usage: habu.crack.luhn [OPTIONS] NUMBER

  Having known values for a Luhn validated number, obtain the possible
  unknown numbers.

  Numbers that use the Luhn algorithm for validation are Credit Cards, IMEI,
  National Provider Identifier in the United States, Canadian Social
  Insurance Numbers, Israel ID Numbers and Greek Social Security Numbers
  (ΑΜΚΑ).

  The '-' characters are ignored.

  Define the missing numbers with the 'x' character.

  Reference: https://en.wikipedia.org/wiki/Luhn_algorithm

  Example:

  $ habu.crack.luhn 4509-xx08-3160-6445
  4509000831606445
  4509180831606445
  4509260831606445
  4509340831606445
  4509420831606445
  4509590831606445
  4509670831606445
  4509750831606445
  4509830831606445
  4509910831606445

Options:
  --help  Show this message and exit.

habu.crack.snmp

.. code-block::

root@kitploit:~
Usage: habu.crack.snmp [OPTIONS] IP

  Launches snmp-get queries against an IP, and tells you when finds a valid
  community string (is a simple SNMP cracker).

  The dictionary used is the distributed with the onesixtyone tool
  https://github.com/trailofbits/onesixtyone

  Example:

  # habu.crack.snmp 179.125.234.210
  Community found: private
  Community found: public

  Note: You can also receive messages like \<UNIVERSAL\> \<class
  'scapy.asn1.asn1.ASN1\_Class\_metaclass'\>, I don't know how to supress
  them for now.

Options:
  -p INTEGER  Port to use
  -c TEXT     Community (default: list of most used)
  -s          Stop after first match
  -v          Verbose
  --help      Show this message and exit.

habu.crypto.fernet

.. code-block::

root@kitploit:~
Usage: habu.crypto.fernet [OPTIONS]

  Fernet cipher.

  Uses AES-128-CBC with HMAC

  Note: You must use a key to cipher with Fernet.

  Use the -k paramenter or set the FERNET_KEY configuration value.

  The keys can be generated with the command habu.crypto.fernet.genkey

  Reference: https://github.com/fernet/spec/blob/master/Spec.md

  Example:

  $ "I want to protect this string" | habu.crypto.fernet
  gAAAAABbXnCGoCULLuVNRElYTbEcwnek9iq5jBKq9JAN3wiiBUzPqpUgV5oWvnC6xfIA...

  $ echo gAAAAABbXnCGoCULLuVNRElYTbEcwnek9iq5jBKq9JAN3wiiBUzPqpUgV5oWvnC6xfIA... | habu.crypto.fernet -d
  I want to protect this string

Options:
  -k TEXT        Key
  -d             Decrypt instead of encrypt
  --ttl INTEGER  Time To Live for timestamp verification
  -i FILENAME    Input file (default: stdin)
  -o FILENAME    Output file (default: stdout)
  --help         Show this message and exit.

habu.crypto.fernet.genkey

.. code-block::

root@kitploit:~
Usage: habu.crypto.fernet.genkey [OPTIONS]

  Generate a new Fernet Key, optionally write it to ~/.habu.json

  Example:

  $ habu.crypto.fernet.genkey
  xgvWCIvjwe9Uq7NBvwO796iI4dsGD623QOT9GWqnuhg=

Options:
  -w      Write this key to ~/.habu.json
  --help  Show this message and exit.

habu.crypto.gppref

.. code-block::

root@kitploit:~
Usage: habu.crypto.gppref [OPTIONS] PASSWORD

  Decrypt the password of local users added via Windows 2008 Group Policy
  Preferences.

  This value is the 'cpassword' attribute embedded in the Groups.xml file,
  stored in the domain controller's Sysvol share.

  Example:

  # habu.crypto.gppref AzVJmXh/J9KrU5n0czX1uBPLSUjzFE8j7dOltPD8tLk
  testpassword

Options:
  --help  Show this message and exit.

habu.crypto.hasher

.. code-block::

root@kitploit:~
Usage: habu.crypto.hasher [OPTIONS] [F]

  Compute various hashes for the input data, that can be a file or a stream.

  Example:

  $ habu.crypto.hasher README.rst
  md5          992a833cd162047daaa6a236b8ac15ae README.rst
  ripemd160    0566f9141e65e57cae93e0e3b70d1d8c2ccb0623 README.rst
  sha1         d7dbfd2c5e2828eb22f776550c826e4166526253 README.rst
  sha256       6bb22d927e1b6307ced616821a1877b6cc35e... README.rst
  sha512       8743f3eb12a11cf3edcc16e400fb14d599b4a... README.rst
  whirlpool    96bcc083242e796992c0f3462f330811f9e8c... README.rst

  You can also specify which algorithm to use. In such case, the output is
  only the value of the calculated hash:

  $ habu.hasher -a md5 README.rst
  992a833cd162047daaa6a236b8ac15ae README.rst

Options:
  -a [md5|sha1|sha256|sha512|ripemd160|whirlpool]
                                  Only this algorithm (Default: all)
  --help                          Show this message and exit.

habu.crypto.xor

.. code-block::

root@kitploit:~
Usage: habu.crypto.xor [OPTIONS]

  XOR cipher.

  Note: XOR is not a 'secure cipher'. If you need strong crypto you must use
  algorithms like AES. You can use habu.fernet for that.

  Example:

  $ habu.xor -k mysecretkey -i /bin/ls > xored
  $ habu.xor -k mysecretkey -i xored > uxored
  $ sha1sum /bin/ls uxored
  $ 6fcf930fcee1395a1c95f87dd38413e02deff4bb  /bin/ls
  $ 6fcf930fcee1395a1c95f87dd38413e02deff4bb  uxored

Options:
  -k TEXT      Encryption key
  -i FILENAME  Input file (default: stdin)
  -o FILENAME  Output file (default: stdout)
  --help       Show this message and exit.

habu.data.enrich

.. code-block::

root@kitploit:~
Usage: habu.data.enrich [OPTIONS]

  Enrich data adding interesting information.

  Example:

  $ cat /var/log/auth.log | habu.data.extract.ipv4 | habu.data.enrich
  [
      {
          "asset": "8.8.8.8",
          "family": "IPAddress",
          "asn": "15169",
          "net": "8.8.8.0/24",
          "cc": "US",
          "rir": "ARIN",
          "asname": "GOOGLE - Google LLC, US"
      },
      {
          "asset": "8.8.4.4",
          "family": "IPAddress",
          "asn": "15169",
          "net": "8.8.4.0/24",
          "cc": "US",
          "rir": "ARIN",
          "asname": "GOOGLE - Google LLC, US"
      }
  ]

Options:
  -i FILENAME  Input file (Default: stdin)
  -v           Verbose output
  --help       Show this message and exit.

habu.data.extract.domain

.. code-block::

root@kitploit:~
Usage: habu.data.extract.domain [OPTIONS] [INFILE]

  Extract valid domains from a file or stdin.

  Optionally, check each domain for the presence of NS registers.

  Example:

  $ cat /var/log/some.log | habu.data.extract.domain -c
  google.com
  ibm.com
  redhat.com

Options:
  -c      Check if domain has NS servers defined
  -v      Verbose output
  -j      JSON output
  --help  Show this message and exit.

habu.data.extract.email

.. code-block::

root@kitploit:~
Usage: habu.data.extract.email [OPTIONS] [INFILE]

  Extract email addresses from a file or stdin.

  Example:

  $ cat /var/log/auth.log | habu.data.extract.email
  [email protected]
  [email protected]
  [email protected]

Options:
  -v      Verbose output
  -j      JSON output
  --help  Show this message and exit.

habu.data.extract.fqdn

.. code-block::

root@kitploit:~
Usage: habu.data.extract.fqdn [OPTIONS] [INFILE]

  Extract FQDNs (Fully Qualified Domain Names) from a file or stdin.

  Example:

  $ cat /var/log/some.log | habu.data.extract.fqdn
  www.google.com
  ibm.com
  fileserver.redhat.com

Options:
  -c      Check if hostname resolves
  -v      Verbose output
  -j      JSON output
  --help  Show this message and exit.

habu.data.extract.ipv4

.. code-block::

root@kitploit:~
Usage: habu.data.extract.ipv4 [OPTIONS] [INFILE]

  Extract IPv4 addresses from a file or stdin.

  Example:$ cat /var/log/auth.log | habu.data.extract.ipv4
  172.217.162.4
  23.52.213.96
  190.210.43.70

옵션:
  -j, --json    JSON 출력
  -u, --unique  중복 제거
  -v            자세한 출력
  --help        도움말 표시 후 종료.

habu.data.filter

.. code-block::

root@kitploit:~
Usage: habu.data.filter [OPTIONS] FIELD [gt|lt|eq|ne|ge|le|in|contains|defin
                          ed|undefined|true|false] [VALUE]

  연산자를 기반으로 데이터를 필터링합니다.

  연산자 참조:

  gt:         보다 큼
  lt:         보다 작음
  eq:         같음
  ne:         같지 않음
  ge:         크거나 같음
  le:         작거나 같음
  in:         값 목록 내에 있음 (또는 네트워크 내)
  contains:   값 (또는 네트워크 주소) 포함
  defined:    값이 정의됨
  undefined:  값이 정의되지 않음
  true:       값이 참
  false:      값이 거짓

  예:

  $ cat /var/log/auth.log | habu.data.extract.ipv4 | habu.data.enrich | habu.data.filter cc eq US
  [
      {
          "item": "8.8.8.8",
          "family": "ipv4_address",
          "asn": "15169",
          "net": "8.8.8.0/24",
          "cc": "US",
          "rir": "ARIN",
          "asname": "GOOGLE - Google LLC, US"
      }
  ]

  문서: https://fportantier.github.io/hacking-with-habu/user/data-manipulation.html#data-enrichment

옵션:
  -i FILENAME  입력 파일 (기본: stdin)
  -v           자세한 출력
  --not        비교 결과 부정
  --help       도움말 표시 후 종료.

habu.data.select

.. code-block::

root@kitploit:~
Usage: habu.data.select [OPTIONS] FIELD

  JSON 입력에서 필드를 선택합니다.

  예:

  $ cat /var/log/auth.log | habu.data.extract.ipv4 | habu.data.enrich | habu.data.filter cc eq US | habu.data.select asset
  8.8.8.7
  8.8.8.8
  8.8.8.9

옵션:
  -i FILENAME  입력 파일 (기본: stdin)
  -v           자세한 출력
  --json       JSON 출력
  --help       도움말 표시 후 종료.

habu.dhcp.discover

.. code-block::

root@kitploit:~
Usage: habu.dhcp.discover [OPTIONS]

  DHCP 요청을 보내고 어떤 장치가 응답했는지 보여줍니다.

  참고: '-v'를 사용하면 응답에 포함된 모든 옵션(DNS 서버 등)을 볼 수 있습니다.

  # habu.dhcp_discover
  Ether / IP / UDP 192.168.0.1:bootps > 192.168.0.5:bootpc / BOOTP / DHCP

옵션:
  -i TEXT     사용할 인터페이스
  -t INTEGER  응답 대기 시간(초)
  -v          자세한 출력
  --help      도움말 표시 후 종료.

habu.dhcp.starvation

.. code-block::

root@kitploit:~
Usage: habu.dhcp.starvation [OPTIONS]

  위조된 MAC 주소에서 여러 DHCP 요청을 보내 DHCP 서버 임대를 채웁니다.

  사용 가능한 모든 네트워크 주소가 할당되면 DHCP 서버가 응답하지 않습니다.

  따라서 DHCP 스푸핑과 같은 일부 공격이 가능합니다.

  # habu.dhcp_starvation
  Ether / IP / UDP 192.168.0.1:bootps > 192.168.0.6:bootpc / BOOTP / DHCP
  Ether / IP / UDP 192.168.0.1:bootps > 192.168.0.7:bootpc / BOOTP / DHCP
  Ether / IP / UDP 192.168.0.1:bootps > 192.168.0.8:bootpc / BOOTP / DHCP

옵션:
  -i TEXT     사용할 인터페이스
  -t INTEGER  응답 대기 시간(초)
  -s INTEGER  요청 간격(초)
  -v          자세한 출력
  --help      도움말 표시 후 종료.

habu.dns.lookup.forward

.. code-block::

root@kitploit:~
Usage: habu.dns.lookup.forward [OPTIONS] HOSTNAME

  주어진 호스트 이름의 정방향 조회를 수행합니다.

  예:

  $ habu.dns.lookup.forward google.com
  {
      "ipv4": "172.217.168.46",
      "ipv6": "2a00:1450:400a:802::200e"
  }

옵션:
  -v      자세한 출력
  --help  도움말 표시 후 종료.

habu.dns.lookup.reverse

.. code-block::

root@kitploit:~
Usage: habu.dns.lookup.reverse [OPTIONS] IP_ADDRESS

  주어진 IP 주소의 역방향 조회를 수행합니다.

  예:

  $ $ habu.dns.lookup.reverse 8.8.8.8
  {
      "hostname": "google-public-dns-a.google.com"
  }

옵션:
  -v      자세한 출력
  --help  도움말 표시 후 종료.

habu.eicar

.. code-block::

root@kitploit:~
Usage: habu.eicar [OPTIONS]

  안티멀웨어 엔진 테스트에 사용할 수 있는 EICAR 테스트 문자열을 출력합니다.

  추가 정보: http://www.eicar.org/86-0-Intended-use.html

  예:

  $ habu.eicar
  X5O!P%@AP[4\XZP54(P^)7CC)7}$EICAR-STANDARD-ANTIVIRUS-TEST-FILE!$H+H*

옵션:
  --help  도움말 표시 후 종료.

habu.forkbomb

.. code-block::

root@kitploit:~
Usage: habu.forkbomb [OPTIONS] [bash|batch|c|haskell|perl|php|python|ruby]

  다양한 언어에서 포크 폭탄 사용법을 기억하는 단축키입니다.

  현재 지원: bash, batch, c, haskell, perl, php, python, ruby.

  예:

  $ habu.forkbomb c
  #include <unistd.h>
  int main()
  {
      while(1)
      {
          fork();
      }
      return 0;
  }

옵션:
  --help  도움말 표시 후 종료.

habu.fqdn.finder

.. code-block::

root@kitploit:~
Usage: habu.fqdn.finder [OPTIONS] [DOMAINS]...

  다양한 기술을 사용하여 지정된 도메인에 대한 유효한 FQDN을 획득합니다.

  1. DNS 영역 전송을 통해 모든 FQDN 시도
  2. 인증서 투명성 로그 확인
  3. 지정된 포트에 연결하고 SSL 인증서를 획득하여 FQDN 추출
  4. 웹사이트에 연결하고 웹사이트 링크를 기반으로 FQDN 획득
  5. 일반적인 이름에 대한 DNS 무차별 대입

  결과는 DNS로 확인되지 않는 FQDN을 제거하여 정리됩니다.

  예:

  $ habu.fqdn.finder educacionit.com
  barometrosalarial.educacionit.com
  blog.educacionit.com
  ci.educacionit.com
  educacionit.com
  intranet.educacionit.com
  lecdev.educacionit.com
  lecweb.educacionit.com
  mail.educacionit.com
  plantillas.educacionit.com
  www.educacionit.com

옵션:
  -t FLOAT                  각 연결 대기 시간
  -v                        자세한 출력
  --debug                   디버그 출력
  --connect / --no-connect  알려진 FQDN 열린 포트 SSL 인증서에서 가져오기
  --brute / --no-brute      도메인에 대해 DNS 무차별 대입 실행
  --links / --no-links      웹 사이트 링크에서 FQDN 추출
  --xfr / --no-xfr          도메인에 대해 DNS 영역 전송 시도
  --ctlog / --no-ctlog      인증서 투명성 로그에서 FQDN 가져오기 시도

  --json                    JSON 형식으로 출력
  --help                    도움말 표시 후 종료.

habu.gateway.find

.. code-block::

root@kitploit:~
Usage: habu.gateway.find [OPTIONS] NETWORK

  라우터 역할을 하는 호스트를 사용하여 외부 IP에 연결을 시도합니다.

  네트워크에서 라우터를 찾는 데 유용합니다.

  먼저 arping을 사용하여 활성 호스트를 감지하고 MAC 주소를 획득합니다.

  그런 다음 네트워크 패킷을 생성하고 각 MAC 주소를 대상으로 설정합니다.

  마지막으로 패킷을 올바르게 전달한 장치를 출력합니다.

  예:

  # habu.find.gateway 192.168.0.0/24
  192.168.0.1 a4:08:f5:19:17:a4 Sagemcom
  192.168.0.7 b0:98:2b:5d:22:70 Sagemcom
  192.168.0.8 b0:98:2b:5d:1f:e8 Sagemcom

옵션:
  -i TEXT                사용할 인터페이스
  --host TEXT            연결할 호스트 (기본: 8.8.8.8)
  --tcp                  ICMP 대신 TCP 사용
  --dport INTEGER RANGE  TCP 대상 포트 (기본: 80)
  --timeout INTEGER      시간 초과(초) (기본: 5)
  -v                     자세한 출력
  --help                 도움말 표시 후 종료.

habu.host

.. code-block::

root@kitploit:~
Usage: habu.host [OPTIONS]

  habu가 실행 중인 호스트에 대한 정보를 수집합니다.

  예:

  $ habu.host
  {
      "kernel": [
          "Linux",
          "demo123",
          "5.0.6-200.fc29.x86_64",
          "#1 SMP Wed Apr 3 15:09:51 UTC 2019",
          "x86_64",
          "x86_64"
      ],
      "distribution": [
          "Fedora",
          "29",
          "Twenty Nine"
      ],
      "libc": [
          "glibc",
          "2.2.5"
      ],
      "arch": "x86_64",
      "python_version": "3.7.3",
      "os_name": "Linux",
      "cpu": "x86_64",
      "static_hostname": "demo123",
      "fqdn": "demo123.lab.sierra"
  }

옵션:
  -v      자세한 출력.
  --help  도움말 표시 후 종료.

habu.http.headers

.. code-block::

root@kitploit:~
Usage: habu.http.headers [OPTIONS] SERVER

  웹 서버의 HTTP 헤더를 검색합니다.

  예:

  $ habu.http.headers http://duckduckgo.com
  {
      "Server": "nginx",
      "Date": "Sun, 14 Apr 2019 00:00:55 GMT",
      "Content-Type": "text/html",
      "Content-Length": "178",
      "Connection": "keep-alive",
      "Location": "https://duckduckgo.com/",
      "X-Frame-Options": "SAMEORIGIN",
      "Content-Security-Policy": "default-src https: blob: data: 'unsafe-inline' 'unsafe-eval'",
      "X-XSS-Protection": "1;mode=block",
      "X-Content-Type-Options": "nosniff",
      "Referrer-Policy": "origin",
      "Expect-CT": "max-age=0",
      "Expires": "Mon, 13 Apr 2020 00:00:55 GMT",
      "Cache-Control": "max-age=31536000"
  }

옵션:
  -v      자세한 출력
  --help  도움말 표시 후 종료.

habu.http.options

.. code-block::

root@kitploit:~
Usage: habu.http.options [OPTIONS] SERVER

  웹 서버의 사용 가능한 HTTP 메소드를 검색합니다.

  예:

  $ habu.http.options -v http://google.com
  {
      "allowed": "GET, HEAD"
  }

옵션:
  -v      자세한 출력
  --help  도움말 표시 후 종료.

habu.http.tech

.. code-block::

root@kitploit:~
Usage: habu.http.tech [OPTIONS] URL

  Wappalyzer apps.json 데이터베이스를 사용하여 웹 애플리케이션에 사용된 기술을 식별합니다.

  참조: https://github.com/AliasIO/Wappalyzer

  참고: 이 도구는 하나의 요청만 보냅니다. 따라서 은밀하며 의심스럽지 않습니다.

  $ habu.web.tech https://woocomerce.com
  Google Tag Manager       unknown
  MySQL                    unknown
  Nginx                    unknown
  PHP                      unknown
  Prototype                unknown
  RequireJS                unknown
  WooCommerce              3.8.0
  WordPress                5.2.4
  Yoast SEO                10.0.1

옵션:
  --cache / --no-cache
  --format [txt|csv|json]  출력 형식
  -v                       자세한 출력
  --help                   도움말 표시 후 종료.

habu.icmp.ping

.. code-block::

root@kitploit:~
Usage: habu.icmp.ping [OPTIONS] IP

  ICMP 에코 요청을 보내는 고전적인 ping 도구입니다.

  # habu.icmp.ping 8.8.8.8
  IP / ICMP 8.8.8.8 > 192.168.0.5 echo-reply 0 / Padding
  IP / ICMP 8.8.8.8 > 192.168.0.5 echo-reply 0 / Padding
  IP / ICMP 8.8.8.8 > 192.168.0.5 echo-reply 0 / Padding
  IP / ICMP 8.8.8.8 > 192.168.0.5 echo-reply 0 / Padding

옵션:
  -i TEXT     사용할 인터페이스 (기본: 자동)
  -c INTEGER  보낼 패킷 수 (기본: 무한)
  -t INTEGER  시간 초과(초) (기본: 2)
  -w INTEGER  패킷 간격(초) (기본: 1)
  -v          자세한 출력
  --help      도움말 표시 후 종료.

habu.ip.asn

.. code-block::

root@kitploit:~
Usage: habu.ip.asn [OPTIONS] IP

  Team Cymru ip2asn 서비스를 사용하여 공용 IPv4/IPv6에 대한 정보를 가져옵니다.

  참조: https://www.team-cymru.com/IP-ASN-mapping.html

  $ habu.ip.asn 8.8.8.8
  {
      "asn": "15169",
      "net": "8.8.8.0/24",
      "cc": "US",
      "rir": "ARIN",
      "asname": "GOOGLE - Google LLC, US",
      "country": "United States"
  }

옵션:
  --help  도움말 표시 후 종료.

habu.ip.geolocation

.. code-block::

root@kitploit:~
Usage: habu.ip.geolocation [OPTIONS] IP_ADDRESS

  https://ipapi.co/에서 IP 주소의 지리적 위치 정보를 가져옵니다.

  예:

  $ habu.ip.geolocation 8.8.8.8
  {
      "ip": "8.8.8.8",
      "city": "Mountain View",
      ...
      "asn": "AS15169",
      "org": "Google LLC"
  }

옵션:
  -v      자세한 출력.
  --help  도움말 표시 후 종료.

habu.ip.internal

.. code-block::

root@kitploit:~
Usage: habu.ip.internal [OPTIONS]

  로컬 인터페이스의 로컬 IP 주소를 가져옵니다.

  예:

  $ habu.ip.internal
  {
    "lo": {
      "ipv4": [
        {
          "addr": "127.0.0.1",
          "netmask": "255.0.0.0",
          "peer": "127.0.0.1"
        }
      ],
      "link_layer": [
        {
          "addr": "00:00:00:00:00:00",
          "peer": "00:00:00:00:00:00"
        }
      ],
      "ipv6": [
        {
          "addr": "::1",
          "netmask": "ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff/128"
        }
      ]
    },
  ...

옵션:
  -v      자세한 출력.
  --help  도움말 표시 후 종료.

habu.ip.public

.. code-block::

root@kitploit:~
Usage: habu.ip.public [OPTIONS]

  https://api.ipify.org에서 연결의 공용 IP 주소를 가져옵니다.

  예:

  $ habu.ip.public
  80.219.53.185

옵션:
  -4, --ipv4  공용 IPv4 주소 출력 (기본값)
  -6, --ipv6  공용 IPv6 주소 출력
  -j, --json  JSON 형식으로 출력
  --help      도움말 표시 후 종료.

habu.karma

.. code-block::

root@kitploit:~
Usage: habu.karma [OPTIONS] HOST

  Karma 서비스 https://karma.securetia.com를 사용하여 다양한 위협 인텔리전스/평판 목록에 대해 IP를 확인합니다.

  $ habu.karma www.google.com
  www.google.com -> 64.233.190.99
  [
      "hphosts_fsa",
      "hphosts_psh",
      "hphosts_emd"
  ]

  참고: 쿼리할 호스트의 호스트 이름 또는 IP를 사용할 수 있습니다.

옵션:
  --help  도움말 표시 후 종료.

habu.karma.bulk

.. code-block::

root@kitploit:~
Usage: habu.karma.bulk [OPTIONS] [INFILE]

  Karma 온라인 서비스를 사용하여 어떤 IP 주소가 블랙리스트에 포함되어 있는지 보여줍니다.

  예:

  $ cat /var/log/auth.log | habu.extract.ipv4 | habu.karma.bulk
  172.217.162.4   spamhaus_drop,alienvault_spamming
  23.52.213.96    CLEAN
  190.210.43.70   alienvault_malicious

옵션:
  --json  JSON 출력
  --bad   블랙리스트에 포함된 항목만 표시
  -v      자세한 출력
  --help  도움말 표시 후 종료.

habu.land

.. code-block::

root@kitploit:~
Usage: habu.land [OPTIONS] IP

  이 명령은 LAND 공격을 구현합니다. 소스 IP 주소를 대상 IP와 동일하게 위조하여 패킷을 보냅니다. 또한 동일한 소스 및 대상 포트를 사용합니다.

  이 공격은 매우 오래되었으며 Windows NT 4.0과 같은 오래된 시스템에서 서비스 거부를 유발하는 데 사용될 수 있습니다. 자세한 내용은 다음을 참조하세요: https://en.wikipedia.org/wiki/LAND

  # sudo habu.land 172.16.0.10
  ............

  참고: 각 점(.)은 전송된 패킷입니다. '-c' 옵션으로 보낼 패킷 수를 지정할 수 있습니다. 기본값은 중단되지 않는 것입니다. 또한 '-p' 옵션으로 대상 포트를 지정할 수 있습니다.

옵션:
  -c INTEGER  보낼 패킷 수 (기본: 무한)
  -p INTEGER  사용할 포트 (기본: 135)
  -i TEXT     사용할 인터페이스
  -v          자세한 출력
  --help      도움말 표시 후 종료.

habu.nc

.. code-block::

root@kitploit:~
Usage: habu.nc [OPTIONS] HOST PORT

  netcat/ncat의 일종의 대체 도구입니다.

  실행은 이 인기 있는 도구의 느낌을 모방합니다.

  예:

  $ habu.nc --crlf www.portantier.com 80
  Connected to 45.77.113.133 80
  HEAD / HTTP/1.0

  HTTP/1.0 301 Moved Permanently
  Date: Thu, 26 Jul 2018 21:10:51 GMT
  Server: OpenBSD httpd
  Connection: close
  Content-Type: text/html
  Content-Length: 443
  Location: https://www.portantier.com/

옵션:
  --family [4|6|46]            IP 주소 패밀리
  --ssl                        SSL 활성화
  --crlf                       EOL 시퀀스에 CRLF 사용
  --protocol [tcp|udp]         사용할 레이어 4 프로토콜
  --source-ip TEXT             사용할 소스 IP
  --source-port INTEGER RANGE  사용할 소스 포트
  --help                       도움말 표시 후 종료.

habu.net.contest

.. code-block::

root@kitploit:~
Usage: habu.net.contest [OPTIONS]

  다양한 서비스에 연결을 시도하고 인터넷 연결을 통해 도달할 수 있는지 확인합니다.

  예:

  $ habu.net.contest
  DNS:   True
  FTP:   True
  SSH:   True
  HTTP:  True
  HTTPS: True

옵션:
  --help  도움말 표시 후 종료.

habu.net.interfaces

.. code-block::

root@kitploit:~
Usage: habu.net.interfaces [OPTIONS]

  시스템에서 사용 가능한 네트워크 인터페이스를 표시합니다.

  예:

  # habu.interfaces
  #  NAME                            MAC                INET             INET6
  0  eth0                            80:fa:5b:4b:f9:18  None             None
  1  lo                              00:00:00:00:00:00  127.0.0.1        ::1
  2  wlan0                           f4:96:34:e5:ae:1b  192.168.0.6      None
  3  vboxnet0                        0a:00:27:00:00:00  192.168.56.1     fe80::800:27ff:fe00:0

옵션:
  -j      JSON 형식으로 출력
  --help  도움말 표시 후 종료.

habu.nmap.excluded

.. code-block::

root@kitploit:~
Usage: habu.nmap.excluded [OPTIONS]

  nmap-services 파일에 없어 nmap이 자동으로 스캔하지 않는 임의의 포트를 출력합니다.

  SSH 또는 RDP와 같이 기본 포트에서 지속적으로 스캔되는 서비스에 유용합니다.

  예:

  # habu.nmap.excluded
  58567

옵션:
  -l INTEGER RANGE  고려할 최저 포트
  -h INTEGER RANGE  고려할 최고 포트
  --help            도움말 표시 후 종료.

habu.nmap.open

.. code-block::

root@kitploit:~
Usage: habu.nmap.open [OPTIONS] SCANFILE

  nmap 보고서를 읽고 열린 포트를 출력합니다.

  생성된 nmap 출력을 읽어 열린 것으로 확인된 포트를 출력합니다.

  다른 도구의 입력을 위해 포트 목록을 빠르게 재사용하는 데 사용할 수 있습니다.

  3가지 출력 형식(nmap, gnmap, xml)을 지원하고 감지합니다.

  예:

  # habu.nmap.open portantier.nmap
  22,80,443

옵션:
  -p [tcp|udp|sctp]  프로토콜 (기본=tcp)
  --help             도움말 표시 후 종료.

habu.nmap.ports ---------------Usage: habu.nmap.ports [OPTIONS] SCANFILE

nmap 보고서를 읽고 테스트된 포트를 출력합니다.

생성된 nmap 출력을 읽어 테스트된 포트를 출력합니다.

다른 도구의 입력으로 포트 목록을 빠르게 재사용하는 데 사용할 수 있습니다.

세 가지 출력 형식(nmap, gnmap, xml)을 지원하고 자동으로 감지합니다.

예제:

habu.nmap.ports portantier.nmap

21,22,23,80,443

Options: -p [tcp|udp|sctp] 프로토콜 (기본값=tcp) --help 이 메시지를 보여주고 종료합니다.

habu.protoscan

.. code-block::

root@kitploit:~
Usage: habu.protoscan [OPTIONS] IP

  다양한 프로토콜 필드 값을 가진 IP 패킷을 전송하여 사용 가능한 레이어 4
  프로토콜을 추측합니다.

  출력은 'protocol-unreachable' ICMP 응답을 생성하지 않는 프로토콜을 보여줍니다.

  예제:

  $ sudo python cmd_ipscan.py 45.77.113.133
  1   icmp
  2   igmp
  4   ipencap
  6   tcp
  17  udp
  41  ipv6
  47  gre
  50  esp
  51  ah
  58  ipv6_icmp
  97  etherip
  112 vrrp
  115 l2tp
  132 sctp
  137 mpls_in_ip

Options:
  -i TEXT     사용할 인터페이스
  -t INTEGER  각 프로브 타임아웃 (기본값: 2초)
  --all       모든 프로토콜 프로브 (기본값: /etc/protocols에 정의됨)
  -v          상세 출력
  --help      이 메시지를 보여주고 종료합니다.

habu.server.ftp

.. code-block::

root@kitploit:~
Usage: habu.server.ftp [OPTIONS]

  사용자 자격 증명을 탈취하는 것을 유일한 목적으로 하는 기본 가짜 FTP 서버입니다.

  SSL/TLS를 지원합니다.

  예제:

  # sudo habu.server.ftp --ssl --ssl-cert /tmp/cert.pem --ssl-key /tmp/key.pem
  Listening on port 21
  Accepted connection from ('192.168.0.27', 56832)
  Credentials collected from 192.168.0.27! fabian 123456

Options:
  -a TEXT          바인딩할 주소 (기본값: all)
  -p INTEGER       사용할 포트 (기본값: 21)
  --ssl            SSL/TLS 활성화 (기본값: False)
  --ssl-cert TEXT  SSL/TLS 인증서 파일
  --ssl-key TEXT   SSL/TLS 키 파일
  -v               상세 모드
  --help           이 메시지를 보여주고 종료합니다.

habu.shodan

.. code-block::

root@kitploit:~
Usage: habu.shodan [OPTIONS] IP

  간단한 shodan API 클라이언트입니다.

  shodan 쿼리의 JSON 결과를 출력합니다.

  예제:

  $ habu.shodan 216.58.222.36
  asn                      AS15169
  isp                      Google
  hostnames                eze04s06-in-f4.1e100.net, gru09s17-in-f36.1e100.net
  country_code             US
  region_code              CA
  city                     Mountain View
  org                      Google
  open_ports               tcp/443, tcp/80

Options:
  --cache / --no-cache
  -v                            상세 출력
  --format [txt|csv|json|nmap]  출력 형식
  --help                        이 메시지를 보여주고 종료합니다.

habu.shodan.query

.. code-block::

root@kitploit:~
Usage: habu.shodan.query [OPTIONS] QUERY

  간단한 shodan API 클라이언트입니다.

  shodan 쿼리의 JSON 결과를 출력합니다.

  예제:

  $ habu.shodan 8.8.8.8
  {
      "hostnames": [
          "google-public-dns-a.google.com"
      ],
      "country_code": "US",
      "org": "Google",
      "data": [
          {
              "isp": "Google",
              "transport": "udp",
              "data": "Recursion: enabled",
              "asn": "AS15169",
              "port": 53,
              "hostnames": [
                  "google-public-dns-a.google.com"
              ]
          }
      ],
      "ports": [
          53
      ]
  }

Options:
  -c           캐시 비활성화
  -v           상세 출력
  -o FILENAME  출력 파일 (기본값: stdout)
  --help       이 메시지를 보여주고 종료합니다.

habu.tcp.flags

.. code-block::

root@kitploit:~
Usage: habu.tcp.flags [OPTIONS] IP

  다양한 플래그를 가진 TCP 패킷을 전송하고 어떤 응답을 받는지 알려줍니다.

  다양한 TCP/IP 스택 구현 및 구성이 플래그 조합에 어떻게 응답하는지 분석하는 데 사용할 수 있습니다.

  예제:

  # habu.tcp_flags www.portantier.com
  S  -> SA
  FS -> SA
  FA -> R
  SA -> R

  기본적으로 명령은 가능한 모든 플래그 조합을 전송합니다. '-f' 옵션을 사용하여
  항상 존재해야 하는 플래그를 지정할 수 있습니다(가능한 조합 수를 줄임).

  또한 '-r' 옵션을 사용하여 표시할 응답 패킷에 있어야 하는 플래그를 지정할 수 있습니다.

  다음 명령은 FIN(F) 플래그가 설정되고 RST(R) 플래그를 포함하는 응답을 생성하는
  모든 가능한 조합을 보여줍니다.

  예제:

  # habu.tcp_flags -f F -r R www.portantier.com
  FPA  -> R
  FSPA -> R
  FAU  -> R

Options:
  -p INTEGER  사용할 포트 (기본값: 80)
  -f TEXT     항상 전송해야 하는 플래그 (기본값: 모든 플래그로 퍼징)
  -r TEXT     응답 플래그로 필터링 (기본값: 모든 응답 표시)
  -v          상세 모드
  --first     조건에 맞는 첫 번째 응답에서 중지
  --help      이 메시지를 보여주고 종료합니다.

habu.tcp.isn

.. code-block::

root@kitploit:~
Usage: habu.tcp.isn [OPTIONS] IP

  TCP 연결을 생성하고 각 연결의 TCP 초기 시퀀스 번호를 출력합니다.

  $ sudo habu.tcp.isn -c 5 www.portantier.com
  1962287220
  1800895007
  589617930
  3393793979
  469428558

  참고: '-g' 옵션을 사용하여 무작위성을 더 잘 이해하기 위해 그래픽 표현
  (matplotlib 패키지 필요)을 얻을 수 있습니다.

Options:
  -p INTEGER  사용할 포트 (기본값: 80)
  -c INTEGER  보내고 받을 패킷 수 (기본값: 5)
  -i TEXT     사용할 인터페이스
  -g          그래프 표시 (matplotlib 필요)
  -v          상세 출력
  --help      이 메시지를 보여주고 종료합니다.

habu.tcp.scan

.. code-block::

root@kitploit:~
Usage: habu.tcp.scan [OPTIONS] IP

  TCP 포트 스캐너.

  SYN 플래그가 포함된 응답을 생성한 포트 또는 (-a 사용 시) 응답을 생성한 모든 포트를 출력합니다.

  nmap과 비교하면 정말 기본적이지만, 누가 비교하겠습니까?

  예제:

  # habu.tcp.scan -p 22,23,80,443 -s 1 45.77.113.133
  22 S -> SA
  80 S -> SA
  443 S -> SA

Options:
  -p TEXT     사용할 포트 (기본값: 80) 예: 20-23,80,135
  -i TEXT     사용할 인터페이스
  -f TEXT     사용할 플래그 (기본값: S)
  -s TEXT     프로브 간 시간 (기본값: 모두 함께 전송)
  -t INTEGER  각 프로브 타임아웃 (기본값: 2초)
  -a          모든 응답 표시 (기본값: SYN 플래그만 포함)
  -v          상세 출력
  --help      이 메시지를 보여주고 종료합니다.

habu.tcp.synflood

.. code-block::

root@kitploit:~
Usage: habu.tcp.synflood [OPTIONS] IP

  많은 TCP 연결을 시작하고 열린 상태로 유지합니다.

  일부 매우 오래된 시스템은 이로 인해 서비스 거부를 겪을 수 있습니다.

  참조: https://en.wikipedia.org/wiki/SYN_flood

  예제:

  # sudo habu.tcp.synflood 172.16.0.10
  .................

  각 점은 전송된 패킷입니다.

  '-2' 및 '-3' 옵션을 사용하여 레이어 2/3 주소를 위조할 수 있습니다.

  사용하면 각 연결이 무작위 레이어2(MAC) 및/또는 레이어3(IP) 주소에서 전송됩니다.

  '-c' 옵션으로 생성할 연결 수를 선택할 수 있습니다. 기본값은 연결 생성을 중단하지 않는 것입니다.

  참고: 실제 IP 주소에서 패킷을 전송하고 연결을 반열림 상태로 유지하려면
  방화벽이 RST 패킷을 보내지 않도록 설정해야 합니다.

Options:
  -i TEXT     사용할 인터페이스 (기본값: auto)
  -c INTEGER  전송할 패킷 수 (기본값: 무한)
  -p INTEGER  사용할 포트 (기본값: 135)
  -2          레이어2/MAC 주소 위조 (기본값: 아니오)
  -3          레이어3/IP 주소 위조 (기본값: 아니오)
  -v          상세 모드
  --help      이 메시지를 보여주고 종료합니다.

habu.traceroute

.. code-block::

root@kitploit:~
Usage: habu.traceroute [OPTIONS] IP

  TCP traceroute.

  ttl-zero-during-transit 메시지를 받아 대상까지의 경로를 식별합니다.

  참고: 인터넷에서는 장치까지 여러 유효한 경로가 있을 수 있습니다.

  예제:

  # habu.traceroute 45.77.113.133
  IP / ICMP 192.168.0.1 > 192.168.0.5 time-exceeded ttl-zero-during-transit / IPerror / TCPerror
  IP / ICMP 10.242.4.197 > 192.168.0.5 time-exceeded ttl-zero-during-transit / IPerror / TCPerror / Padding
  IP / ICMP 200.32.127.98 > 192.168.0.5 time-exceeded ttl-zero-during-transit / IPerror / TCPerror / Padding
  .
  IP / ICMP 4.16.180.190 > 192.168.0.5 time-exceeded ttl-zero-during-transit / IPerror / TCPerror
  .
  IP / TCP 45.77.113.133:http > 192.168.0.5:ftp_data SA / Padding

  참고: 원격 시스템에서 열려 있는 포트를 사용하는 것이 좋습니다.

Options:
  -p INTEGER  사용할 포트 (기본값: 80)
  -i TEXT     사용할 인터페이스
  --help      이 메시지를 보여주고 종료합니다.

habu.upgrade

.. code-block::

root@kitploit:~
Usage: habu.upgrade [OPTIONS]

  habu 업그레이드 (https://github.com/fportantier/habu에서)

Options:
  --help  이 메시지를 보여주고 종료합니다.

habu.usercheck

.. code-block::

root@kitploit:~
Usage: habu.usercheck [OPTIONS] USERNAME

  주어진 사용자 이름이 다양한 소셜 네트워크 및 기타 인기 사이트에 존재하는지 확인합니다.

  $ habu.usercheck portantier
  {
      "aboutme": "https://about.me/portantier",
      "disqus": "https://disqus.com/by/portantier/",
      "github": "https://github.com/portantier/",
      "ifttt": "https://ifttt.com/p/portantier",
      "lastfm": "https://www.last.fm/user/portantier",
      "medium": "https://medium.com/@portantier",
      "pastebin": "https://pastebin.com/u/portantier",
      "pinterest": "https://in.pinterest.com/portantier/",
      "twitter": "https://twitter.com/portantier",
      "vimeo": "https://vimeo.com/portantier"
  }

Options:
  -c      캐시 비활성화
  -v      상세 출력
  -w      각 유효한 URL을 웹 브라우저에서 열기
  --help  이 메시지를 보여주고 종료합니다.

habu.version

.. code-block::

root@kitploit:~
Usage: habu.version [OPTIONS]

Options:
  --help  이 메시지를 보여주고 종료합니다.

habu.vhosts

.. code-block::

root@kitploit:~
Usage: habu.vhosts [OPTIONS] HOST

  Bing을 사용하여 동일한 IP 주소에 호스팅된 웹사이트를 쿼리합니다.

  $ habu.vhosts www.telefonica.com
  www.telefonica.com -> 212.170.36.79
  [
      'www.telefonica.es',
      'universitas.telefonica.com',
      'www.telefonica.com',
  ]

Options:
  -c          캐시 비활성화
  -p INTEGER  페이지 수 (기본값: 10)
  -f INTEGER  가져올 첫 번째 결과 (기본값: 1)
  --help      이 메시지를 보여주고 종료합니다.

habu.virustotal

.. code-block::

root@kitploit:~
Usage: habu.virustotal [OPTIONS] INPUT

  파일을 VirusTotal https://www.virustotal.com/에 보내고 JSON 형식의 보고서를 출력합니다.

  참고: 파일을 보내기 전에 해당 파일이 이전에 분석되었는지 확인합니다(파일의 sha256 전송).
  보고서가 존재하면 제출되지 않고 마지막 보고서가 표시됩니다.

  $ habu.virustotal meterpreter.exe
  Verifying if hash already submitted: f4826b219aed3ffdaa23db26cfae611979bf215984fc71a1c12f6397900cb70d
  Sending file for analysis
  Waiting/retrieving the report...
  {
      "md5": "0ddb015b5328eb4d0cc2b87c39c49686",
      "permalink": "https://www.virustotal.com/file/c9a2252b491641e15753a4d0c4bb30b1f9bd26ecff2c74f20a3c7890f3a1ea23/analysis/1526850717/",
      "positives": 49,
      "resource": "c9a2252b491641e15753a4d0c4bb30b1f9bd26ecff2c74f20a3c7890f3a1ea23",
      "response_code": 1,
      "scan_date": "2018-05-20 21:11:57",
      "scan_id": "c9a2252b491641e15753a4d0c4bb30b1f9bd26ecff2c74f20a3c7890f3a1ea23-1526850717",
      "scans": {
          "ALYac": {
              "detected": true,
              "result": "Trojan.CryptZ.Gen",
              "update": "20180520",
              "version": "1.1.1.5"
          },
          ... 기타 스캐너 ...
      },
      "sha1": "5fa33cab1729480dd023b08f7b91a945c16d0a9e",
      "sha256": "c9a2252b491641e15753a4d0c4bb30b1f9bd26ecff2c74f20a3c7890f3a1ea23",
      "total": 67,
      "verbose_msg": "Scan finished, information embedded"
  }

Options:
  -v      상세 출력
  --help  이 메시지를 보여주고 종료합니다.

habu.web.report

.. code-block::

root@kitploit:~
Usage: habu.web.report [OPTIONS] [INPUT_FILE]

  웹사이트의 HTTP 헤더를 포함하는 보고서를 생성합니다.

  선택적으로 Firefox 또는 Chromium을 사용하여 웹사이트의 스크린샷을 찍습니다.

  예상 형식은 한 줄에 하나의 URL입니다.

  'report'라는 디렉터리를 만들고 그 안에 내용을 저장합니다.

  $ echo https://www.portantier.com | habu.web.report

Options:
  -v                             상세 출력
  -s                             각 웹사이트에 대해 스크린샷 찍기
  -b [firefox|chromium-browser]  스크린샷에 사용할 브라우저.
  --help                         이 메시지를 보여주고 종료합니다.

habu.web.screenshot

.. code-block::

root@kitploit:~
Usage: habu.web.screenshot [OPTIONS] URL

  Firefox 또는 Chromium을 사용하여 웹사이트의 스크린샷을 찍습니다.

  $ habu.web.screenshot https://www.portantier.com

Options:
  -b [firefox|chromium-browser]  스크린샷에 사용할 브라우저.
  -o TEXT                        출력 파일. (기본값: screenshot.png)
  --help                         이 메시지를 보여주고 종료합니다.

habu.whois.domain

.. code-block::

root@kitploit:~
Usage: habu.whois.domain [OPTIONS] DOMAIN

  도메인 이름을 확인하는 간단한 whois 클라이언트입니다.

  예제:

  $ habu.whois.domain google.com
  registrar                MarkMonitor, Inc.
  whois_server             whois.markmonitor.com
  creation_date            1997-09-15 04:00:00
  expiration_date          2028-09-14 04:00:00
  name_servers             ns1.google.com, ns2.google.com, ns3.google.com, ns4.google.com
  emails                   [email protected], [email protected]
  dnssec                   unsigned
  org                      Google LLC
  country                  US
  state                    CA

Options:
  --json  JSON 형식으로 출력
  --csv   CSV 형식으로 출력
  --help  이 메시지를 보여주고 종료합니다.

habu.whois.ip

.. code-block::

root@kitploit:~
Usage: habu.whois.ip [OPTIONS] IP

  IP 주소(IPv4 및 IPv6)를 확인하는 간단한 whois 클라이언트입니다.

  예제:

  $ habu.whois.ip 8.8.4.4
  asn                      15169
  asn_registry             arin
  asn_cidr                 8.8.4.0/24
  asn_country_code         US
  asn_description          GOOGLE - Google LLC, US
  asn_date                 1992-12-01

Options:
  --json  JSON 형식으로 출력
  --csv   CSV 형식으로 출력
  --help  이 메시지를 보여주고 종료합니다.
도구 다운로드
  • crypto.fernet <#habucryptofernet>_
  • crypto.fernet.genkey <#habucryptofernetgenkey>_
  • crypto.gppref <#habucryptogppref>_
  • crypto.hasher <#habucryptohasher>_
  • crypto.xor <#habucryptoxor>_
  • data.enrich <#habudataenrich>_
  • data.extract.domain <#habudataextractdomain>_
  • data.extract.email <#habudataextractemail>_
  • data.extract.fqdn <#habudataextractfqdn>_
  • data.extract.ipv4 <#habudataextractipv4>_
  • data.filter <#habudatafilter>_
  • data.select <#habudataselect>_
  • dhcp.discover <#habudhcpdiscover>_
  • dhcp.starvation <#habudhcpstarvation>_
  • dns.lookup.forward <#habudnslookupforward>_
  • dns.lookup.reverse <#habudnslookupreverse>_
  • eicar <#habueicar>_
  • forkbomb <#habuforkbomb>_
  • fqdn.finder <#habufqdnfinder>_
  • gateway.find <#habugatewayfind>_
  • host <#habuhost>_
  • http.headers <#habuhttpheaders>_
  • http.options <#habuhttpoptions>_
  • http.tech <#habuhttptech>_
  • icmp.ping <#habuicmpping>_
  • ip.asn <#habuipasn>_
  • ip.geolocation <#habuipgeolocation>_
  • ip.internal <#habuipinternal>_
  • ip.public <#habuippublic>_
  • karma <#habukarma>_
  • karma.bulk <#habukarmabulk>_
  • land <#habuland>_
  • nc <#habunc>_
  • net.contest <#habunetcontest>_
  • net.interfaces <#habunetinterfaces>_
  • nmap.excluded <#habunmapexcluded>_
  • nmap.open <#habunmapopen>_
  • nmap.ports <#habunmapports>_
  • protoscan <#habuprotoscan>_
  • server.ftp <#habuserverftp>_
  • shodan <#habushodan>_
  • shodan.query <#habushodanquery>_
  • tcp.flags <#habutcpflags>_
  • tcp.isn <#habutcpisn>_
  • tcp.scan <#habutcpscan>_
  • tcp.synflood <#habutcpsynflood>_
  • traceroute <#habutraceroute>_
  • upgrade <#habuupgrade>_
  • usercheck <#habuusercheck>_
  • version <#habuversion>_
  • vhosts <#habuvhosts>_
  • virustotal <#habuvirustotal>_
  • web.report <#habuwebreport>_
  • web.screenshot <#habuwebscreenshot>_
  • whois.domain <#habuwhoisdomain>_
  • whois.ip <#habuwhoisip>_