你所需要知道的关于Web应用程序安全测试的事情

在21世纪做生意,自动化就是问题的实质!当然,Web应用给企业带来了获得在全球范围数以百万计潜在客户的灵活性,但安全问题的威胁却日益严重。

  据Acutenix,Web应用安全行业的领导者,最近的独立分析指出,所有的网络攻击中75%是在Web应用程序level进行的。此外,该公司已经表明,至少有70%的网站是在可能被黑客直接攻击的风险之下!随着越来越多重要和敏感的数据被存储在Web应用程序中,数据相关的处理也相应增加,网络应用程序的安全测试已经变得至关重要。

  安全性测试是为了确保一个web应用程序有足够的能力,防止未经授权的用户访问资源和数据而执行的。在Web应用程序和其他客户端服务器应用程序,安全性测试起着至关重要的作用,因为它可以帮助你在正在进行中的网站或Web应用程序中找出漏洞或弱点。

  然而,在你开始Web应用程序安全性测试之前,有几个很重要的你需要知道的有关安全测试中使用的术语。 这里是一些会经常会在Web应用程序测试中使用到的常用术语:

  “漏洞”——这不过是一些Web应用程序中的弱点。其背后的主要原因可能是在应用程序中的bug。

  “URL处理”——很多web应用程序通过URL来实现客户端和服务器之间的交互或者共享信息。修改URL中的某些信息可能会导致服务器不确定行为。

  “SQL注入”——这不过是通过Web应用程序用户界面向服务器执行的查询中插入SQL语句的过程。

  “XSS(跨站脚本)”——每当用户在web应用程序的用户界面插入HTML或其他任何客户端脚本,并且当其被其他人可见时,这被称为跨站脚本!

  “欺骗”——这个意味着创造外观类似的网站或电子邮件的骗局。

  一旦你熟悉了所有的名词,下一步是开始了解安全测试的不同属性。在执行安全测试的网站或Web应用程序中,有七个基本属性,涵盖了包括认证,授权,保密性,可用性,完整性,不可否认性和韧性。让我们详细了解一下它们:

  认证:这不过是一个访问系统前确认访问者身份的过程。只有在成功破解验证过程的情况下才允许用户访问网站或Web应用程序。

  授权:一旦用户通过认证,授权就可以用来限制用户访问基于其身份的某些功能。

  保密性:这基本上是用来验证是否任何未经授权的用户和无此权限的用户都不能够访问该信息。它有助于保护来自用户的信息和资源授权。

  可用性:它将检查系统是否在除了维护安全补丁和升级之外可以让授权用户随时使用。此外,系统的停机时间应尽可能短,来使系统有更高的可用性。

  完整性:它保证了信息接收的传输过程中不被修改,并确认是否给不同组的用户都提供了正确的信息。

  不可否认性:它追踪谁正在访问系统,那些请求被拒绝,以及其他类似时间戳,IP地址等等的细节。

  韧性:它会检查系统是否有足够承受攻击的能力。这可以通过使用加密来实现。

  这些都是Web应用程序安全测试的主要属性。然而,这个列表并不详尽。好了,那我们可以在安全测试执行哪些测试? 这里有一些安全测试的主要类型:

  安全审计:它主要包括开发应用程序的直接检验。它还包括代码演练。

  安全扫描:它涉及到扫描Web应用程序或系统和验证。在这种测试中,审计人员主要检查并找出应用程序中的缺陷。

  漏洞扫描:将测试该应用程序的所有可能的漏洞。大多数时候它是利用扫描软件或应用程序来扫描漏洞。

  风险评估:这是一种涉及基于损失的类型和损失发生可能性的分析和决定风险的方法。

  状态评估及安全性测试:它包括了为了达到安全目的的安全检测,风险评估和道德黑客攻击的组合。

  渗透测试:在该方法中,测试人员强行访问和输入被测试应用。测试人员将尝试使用一些其他的应用程序或一些组合应用程序的漏洞,来访问一个网站或系统。

  道德黑客:这都是在一个网站或web应用程序的安全性测试中强行入侵外部元素。它也包括了一系列的渗透测试。

  请确保您了解并记住所有在这里的介绍,来使您的Web应用程序安全测试有效且成功。希望这些信息可以帮助你成功地执行安全测试。

  作者简介: Prashant Chambakara是测试自动化专家。他目前正在与TestingWhiz(为测试Web应用程序自动化的工具)合作。 Prashant喜欢参加并通过博客,文章和会议演讲活动来对测试社区做出贡献。他的Twitter名是@prashant_geek。

最新内容请见作者的GitHub页:http://qaseven.github.io/

时间: 2024-08-03 02:41:34

你所需要知道的关于Web应用程序安全测试的事情的相关文章

8个实用且免费的Web应用程序安全测试工具

随着 Web 应用越来越广泛,Web 安全威胁日益凸显.黑客利用网站操作系统的漏洞和 Web 服务程序的 SQL 注入漏洞等得到Web服务器的控制权限,轻则篡改网页内容,重则窃取重要内部数据,更为严重的则是在网页中植入恶意代码,使得网站访问者受到侵害.这也使得越来越多的用户关注应用层的安全问题,对 Web 应用安全的关注度也逐渐升温.下面向大家推荐8款非常有用的免费 Web 安全测试工具. N-Stalker Free Version N-Stalker Web 应用程序安全2012免费版本能够

使用Selenium Grid改进Web应用程序的测试

通过真实的测试项目和代码示例,学习如何在多个环境中并行地执行测试和加快 Web 应用程序的测试速度. Selenium Remote Control (RC) 是 Selenium 项目工具套件的一个部分,它是一个自动化的 Web 应用程序测试框架.Selenium RC 支持许多的编程语言和几乎所有的浏览器.Selenium RC 最重要的优势是浏览器的驱动方法.与其他 Web UI 自动化工具不同,Selenium RC 是通过 http://www.aliyun.com/zixun/agg

WEB应用程序的测试与优化概述

"让你的WEB应用程序完成你想做的事情是一回事,而让他们快速.有效的去做常常是另外一回事." 在这篇文章里我将初步讨论有关"WEB应用程序的性能"的问题,主要是一些基本概念以及工具,算是抛砖引玉吧!注意这些内容同样适用于J2EE应用.此后,也许我会写更多关于此方面的文章. 首先,这里有两个性能方面的重要指标.请注意,下面的"定义"并不规范,仅供参考. * Response Time - 响应时间 从初始化请求到完成响应所用的时间.这是一个测试WE

为Web应用程序创建测试用例的方法

web|程序|创建 您是否正在寻找一种把自动测试技术应用到 Web 开发中的方法?那么不用再找了!JWebUnit 就是为 Web 应用程序创建测试用例的一个开源框架,它可以容易地插入到大多数 Java IDE 中.通过使用一个示例应用程序,描述了生成简洁测试用例的详细步骤,软件工程师 Amit Tuli 对 JWebUnit 进行了介绍. 自动测试可以节省重复执行相同测试步骤的时间和精力.本文将介绍 jWebUnit,这是一组 Java 类,用于为 Web 应用程序开发测试用例.jWebUni

使用Eclipse调试iPhone Web应用程序

开始之前 关于本教程 本教程讲述如何使用 Eclipse.Aptana 的 iPhone 开发插件.Aptana 的 Firefox JavaScript 调试器和 Firebug 调试 iPhone Web 应用程序. 目标 使用基于 Eclipse 的 Aptana Studio 提供的各种工具调试针对 iPhone 优化的 Web 应用程序.本教程主要关注如何最佳地调试 JavaScript 和 Ajax 应用程序. 先决条件 读者应当熟悉 iPhone Web 应用程序开发.JavaSc

Atlassian Bonfire 1.0 Beta 2发布 测试Web应用程序工具

Atlassian Bonfire添加对JIRA的设计,以帮助他们在测试Web应用程序的http://www.aliyun.com/zixun/aggregation/9621.html">测试人员报告错误.测试人员可以使用浏览器扩展,带注释的截图提交的错误.静态和动态的元数据可以使用模板预填充.测试会话记录所有的活动,并允许测试人员发现新的问题,原来的错误或事件链接.它支持FireFox,IE浏览器,Chrom和Safari. Atlassian Bonfire 1.0 Beta 2这是

如何基于Web应用程序安全经验来开发云应用程序?

随着越来越多的企业 寻找可部署在云供应商环境中的应用程序,对于健全的安全措施和技术的需求也变得至关重要. 那么,如何在云环境中开发应用程序以最大限度地提高安全性呢?这些云应用程序是否有别于内部应用程序?在开发周期和质量保证(QA)过程中,需要有哪些变化?在把应用程序迁移到公共云环境之前,上述所有问题都需要解决.在本文中,我们将提供一些指导,如何专为云环境开发安全的应用程序,以抵御如今大部分常见攻击.我们还将探讨一些需要落实到位的控制因素,以确保基于云的应用程序在开发和部署时的安全性.如何安全地开

如何使用Ajax技术开发Web应用程序(3)

ajax|web|程序 在这个关于AJAX系列的第三部分中(相关文章:第一部分.第二部分),我们将学习如何使用AJAX与服务端进行写作以及这些技术如何产生强大的web应用程序.如果你对学习如何构建类似GMail或者Google Maps的web程序感兴趣的话,这是一篇基础的入门(虽然那两个东东会比我们在这篇文章中提及的内容复杂的多).在这篇文章中,我使用PHP作为服务端语言,但AJAX能够和任何服务端语言进行很好的兼容,所以你尽可以选择你所钟爱的任何语言! 我们还是从我们上一篇文章的代码(喏,就

用AJAX开发智能Web应用程序之高级篇(2)

ajax|web|程序|高级 •标准HTML复选框不支持"校验"事件以允许取消一个GUI行为,而这种要求可能存在于某些应用程序中. 现在,让我们看一个正在构建的该控件的用法示例,它的用法可能如下情形: <checkbox id="cbx_1" value="N" labelonleft="true" label="Show Details:" onValue="Y" offValu