近日谷歌开源了一款Python代码安全漏洞扫描工具Atheris,希望开发者在漏洞被利用之前能够用它来发现安全漏洞并修补漏洞。
![0d00912abb82a984dd62d4aa7d58f0a8.png](https://i-blog.csdnimg.cn/blog_migrate/e44393d1a700a26885bd2bf4a8a01f76.jpeg)
python
Atheris介绍
Atheris目前基于Apache-2.0 License开源在github上,Atheris是一个典型的漏洞检查工具,它支持 Python 代码的安全扫描,也支持为 CPython 编写的本机扩展。当检查本地代码时,通过为软件应用程序提供大量随机数据并分析其输出异常和崩溃,为开发人员提供了有关应用程序代码中可能的BUG的存在进行提示。
安装使用
Atheris支持Linux(32 位和 64 位)和 Mac OS X。
Atheris 依赖于与 Clang 一起分发的 libFuzzer。如果您的路径上有足够新版本的版本,则安装非常简单:clang
pip install atheris
使用示例:
import atherisimport sysdef TestOneInput(data): if data == b"bad": raise RuntimeError("Badness!") atheris.Setup(sys.argv, TestOneInput)atheris.Fuzz()
Atheris在Python3.8及以后的代码中效果最好,在Python编程语言中添加的新功能可以帮助Atheris 发现比在较旧版本ython代码中编写的代码更多的错误
展望未来,谷歌表示,它还计划增加对OSS-Fuzz的Atheris漏洞扫描的支持,OSS-Fuzz是一个托管平台,允许开发者扫描开源项目的安全缺陷。以前,这个平台只支持C和C++,并且非常成功用于查找数千个bug每年。截至 2020 年 6 月,OSS-Fuzz 在 300 个开源项目中发现了超过 20,000 个 Bug。