pp 2019-03-06
Python在编译源代码到优化的字节代码 (如 python-O) 时不会有任何的assert 语句说明。这样的移除使得程序员编写用来抵御攻击的代码保护都形同虚设。
对于这种行为的解释就是Python当中有一个对象集合,代表了最开始的几百个整数,并且会重利用这些整数以节省内存和对象创建。更加令人疑惑的就是,不同的Python版本对于“小整数”的定义是不一样的。
Python 程序的当前工作目录被注入的搜索路径是在 Windows 平台上,而不是脚本位置 。在 UNIX 平台上,每当从 stdin 或命令行读取程序代码 ("-"或"-c"或"-m"选项)时,当前的工作目录都会自动插入到 sys.path :
如果上面的代码被 Python 解释器执行,那么一切写入文件都不会被存储到文件系统中︰
攻击者可以利用 Python 垃圾回收器 (gc.get_objects()) 掌握所有现有对象,并破解任意对象。
针对恶意猴子修补唯一的解决方法就是确保导入的Python 模块是真实完整的 。
Web 应用程序的作者很久以前就开始使用Python了 ,过去十年开发出了大量的 Web 框架。很多人开始利用模板引擎生成动态 web 内容。除了 web 应用程序,模板引擎还在一些完全不同的软件中找到了自己存在的价值,比如说安塞波它自动化工具。
这篇文章不是为了列出Python中存在的所有潜在陷阱和缺陷,而是为了大家提高对于安全风险的认识,希望编程变得更加愉快、生活更加安全。
pytyhon学习资料
python学习资料