Skip to content
KitploitKITPLOIT
FerramentasBlog
Enviar
FerramentasBlog
Enviar

Ferramentas de Hacking, PenTest e Cibersegurança para o seu Arsenal de Segurança!

Kitploit é um diretório de ferramentas de hacking, cibersegurança e pentesting. Descubra as últimas atualizações de projetos para encontrar vulnerabilidades, analisar sistemas, automatizar testes e fortalecer sua segurança.

··Feeds·Contato·Privacidade·© 2026 Kitploit

Diretório de Ferramentas

Categorias

Ver todas as categorias
Loading categories
amlsec — Identificação Automatizada de Riscos de Segurança Usando Dados de Engenharia Baseados em AutomationML | Kitploit
Ferramentas/GitHubGitHub/sbaresearch/amlsec
Análise de VulnerabilidadesSegurança SCADA/ICSPapers e Pesquisa
GitHubsbaresearch/amlsec

amlsec

Identificação Automatizada de Riscos de Segurança Usando Dados de Engenharia Baseados em AutomationML

Ver Repositório
3010há 4 anosRevisado pelo Kitploit

Mais Populares

Ver todos →

Descubra as ferramentas mais usadas pela nossa comunidade.

Explore todas as ferramentas

Navegue pela nossa coleção de ferramentas

Ver todas as ferramentas →
Compartilhar

Identificação Automatizada de Riscos de Segurança em Sistemas Ciber-Físicos de Produção Usando Dados de Engenharia Baseados em AutomationML

Este protótipo implementa os métodos apresentados nas duas publicações a seguir:

  1. Eckhart, M., Ekelhart, A., & Weippl, E. R. (2020). Automated Security Risk Identification Using AutomationML-Based Engineering Data. IEEE Transactions on Dependable and Secure Computing.
  2. Eckhart, M., Ekelhart, A., Biffl S., Lüder A., & Weippl, E. R. (2022). QualSec: An Automated Quality-Driven Approach for Security Risk Identification in Cyber-Physical Production Systems. IEEE Transactions on Industrial Informatics.

Em essência, ele identifica fontes de risco de segurança (isto é, ameaças e vulnerabilidades) e tipos de consequências de ataques com base em artefatos AutomationML (AML). Os resultados do processo de identificação de riscos podem ser usados para gerar grafos de ataque ciber-físicos, que modelam ataques cibernéticos de múltiplos estágios que potencialmente levam a danos físicos. Além disso, são identificados efeitos em cascata e consequências de ataques que afetam a qualidade do produto.

Instalação

  1. Construir AML2OWL

Este protótipo depende de uma versão bifurcada da implementação da tradução bidirecional entre AML e OWL para o artigo ETFA 2019 "Interpreting OWL Complex Classes in AutomationML based on Bidirectional Translation" de Hua e Hein. Clone o repositório, compile os projetos e monte um pacote de aplicação de 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. Configurar o Diretório Base do AMLsec

Clone este repositório, crie o diretório base da aplicação (geralmente localizado no diretório home do usuário) e coloque os arquivos localizados em amlsec-base-dir e o JAR do AML2OWL montado (localizado em aml_owl/target/) lá. O diretório base do AMLsec e o caminho para o JAR do AML2OWL devem ser definidos no arquivo de configuração usando as chaves baseDir e amlToOwlProgram, respectivamente.

  1. Configurar Apache Jena Fuseki

Instale e inicie o Apache Jena Fuseki:

root@kitploit:~
$ java -jar <path_to_apache-jena-fuseki-X.Y.Z>/fuseki-server.jar --update
  1. Instalar LoLA 2 (aplica-se apenas ao QualSec)

Se você quiser executar o QualSec, precisa instalar o LoLA - A Low Level Petri Net Analyzer.

  1. Construir e Executar a Aplicação

Finalmente, construa e inicie o aplicativo usando sbt.

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

Use as flags -s e -q para executar AMLsec e QualSec, respectivamente.

Uso

Os métodos implementados utilizam um mecanismo de mapeamento de informações semânticas realizado por meio de bibliotecas AML. Estas bibliotecas de extensão de segurança AML e bibliotecas de extensão de qualidade AML podem ser facilmente reutilizadas em projetos de engenharia ao importá-las para arquivos AML.

Novamente, se você quiser executar o protótipo do método apresentado no artigo IEEE TDSC, use a flag -s. A flag -q, por outro lado, corresponde ao método apresentado no artigo IEEE TII.

As capacidades deste protótipo são demonstradas em estudos de caso (AMLsec, QualSec). Executar este protótipo como está produzirá a base de conhecimento (pode ser acessada via Fuseki), que também inclui os resultados do processo de identificação de riscos e os resultados do estudo de caso.

Além disso, se você executar o protótipo com o estudo de caso padrão e a flag -s, o seguinte grafo de ataque ciber-físico podado será criado:

Cyber-Physical Attack Graph

Cluster

O protótipo utiliza o framework Akka e é capaz de distribuir a carga de trabalho de identificação de riscos entre múltiplos nós. O exemplo de workers distribuídos do Akka foi usado como modelo.

Para executar o cluster com múltiplos nós (exemplos com a flag -q):

  1. Iniciar Cassandra:
root@kitploit:~
$ sbt "runMain org.sba_research.worker.Main cassandra -q"
  1. Iniciar o primeiro nó semente:
root@kitploit:~
$ sbt "runMain org.sba_research.worker.Main 2551 -q"
  1. Iniciar um nó front-end:
root@kitploit:~
$ sbt "runMain org.sba_research.worker.Main 3001 -q"
  1. Iniciar um nó worker (o segundo parâmetro denota o número de atores worker, ex., 3):
root@kitploit:~
$ sbt "runMain org.sba_research.worker.Main 5001 3 -q"

Se você executar os nós em máquinas separadas, terá que adaptar as configurações do Akka no arquivo de configuração.

Avaliação de Desempenho

As medições e arquivos de log obtidos durante a avaliação de desempenho estão disponíveis mediante solicitação.

Como Citar

Se você usar este protótipo em sua pesquisa, considere citar nossa publicação IEEE TDSC 2020 ou IEEE TII 2022. Sinta-se à vontade para usar as entradas BibTeX dos artigos (TDSC, TII).

Agradecimentos

Os autores gostariam de agradecer a Yameng An por fornecer a versão inicial do OntoPLC.

Baixar ferramenta