目录介绍:
求助:ASP跨站攻击漏洞(XSS)修复方法。
字段值=server.HTMLEncode(rs("字段"))
或
字段值=安全检测模块("字段")
另外,用SESSION代替COOKIE会更好
SQL语中不要直接代入COOKIE,应该先处理
如: "select * from 表 where 字段 = '"request.Cookies(名1)(名2)"'"
这是不安全的,应该改为:
"select * from 表 where 字段='" 安全检测模块(request.Cookies(名1)(名2)) "'"
ASP网站的XSS跨站漏洞出现原因及解决办法?
Xss漏洞主要利用的是把输出的内容信息转化成脚本信息,这就需要把输出信息做过滤,这方面的过滤API可以考虑OWASP的ESAPI。这个API有面向ASP的版本,去OWASP官网去找吧。
恶意攻击者往Web页面里插入恶意html代码,当用户浏览该页之时,嵌入其中Web里面的html代码会被执行,从而达到恶意用户的特殊目的。
ASP
漏洞代码示例:
%
Dim param
Set param=Request.QueryString(“dd”)
response.write param
%
修复范例:
%
Dim param
Set param=Request.QueryString(“dd”)
response.write Server.HTMLEnCode(param)
%
PHP
漏洞代码示例:
?php
$aa=$_GET['dd'];
echo $aa.”123″;
?
修复范例:
?php
$aa=$_GET['dd'];
echo htmlspecialchars($aa).”123″;
?
asp 求修复方法 XSS跨站脚本漏洞
UName=Replace(trim(Request.Form("UserName")),"'","")
PW=Replace(trim(Request.Form("Password")),"'","")
Sex=Replace(trim(Request.Form("Sex")),"'","")
QQ=Replace(trim(Request.Form("QQ")),"'","")
Age=Replace(trim(Request.Form("Age")),"'","")
AH=Replace(trim(Request.Form("AH")),"'","")
SF=Replace(trim(Request.Form("SF")),"'","")
这里
我只举一个例子,以下全部效仿
UName=Replace(trim(Request.Form("UserName")),"'","")
改为
UName=Replace(Replace(Replace(Replace(trim(Request.Form("UserName")),"'",""),Chr(34),""),":",""),"%","")
把' " %等危险字符过滤掉就行了
网友评论
最新评论
MLEncode(rs("字段"))或 字段值=安全检测模块("字段")另外,用SESSION代替COOKIE会更好SQL语中不要直接代入COOKIE,应该先处理如: "select * from 表 where 字段
d'];echo $aa.”123″;?修复范例:?php$aa=$_GET['dd'];echo htmlspecialchars($aa).”123″;?asp 求修复方法 XSS跨站脚本漏洞UNa
")),"'","")SF=Replace(trim(Request.Form("SF")),"'","")这里我只举一个例子,以下全部效仿UName=Replace(trim(Request.Form("UserName")),"'",