Skip to content
KitploitKITPLOIT
HerramientasBlog
Enviar
HerramientasBlog
Enviar

¡Herramientas de Hacking, PenTest y Ciberseguridad para tu Arsenal de Seguridad!

Kitploit es un directorio de herramientas de hacking, ciberseguridad y pentesting. Descubre las últimas actualizaciones de proyectos para encontrar vulnerabilidades, analizar sistemas, automatizar pruebas y fortalecer tu seguridad.

··Feeds·Contacto·Privacidad·© 2026 Kitploit

Directorio de Herramientas

Categorías

Ver todas las categorías
Loading categories
Herramientas/GitHubGitHub/sbaresearch/amlsec
Análisis de VulnerabilidadesSeguridad SCADA/ICSPapers e Investigación
GitHubsbaresearch/amlsec

amlsec

Identificación Automatizada de Riesgos de Seguridad Utilizando Datos de Ingeniería Basados en AutomationML

Ver Repositorio
30105hace 4 añosRevisado por Kitploit

Más Populares

Ver todos →

Descubre las herramientas más usadas por nuestra comunidad.

Explora todas las herramientas

Explora nuestra colección de herramientas

Ver todas las herramientas →
Compartir

Identificación Automatizada de Riesgos de Seguridad en Sistemas de Producción Ciberfísicos Utilizando Datos de Ingeniería Basados en AutomationML

Este prototipo implementa los métodos presentados en las siguientes dos publicaciones:

  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.

En esencia, identifica fuentes de riesgo de seguridad (es decir, amenazas y vulnerabilidades) y tipos de consecuencias de ataques basándose en artefactos de AutomationML (AML). Los resultados del proceso de identificación de riesgos se pueden utilizar para generar grafos de ataque ciberfísicos, que modelan ciberataques de múltiples etapas que potencialmente conducen a daños físicos. Además, se identifican los efectos en cascada y las consecuencias de los ataques que afectan la calidad del producto.

Instalación

  1. Construir AML2OWL

Este prototipo depende de una versión bifurcada de la implementación de la traducción bidireccional entre AML y OWL para el artículo de ETFA 2019 "Interpreting OWL Complex Classes in AutomationML based on Bidirectional Translation" de Hua y Hein. Clone el , compile los proyectos y ensamble un paquete de aplicación de :

repositorio
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 el Directorio Base de AMLsec

Clone este repositorio, cree el directorio base de la aplicación (generalmente ubicado en el directorio de inicio del usuario) y coloque allí los archivos ubicados en amlsec-base-dir y el JAR de AML2OWL ensamblado (ubicado en aml_owl/target/). El directorio base de AMLsec y la ruta al JAR de AML2OWL deben establecerse en el archivo de configuración usando las claves baseDir y amlToOwlProgram, respectivamente.

  1. Configurar Apache Jena Fuseki

Instale e inicie Apache Jena Fuseki:

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

Si desea ejecutar QualSec, necesita instalar LoLA - A Low Level Petri Net Analyzer.

  1. Construir y Ejecutar la Aplicación

Finalmente, construya e inicie la aplicación usando sbt.

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

Use las banderas -s y -q para ejecutar AMLsec y QualSec, respectivamente.

Uso

Los métodos implementados utilizan un mecanismo de mapeo de información semántica realizado mediante librerías de AML. Estas librerías de extensión de seguridad de AML y librerías de extensión de calidad de AML se pueden reutilizar fácilmente en proyectos de ingeniería importándolas en archivos AML.

Nuevamente, si desea ejecutar el prototipo del método presentado en el artículo de IEEE TDSC, use la bandera -s. La bandera -q, por otro lado, corresponde al método presentado en el artículo de IEEE TII.

Las capacidades de este prototipo se demuestran en casos de estudio (AMLsec, QualSec). Ejecutar este prototipo tal cual generará la base de conocimiento (accesible a través de Fuseki), que también incluye los resultados del proceso de identificación de riesgos y los resultados del caso de estudio.

Además, si ejecuta el prototipo con el caso de estudio por defecto y la bandera -s, se creará el siguiente grafo de ataque ciberfísico podado:

Grafo de Ataque Ciberfísico

Clúster

El prototipo utiliza el framework Akka y es capaz de distribuir la carga de trabajo de identificación de riesgos entre múltiples nodos. Se utilizó como plantilla el ejemplo de trabajadores distribuidos de Akka.

Para ejecutar el clúster con múltiples nodos (ejemplos con bandera -q):

  1. Iniciar Cassandra:
root@kitploit:~
$ sbt "runMain org.sba_research.worker.Main cassandra -q"
  1. Iniciar el primer nodo semilla:
root@kitploit:~
$ sbt "runMain org.sba_research.worker.Main 2551 -q"
  1. Iniciar un nodo front-end:
root@kitploit:~
$ sbt "runMain org.sba_research.worker.Main 3001 -q"
  1. Iniciar un nodo trabajador (el segundo parámetro denota el número de actores trabajadores, por ejemplo, 3):
root@kitploit:~
$ sbt "runMain org.sba_research.worker.Main 5001 3 -q"

Si ejecuta los nodos en máquinas separadas, deberá adaptar la configuración de Akka en el archivo de configuración.

Evaluación de Rendimiento

Las mediciones y archivos de registro obtenidos durante la evaluación de rendimiento están disponibles bajo solicitud.

Cómo Citar

Si utiliza este prototipo en su investigación, considere citar nuestra publicación de IEEE TDSC 2020 o IEEE TII 2022. Siéntase libre de usar las entradas BibTeX de los artículos (TDSC, TII).

Agradecimientos

Los autores agradecen a Yameng An por proporcionar la versión inicial de OntoPLC.

Descargar herramienta