
Un paquete de Python para interactuar con el marco Mitre ATT&CK
.______ ____ ____ ___ .___________.___________. ______ __ ___
| _ \ \ \ / / / \ | | | / || |/ /
| |_) | \ \/ / / ^ \ `---| |----`---| |----`| ,----'| ' /
| ___/ \_ _/ / /_\ \ | | | | | | | <
| | | | / _____ \ | | | | | `----.| . \
| _| |__| /__/ \__\ |__| |__| \______||__|\__\
Un paquete de Python para interactuar con los marcos MITRE ATT&CK
La versión actual es 7.1.1
pyattck es un framework ligero para los marcos MITRE ATT&CK. Este paquete extrae detalles de los marcos Enterprise, PRE-ATT&CK, Mobile e ICS de MITRE.
pyattck ayuda a organizaciones e individuos a acceder a los marcos MITRE ATT&CK de forma programática. Es decir, puedes acceder a todos los actores, malware, mitigaciones, tácticas, técnicas y herramientas definidos por los marcos Enterprise, Mobile, Pre-Attck e ICS mediante una utilidad de línea de comandos o integrándolo en tu propio código.
Hay muchas razones por las que querrías acceder a estos datos de forma automatizada (scripteada/codificada), pero algunos ejemplos son:
pyattck también ofrece otros beneficios, como la capacidad de proporcionar datos contextuales adicionales. Puedes encontrar más información sobre estos datos aquí, pero lo básico es que pyattck utiliza múltiples repositorios de código abierto para recopilar datos contextuales adicionales, como comandos utilizados para ejecutar una técnica, país y otros detalles sobre un actor malicioso, otras variantes de malware similares a una herramienta/malware definido, etc.
Este contexto adicional es lo que hace que pyattck sea realmente potente y permite a las personas construir pruebas y validaciones más robustas de sus reglas de detección, validar suposiciones de prueba, etc. Realmente hay innumerables formas en que pyattck podría ser utilizado para ayudar a los equipos azul, rojo y púrpura a defender organizaciones (y a sí mismos).
El paquete pyattck recupera todas las Tácticas, Técnicas, Actores, Malware, Herramientas y Mitigaciones de los marcos MITRE ATT&CK, así como cualquier relación definida dentro del conjunto de datos de MITRE ATT&CK (incluyendo sub-técnicas).
Además, las Técnicas, Actores y Herramientas (si corresponde) ahora tienen datos recopilados de recursos de terceros que son accesibles a través de diferentes propiedades. Para obtener información más detallada sobre estas características, consulta External Datasets.
El paquete pyattck te permite:
Puedes instalar pyattck en OS X, Linux o Windows. También puedes instalarlo directamente desde el código fuente. Para instalarlo, consulta los comandos bajo el sistema operativo correspondiente a continuación.
pip install pyattck
git clone https://github.com/swimlane/pyattck.git
cd pyattck
python setup.py install
Para usar pyattck debes crear una instancia de un objeto Attck. Aunque puedes interactuar directamente con cada clase, el uso previsto es a través de un objeto Attck:
from pyattck import Attck
attack = Attck()
Por defecto, las sub-técnicas son accesibles a través de cada objeto de técnica. Puedes desactivar este comportamiento pasando nested_techniques=False al crear tu objeto Attck.
Por ejemplo, el comportamiento predeterminado es el siguiente:
from pyattck import Attck
attack = Attck()
for technique in attack.enterprise.techniques:
print(technique.id)
print(technique.name)
for subtechnique in technique.techniques:
print(subtechnique.id)
print(subtechnique.name)
Puedes acceder a las siguientes propiedades principales en tu objeto Attck:
Una vez que especifiques el marco MITRE ATT&CK, puedes acceder a propiedades adicionales.
Estos son los objetos accesibles bajo la propiedad Enterprise:
Para más información sobre los tipos de objetos bajo la propiedad enterprise, consulta Enterprise.
Estos son los objetos accesibles bajo la propiedad PreAttck:
Para más información sobre los tipos de objetos bajo la propiedad preattck, consulta PreAttck.
Estos son los objetos accesibles bajo la propiedad Mobile:
Para más información sobre los tipos de objetos bajo la propiedad mobile, consulta Mobile.