加入收藏 | 设为首页 | 会员中心 | 我要投稿 晋中站长网 (https://www.0354zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 运营中心 > 建站资源 > 策划 > 正文

一文看懂Python沙箱逃逸

发布时间:2019-05-23 06:56:07 所属栏目:策划 来源:Macr0phag3
导读:让用户提交 Python 代码并在服务器上执行,是一些 OJ、量化网站重要的服务,很多 CTF 也有类似的题。为了不让恶意用户执行任意的 Python 代码,就需要确保 Python 运行在沙箱中。沙箱经常会禁用一些敏感的函数,例如 os,研究怎么逃逸、防护这类沙箱还是蛮

exec command in _global 这一句就把很多 payload 干掉了,由于 exec 运行在自定义的全局命名空间里,这时候会处于restricted execution mode,这里不赘述了,感兴趣可以看这篇文章:传送门。exec 加上定制的 globals 会使得沙箱安全很多,一些常规的 payload 是没法使用的,例如:

  1. >>> ''.__class__.__mro__[-1].__subclasses__()[71]._Printer__setup.__globals__ 
  2. restricted attribute 
  3. >>> getattr(getattr(__import__('types'), 'FileType')('key'), 're''ad')() 
  4. file() constructor not accessible in restricted mode 

(编辑:晋中站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

热点阅读