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

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

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

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

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
GyoiThon — GyoiThon は、機械学習を使用した成長中の侵入テストツールです。 | Kitploit
ツール/GitHubGitHub/gyoisamurai/gyoithon
偵察脆弱性スキャナーエクスプロイトフレームワーク情報収集ウェブセキュリティペネトレーションテスト機械学習サブドメイン列挙
GitHubgyoisamurai/gyoithon

GyoiThon

GyoiThon は、機械学習を使用した成長中の侵入テストツールです。

リポジトリを見る
826303685年前Kitploit レビュー済み

人気

すべて見る →

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

すべてのツールを探索

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

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

GyoiThon: 次世代ペネトレーションテストツール

Black Hat ASIA Arsenal 2018 Black Hat ASIA Arsenal 2019

日本語ページはこちら。

プレゼンテーション

  • 2018年1月25日:JANOG41
  • 2018年3月23日:Black Hat ASIA 2018 Arsenal
  • 2018年8月12日:DEFCON26 DemoLabs
  • 2018年10月24日:OWS in CSS2018
  • 2018年11月3日:AV TOKYO 2018 HIVE
  • 2018年12月22日~23日:SECCON YOROZU 2018
  • 2019年3月28日:Black Hat ASIA 2019 Arsenal

ドキュメント

  • インストール
  • 使用方法
  • Tips
  • デモ動画 (YouTube)

Slack

  • https://gyoithon.slack.com
    GyoiThon Slackに参加しましょう!!

新機能!!

新しいGyoiThon(バージョン0.0.4)は、インターネット上に公開されているサブドメインを一覧表示できます。また、そのサブドメインがWebサービスとして公開されている場合、GyoiThonは非破壊的な脆弱性評価であるヘルスチェックを実行します。

注意
新機能はGoogleカスタム検索APIを使用します。そのため、新機能を使用する場合は、Googleカスタム検索のAPIキーを用意する必要があります。
  • 例)サブドメインの一覧表示。
    まず、次のようなdomain_list.csvを用意する必要があります: ``` "Domain Name" mbsd.jp
そして、次のコマンドを実行します。 ```
root@kali:~/GyoiThon# python3 gyoithon.py -i --domain_list

その結果、指定されたドメインに関連するサブドメインのリストが得られます。

番号ドメインサブドメインIPアドレスアクセス状態 (http)ロケーション (http)アクセス状態 (https)ロケーション (https)Whoisレコード
1mbsd.jpmbsd.jp['40.115.251.148']301https://www.mbsd.jp/301https://www.mbsd.jp/***
2mbsd.jpwww.mbsd.jp['40.115.251.148']301https://www.mbsd.jp/200--
3mbsd.jpwww2.mbsd.jp['40.115.251.148']301https://www.mbsd.jp/200--
  • 例) サブドメインをリストアップし、ヘルスチェックを実行します。
    GyoiThonは、サブドメインのリストアップを実行し、そのサブドメインがWebサービスとして公開されている場合(ポート80または443が開放されている場合)、非破壊的な脆弱性評価であるヘルスチェックを実行します。``` root@kali:~/GyoiThon# python3 gyoithon.py -i --domain_list --through_health_check --safety
|インデックス|ドメイン|サブドメイン|IPアドレス|アクセス状態(http)|ロケーション(http)|アクセス状態(https)|ロケーション(https)|Whoisレコード|評価結果|
|:--:|:--:|:--:|:--:|:--:|:--:|:--:|:--:|:--:|:--:|
|1|mbsd.jp|mbsd.jp|['40.115.251.148']|301|https://www.mbsd.jp/|301|https://www.mbsd.jp/|***|***|
|2|mbsd.jp|www.mbsd.jp|['40.115.251.148']|301|https://www.mbsd.jp/|200|-|-|***|
|3|mbsd.jp|www2.mbsd.jp|['40.115.251.148']|301|https://www.mbsd.jp/|200|-|-|***|

## 概要
GyoiThonはWebサーバの**インテリジェンス収集ツール**です。  

GyoiThonは対象のWebサーバに**リモートアクセス**し、CMS、Webサーバソフトウェア、フレームワーク、プログラミング言語などの**サーバ上で稼働している製品を特定**します。そして、Metasploitを使用して特定した製品に対して**エクスプロイトモジュールを実行**できます。GyoiThonは上記のアクションを**完全自動で実行**します。  

GyoiThonの主な機能は以下の通りです。  

 * リモートアクセス/完全自動  
 GyoiThonは、**リモートアクセス**のみを使用して対象Webサーバの情報を**完全自動で**収集できます。操作のためにGyoiThonを一度実行するだけで済みます。  

 * 非破壊テスト  
 GyoiThonは、**通常のアクセスのみ**を使用して対象Webサーバの情報を収集できます。  
 ただし、一部のオプションを使用すると、GyoiThonはエクスプロイトモジュールの送信などの異常なアクセスを実行します。  

 * 多様な情報の収集  
 GyoiThonには、Webクローラー、Google Custom Search API、Censys、デフォルトコンテンツの探索、クラウドサービスの調査など、さまざまなインテリジェンス収集エンジンがあります。収集した情報を**文字列パターンマッチング**と**機械学習**を用いて分析することで、GyoiThonは対象Webサーバで稼働している**製品/バージョン/CVE番号**、**不要なHTMLコメント**/**デバッグメッセージ**、**ログインページ**などを特定できます。  

 * 実際の脆弱性の調査  
 GyoiThonはMetasploitを使用して特定された製品に対してエクスプロイトモジュールを実行できます。  
 その結果、**対象Webサーバの実際の脆弱性を調査**できます。  

![Overview](https://raw.githubusercontent.com/gyoisamurai/GyoiThon/master/img/overview.png)

| 注意 |
|:-----|
| ご興味があれば、**ご自身の管理下の環境で自己責任でご利用ください**。 |

## <a name='Installation'>インストール</a>
1. GyoiThonのリポジトリをgit cloneします。```
root@kali:~# git clone https://github.com/gyoisamurai/GyoiThon.git
  1. python3-pip をインストールしてください。``` root@kali:# apt-get update root@kali:# apt-get install python3-pip
3. 必要なPythonパッケージをインストールしてください。```
root@kali:~# cd GyoiThon
root@kali:~/GyoiThon# pip3 install -r requirements.txt
root@kali:~/GyoiThon# apt install python3-tk
  1. GyoiThonのconfig.iniを編集してください。
    自分の config.ini を編集する必要があります。
    詳細は使い方を参照してください。

使い方

オプションなしのデフォルトモードや、複数のオプションの組み合わせを使用することで、GyoiThonは対象Webサーバの様々な情報を収集できます。``` usage: .\gyoithon.py [-s] [-m] [-g] [-e] [-c] [-p] [-l --log_path=] [--no-update-vulndb] .\gyoithon.py [-d --category= --vendor= --package=] .\gyoithon.py [-i] .\gyoithon.py -h | --help options: -s Optional : Examine cloud service. -m Optional : Analyze HTTP response for identify product/version using Machine Learning. -g Optional : Google Custom Search for identify product/version. -e Optional : Explore default path of product. -c Optional : Discover open ports and wrong ssl server certification using Censys. -p Optional : Execute exploit module using Metasploit. -l Optional : Analyze log based HTTP response for identify product/version. -d Optional : Development of signature and train data. -i Optional : Explore relevant FQDN with the target FQDN. -h --help Show this help message and exit.

### 準備.
1. 対象ファイル `host.txt` を編集します。
`host.txt` に対象のWebサーバーを記述する必要があります。
記述形式は `protocol FQDN(またはIPアドレス) Port Crawling_root_path` です。

* 例.```
https gyoithon.example.com 443 /

複数のターゲット情報を指定したい場合は、以下に記述する必要があります。``` https gyoithon.example.com 443 / http 192.168.220.129 80 /vicnum/ https www.example.com 443 /catalog/

| 注意 |
|:-----|
| ルートパスの先頭と末尾に`/`を挿入します。 |

2. 設定ファイル`config.ini`を編集します。  
ユーザーが変更するパラメータは設定ファイル`config.ini`に定義されています。  
パラメータを変更する場合は、`config.ini`を編集してください。  
`config.ini`の詳細は[こちら](https://github.com/gyoisamurai/GyoiThon/wiki/Configure)です。  

### GyoiThonの実行。  
#### <a name='default_mode'>1. デフォルトモード。</a>```
root@kali:~/GyoiThon# python3 gyoithon.py

デフォルトモードでは、以下の最小限の情報を収集します。

  1. WebクローリングによるHTTPレスポンスの収集。
  2. 文字列パターンマッチングによる製品/バージョンの特定。
  3. 特定された製品に対するCVE番号(NVDから)の調査。
  4. 不要なHTML/JavaScriptコメントの調査。
  5. 不要なデバッグメッセージの調査。
  6. ログインページの調査。
  • クローリング設定
    GyoiThonはPythonライブラリのScrapyを使用しています。
    config.iniのパラメータを変更することで、Scrapyの設定を変更できます。
カテゴリパラメータ説明
Spiderdepth_limitクローリングの最大深度。デフォルト値は2層です。
delay_timeクローリングの遅延時間。デフォルト値は3(秒)です。
time_outスパイダー終了オプション。クローリングのタイムアウト。デフォルト値は600(秒)です。
item_countスパイダー終了オプション。最大アイテム数。デフォルト値は300です。
page_countスパイダー終了オプション。1ページあたりの最大アイテム数。デフォルト値は0(制限なし)です。
error_countスパイダー終了オプション。最大エラー数。デフォルト値は0(制限なし)です。
  • 検査速度設定
    検査数とHTTPレスポンスサイズは検査時間に大きく影響します。
    config.iniのパラメータを変更することで、検査速度を調整できます。
カテゴリパラメータ説明
共通max_target_url最大検査URL数。Webクローリングで収集したURL数がこのパラメータ値を超えた場合、超過分は破棄されます。デフォルト値は100です。0は無制限です。
max_target_byte最大検査レスポンスサイズ。レスポンスサイズがこのパラメータ値を超えた場合、超過分は破棄されます。デフォルト値は10000バイトです。0は無制限です。
scrambleWebクローリングで収集したURLリストをランダムに並び替えます。デフォルト値は1(有効)です。0は無効です。
注意
検査速度と精度はトレードオフの関係にあります。

2. クラウドサービスモードの検査。```

root@kali:~/GyoiThon# python3 gyoithon.py -s

`-s` オプションを追加することで、GyoiThon はデフォルトモードに加えて、対象の Web サーバーがクラウドサービスを使用しているかどうかを識別します。  
実行前に、`config.ini` の以下のパラメータを変更する必要があります。
ツールをダウンロード