[MSDN]ASP.NET MVC2(11)MVC程序安全限定

说明:本内容来自微软的webcast,讲师为苏鹏。视频没有书方便(想看哪页就看哪页),所以抄录要点和老师语录。

 

内容介绍

-          常见网络安全攻击隐患

-          针对asp.net mvc防御体系

预备知识

-          安装VS2010

-          了解ASP.NET

-          了解Ajax基础知识

-          了解设计模式基本概念

安全性策略

SQL注入攻击

跨站脚本攻击

1 任何时候接受用户输入的时候都必须做好Encode,把所有的html标记去了.

2 永远不要对任何人使用不加检查的html操作输入

3 cookie进行

常见攻击方式及其防范

·跨站脚本攻击

·跨域请求

·Cookie窃取

·超载攻击方式

Cross-site scripting XSS

- 跨站脚本攻击

使用XSSCSS区别开

有两种,一种用户输入的信息有恶意脚本,信息没有过滤保存到数据库里面了。任何用户访问这个网页都可以看到这个脚本,所以就导致攻击了。这种称为被动攻击,因为被攻击者需要自己去查看这些信息。

另一种是主动攻击直接把信息推到用户端去。

被动攻击常见是使用iframe src 到另一个网址。

主动注入常见篡改IE主页

避免XSS的办法

使用HTML.Encode来实现格式化所以内容

<%html.Encode(Model.FirstName)%>

<%:Model.FirstName)%> (mvc2 特性)

@webform已经内嵌Encode

clip_image002

Javascript 编码

 

Url 传递过来的参数加以过滤

clip_image004

跨站请求

通过欺骗用户的浏览器来实现的。攻击者通过构造恶意代码,让浏览者替代攻击者去攻击其他目标网站。称为借刀杀人。

clip_image006

避免跨站欺骗攻击

clip_image008

盗用cookies

-          Session cookies-

-          序列化cookies

持久化cookies的窃取

clip_image010

避免cookie被盗

clip_image012

httpOnly=true,意思是只可在服务端进行读写;在客户端读取,不可写。

可以在webconfig中设置。

关于重复提交、

clip_image014

使用白名单或者黑名单,限制那些列不可修改。、

避免暴露错误信息

clip_image016

发布网站改为On

保护你的controller

-Authorize】来锁定你的Action

-nonaction】来锁定所有不开发的Action

即没有Action的函数,供内部使用的函数。

总结

跨站脚本攻击

注入攻击

Cookies盗取

clip_image018

 

附:

标题:粗体+斜体+黑色

ppt文字:宋体+黑色

作者语录:斜体+黑色/红色/蓝色

我的心得:@开头

posted @ 2012-01-29 09:40  yellowwood  阅读(442)  评论(0编辑  收藏  举报
Never Give UP