web安全day41:三种典型渗透测试流程
目录
渗透测试流程
无论是进行白盒测试还是黑盒测试,选择和使用测试步骤都是测试人员的责任。在测试开始前,测试人员需要根据目标系统的实际环境和已经掌握的相关目标系统的情况,指定最佳的测试策略。
渗透测试执行标准PTES
PTES:Penetration Testing Execution Standard,由7个阶段标准组成,可以在任意环境中进行富有成果的渗透测试。
1、事前互动
2、情报搜集
3、威胁建模
4、漏洞分析
5、漏洞利用
6、深度利用
7、书面报告
PTES的主要特性和优势
1、它是非常全面的渗透测试框架,涵盖了渗透测试的技术方面和其他重要方面。
2、它介绍了多数测试任务的具体方法,可指导您准确测试目标系统的安全状态。
3、它汇聚了多名日行一渗的渗透测试专家的丰富经验
4、它包含了最常用的以及很罕见的相关技术
5、它浅显易懂,可以根据测试工作的需要对相应测试步骤进行调整。
通用渗透测试框架
从技术管理的角度来看,遵循正规的测试框架对安全测试极为重要。通用渗透测试框架涵盖了典型的审计测试工作和渗透测试工作会涉及到的各个阶段。
相比于PTES,通用渗透测试框架更加细化。
相关阶段如下:
1、范围界定
在开始技术性安全评估之间,需要观察、研究目标环境的被测范围。同时需要了解该范围涉及到哪些单位。具体需要考虑的典型因素如下:
- 测试对象是什么?
- 应当采取何种测试方法?黑盒测试?白盒测试?
- 有哪些在测试过程中需要满足的条件?比如需要做内网渗透的测试,至少需要一台能够连入内网的pc。
- 哪些因素可能会限制测试执行的过程?
- 需要多久才能完成测试?
- 此次测试应当达成什么样的任务目标?
2、信息搜集
在划定了测试范围后,就需要进入信息搜集阶段。在此阶段,需要使用各种公开资源尽可能获取测试目标的相关信息。比如从互联网上搜集:
论坛、公告板、新闻组、媒体文章、博客、社交网络、其他商业或者非商业性的网站
此外,也可以借助各种搜索引擎获取相关数据。如DNS、服务器、路由关系、whois、数据库、email地址、电话号码、个人信息以及用户账户。
收集的信息越多,测试成功的概率越高。
3、目标识别
该阶段主要任务是识别目标的网络状态,操作系统和网络架构。旨在完整地展现目标网络中各种联网设备或者技术的完整关系,以帮助测试人员在接下来的工作中枚举目标网络的各种服务。我们可以理解为被测单位有哪些联网设备,哪些是在线的,它们的ip地址是什么,安装了什么系统,是什么牌子的设备,网络架构是什么样的?比如拓扑等信息,以此得知它们之间如何进行通信。
4、服务枚举
该阶段会根据之前阶段的成果,进一步找出目标系统中所有开放的端口。一旦找到了所有开放的端口,就可以通过这些端口来列出目标系统上运行的服务。主机上开放的端口都有相对应的服务程序,对这些信息进行深度分析后,可以进一步发掘目标网络基础设施中可能存在的漏洞。
5、漏洞映射
该阶段可以根据已经发现的开放端口和服务程序,查找、分析目标系统中存在的漏洞。如果能够采用自动和手动这两种不同的测试方法结合起来,审计人员对目标系统的认知就会更为清晰、透彻,并且能够仔细检查任何已知和未知的漏洞。我们可以将其理解为漏洞扫描。
6、社会工程学
如果目标网络没有直接的入口,欺骗的艺术将起到抛砖引玉的重要作用。对目标组织中的人员进行定向攻击,很有可能帮助我们找到渗透目标系统的入口。例如,诱使用户运行安装后门的恶意程序,就可能为审计人员的渗透工作形成突破。社会工程学渗透分为多种不同实现形式。伪装成网络管理员,通过电话要求用户提供自己的账户信息;发送钓鱼邮件来劫持用户的银行账户;甚至诱使某人出现在某个地点.在社会工程学中,达成同一既定目标的实现方式应有竟有。需要注意的是,在对目标实施欺骗以达成渗透目标之前,多数情况下需要长时间研究目标人员的心理。另外,在开展这个阶段的工作之前,需要实现研究国内法律是否有关于社会工程学的相关条款。
7、漏洞利用
在仔细检查和发现目标系统中的漏洞之后,就可以使用已有的漏洞利用程序对目标系统进行渗透。审计人员可以把客户端漏洞利用程序和社会工程学进行结合,进而控制目标系统。这个阶段的主要任务是控制目标系统。流程可以分为攻击前、攻击中、攻击后的相关行动。
8、权限提升
获取目标系统的控制权是渗透成功的标识。
审计人员可以使用适用于目标系统的本地漏洞来提升自己的权限。只要他们能够在目标系统上运行提权漏洞利用程序,就可以获得主机的超级用户权限或者系统级权限。审计人员还可以用该主机作为跳板,进一步攻击局域网络。比如他们可以使用嗅探手段截获网络数据包,坡解各种服务的密码,在局域网中使用网络欺骗手段。所以说,提权的最终目的是获得目标系统的最高访问权限。
9、访问维护
多数情况下,审计人员需要在一段时间内维护他们对于目标系统的访问权限。如在演示越权访问目标系统的时候,安装后门将节省重新渗透目标系统所耗费的大量时间。这种情况下,访问维护将节约获取目标系统访问权限所需要的时间、花费和资源。审计人员可以通过一些秘密的通信隧道,在既定时间内维持对目标的访问权限。这些隧道往往基于特定协议、代理或者点对点方法的后门程序。这种对系统的访问方法可以清楚展示,入侵人员在目标系统实施攻击时隐藏行踪的具体方法。我们可以理解为后门。
0、文档报告
在渗透测试的最后一个环节,审计人员需要记录、报告并现场演示那些已经识别、验证和利用了的安全漏洞。在被测单位的管理和技术团队会检查渗透时使用的方法,并会根据这些方法修补所有存在的安全漏洞。所以从道德角度来看,文档报告的工作十分重要。
简化渗透测试流程
1、明确目标
- 确定范围
- 确定规则
- 确定需求
2、信息收集
- 基础信息
- 系统信息
- 应用信息
- 人员信息
- 防护信息
3、漏洞探测
- 系统漏洞
- web服务漏洞
- web应用漏洞
- 其他端口
- 通信安全
4、漏洞验证
- 手工验证
- 工具验证
- 实验验证
5、漏洞利用
- 定制EXP
- 防御绕过
- 进一步渗透
- 清理痕迹
6、形成报告
- 整理结果
- 补充介绍
- 修复建议
黑客攻击的一般过程
欢迎关注博主公众号:旁骛OtherThing,不定期更新技术干货。
相关文章
- 一次完整的渗透测试流程
- Postman接口测试流程
- 聊聊探索式测试落地的全流程
- Jmeter接口测试流程详解(中科软测认证中心)
- 移动应用测试流程
- 论开发测试流程的重要性
- 软件自动化测试有哪些基本流程?
- 测试流程之关于用例评审
- 自动化测试的流程是什么
- 软件测试技术知识之性能测试流程总结
- 如何把握卡通渲染的制作流程?
- Struts2 运行流程
- web安全day13:简单深透测试流程
- 2022年全国大学生智能汽车竞赛西部赛 竞赛方案与实施流程
- 【等保知识】等保测评机构申请条件,所需资料以及流程
- 渗透测试-一次完整的渗透测试流程
- 性能测试怎么做?性能测试重点和各项性能测试流程(超级详细)
- app测试流程和重点,怎么避免Bug漏测?
- 接口测试的概念、目的、流程、测试方法有哪些?
- 第一次做性能测试?来捋一遍流程吧
- 互联网企业安全高级指南3.10 流程与“反流程”
- 2011年工作总结---测试流程梳理
- mybatis工作流程
- 阿里云云服务器测试uwgis的基本流程
- 《Linux C编程从入门到精通》一第2章 在Linux中编写C语言代码2.1 Linux中C语言程序开发流程和工具介绍
- Android中View绘制流程以及invalidate()等相关方法分析
- APP测试基本流程
- App测试流程
- SpringSecurity学习:简介、如何集成、拦截规则、忽略规则、自定义页面、参数详解、校验流程
- M5311模组对接OneNet平台—AT指令基本操作流程(LwM2M协议)
- Java流程控制
- 无线客户端测试流程随想
- 我的软件测试之旅:(9)行动——简化测试文档和流程
- 八卦某 G 的前端开发方式及流程--百度FEX前端nwind信息搜集神技能