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

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

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

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

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
smbeagle — SMBeagle - ファイル共有監査ツール | Kitploit
ツール/GitHubGitHub/punk-security/smbeagle
特権昇格脆弱性分析横移動情報収集ネットワークセキュリティペネトレーションテストレッドチーミング
GitHubpunk-security/smbeagle

smbeagle

SMBeagle - ファイル共有監査ツール

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

人気

すべて見る →

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

すべてのツールを探索

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

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

Maintenance Maintaner Docker Pulls Lines of Code Bugs Vulnerabilities

root@kitploit:~
    ____              __   _____                      _ __       
   / __ \__  ______  / /__/ ___/___  _______  _______(_) /___  __
  / /_/ / / / / __ \/ //_/\__ \/ _ \/ ___/ / / / ___/ / __/ / / /
 / ____/ /_/ / / / / ,<  ___/ /  __/ /__/ /_/ / /  / / /_/ /_/ / 
/_/    \__,_/_/ /_/_/|_|/____/\___/\___/\__,_/_/  /_/\__/\__, /  
                        PRESENTS                        /____/   

SMBeagle

SMBeagleは、クロスプラットフォームの(SMB)ファイル共有監査ツールで、ネットワーク上で見えるすべてのファイルを精査し、そのファイルが読み取り可能か書き込み可能かを報告します。これらの発見結果はすべて、CSVファイルまたはelasticsearchホスト、あるいはその両方にストリーミング出力されます!🚀

Windows上で実行時、資格情報を指定しない場合、SMBeagleは最大速度と統合認証のためにwin32 APIを利用します。

Linux上で実行時、または資格情報が指定された場合、クロスプラットフォームのファイルスキャンをSMBLibraryを通じて使用します。

デジタル署名なし

SMBeagle v3まではデジタル署名されていましたが、v4ではより攻撃的な機能が追加されています。具体的には、興味深そうなファイルを探して取得するようになります。ペネトレーションテストには最適ですが、デジタル署名するものではありません!

元のバージョン(ファイル取得機能なし)が必要な場合は、デジタル署名されたv3を使用してください。

2つの素晴らしいユースケースがあります:

弱い共有権限にスポットライトを当てる

大小を問わず、多くの企業はファイル共有にひどいファイル権限を設定しています。

大企業ではファイルサーバーに広大な共有があり、設定ミスのある機密データが見つかることは珍しくありません。

中小企業では、オフィスの隅に制限なしの小さなNASがあることもしばしばです!

SMBeagleはこれらの共有をクロールし、読み取りおよび書き込み可能なすべてのファイルをリストアップします。読み取り可能なら、ランサムウェアも読み取り可能です。

ラテラルムーブメントと権限昇格

SMBeagleは、ペネトレーションテスターに、権限昇格や横方向移動のためのあまり明白でない経路を提供できます。

elasticsearchに直接出力することで、テスターは読み取り可能なスクリプトや書き込み可能な実行ファイルを迅速に見つけることができます。

ウォーターホール攻撃や保護されていないパスワードの発見がこんなに簡単になったことはありません!🐱‍👤

さらに簡単にするために、-gフラグを追加しました。これにより、興味深いと思われるファイルを自動的に取得するようになりました!

何が興味深いと思うか?デフォルトでは、スクリプトや「password」などの単語を含むファイル名を探します。

...独自の正規表現は --file-pattern フラグで指定できます。

Kibana Dashboard

Kibanaダッシュボードのインストールと使用に関する詳細な手順は、Kibana readmeを参照してください。管理用のビジュアルを提供し、データのピボットを容易にします。

インストール

Docker

  • docker pull punksecurity/smbeagle

Linux

  • 最新リリース https://github.com/punk-security/smbeagle/releases/latest にアクセス
  • linux_amd64.zip または linux_arm64.zip をダウンロード
  • ダウンロードしたzipを解凍し、ターミナルから smbeagle を実行

Windows

  • 最新リリース https://github.com/punk-security/smbeagle/releases/latest にアクセス
  • win_x64.zip をダウンロード(現在は64ビットのみサポート)
  • ダウンロードしたzipを解凍し、コマンドプロンプトまたはPowerShellターミナルから SMBeagle.exe を実行

使用方法

必須パラメータは出力先の設定のみで、それはelasticsearchホストのIPアドレスかCSVファイルのいずれかです。

良い出発点は、高速モードを有効にしてCSVに出力することですが、見つかるファイルの数によってはこのCSVが巨大になる可能性があります。

root@kitploit:~
./SMBeagle.exe -c out.csv -f

公開IPスキャン

発見した公開ホストやネットワークのスキャンはデフォルトで無効になっています。SMBeagleはnetstatからネットワークを発見するため、Webブラウザセッションなど現在のすべての接続が含まれます。

公開ネットワークをスキャンするには、手動で -n 1.0.0.1/32 や -n 1.0.0.0/24 のように宣言してください。

Dockerの使用

Punk SecurityはSMBeagleのLinux Dockerイメージを提供しています。

結果を取り出すには、フォルダをコンテナにマウントし、SMBeagleにそのマウント先に出力を保存するよう指示する必要があります(またはelasticsearchを使用)。

良いスターター例は次の通りです:

docker run -v "$(pwd)/output:/tmp/output" punksecurity/smbeagle -c /tmp/output/results.csv -n 10.10.10.0/24

Dockerで実行する場合、ネットワークディスカバリーは無効になるため、スキャンしたい範囲を -n コマンドラインスイッチで指定するか、-h スイッチでホストを指定してください。

全使用法

root@kitploit:~
USAGE:
Output to a CSV file:
  SMBeagle -c out.csv
Output to elasticsearch (Preferred):
  SMBeagle -e 127.0.0.1
Output to elasticsearch and CSV:
  SMBeagle -c out.csv -e 127.0.0.1
Disable network discovery and provide manual networks:
  SMBeagle -D -e 127.0.0.1 -n 192.168.12.0./23 192.168.15.0/24
Do not enumerate ACLs (FASTER):
  SMBeagle -A -e 127.0.0.1

  -c, --csv-file                     (Group: output) Output results to a CSV
                                     file by providing filepath
  -e, --elasticsearch-host           (Group: output) Output results to
                                     elasticsearch by providing elasticsearch
                                     hostname (default port is 9200 , but can be
                                     overridden)
  -a, --aggression                   (Default: 6) Vary scanning speed in a range
                                     between 1 and 10. 10 being fastest [No
                                     decimals]
  --elasticsearch-port               (Default: 9200) Define the elasticsearch
                                     custom port if required
  -f, --fast                         Enumerate only one files permissions per
                                     directory
  -l, --scan-local-shares            Scan the local shares on this machine
  -D, --disable-network-discovery    Disable network discovery
  -n, --network                      Manually add network to scan (multiple
                                     accepted)
  -N, --exclude-network              Exclude a network from scanning (multiple
                                     accepted)
  -h, --host                         Manually add host to scan
  -H, --exclude-host                 Exclude a host from scanning
  -q, --quiet                        Disable unneccessary output
  -S, --exclude-share                Do not scan shares with this name (multiple
                                     accepted)
  -s, --share                        Only scan shares with this name (multiple
                                     accepted)
  --file-pattern                     Only fetch files matching these regexes
                                     patterns
  -g, --grab-files                   Grab files and store them locally
  --loot                             (Default: loot) Path to store grabbed files
  -E, --exclude-hidden-shares        Exclude shares ending in $
  -v, --verbose                      Give more output
  -m, --max-network-cidr-size        (Default: 20) Maximum network size to scan
                                     for SMB Hosts
  -A, --dont-enumerate-acls          (Default: false) Skip enumeration of file
                                     ACLs
  -d, --domain                       (Default: ) Domain for connecting to SMB
  -u, --username                     Username for connecting to SMB - mandatory
                                     on linux
  -p, --password                     Password for connecting to SMB - mandatory
                                     on linux
  --help                             Display this help screen.
  --version                          Display version information.

アーキテクチャ

SMBeagleは多くの処理を行いますが、疎結合のモジュールに分割され、互いに引き渡されます。これにより設計がシンプルになり、各モジュールを簡単に拡張できます。

要約すると、以下のことを行います:

  • ローカルマシンのネットワーク接続とアダプタを確認
  • それらすべてのプライベートアダプタと接続を取得し、プライベートネットワーク候補のリストを構築
  • それらのネットワークをTCPポート445でスキャン
  • 検出されたすべてのSMBサーバーのアクセス可能な共有をスキャン
  • それらすべての共有のファイルをインベントリし、読み取り、書き込み、削除の権限をチェック

Schematic

ツールをダウンロード