网站被XSS攻击?XSS浅析

发布时间:2017-04-23 08:11:28

XSS(跨站脚本攻击)跨站脚本攻击(Cross Site Scripting),为不和层叠样式表(Cascading Style Sheets, CSS)的缩写混淆,故将跨站脚本攻击缩写为XSS。恶意攻击者往Web页面里插入恶意Script代码,当用户浏览该页之时,嵌入其中Web里面的Script代码会被执行,从而达到恶意攻击用户的目的。

网站被XSS攻击?XSS浅析

  XSS种类

  XSS攻击分成两类,一类是来自内部的攻击,主要指的是利用程序自身的漏洞构造跨站语句;

  另一类则是来自外部的攻击,主要指的自己构造XSS跨站漏洞网页或者寻找非目标机以外的有跨站漏洞的网页。如当我们要渗透一个站点,我们自己构造一个有跨站漏洞的网页,然后构造跨站语句,通过结合其它技术,如社会工程学等,欺骗目标服务器的管理员打开。

  XSS攻击过程

  常见的XSS攻击方法

  1.绕过XSS-Filter,利用<>标签注入Html/JavaScript代码;

  2.利用HTML标签的属性值进行xss攻击。

  3. 空格、回车和Tab。如果XSS Filter仅仅将敏感的输入字符列入黑名单,比如javascript,用户可以利用空格、回车和Tab键来绕过过滤。

  4. 利用事件来执行跨站脚本。

  5. 利用CSS跨站。

  6. 扰乱过滤规则。

  7.利用字符编码,透过这种技巧,不仅能让XSS代码绕过服务端的过滤,还能更好地隐藏Shellcode;(JS支持unicode、eacapes、十六进制、十进制等编码形式)

  8.拆分跨站法,将xss攻击的代码拆分开来,适用于应用程序没有过滤 XSS关键字符(如<、>)却对输入字符长度有限制的情况下;

  9.DOM型的XSS主要是由客户端的脚本通过DOM动态地输出数据到页面上,它不依赖于提交数据到服务器,而是从客户端获得DOM中的数据在本地执行。容易导致DOM型的XSS的输入源包括:Document.URL、Location、Document.referrer、Window.name、Document.cookie、localStorage/globalStorage。

  XSS攻击危害

  盗取各类用户帐号,如机器登录帐号、用户网银帐号、各类管理员帐号

  控制企业数据,包括读取、篡改、添加、删除企业敏感数据的能力

  盗窃企业重要的具有商业价值的资料

  非法转账

  强制发送电子邮件

  网站挂马

  控制受害者机器向其它网站发起攻击

  XSS攻击防御

  原则:不相信客户输入的数据

  注意: 攻击代码不一定在<script></script>中

  1.使用XSS Filter。

  输入过滤,对用户提交的数据进行有效性验证,仅接受指定长度范围内并符合我们期望格式的的内容提交,阻止或者忽略除此外的其他任何数据。比如:电话号码必须是数字和中划线组成,而且要设定长度上限。过滤一些些常见的敏感字符。

  输出编码,当需要将一个字符串输出到Web网页时,同时又不确定这个字符串中是否包括XSS特殊字符,为了确保输出内容的完整性和正确性,可以使用编码(HTMLEncode)进行处理。

  2.DOM型的XSS攻击防御

  把变量输出到页面时要做好相关的编码转义工作,如要输出到 <script>中,可以进行JS编码;要输出到HTML内容或属性,则进行HTML编码处理。根据不同的语境采用不同的编码处理方式。

  3.HttpOnly Cookie

  将重要的cookie标记为http only, 这样的话当浏览器向Web服务器发起请求的时就会带上cookie字段,但是在脚本中却不能访问这个cookie,这样就避免了XSS攻击利用JavaScript的document.cookie获取cookie。

  以上就是关于网站被XSS攻击?XSS浅析的内容,希望能帮到您!

  DDOS攻击、CC攻击防御_防攻击服务器_高防CDN_高防DNS

即享免费试用套餐