首先,正常打开I春秋页面(https://bbs.ichunqiu.com/portal.php)
然后手贱一下加上一个alert(1)
试试~(https://bbs.ichunqiu.com/portal.ph p?a=alert(1)
)
尝试利用
我去=v=。这个WAF
(加速乐)很强,这都给拦了,但是作为一个捡漏洞的人来讲,要别人交互的漏洞都是低位和不收的,而且这个是要用户打开链接才可以被拦截,但是等下就会正常显示,那用户点击后发现会显示这个页面不可能再次点击把,那么就应该想想如何提升危害,然后我发现了有个好玩的
构造代码
首先我在本地尝试一下,创建一个HTML
文件,代码是
1 |
|
2 | <html lang="en"> |
3 | <head> |
4 | <meta charset="UTF-8"> |
5 | <title>拦截吧(你打不开i春秋了)</title> |
6 | </head> |
7 | <body> |
8 | <img src="https://bbs.ichunqiu.com/portal.php?a=alert(1)" alt=""> |
9 | </body> |
10 | </html> |
然后在浏览器处打开
然后再尝试打开I春秋
我来解释一下为啥子~因为img
标签设置的src
属性是https://bbs.ichunqiu.com/portal.php?a=alert(1)
,所以打开页面会加载https://bbs.ichunqiu.com/portal.php?a=alert(1)
这个URL
,然后我们访问这个URL
的话会被WAF
拦截,导致无法访问I春秋
利用
我们可以看到I春秋
回复处可以加载图片,如下(随便打开一个文章:https://bbs.ichunqiu.com/thread-46084-1-1.html)
上传的图片是:https://bbs.ichunqiu.com/uc_server/avatar.php?uid=340720&size=middle
那么我想让别人访问这个文章就显示WAF
拦截页面如何搞? 嘿嘿,可以在链接后面加个&a=alert(1)
,变成https://bbs.ichunqiu.com/uc_server/avatar.php?uid=340720&size=middle&a=alert(1)
注意:先发一条评论然后点击编辑然后插入这段代码
1 | [img=120,120]https://bbs.ichunqiu.com/uc_server/avatar.php?uid=340720&size=middle&a=alert(1)[/img] |
如下
然后再次访问 https://bbs.ichunqiu.com/thread-46084-1-1.html
可以看到加载了,那么刷新一下~
那么,我如果想恶意破坏的话,我可以在每个文章那里加上这个代码(评论),导致每个看文章的人无法正常访问I春秋~~
漏洞案例复现
利用条件:
1、退出的Url没有Token等验证
2、可以有或者其他加载资源的标签
首先,知道某网站的退出链接是http://www.xxx.com/exit。
那么我们可以去找到论坛留言处、头像处、背景图片处将Url设置为http://www.xxx.com/exit,那么当用户每次访问的时候都会退出。如下是一个漏洞案例
1、打开Url:http://xxxxxx/forum.php?id=马赛克 (随便找的一个帖子),然后评论一下,并且抓包加入恶意代码,如下
加入的代码是 [img]http://xxxxxx/logout?client_id=1[/img]
2、然后打开帖子
可以看到已经退出了~
利用思路
上面是一个利用思路,但是这个只是评论处的利用,其实还有很多可以,如下几列
1、可以利用Csrf漏洞结合,把头像、个人背景等img的地址修改为退出url
2、利用越权改头像把图片地址改成退出地址,然后其他用户一登录就退出,增加危害~
3、有些网站聊天处可以发图片,那么可以发送一个退出Url给他,导致退出(单次的,低危害)
思路扩展
1、有个get
请求的csrf
,但是严格的验证了referer
为www.a.com
,那么可以在www.a.com
中插入一个外链,然后把外链地址改为get
请求的csrf
地址,就可以绕过。