Skip to content
KitploitKITPLOIT
ツールブログ
提出
ツールブログ
提出

ハッキング、侵入テスト、サイバーセキュリティツールをあなたのセキュリティアーセナルに!

Kitploitはハッキング、サイバーセキュリティ、ペネトレーションテストのツールディレクトリです。最新のプロジェクトアップデートを見つけて、脆弱性の発見、システム分析、テストの自動化、セキュリティの強化を行いましょう。

··フィード·お問い合わせ·プライバシー·© 2026 Kitploit

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
habu — ハッキングツールキット | Kitploit
ツール/GitHubGitHub/fportantier/habu
OSINT (オープンソースインテリジェンス)情報収集ウェブセキュリティネットワークセキュリティ暗号化ペネトレーションテスト学習と教育DNS分析
GitHubfportantier/habu

habu

ハッキングツールキット

リポジトリを見る
9831637ヶ月前Kitploit レビュー済み

人気

すべて見る →

コミュニティで最も使われているツールを見つけましょう。

すべてのツールを探索

ツールコレクションを閲覧

すべてのツールを見る →
共有

Habu ハッキングツールキット

私は Habu を開発しています。これは Python とネットワークハッキングの概念を教え(そして学ぶ)ためのものです。

現在のバージョンで実装されているテクニックは以下のとおりです:

  • ARPポイズニングとスニッフィング
  • DHCPディスカバーとスターベーション
  • サブドメイン識別
  • 証明書クローニング
  • TCP分析(ISN、フラグ)
  • ソーシャルネットワーク上のユーザー名チェック
  • Webテクノロジー識別
  • その他多数!

このソフトウェアの開発は、Securetia SRL (https://www.securetia.com/) によってサポートされています。

Habu を使ったハッキング

様々な便利な使用シナリオは https://fportantier.github.io/hacking-with-habu/ に詳しく記載されています。

使用方法の動画

次のYouTubeプレイリストには、インストールと使用方法を示す動画があります:

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

Telegram グループ

Habu の機能や改善点などについて議論したい場合は、Habu Telegram グループ (https://t.me/python_habu) をご利用ください。

貢献

問題やプルリクエストは GitHub リポジトリ (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 使用するインターフェース -v 詳細出力 --help このメッセージを表示して終了

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 使用するインターフェース -v 詳細 --help このメッセージを表示して終了

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 使用するインターフェース --help このメッセージを表示して終了

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 新しい鍵ペアの生成を強制 -r 公開鍵を失効させる -v 詳細出力 --help このメッセージを表示して終了

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 エンコードではなくデコード --help このメッセージを表示して終了

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 証明書拡張をコピー(デフォルト: False) --expired 期限切れの証明書を生成(デフォルト: False) -v 詳細 --help このメッセージを表示して終了

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 キャッシュを無効にする -n DNS サブドメイン検証を無効にする -v 詳細出力 --json 出力を JSON 形式で表示 --help このメッセージを表示して終了

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 接続先ポート(カンマ区切りリスト) -i FILENAME 入力ファイル(デフォルト: 標準入力) -t FLOAT 各接続の待機時間(秒) -v 詳細出力 --json 出力を JSON 形式で表示 --help このメッセージを表示して終了

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 このメッセージを表示して終了

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 このメッセージを表示して終了

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 キー値も表示 --option TEXT... 設定に書き込む(KEY VALUE) --help このメッセージを表示して終了

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 このメッセージを表示して終了

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 使用するポート -c TEXT コミュニティ(デフォルト: 最も使用されるもののリスト) -s 最初の一致で停止 -v 詳細 --help このメッセージを表示して終了

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 鍵 -d 暗号化ではなく復号化 --ttl INTEGER タイムスタンプ検証の有効時間(TTL) -i FILENAME 入力ファイル(デフォルト: 標準入力) -o FILENAME 出力ファイル(デフォルト: 標準出力) --help このメッセージを表示して終了

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 この鍵を ~/.habu.json に書き込む --help このメッセージを表示して終了

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 このメッセージを表示して終了

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] このアルゴリズムのみ(デフォルト: すべて) --help このメッセージを表示して終了

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 暗号化鍵 -i FILENAME 入力ファイル(デフォルト: 標準入力) -o FILENAME 出力ファイル(デフォルト: 標準出力) --help このメッセージを表示して終了

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 入力ファイル(デフォルト: 標準入力) -v 詳細出力 --help このメッセージを表示して終了

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 ドメインに NS サーバーが定義されているか確認 -v 詳細出力 -j JSON 出力 --help このメッセージを表示して終了

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 詳細出力 -j JSON 出力 --help このメッセージを表示して終了

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 ホスト名が解決されるか確認 -v 詳細出力 -j JSON 出力 --help このメッセージを表示して終了

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:       値がTrue
  false:      値が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

  Webサーバーの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

  Webサーバーの利用可能な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データベースを使用して、Webアプリケーションで使用されている技術を特定します。

  参考: https://github.com/AliasIO/Wappalyzer

  注意: このツールは1つのリクエストのみ送信するため、ステルス性が高く疑われません。

  $ 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

  クラシックなpingツールでICMPエコー要求を送信します。

  # 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                      改行シーケンスに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出力を読み取り、テストされたポートを表示します。

他のツールへの入力としてポートリストを迅速に再利用するために使用できます。

3つの出力形式(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          バインドするアドレス(デフォルト:全て)
  -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     使用するインターフェース(デフォルト:自動)
  -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がゼロになったメッセージを取得して、宛先への経路を特定します。

  注意:インターネット上では、デバイスへの有効な経路が複数存在する可能性があります。

  例:

  # 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"
          },
          ... The other scanners ...
      },
      "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を使用してウェブサイトのスクリーンショットを取得します。

  入力形式は1行に1つの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>_