Skip to content
KitploitKITPLOIT
ツールエクスプロイトブログ
Log in
提出
ツールエクスプロイトブログ
提出

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

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

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

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
SCMKit — ソースコード管理攻撃ツールキット | Kitploit
ツール/GitHubGitHub/h4wkst3r/scmkit
特権昇格偵察永続化メカニズムペネトレーションテストレッドチーミング
GitHubh4wkst3r/scmkit

SCMKit

ソースコード管理攻撃ツールキット

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

人気

すべて見る →

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

すべてのツールを探索

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

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

SCMKit

説明

Source Code Management Attack Toolkit - SCMKit は、SCMシステムを攻撃するために使用できるツールキットです。SCMKit では、使用するSCMシステムと攻撃モジュールを指定し、該当するSCMシステムへの有効な認証情報(ユーザー名/パスワードまたはAPIキー)を指定できます。現在、SCMKit がサポートしているSCMシステムは、GitHub Enterprise、GitLab Enterprise、Bitbucket Server です。サポートされている攻撃モジュールには、偵察、権限昇格、永続化が含まれます。SCMKit はモジュール式で構築されているため、今後情報セキュリティコミュニティによって新しいモジュールやSCMシステムを追加できます。

リリース

  • SCMKit のバージョン 1.2 はリリースにあります。

目次

  • SCMKit
  • 目次
  • インストール/ビルド
    • 使用ライブラリ
    • プリコンパイル済み
    • 自分でビルドする
  • 使用方法
    • 引数/オプション
    • システム
    • モジュール
    • モジュール詳細表
  • 使用例
    • リポジトリの一覧表示
    • リポジトリの検索
    • コードの検索
    • ファイルの検索
    • スニペットの一覧表示
    • ランナーの一覧表示
    • Gist の一覧表示
    • 組織の一覧表示
    • APIキーの権限取得
    • 管理者の追加
    • 管理者の削除
    • アクセストークンの作成
    • アクセストークンの一覧表示
    • アクセストークンの削除
    • SSHキーの作成
    • SSHキーの一覧表示
    • SSHキーの削除
    • 管理者統計の一覧表示
    • ブランチ保護の一覧表示
  • 検出
  • 参考文献

インストール/ビルド

使用ライブラリ

このプロジェクトでは以下のサードパーティライブラリを使用しています。

ライブラリURLライセンス
Octokithttps://github.com/octokit/octokit.netMIT License
Fodyhttps://github.com/Fody/FodyMIT License
GitLabApiClienthttps://github.com/nmklotas/GitLabApiClientMIT License
Newtonsoft.Jsonhttps://github.com/JamesNK/Newtonsoft.JsonMIT License

プリコンパイル済み

  • リリースのプリコンパイル済みバイナリを使用してください。

自分でビルドする

以下の手順に従って Visual Studio をセットアップし、自分でプロジェクトをコンパイルしてください。これには、NuGet パッケージマネージャーからインストールできる .NET ライブラリが必要です。

  • Visual Studio プロジェクトを読み込み、「ツール」→「NuGet パッケージマネージャー」→「パッケージマネージャーの設定」に移動します。
  • 「NuGet パッケージマネージャー」→「パッケージソース」に移動します。
  • URL https://api.nuget.org/v3/index.json を使用してパッケージソースを追加します。
  • 以下の NuGet パッケージをインストールします。
    • Install-Package Costura.Fody -Version 3.3.3
    • Install-Package Octokit
    • Install-Package GitLabApiClient
    • Install-Package Newtonsoft.Json
  • これで、自分でプロジェクトをビルドできます!

使用方法

引数/オプション

  • -c, -credential - 認証用の資格情報 (username:password または apiKey)
  • -s, -system - 攻撃対象のシステム (github,gitlab,bitbucket)
  • -u, -url - GitHub Enterprise、GitLab Enterprise、または Bitbucket Server のURL
  • -m, -module - 実行するモジュール
  • -o, -option - オプション (該当する場合)

システム (-s, -system)

  • github: GitHub Enterprise
  • gitlab: GitLab Enterprise
  • bitbucket: Bitbucket Server

モジュール (-m, -module)

  • listrepo: 現在のユーザーが表示できるすべてのリポジトリを一覧表示する
  • searchrepo: 指定されたリポジトリを検索する
  • searchcode: キーワード検索語を含むコードを検索する
  • searchfile: キーワード検索語を含むファイル名を検索する
  • listsnippet: 現在のユーザーのすべてのスニペットを一覧表示する
  • listrunner: 現在のユーザーが利用可能なすべての GitLab ランナーを一覧表示する
  • listgist: 現在のユーザーのすべての Gist を一覧表示する
  • listorg: 現在のユーザーが所属するすべての組織を一覧表示する
  • privs: 現在のAPIトークンの権限を取得する
  • addadmin: 指定されたユーザーを管理者ロールに昇格させる
  • removeadmin: 指定されたユーザーを管理者ロールから降格させる
  • createpat: 対象ユーザーの個人アクセストークンを作成する
  • listpat: 対象ユーザーの個人アクセストークンを一覧表示する
  • removepat: 対象ユーザーの個人アクセストークンを削除する
  • createsshkey: 現在のユーザーのSSHキーを作成する
  • listsshkey: 現在のユーザーのSSHキーを一覧表示する
  • removesshkey: 現在のユーザーのSSHキーを削除する
  • adminstats: 管理者統計を取得する (ユーザー、リポジトリ、組織、Gist)
  • protection: ブランチ保護設定を取得する

モジュール詳細表

以下の表は、各モジュールがサポートされている場所を示しています。

攻撃シナリオモジュール管理者権限が必要?GitHub EnterpriseGitLab EnterpriseBitbucket Server
偵察listrepoいいえXXX
偵察searchrepoいいえXXX
偵察searchcodeいいえXXX
偵察searchfileいいえXXX
偵察listsnippetいいえX
偵察listrunnerいいえX
偵察listgistいいえX
偵察listorgいいえX
偵察privsいいえXX
偵察protectionいいえX
永続化listsshkeyいいえXXX
永続化removesshkeyいいえXXX
永続化createsshkeyいいえXXX
永続化listpatいいえXX
永続化removepatいいえXX
永続化createpatはい (GitLab Enterprise のみ)XX
権限昇格addadminはいXXX
権限昇格removeadminはいXXX
偵察adminstatsはいX

使用例

リポジトリの一覧表示

使用例

特定のSCMシステムで使用されているリポジトリを発見する

構文

listrepo モジュールを、関連する認証情報およびURLとともに指定します。これにより、リポジトリ名とURLが出力されます。

GitHub Enterprise

これにより、ユーザーが表示できるすべてのリポジトリが一覧表示されます。

SCMKit.exe -s github -m listrepo -c userName:password -u https://github.something.local

SCMKit.exe -s github -m listrepo -c apiKey -u https://github.something.local

GitLab Enterprise

これにより、ユーザーが表示できるすべてのリポジトリが一覧表示されます。

SCMKit.exe -s gitlab -m listrepo -c userName:password -u https://gitlab.something.local

SCMKit.exe -s gitlab -m listrepo -c apiKey -u https://gitlab.something.local

Bitbucket Server

これにより、ユーザーが表示できるすべてのリポジトリが一覧表示されます。

SCMKit.exe -s bitbucket -m listrepo -c userName:password -u https://bitbucket.something.local

SCMKit.exe -s bitbucket -m listrepo -c apiKey -u https://bitbucket.something.local

出力例```

C:>SCMKit.exe -s gitlab -m listrepo -c username:password -u https://gitlab.hogwarts.local

================================================== Module: listrepo System: gitlab Auth Type: Username/Password Options: Target URL: https://gitlab.hogwarts.local

Timestamp: 1/14/2022 8:30:47 PM

                                Name | Visibility |                                                URL

                        MaraudersMap |    Private | https://gitlab.hogwarts.local/hpotter/maraudersmap
                        testingStuff |   Internal | https://gitlab.hogwarts.local/adumbledore/testingstuff
                           Spellbook |   Internal |    https://gitlab.hogwarts.local/hpotter/spellbook
   findShortestPathToGryffindorSword |   Internal | https://gitlab.hogwarts.local/hpotter/findShortestPathToGryffindorSword
                              charms |     Public |      https://gitlab.hogwarts.local/hgranger/charms
                       Secret-Spells |   Internal | https://gitlab.hogwarts.local/adumbledore/secret-spells
                          Monitoring |   Internal | https://gitlab.hogwarts.local/gitlab-instance-10590c85/Monitoring
### リポジトリの検索

#### ユースケース

> *特定のSCMシステム内でリポジトリ名によりリポジトリを検索します*

#### 構文

`searchrepo` モジュールと検索条件を `-o` コマンドラインスイッチで指定し、関連する認証情報とURLを付加します。これにより、一致するリポジトリ名とURLが出力されます。

##### GitHub Enterprise

GitHubのリポジトリ検索は「contains」検索であり、入力した文字列がリポジトリ名に含まれるリポジトリを検索します。

`SCMKit.exe -s github -m searchrepo -c userName:password -u https://github.something.local -o "some search term"`

`SCMKit.exe -s github -m searchrepo -c apikey -u https://github.something.local -o "some search term"`

##### GitLab Enterprise

GitLabのリポジトリ検索は「contains」検索であり、入力した文字列がリポジトリ名に含まれるリポジトリを検索します。

`SCMKit.exe -s gitlab -m searchrepo -c userName:password -u https://gitlab.something.local -o "some search term"`

`SCMKit.exe -s gitlab -m searchrepo -c apikey -u https://gitlab.something.local -o "some search term"`

##### Bitbucket Server

Bitbucketのリポジトリ検索は「starts with」検索であり、入力した文字列で始まるリポジトリ名を持つリポジトリを検索します。
ツールをダウンロード