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

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

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

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

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
ツール/GitHubGitHub/sbaresearch/amlsec
脆弱性分析SCADA/ICSセキュリティ論文と研究
GitHubsbaresearch/amlsec

amlsec

AutomationMLベースのエンジニアリングデータを用いた自動セキュリティリスク識別

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

人気

すべて見る →

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

すべてのツールを探索

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

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

AutomationMLベースのエンジニアリングデータを用いたサイバーフィジカル生産システムにおける自動化されたセキュリティリスク特定

このプロトタイプは、以下の2つの発表論文で提示された手法を実装しています。

  1. Eckhart, M., Ekelhart, A., & Weippl, E. R. (2020). AutomationMLベースのエンジニアリングデータを用いた自動化されたセキュリティリスク特定. IEEE Transactions on Dependable and Secure Computing.
  2. Eckhart, M., Ekelhart, A., Biffl S., Lüder A., & Weippl, E. R. (2022). QualSec: サイバーフィジカル生産システムにおけるセキュリティリスク特定のための自動化された品質駆動アプローチ. IEEE Transactions on Industrial Informatics.

本質的に、これはAutomationML(AML)アーティファクトに基づいてセキュリティリスクソース(すなわち脅威と脆弱性)と攻撃結果のタイプを特定します。 リスク特定プロセスの結果は、物理的損傷に潜在的に至る多段階サイバー攻撃をモデル化するサイバーフィジカル攻撃グラフを生成するために使用できます。 さらに、製品品質に影響を与える攻撃の連鎖効果と結果が特定されます。

インストール

  1. AML2OWLのビルド

このプロトタイプは、HuaとHeinによるETFA 2019論文「双方向翻訳に基づくAutomationMLにおけるOWL複合クラスの解釈」のための AMLとOWL間の双方向翻訳の実装 のフォークされたバージョンに依存しています。 リポジトリ をクローンし、プロジェクトをコンパイルし、aml_owl のアプリケーションバンドルをアセンブルします:

root@kitploit:~
$ cd aml_models
$ mvn clean compile install
$ cd ../aml_io
$ mvn clean compile install
$ cd ../aml_owl
$ mvn clean compile install assembly:single
  1. AMLsecベースディレクトリのセットアップ

このリポジトリをクローンし、アプリケーションベースディレクトリ(通常はユーザーのホームディレクトリに配置)を作成し、amlsec-base-dir にあるファイルとアセンブルされたAML2OWL JAR(aml_owl/target/ に配置)をそこに配置します。 AMLsecベースディレクトリとAML2OWL JARへのパスは、設定ファイル でそれぞれ baseDir と amlToOwlProgram キーを使用して設定する必要があります。

  1. Apache Jena Fusekiのセットアップ

Apache Jena Fuseki をインストールして起動します:

root@kitploit:~
$ java -jar <path_to_apache-jena-fuseki-X.Y.Z>/fuseki-server.jar --update
  1. LoLA 2のインストール(QualSecにのみ適用)

QualSecを実行したい場合は、LoLA - 低レベルペトリネット解析器 をインストールする必要があります。

  1. アプリケーションのビルドと実行

最後に、sbt を使用してアプリケーションをビルドして起動します。

root@kitploit:~
$ sbt "runMain org.sba_research.worker.Main -q"

フラグ -s と -q をそれぞれ使用して、AMLsecとQualSecを実行します。

使用法

実装された手法は、AMLライブラリによって実現されるセマンティック情報マッピングメカニズムを利用しています。 これらの AMLセキュリティ拡張ライブラリ および AML品質拡張ライブラリ は、AMLファイルにインポートすることでエンジニアリングプロジェクトで簡単に再利用できます。

繰り返しになりますが、IEEE TDSC論文で提示された手法のプロトタイプを実行する場合は、-s フラグを使用してください。 一方、-q フラグはIEEE TII論文で提示された手法に対応しています。

このプロトタイプの機能は、ケーススタディ(AMLsec、QualSec)で実証されています。 このプロトタイプをそのまま実行すると、リスク特定プロセスの結果とケーススタディの結果を含む知識ベース(Fuseki経由でアクセス可能)が生成されます。

さらに、デフォルトのケーススタディ と -s フラグでプロトタイプを実行すると、以下のプルーニングされたサイバーフィジカル攻撃グラフが作成されます:

Cyber-Physical Attack Graph

クラスター

このプロトタイプは、Akka フレームワークを利用しており、リスク特定のワークロードを複数のノードに分散できます。Akka分散ワーカーサンプル がテンプレートとして使用されました。

複数のノードでクラスターを実行するには(-q フラグの例):

  1. Cassandraを起動:
root@kitploit:~
$ sbt "runMain org.sba_research.worker.Main cassandra -q"
  1. 最初のシードノードを起動:
root@kitploit:~
$ sbt "runMain org.sba_research.worker.Main 2551 -q"
  1. フロントエンドノードを起動:
root@kitploit:~
$ sbt "runMain org.sba_research.worker.Main 3001 -q"
  1. ワーカーノードを起動(2番目のパラメータはワーカーアクターの数を示します。例:3):
root@kitploit:~
$ sbt "runMain org.sba_research.worker.Main 5001 3 -q"

ノードを別々のマシンで実行する場合は、設定ファイル のAkka設定を適応させる必要があります。

パフォーマンス評価

パフォーマンス評価中に得られた測定値とログファイルは、リクエストに応じて入手可能です。

引用方法

このプロトタイプを研究で使用する場合は、IEEE TDSC 2020 または IEEE TII 2022 の論文を引用することをご検討ください。論文のBibTeXエントリ(TDSC、TII)を自由に使用してください。

謝辞

著者らは、OntoPLC の初期バージョンを提供してくれたYameng Anに感謝します。

ツールをダウンロード