博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
XSS 漏洞的危害
阅读量:4350 次
发布时间:2019-06-07

本文共 1644 字,大约阅读时间需要 5 分钟。

XSS 攻击的过程涉及以下三方:

    谁是攻击者?

 
    谁是受害者?
 
    谁是存在漏洞的网站(攻击者可以使用它对受害者采取行动)
 
    在这三方之中,只有受害者会实际运行攻击者的代码。网站仅仅是发起攻击的一个载体,一般不会受到影响。可以用多种方式发起 XSS 攻击。例如,攻击者可通过电子邮件、IM 或其他途径向受害者发送一个经过经心构造的恶意 URL。当受害者在 Web 浏览器中打开该 URL 的时侯,网站会显示一个页面并在受害者的计算机上执行脚本。

    XSS 漏洞是什么样的呢?

    作为一名 Web 开发人员或测试人员,您肯定知道 Web 应用程序的技术基础是由 HTTP 和 HTML  组成的。HTTP 协议是 HTML 的传输机制,可使用代码设计 Web 页面布局和生成页面。

    如果 Web 应用程序接受用户通过 HTTP 请求(如 GET 或 POST)提交的输入信息,然后使用输出 HTML 代码在某些地方显示这些信息,便可能存在 XSS 漏洞。下面是一个最简单的例子:

    1. Web 请求如下所示:

    GET http://www.somesite.com/page.asp?pageid=10&lang=en&title=Section%20Title

    2. 在发出请求后,服务器返回的 HTML 内容包括:

    <h1>Section Title</h1>

    可以看到,传递给“title”查询字符串参数的用户输入可能被保存在一个字符串变量中并且由 Web 应用程序插入到 <h1> 标记中。通过提供输入内容,攻击者可以控制 HTML。

    3. 现在,如果站点没有在服务器端对用户输入加以过滤(因为总是可以绕过客户端控件),那么恶意用户便可以使用许多手段对此漏洞加以滥用:

    攻击者可以通过摆脱 <h1> 标记来注入代码:

    http://www.somesite.com/page.asp?pageid=10&lang=en&title=Section%20Title</h1><script>alert(‘XSS%20attack’)</script>

    这个请求的 HTML 输出将为:

    <h1>Section Title</h1><script>alert(‘XSS attack’)</script>

    即便是这个最简单的例子,攻击者也可以利用此连接完成数不清的事情。让我们看看会有哪些潜在的威胁,然后讨论一些更高级的测试方法。

    XSS 攻击的威胁有多么严重?

    由于能够在生成的 Web 页面中注入代码,能想到的威胁有多么严重,就可以有多么严重的威胁。攻击者可以使用 XSS 漏洞窃取 Cookie,劫持帐户,执行 ActiveX,执行 Flash 内容,强迫您下载软件,或者是对硬盘和数据采取操作。

    只要您点击了某些 URL,这一切便有可能发生。每天之中,在阅读来自留言板或新闻组的受信任的电子邮件的时侯,您会多少次地单击其中的 URL?

    网络钓鱼攻击通常利用 XSS 漏洞来装扮成合法站点。可以看到很多这样的情况,比如您的银行给你发来了一封电子邮件,向您告知对您的帐户进行了一些修改并诱使您点击某些超链接。如果仔细观察这些 URL,它们实际上可能利用了银行网站中存在的漏洞,它们的形式类似于 http://mybank.com/somepage?redirect=<script>alert(‘XSS’)</script>,这里利用了“redirect”参数来执行攻击。

    如果您足够狡猾的话,可以将管理员定为攻击目标,您可以发送一封具有如下主题的邮件:“求救!这个网站地址总是出现错误!”在管理员打开该 URL 后,便可以执行许多恶意操作,例如窃取他(或她)的凭证。

    好了,现在我们已经理解了它的危害性 -- 危害用户,危害管理员,给公司带来坏的公共形象。

转载于:https://www.cnblogs.com/haoch_00/archive/2008/11/04/1326385.html

你可能感兴趣的文章
hibernate模糊查询-Restrictions.ilike & Expression.like
查看>>
python @property
查看>>
【linux】记录一下遇到的各种问题
查看>>
python学习之day4,函数
查看>>
Java学习之异常处理
查看>>
使用Maven命令安装jar包到仓库中
查看>>
JavaScript 数据类型
查看>>
SQLite数据库
查看>>
[译]Vulkan教程(29)组合的Image采样器
查看>>
combox的DispalyMember和ValueMember属性的测试
查看>>
Start Developing Mac Apps -- Human Interface Design 用户界面设计
查看>>
linux下安装Mongodb
查看>>
Page.RegisterStartupScript和Response.Write的区别。
查看>>
hdu4348区间更新的主席树+标记永久化
查看>>
bzoj3261: 最大异或和 可持久化trie
查看>>
ZOJ 2532 Internship
查看>>
HDU 3452 Bonsai
查看>>
[Erlang12] Mnesia分布式应用
查看>>
图的遍历 | 1013 连通块块数
查看>>
Kinect 开发 —— 进阶指引(上)
查看>>