构建安全的 ASP.NET 网页和控件

本页内容
本模块内容本模块内容
目标目标
适用范围适用范围
如何使用本模块如何使用本模块
威胁和对策威胁和对策
设计注意事项设计注意事项
输入验证输入验证
跨站点脚本跨站点脚本
身份验证身份验证
授权授权
模拟模拟
敏感数据敏感数据
会话管理会话管理
参数处理参数处理
异常管理异常管理
审核和日志记录审核和日志记录
小结小结
其他资源其他资源

本模块内容

Web 页和控件位于应用程序的防御前线,它们很容易受到蓄意破坏应用程序安全的攻击者的猛烈攻击。攻击者的最终目标一般是后端系统和数据存储。

像代码注入或跨站点脚本 (XSS) 这些成功的应用程序攻击都利用了服务器端应用程序漏洞。这些漏洞可造成破坏性的影响,并导致信息曝光、身份哄骗、权限提升及远程执行代码。要构建安全的 Web 页和控件,您必须遵照本模块讨论的正确编程方法。

模块首先列出并说明了常见的 ASP.NET 页和控件威胁及其相关对策,然后提供了一份必须解决的应用程序安全问题综合列表。表中包括了输入验证、输出编码、身份验证、授权、模拟、敏感数据保护、安全会话管理、参数处理保护和异常管理。这些技术都是深层安全解决方案的基本组成部分。但由于上述威胁常被忽视,无论基础结构如何安全,攻击者都能成功破坏您的系统。

目标

使用本模块可以实现:

设计安全的 ASP.NET 页和控件。

使用正则表达式和其他技术开发安全的验证代码。

防止跨站点脚本 (XSS)。

验证用户身份并授权。

开发安全的表单身份验证。

防止大量异常细节信息送达客户端。

管理和保护 ASP.NET 会话。

禁止处理参数。

了解哪些对策适用于解决常见的威胁,包括代码注入、会话劫持、身份哄骗、参数处理、网络窃听、信息曝光、跨站点脚本 (XSS) 和 cookie 重播攻击。

适用范围

本模块适用于下列产品和技术:

Microsoft® Windows® 2000 Server 和 Microsoft Windows Server™ 2003

Microsoft .NET Framework 1.1 和 ASP.NET 1.1

如何使用本模块

除了后面介绍的安全编程方法之外,您还可以使用本指南的相应模块来辅助构建安全的 ASP.NET 网页和控件。

执行模块 19 确保 ASP.NET 应用程序和 Web Services 的安全中的步骤。该模块可帮助您使用 Machine.config 和 Web.config 中的安全设置配置 ASP.NET。

使用本指南检查表部分附带的检查表。检查表:保护 ASP.NET 的安全将本模块提供的建议与模块 19 提供的建议结合在一起。请确保实施这里的指南。

了解特定于 ASP.NET 页和控件的威胁和攻击。根据本模块的指导采取相应对策。

阅读模块 4 Web 应用程序安全设计指南。本模块(模块 10)的很多建议都基于模块 4 讨论的设计指导原则。

设计人员应使用本模块的设计注意事项部分。

开发人员应将本模块中的指导原则应用于开发过程。开发人员必须特别注意对输入数据的验证工作,如果该环节有安全漏洞,大部分高端应用程序级攻击便有机可乘。

请从编程角度了解控件,以便进一步控制 ASP.NET 页和控件的安全性。

使用应用程序安全漏洞类别来处理常见的问题。应用程序安全漏洞类别是处理和分组问题的一种有效方法。

威胁和对策

大多数 Web 应用程序攻击都要在 HTTP 请求中传递恶意输入项。一般,这种攻击并非强迫应用程序执行未经授权的操作,而是要中断应用程序的正常操作。因此,全面验证输入内容是解决很多攻击的必要步骤。而且,在您开发 ASP.NET Web 页和控件时,必须赋予输入验证最高的优先级。常见威胁包括:

 .........................

查看:http://www.microsoft.com/china/technet/security/guidance/secmod83.mspx

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值