通过Visual Studio应对Web应用程序安全威胁

对于Web应用程序的开发者来说,性能与安全就好像两把利剑插在他们心头。Web应用程序由 于其面对用户的特殊性,所以特别容易受到攻击。笔者在这里以ASP.NET+VisualStudio为例, 谈谈该如何有效应对Web应用程序安全威胁。

一、主要安全威胁分析。

对于Web应用程序来说,其可能受到的安全威胁有很多。如电子欺骗、篡改等等。笔者在这 里将常见的一些安全威胁作一些讲解。这些内容可以为后面讲到的应对措施建立一个背景知识 。

第一个威胁是篡改。篡改是指在未经管理员授权的情况下更改或者和删除资源。如前段日子 ,经常有人报料网站被攻击、主页被更改的面目全非。要进行这个篡改,难度也不高,重要的 是取得相关的权限,然后通过脚本就可以来完成。针对这个威胁,现在常用的手段是使用 Windows操作系统的安全机制来锁定文件、目录和其他的资源。另外,就是要最好权限管理,如 Web应用程序应该以最少的特权来运行等等。

第二个威胁是电子欺骗。简单的说,电子欺骗是说以未经授权的方式模拟用户和进程。如通 过电子欺骗可以非法键入其他用户的凭据、更改Cookie 中的内容已假装是合法的用户等等。针 对这种电子欺骗,往往可以使用严格的身份验证机制来处理。也就是说,每当有用户请求访问 非公开信息的时候,如企业内部的OA系统或者邮件系统(它们挂在企业的网站上),就需要使用 严格的身份验证机制来确保这些用户身份的合法性,特别是要判断他们的身份是否与他们声称 的身份相符合。如下图所示,有时候用户声称的时候可能跟真实身份不一致(声称的身份是假冒 的)。此时就需要在在身份验证机制的帮助下,根据一定的规则来判断 “用户声称身份”与“ 用户真实身份”的符合程度。如果符合的话,可以就受其请求,不符合的话则拒绝。

三是拒绝服务。拒绝服务攻击 就是指采取某种手段故意导致应用程序的可用性降低。如采取某种手段,让Web应用程序负载过 渡,使其无法为普通用户提供服务。举一个形象的例子,就好像使租个几千辆QQ车子在狭窄的 马路上来回跑。此时由于马路已经被占满,其他车就开不进来。拒绝服务往往是一种损人不利 己的行为。要防止拒绝服务攻击的话,对于普通企业来说,往往可以限制提供服务请求的数量 或者说拒绝已知的恶意用户和IP地址的访问等等。

除了以上这些威胁之外,还可能有特权升级、信息泄露、否认等等安全威胁行为。可见要设 计一个安全的Web应用程序,难度不小。笔者在这方面虽然称不上专家,但是还是有一些自己的 心得。在这里笔者就拿出来供大家参考。

时间: 2024-09-19 20:44:14

通过Visual Studio应对Web应用程序安全威胁的相关文章

Visual Studio Whidbey——Web应用程序开发新功能预览

visual|web|程序 摘要:本文介绍了代号为"Whidbey"的Microsoft Visual Studio中一些能够加快和便于数据驱动Web应用程序开发的新功能.这些新功能包括:更好的HTML源代码编辑器,更好的IntelliSense,改进的数据访问支持,以及完全支持XHTML标准等.      内容:   ·更好的HTML源代码编辑器   ·更好的可视化设计器   ·更好的Web项目管理   ·更好的数据访问支持   ·更好的标准支持   ·总结      即将发布的产品

Visual Studio.NET:应用程序生存期平台(转)

Visual Studio.NET:应用程序生存期平台 注意:在公开发布的 Visual Studio.NET Beta 2 中可能不提供某些功能.针对应用程序生存期的代码构建阶段,Microsoft 提供了高效的开发人员工具.Microsoft Visual Studio 97 的引入,意味着 Microsoft 开始关注应用程序生存期的其它方面,包括对分析.设计和基于小组的开发活动的支持.目前,Microsoft 在 Visual Studio.NET 中提供了新的企业生存期功能,帮助各个组

使用Visual Studio 2015开发Android 程序

原文:使用Visual Studio 2015开发Android 程序 环境配置: 操作系统:win 7 64位 IDE:Visual Studio 2015 SDK:installer_r24.3.3-windows 安装前提: 编辑hosts文件(在附件可下载)因为安装过程中要联网更新和注册 安装完成VS之后直接新建android程序会提示: --------------------------- Microsoft Visual Studio -----------------------

如何让Visual Studio和web标准联姻

前言: 这篇文章可能会引起"网页设计者"的不安,因为可能会让他们产生"我必须要学习枯燥的代码"的误解: 这篇文章也可能会引起"程序员"的不安,因为可能会让他们产生"我必须学习繁琐的网页设计"的误解: 这篇文章也可能会引起"网页初学者"的不安,因为可能会让他们产生"我必须同时学习枯燥的代码和繁琐的网页设计"的误解. 其实大家都不需要感到不安,因为这篇文章的确是有点另类,它介于"网

如何在Visual Studio中让应用程序访问数据库

随着Web应用程序功能的增强,现在Web应用程序基本上都需要后台数据库的支持.如下图所示,现在某个Web应用程序提供了一个BBS的论坛.用户可以在Web应用程序上注册用户.发帖等等.为了提高Web应用程序的查询效率.缩短响应时间,此时开发人员就需要为Web应用程序配备一个合适的数据库.在这篇文章中,笔者将跟各位读者讨论一下,在VisualStudio平台下,如何让Web应用程序与数据库打交道.寻找一个价廉物美的解决方案. 一.笔者推荐使用Sql Server Express Edition数据库

一起谈.NET技术,Visual Studio 2010 Web项目的jQuery版本升级方案

我们知道在Visual Studio 2010的非空Web项目(含Webform和MVC)中,都自动包含了jQuery库在项目的Scripts文件夹中. 但细心的人们都看到了正式版中包含的jQuery版本是1.4.1版,而不是jQuery官方最新发布的1.4.2版.处于新版效率的极大提升以及部分bug的修复,推荐大家跟新使用1.4.2版,而放弃1.4.1版.单个项目的调整比较简单就是把旧版本的删除,然后添加上1.4.2版的相应文件即可.但我们很多人可能更希望是以后创建的项目都是1.4.2版而不是

visual studio 2005 怎样将程序打包成绿色软件?

问题描述 如题,谢了. 解决方案 解决方案二:如果对方电脑上有.net2.0,你生成的文件只有一个exe的话就是绿色软件了啊打包的话,还叫绿色软件吗?解决方案三:把你的程序文件,和framwork一起打包,就绿色了解决方案四:.net的程序不是只要有环境的话,拷贝即可运行么?这还不绿色啊?解决方案五:该回复于2013-02-25 14:30:42被版主删除解决方案六:确实是...解决方案七:如果生成了exe文件拷贝binDebug文件夹里的exe文件,exe.comfig文件,所有的dll文件,

visual studio 2010-VS2010的MFC程序编译Release版本出现如下问题,请问应该怎么解决呢?

问题描述 VS2010的MFC程序编译Release版本出现如下问题,请问应该怎么解决呢? 1>DlgTotalProtein.obj : error LNK2005: "protected: static struct CRuntimeClass * __stdcall CDlgTotalProtein::_GetBaseClass(void)" (?_GetBaseClass@CDlgTotalProtein@@KGPAUCRuntimeClass@@XZ) 已经在 DlgT

Visual Studio调试服务端程序:w3wp进程消失 解决办法

作者:jiankunking 出处:http://blog.csdn.net/jiankunking 在Internet 信息服务(IIS)管理器中,右键浏览了一下XXXX.svc搞定. IIS6的默认设置是如果20分钟没有request进来会回收w3wp进程. 新的request再进来,会自动启动新的进程.