EyalSec/es-python
GitHub: EyalSec/es-python
es-python 是一个安全加固版的 Python 运行时,通过运行时监控在代码实际执行时检测和拦截各类注入攻击,弥补静态分析误报率高的问题。
Stars: 1 | Forks: 0

# es-python
**这是 Python 的安全加固版本,能够在代码运行时检测并拦截注入攻击。**
[](https://eyalsec.com)
[](https://eyalsec.com/docs)
`es-python` 是 [EyalSec](https://eyalsec.com) 背后的 runtime。你可以将其安装在
常规的 Python 旁边,无需任何修改即可运行你现有的程序和库。在你的程序运行时,`es-python` 会监视
到达危险操作的不受信任数据,并将其报告到你的仪表板,或者在它
运行之前将其拦截。
## 它能捕获的内容
大多数现实世界攻击背后那种不受信任的数据到达 sink 的模式:
- SQL injection
- Command injection
- Path traversal
- 不安全的反序列化
- 服务端代码注入 (`exec` / `eval`)
- ……以及更多
它已经在 Django 中标记出了两个严重的 CVE。
## 它与静态分析的区别
静态扫描器会在代码运行前阅读你的源代码,并猜测可能存在的 bug。
`es-python` 会在程序实际运行时进行监控,并且只报告确实
到达危险操作的不可信数据,因此它能以极少的误报发现真实的、可利用的问题,并能在 runtime 拦截它们。
## 快速开始
1. 登录并在你的 [EyalSec 仪表板](https://eyalsec.com)上添加一台机器。
2. 运行它提供给你的单行安装程序。`es-python` 会安装在你的
常规 Python 旁边。
3. 使用 `es-python` 而不是 `python` 运行你的应用程序。你的代码和
库将保持不变运行。
4. 在你的仪表板上查看检测结果,并将机器切换到 Report and Raise
模式,以拦截危险操作,同时仍会记录它们。
完整指南:**[eyalsec.com/docs](https://eyalsec.com/docs)**。
## 关于本仓库
这个仓库是 `es-python` 的公开主页和文档。
runtime 通过 EyalSec 仪表板安装程序交付到你的机器上;
这里没有源码可供构建。请从 **[eyalsec.com](https://eyalsec.com)** 开始。
Python 是 Python Software Foundation 的商标。EyalSec 未
获得 PSF 的附属机构认可或背书。
标签:CISA项目, DOE合作, Python, RASP, 代码安全, 无后门, 漏洞枚举, 漏洞防御, 运行时应用自我保护, 逆向工具