码迷,mamicode.com
首页 > 其他好文 > 详细

网络安全系列之二十三 XSS跨站脚本攻击1

时间:2014-11-05 09:20:11      阅读:198      评论:0      收藏:0      [点我收藏+]

标签:xss 跨站 反射型 存储型

跨站脚本攻击(Cross Site Scripting)指的是恶意攻击者往Web页面里插入恶意脚本代码,当用户浏览该页之时,嵌入其中Web里面的脚本代码会被执行,从而达到恶意攻击用户的特殊目的。

为了与层叠样式表(Cascading Style Sheets)的缩写CSS区分开,跨站脚本攻击通常简写为XSS。

为了更好地理解XSS攻击,我们需要搭建一个php环境,这里仍然推荐使用NPMserv,软件下载地址:http://down.51cto.com/data/1886128

我们首先编写一个简单的php脚本文件info.php:

bubuko.com,布布扣 

这段代码的意思是以get方法将参数name的值赋给变量username,然后再输出变量username的值。

将文件放到NPMserv下的www目录中,然后在客户端访问:

bubuko.com,布布扣 

正常情况下,用户会在URL中提交参数name的值为自己的姓名,然后该数据内容会通过以上代码在页面中展示,如用户提交姓名为“张三”:

bubuko.com,布布扣 

但是如果用户提交的数据中包含有可能被Web服务器执行的代码,那么就构成了XSS攻击。如用户提交的name值为<script>alert(/我的名字是张三/)</script>:

bubuko.com,布布扣 

<script>……</script>是HTML中用于执行JavaScript语言的标记,因而只要黑客精心构造一些JavaScript语句,那么就可以达到相应的攻击目的了。

XSS攻击的原理和实现方法相比SQL注入要复杂一些,从攻击方式上分类,XSS主要有反射型和存储型。

反射型(外部攻击型)只对当前链接生效,需要用户点击恶意网站使得恶意脚本运行;

bubuko.com,布布扣 

存储型(内部攻击型)网页程序本身xss漏洞,只要用户请求该网页就会受到影响。

bubuko.com,布布扣 

反射型一般需要用户自行去触发,比如我们刚才所进行的XSS攻击就属于是反射型。另外,黑客也可以像图示中那样,将构造好的URL链接发送给正常的用户,让这些用户去执行XSS,从而获取这些用户的信息,比如cookie等。

存储型则是直接将xss语句插入到网站的正常页面中(通常都是留言板),然后用户只要访问了这些页面,就会自动执行其中的xss语句。

关于存储型的跨站将在下篇博文介绍。

本文出自 “一壶浊酒” 博客,转载请与作者联系!

网络安全系列之二十三 XSS跨站脚本攻击1

标签:xss 跨站 反射型 存储型

原文地址:http://yttitan.blog.51cto.com/70821/1571910

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!