时 特 惠: 本站每日持续稳定更新内部创业教程,一年会员只需98元,全站资源免费下载 点击查看详情
站 长 微 信: muyang-0410

前言

这是作者通过代码审计挖的第一个cve,目前已经在cve官网公开。本身没多少技术含量,主要是分享自己学习代码审计的过程。

复现

cve编号 :CVE-2024-39174.

环境

.2

过程

该cms有一个注册用户发表文章的功能

我们注意到这里使用的编辑器是富文本编辑器,去网上查询该组件的公开漏洞进行尝试,发现了一个存储型xss漏洞。

漏洞利用过程就是通过抓包将原本要发送的文章内容替换为

%3Cp%”>

%3Cbr%2F%3E%3C%2Fp%3E

执行后发现失败

查看html源码发现事件被过滤替换

知道存在函数来过滤注入,所以去源码里审计。发现一个专门用于过滤xss攻击的函数

函数主要部分如下

$ =(‘/[-BCE-FF]+/S’, ”, $);

$parm1 =array(”, ”, ”, ”, ‘meta’, ‘xml’, ‘blink’, ‘link’, ”, ’embed’, ”, ”, ‘frame’, ”, ”, ‘layer’, ”, ‘title’, ‘base’);

$parm2 =array(”, ”, ”, ”, ”, ”, ”, ”, ”, ”, ”, ”, ”, ”, ”, ”, ”, ”, ”, ”, ”, ‘oncut’, ”, ”, ”, ”, ”, ”, ”, ”, ”, ”, ”, ”, ”, ”, ”, ”, ”, ”, ”, ”, ”, ”, ”, ”, ”, ”, ”, ”, ”, ”, ”, ”, ”, ”, ”, ”, ”, ”, ”, ”, ”, ”, ”, ”, ”, ”, ”, ”, ”, ”, ”, ”, ”, ”, ”, ”, ”, ”, ”, ”, ”, ”, ”, ”, ”, ”, ”, ”, ”, ”, ”, ”, ”, ”, ”, ”, ”, ”, ”, ”, ”, ”, ”, ”, ”, ”, ”, ”, ”, ”, ”, ”, ”, ”, ”, ”, ”, ”, ”, ”, ”, ”);

函数会将所有大写字符替换为小写,所以不存在大小写绕过

于是开始思考能不能通过黑名单外的js事件来执行代码onbeforepaste,通过查询比较发现了方法

简单来说该方法和一样,都是当用户点击目标元素时触发。

所以构造

%3Cp%”>

%3Cbr%2F%3E%3C%2Fp%3E

成功执行

尝试在正常的图片中添加该方法,使其更具隐蔽性

发现无法直接弹框onbeforepaste,但是事件还是可以执行的,实际中可以考虑外联xss平台进行盗取操作

限 时 特 惠: 本站每日持续稳定更新内部创业教程,一年会员只需98元,全站资源免费下载 点击查看详情
站 长 微 信: muyang-0410