nbeguier/opendocument-security
GitHub: nbeguier/opendocument-security
OpenDocument格式文档安全分析工具
Stars: 9 | Forks: 0
# OpenDocument 安全
[](https://travis-ci.com/nbeguier/opendocument-security) [](https://www.python.org/) [](https://github.com/nbeguier/opendocument-security/blob/master/LICENSE)
OpenDocument 安全工具箱
## 前置条件
```
pip3 install -r requirements.txt
```
### 使用方法
```
# 经典 OpenDocument 示例
$ python opendocument_security.py examples/vba-nested-ole.odt
> Parsing OpenDocument examples/vba-nested-ole.odt
> This OpenDocument contains macro !
> Object 2/Basic/Standard/TEST.xml
> Object 2/Basic/Standard/script-lb.xml
> Basic/Standard/TEST.xml
> Basic/Standard/script-lb.xml
> Entering in content.xml
> Found event listener: {'{http://www.w3.org/1999/xlink}href': 'vnd.sun.star.script:Standard.TEST.Flag?language=Basic&location=document', '{http://www.w3.org/1999/xlink}type': 'simple', '{urn:oasis:names:tc:opendocument:xmlns:script:1.0}language': 'ooo:script', '{urn:oasis:names:tc:opendocument:xmlns:script:1.0}event-name': 'dom:load'}
> Found event listener: {'{http://www.w3.org/1999/xlink}href': 'vnd.sun.star.script:Standard.TEST.Flag?language=Basic&location=document', '{http://www.w3.org/1999/xlink}type': 'simple', '{urn:oasis:names:tc:opendocument:xmlns:script:1.0}language': 'ooo:script', '{urn:oasis:names:tc:opendocument:xmlns:script:1.0}event-name': 'office:save'}
> Entering in Object 1/content.xml
> Exiting Object 1/content.xml
> Entering in Object 2/content.xml
> Found event listener: {'{http://www.w3.org/1999/xlink}href': 'vnd.sun.star.script:Standard.TEST.Flag?language=Basic&location=document', '{http://www.w3.org/1999/xlink}type': 'simple', '{urn:oasis:names:tc:opendocument:xmlns:script:1.0}language': 'ooo:script', '{urn:oasis:names:tc:opendocument:xmlns:script:1.0}event-name': 'dom:load'}
> Found event listener: {'{http://www.w3.org/1999/xlink}href': 'vnd.sun.star.script:Standard.TEST.Flag?language=Basic&location=document', '{http://www.w3.org/1999/xlink}type': 'simple', '{urn:oasis:names:tc:opendocument:xmlns:script:1.0}language': 'ooo:script', '{urn:oasis:names:tc:opendocument:xmlns:script:1.0}event-name': 'office:save'}
> Exiting Object 2/content.xml
> Exiting content.xml
> Closing OpenDocument examples/vba-nested-ole.odt
# 扁平 OpenDocument 示例
$ python opendocument_security.py examples/only-ole-object.fodt
> Parsing Flat OpenDocument examples/only-ole-object.fodt
> This Flat OpenDocument contains macro !
> []
> Entering in examples/only-ole-object.fodt
> Found event listener: {'{urn:oasis:names:tc:opendocument:xmlns:script:1.0}language': 'ooo:script', '{urn:oasis:names:tc:opendocument:xmlns:script:1.0}event-name': 'dom:load', '{http://www.w3.org/1999/xlink}href': 'vnd.sun.star.script:Standard.Module1.Flag?language=Basic&location=document', '{http://www.w3.org/1999/xlink}type': 'simple'}
> Found event listener: {'{urn:oasis:names:tc:opendocument:xmlns:script:1.0}language': 'ooo:script', '{urn:oasis:names:tc:opendocument:xmlns:script:1.0}event-name': 'office:save', '{http://www.w3.org/1999/xlink}href': 'vnd.sun.star.script:Standard.Module1.Flag?language=Basic&location=document', '{http://www.w3.org/1999/xlink}type': 'simple'}
> Exiting examples/only-ole-object.fodt
> Closing Flat OpenDocument examples/only-ole-object.fodt
```
# 许可证
根据 [Apache 许可证](https://github.com/nbeguier/opendocument-security/blob/master/LICENSE), 版本 2.0 ("许可证") 许可。
# 版权
版权所有 2020-2023 Nicolas BEGUIER; ([nbeguier](https://beguier.eu/nicolas/) - nicolas_beguier[at]hotmail[dot]com)
标签:OpenDocument, Python, XML 请求, 事件监听, 代码构建, 依赖管理, 安全开发, 安全测试, 安全漏洞检测, 宏病毒检测, 开源框架, 持续集成, 攻击性安全, 无后门, 脚本分析, 许可证, 逆向工具