xss绕过尖括号和双括号_xss防御及绕过-小记1

XSS搞安全的应该都很熟悉。本次并不是说其原理,仅是分享下在测试过程中遇到的案例。本人小白一枚,所以案例大佬们看着可能非常简单,就当是记录下自己笔记吧,不喜勿喷哈。。

关于xss的防御,基本上都是采用输入过滤,输出编码。最近做的一个项目中的某个模块中,进行了输入过滤,采用跳转的形式。比如遇到<>或alert,响应包就会302跳转到固定网址。遇到这种黑名单的可以尝试各种绕过。

有些输入是在input标签中的title或value属性中的值,这些,我们不是非得闭合标签,添加新标签才可以,我们可以直接闭合title或value这个属性,添加新事件,比如鼠标相关的事件,例如onclick、onmousemove。还有的采用多次编码的方式绕过<>的过滤。

0X01  限制输入<>的xss

课程名字处进行了过滤,不能输入<>,我们就尝试输入”οnclick=”prompt(55),第一个引号是用来闭合前面属性的,后一个引号是用来闭合剩下的一个双引号。我们发现,保存后,点击课程名字并不弹框。通过查看元素,发现课程名字不是出现在属性值的位置,这种就需要增加新标签,才可能会执行。

但是,发现在别的地方执行了弹框。查看元素发现,此处显示把课程名字作为title属性的值显示的,那我们的输入就可完美的闭合title属性,增加鼠标点击事件,点击即执行。

这个漏洞差点错过

你可能感兴趣的:(xss绕过尖括号和双括号)