• 0
  • 0
分享
  • 系统安全性测试——软件测试圈
  • 北极 2021-06-15 09:36:57 字数 2905 阅读 2185 收藏 0

1、安全测试,什么是安全测试?

安全性测试(Securitytest)它是指:在测试软件系统中对程序的危险防止和危险处理进行的测试,以验证其是否有效。

2、安全性测试我们要做哪些工作呢?

  • 全面检验软件在软件需求规格说明中规定的防止危险状态措施的有效性和在每一个危险状态下的处理反应情况;

  • 对软件设计中用于提高安全性的逻辑结构、处理方案,进行针对性测试;

  • 在异常条件下测试软件,以表明不会因可能的单个或多个输入错误而导致不安全状态

  • 用错误的安全性关键操作进行测试,以验证系统对这些操作错误的反应;

  • 对安全性关键的软件单元功能模块要单独进行加强的测试以确认其满足安全性需求。

3.安全性测试方法

  • 功能验证

功能验证是采用软件测试当中的黑盒测试方法,对涉及安全的

软件功能,如:用户管理模块,权限管理,加密系统,认证系

统等进行测试,主要验证上述功能是否有效。

  • 漏洞扫描

安全漏洞扫描主要是借助于特定的漏洞扫描器完成的。通过使

用漏洞扫描器,系统管理员能够发现系统存在的安全漏洞,

从而在系统安全中及时修补漏洞的措施。一般漏洞扫描分为

两种类型:主机漏洞扫描器是指在系统本地运行检测系统漏

洞的程序。网络漏洞扫描器是指基于网络远程检测目标网络

和主机系统漏洞的程序。

  • 模拟攻击

对于安全测试来说,模拟攻击测试是一组特殊的极端的测试方

法,我们以模拟攻击来验证软件系统的安全防护能力。

刚才我们主要讲了两个内容:

  • 系统安全测试要我们做的哪些工作。

  • 系统安全测试的方法。

下面我们切入主题讲系统的安全测试,都要测试哪些东西

1.系统安全测试的内容:它主要包括

  • 应用程序安全测试

  • 操作系统安全测试

  • 数据库安全测试

  • IIS服务器安全测试

  • 网络环境安全测试

当然在这里我主要讲的是我做过的项目系统中需要测试的内容,对不同的系统安全性测试的内容也不一样,这个需要结合项目本身的情况和用户使用环境来确定测试的内容。

第一部分

应用程序的安全性:

包括对数据或业务功能的访问,在预期的安全性情况下,操作者只能访问应用程序的特定功能、有限的数据。其测试是核实操作者只能访问其所属用户类型已被授权访问的那些功能或数据。测试时,确定有不同权限的用户类型,创建各用户类型并用各用户类型所特有的事务来核实其权限,最后修改用户类型并为相同的用户重新运行测试。

应用程序的安全性问题:

我主要是结合我们刚才讲的安全性测试方法中,对于不同的安全性测试策略列举了不同的问题,当然我列的不全,在这里我主要是告诉大家一个测试的思路,因为对于不同的安全性问题大家有或许有不同的看法,所以我只列举了部分问题给大家参考。

功能验证

  • 有效的密码是否接受,无效的密码是否拒绝。

  • 系统对于无效用户或密码登陆是否有提示。

  • 用户是否会自动超时退出,超时的时间是否合理。

  • 各级用户权限划分是否合理。

漏洞扫描

模拟攻击

1.系统是否允许极端或不正常的登陆方式访问。(如拷贝软件系统中的某个功能点的url地址,然后直接

通过IE访问看是否成功)

第二部分

系统安全性:

注意(这里的系统指的是操作系统也就是应用程序所运行的操作系统)

系统安全测试:

可确保只有具备系统访问权限的用户才能访问应用程序,而且只能通过相应的网关来访问,包括对系统的登录或远程访问。其测试是核实只有具备系统和应用程序访问权限的操作者才能访问系统和应用程序。

操作系统安全测试

  • 帐号和口令

  • 网络与服务

  • 文件系统

  • 日志审核

  • 其它安全设置

帐号和口令

  1. 对主机或域上用户强制进行口令复杂度。

  2. 检查系统是否使用默认管理员帐号。

  3. 检查在系统中是否存在可疑或与系统无关的帐号。

  4. 检查系统用户是否有口令最短和口令长度要求。

  5. 检查系统用户是否有密码过期策略。

网络与服务

  1. 查看主机开放的共享,关掉不必要的共享和系统默认的共享服务。

  2. 查看主机进程信息。(不允许系统中安装有与应用服务无关的应用程序)。

  3. 查看系统启动的服务列表。

  4. 查看系统启用的端口号。

  5. 查看系统是否制定操作系统的备份恢复策略服务。

文件系统

文件系统的安全主要是检查主机磁盘分区类型和某些特定目录的权限。

注意:服务器应使用具有安全特性的NTFS格式,而不应该使用FAT或FAT32分区(上述描述的内容主要是针对windows操作系统)。

日志审核

日志的审核主要是检查主机日志的审核情况。

它主要包括:

  1. 应用程序日志。(运行在操作系统上的程序产生的)

  2. 安全日志。(用户登录系统的日志)

  3. 系统日志。

其它安全设置

  1. 系统补丁漏洞。

  2. 登陆系统操作的用户的权限。

  3. 病毒防治。

  4. 系统日志是否有备份功能。

  5. 数据的备份与恢复。

  6. 系统上卸载与无关组件或应用程序。

第三部分

数据库安全测试

数据库安全

在管理和维护数据库的过程中为了保障数据库安全我们从以下几方面限制数据库访问安全:

  1. 限制能访问Oracle数据库的客户端,指定的IP才可以访问,防止恶意的用户登陆。

  2. 即使有访问Oracle数据库的机会,帐户的密码使用强口令和其他登陆策略,恶意用户也无法轻松进入。

  3. 为每个登陆帐户设置了合适的权限,执行改变数据库状态的权限需要得到管理员的授权,确保了系统合法帐户对数据库的操作安全。

解决办法

1.无关IP禁止访问

方法一:在Oracle服务器的SQLNet.Ora文件中设置允许访问的IP地址,或不允许访问的IP地址;

方法二:在Oracle服务器上使用NetManager工具设置;

2.用户密码为强口令

锁定不用的默认帐户,如scott;

更改使用的默认帐户的口令,这些帐户的密码是公开的,安装时自动建立,如帐户system密码manager为确保安全默认帐户必须修改密码;

密码使用强口令,即数字、特殊字符、字母组成的至少8未的密码;

设置密码失效的策略文件profile,可在控制台中设置。

3.用户赋予适当的权限

不要每个帐户都设置DBA权限,把系统所有操作暴露给每个用户;

每个帐户仅赋予它完成操作所需要的权限;不要轻易为帐户赋予delete或deleteany权限,确保数据不会被误删除;

数据库安全(sqlserver)

  1. 关闭服务器端的tcp/ip协议服务。

  2. 数据库用户登录方式选择sqlserver身份认证。

  3. 设置用户访问指定的数据库。

  4. 设置用户对数据库中的对象有指定的操作权限。

  5. 查看数据是否有定期自动备份的操作。

第四部分

 

  1. IIS基础服务组件安装情况。(根据系统情况合理的安装,减少安装不必要的服务控件)。

  2. 查看IIS日志是否启用,日志存储路径以及日志记录选项。

  3. IIS主目录路径和目录访问权限的设置。

    (注意:1.目录建议不要和系统盘符设置在同一路径下,2.目录访问权限根据所在项目系统的实际情况来设置,通常只启用”读取”权限,记录访问和索引资料权限跟系统的安全无关都默认启用,因为所用的internet用户访问的目录就是IIS设定主目录)

  4. 默认文档的启用。

  5. 访问控制的身份验证。

  6. 连接超时功能的设置(可以根据项目的安全要求具体的可参考系统需求规格说明书来进行合理的设置)。

  7. 安全补丁的更新和安装情况。

第五部分

网络环境安全测试

主要检测的是系统所在局域网内的网络环境的的安全设置,根据情况可以忽略。

  1. 备份和升级情况;

  2. 访问控制情况;

  3. 网络服务情况;

  4. 路由协议情况。


作者:Samirayan

原文链接:https://www.cnblogs.com/yanyx/p/11847127.html

  • 【留下美好印记】
    赞赏支持
登录 后发表评论
+ 关注

热门文章

    最新讲堂

      • 推荐阅读
      • 换一换
          • 测试目标测试网站最常用切最重要的几个部分,然后找出其中缺点,通过不断总结后改进缺点。测试信息此次测试分为二分式任务和等级成功任务,其中有3个二分式任务,两个等级成功任务。二分式任务:此问题为测试当当网的“首页商品分类”的能力:在当当网的首页中找到“旅游”类的书籍并点击进入。此问题为测试当当网的“退换货系统”的能力:在当当网的首页中找到“自动退换货”页面并点击进入。此问题为测试当当网的“关联销售”的能力:在当当网“购买商品”中找到与商品相关联的商品列表。等级成功任务:此问题为测试当当网的“筛选商品指定属性”能力:在首页分类中找到“笔记本”页面并点击进入,找到8000-15000元的销售最高的苹果...
            0 0 2709
            分享
          • 1、接口测试:是测试系统组件间接口的一种测试。主要用于检测外部系统于系统之间以及系统内部各个子系统之间的交互点。重点测试的时数据的交换,传递和控制管理过程,以及系统间的相互逻辑依赖关系等等,这要求对业务逻辑有一定程度上的理解,对数据流向有较好的定位。2、接口测试的分类:系统与系统之间的调用(如分享时,微信会提供接口给“跑向珠峰”);上层服务对下层服务的调用;服务之间的调用(如添加一条数据时,会先调用数据查询的服务,查询改数据是否是重复数据)。不同类型的接口测试方法可能不一致,但总体来说,不管是哪种类型,被测接口即为服务方,测试手段为客户方,接口测试的目的就是:通过我们的测试手段,去验证满足其声...
            0 0 1355
            分享
          •  Cypress 小试牛刀-安装(一)1. 安装Cypress 支持 Windows64、Windows32、Linux64、MacOS64 版本我们这里采用 Windows64 版本,官网地址 [https://download.cypress.io/]()OK,我们准备所需环境,先下载安装 node.jsnode.js 官网下载 [https://nodejs.org/en](),下载完成后双击安装,设置环境变量。接下来我们选择一个风水好的地方新建一个目录 mycpress 如图所示然后我们进入 CMD 进入 mycypress 目录执行 npm init这个时候呢,我们就一路回...
            0 0 1883
            分享
          • 用Jmeter实现dubbo接口测试的文章,网上可以找到很多,但是只看不练假把式。废话不多说,直接上干货。写这篇文章的过程也是自己不断学习的过程。一、准备(1)自行下载安装zookeeper-3.4.6(这里的版本是我用的,可以自行下载自己喜好的版本)(2)自行下载apache-jmeter-3.1,这是免安装的,解压后\Jmeter\apache-jmeter-3.1\bin目录下执行jmeter.bat即可启动。(3)开发环境STS(即Spring Tool Suite)(4)dubbo-admin-2.4.1(这个是非必须的,主要是为了查看Dubbo的服务提供者和消费者) 二、...
            4 4 3317
            分享
          • 作为软件开发从业者,API 调试是必不可少的一项技能,在这方面 Postman 做的非常出色。但是在整个软件开发过程中,API 调试只是其中的一部分,还有很多事情 Postman 无法完成,或者无法高效完成,比如:API 文档定义、API Mock、API 自动化测试等等。Apifox 就是为了解决这个问题而生的。接口管理现状一、常用解决方案使用 Swagger 管理 API 文档使用 Postman 调试 API使用 MockJs 等工具 Mock API 数据使用 JMeter 做 API 自动化测试二、存在的问题1、维护不同工具之间数据一致性非常困难、低效。并且这里不仅仅是工作量的问题,...
            12 11 742
            分享
      • 51testing软件测试圈微信