首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >DIsable Python模块

DIsable Python模块
EN

Stack Overflow用户
提问于 2011-01-30 17:03:26
回答 1查看 3.1K关注 0票数 5

有什么方法可以禁止模块加载到我的系统上吗?假设我想限制我的用户访问子流程或popen2模块。例如PHP的'disabled_functions‘或任何类似的方法来实现相同的功能。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-01-30 17:35:32

正如@Thomas指出的那样,黑名单对于实现任何安全机制来说都是一个相当糟糕的机制。白名单是一种更安全的方法。

但是解释器内部的机制并不是特别优秀,原因有很多:解释器中可以在源代码级别利用的缺陷将允许用户直接绕过在该级别构建的任何机制( PHP团队要求Linux供应商停止将其称为安全问题,因为(a)他们每周都会修复其中一个问题,(b)尝试限制不受信任的用户提供的脚本几乎是一项不可能的任务--对可能不受信任的脚本使用FastCGI或类似的工具)。

Python解释器可能不是为处理恶意输入而设计的,因此不要将其视为恶意输入。

如果您真的想限制不受信任的用户可以使用Python脚本做什么,有几条建议:不要使用mod_python或任何类似的东西。使用您允许的FastCGI或类似工具来指定应该运行脚本的用户帐户,而不是以let服务器用户的身份执行脚本。并学习如何配置SELinux或AppArmor以限制该进程所能做的事情--花一个小时设置这些工具中的一个可能会为您省去巨大的麻烦,而且您还可以对所有失败的小漏洞尝试一笑置之。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4842049

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档