如果让软件测试人员搞网络安全?

随着时代的不断发展,软件测试这一行越来越不好做了,各种自动化工具的普遍,再加上00后都开始抢饭碗了(开个玩笑)。

软件测试:(Software Testing),一种用来促进鉴定软件的正确性、完整性、安全性和质量的过程。换句话说,软件测试是一种实际输出与预期输出之间的审核或者比较过程。

做软件测试是离不开工具的,通过一些工具能够使软件的一些简单问题直观的显示在测试人员的面前,这样能使测试人员更好的找出软件错误的所在。在这里插入图片描述

软件测试工具分为 自动化软件测试工具 和 测试管理工具。

自动化软件测试工具存在的价值是为了提高测试效率,用软件来代替一些人工输入。
测试管理工具是为了复用测试用例,提高软件测试的价值。
一个好的软件测试工具和测试管理工具结合起来使用将会使软件测试效率大大提高。

下面简单的介绍几种软件测试工具

Openstack
是专用于 B/S 结构的、免费的性能测试工具。它的优点除了免费、源代码开放的优点外,还能对录制的测试脚本进行,按指定的语法进行编辑。在录制完测试脚本后,可以对测试脚本进行编辑,以便进行特定的性能指标分析。其较为丰富的图形化测试结果大大提高了测试报告的可阅读性。在这里插入图片描述

QTP
一个 B/S 系统的自动化功能测试的利器,软件程序测试工具。Mercury 的自动化功能测试软件 QuickTest Professional ,可以覆盖绝大多数的软件开发技术,简单高效,并具备测试用例可重用的特点。Mercury QuickTest Pro 是一款先进的自动化测试解决方案,用于创建功能和回归测试。它自动捕获、验证和重放用户的交互行为,为每一个重要软件应用和环境提供功能和回归测试自动化的行业最佳解决方案。
在这里插入图片描述

JMeter
Apache 组织开发的基于 Java 的压力测试工具。用于对软件做压力测试,它最初被设计用于 Web 应用测试,但后来扩展到其他测试领域。 它可以用于测试静态和动态资源,例如静态文件、Java 小服务程序、CGI 脚本、Java 对象、数据库、FTP 服务器等等。在这里插入图片描述

WebInject
一个自动化测试工具,主要适合 Web 应用和 Web 服务。可以通过它来测试基于 HTTP 接口的系统组件,还可以用它来进行服务器监控。在这里插入图片描述

BugFree
借鉴微软的研发流程和 Bug 管理理念,使用 PHP+MySQL 独立写出的一个 Bug 管理系统。简单实用、免费并且开放源代码(遵循GNU GPL)。命名 BugFree 有两层意思:一是希望软件中的缺陷越来越少直到没有;二是表示它是免费且开放源代码的,可以自由使用传播。在这里插入图片描述

Bugzilla
一个开源的缺陷跟踪系统(Bug-Tracking System),它可以管理软件开发中缺陷的提交(new),修复(resolve),关闭(close)等整个生命周期。在这里插入图片描述

selenium-core
使用 HTML 的方式来编写测试脚本,你也可以使用 Selenium-IDE 来录制脚本,但是目前 Selenium-IDE 只有 FireFox 版本。
在这里插入图片描述

Testlink
用于进行测试过程中的管理,通过使用 TestLink 提供的功能,可以将测试过程从测试需求、测试设计、到测试执行完整的管理起来,同时,它还提供了好多种测试结果的统计和分析,使我们能够简单的开始测试工作和分析测试结果。在这里插入图片描述

TMantis
一个基于 PHP 技术的轻量级的缺陷跟踪系统,其功能与前面提及的 JIRA 系统类似,都是以 Web 操作的形式提供项目管理及缺陷跟踪服务。在功能上可能没有 JIRA 那么专业,界面也没有 JIRA 好看,但在实用性上足以满足中小型项目的管理及跟踪。在这里插入图片描述

MaxQ
一个 Web 功能测试工具。它包括一个记录测试脚本的 HTTP 代理,一个用于重放测试的命令行实用程序。代理记录器自动存储提交到表单的变量,无需自己记录。在这里插入图片描述

软件测试的流程

测试需求分析阶段:阅读需求,理解需求,主要就是对业务的学习,分析需求点,参与需求评审会议
测试计划阶段:主要任务就是编写测试计划,参考软件需求规格说明书,项目总体计划,内容包括测试范围(来自需求文档),进度安排,人力物力的分配,整体测试策略的制定。风险评估与规避措施有一个制定。
测试设计阶段:主要是编写测试用例,会参考需求文档(原型图),概要设计,详细设计等文档,用例编写完成之后会进行评审。
测试执行阶段:搭建环境,执行冒烟测试(预测试)-然后进入正式测试,bug管理直到测试结束。
测试评估阶段:出测试报告,确认是否可以上线。
其中在测试执行阶段,进行环境的搭建,一些预测试等,然后寻找漏洞,错误测试等等,与网络安全中的渗透测试大同小异。

作为一个渗透测试人员,每天的工作就是面对 web 的应用、网络、系统的安全漏洞。 用另一种话说,就是你被付薪水来做合法 hacker。在这个很酷的工作,你将会使用一系列的渗透测试工具一些是预先决定的,一些事你自己设计的,来模拟真实生活中的网络攻击。你的最终目标就是帮助组织证明他们的安全性。

【合法的 hacking 是“性感”和“无聊”的混合(真的是无聊,天天写报告)。不像真实世界的黑客(可以为所欲为),你可能只有几天的时间来侵入一个系统。甚至,你要表达清楚你使用的方法和技术。渗透测试被称作信息安全领域最令人沮丧的工作之一】在这里插入图片描述

你可能做一些事,比如:

执行一个常规渗透测试给基于web的程序网络以及计算机系统。
给服务器系网络设置进行一个物理性安全评估。
设计和创建一个新的渗透测试工具。
探测 web 应用,客户端应用和标准协议的漏洞指出攻击者可能使用的方法来利用弱点和缺陷。
利用社会工程来揭露系统漏洞(脆弱的用户安全操作或密码策略 )。
与之合作的公司的考虑(比如因停机而遭受的损失)。
与管理者、IT队伍研究、说明、议论安全发现。
检查和定义信息安全措施的要求。
致力于提高安全服务,包括持续的提高现有的方法来支持评估提供回馈和评估为一个组织解决安全问题
在一个渗透测试里,你将会集中于利用漏洞(作为目标进入系统)。
一个渗透测试团队会对开放的系统进行拍照,来表示他们能够进入数据库,而不是像罪犯那样实际的去获取数据。

为什么做软件测试的也可以做渗透测试呢?

首先,软件测试人员掌握多种测试工具,可以对 web 应用进行全方面的分析;熟悉多种编程语言,可编写一些基本的脚本及工具;对应用产品功能流程的了解,对常见的登录注册、商城等应用场景有所了解。尝试从软件测试进入渗透测试,还需了解更多专业知识,可前往二向箔安全 进行了解。

二向箔安全 团队,成立于 2017 年 9 月,团队由众多知名白帽组成,主要专注于网络空间安全领域。拥有 10 年的网络安全实践经验,在实战方面经验丰富,知识功底与创造力方面获得了国内外多方白帽的认可,拥有一定国际影响力。团队自成立以来,沉淀发展前沿的安全研究,拥有世界级领先的 Serverless安全技术成果。利用二代云技术打造创新型的 Exeye 技术平台,为多家企业提供了更敏捷更高效更安全的开发方案。除此之外,两年间团队为多家政府及企业提供全面的安全优化方案与安全体系建设,一站式解决企业安全威胁。

有人喜欢创造世界,他们做了开发者;有的人喜欢开发者,他们做了测试员。什么是软件测试?软件测试就是一场本该在用户面前发生的灾难提前在自己面前发生了,这会让他们生出一种救世主的感觉,拯救了用户,也就拯救者这个软件,避免了他们被卸载的命运。

微信搜一搜【程序员阿沐】关注这个文绉绉的程序员,关注后回复【面试】有我准备的一线大厂面试资料和简历模板,希望大家都能找到心仪的工作,学习是一条时而郁郁寡欢,时而开怀大笑的路,加油。如果你通过努力成功进入到了心仪的公司,一定不要懈怠放松,职场成长和新技术学习一样,不进则退。如果有幸我们江湖再见!在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值