为什么主流网站无法捕获 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 官方技术博客]。
本文转自 OneAPM 官方博客
为什么主流网站无法捕获 XSS 漏洞?的更多相关文章
- 通过代码审计找出网站中的XSS漏洞实战(三)
一.背景 笔者此前录制了一套XSS的视频教程,在漏洞案例一节中讲解手工挖掘.工具挖掘.代码审计三部分内容,准备将内容用文章的形式再次写一此,前两篇已经写完,内容有一些关联性,其中手工XSS挖掘篇地址为 ...
- 通过Web安全工具Burp suite找出网站中的XSS漏洞实战(二)
一.背景 笔者6月份在慕课网录制视频教程XSS跨站漏洞 加强Web安全,里面需要讲到很多实战案例,在漏洞挖掘案例中分为了手工挖掘.工具挖掘.代码审计三部分内容,手工挖掘篇参考地址为快速找出网站中可能存 ...
- 使用Fiddler的X5S插件查找XSS漏洞
OWASP top 10的安全威胁中的CrossSite Scripting(跨站脚本攻击),允许攻击者通过浏览器往网站注入恶意脚本.这种漏洞经常出现在web应用中需要用户输入的地方,如果网站有XSS ...
- 快速找出网站中可能存在的XSS漏洞实践
笔者写了一些XSS漏洞的挖掘过程记录下来,方便自己也方便他人. 一.背景 在本篇文章当中会一permeate生态测试系统为例,笔者此前写过一篇文章当中笔者已经讲解如何安装permeate渗透测试系统, ...
- 快速找出网站中可能存在的XSS漏洞实践(一)
一.背景 笔者最近在慕课录制了一套XSS跨站漏洞 加强Web安全视频教程,课程当中有讲到XSS的挖掘方式,所以在录制课程之前需要做大量实践案例,最近视频已经录制完成,准备将这些XSS漏洞的挖掘过程记录 ...
- Struts网站基于Filter的XSS漏洞修复
下面的代码只支持struts2框架中的xss漏洞 第一步,创建过滤器XssFilter : package com.ulic.ulcif.filter; import java.io.IOExcept ...
- XSS跨站脚本攻击实例讲解,新浪微博XSS漏洞过程分析
2011年6月28日晚,新浪微博遭遇到XSS蠕虫攻击侵袭,在不到一个小时的时间,超过3万微博用户受到该XSS蠕虫的攻击.此事件给严重依赖社交网络的网友们敲响了警钟.在此之前,国内多家著名的SNS网站和 ...
- 利用窗口引用漏洞和XSS漏洞实现浏览器劫持
==Ph4nt0m Security Team== Issue 0x03, Phile #0x05 of 0x07 |=----------------- ...
- 【渗透课程】特别篇-主流网站程序Oday大全以及拿shell思路
版权和内容说明: 这篇文章不是本站编写,是从网络上摘抄的,但是经过了本站的改写优化,并将内容,格式规范化. 本篇说明:这篇文章结合了前辈们前几年一路挖掘出来的主流程序漏洞以及思路, 小编写在前面是想让 ...
随机推荐
- python的http请求应用--每日签到
写点python吧,python其实是个很好用的工具,作为浇水语言,跟其他语言联系也很紧密,想用什么包直接import,导入ctypes调用底层函数库,导入web相关的包可以轻松写爬虫,今天我们写的跟 ...
- iframe 父子窗口相互之间调用语法
一.父窗口调用iframe子窗口方法 1.HTML语法:<iframe name="myFrame" src="child.html"></i ...
- hdu 3282 Running Median
题目连接 http://acm.hdu.edu.cn/showproblem.php?pid=3282 Running Median Description For this problem, you ...
- umask设置导致的weblogic中的应用上传的文件没有权限打开
去年,在公司的某一weblogic上部署的web应用上传文件后却没有读的权限.因为weblogic在Linux上部署,上传文件是mount到了一台安装了NFS的Windows Server上. 当时本 ...
- ubuntu 安装cloudera hadoop
参考:http://www.aboutyun.com/thread-8921-1-1.html auto wlan0iface wlan0 inet staticaddress 10.32.37.12 ...
- CPU制造工艺 级选来决定cpu等级
CPU制造工艺 编辑 CPU制造工艺又叫做CPU制程,它的先进与否决定了CPU的性能优劣.CPU的制造是一项极为复杂的过程,当今世上只有少数几家厂商具备研发和生产CPU的能力.CPU的发展史也可以看作 ...
- Objective - C中属性和点语法的使用
一.属性 属性是Objective—C 2.0定义的语法,为实例变量提供了setter.getter方法的默认实现能在一定程度上简化程序代码,并且增强实例变量的访问安全性 ...
- SharePoint 2010 用xsl文件定制列表样式
有时候我们不希望列表用默认的方式显示,要我们自定义的方式定制.其中有一种方式是使用xsl文件. 在AllItems.aspx页面中,列表是以webpart的形式显示在页面上的,webpart类型是Xs ...
- PHP笔记-PHP中Web Service.
这几天工作需要.net站点免登陆访问PHP的Wiki站点. PHP不熟,感觉很苦逼.任务下来了,必须搞定.准备用SSO,太麻烦了,要改写别人很多代码,这个是第三方CMS,封装的很厉害,不好改.最后我的 ...
- “psp”软件需求规约
1 系统概述 1.1 概述 该产品是基于软件开发的个人软件过程(personal software process)系统.基本信息有软件开发人员,项目经理,研发经理和管理层登录系统后根据各自的相应权限 ...