一种windows操作系统下渗透测试靶场平台设计系统和方法与流程

专利2023-02-20  97



1.本发明涉及一种windows操作系统下渗透测试靶场平台设计系统和方法,属于计算机技术领域。


背景技术:

2.目前,随着网络攻击频次不断增加,网络安全的重要性日益凸显,各大政府、企业及学校等单位都需要对其内部网络进行加固,而渗透测试则是网络安全人员在被授权的情况下模拟黑客行为,发现网络薄弱处并进一步修补漏洞。在这一领域也出现了类似cobalt strike一类的渗透测试框架,帮助渗透测试人员更加方便地进行测试,从而更好地加固整个网络。这些框架虽然有效地帮助渗透测试人员提供了效率,但是,由于其提供的功能具有一定的局限性,在真实的渗透测试中,cobalt strike自身提供的功能是远远不够的。因此,在其基础上进行进一步插件开发并利用其发现更多潜藏于网络深处的漏洞是十分重要且必须的。


技术实现要素:

3.本发明目的在于针对上述现有的功能的不足,提供了一种windows操作系统下渗透测试靶场平台设计系统,该系统加强了现有cobalt strike渗透测试框架的功能性,并且新增了程序多态性及对抗重启,拓展了后渗透时的测试面,并完善了测试程序的自卸载收尾工作。
4.本发明解决其技术问题所采用的技术方案是:一种windows操作系统下渗透测试靶场平台设计系统,该系统包括变形模块、植入模块、后渗透模块和自卸载模块。变形模块用于为测试程序增添多态性,使其形态多变。植入模块用于在windows靶机文件系统中隐藏测试程序,并以多种方式达到对抗重启、权限维持的目的。后渗透模块用于对靶机开展键盘记录、截屏、上传下载文件及获取反弹shell等实际信息收集操作。自卸载模块用于清除windows日志及测试程序植入时所留痕迹并取消其权限维持,删除测试程序。
5.进一步地,本发明变形模块包括多态程序制作模块和多态程序主模块,多态程序制作模块需要一段shellcode作为输入,随后输出一个该shellcode的加载程序,且该程序具有多态性,多态程序主模块被多态程序制作模块所使用,被嵌入到了输出程序中。
6.进一步地,本发明植入模块包括sfx自解压程序、对抗重启模块,sfx自解压程序能提供测试程序放置时的便捷性,对抗重启模块包括注册服务、wmi事件订阅、设置计划任务、添加测试程序到启动目录、添加测试程序到注册表run/runonce键及dll劫持六种方式。
7.进一步地,本发明后渗透模块包括键盘记录、桌面截图、文件系统、socks5反向代理及反弹交互式shell五个模块。
8.进一步地,本发明自卸载模块包括windows日志的精确删除及权限维持的取消。
9.本发明还提供了一种windows操作系统下渗透测试靶场平台设计系统的实现方法,该方法包括以下步骤:
10.步骤1:将shellcode输入变形模块获得一个具有多态性的测试程序;
11.步骤2:将步骤1中生成的具有多态性的测试程序配合一些其他配置文件等通过植入模块制作为一个sfx自解压程序;
12.步骤3:通过在靶机上执行步骤2中制作的sfx自解压程序将所需测试程序放置到指定路径并运行;
13.步骤4:测试程序运行并从对抗重启模块中选择合适的方法在宿主机中达到对抗重启的目的;
14.步骤5:测试程序在宿主机上驻留后,渗透测试人员通过后渗透模块中提供的各个功能展开测试;
15.步骤6:在完成对应的所有工作之后,使用自卸载模块对windows日志特定条目进行精确删除,随后去除对抗重启,最后删除所有测试程序。
16.进一步地,本发明所述步骤1中变形模块实现的方法为:包括以下步骤:
17.步骤1-1:多态性程序poly.exe运行,释放出临时文件temp.exe,随后程序终止,进行自删除操作;
18.步骤1-2:temp.exe程序运行,读取poly.exe程序中的shellcode及密钥,随后将其解密,然后生成一个新的随机密钥,使用新的密钥加密shellcode并创建新文件poly.exe,写入新密钥及使用新密钥加密后的shellcode;
19.步骤1-3:新生成的poly.exe程序运行,使用新密钥解密shellcode后执行。
20.进一步地,本发明所述步骤2中制作sfx自解压程序的方法为:包括以下步骤:
21.步骤2-1:创建一个新的文件夹,向文件夹中放置所有所需文件,测试程序文件、配置文件、数据文件等;
22.步骤2-2:将该新建文件夹打包生成file.7z;
23.步骤2-3:编写config.txt,该文件中指定文件解压路径及解压后命令执行;
24.步骤2-4:使用sfx(self-extracting)技术并结合步骤2-3中编写的config.txt文件将步骤2-2中生成的file.7z制作为file.exe文件,在宿主机上无需安装任何解压软件即可通过执行file.exe自解压。
25.本发明所述步骤4中对抗重启的方法包括:
26.方法4-1:注册服务,通过将测试程序注册为服务的方式对抗重启;
27.方法4-2:wmi事件订阅,通过注册一个commandlineeventconsumer类型的事件消费者再搭配一个判断机器重启的事件过滤器来对抗重启;
28.方法4-3:设置计划任务,通过设置计划任务来定时执行测试程序以对抗重启;
29.方法4-4:将测试程序添加到启动目录,生成测试程序的快捷方式,并将快捷方式放置到宿主机的启动目录中;
30.方法4-5:添加测试程序到注册表run/runonce子键,在windows系统上的特定注册表项中,如hkey_local_machine\software\microsoft\windows\currentversion\run键中的所有值都是对应程序的绝对路径,其中的所有程序都会在机器重启后执行。
31.方法4-6:dll劫持,利用windows平台寻找dll文件时路径搜索顺序的缺陷对其进行劫持,再配合上如微软分布式事务协调器(msdtc)一类配置为开机启动运行的服务,便可达到对抗重启的目的。
32.有益效果:
33.1、本发明新增了cobalt strike所缺省的植入功能,使得渗透人员的可以将其测试程序更加便捷地植入,并能对抗重启,获得对宿主机持久的控制权。
34.2、本发明具有多态性的shellcode加载程序,其实现了输出程序形态多变。
35.3、本发明完善了cobalt strike后渗透功能模块,添加了反弹交互式shell及socks 5反向代理的功能,使渗透测试人员的工作更加简便。
36.4、本发明新增了自卸载模块,使得渗透测试人员的行动痕迹能被完全清除,不留痕迹。
附图说明
37.图1为本发明的方法流程图。
38.图2为本发明sfx自解压程序制作流程图。
具体实施方式
39.下面结合说明书附图对本发明创造作进一步地详细说明。
40.如图1所示,本发明提出了一种windows操作系统下渗透测试靶场平台设计系统,该方法中包括变形模块、植入模块、后渗透模块及自卸载模块。所述变形模块,用于为测试程序增添多态性,使其形态多变。所述植入模块用于在windows靶机文件系统中隐藏测试程序,并以多种方式达到对抗重启、权限维持的目的。所述后渗透模块,用于对靶机开展键盘记录、截屏、上传下载文件及获取反弹shell等实际信息收集操作。所述自卸载模块用于清除windows日志及测试程序植入时所留痕迹并取消其权限维持,删除测试程序。
41.如图2所示,本发明植入模块包括sfx自解压程序。具体包括:
42.本发明变形模块,用于为测试程序增添多态性,使其形态多变。
43.本发明植入模块中还包含对抗重启模块,sfx自解压程序能提供测试程序放置时的便捷性,对抗重启模块包括注册服务、wmi事件订阅、设置计划任务、添加测试程序到启动目录、添加测试程序到注册表run/runonce键及dll劫持六种方式。
44.本发明后渗透模块包括键盘记录、桌面截图、文件系统、socks5反向代理及反弹交互式shell五个模块。
45.本发明自卸载模块包括windows日志的精确删除及权限维持的取消。
46.如图1所示,本发明提供了windows操作系统下渗透测试靶场平台设计系统的实现方法,该方法包括以下步骤:
47.步骤1:将shellcode输入变形模块获得一个具有多态性的测试程序;
48.步骤2:将步骤1中生成的具有多态性的测试程序配合一些其他配置文件等通过植入模块制作为一个sfx自解压程序;
49.步骤3:通过在靶机上执行步骤2中制作的sfx自解压程序将所需测试程序放置到指定路径并运行;
50.步骤4:测试程序运行并从对抗重启模块中选择合适的方法在宿主机中达到对抗重启的目的;
51.步骤5:测试程序在宿主机上驻留后,渗透测试人员通过后渗透模块中提供的各个
功能展开测试;
52.步骤6:在完成对应的所有工作之后,使用自卸载模块对windows日志特定条目进行精确删除,随后去除对抗重启,最后删除所有测试程序。
53.如图2所示,本发明所述步骤2中创建sfx自解压程序包括以下步骤:
54.a)创建一个新的文件夹,向文件夹中放置所有所需文件,测试程序文件,配置文件,数据文件等;
55.b)将该新建文件夹制作为一个7z格式的压缩包文件file.7z;
56.c)编写config.txt,该文件中可指定文件解压路径及解压后操作执行;
57.d)使用sfx(self-extracting)技术并结合步骤a)中编写的config.txt文件将步骤b)中生成的file.7z制作为file.exe文件,在宿主机上无需安装任何解压软件即可通过执行file.exe文件将其中的文件放置到指定路径。
58.本发明所述步骤4中对抗重启的方法包括:
59.a)注册服务,通过将测试程序注册为服务的方式对抗重启;
60.b)wmi事件订阅,通过注册一个commandlineeventconsumer类型的事件消费者再搭配一个判断机器重启的事件过滤器来对抗重启;
61.c)设置计划任务,通过设置计划任务来定时执行测试程序来对抗重启;
62.d)将测试程序添加到启动目录,生成测试程序的快捷方式,并将快捷方式放置到宿主机的启动目录中;
63.e)添加测试程序到注册表run/runonce子键,在windows系统上的特定注册表项中,如hkey_local_machine\software\microsoft\windows\currentversion\run键中的所有值都是对应程序的绝对路径,其中的所有程序都会在机器重启后执行;
64.f)dll劫持,利用windows平台寻找dll文件时路径搜索顺序的缺陷对其进行劫持,再配合上如微软分布式事务协调器(msdtc)一类配置为开机启动运行的服务,便可达到对抗重启的目的。
65.以上所述仅为本发明的实施方式而已,并不用于限制本发明。对于本领域技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原理的内所作的任何修改、等同替换、改进等,均应包括在本发明的权利要求范围之内。

技术特征:
1.一种windows操作系统下渗透测试靶场平台设计系统,其特征在于:所述系统包括变形模块、植入模块、后渗透模块和自卸载模块;所述变形模块用于给测试程序新增多态特性;所述植入模块用于隐藏测试程序并设置其自启动,进行权限维持;所述后渗透模块用于对靶机开展键盘记录、截屏、上传下载文件及获取反弹shell等实际信息收集操作;所述自卸载模块用于清除windows日志及测试程序植入时所留痕迹并取消其权限维持,删除测试程序。2.根据权利要求1所述的windows操作系统下渗透测试靶场平台设计系统,其特征在于:所述变形模块包括多态程序制作模块和多态程序主模块,多态程序制作模块需要一段shellcode作为输入,随后输出一个所述shellcode的加载程序。3.根据权利要求1所述的windows操作系统下渗透测试靶场平台设计系统,其特征在于:所述植入模块包括sfx自解压程序、对抗重启模块,sfx自解压程序能提供测试文件放置时的便捷性,对抗重启模块包括注册服务、wmi事件订阅、设置计划任务、添加测试程序到启动目录、添加测试程序到注册表run/runonce键及dll劫持六种方式。4.根据权利要求1所述的windows操作系统下渗透测试靶场平台设计系统,其特征在于:所述后渗透模块包括键盘记录、桌面截图、文件系统、socks5反向代理及反弹交互式shell五个模块。5.根据权利要求1所述的windows操作系统下渗透测试靶场平台设计系统,其特征在于:所述自卸载模块包括windows日志的精确删除及测试程序权限维持的取消。6.一种windows操作系统下渗透测试靶场平台设计系统的实现方法,其特征在于:所述方法包括以下步骤:步骤1:将shellcode输入变形模块获得一个具有多态性的测试程序;步骤2:将上述步骤1中生成的具有多态性的测试程序配合一些其他配置文件等通过植入模块制作为一个sfx自解压程序;步骤3:通过在靶机上执行步骤2中制作的sfx自解压程序将所需测试文件放置到指定路径并运行;步骤4:测试程序运行并从对抗重启模块中选择合适的方法在宿主机中达到对抗重启的目的;步骤5:测试程序在宿主机上驻留后,渗透测试人员通过后渗透模块中提供的各个功能展开测试;步骤6:在完成对应的所有工作之后,使用自卸载模块对windows日志特定条目进行精确删除,随后去除对抗重启,最后删除所有测试文件。7.根据权利要求6所述的windows操作系统下渗透测试靶场平台设计方法,其特征在于:所述步骤1中变形模块的实现:包括以下步骤:步骤1-1:多态性程序poly.exe运行,释放出临时文件temp.exe,随后程序终止,进行自删除操作;步骤1-2:temp.exe程序运行,读取poly.exe程序中的shellcode及密钥,随后将其解密,然后生成一个新的随机密钥,使用新的密钥加密shellcode并创建新文件poly.exe,写
入新密钥及使用新密钥加密后的shellcode;步骤1-3:新生成的poly.exe程序运行,使用新密钥解密shellcode后执行。8.根据权利要求6所述的windows操作系统下渗透测试靶场平台设计方法,其特征在于:所述步骤2中制作sfx自解压程序:包括以下步骤:步骤2-1:创建一个新的文件夹,向文件夹中放置所有所需文件,测试程序文件、配置文件、数据文件;步骤2-2:将该新建文件夹打包生成file.7z;步骤2-3:编写config.txt,该文件中指定文件解压路径及解压后命令执行;步骤2-4:使用sfx并结合步骤2-3中编写的config.txt文件将步骤2-2中生成的file.7z制作为file.exe文件,在宿主机上无需安装任何解压软件即可通过执行file.exe自解压。9.根据权利要求6所述的windows操作系统下渗透测试靶场平台设计方法,其特征在于:所述步骤4中对抗重启的方法包括:方法4-1:注册服务,通过将测试程序注册为服务的方式对抗重启;方法4-2:wmi事件订阅,通过注册一个commandlineeventconsumer类型的事件消费者再搭配一个判断机器重启的事件过滤器来对抗重启;方法4-3:设置计划任务,通过设置计划任务来定时执行测试程序以对抗重启;方法4-4:将测试程序添加到启动目录,生成测试程序的快捷方式,并将快捷方式放置到宿主机的启动目录中;方法4-5:添加测试程序到注册表run/runonce子键,在windows系统上的特定注册表项中,如hkey_local_machine\software\microsoft\windows\currentversion\run键中的所有值都是对应程序的绝对路径,其中的所有程序都会在机器重启后执行;方法4-6:dll劫持,利用windows平台寻找dll文件时路径搜索顺序的缺陷对其进行劫持,再配合上如微软分布式事务协调器(msdtc)一类配置为开机启动运行的服务,便可达到对抗重启的目的。

技术总结
本发明公开了一种windows操作系统下渗透测试靶场平台设计系统和方法,该系统包括变形模块、植入模块、后渗透模块和自卸载模块。所述变形模块,用于为测试程序增添多态性,使其形态多变。所述植入模块用于在windows靶机文件系统中隐藏测试程序,并以多种方式达到对抗重启、权限维持的目的。所述后渗透模块,用于对靶机开展键盘记录、截屏、上传下载文件及获取反弹shell等实际信息收集操作。所述自卸载模块用于清除windows日志及测试程序植入时所留痕迹并取消其权限维持,删除测试程序。本发明很好地实现了渗透测试程序在靶场中的部署及后渗透测试,方便了渗透测试人员的工作,大大提高了其效率、漏洞发现率,以及整个所测试网络的安全性。的安全性。的安全性。


技术研发人员:沙乐天 袁伟峰
受保护的技术使用者:南京萌草信息技术有限公司
技术研发日:2022.07.21
技术公布日:2022/11/1
转载请注明原文地址: https://tieba.8miu.com/read-1111.html

最新回复(0)