您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

Python'eval'用于列表反序列化的安全性

Python'eval'用于列表反序列化的安全性

这确实是危险的,最安全的选择是ast.literal_eval(请参阅标准库中的ast模块)。当然,您可以构建和更改一个ast,以便在评估结果AST之前(当其取决于文字时)提供变量评估等。

start的可能利用是eval从它可以动手的任何对象开始(True在这里说),然后通过.__ class_转到其类型对象,依此类推,直到object,然后获取其子类…基本上它可以到达任何对象类型并破坏破坏。我可以更具体一些,但我不希望在公共论坛上使用(该漏洞众所周知,但是考虑到仍然有很多人忽略它,将其透露给脚本小子可能会使情况变得更糟…只是避免eval未经消毒的情况而已)用户输入并从此过上幸福的生活!-)。

python 2022/1/1 18:31:12 有202人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶