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

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

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

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

ツールディレクトリ

カテゴリ

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

SCMKit

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

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

人気

すべて見る →

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

すべてのツールを探索

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

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

SCMKit

説明

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

リリース

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

目次

  • 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

プリコンパイル済み

  • Releasesにあるプリコンパイル済みバイナリを使用してください。

自分でビルドする

プロジェクトを自分でコンパイルするために、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 のリポジトリ検索は「部分一致」検索であり、入力した文字列は、その検索語を名前に含むリポジトリを検索します。

`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 のリポジトリ検索は「部分一致」検索であり、入力した文字列は、その検索語を名前に含むリポジトリを検索します。

`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 のリポジトリ検索は「前方一致」検索であり、入力した文字列は、その検索語で始まる名前のリポジトリを検索します。
ツールをダウンロード