渗透测试的一般流程以及心得

渗透测试是指渗透人员通过模拟恶意黑客的攻击方法,从内网、从外网等位置利用各种手段对某个特定网络进行测试,发现和挖掘系统中存在的漏洞或技术缺陷,然后输出渗透测试报告,并提交给客户。这样,客户便可以根据渗透人员提供的渗透测试报告,清晰知晓其网络系统中存在的安全隐患和问题。

一般情况,渗透测试服务的大致流程分为六个步骤:

1.明确目标
2.信息收集
3.漏洞探测
4.漏洞验证
5.漏洞攻击:利用漏洞,获取数据,后渗透测试
6.信息整理及渗透测试报告输出

第一步:明确目标

1)确定范围:测试的范围,如:IP、域名、内外网、整站or部分模块
2)确定规则:能渗透到什么程度(发现漏洞为止or继续利用漏洞)、时间限制、能否修改上传、能否提权...
目标系统介绍、重点保护对象及特性。
是否允许数据破坏?
是否允许阻断业务正常运行?
测试之前是否应当知会相关部门接口人?
接入方式?外网和内网?

3)确定需求:web应用的漏洞?业务逻辑漏洞?人员权限管理漏洞?

4)分析渗透测试过程中可能产生的风险,如大量测试数据的处理、影响正常业务开展、服务器发生异常的应急、数据备份和恢复、测试人力及物力等成本。

5)测试方书写实施方案并提交给客户或领导进行审核。在审核完成后,从客户或领导处获取对测试方进行书面委托授权书,授权测试方进行渗透测试。

第二步:信息收集

在信息收集阶段,我们需要尽量多的收集关于目标web应用的各种信息,比如:脚本语言的类型、服务器的类型、目录的结构、使用的开源软件、数据库类型、所有链接页面,用到的框架等。

方式:主动扫描;开放搜索
开放搜索:利用搜索引擎获得后台、未授权页面、敏感url
基础信息:IP,网段,域名,端口
系统信息:操作系统版本
应用信息:各端口的应用,例如web应用,邮件应用等
版本信息:所有探测到的版本
服务信息:服务器类型、版本
人员信息:域名注册人员信息,web应用中网站发帖人的id,管理员姓名等
防护信息:试测能否探测到防护设备

第三步:漏洞探测

在收集到足够多的信息之后,便开始对WEB应用进行漏洞探测了,探测网站是否存在一些常见的Web漏洞。

漏洞探测方法:
1)漏洞扫描工具:AWVS、AppScan、Owasp-Zap、Nessus等
2)结合漏洞去exploit-db等位置找利用
3)在网上寻找验证POC

内容:
系统漏洞:系统没有及时打补丁
Websever漏洞:Websever配置问题
Web应用漏洞:Web应用开发问题
其它端口服务漏洞:各种21/8080(st2)/7001/22/3389
通信安全:明文传输,token在cookie中传送等

常见漏洞,比如:

SQL注入
XSS跨站脚本
CSRF跨站请求伪造
XXE漏洞
SSRF服务端请求伪造漏洞
文件包含漏洞
文件上传漏洞
文件解析漏洞
远程代码执行漏洞
CORS跨域资源共享漏洞
越权访问漏洞
目录浏览漏洞和任意文件读取/下载漏洞
struts2漏洞
JAVA反序列化漏洞

第四步:漏洞验证

将上一步中发现的可能成功被利用的漏洞都验证一遍。结合实际情况,搭建模拟环境进行试验,成功后再应用于目标中。

自动化验证:结合自动化扫描工具提供的结果
手工验证:根据公开资源进行验证
试验验证:自己搭建模拟环境进行验证
登录猜解:有时可以尝试猜解一下登陆口的账号密码等信息
业务漏洞验证:如发现业务漏洞,要进行验证
公开资源的利用
exploit-db/wooyun/
渗透代码网站
通用、缺省口令
厂商的漏洞警告等

第五步:漏洞攻击:利用漏洞,获取数据,后渗透测试

进一步渗透:内网入侵,敏感目标
持续性存在:一般对客户做渗透不需要rookit,后门,添加管理账号,驻扎手法等
清理痕迹:清理相关日志(访问,操作),上传文件等

第六步:信息整理及渗透测试报告输出

在完成了渗透测试之后,我们就需要整理资料,对这次渗透测试撰写渗透测试报告了。需要对漏洞成因,验证过程和带来危害进行分析。明确写出哪里存在漏洞,以及漏洞修补的方法,以便于网站管理员根据我们的渗透测试报告修补这些漏洞和风险,防止被黑客攻击!

  • 15
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
渗透测试流程包括以下步骤: 1. 确定渗透测试目标:确定测试的对象,包括系统、应用、网络、设备等。 2. 收集信息:从公开渠道、社交媒体、公司网站等收集关于目标的信息,包括IP地址、域名、系统架构、软件版本等。 3. 扫描目标:使用扫描工具扫描目标系统,发现漏洞和弱点。 4. 漏洞分析:对发现的漏洞进行分析,评估其重要性和危害程度。 5. 渗透测试:对目标系统进行攻击和测试,尝试获取敏感信息,提取密码,获取系统权限等。 6. 报告和建议:将测试结果整理成报告,提供给客户,包括漏洞的描述、危害程度、攻击路径和建议解决方案。 渗透测试的步骤方法包括以下: 1. 确定测试目标和范围:确定测试对象和测试的范围,包括测试的时间、地点、测试的目的和目标系统的类型。 2. 收集信息:通过网络扫描、端口扫描、漏洞扫描等方式收集目标系统的信息。 3. 漏洞评估:对漏洞进行评估,确定漏洞的危害程度和攻击路径。 4. 渗透测试:通过各种手段进行攻击和测试,包括密码猜测、社工攻击、漏洞利用等。 5. 数据分析和整理:对测试结果进行收集和分析,整理出漏洞报告和测试报告。 6. 建议解决方案:提供针对漏洞和弱点的建议解决方案,包括修补漏洞、升级软件、加强安全策略等,以提高目标系统的安全性。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值