查看原文
其他

Python 或允许安全工具查看运行时的操作

Catalin Cimpanu 代码卫士 2022-05-23

 聚焦源代码安全,网罗国内外最新资讯!

翻译:360代码卫士团队

Python 语言中或增加新功能,让运行时 (runtime) 变得“透明”,以便让安全和审计工具查看 Python 可能运行的潜在的危险操作。

Python 目前并不允许安全工具查看运行时所执行的操作。除非其中某个操作生成某些可能引发告警的错误,否则安全工具和审计工具对攻击者可能使用 Python 在系统上执行恶意操作的行为毫不知情。

PEP-551 提议增加两个 API

不过,Python 核心开发人员 Steve Dower 在 PEP-551(Python 增强建议书 551)中提议增加两个新的 API,即 Audit Hook 和 Verified Open Hook,以便安全工具能检测到 Python 何时在执行可能具有危险性的操作。Dower 指出,这两个API并未默认设置好,而是需要修改入口点库来启用任意功能。

Audit Hook API 将提出关于某种 Python 操作类型的告警信息。Dower 指出,这些操作一般都深藏在 Python 运行时或标准库中,如动态码编译、模块导入、DNS解析或使用某些模块如 ctypes。

安全工具或审计工具可能将这些信息视作告警标志,获知某些可疑活动的存在,并标记或阻止 Python 进程在造成任何实质性损害时继续运行。

Verified Open Hook API 机制能够让 Python 运行时获悉可以运行或篡改哪些文件。Dower 解释称,“多数操作系统都具备区分可被执行以及不可被执行文件的机制。例如,可能是在权限字段执行比特,或者是用于检测潜在代码篡改情况的文件内容经验证的哈希。这些都是能够阻止未受既定环境批准的数据或代码执行的安全机制。目前,Python 尚无法在启动脚本或导入模块时进行融合。”

对 Python 的性能影响微乎其微

Dower 已在去年8月提出 PEP-551。早期的测试表明增加这两个 API 对 Python 性能的影响微乎其微,“大多数和基准展示出快1.05倍至慢1.05倍”的结果。

最初计划在2018年6月中旬推出的 Python 3.7 中配备 PEP-551,但最终未能如愿。或许会在后续版本中推出。

Python 是第二个解决“安全光学 (security optics)”问题(即编程和脚本运行时应该提供最低透明度以帮助预防不良行为的概念)的主要脚本引擎。微软正在采取类似措施,增加 PowerShell 对安全工具的透明度。



关联阅读

想知道所连WiFi 网络是否恶意?用开源Python 脚本 PiKarma 就够了


原文链接

https://www.bleepingcomputer.com/news/security/python-may-let-security-tools-see-what-operations-the-runtime-is-performing/


本文由360代码卫士编译,不代表360观点,转载请注明 “转自360代码卫士www.codesafe.cn”。



您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存