Sal*_*ley 4 python windows security excel
我负责开发一个在世界各地设有办事处的金融机构使用的大型Python/Windows/Excel应用程序.最近,一个国家的法规发生了变化,因此我们被告知我们需要创建一个"锁定"版本的发行版.
在与我的外国同行进行了一些令人沮丧的对话后,似乎他们担心有人可能会误用他们计算机上的python解释器来生成可能用于规避安全性的非标准应用程序.
我最初的建议只是取消对python.exe和pythonw.exe的执行权限:我们的应用程序是一个只使用Python DLL的Excel插件.那些exe文件从未实际使用过.
我的对手仍然关注有人可以对Python DLL进行调用 - 黑客可以利用"exec"函数,例如来自另一种编程语言或能够调用Windows DLL中的函数的虚拟机,例如VBA.
我们可以采取哪些措施来防止我们想要安装的DLL被滥用?在这一点上,我没有想法.我需要找到一种方法来确保Python只运行我们的授权程序.
当然,这个问题有一个荒谬的因素:由于计算机都有Excel和Word,因此它们都有VBA,这是一种众所周知的脚本语言,在某种程度上与Python相当.
当Excel的VBA开放时,担心python显然没有意义,但这是企业政治,我的团队建议使用Python,所以我们需要证明我们的东西可以合理安全.
"合理安全"任意定义为"比Excel和VBA更安全".
你无法赢得这场斗争.因为战斗是错误的.任何人都可以使用任何EXE或DLL.
您需要以不同的方式定义"锁定" - 以您可以成功的方式.
您需要将"锁定"定义为"无法更改.PY文件"或"我们可以审核对.PY文件的所有更改".如果你将比赛场地转移到你可以控制的位置,你就有很小的获胜机会.
获得规定 - 不要相信任何其他人为您解释它们.
绝对确定法规要求 - 不要听别人的解释.