车开了自动巡航系统:跨站脚本攻击
来源:百度文库 编辑:九乡新闻网 时间:2024/05/05 18:00:54
跨站脚本攻击-----为什么要过滤危险字符串
不算前言的前言好像已经很久没有写过安全方面的文章了,所谓安全圈子里面,大家也许认为玄猫消失了,不过,我想,作为骇客的玄猫也许从来没有出现过吧。没错的,我是玄猫,如果前两年你看过《黑客X档案》或者《黑客手册》这样的民间安全杂志,那么你也许见过这个名字。
或者,很抱歉的,你的站点有时会出现过“玄猫啊玄猫……”这样的提示框或者文字,那么我很遗憾,我写的漏洞利用工具被人滥用到你的网站上了,蓝色理想里的程序员、站长想必不少,我在这里也向你道个歉。
什么是跨站脚本攻击
OK,我们就进入正文吧。按照惯例,我先给出“跨站脚本攻击”的“官方定义”。
跨站攻击,即Cross Site ScriptExecution(通常简写为XSS)是指攻击者利用网站程序对用户输入过滤不足,输入可以显示在页面上对其他用户造成影响的HTML代码,从而盗取用户资料、利用用户身份进行某种动作或者对访问者进行病毒侵害的一种攻击方式。
在这个定义里面提到了三个要点:
第一、 What-为什么会产生跨站脚本攻击。
跨站脚本攻击的产生是因为程序员在写程序时候的考虑不周,当然,也可能是根本没有考虑。安全方面有一句著名的话叫做,“永远也不要相信用户的输入”。看到这里,作为普通用户的你,先别急着鄙视我对你的不信任,作为可用性专家的你,也别急着骂我不重视用户,作为程序员的你,要去用凉水洗把脸,精神一下了。
你在以前写程序时,有没有考虑,用户所输入的内容显示在网站上时,会不会有什么问题呢。
什么问题?先抛开我这里的主题跨站脚本攻击而言,你有没有发现,有时用户输入的内容,导致了你的页面变形?这时你除了说,Oh,这个用户真麻烦之外,是否还考虑,为什么会变形呢。
我们举个实例来说,你写了一个页面,用来显示用户输入的文章,这里显示用户部分的地方是这样的:
<%=sArticleContent'这里我们假设这个变量是从数据库里面取出的用户输入的文章内容%>
如果用户输入的都是像我这篇文章一样的普通文字,那么自然是没有问题,啊,可是如果出现一个二把刀的用户,他一定想写一些html代码来装饰他的文章,而恰恰他只写了
,忘记了后面的闭合标签,那么会出现什么……哈哈,你的页面的后面部分全部被了,字体大的没法看。之前你精心设计的页面全部乱成了一锅粥。
在这个实例里面,用户输入的只是普通的html字符,那么,他如果输入javascript字符呢,恩,如果我是一个坏坏的喜欢搞恶作剧的用户,我也许会输入:。那么会发生什么?对!在这个页面被访问的时候,你无辜的访问者会发现,无论他怎么按“确定”,那个顽固的提示框都会喋喋不休。
简单来说,这就是一次跨站脚本攻击了。
在这次攻击里面,我,这个坏坏的喜欢恶作剧的用户,利用你,这个永远相信用户输入的程序员忘记过滤我所输入的可能对其他访问者造成危害的代码内容这个缺陷,成功的进行了一次恶作剧—跨站脚本攻击。
第二、 Who-谁可以利用跨站脚本攻击。
关于“who”这个问题,我想在上面的内容里,你大致了解了,这里我再唠叨一下,不仅仅是喜欢恶作剧的用户可以用,甚至有时普通的用户,输入时不小心的也会导致你页面出现一些未期料的问题。
当然,我们最不希望的就是,有骇客利用这个漏洞了,至于他能够利用到什么程度,还请你往下面拉一点,看“跨站脚本攻击有什么危害”。
第三、 How much-跨站脚本攻击有什么危害。
所谓安全圈子里的某些“黑客”往往对跨站漏洞嗤之以鼻,认为那不过是在客户那里玩玩就算了,作为被称之为跨站王的某鱼同学(现在已然是Discuz公司的系统安全工程师了)的徒弟我来说,我认为这是非常幼稚的一种看法。
说小了,跨站攻击可以简单的就使你的页面布局混乱不堪,而更严重的是,既然骇客可以写入html代码,那他简直可以干你想到的或者你想不到的任何事情了。譬如……就可以非常容易的在你的网站上插入指向一个网页木马的隐藏的框架了(通常被称之为“挂马”)。
作为网站管理员的你,如果简单的认为,跨站漏洞只可以对访问者造成侵害的话,那就错了。别忘记,在访问带有受到跨站攻击的网页时,你的身份也是普通用户,一方面,如果你中了他放的木马,那么从你机子上就可以轻易的下载到ftp软件中的密码信息,另一方面,如果这个时候你已经登录了管理,那么他是不是可以构造一个管理页面,并且以你的身份,让你不知不觉的操作呢,这是完全可能的,并且是经常出现的。
构建跨站脚本攻击
哈哈,如果你是一个坏坏的用户,那么看到这里你一定很开心了,你认为自己将学会如何做一名骇客,不过我只能很遗憾的告诉你,想都不要想,呵呵,重复我经常说的一句话,以下内容禁止心智不成熟的未成年人观看,其中涉及的内容仅作为教学和研究使用,严禁利用这里所讲授的知识进行不法侵害行为。
在这里我拿出以前做的几个案例笔记(全文大多数都发表在了《黑客X档案》中),在案例中进行分析说明,大家不要小看这些案例,这些案例中大多数都是网上有大量网站使用的知名程序,可想而知危险之大。
案例一:Discuz4.1.0论坛出现的WAP跨站漏洞
Discuz论坛允许使用手机访问论坛wap目录来访问论坛,用wap方式访问论坛时可以查看帖子和发送帖子、短消息等,但是其服务器端的处理过程并没有过滤wap方式发帖的标题,使得我们可以输入特殊构造的字符而引发跨站攻击。
作为程序员的你认为用户在使用手机WAP方式访问论坛时候就不可能写入恶意代码从而不能攻击而不对WAP部分进行处理吗?那你就错了,实际上,有很多软件可以模拟访问WAP,Opera就可以,在PC上使用某些特定的客户端软件(WinWAP、Opera)等,访问WAP网站,即可以输入跨站字符,这里可以在标题中输入,当PC用户访问论坛时,就会触发这些代码。
从这个案例中,你应当学到,不要认为客户端的限制就可以疏忽对用户输入的检测和过滤了,只要可以通过HTTP协议访问,那么无论客户端是什么,有什么限制,都是不安全的。
案例二:“飞骋”网站日记跨站漏洞。
首先来看飞骋日记服务,一般来说对于像日记这种一个人写,N多人看的东东,我们要考虑的就是XSS跨站漏洞了。在下面的内容中,我们试着用代码来测试能不能在页面上运行我们的Javascript脚本。
我们打开一个写日记的页面,先测试内容能不能写跨站脚本,日记标题随便写,内容写个,然后去看看,不难看到,我们写的script被替换成了script,(图一)中间多了个空格,再来改变大小写试试,内容写,还是不行,看来要想个变通的方法了,我们找找还有哪些是可以输出的,对了,标题,可是有的朋友会有疑问,标题就让写10个字,不够啊,我们再来把文件保存到本地,研究form的验证:232行有个
在这个实例里面,用户输入的只是普通的html字符,那么,他如果输入javascript字符呢,恩,如果我是一个坏坏的喜欢搞恶作剧的用户,我也许会输入:。那么会发生什么?对!在这个页面被访问的时候,你无辜的访问者会发现,无论他怎么按“确定”,那个顽固的提示框都会喋喋不休。
简单来说,这就是一次跨站脚本攻击了。
在这次攻击里面,我,这个坏坏的喜欢恶作剧的用户,利用你,这个永远相信用户输入的程序员忘记过滤我所输入的可能对其他访问者造成危害的代码内容这个缺陷,成功的进行了一次恶作剧—跨站脚本攻击。
第二、 Who-谁可以利用跨站脚本攻击。
关于“who”这个问题,我想在上面的内容里,你大致了解了,这里我再唠叨一下,不仅仅是喜欢恶作剧的用户可以用,甚至有时普通的用户,输入时不小心的也会导致你页面出现一些未期料的问题。
当然,我们最不希望的就是,有骇客利用这个漏洞了,至于他能够利用到什么程度,还请你往下面拉一点,看“跨站脚本攻击有什么危害”。
第三、 How much-跨站脚本攻击有什么危害。
所谓安全圈子里的某些“黑客”往往对跨站漏洞嗤之以鼻,认为那不过是在客户那里玩玩就算了,作为被称之为跨站王的某鱼同学(现在已然是Discuz公司的系统安全工程师了)的徒弟我来说,我认为这是非常幼稚的一种看法。
说小了,跨站攻击可以简单的就使你的页面布局混乱不堪,而更严重的是,既然骇客可以写入html代码,那他简直可以干你想到的或者你想不到的任何事情了。譬如……就可以非常容易的在你的网站上插入指向一个网页木马的隐藏的框架了(通常被称之为“挂马”)。
作为网站管理员的你,如果简单的认为,跨站漏洞只可以对访问者造成侵害的话,那就错了。别忘记,在访问带有受到跨站攻击的网页时,你的身份也是普通用户,一方面,如果你中了他放的木马,那么从你机子上就可以轻易的下载到ftp软件中的密码信息,另一方面,如果这个时候你已经登录了管理,那么他是不是可以构造一个管理页面,并且以你的身份,让你不知不觉的操作呢,这是完全可能的,并且是经常出现的。
构建跨站脚本攻击
哈哈,如果你是一个坏坏的用户,那么看到这里你一定很开心了,你认为自己将学会如何做一名骇客,不过我只能很遗憾的告诉你,想都不要想,呵呵,重复我经常说的一句话,以下内容禁止心智不成熟的未成年人观看,其中涉及的内容仅作为教学和研究使用,严禁利用这里所讲授的知识进行不法侵害行为。
在这里我拿出以前做的几个案例笔记(全文大多数都发表在了《黑客X档案》中),在案例中进行分析说明,大家不要小看这些案例,这些案例中大多数都是网上有大量网站使用的知名程序,可想而知危险之大。
案例一:Discuz4.1.0论坛出现的WAP跨站漏洞
Discuz论坛允许使用手机访问论坛wap目录来访问论坛,用wap方式访问论坛时可以查看帖子和发送帖子、短消息等,但是其服务器端的处理过程并没有过滤wap方式发帖的标题,使得我们可以输入特殊构造的字符而引发跨站攻击。
作为程序员的你认为用户在使用手机WAP方式访问论坛时候就不可能写入恶意代码从而不能攻击而不对WAP部分进行处理吗?那你就错了,实际上,有很多软件可以模拟访问WAP,Opera就可以,在PC上使用某些特定的客户端软件(WinWAP、Opera)等,访问WAP网站,即可以输入跨站字符,这里可以在标题中输入,当PC用户访问论坛时,就会触发这些代码。
从这个案例中,你应当学到,不要认为客户端的限制就可以疏忽对用户输入的检测和过滤了,只要可以通过HTTP协议访问,那么无论客户端是什么,有什么限制,都是不安全的。
案例二:“飞骋”网站日记跨站漏洞。
首先来看飞骋日记服务,一般来说对于像日记这种一个人写,N多人看的东东,我们要考虑的就是XSS跨站漏洞了。在下面的内容中,我们试着用代码来测试能不能在页面上运行我们的Javascript脚本。
我们打开一个写日记的页面,先测试内容能不能写跨站脚本,日记标题随便写,内容写个,然后去看看,不难看到,我们写的script被替换成了script,(图一)中间多了个空格,再来改变大小写试试,内容写,还是不行,看来要想个变通的方法了,我们找找还有哪些是可以输出的,对了,标题,可是有的朋友会有疑问,标题就让写10个字,不够啊,我们再来把文件保存到本地,研究form的验证:232行有个
最新新闻 沃茨手表网
CSDN程序文档
上海旅游网 神马百科 程序博客
香蕉皮作业帮 景德镇新闻网 余姚信息网
作业帮作业网 互助问答吧 16楼社区
解题作业帮艺术百科亮点网神马百科
神马文学网
拍题作业网
UC知道
我爱散文网
北方网
科学网
第一文库网
微思作业网
我要文章网
都市新闻网西欧教育西山新闻网好楼房产信息网
九乡新闻网农企信息网仙女们写真照片音乐简谱网米粒芽学校大全网95后网站汝南网欧普网宝宝故事网
神马品牌网
杭州交通信息网/">
杭州市高中教育平台
查人人中国名人网
爱美之人
上车买票
安卓系统之家
中科新闻网
科学院研究所
高考快车
高考志愿帮
大学志愿大全
高校问答
高考问答
中考百科
大学知道
久游网