SRC漏洞挖掘经验分享

文件解析造成的XXE

SRC漏洞挖掘经验分享_第1张图片

网站存在一个有意思的功能点,通过上传Excel会将内容显示在页面上,也就是说后端会解析Excel

Excel是通过XML来存储数据的,也就是说网站解析了XML,那么我们就可以在XML中注入语句来尝试攻击

新建一个"新建 Microsoft Excel 工作表.xlsx",将后缀改为.zip并解压

SRC漏洞挖掘经验分享_第2张图片

尝试在"[Content_Types].xml"中注入语句,之后再压缩回.zip然后重命名为"新建 Microsoft Excel 工作表.xlsx"

%b;%c;%xxe;]>

SRC漏洞挖掘经验分享_第3张图片

在自己服务器构造x.dtd,并开启access.log日志

">

使用网站解析Excel,查看日志

SRC漏洞挖掘经验分享_第4张图片

成功调用外部实体

利用方式不用多说了吧,可以利用伪协议读取文件或系统命令执行

">

CSRF与逻辑漏洞的组合拳

图片

登录上后修改密保(忘记密码时通过回答问题来修改密码)进行抓包

SRC漏洞挖掘经验分享_第5张图片

尝试用GET请求来代替POST请求,https://xxx/xxx?a=1&b=2&c=3&x=MTIzNA==

修改成功,说明后端可以接收GET请求,也就是说如果用户在登录的情况下点开了此链接密保就会被修改

但是有个致命的问题需要解决,像a=1这种明显是问题与答案,那么x=MTIzNA==是什么呢

MTIzNA==显然是base64编码后的结果,解码发现是1234,应该是用来进行身份验证的,不同用户的x值不同

幸好发现了一个页面存在水平越权漏洞,可以通过遍历x来获取用户信息

SRC漏洞挖掘经验分享_第6张图片

通过这种方式即可遍历所有用户的x值,也就说可以构造恶意链接了

再结合网站自己的邮件功能即可将恶意链接发送给指定用户,导致用户密码被改

经尝试修改成功,也就是说网站也没有验证Referer

登录处的存储型XSS 

图片

找到一个登录框,直接登录,看到一排按钮

个人 登录日志 设置

本次漏洞就出在这个登录日志上,点开它

IP 时间 状态
x.x.x.x 2022  成功

到这里就应该有思路了,页面显示了用户的IP,也就是存在交互点,那么我们就可以尝试将JS注入IP一栏

状态显然不止有"成功",肯定也有"失败",不然它就没有意义了,也就是说如果存在注入,我们无需登录即可将JS注入用户界面,进而在用户登录后造成攻击

现在的问题是,如何修改IP,也就是探究网站识别用户IP的方式是什么

简单试了一下添加XFF请求头,X-Forwarded-For:

先故意输入错误的密码,然后去掉XFF请求头正常登录

SRC漏洞挖掘经验分享_第7张图片

成功弹框,验证了漏洞存在,关掉弹框看一下,逗号左边就是JS代码了,只不过看不到

IP  时间 状态
x.x.x.x 2022 成功
,x.x.x.x 2022 失败
x.x.x.x 2022 成功

论坛的存储型XSS  

图片

图片

先插一下试试

图片

结果页面显示了并没有出现弹框,说明<>被编码了

添加一个链接然后发表,并进行抓包

SRC漏洞挖掘经验分享_第8张图片

将href值修改为javascript:alert(1);

SRC漏洞挖掘经验分享_第9张图片

成功弹框,也就是说有些标签的<>不会被编码

再找一个绕过方式

添加一个图片然后发表,并进行抓包

SRC漏洞挖掘经验分享_第10张图片

修改为

结果并没有出现弹框,查看前端代码,onerror被替换为空了

尝试双写绕过onerroonerrorr,让中间的onerror被替换为空,最后保留一个onerror

SRC漏洞挖掘经验分享_第11张图片

成功弹框,可以领钱了

本文为免杀三期学员笔记:https://www.cnblogs.com/Night-Tac/category/2231935.html

你可能感兴趣的:(网络安全,SRC,漏洞挖掘,赏金猎人)