01. 邓良驹 编写更安全的Python代码 使用较新版本的Python3。Python2中可改用raw_input。 小心类型溢出 应对: 使用较新版本的Python3,而不使用发行版OS自带的旧版Python。 捕获并处理溢出错误,可以减少风险。在重要的位置做好防御式 编程,检查好入参的类型与合法的上下限。 >>> range(100**100) Traceback (most recent call last): File "", line 1 SELECT * FROM accounts WHERE uid = '' or '1'='1' 应对: 对外部输入进行完善的检查、过滤、转义操作后,再进行执行。 参考资料:“驹说码事”《注入的原理与防御措施》 https://mp.weixin.qq.com/s/Zd81qlcWJi4H1AD9WzPX7w 小心 PyPI 依赖包 不要以为 Star 多的包就不存在漏洞; 更不要以为 PyPI bin/cvekey.cgi?keyword=python; 12. 定期关注 OWASP https://www.owasp.org/ 的安全报告,并依此排查所负 责代码中是否存在相关缺陷; 13. 多重防御,安全的编码 + 安全的系统配置 + 充分的测试 + 安全的操作规 范。 THANK YOU 事故出于麻痹 安全来于警惕 代码千万行,安全第一行; 编码不安全,老板两行泪! 0 码力 | 18 页 | 988.40 KB | 1 年前3
Python 标准库参考指南 3.7.13 值或是省略,此类错误将通过调用由 onerror 所 指定的处理程序来处理,或者如果此参数被省略则将引发一个异常。 注解: 在支持必要的基于 fd 的函数的平台上,默认会使用rmtree() 的可防御符号链接攻击 的版本。在其他平台上,rmtree() 较易遭受符号链接攻击:给定适当的时间和环境,攻击者 可以操纵文件系统中的符号链接来删除他们在其他情况下无法访问的文件。应用程序可以使 用rmtree exc_info() 所返回的异常信息。由 onerror 所 引发的异常将不会被捕获。 在 3.3 版更改: 添加了一个防御符号链接攻击的版本,如果平台支持基于 fd 的函数就会被使用。 rmtree.avoids_symlink_attacks 指明当前平台和实现是否提供防御符号链接攻击的rmtree() 版本。目前它仅在平台支持基 于 fd 的目录访问函数时才返回真值。 3.3 新版功能. 六进制数码。这可以 被用于在电子邮件或其他非二进制环境中安全地交换数据值。 15.1.3 密钥派生 密钥派生和密钥延展算法被设计用于安全密码哈希。sha1(password) 这样的简单算法无法防御暴力 攻击。好的密码哈希函数必须可以微调、放慢步调,并且包含 加盐。 hashlib.pbkdf2_hmac(hash_name, password, salt, iterations, dklen=None)0 码力 | 1846 页 | 9.09 MB | 9 月前3
Python 标准库参考指南 3.7.13 值或是省略,此类错误将通过调用由 onerror 所指定 的处理程序来处理,或者如果此参数被省略则将引发一个异常。 注解: 在支持必要的基于 fd 的函数的平台上,默认会使用rmtree() 的可防御符号链接攻击的版 本。在其他平台上,rmtree() 较易遭受符号链接攻击:给定适当的时间和环境,攻击者可以操 纵文件系统中的符号链接来删除他们在其他情况下无法访问的文件。应用程序可以使用rmtree exc_info() 所返回的异常信息。由 onerror 所引发 的异常将不会被捕获。 在 3.3 版更改: 添加了一个防御符号链接攻击的版本,如果平台支持基于 fd 的函数就会被使用。 rmtree.avoids_symlink_attacks 指明当前平台和实现是否提供防御符号链接攻击的rmtree() 版本。目前它仅在平台支持基于 fd 的目录访问函数时才返回真值。 3.3 新版功能. The Python Library Reference, 发布 3.7.13 15.1.3 密钥派生 密钥派生和密钥延展算法被设计用于安全密码哈希。sha1(password) 这样的简单算法无法防御暴力攻击。 好的密码哈希函数必须可以微调、放慢步调,并且包含 加盐。 hashlib.pbkdf2_hmac(hash_name, password, salt, iterations, dklen=None)0 码力 | 1961 页 | 9.14 MB | 9 月前3
Python 标准库参考指南 3.6.15 值或是省略,此类错误将通过调用由 onerror 所指定 的处理程序来处理,或者如果此参数被省略则将引发一个异常。 注解: 在支持必要的基于 fd 的函数的平台上,默认会使用rmtree() 的可防御符号链接攻击的版 本。在其他平台上,rmtree() 较易遭受符号链接攻击:给定适当的时间和环境,攻击者可以操 纵文件系统中的符号链接来删除他们在其他情况下无法访问的文件。应用程序可以使用rmtree exc_info() 所返回的异常信息。由 onerror 所引发 的异常将不会被捕获。 在 3.3 版更改: 添加了一个防御符号链接攻击的版本,如果平台支持基于 fd 的函数就会被使用。 rmtree.avoids_symlink_attacks 指明当前平台和实现是否提供防御符号链接攻击的rmtree() 版本。目前它仅在平台支持基于 fd 的目录访问函数时才返回真值。 3.3 新版功能. The Python Library Reference, 发布 3.6.15 15.1.3 密钥派生 密钥派生和密钥延展算法被设计用于安全密码哈希。sha1(password) 这样的简单算法无法防御暴力攻击。 好的密码哈希函数必须可以微调、放慢步调,并且包含 加盐。 hashlib.pbkdf2_hmac(hash_name, password, salt, iterations, dklen=None)0 码力 | 1886 页 | 8.95 MB | 9 月前3
Python 标准库参考指南 3.6.15 值或是省略,此类错误将通过调用由 onerror 所指定 的处理程序来处理,或者如果此参数被省略则将引发一个异常。 注解: 在支持必要的基于 fd 的函数的平台上,默认会使用rmtree() 的可防御符号链接攻击的版 本。在其他平台上,rmtree() 较易遭受符号链接攻击:给定适当的时间和环境,攻击者可以操 纵文件系统中的符号链接来删除他们在其他情况下无法访问的文件。应用程序可以使用rmtree exc_info() 所返回的异常信息。由 onerror 所引发 的异常将不会被捕获。 在 3.3 版更改: 添加了一个防御符号链接攻击的版本,如果平台支持基于 fd 的函数就会被使用。 rmtree.avoids_symlink_attacks 指明当前平台和实现是否提供防御符号链接攻击的rmtree() 版本。目前它仅在平台支持基于 fd 的目录访问函数时才返回真值。 3.3 新版功能. The Python Library Reference, 发布 3.6.15 15.1.3 密钥派生 密钥派生和密钥延展算法被设计用于安全密码哈希。sha1(password) 这样的简单算法无法防御暴力攻击。 好的密码哈希函数必须可以微调、放慢步调,并且包含 加盐。 hashlib.pbkdf2_hmac(hash_name, password, salt, iterations, dklen=None)0 码力 | 1886 页 | 8.95 MB | 9 月前3
Python 标准库参考指南 3.8.20 Chapter 11. 文件和目录访问 The Python Library Reference, 发布 3.8.20 注解: 在支持必要的基于 fd 的函数的平台上,默认会使用rmtree() 的可防御符号链接攻击 的版本。在其他平台上,rmtree() 较易遭受符号链接攻击:给定适当的时间和环境,攻击者 可以操纵文件系统中的符号链接来删除他们在其他情况下无法访问的文件。应用程序可以使 用rmtree shutil.rmtree 附带参数 path。 在 3.3 版更改: 添加了一个防御符号链接攻击的版本,如果平台支持基于 fd 的函数就会被使用。 在 3.8 版更改: 在 Windows 上将不会再在移除连接之前删除目录连接中的内容。 rmtree.avoids_symlink_attacks 指明当前平台和实现是否提供防御符号链接攻击的rmtree() 版本。目前它仅在平台支持基 于 fd 的目录访问函数时才返回真值。 六进制数码。这可以 被用于在电子邮件或其他非二进制环境中安全地交换数据值。 15.1.3 密钥派生 密钥派生和密钥延展算法被设计用于安全密码哈希。sha1(password) 这样的简单算法无法防御暴力 攻击。好的密码哈希函数必须可以微调、放慢步调,并且包含 加盐。 hashlib.pbkdf2_hmac(hash_name, password, salt, iterations, dklen=None)0 码力 | 1927 页 | 9.69 MB | 9 月前3
Python 标准库参考指南 3.8.20 Chapter 11. 文件和目录访问 The Python Library Reference, 发布 3.8.20 注解: 在支持必要的基于 fd 的函数的平台上,默认会使用rmtree() 的可防御符号链接攻击 的版本。在其他平台上,rmtree() 较易遭受符号链接攻击:给定适当的时间和环境,攻击者 可以操纵文件系统中的符号链接来删除他们在其他情况下无法访问的文件。应用程序可以使 用rmtree shutil.rmtree 附带参数 path。 在 3.3 版更改: 添加了一个防御符号链接攻击的版本,如果平台支持基于 fd 的函数就会被使用。 在 3.8 版更改: 在 Windows 上将不会再在移除连接之前删除目录连接中的内容。 rmtree.avoids_symlink_attacks 指明当前平台和实现是否提供防御符号链接攻击的rmtree() 版本。目前它仅在平台支持基 于 fd 的目录访问函数时才返回真值。 六进制数码。这可以 被用于在电子邮件或其他非二进制环境中安全地交换数据值。 15.1.3 密钥派生 密钥派生和密钥延展算法被设计用于安全密码哈希。sha1(password) 这样的简单算法无法防御暴力 攻击。好的密码哈希函数必须可以微调、放慢步调,并且包含 加盐。 hashlib.pbkdf2_hmac(hash_name, password, salt, iterations, dklen=None)0 码力 | 1927 页 | 9.69 MB | 9 月前3
Python 标准库参考指南 3.8.20 值或是省略,此类错误将通过调用由 onerror 所指定 的处理程序来处理,或者如果此参数被省略则将引发一个异常。 注解: 在支持必要的基于 fd 的函数的平台上,默认会使用rmtree() 的可防御符号链接攻击的版 本。在其他平台上,rmtree() 较易遭受符号链接攻击:给定适当的时间和环境,攻击者可以操 纵文件系统中的符号链接来删除他们在其他情况下无法访问的文件。应用程序可以使用rmtree shutil.rmtree 附带参数 path。 在 3.3 版更改: 添加了一个防御符号链接攻击的版本,如果平台支持基于 fd 的函数就会被使用。 在 3.8 版更改: 在 Windows 上将不会再在移除连接之前删除目录连接中的内容。 rmtree.avoids_symlink_attacks 指明当前平台和实现是否提供防御符号链接攻击的rmtree() 版本。目前它仅在平台支持基于 fd 的目录访问函数时才返回真值。 The Python Library Reference, 发布 3.8.20 15.1.3 密钥派生 密钥派生和密钥延展算法被设计用于安全密码哈希。sha1(password) 这样的简单算法无法防御暴力攻击。 好的密码哈希函数必须可以微调、放慢步调,并且包含 加盐。 hashlib.pbkdf2_hmac(hash_name, password, salt, iterations, dklen=None)0 码力 | 2052 页 | 9.74 MB | 9 月前3
Django 官方教程翻译项目counter 指示 for 标签已经循环多少次。 由于我们创建一个 POST 表单(它具有修改数据的作用),所以我们需要小心跨站点请求伪造。 谢天谢地,你不必太过担心,因为 Django 已经拥有一个用来防御它的非常容易使用的系统。 简而言之,所有针对内部 URL 的 POST 表单都应该使用 {% csrf_token %} 模板标签。 现在,让我们来创建一个 Django 视图来处理提交的数据。记住,在教程0 码力 | 103 页 | 1.86 MB | 1 年前3
Python 标准库参考指南 3.9.20 值或是省略,此类错误将通过调用由 onerror 所指定 的处理程序来处理,或者如果此参数被省略则将引发一个异常。 注解: 在支持必要的基于 fd 的函数的平台上,默认会使用rmtree() 的可防御符号链接攻击的版 本。在其他平台上,rmtree() 较易遭受符号链接攻击:给定适当的时间和环境,攻击者可以操 纵文件系统中的符号链接来删除他们在其他情况下无法访问的文件。应用程序可以使用rmtree shutil.rmtree 附带参数 path。 在 3.3 版更改: 添加了一个防御符号链接攻击的版本,如果平台支持基于 fd 的函数就会被使用。 在 3.8 版更改: 在 Windows 上将不会再在移除连接之前删除目录连接中的内容。 rmtree.avoids_symlink_attacks 指明当前平台和实现是否提供防御符号链接攻击的rmtree() 版本。目前它仅在平台支持基于 fd 的目录访问函数时才返回真值。 The Python Library Reference, 发布 3.9.20 15.1.3 密钥派生 密钥派生和密钥延展算法被设计用于安全密码哈希。sha1(password) 这样的简单算法无法防御暴力攻击。 好的密码哈希函数必须可以微调、放慢步调,并且包含 加盐。 hashlib.pbkdf2_hmac(hash_name, password, salt, iterations, dklen=None)0 码力 | 2146 页 | 10.17 MB | 9 月前3
共 26 条
- 1
- 2
- 3













