在最近的一次SRC打零工中,绕过了一个蛮有意思的xss防御

在上面的参数中address 可以插入<>,但不可以插入" ',会被\给反码成字符串
而cb参数就都可以插入

从我上面输入的字符串可以分析,这里的防御是在<>之间如果有任一字符串的话,就会被删除
经过几分钟的琢磨后发现好像所有xss payload都是要在<>里面的
然后我注意到adress参数的输出内容是在cb参数内容的后面的
于是我产生了一个想法,在cb参数里面加上<svg/onload=alert(document.cookie),然后adress参数里面加上>用于闭合前面cb参数的xss payload

发现没有没有弹框,加上双引号<svg/onload="alert(document.cookie)"


弹框成功!!!