Drupal核心远程代码执行漏洞分析预警是怎样的

Drupal核心远程代码执行漏洞分析预警是怎样的,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。

公司主营业务:成都做网站、网站建设、移动网站开发等业务。帮助企业客户真正实现互联网宣传,提高企业的竞争能力。创新互联公司是一支青春激扬、勤奋敬业、活力青春激扬、勤奋敬业、活力澎湃、和谐高效的团队。公司秉承以“开放、自由、严谨、自律”为核心的企业文化,感谢他们对我们的高要求,感谢他们从不同领域给我们带来的挑战,让我们激情的团队有机会用头脑与智慧不断的给客户带来惊喜。创新互联公司推出古田免费做网站回馈大家。

0x00 漏洞概述

2018年4月26日,Drupal官方发布新补丁和安全公告,修复了编号为CVE-2018-7602的远程代码执行漏洞,此漏洞源于3月28日的更新版中对编号为CVE-2018-7600的漏洞修复不完全,导致补丁被绕过,可以造成任意代码执行。

目前,已经发现针对CVE-2018-7602/CVE-2018-7600漏洞的在野利用,且部分利用代码已经公开。360-CERT对此漏洞进行了技术分析,建议使用Drupal开源内容管理系统的用户尽快进行更新。

0x01 漏洞影响面

影响版本

Drupal 7.x,8.x

修复版本

Drupal 7.59,Drupal 8.5.3,Drupal 8.4.8

修复补丁
  1. 8.x 版本
    https://cgit.drupalcode.org/drupal/rawdiff/?h=8.5.x&id=bb6d396609600d1169da29456ba3db59abae4b7e

  2. 7.x 版本
    https://cgit.drupalcode.org/drupal/rawdiff/?h=7.x&id=080daa38f265ea28444c540832509a48861587d0

注意:此补丁只针对CVE-2018-7602漏洞,针对CVE-2018-7600修复方式查看

CVE-2018-7600:Drupal核心远程代码执行漏洞预警https://cert.360.cn/warning/detail?id=3d862f150b642421c087b0493645b745 。

0x02 漏洞详情

对CVE-2018-7600漏洞的补丁通过过滤带有#的输入来处理请求(GET,POST,COOKIE,REQUEST)中数据。

Drupal核心远程代码执行漏洞分析预警是怎样的

但是Drupal 应用还会处理path?destination=URL形式的请求,发起请求需要对destination=URL中的URL进行URL编码,当对URL中的#进行编码两次,就可以绕过sanitize()
函数过滤。

构造特殊请求绕过过滤代码

POST /drupal-7.59/drupal-7.59/node/9/delete?destination=node?q[%2523][]=passthru%26q[%2523type]=markup%26q[%2523markup]=whoami

其中%2523是对#的两次URL编码。

WEB中间件对%2523解码获得%23

Drupal核心远程代码执行漏洞分析预警是怎样的

绕过sanitize(),stripDangrousValues函数检查。

在Drupal应用对destination URL进行处理时,会再次解码%23,获得#。

Drupal核心远程代码执行漏洞分析预警是怎样的

使用parse_str,并存入options,还需要通过其他步骤来触发漏洞。

Drupal核心远程代码执行漏洞分析预警是怎样的

0x03 补丁分析

增加对destination URL安全处理

Drupal核心远程代码执行漏洞分析预警是怎样的

限定parse_str只对string参数做处理

Drupal核心远程代码执行漏洞分析预警是怎样的

并在可能触发漏洞的文件模块增加处理Drupal核心远程代码执行漏洞分析预警是怎样的

看完上述内容,你们掌握Drupal核心远程代码执行漏洞分析预警是怎样的的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注创新互联行业资讯频道,感谢各位的阅读!


当前名称:Drupal核心远程代码执行漏洞分析预警是怎样的
链接分享:http://myzitong.com/article/jpopjs.html