会员注册关闭
XSS(跨站脚本漏洞)修复
作者:未知来源:网络收集
整理日期:2012-12-08
导 读:修复建议:假定所有输入都是可疑的,必须对所有输入中的script、iframe等字样进行严格的检查。这里的输入不仅仅是用户可以直接交互的输入接口,也包括HTTP请求中的Cookie中的变量,HTTP请求头部中的变量等。
缺陷描述
跨站攻击,即Cross Site Script Execution(通常简写为XSS)是指攻击者利用网站程序对用户输入过滤不足,输入可以显示在页面上对其他用户造成影响的HTML代码,从而盗取用 户资料、利用用户身份进行某种动作或者对访问者进行病毒侵害的一种攻击方式。
安全隐患,攻击者可利用XSS漏洞获取用户cookie,传播蠕虫,篡改页面或进行钓鱼等
缺陷详情
跨站攻击,即Cross Site Script Execution(通常简写为XSS)是指攻击者利用网站程序对用户输入过滤不足,输入可以显示在页面上对其他用户造成影响的HTML代码,从而盗取用 户资料、利用用户身份进行某种动作或者对访问者进行病毒侵害的一种攻击方式。
安全隐患,攻击者可利用XSS漏洞获取用户cookie,传播蠕虫,篡改页面或进行钓鱼等
修复建议
对参数做html转义过滤(要过滤的字符包括:单引号、双引号、大于号、小于号,&符号),防止脚本执行。在变量输出时进行HTML ENCODE 处理。
ASP.net应用,可以使用AntiXSS
JAVA应用,可以使用org.apache.commons.lang.StringEscapeUtils提供的Escape函数
修复参考
(1)ASP:
问题示例代码:
<%
Dim param
Set param=Request.QueryString("dd")
response.write param
%>
修复范例:
<%
Dim param
Set param=Request.QueryString("dd")
response.write Server.HTMLEnCode(param)
%>
(2)PHP
问题代码示例:
<?php
$aa=$_GET['dd'];
echo $aa."123";
?>
修复范例:
<?php
$aa=$_GET['dd'];
echo htmlspecialchars($aa)."123";
?>
获得更多 -> 防毒技巧 -> 红客黑客
责任编辑: webmaster >>> 百度上搜索 谷歌上搜索
点击复制本连接 (http://www.hugesky.com/showarticle.php?id=5033)【声明】: 以上文章或资料除注明为电脑技巧原创或编辑整理外,均为网络收集整理或网友推荐。以上内容以共享、参考、研究为目的,不存在任何商业目的。 未注明作者或出处的文章,可能资料来源不规范。如有涉及版权请给予及时联系更正或予以删除。 |