渗透测试流程——渗透测试的9个步骤(转)
目录
明确目标
分析风险,获得授权
信息收集
漏洞探测(手动&自动)
漏洞验证
信息分析
利用漏洞,获取数据
信息整理
形成报告
1.明确目标
1)确定范围:测试的范围,如:IP、域名、内外网、整站or部分模块;
2)确定规则:能渗透到什么程度(发现漏洞为止or继续利用漏洞)、时间限制、能否修改上传、能否提权...
- 目标系统介绍、重点保护对象及特性。
- 是否允许数据破坏?
- 是否允许阻断业务正常运行?
- 测试之前是否应当知会相关部门接口人?
- 接入方式?外网和内网?
- 测试是发现问题就算成功,还是尽可能的发现多的问题?
- 渗透过程是否需要考虑社会工程?
3)确定需求:web应用的漏洞(新上线程序)?业务逻辑漏洞(针对业务的)?人员权限管理漏洞(针对人员、权限)?
根据需求和自己技术能力来确定能不能做、能做多少
2.分析风险,获得授权
分析渗透测试过程中可能产生的风险,如大量测试数据的处理、影响正常业务开展、服务器发生异常的应急、数据备份和恢复、测试人力物力成本...
由测试方书写实施方案初稿并提交给客户(or本公司内部领导)进行审核。在审核完成后,从客户(or本公司内部领导)获取对测试方进行书面委托授权书,授权测试方进行渗透测试。
3.信息收集
在信息收集阶段,我们需要尽量多的收集关于目标系统的各种信息,比如:脚本语言的类型、服务器的类型、目录的结构、使用的开源软件、数据库类型、所有链接页面,用到的框架等。
方式:主动扫描;开放搜索
开放搜索:利用搜索引擎获得后台、未授权页面、敏感url
基础信息:IP,网段,域名,端口
系统信息:操作系统版本
应用信息:各端口的应用,例如web应用,邮件应用等
版本信息:所有探测到的版本
服务信息:服务器类型、版本
人员信息:域名注册人员信息,web应用中网站发帖人的id,管理员姓名等
防护信息:试着看能否探测到防护设备
4.漏洞探测(手动&自动)
利用上一步中列出的信息,使用相应的漏洞检测
方法:
1)漏扫:AWVS、AppScan...
2)结合漏洞去exploit-db等位置找利用
3)在网上寻找验证POC
内容:
系统漏洞:系统没有及时打补丁
Websever漏洞:Websever配置问题
Web应用漏洞:Web应用开发问题
其它端口服务漏洞:各种21/8080(st2)/7001/22/3389
通信安全:明文传输,token在cookie中传送等
5.漏洞验证
将上一步中发现的有可能可以成功利用的全部漏洞都验证一遍。结合实际情况,搭建模拟环境进行试验,成功后再应用于目标中。
- 自动化验证:结合自动化扫描工具提供的结果
- 手工验证:根据公开资源进行验证
- 试验验证:自己搭建模拟环境进行验证
- 登录猜解:有时可以尝试猜解一下登陆口的账号密码等信息
- 业务漏洞验证:如发现业务漏洞,要进行验证
- 公开资源的利用
exploit-db/wooyun/
渗透代码网站
通用、缺省口令
厂商的漏洞警告等
6.信息分析
为下一步实施渗透做准备
- 精准攻击:准备好上一步探测到的漏洞exp(漏洞利用),用来精准攻击
- 绕过防御机制:是否有防火墙等设备,如何绕过
- 定制攻击路径:最佳工具路径,根据薄弱入口,高内网权限位置,最终目标
- 绕过检测机制:是否有检测机制,流量监控,杀毒软件,恶意代码检测等(免杀)
- 攻击代码:经过试验得来的代码,包括不限于xss代码,sql注入语句等
7.利用漏洞,获取数据
- 实施攻击:根据前几步的结果,进行攻击
- 获取内部信息:基础设施(网络连接,vpn,路由,拓扑等)
- 进一步渗透:内网入侵,敏感目标
- 持续性存在:一般对客户做渗透不需要。rookit,后门,添加管理账号,驻扎手法等
- 清理痕迹:清理相关日志(访问,操作),上传文件等
8.信息整理
- 整理渗透工具:整理渗透过程中用到的代码,poc,exp等
- 整理收集信息:整理渗透过程中收集到的一切信息
- 整理漏洞信息:整理渗透过程中遇到的各种漏洞,各种脆弱位置信息
目的:为了最后形成报告,形成测试结果使用。
9.形成报告
- 按需整理:按照之前第一步跟客户确定好的范围,需求来整理资料,并将资料形成报告
- 补充介绍:要对漏洞成因,验证过程和带来危害进行分析
- 修补建议:当然要对所有产生的问题提出合理高效安全的解决办法
风险规避
- 不要进行诸如ddos攻击,不破坏数据;
- 测试之前对重要数据进行备份;
- 任何测试执行前必须和客户进行沟通,以免引来不必要的麻烦;
- 可以对原始系统生成镜像环境,然后对镜像环境进行测试;
- 明确渗透测试范围;
转载来源:
作者:Fighting_001
链接:https://www.jianshu.com/p/13fa3be9c5b9
来源:简书
渗透测试流程——渗透测试的9个步骤(转)的更多相关文章
- APP测试流程梳理
APP测试流程梳理 1 APP测试基本流程 1.1流程图 1.2测试周期 测试周期可按项目的开发周期来确定测试时间,一般测试时间为两三周(即15个工作日),根据项目情况以及版本质量可适当缩短或延长测试 ...
- Kali Linux渗透测试实战 1.3 渗透测试的一般化流程
1.3 渗透测试的一般化流程 凡事预则立,不预则废,做任何事情都要有一个预先的计划.渗透测试作为测试学科的一个分支,早已形成了完整的方法论.在正式开始本书的实践教学章节之前,我也想谈一谈使用Kali ...
- Web渗透测试流程
什么是渗透测试? 渗透测试 (penetration test)并没有一个标准的定义,国外一些安全组织达成共识的通用说法是:渗透测试是通过模拟恶意黑客的攻击方法,来评估计算机网络系统安全的一种评估方法 ...
- 【渗透测试】如何利用burpsuite测试无回显漏洞
前面的文章讲了在windows和linux上的不同的无文件渗透测试的方法,那么这篇文章给大家讲解如何在漏洞没有回显的情况下,利用burpsuite自带插件进行测试的方式. 首先我们稍微提一下有哪些无回 ...
- 【腾讯优测干货分享】如何降低App的待机内存(二)——规范测试流程及常见问题
本文来自于腾讯优测公众号(wxutest),未经作者同意,请勿转载,原文地址:https://mp.weixin.qq.com/s/806TiugiSJvFI7fH6eVA5w 作者:腾讯TMQ专项测 ...
- APP测试流程
1 APP测试基本流程 1.1流程图 1.2测试周期 测试周期可按项目的开发周期来确定测试时间,一般测试时间为两三周(即15个工作日),根据项目情况以及版本质量可适当缩短或延长测试时间.正式测试前先向 ...
- 自己做的加速app测试流程的小工具,目前打算开放使用,想注册的朋友抓紧了,嘻嘻
为了加速小团队app的测试流程做了这个东西,www.xunce.net 主要特性: web: 一键上传app,方便随时下载 备注测试要点 添加附件,如checklist等文档 自动识别app版本,名 ...
- [liu yanling]测试流程
测试流程 1.制定测试计划 2.编辑测试用例 3.执行测试用例 4.发现并提交BUG 5.开发组修正BUG 6.对已修正BUG进行返测 7.修正完成的BUG将状态置为已关闭,未正确修正的BUG重新激活
- 深圳尚学堂:Android APP的测试流程
每一个新开发的软件都避免不了测试,我在这里总结了一些Android系统的移动端APP测试的一些测试流程,希望可以给大家一些帮助. 1. UI 测试App主要核ui与实际设计的效果图是否一致:交互方面的 ...
随机推荐
- Java学习日报7.9
今日内容 阅读了构建之法第一章 工程师的宗旨:我构建,故我在. 哲学家的宗旨:我思,故我在. 科学家的宗旨:我发现故我在. 明天继续研究构建之法这本书!
- Spring Cloud Config原码篇(十)
上篇中说到通过@Value注解获取配置中心的内容进行注入,要想了解这个就要知道spring Environment原理,关于这原理我看了下网上分析的文章:https://blog.csdn.net/t ...
- informix部署安装
informix部署安装 一.环境准备 Linux版本:centos7.6 Linux主机名:localhost informix安装包:ibm.ids.14.10.FC4W1.LNX.tar inf ...
- gcc/g++命令参数
在windows环境下,我们运行一程序,只需要在VS中点击运行按键即可,VS帮我们做完了程序的预处理.编译.汇编.链接阶段 但是在linux环境下,我们只能借助gcc/g++完成这一系列的操作 -o参 ...
- 使用 SOS 对 Linux 中运行的 .NET Core 进行问题诊断
目录 说明 准备一个方便的学习环境 2.x 配置内容 3.x 配置内容 工具介绍 lldb sos plugin 1. attach 到进程上进行调试 2. 分析core dump文件 SOS 案例分 ...
- Azure Terraform(三)部署 Web 应用程序
一,引言 上一节关于 Terraform 的文章讲到 Terraform 使用到的一些语法,以及通过演示使用 Terraform 在Azure 上部署资源组,极大的方便了基础设施实施人员,也提高了基础 ...
- 经典项目管理 OR 敏捷项目管理,我该怎么选?
CODING 项目协同近期为支持传统项目管理推出了「经典项目管理」.至此,CODING 已全面支持敏捷项目管理以及传统项目管理.那么问题来了,「经典项目管理」和「敏捷项目管理」,我该怎么选呢?本文将从 ...
- OpenOCD安装与使用(JTAG调试)
本文介绍openocd开源软件的安装以及搭配JTAG对Xilinx u500VC707devkit的调试 PC OS: Ubuntu20.04 LTS Target ARCH: riscv64 JTA ...
- 最新最简洁Spring Cloud Oauth2.0 Jwt 的Security方式
因为Spring Cloud 2020.0.0和Spring Boot2.4.1版本升级比较大,所以把我接入过程中的一些需要注意的地方告诉大家 我使用的版本是Spring boot 2.4.1+Spr ...
- 十一:WEB渗透必懂知识点
简述WEB层面上的漏洞以及类型,具体漏洞的危害等级, 如何形成以及如何发现 右边权重大于左边 CTF,SRC,红蓝对抗,实战 简要说明以上漏洞危害 简要说课以上漏洞等级划分 简要说明以上漏洞重点内容 ...