xss 全编码两次_XSS平台简单使用

XSS常用语句及编码绕过

XSS常用的测试语句有:

常见的XSS的绕过编码有JS编码、HTML实体编码和URL编码

JS编码

JS提供了四种字符编码的策略,如下所示。

三个八进制数字,如果个数不够,在前面补0,例如“e” 的编码为“\145” ;

两个十六进制数字,如果个数不够,在前面补0,例如"e" 的编码为"\x65" ;

四个十六进制数字,如果个数不够,在前面补0,例如"e" 的编码为“\u0065”;

对于一些控制字符,使用特殊的C类型的转义风格(例如和\r) 。

HTML实体编码

命名实体:以&开头,以分号结尾的,例如"

字符编码:十进制、十六进制ASCII码或Unicode字符编码,样式为"数值;",例如"

URL编码

这里的URL编码,也是两次URL全编码的结果。如果alert被过滤,结果为%25%36%31%25%36%63%25%36%35%25%37%32%25%37%34。

在使用XSS编码测试时,需要考虑HTML渲染的顺序,特别是针对多种编码组合时,要选择合适的编码方式进行测试。

使用XSS平台测试XSS漏洞

XSS在线平台

首先在XSS平台注册账并登录,单击"我的项目”中的“创建” 按钮,页面中的名称和描述是分类的,随意填写即可。

勾选“默认模块”选项后单击"下一步”按钮。这里不要太多模块都勾选,非常非常容易导致JS报错,如果报错,那么可能你就收不到对方的中招信息了。尽量只勾选一个或两个。这里说明一下,注意上方的红框,这里最好是复制上方第一个红色方框中的内容,例如: 这个就是项目给你的代码,这里说一下你需要测试的网站是https的网站且你的XSS平台也支持https那么你可以把这个代码改成 这样。

这里还要说明一下,其实当网站前面是//的时候,代码会自动适配网站,如果对方网站是https的那么代码会自动从https加载,如果对方网站是http的那么代码会从http加载。所以,默认的这种方式是最好的插入方式。页面上显示了多种利用代码,在实际情况中, 一般会根据HTML源码选择合适的利用代码,以此构造浏览器能够执行的代码,这里选择第二种利用代码。

将利用代码插入到存在XSS漏洞的URL后,检查浏览器缓存加载文件。发现浏览器成功执行XSS的利用代码

然后如果对方中招了,那么你的XSS平台就会有收到对方的信息。

回到XSS平台,可以看到我们已经获取了信息,其中包含来源地址、cookie、IP、 浏览器等,如果用户处于登录状态,可修改cookie并进入该用户的账户。

XSS漏洞修复建议

因为XSS漏洞涉及输入和输出两部分,所以其修复也分为两种。

过滤输入的数据,包括 '、"、、on* 等非法字符。

对输出到页面的数据进行相应的编码转换,包括HTML实体编码、JavaScript编码等。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值