用于解析和创建maec内容的api。
maec的Python项目详细描述
用于解析、操作和生成Malware Attribute Enumeration and Characterization (MAEC™)内容的python库。
Source: | https://github.com/MAECProject/python-maec |
---|---|
Documentation: | http://maec.readthedocs.org |
Information: | https://maecproject.github.io/ |
Download: | https://pypi.python.org/pypi/maec/ |
概述
python maec库的主要目标是保持对 maec标准和习惯的python实践。有些地方 会发生冲突,目标是让图书馆对这些 熟悉xml模式(但不太熟悉python)以及 有经验的python开发人员希望将maec支持添加到他们的程序中。
目前有两个级别的api用于处理maec内容:
- 一个低级api由自动生成的xml schema-python类提供 绑定。这些绑定是使用generateDS生成的。有了这些,任何一个maec 内容可以从XML解析或写入XML,但需要更多 了解实际的maec模式。这些“绑定类”都位于 在maec.bindings包中。
- 由手工设计的python类组成的高级api。这些 “本机类”的作用更像python程序员 期待。由于它们是手动设计的,因此目前不支持 整个maec标准,但是我们期望的那些对象类型使用得最多 经常。这些“本机类”还支持将其内容导出为 python字典和列表,可以很容易地转换为json。 还支持从json导入。
兼容性
python maec库是针对python 2.7和3.4+进行测试的。
版本控制
python maec库的发行版将给出表单的版本号 major.minor.update.revision,其中major、minor和update 对应于所支持的MAEC版本。使用revision号码 指示python maec库本身的新版本。
安装
python maec库可以通过distutils setup.py脚本安装 包含在根目录中:
$ python setup.py install
python maec库也托管在PyPI上,可以使用pip:
$ pip install maec
依赖关系
maec包依赖于以下python库:
- lxml
- python-cybox
- setuptools(仅当使用setup.py安装时)
对于上述库的Windows安装程序,我们建议查看以下内容: http://www.lfd.uci.edu/~gohlke/pythonlibs。python cybox可以在 https://github.com/CybOXProject/python-cybox/releases。
要在ubuntu上构建lxml,您需要来自 ubuntu包存储库:
- python开发人员
- libxml2 dev
- libxslt1 dev
- zlib1g dev
有关安装lxml的更多信息,请参见 http://lxml.de/installation.html。
反馈
我们欢迎并鼓励错误报告和功能请求。拉取请求是 特别感谢。可以使用github上的问题跟踪程序,加入MAEC Community Email Discussion List,或者直接向maec@mitre.org发送电子邮件。