目录

渗透测试怎么做

渗透测试是一项在计算机系统上进行的授权模拟攻击,旨在对其安全性进行评估。渗透测试的8大流程步骤:1、明确目标;2、信息收集;3、漏洞探测;4、漏洞验证;5、信息分析;6、获取所需;7、信息整理;8、形成报告;

本文由 项目管理工具PingCode 小编整理

一、什么是渗透测试?

渗透测试是一项在计算机系统上进行的授权模拟攻击,旨在对其安全性进行评估。渗透测试人员使用与攻击者相同的工具、技术和流程,来查找和展示系统弱点对业务带来的影响。

渗透测试通常会模拟各种可能威胁您业务的攻击。渗透测试可以检查系统是否足够稳定,能否抵抗来自经过认证和未经认证的攻击,以及一系列系统角色发起的攻击。在合适的范围内,针对您需要评估的系统的任何方面,渗透测试都可以深入其中。

二、渗透测试完整流程

常规渗透测试流程:明确目标→信息收集→漏洞探测→漏洞验证→信息分析→获取所需→信息整理→形成报告

1、明确目标

确认范围:测试目标的范围,IP,域名,内外网。

确认规则:能渗透到什么程度,时间,能否提权等。

确认需求:WEB应用的漏洞(新上线程序)?业务逻辑漏洞(针对业务的)?人员权限管理漏洞(针对人员、权限)?等等,要做到立体全方位。

2、信息收集

方式:主动扫描,开放搜索:利用搜索引擎获得后台,未授权页面,敏感url等。

基础信息:真实IP,网段,域名,端口。

系统信息:操作系统的版本。

应用信息:各端口的应用,例如WEB应用,邮件应用等。

版本信息:所有这些探测到的东西的版本。

人员信息:域名注册人员信息,WEB应用中网站发帖人的id,管理员姓名等。

防护信息:试着看能否探测到防护设备。

3、漏洞探测

方法:使用漏扫,例如:AWVS、IBM appscan等。

结合漏洞去exploit-db等网址找利用。

在网上寻找验证poc。

内容:系统漏洞:系统没有及时打补丁。

Websever漏洞:Websever配置问题。

Web应用漏洞:Web应用开发问题。

其它端口服务漏洞

通信安全

4、漏洞验证

自动化验证:结合自动化扫描工具提供的结果。

手动验证:根据公共资源进行验证。

试验验证:自己搭建模拟环境进行验证。

登陆猜解:有时可以尝试猜解一下登陆的账号密码等信息。

业务漏洞验证:如发现业务漏洞,要进行验证。

5、信息分析

精准打击:准备好上一步探测到的漏洞的exp,用来精准打击。

绕过防御机制:是否有防火墙等设备,如何绕过。

定制攻击路径:优异工具路径,根据薄弱入口,高内网权限位置,最终目标。

绕过检测机制:是否有检测机制,流量监控,杀毒软件,恶意代码检测等(免杀)。

攻击代码:经过试验得来的代码,包括不限于xss代码,sql注入语句等。

6、获取所需

实施攻击:根据前几步的结果,进行攻击。

获取内部信息:基础设施(网络连接,路由,拓扑等)。

进一步渗透:内网入侵,敏感目标。

持续性存在:一般我们对客户做渗透不需要。rootkit,后门,添加管理账号等。

清处痕迹:清理相关日志(访问,操作),上传文件等。

7、信息整理

整理渗透工具:整理渗透过程中用到的代码,poc,exp等。

整理收集信息:整理渗透过程中收集的一切信息。

整理漏洞信息:整理渗透过程中遇到的各种漏洞,各种脆弱位置信息。

目的:为了最后形成报告,形成测试结果使用。

8、形成报告

按需整理:按照之前名列前茅步跟客户确定好的范围,需要来整理资料,并将资料形成报告。

补充介绍:要对漏洞成因,验证过程和带来危害进行分析。

修补建议:当然要对所有产生的问题提出合理高效安全的解决办法。

渗透测试报告编写:

  • 封皮
  • 明确重点和要求
  • 给谁看?不同职位的人关注的侧重点不一样
  • 内容提要
  • 漏洞列表(一页纸内)
  • 过程清晰准确
  • 工具(版本和功能)
  • 渗透测试团队成员及联系方式
  • 修补建议

三、渗透测试的收益

理想情况下,您的组织在开始对其软件和系统进行设计时,就力争消除危险的安全漏洞。渗透测试帮您深入了解这一目标的实现情况。其中,渗透测试支持以下安全活动:

  • 找出系统的弱点
  • 确定安全控制的可靠性
  • 支持符合数据隐私和安全规范(例如,PCI DSSHIPAAGDPR
  • 为管理层提供当前安全态势和预算优先级的定性和定量示例

一站式研发项目管理平台 PingCode

一站式研发项目管理平台 PingCode

支持敏捷\瀑布、知识库、迭代计划&跟踪、需求、缺陷、测试管理,同时满足非研发团队的流程规划、项目管理和在线办公需要。