开发更安全的asp.net应用程序一
OWASP TOP 10
open source web application security projecct
web 应用程序的普及和它们的安全问题影响了整个行业的发展,这不仅使web 安全成为核心焦点,而且还形成了开源方法论的和白皮书,以及攻击和防御工具组成的整个生态系统。
1非法输入
web应用程序使用来自web请求的信息之前没有检验信息。攻击者可以利用这些缺点穿过web应用程序攻击后台组件。
2失效的访问控制
对授权用户行为的约束没有完全限制,攻击者可以使用这些缺点访问其它帐户,查看敏感文件。
3失效的验证和会话管理
帐户证书和会话令牌没有受到适当的保护。攻击者可以使用窃取密码,密钥,会话cookie或者其他令牌以使验证限制无效然后允许其它用户身份。
4跨站点脚本
web应用程序能作为向终端用户浏览器传递攻击信息的平台。
5缓存溢出
在一些语言中,没有彻底验证输入的web应用程序组件能破坏进程,在某些情况下甚至能实现进程控制。
6注入式攻击
当web应用程序访问外部系统或者本地操作系统时会传递参数。如果攻击者能在这些参数中放入恶意命令,那么外部系统就可能为WEB应用程序执行那些命令。
7异常错误处理
当常规操作没有完全处理时就会发生错误。如果攻击者能引发WEB应用程序没有处理错误,那么它们就能获得详细的系统信息,拒绝服务,促使安全机制失效,或者破坏服务器。
8不安全存储
web应用程序通常使用加密功能来保护信息和证书。将这些功能和代码集成能够对缺乏保护的结果起到一定的保护作用。
9应用程序拒绝服务
攻击者能够消费大量WEB应用程序资源,直到其他合法用户不能访问或者使用应用程序。攻击者还能锁定用户帐户登录,甚至破坏整个应用程序。
10不安全配置管理
有效的服务器配置标准是安全web应用程序的保证。
总体原则:
1安全是一种特性
2使用最低权限
3预测、监测和反应
4分层防御
5不存在可信的输入
6注意故障模式
7注意应用程序拒绝服押
8首选默认安全措施
9加密不能确保安全
10防火墙不能确保安全