css防注⼊,CSS注⼊
css就已被安全研究⼈员运⽤于渗透测试当中。使⽤属性选择器和iFrame,并通过css注⼊来窃取敏感数据的⽅法。但由于该⽅法需要iFrame,⽽⼤多数主流站点都不允许该操作,因此这种攻击⽅法并不实⽤。这⾥为⼤家详细介绍⼀种不需要iframe且只需10秒,就能为获得CSRF token的⽅法。
什么是css注⼊
⼤家对XSS攻击都⾮常熟悉了,可能很少关注到css注⼊攻击,以下⾏为有可能受到css注⼊攻击:
从⽤户提供的URL中引⼊css⽂件
css 属性选择器css代码中采⽤了⽤户的输⼊数据
原理
css属性选择器让开发者可以根据属性标签的值匹配⼦字符串来选择元素。 这些属性值选择器可以做以下操作:
1.如果字符串以⼦字符串开头,则匹配;
2.如果字符串以⼦字符串结尾,则匹配;
3.如果字符串在任何地⽅包含⼦字符串,则匹配;
4.属性选择器能让开发⼈员查询单个属性的页⾯html标记,并且匹配它们的值。
⽽在实际环境中,如果⼀些敏感信息会被存放在html标签内,如CSRF token存储在隐藏表单的属性值中,这使得我们可以将css选择器与表单中的属性进⾏匹配,并根据表单是否与起始字符串匹配,加载⼀个外部资源,例如背景图⽚,来尝试猜测属性的起始字母。通过这种⽅式,攻击者可以进⾏逐字猜解并最终获取到完整的敏感数值。
防御策略
想要解决这个问题受害者可以在其服务器实施内容安全策略(CSP),防⽌攻击者从外部加载CSS代码。
总结
作为前端开发者,我们与⽤户最近,也是⽹络安全防护的第⼀道线,要时刻关注来⾃各⽅⾯的⽹络攻击,保障⽤户信息的安全。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。