Python 新功能:或将允许安全工具查看运行时操作

针对 Python 编程语言的新功能提议之一是希望为运行时添加“透明度”,并让安全和审计工具查看 Python 何时可能运行潜在危险的操作。

在当前的形式下,Python 不允许安全工具查看运行时正在执行的操作。 除非这些操作之一产生可能引起警报的特定错误,否则安全和审计工具就会视而不见,攻击者可能正在使用 Python 在系统上执行恶意操作。

PEP-551 为 Python 提出了两个新的 API

但在 Python Enhancement Proposal 551(PEP-551)中,Python 核心开发人员 Steve Dower 已经提出了两个新的 API,这些 API 将使安全工具能够在 Python 执行潜在危险操作时进行检测。

第一个是 Audit Hook API,它可以引发关于某些类型的 Python 操作的警告消息。

“这些操作通常在 Python 运行时或标准库的深处,比如动态代码编译,模块导入,DNS 解析或使用某些模块,如 ctypes,”Dower 说。

安全或审计工具可能会使用这些消息作为可疑事件的警告标志,并在真正造成危害之前标记或阻止 Python 进程继续。

第二种,验证 Open Hook API,这是是一种让 Python 运行时允许执行或篡改哪些文件的机制。 道尔解释道:

大多数操作系统都有一种机制来区分可以执行的文件和不可执行的文件。 例如,这可能是权限字段中的执行位,或者是文件内容的验证散列,以检测潜在的代码篡改。 这些是防止执行未被批准用于给定环境的数据或代码的重要安全机制。 目前,Python 在启动脚本或导入模块时无法与这些集成。

Python 的性能影响可以忽略不计

道尔去年8月份提出了 PEP-551。 早期的测试表明,添加这两个 API 所带来的性能影响可以忽略不计,“绝大多数基准测试显示速度在 1.05 倍之间”的结果。

最初的计划是让 PEP-551 搭载 Python 3.7,并计划于 2018 年 6 月中旬发布,但根据下个月发布的新功能列表,该提案没有进行最终削减。 但这并不意味着 PEP-551 不会在未来版本的 Python 中提供。

原文发布于微信公众号 - IT派(transfer_3255716726)

原文发表时间:2018-05-31

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏芋道源码1024

从客户端的角度设计后端的接口

2.请求Path,http://www.online.com/api/ [path]

1593
来自专栏Danny的专栏

【项目实战】——Java实现伪静态——urlrewrite

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/huyuyang6688/article/...

1734
来自专栏鸿的学习笔记

Actor模型速览

Actor的核心在于发送消息和接受消息。每一个Actor系统之间的联络都依靠消息的传递,假设现在有两个Actor系统A和B,A会向B发送了一条消息打招呼,或者是...

733
来自专栏非典型程序猿

Elasticsearch数据更新全方位解析

前段时间在项目的crm存储部分,为了满足大量自定义的搜索功能,选择了使用了ES作为后端存储介质。

2.2K12
来自专栏落影的专栏

iOS电商类APP的研发

前言 本文是研发一个在线超市的电商类APP过程中,对架构的整理。 ? 功能: 1、浏览商品、购买商品、切换商店; 2、查看订单、订单投诉、意见反馈; 3、...

73910
来自专栏腾讯移动品质中心TMQ的专栏

测试人员代码分析5步法

前言 随着测试行业的发展,测试攻城狮也越来越关注产品的源码了。在很多团队中,读懂代码的实现是做好测试的重要一步,但是读懂代码这件事非常依赖代码能力,没有什么捷径...

26310
来自专栏py+selenium

py+selenium遇见IE,元素只有name属性【神奇解决】

IE8的问题:IE8不支持getElementByName,而属性中又没有ID,定位难度较大。

3731
来自专栏日常学python

python使用requests+re简单入门爬虫

在学习了python基础后,一心想着快速入门爬虫,因为我就是为爬虫而学的python,所以就找了这个豆瓣电影来爬取。好了,废话不多说,进入正题 1.找到网页并分...

38911
来自专栏大魏分享(微信公众号:david-share)

Java学习笔记第一篇:坦克大战游戏

一、Java学习笔记系列 笔者大学时候学的编程语言是C和汇编,毕业以后并未从事过开发工作,也没有接触过Java。但近两年的PaaS、CI/CD主要是以Java应...

6255
来自专栏北京马哥教育

Python 开发者的 6 个必备库

https://www.oschina.net/translate/6-essential-libraries-for-every-python-develop...

1816

扫码关注云+社区

领取腾讯云代金券