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

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

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

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

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
COFFLoader — 64ビットCOFFオブジェクトファイルをパースすることで、Cobalt Strikeの外部でBeacon Object Files(BOF)を実行します。Beacon互換の引数生成とレッドチームテスト用のヘルパースクリプトを備えています。 | Kitploit
ツール/GitHubGitHub/trustedsec/coffloader
ポストエクスプロイトペネトレーションテストバイナリ解析レッドチーミングペイロード開発
GitHubtrustedsec/coffloader

COFFLoader

64ビットCOFFオブジェクトファイルをパースすることで、Cobalt Strikeの外部でBeacon Object Files(BOF)を実行します。Beacon互換の引数生成とレッドチームテスト用のヘルパースクリプトを備えています。

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

人気

すべて見る →

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

すべてのツールを探索

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

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

COFF ローダー

これは、即席のCOFFローダー(別名Beacon Object Files)です。現在は未改変のBOFを実行できるため、CSエージェントを実行せずにテストに使用できます。唯一の例外は、インジェクション関連のビーコン互換関数が空であることです。

主な目的は、動作する例を提供し、誰かの役に立つかもしれないということです。

構成要素

このプロジェクトにはいくつかの構成要素があり、以下に示します。

  • beacon_compatibility: BOFファイルをロードして実行できるようにする、ビーコンの内部関数です。
  • COFFLoader: これが実際のCOFFローダーで、nix向けにビルドすると64ビットオブジェクトファイルをロードして解析します。
  • test: サンプルの"COFF"ファイルです。makeが呼び出されると、COFFファイルをビルドしてくれます。
  • beacon_generate: beacon_compatibility関数と互換性のある文字列/引数を生成するヘルパースクリプトです。

ビーコン生成

これは、COFFLoaderコードに渡す引数を生成するために使います。BOFが引数を受け取る場合は、期待する型で引数を追加し、使用する16進文字列を生成するだけです。

使用例は以下の通りです:

root@kitploit:~
COFFLoader % python3 beacon_generate.py
Beacon Argument Generator
Beacon>help

Documented commands (type help <topic>):
========================================
addString  addWString  addint  addshort  exit  generate  help  reset

Beacon>addWString test
Beacon>addint 4
Beacon>generate
b'120000000a0000007400650073007400000004000000'
Beacon>reset
Beacon>addint 5
Beacon>generate
b'0400000005000000'
Beacon>exit

BOFの引数

各BOFが必要とする引数は、ソースコードを見ることで確認できます。例としてNet User BOFを使う場合、CS-Situational-Awareness-BOF Github内のsrc/SA/netuser/entry.cファイルを表示し、void go()関数にある引数を確認します。

root@kitploit:~
VOID go(IN PCHAR Buffer, IN ULONG Length)
{
    datap parser;
    wchar_t *username = NULL;
    wchar_t *domain = NULL;

    BeaconDataParse(&parser, Buffer, Length);
    username = (wchar_t *)BeaconDataExtract(&parser, NULL);
    domain = (wchar_t *)BeaconDataExtract(&parser, NULL);
    domain = *domain == 0 ? NULL : domain;
    netuserinfo(username, domain);

    printoutput(TRUE);
};

このNet User BOFが"username"と"domain"を必要とすることがわかります (whoami BOFを実行することで取得できます)。beacon_generate.pyヘルパースクリプトを使用すると、次のように引数を生成します:

root@kitploit:~
COFFLoader % python3 beacon_generate.py
Beacon Argument Generator
Beacon>addWString Administrator
Beacon>addWString client2
Beacon>generate
b'340000001c000000410064006d0069006e006900730074007200610074006f00720000001000000063006c00690065006e00740032000000'
Beacon>exit

最後に、16進数化された数値(数字のみ)を実行コマンドにコピーします。

root@kitploit:~
COFFLoader64.exe go ..\CS-Situational-Awareness-BOF\SA\netuser\netuser.x64.o 340000001c000000410064006d0069006e006900730074007200610074006f00720000001000000063006c00690065006e00740032000000

より詳細な例は、次のリンクで参照できます:
https://trustedsec.com/blog/situational-awareness-bofs-for-script-kiddies

実行

BOFの実行例を以下に示します。

root@kitploit:~
COFFLoader64.exe go test64.out
COFFLoader64.exe go ..\CS-Situational-Awareness-BOF\SA\whoami\whoami.x64.o
ツールをダウンロード