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

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

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

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

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
OpcUaTrap — ICS/SCADA向けの高対話型OPC UAハニーポット — マルチプロファイル(石油・ガス、水道、電力網)、ライブプロセスシミュレーション、セッションごとの脅威スコアリング、SIEM統合(syslog/CEF/webhook/Elasticsearch)を備えています。.NET 8とLibUA上に構築されています。 | Kitploit
ツール/GitHubGitHub/0xajstrike/opcuatrap
防御ツールSCADA/ICSセキュリティ情報収集ネットワークセキュリティ脅威インテリジェンス侵入検知インシデントレスポンスログ分析
GitHub0xajstrike/opcuatrap

OpcUaTrap

ICS/SCADA向けの高対話型OPC UAハニーポット — マルチプロファイル(石油・ガス、水道、電力網)、ライブプロセスシミュレーション、セッションごとの脅威スコアリング、SIEM統合(syslog/CEF/webhook/Elasticsearch)を備えています。.NET 8とLibUA上に構築されています。

リポジトリを見る
21818日前未レビュー

人気

すべて見る →

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

すべてのツールを探索

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

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

OpcUaTrap

ICS/SCADA環境向けのハイインタラクション型OPC UAハニーポット。LibUA上に構築されています — プロトコルエミュレータではなく、完全なOPC UAバイナリスタックです。複数の業界プロファイルにわたる現実的な産業制御システムを、ライブのプロセス値、包括的な脅威検知、SIEM対応ログとともにシミュレートします。

0xAJStrikeによって開発されました。

📄 講演: Read the Plant like a Blueprint — このツールが開発されるきっかけとなったSecTor 2026のプレゼンテーション(OPC UAの攻撃対象領域、ハニーポットの設計、ライブデモ)。

なぜハイインタラクションなのか?

ほとんどのICSハニーポット(Conpot、GRFICSv2)は部分的なプロトコルエミュレーションしか提供していません。OpcUaTrapは完全なOPC UAバイナリプロトコルを実装しています — セキュアチャネルネゴシエーション、セッションライフサイクル、サブスクリプション、履歴、そしてすべてのサービスセットです。実際のエクスプロイトツールやスキャナ(OpalOPC、Nmap OPC UAスクリプト)は、本番システムに対して行うのと同じようにこれと対話します。

低中OpcUaTrap
プロトコルバナーのみ部分的なエミュレーション完全な本物のスタック
セッション状態なし基本完全なライフサイクル
アドレス空間静的 / 空少数のノード100〜130の現実的なノード
サブスクリプションなしなしあり — ライブデータをプッシュ
エクスプロイト耐性クラッシュする部分的完全なフレームワークに耐える

機能

  • 3つの業界プロファイル — 石油・ガス、水処理、電力網 — それぞれ100〜130のライブプロセスノードを備える
  • 完全なOPC UAプロトコル — ブラウズ、読み取り、書き込み、呼び出し、履歴読み取り、サブスクリプション、4つのセキュリティエンドポイント
  • ライブシミュレーション — 1秒ティック、ガウスノイズ、平均回帰ドリフト、タンクの充填・排出ダイナミクス
  • 12の脅威検知ルール — セッションごとのスコアリング(0〜100)、ハニートークン検知、列挙検知、大量持ち出し、クレデンシャルスプレーなど
  • フィンガープリント対策 — 偽のベンダーID、応答タイミングのジッター、現実的なエラーコード、稼働時間のランダム化
  • プラグイン可能なSIEMログ — NDJSON(常時有効)、syslog RFC 5424、ArcSight CEF、HTTP Webhook、Elasticsearchへの直接取り込み
  • プロファイル駆動のハードニング — 認証ポリシー、アカウントロックアウト、サービス制限 — すべてJSONプロファイルごとに設定可能

クイックスタート

Dockerで実行(最速)

docker run -d --name opcuatrap -p 4840:4840 \
  -e OPCUATRAP_PROFILE=oil-gas \
  -v opcuatrap-data:/data \
  ghcr.io/0xajstrike/opcuatrap:latest

ハニーポットは opc.tcp://<host>:4840 で稼働しています。施設を切り替えるには -e OPCUATRAP_PROFILE=water-treatment(または power-grid)を使用します。イメージはマルチアーキ (amd64 + arm64 なので Raspberry Pi でも動作します)、非rootで実行され、証明書と NDJSON ログを opcuatrap-data ボリュームに永続化します。Docker の詳細(Compose、すべての環境変数)は Deployment → Docker に記載されています。

前提条件

  • .NET 9.0 SDK 以降 — 同梱の LibUA が net9.0 までマルチターゲット化されているため、ソースからのビルドに必要です。ハニーポット自体は .NET 8 ランタイムで動作します。(Docker を使用する場合は不要です — イメージが内部ですべてをビルドします。)

  • LibUA — OPC UA スタック。OpcUaTrap は軽微な修正を加えたフォーク (0xAJStrike/LibUA、 nauful/LibUA のフォーク) に対してビルドされます。このフォークは 複数の OPC UA CVE に対する多層防御の制限と、オプションのハニーポット欺瞞応答を追加します。

    両方のリポジトリを共通の親ディレクトリの下に並べてクローンします:

    git clone https://github.com/0xAJStrike/OpcUaTrap.git
    git clone https://github.com/0xAJStrike/LibUA.git
    

    想定されるレイアウト(OpcUaTrap はプロジェクトファイルからの相対パス ../../../LibUA/NET-Core/LibUA/LibUA.csproj を参照します。つまり LibUA は OpcUaTrap の隣に配置されます):

    parent/
    ├── OpcUaTrap/   # this repo
    └── LibUA/       # the fork, cloned as a sibling
    

ビルド

dotnet build src/OpcUaTrap/OpcUaTrap.csproj

実行

# Oil & gas profile (default, port 4840)
dotnet run --project src/OpcUaTrap

# Water treatment profile
dotnet run --project src/OpcUaTrap -- --profile water-treatment

# Power grid profile
dotnet run --project src/OpcUaTrap -- --profile power-grid

# Custom port
dotnet run --project src/OpcUaTrap -- --port 7718

# Custom log directory
dotnet run --project src/OpcUaTrap -- --log-dir /var/log/opcuatrap

サーバーは約400msで起動し、直ちにプロセス値のシミュレーションを開始します。


業界プロファイル

プロファイルは src/OpcUaTrap/Profiles/ 内の JSON ファイルです。各ファイルは施設の識別情報、完全なアドレス空間、タグ分類、シミュレーションルール、およびハードニング設定を定義します。

プロファイル--profile施設ノードベンダー識別
oil-gas(デフォルト)PetroVista Central Processing Facility約120Schneider Electric SCADAPack 57x
water-treatmentwater-treatmentCascade Municipal Water Treatment Plant約100Rockwell Automation ControlLogix
power-gridpower-gridRidgeline 138kV Transmission Substation約130ABB RTU560

石油・ガス — アドレス空間

PetroVista Central Processing Facility/
  Site_Information/
  Wellheads/            WH_101 – WH_104  (pressure, temp, flow, choke position)
  Separators/           SEP_HP_201, SEP_LP_202  (pressure, level, setpoints)
  TankFarm/             TK_OIL_301, TK_OIL_302  (level, alarms, inlet/outlet valves)
  PumpStations/         PMP_XFER_401  (speed, discharge pressure, start/stop commands)
  CompressorStation/    COMP_501  (RPM, vibration, discharge temp, load %)
  Pipelines/            PL_EXPORT_601  (pressure, flow, block valve)
  SafetySystems/        ESD  (status, shutdown valves, trigger/reset methods)
                        FireAndGas  (gas detectors %LEL, flame detectors)
  Utilities/            Instrument air, fuel gas, power generation

水処理 — アドレス空間

Cascade Municipal Water Treatment Plant/
  Site_Information/
  RawWaterIntake/       Flow, turbidity, pH, temp, intake pumps, isolation valve
  Coagulation/          Rapid mix, alum dose rate and setpoint
  Flocculation/         Slow mixer, polymer feed rate and setpoint
  Sedimentation/        Basin levels, turbidity, sludge blanket, scrapers
  Filtration/           4 filters — differential pressure, turbidity, backwash status
  Disinfection/         Primary/secondary chlorination, ammonia feed (chloramine)
  ClearWell/            Finished water storage — level, turbidity, pH, Cl2 residual
  Distribution/         High-service pumps, pressure zones, elevated tank level
  SafetySystems/        ESD, chlorine/ammonia leak detectors and isolation valves
  Utilities/            Power, backup generator, SCADA system status

電力網 — アドレス空間

Ridgeline 138kV Transmission Substation/
  Site_Information/
  HV_Bus (138kV)/       Phase voltages, line voltage, frequency, MW/MVAR/PF
                        CB-101 main breaker, CB-102 bus tie (status, SF6, trip/close)
  Transformers/         T1 & T2, 50 MVA each — voltage, current, oil temp, winding temp,
                        LTC tap position (1–17), loading %, tap raise/lower commands
  LV_Bus (13.8kV)/      Bus voltage, frequency, total MW/MVAR/PF
  Feeders/              F1 Residential, F2 Industrial, F3 Commercial, F4 Hospital/Critical
                        (current, MW, MVAR, recloser ops, trip/close commands)
  CapacitorBanks/       CAP-1 (energized), CAP-2 (standby) — 5 MVAR each
  ProtectionRelays/     SEL-351S overcurrent, SEL-387 differential, SEL-421 distance
                        All have _ENABLED flag — disabling them is a critical attack target
  DC_System/            125VDC station battery — voltage, SOC, charger status, ground fault
  SafetySystems/        86 Lockout relay (trip-all-breakers), ESD
  SCADA_RTU/            ABB RTU560 status, EMS comm link, historian connection

セキュリティエンドポイント

#ポリシーモード
1NoneNone
2Basic256Sha256Sign
3Basic256Sha256SignAndEncrypt
4Aes128_Sha256_RsaOaepSignAndEncrypt

プロファイルは、hardening.authentication.allowedSecurityPolicies 設定を介して提供されるポリシーを制限できます。


ハニートークン認証情報

使用時にアラートをトリガーする、事前に仕込まれた弱い認証情報。appsettings.json で定義されています。

ユーザー名パスワードアラートレベル
operatorop3rator!HIGH
adminadmin123CRITICAL
engineerWelcome1CRITICAL
readonlyreadonlyMEDIUM
svc_historianh1st0rianHIGH

認証の動作はプロファイルによって異なります — oil-gas は selective モード(未知の認証情報を拒否)を使用し、water-treatment は accept-all を使用します。


ハニーポットの動作

ツールをダウンロード