HTTP攻击:防御策略

日期: 2008-06-09 作者:Michael Cobb翻译:Tina Guo 来源:TechTarget中国 英文

为了运行一个Web站点,你的Web服务器至少必须开放端口80,处理HTTP Web网页的请求。不幸的是,黑客可以修改或利用这些请求引发服务器问题或者欺骗服务器显示有价值的信息。通过利用HTTP请求,黑客就有了访问Web服务器的合法路径,因而可以轻易地绕过防火墙和其他的安全设施,触发攻击。   HTTP攻击有两种类型。

一种包括向Web服务器发送较长的URL,用以触发缓冲器溢出。另一种攻击是SQL注入,这个过程是向URL发送附加的SQL语句,获得backend数据库的访问权限。黑客经常使用窗体(forms)执行这些攻击,因为这两种攻击都利用意料不到的、用户提交的数据攻击编写不好的应用程序,来触发攻……

我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。

我原创,你原创,我们的内容世界才会更加精彩!

【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】

微信公众号

TechTarget微信公众号二维码

TechTarget

官方微博

TechTarget中国官方微博二维码

TechTarget中国

电子邮件地址不会被公开。 必填项已用*标注

敬请读者发表评论,本站保留删除与本文无关和不雅评论的权力。

为了运行一个Web站点,你的Web服务器至少必须开放端口80,处理HTTP Web网页的请求。不幸的是,黑客可以修改或利用这些请求引发服务器问题或者欺骗服务器显示有价值的信息。通过利用HTTP请求,黑客就有了访问Web服务器的合法路径,因而可以轻易地绕过防火墙和其他的安全设施,触发攻击。

  HTTP攻击有两种类型。一种包括向Web服务器发送较长的URL,用以触发缓冲器溢出。另一种攻击是SQL注入,这个过程是向URL发送附加的SQL语句,获得backend数据库的访问权限。黑客经常使用窗体(forms)执行这些攻击,因为这两种攻击都利用意料不到的、用户提交的数据攻击编写不好的应用程序,来触发攻击。这也就是说,所有用户写入的数据在提交到另外的程序前都需要经过检查。例如,数据输入时为了创建一个Web网页或者是从数据库中找回,它在发布之前必须要经过检查,以确保所有的错误数据都被移除了,并且代码也要正确运行。

  为了防御这些类型的攻击,企业的应用安全策略应该包括以下几个方面

  • 在开发周期中不断测试技术和逻辑漏洞。可以实现这一点的两种方法是动态分析和静态分析。动态分析实际上包括了软件的运行。静态分析包括在不执行软件是对它的分析,这提供了在早期开发周期中执行测试的优势。
  • 为完善组件层的综合测试、系统综合测试和应用功能以及开发测试开发程序。开发程序可能会比较繁重,Gartner估计,测试时移除漏洞的成本小于从产品系统中移除漏洞的2%。
  • 确保你把变动管理包括进来了,因为Web应用代码的变动比率非常高,这就迅速降低了已有的安全评估的实用性。为了评定整个系统应用安全的任何变动的影响,当应用中的商业逻辑不断改变的时候,安全评估程序应该一直重复。
  • 确保对开发人员的适当的培训。培训开发人员编写安全的代码不是必须表示他们编写的代码就是安全的,他们对Web服务器和浏览器的相互作用和互联网通信中使用的协议了解的越多,他们创建的应用程序就越可能不被黑客攻击。微软和SPI Dynamics合作,正在运行应用开发安全意识竞赛,并提供免费的webcasts 和 工作室。

  下面是在任何Web应用开发周期中应该遵循的规则:

  1. 不要相信用户提供的数据
  2. 使所有用户输入干净并生效
  3. 在服务器上使数据生效
  4. 使用五点检查或.NET确认控制器
  5. 使用POST,而不是GET
  6. 避免使用隐藏格式
  7. 只用Cookies存储ID群
  8. 在独立的目录下定位不同的文件类型
  9. 使用完全的路径和文件名
  10. 在必要的地方以只读方式打开文件
  11. 跟上最新的攻击方法的步伐

翻译

Tina Guo
Tina Guo

相关推荐