-
Notifications
You must be signed in to change notification settings - Fork 4
Convert MAEC XML to OVAL XML
License
MAECProject/maec-to-oval
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
**************************************************** MAEC XML -> OVAL XML Converter Script Copyright (c) 2012 - 2014 The MITRE Corporation **************************************************** BY USING THE MAEC TO OVAL SCRIPT, YOU SIGNIFY YOUR ACCEPTANCE OF THE TERMS AND CONDITIONS OF USE. IF YOU DO NOT AGREE TO THESE TERMS, DO NOT USE THE MAEC TO OVAL SCRIPT. For more information, please refer to the LICENSE.txt file. ################################################################# Malware Attribute Enumeration and Characterization (MAEC™) XML --> Open Vulnerability and Assessment Language (OVAL®) XML Generation Script Generates OVAL 5.7 definitions/tests/objects from MAEC XML Compatible with content produced using MAEC v4.1/Cyber Observable eXpression (CybOX™) 2.1 v0.94 BETA - extracts files and registry keys 2/24/2014 ################################################################# MAEC - https://maecproject.github.io/ CybOX - https://cyboxproject.github.io/ OVAL - https://oval.cisecurity.org/ ################################################################# -------------------------------------------------------------------------------- -------------------------------------------------------------------------------- Installation Notes This software depends on the python-cybox and python-maec libraries: python-cybox >= 2.1.x.x and <= 2.2.x.x: https://pypi.python.org/pypi/cybox python-maec >= 4.1.x.x and <= 4.2.x.x: https://pypi.python.org/pypi/maec This script was created using Python 2.7.x, and so may not be compatible with 3.0.x. -------------------------------------------------------------------------------- -------------------------------------------------------------------------------- Methodology This script is still a POC, and supports the extraction of registry keys and files from the Actions in a MAEC Package or Bundle XML document that are defined as creating or modifying said object. E.g., the Object from the following Action would be converted: <maec:Action action_status="Success" id="maec-anubis_to_maec-act-1"> <cybox:Name>create file</cybox:Name> <cybox:Associated_Objects> <cybox:Associated_Object type="File" id="maec-anubis_to_maec-obj-2"> <cybox:Defined_Object xsi:type="FileObj:FileObjectType"> <FileObj:File_Name datatype="String">ntos.exe</FileObj:File_Name> <FileObj:File_Path datatype="String">C:\WINDOWS\system32\</FileObj:File_Path> </cybox:Defined_Object> </cybox:Associated_Object> </cybox:Associated_Objects> </maec:Action> This is all done in the Windows context and thus uses the corresponding OVAL constructs. -------------------------------------------------------------------------------- -------------------------------------------------------------------------------- Included Files README: this file. maec_to_oval.py: the MAEC XML to OVAL XML Python driver. cybox_to_oval_processor.py: the main MAEC XML to OVAL XML converter class. maec_oval_mappings.py: the CybOX to OVAL mappings class. oval57.py: the OVAL 5.7 Python bindings used by the script. LICENSE.txt: the terms of usage for this script. -------------------------------------------------------------------------------- -------------------------------------------------------------------------------- Usage Notes There are two main command line parameters for this script: -i: the path to the input MAEC XML file -o: the path to the output OVAL XML file To use the script, run the following command: python maec_to_oval.py -i <maec_xml_file> -o <oval_xml_file> The following optional parameters are supported: -s: Print converted and skipped MAEC Actions -v: Verbose error printing (traceback) For example: python maec_to_oval.py -v -i <maec_xml_file> -o <oval_xml_file> For the latest version of the script, please check the MAEC GitHub Repository -------------------------------------------------------------------------------- -------------------------------------------------------------------------------- About MAEC Malware Attribute Enumeration and Characterization (MAEC™) is a standardized language for sharing structured information about malware based upon attributes such as behaviors, artifacts, and attack patterns. The goal of the MAEC (pronounced "mike") effort is to provide a basis for transforming malware research and response. MAEC aims to eliminate the ambiguity and inaccuracy that currently exists in malware descriptions and to reduce reliance on signatures. In this way, MAEC seeks to improve human-to-human, human-to-tool, tool-to-tool, and tool-to-human communication about malware; reduce potential duplication of malware analysis efforts by researchers; and allow for the faster development of countermeasures by enabling the ability to leverage responses to previously observed malware instances. The MAEC Language enables correlation, integration, and automation. Please visit the MAEC website at https://maecproject.github.io/ for more information about the MAEC Language. -------------------------------------------------------------------------------- -------------------------------------------------------------------------------- Getting Help Join the public MAEC Community Email Discussion List at https://maec.mitre.org/community/discussionlist.html. Email the MAEC Developers at [email protected]. -------------------------------------------------------------------------------- --------------------------------------------------------------------------------
About
Convert MAEC XML to OVAL XML
Resources
License
Stars
Watchers
Forks
Packages 0
No packages published