一份标准的渗透测试报告是什么样的?(附报告模板)

Posted 汇智知了堂

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了一份标准的渗透测试报告是什么样的?(附报告模板)相关的知识,希望对你有一定的参考价值。

一个完整的渗透测试工作流程中,实际有近一半时间都用在如何编写报告上,渗透测试工程师的工作,不仅需要具备高超的渗透测试水平,同样也需要把一个深奥的技术点解释的通俗易懂,即使是完全不懂安全的人也可以理解。

那么,一份标准的渗透测试报告究竟是什么样的呢?本期,跟随知了姐一起学习渗透测试报告的相关知识吧~

01

渗透测试报告的重要性

渗透测试是一个科学的过程,像所有科学流程一样,应该是独立可重复的。当客户不满意测试结果时,他有权要求另外一名测试人员进行复现,此时如果你的报告没有详细说明结论的话,第二个测试人员将会不知从何入手,得出的结论也极有可能不一样,甚至遗漏相关漏洞。

举个例子:

模糊不清的描述:“我使用端口扫描器检测到了一个开放的TCP端口。“

清晰明了的描述:“我使用Nmap 5.50,对一段端口进行SYN扫描,发现了一个开放的TCP端口。

命令是:nmap –sS –p 7000-8000“

报告是实实在在的测试过程的输出,且是真实测试结果的证据,对客户而言他们可能对报告的内容没什么兴趣,但这份报告是他们唯一一份证明测试费用的证据。

02

如何准备好渗透测试记录?

第一步

准备好渗透测试记录

测试记录是执行过程的日志,在每日测试工作结束后,应将当日的成果做成记录,虽然内容不必太过细致,但测试的重点必须记录在案:

·拟检测的项目

·使用的工具或方法

·检测过程描述

·检测结果说明

·过程的重点截图(有结果的画面)

第二步

撰写渗透测试报告书

报告书是整个测试测试操作结果的汇总,大概会以下列大纲撰写:

前言:说明执行测试的目的

声明:依照渗透测试同意书协商事项,列举于此,通常作为乙方的免责声明。

摘要:将本次渗透测试所发现的弱点及漏洞做一个汇总性的说明,如果系统有良好的防护机制,亦可书写于此,提供给甲方的其他网站系统作为管理参考。

执行方式:“大致”说明测试的方法论、测试的方法、执行时间以及测试的评定方式,评定方式是双方约定的条件为准,例如:发现中高风险项目、能提权成功、能完成插旗(即在目标网站中上传指定的文件或修改网页内容)、中断系统服务……

执行过程说明:依照双方议定的项目,说明测试“结果”,不论可以渗透成功或无法成功,都应说明执行的程序。

标注“详细执行步骤,如《渗透测试记录表》”,以便渗透测试记录表引入报告书中,并列出本次操作对风险高低的评定说明,例如:测试完成后,乙方人员针对所有测试目标评定其风险等级,以该测试目标所造成的冲击程度及发生的可能性作为因子,相乘得出风险等级,评定如下:

发现事项与建议改善说明:这是整份报告书中最重要的部分,任何渗透测试都必须提供客户防护或弱点修正建议,其实只要能界定弱点的类型即可,因为防护建议内容通过搜索都可查到,所以本节最好能详细说明建议内容,以提高客户的满意度。

附件或参考文件(如无,可以省略):有些公司会将小组成员的资历列在此处,以供甲方参考。

第三步

撰写报告的注意事项有哪些?

测试记录是执行过程的日志,在每日测试工作结束后,应将当日的成果做成记录,虽然内容不必太过细致,但测试的重点必须记录在案:

一份好的报告可以为测试操作加分,一份不好的报告会毁了测试人员的努力,所以撰写渗透测试报告不可太随便,以下提供三个撰写要领,以供参考:

①重点漏洞要用直白的话写,让主管一目了然,翻开报告书就能够感受到渗透测试的价值

②撰写针对漏洞的修补建议时,最好言之有物,并附上修补范例

③图表重于文字,重点位置量附图佐证,数据对比或汇总,避免抓不到重点

④测试结果、弱点、漏洞务必要提出来,并给予修正建议

30多份软件测试报告模板(标准版)!一份优秀测试报告模板流程


相信很多做软件测试的小伙伴在软件测试后期,都为软件测试报告总结花费了很多的精力,那么如何做好软件测试报告呢?一份优秀的测试报告又包含哪些内容呢?

测试报告的核心要素

一、测试结论

从测试工程师的专业角度分析,是否达到发布标准,是否可发布 。如果你的测试报告,结论都没有,那这份报告的意义是什么?

二、风险

已知风险 & 未知风险 ,抛出。项目经理、产品经理等多部门,需要根据这份风险分析,确定最终这个版本是否发布出去。

三、测试时间 & 测试人员

这是非常重要的,投入了哪些人,用了多少时间,测试起止时间。

四、测试环境、测试设备

用到哪些测试手机,什么客户端环境,什么浏览器等等。

五、需求大纲

当前的这个版本,到底包含了哪些大的需求点。

六、Bug数据分析(非常重要的一点)

可以从多个维度分析, 比如,Bug等级分布,遗留Bug分析,Bug类型分布,模块Bug分布,Bug激活次数分析 等等(具体可根据公司实际情况,进行多维度分析)。

七、测试总结

从测试角度,对这个版本,你觉得存在的一些问题,一些建议,等等。

下面的我搜集的一些测试报告模板,需要完整版的可以关注我公众号【伤心的辣条】获取~

测试报告模板

一、XXX系统产品安全测试报告

1. 介绍

1.1 编写目的

本报告为XXX系统产品的安全测试报告,目的在考察软件安全性、测试结论以及测试建议。

2. 测试概要

2.1 测试方法和测试工具

本次安全测试,主要使用了账号安全管理、权限管理、安全日志、访问控制安全、输入安全、缓冲区溢出、SQL注入、跨站脚本攻击等安全测试方案。

针对以上提供的测试方案进行对应测试用例以及测试脚本编写,并使用APPScan作为安全测试工具。

2.1.1 账号安全管理

1、 账号的惟一性:系统中账号名称具有惟一性

(1) 普通用户、工程师、管理员具有惟一性;

(2) 是否有可能绕过系统的账号惟一性校验

2、 账号不能写死在代码中,须提供可管理机制

2.1.2 权限管理

  1. 采用基于角色的账号权限管理模型

  2. 授权和用户角色数据存放在服务器端

2.1.3 安全日志

  1. 对安全事件以及操作事件记录日志

  2. 检查系统是否对以上所以操作记录相应日志记录,包括用户ID、用户IP、时间、事件类型、操作来源(APP、网页)等;

2.1.4 访问控制安全

需要验证用户身份以及权限的页面,复制该页面的url地址,关闭该页面以后,查看是否可以直接进入该复制好的地址;

2.1.1 输入安全

XXX系统系统主要对没有被验证的输入进行如下测试:

数据类型(字符串、整形、实数等)允许的字符集、最小和最大的长度、是否允许空输入、参数是否为必须、是否允许重复、数值范围、特定的值(枚举型)特定的模式(正则表达式)等;

2.1.2 缓冲区溢出

没有加密关键数据:

例:view-source:http地址可以查看源代码

在页面输入密码,页面显示为加密字符****,右键鼠标,查看源文件就可以看到刚刚输入的密码。

2.1.3 SQL注入

例:一个验证用户登录的页面

如果使用的sql语句为:

Select * from A where username=’ ’ + username+’ ’ and password……

SQL输入or 1=1——就可以不输入任何password进行攻击,或者是半角状态下的用户名与密码均为:‘or’‘=’。

2.1.4 跨站点脚本攻击

分析:攻击者使用跨站脚本来发送恶意代码给没有发觉的用户,窃取他机器上的任意资

料。

2.1.1 测试工具

3. 测试组织

3.1 测试人员

4. 测试结果及缺陷分析

4.1 遗留缺陷列表

5. 测试结论

1) 本次测试覆盖全面,测试数据基础合理,测试有效。

2) SQL注入测试,已执行测试用例,问题回归后测试通过。

3) 跨站点脚本测试,测试发现已对相关特殊字符进行转义,测试通过。

4) 权限测试,已严格对相关角色进行权限控制,测试通过。

综合以上结论得出本次安全测试通过。

6. 测试建议

在系统研发时便需要逐步对相关字符进行转义,可列成安全文档,定义如何防范各种安全漏洞,以便在开发项目阶段直接杜绝问题。

测试模板太多,就不一一列举了,需要完整版本的记得转,发并S我噢~


最后:如果对软件测试、接口测试、自动化测试、技术同行、持续集成、面试经验交流。感兴趣可以进到 902061117,群内会有不定期的分享测试资料。

如果文章对你有帮助,麻烦伸出发财小手点个赞,感谢您的支持,你的点赞是我持续更新的动力。

好文推荐

2021软件测试工程师面试题汇总(内含答案)-看完BATJ面试官对你竖起大拇指!

什么样的人适合从事软件测试工作?

软件测试和软件开发哪个发展更好

那个准点下班的人,比我先升职了…

以上是关于一份标准的渗透测试报告是什么样的?(附报告模板)的主要内容,如果未能解决你的问题,请参考以下文章

编写渗透测试报告时,“假设”指的是啥? [关闭]

一份标准性能测试报告规范

教你怎么编写一份高质量的测试报告

渗透测试PTES标准

2011全国大学生电子设计大赛的设计报告怎么写?格式是啥?有啥要求?评分标准是啥?

软件质量报告?还是软件测试报告?