`

struts2远程执行漏洞学习(一)

 
阅读更多

      首先,这个漏洞已经是比较早的一个了,大概影响范围是struts2.2.1.1以下版本(这个其实是不对的),其次值得参考的参考的网上公开资料有

 

 http://security.ctocio.com.cn/100/11466600.shtml

这是我看过的唯一的一篇对这个漏洞有一定深入讲解的文章。

 

http://www.securityfocus.com/archive/1/521121

这个是一个发散的文章,指出了struts2的高版本的一些人在持续的问题,其中很多都是高危的。

 

http://grepcode.com

    这是一个很关键的网站,在这里你可以直接下载到不同的struts2的版本,以及其中用到的xwork,ognl的jar包以及源代码和api文档。只有自己重现了这个,才可以深入研究struts2的版本演化。

 

 

 

        其次struts2的这个漏洞的实质是ognl的灵活表达问题,我们在struts2中的自动填充变量(就是我们习惯的get,set,而不用手动再繁琐的request.getParmeter())。但是ognl的能力远超这些,他可以在变量及赋值过程访问上下文变量,执行java静态方法,甚至于新建java对象,及调用对应方法。

 

      struts2的漏洞就是缘于此。

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics