导航
当前位置:网站首页 > 黑客技术 > 内网渗透提权工具,内网渗透方法

内网渗透提权工具,内网渗透方法

作者:hacker 日期:2022-09-08 分类:黑客技术

导航:

内网渗透-常用工具免杀

Mimikatz其实并不只有抓取口令这个功能,它还能够创建票证、票证传递、hash传递、甚至伪造域管理凭证令牌等诸多功能。由于mimikatz的使用说明网上资料很多,这里就不多加介绍了,随着这两年hw行动越来越多,企事业单位也都开始注重内网安全,有预算的会上全套的终端安全、企业版杀软或者EDR,就算没有预算的也会装个360全家桶或者主机卫士之类的,这也导致很多时候你的mimikatz可能都没法拷贝过去或者没有加载执行,拿了台服务器却横向移不动就尴尬了。因为这款工具特别出名所以被查杀的机率很大, 我们可以通过 github 上的开源代码对其进行源码免杀从而 bypass 反病毒软件。

Mimikatz 源代码下载

免杀步骤

替换 mimikatz 关键字 shenghuo

mimikatz 下的文件全部改为 shenghu

把项目里所有的文件注释去掉

/_ Benjamin DELPY gentilkiwi benjamin@gentilkiwi.com Licence : _/

打开红色框框内的内容,替换图标文件

出现 无法找到 v140 的生成工具(平台工具集 =“v140”),要选择自己安装的平台工具集

重新生成

生成的程序能够正确运行

成功过360

PrintSpoofer做免杀

printspoofer提权工具目前主流的提权工具之一,360 安全会自动查杀,其他杀毒软件并不会查杀。

源码下载地址:

将PrintSpoofer.cpp 里面的输出帮助文档全部清空

导入图标

重新生成,程序生成成功

成功过360

metasploit 是一款开源的安全漏洞检测工具,同时Metasploit 是免费的工具,因此安全工作人员常用 Metasploit 工具来检测系统的安全性。Metasploit Framework (MSF) 在 2003 年以开放源码方式发布,是可以自由获取的开发框架。 它是一个强大的开源平台,供开发,测试和使用恶意代码,这个环境为渗透测试、 shellcode 编写和漏洞研究提供了一个可靠平台。其中攻击载荷模块(Payload) , 在红队中是个香饽饽,使用这个模块生成的后门,不仅支持多种平台,而且 Metasploit 还有编码器模块(Encoders),生成后门前,对其进行编码转换,可以混 淆绕过一部分杀毒软件。

工具 Dev-Cpp 5.11 TDM-GCC 4.9.2 Setup 下载地址

metasploit源码下载:metasploit-loader/master/src/main.c

选择:文件-新建项目-consoleApplication-c 项目

把winsock2.h 移动到windows.h 上 不然编译会出错。

将这四处的数字改为其他数字

设置攻击载荷,执行后成功上线

成功过360

生成python64位的shellcode

添加生成的shellcode

编译成程序

pyinstaller -F test.py —noconsole

此时还要做的就是更改图标,这里介绍一种方法

首先右击它,选择“添加到压缩文件”

在弹出来的一个“压缩文件名和参数”框中设置压缩文件格式为“ZIP”,压缩方式为“存储”,压缩选项为“创建自解压格式压缩文件”。

随后选择“高级”选项卡。选择了“高级”选项卡以后直接点击“自解压选项”

在设置选项卡中解压后运行对应程序

在模式选项卡中选择解压临时文件夹和全部隐藏

随后再选择“更新”选项卡,在覆盖方式中选择“覆盖所有文件”

最后选择“文本和图标”选项卡,在自定义自解压文件徽标和图标中选择“从文件加载自解压文件图标”,点击“浏览”,找到自己想要加载的图标文件后并打开

然后就点击确定(两次)就可以生成一个新的exe程序了。图标已经改变了,再运行测试一下

上传去目标主机,这里更改了程序名称

在线查杀

是很流行的编程语言,也可以用它来做一个加载器运行cobaltstrike的 shellcode,生成出来的 文件特别的小,可以很好地投递传输。

项目地址 用 vs2017 打开 sln 项目文件

选择 xorkryptor 生成编码器 用 cobalt strike生成 raw 二进制文件

encrypt.bin 就是经过编码后的文件

项目里面存有 Rsources 和 encrypt.bin 文件 事实上项目是没有这个文件夹和文 件所以在当前目录新建文件夹和将生成好的shellcode文件 encrypt.bin 复制到文 件夹里。右键选择编译文件即可。

此时文件正常

重新编译,成功生成后门程序

成功过360

成功上线

MSF内网渗透系列2-权限提升

在上篇文章中,通过win7运行msf.exe,kali接收到一个session,但这个session权限只是普通权限,无法做更多的操作。

权限提升

1.提高程序运行级别

2.UAC绕过

3.利用提权漏洞进行提权

提高程序运行级别

msf模块exploit/windows/local/ask

但会触发UAC,只有当用户同意是才能获得更高权限

可以看到session 5只是普通权限,这时候利用ask模块进行提权,该模块需要设置要用来提权的session,以及启动程序的名称

ask模块设置完成后,就可以使用了,运行exploit,回到win7,可以看见弹出一个execl.exe程序框,如果你点击是,则kali会获得一个新的session,如果点击否,则kali会得到失败信息。

Win7 截图:

win7 点击 否,kali返回信息:

win7 点击 是,kali获取到新的session

使用background退出这个meterpreter

使用sessions,查看session

使用sessions -i 6,进入新获取的session

使用getuid查看该session权限

发现还是普通权限

这时候使用getsystem,获得系统权限

再使用getuid查看

UAC绕过

msf模块

exploit/windows/local/bypassuac

exploit/windows/local/bypassuac_injection

exploit/windows/local/bypassuac_vbs

这里使用第一个模块进行绕过UAC提权

利用提权漏洞进行提权

exploit/windows/local/ms14_058_track_popup_menu

等等

这里使用

exploit/windows/local/ms16_014_wmi_recv_notif

这个模块,同样使用info和show options查看信息,只需要设置一个session就可以使用

攻击成功会直接返回一个shell,使用whoami查看权限

成功提权

用Powershell框架Empire进行内网域渗透(一)

自从powershell在windows开始预装之后,就成为Windows内网渗透的好帮手,好处多多:天生免杀、无文件落地、 无日志(雾) 。

于是老外开发了 empire 框架,毕竟 cobalt strike 要收费的不是?

功能模块丰富,老外把内网[域]渗透中能用到的都整合进去了:内网探测,提权,凭据获取,横向移动,权限维持。模块那么多,不懂就 searchmodule 或者[tab]两下。

基于 debian 系的,如kali或者ubuntu都可以安装。

git clone

在执行安装脚本之前,建议修改软件源和 pip 源,避免因为网络问题安装失败。

sudo ./setup/install.sh

安装好后执行 ./empire 后就可以用了。

先查看可用的 Listener 有哪些?[tab]两下就出来了所有可用的。

通过 info 查看指定模块的配置信息

这里还是先使用http的监听,通过 set Port 8080 修改监听的端口, 2.x版必须同时设置 Host ,然后 execute 启动监听。

通过list命令查看正在运行的监听

可以通过usestager来生成文件,引诱对方运行,可以看到支持linux、Windows、osx。

这里我们选用launcher_bat,通过 info 查看可以配置的参数。

这里需要注意的是Listener的Name,必须跟前面启用的Listener的一致。

生成的文件内容是这样子的

其中那么一大段的powershell命令,跟 (Empire: listeners) launcher powershell test 的执行结果是一样的。这里先不关心怎么让其在别的机子上运行,那是另外的技术活。

用win7的cmd执行了那一串命令后,进程中可以看到有powershell.exe

执行 agents 命令查看回连的机子,然后 interact BNR1T9ZC 来与之进行交互。

通过 help 命令可以查看到在agent上可以执行很多命令。这里挑些重要的讲。

bypassuac ,顾名思义就是绕过uac的。除非你是本机的administrator,否则普通管理员都需要右键某个程序,然后选择 run as administrator 才能运行,这都是uac作的怪。

因为这里是用普通域用户权限执行的,连本机的普通管理员都不算,所以失败了。

sc,屏幕截图命令,可以通过这个了解机子上的人正在做什么。

我们看看usemodule还有哪些可用的模块?(有些模块需要对应权限才能成功运行)

输入 help agentcmds 可以看到可供使用的常用命令

执行 ipconfig 查看网卡信息(如果不在help列表中,那么会自动执行远程主机上的可用命令)

可以看到dns的ip是1.1.1.10,既是域控的ip

当你获得一个会话之后,又想要派生更多会话,怎么办?

使用 invoke_shellcode 来注入 meterpreter 的shellcode

metasploit先要设置一个 listener

然后empire执行

成功获取meterpreter会话(才怪, empire2.5 版本)

在session1建立到1.1.1.0/24网段的路由跳转

run autoroute -s 1.1.1.0/24

通过sesesion1打通网段后,可以看到域控服务器1.1.1.10开放的端口

使用ms17010成功获取meterpreter会话。

至此,域控拿下,可以开始漫游内网。(还是得靠metasploit,单一个empire做的事情很有限)

获取域管理员的明文凭据

用后渗透模块 credential_collector 收集可用的凭据

empire 可以直接使用 mimikatz 来获取凭据。 注意,此时客户端上powershell进程占用的cpu可达90%,会引起卡顿

creds 查看获取的凭据

利用pth来传递hash,用这个hash创建一个新的进程,可以看到新的进程id是3032

然后 credentials/tokens 查看不同用户的进程id

对指定进程steal_token之后,再去与agent交互就是域用户user的权限了。

用revtoself再切换回原来的权限(普通域用户权限太低做不了什么)

到这里尝试了好几个 situational_awareness/network/powerview 的模块返回的都是空结果,看来是需要域管理员才能执行成功。

碰巧域管理员也登陆这台机子,那么就能用他的权限做很多事情了。

也可以使用 usemodule management/psinject 进行切换,设置好ProcessId即可

现在我们又获得了一次域管理员权限,可以开始横向移动了。

先内网探测下可用的机子有哪些,使用了 situational_awareness 中的三个模块:

find_localadmin_access user_hunter get_domain_controller

又一次可以确定1.1.1.10就是域控所在了。用 lateral_movement/invoke_psexec 移动到域控服务器上面。

终于又回到了域控服务器,接下来要考虑的是如何导出域控上面的所有hash,并且维持权限。

猜你还喜欢

已有2位网友发表了看法:

  • 访客

    访客  评论于 [2022-09-09 03:00:47]  回复

    个新的exe程序了。图标已经改变了,再运行测试一下 上传去目标主机,这里更改了程序名称 在线查杀 是很流行的编程语言,也可以用它来做一个加载器运行cobaltstrike的 shellcode,生成出来的 文件特别的小,可以很好地投递传输。 项目地址

  • 访客

    访客  评论于 [2022-09-09 09:37:56]  回复

    sln 项目文件 选择 xorkryptor 生成编码器 用 cobalt strike生成 raw 二进制文件 encrypt.bin 就是经过编码后的文件 项目里面存有 Rsources 和 encrypt.bin 文件 事实上项目是没有这个文件夹和文

欢迎 发表评论:

{/if}