时间:2021-05-18
链接中的例子是一些脚本攻击相关的内容,有时间的朋友可以点开看看。
1.不要相信Request.QueryString:
相信在asp时代,这个问题比较严重,不信,随便到网络上找几个asp的企业站,找到这种url"view.asp?id=xxx",改成"view.asp?id=xxx or 1=1",相信你会看到不一样的东西,到了.net,应该很少了,不过上次看到有人说CSDN爆过哦,简单的解决方法是在取得数据时做数据类型验证或转换。比如:
int ViewID = 0;
if(int.TryParse(Request.QueryString["ID"], out ViewID)){
//...
}
2.不要相信maxlength:
有时候我们想客户端输入的某个值不超过一定的长度,这个时候可能就会用到input的maxlength,但maxlength能100%保证这个值的长度不超过maxlength吗?
忽略Maxlength 正常情况下你只能在上面的输入框中输入4个字符,但用户post给我们的数据是不是一定就<=4个字符呢?把下面的代码复制到地址栏Enter一下看; javascript:alert(window.c=function(){document.getElementsByTagName("input")[0].value = "你看看我的长度有没有4个字符呢?"}()) [Ctrl+A 全选 注:引入外部Js需再刷新一下页面才能执行]
显然,maxlength是不可信的,简单的解决办法是后台代码验证数据长度:
string UserName = Request.QueryString["UserName"];
if(!string.IsNullOrEmpty(UserName)&&UserName.length > x){
//...提示错误或截断数据
}
3.不要相信Hidden:
有时候我们想把些信息保存到前台页面,然后再发送回来,但是我们又不想让客户看到这个信息,于是,我们把数据放到了hidden里面,那客户提交数据时,hidden里的内容真的是我们放的内容吗?
改变Hidden的值 用户名: 请先点击"查看Hidden"查看原来的值.正常情况,客户端提交给你的Type的值应该是"Robot!",但是你把下面的代码复制到地址栏然后Enter一下,再点查看Hidden看看; javascript:alert(window.c=function(){document.getElementById("Type").value = "我不是Robot!"}()) [Ctrl+A 全选 注:引入外部Js需再刷新一下页面才能执行]
这个我一时也没想到好的验证方法,暂时也没有特殊的需求说必须验证。
4.不要相信客户端验证:
比如2和3中的问题,可能有的朋友觉得,我客户端再加个验证不就OK了吗?可是,往往,客户端验证也是不安全的,首先,如果客户端禁用脚本,那客户端验证是完全失效的,另外,在脚本有效的情况下,脚本验证也是可以被篡改的。
覆盖Submit验证
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
(一)要不要开发小程序?(二)如何开发?(三)开发费用
微信小程序开发过程中遇到问题总结第一次正式开发一个小程序,就从以下几个方面来谈一谈小程序的开发过程和心得吧,主要说说这次项目中用到的功能。数据请求这次的小程序,
请记住付钱是假的。请不要使用。可能是真的。另外,我必须注意不要相信被你垫付的话。如果觉得不需要钱可以打工。我想问点什么。无论是买鱼、养鱼还是种田,都需要播种。持
微信小程序从上线到现在,很多商家企业都已经开发了自己的小程序,并且已经在盈利了。但是还有一大部分企业仍然在观望中,还在考虑到底要不要做微信小程序开发?开发了小程
闲鱼没有激活消费者保障。闲鱼买家保障是骗子的一种手段。请不要相信。 闲鱼是阿里巴巴集团旗下的一款闲置交易平台App,由淘宝(中国)软件有限公司开发。闲鱼的主要