文章目录
-
-
- 通用渗透测试框架
- 简化的渗透测试流程
- 黑客攻击的一般过程
-
通用渗透测试框架
从技术管理的角度来看,遵循正规的测试框架对安全测试极为重要。通用渗透测试框架涵盖了典型的审计测试工作和渗透测试工作会涉及到的每个阶段。
无论是白盒测试或黑盒测试,选择和使用测试步骤都是测试人员的责任。在测试开始之前,测试人员需要根据目标系统的实际环境 和已掌握的相关目标系统的情况,再指定最佳的测试策略。
- 范围界定
在开始技术性安全评估之间,务必要观察、研究目标环境的被测范围。同时还要了解,被测范围牵扯了多少单位,是单个单位还是多个单位会参与到安全评估的工作中来。在范围界定阶段,需要考虑的典型因素如下:
a.测试对象是什么?
b.应当采取何种测试方法?
c.有哪些在测试过程中需要满足的条件?
d.哪些因素可能会限制测试执行的过程?
e.需要多久才能完成测试?
f.此次测试需要达成什么样的任务目标? - 信息搜集
在划定了测试范围之后,就需要进入信息搜集阶段。在这个阶段,渗透人员需要使用各种公开资源尽可能地获取测试目标的相关信息,他们从互联网上搜集信息的互联网渠道主要有:
论坛|公告板|新闻组|媒体文章|博客|社交网络|其他商业或非商业性的网站
此外,他们也可以借助各种搜索引擎中获取相关数据,如:谷歌(Google hack 语法)、雅虎、MSN必应、百度等。收集的信息主要包括DNS 服务器、路由关系、whois 数据库、电子邮件地址、电话号码、个人信息以及用户账户。收集的信息越多,渗透测试的成功率越高。 - 目标识别
这个阶段的主要任务是识别目标的网络状态、操作系统以及网络架构。该阶段工作旨在完整的展现目标网络里各种联网设备或技术的完整关系,以帮助测试人员在接下来的工作里枚举目标网络里的各种服务。 - 服务枚举(端口扫描)
这一阶段会根据前面各个阶段的成果,进一步的找出目标系统中所有开放的端口。一旦找到了所有开放的端口,就可以通过这些端口来列出目标系统上运行的服务。主机上开放的端口都有相应的服务程序,对这些信息进行深度分析之后,可进一步发掘目标网络基础设施中可能存在的漏洞。 - 漏洞映射(漏洞扫描)
可以根据已经发现的开放端口和服务程序,查找分析目标系统中存在的漏洞。如果能够采用自动和手动这两种不同的测试方法结合起来,审计人员对目标系统的认知就会更为清晰、透彻,并能够仔细的检查任何已知和未知的漏洞。 - 社会工程学
如果目标网络中没有直接的入口,欺骗的艺术将起到抛砖引玉的重要作用。对目标组织中的人员进行定向攻击,很有可能帮护照我们找到渗透目标系统的入口。例如:诱使用户运行安装后门的恶意程序,就可能为审计人员的渗透工作形成突破。
社会工程学渗透分为多种不同的实现方式:伪装成网络管理员,通过电话要求用户提供自己的账户信息;发送钓鱼邮件来劫持用户的银行账户;甚至诱使某人出现在某个地点—这些都属于社会工程学攻击。
在社会工程学中,达成同一既定目标的方式应有尽有。需要注意的是,在对目标实施欺骗以达成渗透目标之前,多数情况下需要长时间的研究目标人员的心理。另外,在开展这个阶段的工作之前,你需要研究国内的法律是否有关于社会工程学的相关条款。 - 漏洞利用
在仔细检查和发现目标系统中的漏洞之后,就可以使用已有的漏洞利用程序对目标系统进行渗透。审计人员可以把客户端漏洞利用程序和社会工程学进行结合,进而控制目标系统。这个阶段的主要任务是控制目标系统。这个流程可以分为三步:涉及攻击前、攻击、攻击后的相关行动。 - 权限提升
获取目标系统的控制权是渗透成功的标识。接下来,审计人员就可以根据其所拥有的访问权限,在被测系统中自由发挥。审计人员也可以使用适用于目标系统的本地漏洞来提升自己的权限。只要他们能够在目标系统上运行提权漏洞利用程序,就可以获得主机的超级用户权限或者系统级权限。
审计人员接下来还可以以该主机为跳板,进一步攻击局域网络。根据之前渗透范围的界定,审计人员接下来会开展的攻击可能是受限制的,也可能是不受限制的。然后,他们很有可能以各种方式获得与控制系统有关的更多信息。具体的说,他们可能是用嗅探手段截获网络数据包,破解各种服务的密码,在局域网中使用网络欺骗手段。所以说,提升权限的最终目的是获取目标系统的最高访问权限。 - 访问维护(设置后门)
多数情况下, 审计人员需要在一段时间内维护他们对目标系统的访问权限。例如:在演示越权访问目标系统的时候,安装后门将节省重新渗透到目标系统所耗费的大量时间。这种情况下,访问维护将节约获取目标系统访问权限所需要的时间、花费和资源。
审计人员可以通过一些秘密的通信隧道,在既定的时间内维持对目标的访问权限。这些隧道往往基于特定协议、代理或者点对点方法的后门程序。这种对系统的访问方法可以清楚的展示入侵人员在目标系统实施攻击时隐藏行踪的具体方法。 - 文档报告
在渗透测试的最后一个环节里,审计人员要记录、报告并现场演示那些已经识别、验证和利用了的安全漏洞。在被测单位的管理和技术团队会检查渗透时使用的方法,并会根据这些文档修补所有存在的安全漏洞。所以,从道德角度来看,文档报告的工作十分重要。并为了帮助管理人员和技术人员共同理解、分析当前IT基础架构中的薄弱环节,可能需要给不同的部门撰写不同措辞的书面报告。此外,这些报告还可以用来获取和比对渗透测试前后系统目标的完整性。
简化的渗透测试流程是指在进行渗透测试过程中经常使用的流程,具体如下:
- 明确目标
确定范围|确定规则|确定需求 - 信息收集
基础信息|系统信息|应用信息|人员信息|防护信息 - 漏洞探测
系统漏洞|Web 服务漏洞|Web 应用漏洞|其他端口|通信安全 - 漏洞验证
手工验证|工具验证|实验验证 - 漏洞利用
定制EXP(完整的漏洞利用程序)|防御绕过|进一步渗透|清理痕迹 - 形成报告
整理结果|补充介绍|修复建议
文章图片
推荐阅读
- Kali渗透-DNS域名劫持与钓鱼
- Web安全|渗透测试Metasploit框架体验(5.理解MSF后渗透-之提权)
- 权限提升|【权限提升】MYSQL提权方法
- Hvv|【漏洞篇】面试
- kali_linux渗透测试|无线渗透_无线网络运行模式
- Web安全|涂寐‘s Blogs 文章更新——220613
- 渗透演练|WEB漏洞渗透测试靶场整理资源
- 渗透测试|【网络安全】常见的网路安全设备及功能作用总结
- 渗透靶场|渗透靶场--vulnstack-红队评估实战(5)