- 可以对file文件删除,高危操作
eval("__import__('os').remove('file')")
namespace = {}
eval("__import__('os').remove('file')", namespace)
print(namespace)
# 输出 {'__builtins__': {'__name__': 'builtins' ...
- 可以避免eval函数对python内建方法的调用,无法执行文件删除等高危操作,但是无法避免恶意的 cpu 计算资源占用问题
namespace = {'__builtins__': {}}
eval("__import__('os').remove('file')", namespace)
print(namespace)