内网(域)渗透测试流程和模拟测试day--4--迈入内网(域内横向扩散)

前提

 通过内网信息收集             

我们已经拿到肉鸡最高权限并获得了其所在域内信息,了解到了域的域控信息(主机与ip地址),

现在我们需要将靶机作为跳板,进行横向渗透,拿到域内域控主机的控制

将靶机转到CS

我们前面文章已经介绍了CS现在,我们来使用CS(因为它是图形化工程)

tips:CS需要JDK的环境,不用太新的JDK,JDK-8已可以了

win(c/s分离)下

1.启动服务端

        命令行输入 

teamsever.bat 自己的客户端ip +123456(密码)

2.客户端打开CS目录下的cobalt strike.bat文件

3.客户端输入密码和ip连接到CS服务端

4.建立一个监视器(listeners)

打开监听器,add一个listener选择类型为http端口自定义,选择生成一个.exe类型文件

        ----这样我们就生成了一个后门

我们使用蚁剑将exe文件上传到靶机,并使用蚁剑打开exe文件,我们便连接到了靶机

payload:

1. HTTP 和 HTTPS Beacon

  • 工作原理:通过 HTTP GET 请求下载任务,通过 HTTP POST 请求传回数据。

  • 特点:传输速度快,但隐蔽性差,容易被防火墙或内网审计工具拦截。

  • 适用场景:适用于需要快速传输数据的场景,但需要注意隐蔽性。

----------------------我们是模拟的就采用最简单的这个,不考虑隐蔽性什么的

2. DNS Beacon

  • 工作原理:使用 DNS 请求将 Beacon 返回,DNS 响应告诉 Beacon 休眠或连接到团队服务器来下载任务。

  • 特点:隐蔽性高,受害者不开放任何端口,可以规避防火墙,走 53 端口。

  • 适用场景:适用于需要高隐蔽性的场景,特别是在目标网络对 DNS 流量较为宽松的情况下。

3. SMB Beacon

  • 工作原理:使用命名管道通过父级 Beacon 进行通讯,子 Beacon 从父 Beacon 获取任务并发送。

  • 特点:相对隐蔽,绕防火墙时可能发挥奇效,基于 Windows 的命名管道通信。

  • 适用场景:适用于内网环境,特别是在目标网络中已经有一个上线的 Beacon 可以作为父 Beacon。

------------------这个payload会用在我们的后面域内渗透

4. TCP Beacon

  • 工作原理:使用 TCP socket 与父 Beacon 进行通信。

  • 特点:流量都是明文的,容易被发现,但在内网穿透时非常有用。

  • 适用场景:适用于内网穿透场景,特别是在其他协议无法使用时。

5. Foreign Beacon

  • 工作原理:主要用于将其他工具(如 Metasploit)生成的 Payload 与 Cobalt Strike 结合使用。

  • 特点:提高 Cobalt Strike 的兼容性,允许与其他工具的集成。

  • 适用场景:适用于需要与其他工具结合使用的场景,如将 Meterpreter 会话转换为 Cobalt Strike 的 Beacon 会话。

6. External C2 Beacon

  • 工作原理:允许用户自定义 C2 通信渠道,不局限于默认的 HTTP、HTTPS、DNS、SMB、TCP 通道。

  • 特点:高度可定制,适用于复杂的网络环境和特定的通信需求。

  • 适用场景:适用于需要自定义通信协议或通道的高级攻击场景。

7. Beacon 的生成模式

  • Stage (有阶段):Beacon 会分段加载 shellcode,通过不断向 Listener 发起请求,最终获取完整的 shellcode 并执行。

  • Stageless (无阶段):在生成时包含完整的 shellcode,文件大小较大,但无需分段加载。

  • 适用场景:Stage 模式适用于需要分阶段加载的场景,Stageless 模式适用于需要快速执行的场景。

8. Beacon 的通信策略

  • 异步式通信:通信频率低、速度慢,Beacon 主动请求任务列表,然后进入 SLEEP 状态。

  • 交互式通信:C2 对 Beacon 实时控制,通信频率高,响应速度快。

  • 适用场景:异步式通信适用于需要隐蔽的场景,交互式通信适用于需要实时控制的场景。

tips:挑选后门的类型根据具体情况而定

1.HTML Appliaction:生成一个恶意的HTML Appliacton木马

2.MS Office Macro:生成office宏病毒文件。   

3.Payload Generator:生成各种编程语言的payload

4.Windows Executable:生成32位或64位的exe、dll可执行文件   

我们这里就选择win的executable(模拟的域控也是win)

5.连接成功点击主机进入beacon

域内渗透困难点

1.我们只有域内一个很普通的服务器的权限;

2.域内域控主机一般不会连接到外网,我们不能使用控制靶机相同的方式控制域控

横向扩散

一般常见的方式有四种

分别是

IPC$,PTH,PTK,PTT等

IPC$扩散

这里我们使用IPC$的方式进行扩散

IPC$

是Windows系统中的一个默认共享,可以利用它在内网中进行横向移动。通过建立IPC 连接,可以将恶意文件复制到目标主机并执行。利用IPC$,甚至可以与目标主机建立一个连接,利用这个连接,连接者可以得到目标主机上的目录结构、用户列表等信息。

---#相当于建立一个两个局域网内的主机通道(小道)

利用条件

开放了139、445端口;

目标开启ipc$文件共享;

获取用户账号密码。

使用cmd指令建立域内的链接

net use \\目标IP\ipc$ "域成员密码" /user:域名\域成员账号

建立连接后

使用

net share \\目标IP

查看目标服务器所开放的共享资源,也可以直接尝试上传或访问某个共享,确认是否有可以利用的资源或信息

这个时候我们就可以上传我们之前的木马文件+定时(计划)任务使得域控上线

注意

我们的域控不能出网,无法像之前的方式控制域控。

我们必须思考如何才可以连接到网内主机

建立隧道----CS的SMB 管道

----我们(外)是通过控制肉鸡(对外对内)控制域内域控(内)

1.在CS中建立payload为SMB beacon 的监视器

仍然生成win exec的后门(模拟域控也是win)

2.通过肉鸡和域控建立的IPC管道传输后门exe文件

----(1)使用 net use 命令将目标主机的 C$ 共享目录映射到本地的一个驱动器字母(例如 Z:):

net use z: \\目标IP\c$ "密码" /user:"用户名"

---(2)使用shell copy /file \\ip地址\\$C,通过肉鸡的smb后门文件的绝对路径上传到域控的C驱动盘下

-----一个初学的问题

Q:

既然靶机和域内主机已经建立了IPC,为什么还得生成smb 的beacon来使得域内主机上线,而不是直接使用ipc?

A:不考虑隐蔽的情况下

  • IPC$ 连接:主要用于文件共享和简单的命令执行,功能相对有限。它允许我们复制文件、执行基本命令,但无法进行复杂的交互和任务管理。

困难点2

--我们虽然已经上传了smb的后门文件到域控主机内,但是我们却不能运行域控内的该后门文件,我们该如何运行?

A:服务或计划任务

服务:

通过服务运行 SMB 后门文件

使用 sc 命令在目标主机上创建并启动一个服务来运行 SMB 后门文件:

sc \\目标IP create BackdoorService binPath= "C:\path\to\smb_backdoor.exe" start= auto
sc \\目标IP start BackdoorService

肉鸡连接DC域控 

link ip

这样我们就可以通过肉鸡来对域内域控进行控制

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值