脚本能够“跨站”的原因

 XSS是跨站脚本(Cross Site Script)的意思,由于网站技术中的Cascading Style Sheets被缩写为CSS,为了不至于产生概念混淆,故一般用XSS来简称跨站脚本。
    从数量上讲,XSS是目前所有漏洞中所占比例最大的一类,编程时稍不留意就会产生这种漏洞,而且防不胜防。
    在很多Web应用中,服务器都将客户端输入或请求的数据“经过简单的加工”后,再以页面文本的形式返回给客户端,例如,搜索引擎将用户输入的搜索串返回在页面中;运行出错时将用户输入的信息返回在错误提示页面中;论坛中显示用户提交的帖子等。
    在这些Web应用中,如果对用户输入“加工”过于简单,就会产生XSS漏洞。例如,下面这种代码对用户输入的数据没有经过任何“加工”,就直接返回给了客户端。
<?php
echo $input
?>
    当用户进行正常的请求:
http://testapp.com/test.php?input=this is a test
    服务器将简单地把“this is a test”返回给客户端的浏览器,浏览器解析后会将这段文本显示在页面中。
    但是,当遇到类似下面这样的请求时:
var kevent = 'onabort|onblur|onchange|onclick|ondblclick|onerror|onfocus|onkeydown|onkeypress|onkeyup|onload|onmousedown|onmousemove|onmouseout|onmouseover|onmouseup|onreset|onresize|onselect|onsubmit|onunload'; var aevent = kevent.split('|'); jQuery('.showContent img').each(function(){ var nimg = this; jQuery.each(aevent, function(i, n){ if (n!='onload') { jQuery(nimg).attr(n, ''); } else { if (jQuery(nimg).attr(n) != 'if(this.width>650) this.width=650;') { jQuery(nimg).attr(n, ''); } } }); });
分享至
一键收藏,随时查看,分享好友!
0人
了这篇文章
类别:未分类┆阅读( 0)┆评论( 0) ┆ 返回博主首页┆ 返回博客首页
下一篇 网络工程师应掌握的50个路由器知识要点

你可能感兴趣的:(网络,职场,休闲)