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

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

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

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

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
ツール/GitHubGitHub/klezvirus/inceptor
ペネトレーションテストフレームワークエクスプロイトフレームワークペイロード生成レッドチーミング
GitHubklezvirus/inceptor

inceptor

テンプレート駆動型AV/EDR回避フレームワーク

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

人気

すべて見る →

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

すべてのツールを探索

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

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

🚩 これはInceptorの公開リポジトリです。最新バージョンとアップデートについては、https://porchetta.industries/ からサポートをご検討ください。



🚩 スポンサー

このプロジェクトをスポンサーしていただき、Inceptorの最新アップデート、最新の修正、最新機能を入手したい場合は、https://porchetta.industries/ でサポートをお願いします。

公式Discordチャンネル

Discordでおしゃべりしましょう!

Porchetta Industries

目次

  • 概要
  • インストール
  • 使い方

ニュース

NW: 現在テンプレートエンジンの改良に取り組んでいます!次のバージョンをリリースし次第、ツールの使用方法、カスタマイズ方法、拡張方法についての説明がWikiで利用可能になります。

概要

現代のペネトレーションテストやレッドチーム活動では、標的でコードを実行するために一般的なAV/EDR製品を回避する必要があることがよくあります。時が経つにつれ、防御はより複雑になり、一貫してバイパスすることが本質的に困難になっています。

Inceptorは、このプロセスの大部分を自動化し、うまくいけばそれ以上の労力を必要としないツールです。

機能

Inceptorは、Windows向けのテンプレートベースのPEパッカーです。ペネトレーションテスターやレッドチームが一般的なAVおよびEDRソリューションをバイパスするのを支援するように設計されています。Inceptorは使いやすさに重点を置いて設計されており、ユーザーによる広範なカスタマイズが可能です。

何が実装され、なぜなのかをよく理解するには、以下のリソースを参照すると役立つかもしれません。

  • EDR、次世代AV、AMSIの時代におけるコード実行への道
  • Inceptor - よく知られた手法を組み合わせてAV-EDRソリューションをバイパスする

シェルコードの変換/ロード

Inceptorは、さまざまなオープンソースコンバーターを使用して、既存のEXE/DLLをシェルコードに変換できます。

  • Donut: Donutは「コンバーター」です。このツールはTheWoverによる芸術作品のようなもので、ネイティブバイナリ、DLL、.NETバイナリを位置独立コードのシェルコードに変換するために使用できます。
  • sRDI: Monoxgasによるもので、既存のネイティブDLLをPICに変換し、通常のシェルコードとしてインジェクションできます。
  • Pe2Sh: Hasherazadeによるもので、既存のネイティブEXEをPICシェルコードに変換できます。これは通常のEXEとしても実行できます。

LIエンコーダーとLDエンコーダー

Inceptorは、さまざまな方法でシェルコードをエンコード、圧縮、暗号化できます。ツールの開発中、私はローダー非依存(LI)エンコーディングとローダー依存(LD)エンコーディングを区別し始めました。

ローダー非依存エンコーディングは、ユーザーが選択したテンプレート(ローダー)によって管理されないエンコーディングの一種です。これは通常、デコードスタブがテンプレートの一部ではなく、シェルコード自体に埋め込まれていることを意味します。 Inceptorはこの種の機能を、オープンソースツールsgnを使用して提供します。これはペイロードをポリモーフィックにし、一般的なシグネチャ検出で検出不可能にするために使用されます。

強力ではありますが、Shikata-Ga-Naiは特定のテンプレートにはあまり適していません。そのため、Inceptorはローダー依存エンコーダーも実装しており、ローダーがデコードを担当するように設計されています。したがって、LDエンコーダーはテンプレートに直接デコードスタブをインストールします。この種のエンコーダーは、Inceptor内で実装されているように、「チェーン可能」であり、ペイロードをエンコードするために連結できます。

エンコーダーのチェーンを使用すると、特定のペイロードの難読化が改善されることがありますが、この手法では複数のデコードルーチンが露出する可能性があり、防御側がそれらに対するシグネチャを設計するのに役立つ可能性があります。そのため、Inceptorは最終的なアーティファクトを難読化する複数の方法を提供し、リバースエンジニアリングプロセスを強化します。

現在のところ、公開バージョンのInceptorには以下のエンコーダー/圧縮機/暗号化機が用意されています。

  • ネイティブ
    • Xor
    • Nop(挿入)
  • .NET
    • Hex
    • Base64
    • Xor
    • Nop(挿入)
    • AES
    • Zlib
    • RLE
  • PowerShell
    • Hex
    • Base64
    • Xor
    • Nop(挿入)
    • AES

Inceptorはエンコードチェーンを静的に検証すると同時に、デコーダーの入出力タイプを静的にチェックし、独立した実装で動的に実装を検証することもできます。

いつでも、ユーザーはchain-validate.pyユーティリティを使用してチェーンを簡単に検証できます。

AV回避メカニズム

InceptorはAV回避メカニズムもネイティブに実装しており、「モジュール」(プラグイン)の形でペイロードにAV回避機能を含めるオプションを提供します。

埋め込むことができるプラグインは以下の通りです。

  • AMSIバイパス
  • WLDPバイパス
  • ETWバイパス
  • サンドボックス(行動)欺瞞

EDR回避メカニズム

Inceptorは、フルアンフック、ダイレクトシステムコール呼び出し、手動DLLマッピングなどのEDR回避メカニズムも実装しています。ダイレクトシステムコールは、TheWoverによる優れたプロジェクト「DInvoke」を使用してC#で実装されています。 C/C++では、システムコールはJackson_TによるSysWhispersおよびSysWhispers2プロジェクトを使用して実装されています。さらに、Inceptorはx86システムコールも内蔵サポートしています。

AVバイパス機能と同様に、これらの機能はモジュールとして有効にできますが、それらをサポートするテンプレートで動作させる必要がある点が異なります。これまでに実装された技法は以下の通りです。

  • フルアンフック
  • 手動DLLマッピング
  • ダイレクトシステムコール

難読化

Inceptorは、ConfuserExやChameleonなどの外部ユーティリティを使用したペイロードの難読化をサポートしており、LLVM-Obfuscatorを使用したC/C++の難読化もサポートしています。LLVM-Obfuscatorは、LLVMコンパイルプラットフォームを使用したIRベースの難読化ツールです。

  • PowerShell
  • C#
  • C/C++

コード署名

Inceptorのもう一つの機能は、CarbonCopyツールを使用して、結果のバイナリ/DLLにコード署名できることです。 通常、コード署名証明書で署名されたファイルは、あまり厳密に分析されません。多くのアンチマルウェア製品は、これらの証明書を検証/確認しません。

ワークフロー

完全なワークフローは、次の高レベルかつ簡略化されたスキームで要約できます。

ワークフロー

インストール

InceptorはWindows上で動作するように設計されています。update-config.pyユーティリティは、必要なMicrosoftバイナリを見つけて、設定を適宜更新します。Microsoft Build Tools、Windows SDK、Visual Studioのインストールが必要になる場合があり、update-config.pyは、必要な依存関係のインストール方法をユーザーに案内します。

root@kitploit:~
git clone --recursive https://github.com/klezVirus/inceptor.git
cd inceptor
virtualenv venv
venv\Scripts\activate.bat
pip install -r requirements.txt
cd inceptor
python update-config.py

役立つ注意事項

デフォルトローダー

現在のバージョンのInceptorは、単純な命名規則(テンプレート名は変更しないでください)と、ユーザーが指定した引数のセットを使用して特定のテンプレートを見つけます。引数の中にはローダー(-t)もあります。指定されていない場合、ローダーは以下の簡単なスキームに従って、パックするファイルの関数として選択されます。

root@kitploit:~
$ python inceptor.py -hh

[*] デフォルトローダー
      入力ファイル拡張子  特別条件   推測されるファイルタイプ デフォルトローダー  デフォルトテンプレート
0                     .raw              NaN          シェルコード        簡易ローダー           Classic
1                     .exe             .NET    Dotnet実行可能ファイル          Donut           Classic
2                     .exe              NaN   ネイティブ実行可能ファイル   Pe2Shellcode           PE Load
3                     .dll              NaN       ネイティブライブラリ           sRDI           Classic

テンプレート名の規則

アーティファクトの動作を誤解しないために、テンプレート名の規則を理解することも非常に重要です。

  • Classic: 通常のテンプレートは、VirtualAlloc/VirtualAllocExおよびCreateThread/CreateRemoteThread APIを使用して任意のコードを割り当てて実行することを意味します。
  • Dinvoke: テンプレートにdinvokeのみが含まれている場合(例: classic-dinvoke.cs)、それはdinvokeの動的関数解決機能を使用していることを意味します。
  • dinvoke-サブテクニック: dinvokeの後に別のキーワードが続くテンプレートは、manual_mapping、overload_mapping、syscallsなどのdinvokeの特定の機能を使用しています。
  • Syscalls: 名前が示すように、このテンプレートはシステムコールを使用しています。
  • PE Load: このテンプレートは、完全なPEを変換せずにメモリにマッピングしようとします。
  • Assembly Load: このテンプレートは、リフレクションを使用して.NETアセンブリを実行しようとします。

使い方

root@kitploit:~
$ usage: inceptor.py [-h] [-hh] [-Z] {native,dotnet,powershell} ...

inceptor: 一般的なAVおよびEDRソリューションをバイパスするために
          レッドチームオペレーターを支援するように設計された、WindowsベースのPEパッキングフレームワーク

位置引数:
  {native,dotnet,powershell}
    native              ネイティブバイナリジェネレーター
    dotnet              .NETバイナリジェネレーター
    powershell          PowerShellラッパースクリプトジェネレーター

オプション引数:
  -h, --help            このヘルプメッセージを表示して終了
  -hh                   機能テーブルを表示
  -Z, --check           ThreatCheckでファイルをチェック

今後の開発

  • 新しいテンプレートエンジン
  • 新しいテンプレート
  • 新しいエンコーダー
  • C#コードベースの難読化

リソース

  • Inceptor - よく知られた手法を組み合わせてAV-EDRソリューションをバイパスする
  • EDRバイパス手法の物語
ツールをダウンロード