挖反射xss,最重要的就是要会接化发,不会接化发,你就不能说自己会挖反射xss。
接,就是要看html源码,从源码里面找出可能反射的参数,看看下面,var terms_style:
化,就是把它变成url的参数,terms_style, terms, style, term, 你能猜出来算我输。
没错, 是style~
看, 这就化出来了。
然后就是发,发就是把荷载发出去。
先轻轻地注入” 符号,很好啊,没转义,没过滤。
我反手就是松果弹抖闪电鞭。
一鞭,style=xxxxxx"-alert(1)-"
它挡住了,有waf。
二鞭,style=xxxxxx"-confirm(1)-"
三鞭,style=xxxxxx"-prompt(1)-"
四鞭,style=xxxxxx"-write(1)-"
它又挡住了。它说这样不行。
我说我可以。这次我不用‘-’, 我用“;”, 这是发劲 。我不光用‘;’ 还用 a=1放在前面迷惑它。
它上当了啊。
我就5鞭。
style=xxxxxx";a=1;alert(1)//
5鞭我就过去了啊。
然后我就提交啊,这就250刀到手了啊“”
然后换一个地方,挪一下窝啊,因为一个路径只接受一个xss,还是接化发。
接, liso_rtar;
化, liso, rtar;
很好啊,两个参数都行, 像上面那样直接发出去就行。
liso=xxxxxx";a=1;alert(1)//
又是250刀。
对了, 这个厂商页面显示xxxx.com, 没有“*” 号,貌似只接受主站的漏洞,但是又没有明确表示子域名不行
所以呢, 我就试试子域名行不行,很快啊,随手又挖了一个子域名的。
年轻人不讲武德啊,从它这句话意思我知道,它只是不收这个子域名,其他子域名还是收的。
很快啊,又是一个子域名的反射xss, 老外就是实在,子域名的xss又给了250刀。
然后我又回到主站,我要榨干主站所有的xss。
然后不停换地方,挪窝。
然后换一个路径啊,然后换一个路径啊,然后换一个路径啊,然后换一个路径啊,
然后换一个路径啊,然后换一个路径啊,然后换一个路径啊,然后换一个路径啊。
然后换一个路径啊,然后换一个路径啊,然后换一个路径啊……
看见一个路径, 感觉会多汁,还是接化发。
年轻人不讲武德, 一个页面那么多变量,是要累死我这个68岁的老头,瞄了几眼,rtar有点眼熟啊,记性不好的朋友呢, 可以翻一下前面几张图,我随手打出化劲, 把rtar化了出去。
哎, 它就反射了。
很好,一鞭, 两鞭, 三鞭。
很快啊, 荷载我就构造成功了。
rtar=%27};%0Aa=alert,b=document.domain,a(b);%0Avar%20a%20={//
又是一个250 刀到手。
250 * 4= 1000 刀, 一共1000刀 xss, 挖了两个晚上的xss成果。还有脸滚键盘的时候, 看见了搜索文件那个地方。
有点奇怪,试一下一下,发现有dos ,只要输入字符串够长,就会有dos, 加上dos的250, 一共1250。
两个晚上的全部成果。
我测试的时候我还用了各种扫描器,直接丢路径, 这几个xss 都扫不出来,除非我把参数带上,不过要是真把参数带上了,我随便拿一个扫描器都能出结果。所以很多时候你扫描器没扫到xss,只是因为它没get到这个参数,有时候甚至路径都没get到。所以很多人看h1报告觉得xss很简单, 但死活挖不到, 就是因为不会接化发,漏洞本身是简单的, 难点在于找到那个可能存在漏洞的点。