这听起来可能是个愚蠢的问题,但我通过做一些安全项目来思考这个问题:不管出于什么原因做一个脚本,在其中使用库听起来不错,因为你会安装这些库,因为它会在你的电脑上执行。
但是,如果脚本,例如,攻击(执行脚本)在某人的计算机上?此人可能没有安装特定的库(例如,用于python的pywhois并获取whois信息)。所以剧本就不能用了?或者在同一个脚本中,您可以在用户没有注意到的情况下使用命令来安装库吗?
发布于 2018-10-25 06:17:40
运行在另一台没有要求的机器上的恶意脚本仍然可以执行,它只需运行“确保”-- pip,然后将pip作为一个子进程,只要它只需要在用户站点中--而不是在系统中--就可以获得所需的库。
Python可以延迟导入,所以第一步是测试,然后捕获一个导入错误,然后运行pip -r requirements.txt,然后再次导入,或者每次只运行pip。
https://stackoverflow.com/questions/52982403
复制相似问题