为什么干流网站无法捕获 XSS 缝隙?
二十多年来,跨站脚本(简称 XSS)缝隙一直是干流网站的心头之痛。为什么过了这么久,这些网站仍是对此类缝隙束手无策呢?
关于最近 eBay 网站曝出的跨站脚本缝隙,你有什么主意?为什么会呈现这样的漏网之鱼?一个如此大规模的网站,不应该具有牢靠的网关安全技能以阻挠任何情况下的 XSS 进犯么?
即使从上世纪 90 时代开端,跨站脚本缝隙就现已为人们所熟知。时至今日,它仍在贻害为数不少的网站。大多数干流网站,包括谷歌,CNN,PayPal 以及 Facebook,都曾受过 XSS 缝隙的影响。该缝隙也终年呈现在 CWE/SANS 前 25 个最危险的编程过错、OWASP 前 10 个最丧命的 Web 运用安全危险之类的榜单。
XSS 进犯与大多数运用层进犯(比方 SQL 注入进犯)不同,因为它进犯的是运用的用户,而非运用自身或运用服务器。这类进犯会往 Web 运用的内容中注入代码,通常是JavaScript 之类的客户端代码。大多数网站都有许许多多的注入方位,包括搜索框、反应表格,cookie 以及论坛等。凭借 XSS 缝隙,黑客能够盗取数据,操控用户的会话,运转歹意代码,或操作受害用户浏览器中显现的内容。
像 eBay 这样的网站,简直彻底根据用户发生的内容,通常在用户的项目描述部分包括许多活动内容(Active Content),比方 JavaScript 和 Flash。因为网站有必要与用户互动,接纳来自用户的输入、回来数据,这意味着,进犯者也能够直接与网站互动,然后穿破传统的外围安全防护。除非一切用户供给的内容都通过严厉查看,XSS 进犯代码就有或许注入拍卖清单页面,然后影响每个拜访该页面的用户。用户输入的一切内容(表单数据、cookie、邮件、文件、图片等)都应该视为不行信赖,需求阅历查看,删去其间或许被歹意运用的字符与字符串,才干继续履行脚本或传给数据库。
导致 eBay 这样的大网站继续遭到 XSS 进犯的一大原因,是这些网站过于杂乱,实时生成的网页常常会包括许多外部站点的内容。这使得测验阶段,枚举用户与运用交互的一切排列组合变得不太实际,继而导致 XSS 漏网之鱼的呈现。
话虽如此,eBay 竟然没有一套更为严厉的代码查看流程(近几周发现了多个 XSS 缝隙),仍是有些令人吃惊。用于测验 XSS 缝隙的东西其实许多,它们都能在代码上线之前有用查找缝隙。此外,开发者也能够运用安全操控库(比方 OWASP 的企业安全 API 或微软的反跨站脚本库),而不需求自己编写验证查看。并且,比方运转时运用自我维护( RASP )等网关安全技能也有助于检测并防护对 XSS 缝隙的进犯。因而,如此干流的一个大网站(eBay),却没能有用防护如此广为人知的安全缝隙,实在是有些让人绝望。
现在,多样化的进犯手法层出不穷,传统安全解决方案越来越难以应对网络安全进犯。 OneRASP 实时运用自我维护 技能,能够为软件产品供给精准的实时维护,使其免受缝隙所累。想阅览更多技能文章,请拜访OneAPM 官方技能博客。