博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Web站点防注入注意事项(转)
阅读量:4708 次
发布时间:2019-06-10

本文共 1049 字,大约阅读时间需要 3 分钟。

1. 防止页面注入

a) 限制所有页面输入框的输入格式、输入类型、输入长度以及输入字符。例如:禁止输入“‘”, ”;”等特殊字符,并限制输入数字的长度,对于输出的内容进行HtmlEncode格式化输出;

b) 页面程序需要过滤所有post或get请求中的参数信息中非法字符,对所有的QueryString信息过滤,对于每一个QueryString[“name”]都要加上AntiXss.HtmlEncode(queryString[“name”]),对QueryString进行编码。

注:AntiXSSLibrary.dll,是一个很好的过滤页面非法字符工具,它会将一些危险字符转换成安全的HTML编码内容。下载地址:

用法:使用AntiXss.HtmlEncode(“要进行格式化输出输入的内容”) 方法格式化输入和输出的HTML内容;

c) 做好网站的customError跳转页面。只要网站出现错误,则跳到404错误页面。可以避免别人根据你的错误提示,得到一些站点信息;

d) 服务器管理员应对IIS站点设置相应执行权限,特别是对于一些用户可以上传的资源文件夹,更应该合理分配执行修改权限,并避免使用everyone帐号权限;

e) 对于URL中出现一些特殊、危险的字符串,讲行提示并跳转到404页面。(如:Delete,update等这些特殊字符) ;

f) 加密web站点webconfig里的连接数据库字符串,防止被非法用户获取webconfig内容,从而攻陷数据库。

2. 防止SQL脚本注入

a) 在程序编码过程中,应杜绝SQL拼接的方式去写SQL语句,而用参数化的方式或者存储过程;

b) 权限限制,对数据库,存储过程等等进行权限限制。例如:对于一些只是查询,而不做其它操作的数据表,只给其查询的权限,这样更能杜绝一些通过非法SQL修改数据库表数据的操作。通过建两个数据库帐号进行读写分离的方式也是有效方法;

c) 避免使用SA帐号,来连接数据库;

d) 服务器应该过一段时间,就打一次补丁,及时修复系统和安全漏洞。

3. 防止cookie伪造

在网站中,应该尽量避免写入明文的用户名和密码。建议对Cookie进行加密或着二次加密码,防止恶意伪造cookie对网站进行跨站点脚本攻击,例如:.net特有的form验证,可以将用户登录票据进行加密然后放入客户端cookie中。

转载于:https://www.cnblogs.com/shanfeng/p/3625484.html

你可能感兴趣的文章
Navicat远程连接阿里云服务器的mysql
查看>>
RTP Payload Format for Transport of MPEG-4 Elementary Streams over http
查看>>
Java环境变量设置
查看>>
【JBPM4】判断节点decision 方法3 handler
查看>>
filter 过滤器(监听)
查看>>
node启动时, listen EADDRINUSE 报错;
查看>>
杭电3466————DP之01背包(对状态转移方程的更新理解)
查看>>
python--注释
查看>>
SQL case when else
查看>>
SYS_CONTEXT 详细用法
查看>>
Pycharm配置autopep8让Python代码更符合pep8规范
查看>>
我的第一篇博客
查看>>
【C++算法与数据结构学习笔记------单链表实现多项式】
查看>>
C#垃圾回收机制
查看>>
31、任务三十一——表单联动
查看>>
python之hasattr、getattr和setattr函数
查看>>
maven使用阿里镜像配置文件
查看>>
Copy code from eclipse to word, save syntax.
查看>>
arguments.callee的作用及替换方案
查看>>
Centos 6.5下的OPENJDK卸载和SUN的JDK安装、环境变量配置
查看>>