MVC安全防护
2024-10-18 17:42:27
一、XSS攻击
跨域脚本攻击(Cross Site Scripting),恶意植入前端代码,比如HTML代码和客户端脚本,异常js获取用户cookie然后跳转到别的站点。
防护措施
标签转换(如“<”转换为“<” http://114.xixik.com/character/)
对于参数,可使用微软的HtmlSanitizationLibrary.dll库进行过滤掉html和js而不影响正常的数据
string name = "<div>张三</div><script>alert(11)</script>";
name = Sanitizer.GetSafeHtmlFragment(name);//name值变为张三
二、SQL注入
防护措施
对所有的sql语句和传入参数根据sql关键词和关键符号进行过滤替换。
三、防止CSRF(跨网站请求伪造),只针对POST请求
Action前加入[ValidateAntiForgeryToken(Salt ="密钥")]
在Form表单中加入@Html.AntiForgeryToken("密钥");
四、Cookie窃取
对用户输入进行过滤,避免被截持Cookie,避免被绕过过滤
五、其他细节
1.CustomErrors Mode=“on",发布网站时必须为On,避免错误暴露
2.[nonaction]锁定不开放的Action
3.[AcceptVerbs(HttpVerbs.Post)]限定页面的访问形式
最新文章
- linux Mysql 安装及配置
- 一个linux的样本分析
- 在WebAPI中自动创建Controller
- HDU 5044 (树链剖分+树状数组+点/边改查)
- InstallShield: Component-Feature Associations
- MySQL 忘记密码后的重置操作
- [原]OS X 10.9 Mavericks - Virtual Serial Port Issues
- javaee 规范技术
- htmlunit 导致高cup占用的坑
- RGB颜色 对照表
- [POI2012]STU-Well(二分答案+神仙操作)
- java_18 Collection接口
- topcoder srm 711 div1 -3
- Elasticsearch查询Index以及删除
- windows下MySQL的安装(非安装包)
- vim 之cscope的使用
- Spring Mvc:用MultiPartFile上传单个文件,多个文件
- Python_05-文件操作
- Redis数据库结构与读写原理
- SQL语句01