Skip to content
KitploitKITPLOIT
工具博客
提交
工具博客
提交

黑客、渗透测试和网络安全工具,武装您的安全武器库!

Kitploit 是一个黑客、网络安全和渗透测试工具的目录。发现最新的项目更新,查找漏洞、分析系统、自动化测试并加强你的安全。

··订阅源·联系·隐私·© 2026 Kitploit

工具目录

分类

查看所有分类
Loading categories
milvus-auth-audit — Milvus 认证安全检测脚本:CVE-2025-64513 (sourceid后门) / CVE-2026-26190 (/expr弱token) / 内部端口53100 | Kitploit
工具/GitHubGitHub/qianlijaingshan/milvus-auth-audit
身份验证与授权漏洞扫描器漏洞利用API安全测试渗透测试错误配置数据库安全
GitHubqianlijaingshan/milvus-auth-audit

milvus-auth-audit

Milvus 认证安全检测脚本:CVE-2025-64513 (sourceid后门) / CVE-2026-26190 (/expr弱token) / 内部端口53100

查看仓库
481个月前尚未审核

最受欢迎

查看全部 →

发现我们社区最常用的工具。

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享

milvus-auth-audit

Milvus 认证安全检测脚本。检测三个认证缺陷:

缺陷CVE影响版本检测方式
sourceid 后门绕过认证CVE-2025-64513< 2.4.24 / < 2.5.21 / < 2.6.5gRPC ListDatabases + sourceid 注入
管理端口 /expr 弱 tokenCVE-2026-26190< 2.5.27 / < 2.6.10HTTP /expr?code=1%2B1&auth=by-dev(code 参数需 URL 编码)
内部端口 rootcoord 53100 无认证—< 2.6.10(2.6.10 起不再监听)gRPC 直连 RootCoordService

用法

root@kitploit:~
# proxy 层检测(sourceid 后门 + /expr 弱 token)
python3 milvus-auth-audit.py --host 127.0.0.1 --port 19530 --mgmt-port 9091

# 完整检测(含内部端口,需容器网络内可达)
python3 milvus-auth-audit.py --host <容器IP> --port 19530 --mgmt-port 9091 --internal-port 53100

参数:

  • --host:Milvus proxy 地址
  • --port:proxy gRPC 端口(默认 19530)
  • --mgmt-port:管理端口(默认 9091,/expr 在这里)
  • --internal-port:内部端口(rootcoord 默认 53100,传 0 跳过)
  • --cve-check:输出 CVE 影响版本说明

依赖

root@kitploit:~
pip install grpcio protobuf

gRPC 调用需要 proto 定义生成的 Python 代码(milvus_pb2_grpc.py、root_coord_pb2_grpc.py 等),放在脚本同目录的 proto/ 子目录下。生成方式:

root@kitploit:~
# 1. 拉 milvus-proto 仓库
git clone https://github.com/milvus-io/milvus-proto.git
# 2. 拉 milvus 源码(内部 proto:root_coord.proto / internal.proto / proxy.proto 等)
git clone https://github.com/milvus-io/milvus.git
# 3. 生成(milvus 内部 proto 在 milvus/pkg/proto/ 下)
pip install grpcio-tools
python3 -m grpc_tools.protoc -I milvus-proto/proto -I milvus/pkg/proto \
  --python_out=proto --grpc_python_out=proto \
  milvus-proto/proto/milvus.proto milvus/pkg/proto/root_coord.proto \
  milvus/pkg/proto/internal.proto milvus/pkg/proto/proxy.proto

三版本检测输出

root@kitploit:~
=== 2.6.4 ===
[*] 目标: 172.22.0.4:19530  管理端口: 9091
[check] 认证状态: 已开启认证(authorizationEnabled=true)
[verify] sourceid 后门绕过认证, 数据库=['default']  -> HIT
[verify] /expr 任意表达式执行 (auth=by-dev)   -> HIT
[exploit] 内部端口未认证, 数据库=['default']  -> HIT
[!] 发现 3 个可利用认证缺陷

=== 2.6.5 ===
[check] 认证状态: 已开启认证(authorizationEnabled=true)
[verify] sourceid 被拒绝  -> SAFE
[verify] /expr 任意表达式执行 (auth=by-dev)   -> HIT
[exploit] 内部端口未认证, 数据库=['default']  -> HIT
[!] 发现 2 个可利用认证缺陷

=== 2.6.10 ===
[check] 认证状态: 已开启认证(authorizationEnabled=true)
[verify] sourceid 被拒绝  -> SAFE
[verify] /expr 已默认禁用  -> SAFE
[exploit] 端口不可达  -> SAFE
[+] 未发现认证缺陷

漏洞机制简述

  1. CVE-2025-64513(sourceid 后门):internal/proxy/authentication_interceptor.go 中 validSourceID() 检查 sourceId header,值 base64 解码等于 @@milvus-member@@ 时跳过整个认证分支。这是内部组件互信机制(grpcclient/auth.go 的 PerRPCCredentials),但无来源校验,外部可伪造。完整利用链:sourceid + authorization=base64("root:假密码") = full admin(proxy 跳过校验,假身份原样透传)。
  2. CVE-2026-26190(/expr 弱 token):管理端口 9091 的 /expr debug 端点,认证 token 来自 etcd.rootPath(默认 by-dev),完全可预测,可执行任意 expr-lang 表达式。2.6.10 起由 common.security.exprEnabled 控制,默认禁用。
  3. 内部端口 53100 无认证:AuthenticationInterceptor 只注册在 proxy(19530),rootcoord 内部 gRPC server(53100)无认证。容器网络内未认证直连即可 full admin。2.6.10 起该端口不再监听。

免责声明

仅用于授权环境的安全检测。请勿对未授权的系统使用。

下载工具