struts2 漏洞 和 缓存攻击

本文主要讲我对漏洞的探索和探索过程中发现的一个可以进行缓存攻击的坑。

问题

struts2 的漏洞在网上已经够热闹了,各个技术站点都是头条显示,微博上也有大佬转发。

这个漏洞的危害行在于允许执行远程命令,直接攻击服务器,危害无穷;根源在于struts2框架把用户输入的数据当作命令执行了,这也是一切注入估计的根源。

今天旁边的同事soul在调试官方给出的可攻击的demo,想看看到底是怎么攻击;我好奇的是既然攻击可以远程启动一个子进程的话,那么那些输入的java代码应该会被编译,然后再执行,如果是这样的话,这框架不会是对每个输入都进行动态编译吧,这会很影响性能的,所以我想看看struts2到底是怎么处理的,就看我同事调试。
继续阅读