扫描报告
25 /100
ludwitt-university
AI agent 在 Ludwitt 大学平台进行自适应学习、构建交付物、同行评审的技能
Ludwitt University 是一个合法的 AI 教育平台技能,核心功能为 API 客户端(轮询状态 + CLI 命令),但存在未声明的自动更新机制(含远程 shell 执行)和 install.sh 的 curl|sh 安装模式,需要使用者知晓并主动确认,风险整体可控。
可以安装
使用前确认:(1) 了解 install.sh 会生成机器指纹并注册到 ludwitt.com;(2) 了解 daemon 会每 10 分钟轮询 API 并写入本地状态文件;(3) 接受 curl|sh 远程安装模式的风险。
安全发现 4 项
| 严重性 | 安全发现 | 位置 |
|---|---|---|
| 中危 | 未声明的远程 shell 自动更新机制 代码混淆 | daemon.js:42 |
| 低危 | 框架检测阴影功能 文档欺骗 | install.sh:94 |
| 低危 | curl|sh 远程脚本执行 供应链 | daemon.js:42 |
| 低危 | 后台守护进程持久化 持久化 | install.sh:218 |
| 资源类型 | 声明权限 | 推断权限 | 状态 | 证据 |
|---|---|---|---|---|
| 命令执行 | NONE | WRITE | ✓ 一致 | install.sh:42 — curl -sSL https://opensource.ludwitt.com/install | sh 远程安装;daemo… |
| 文件系统 | NONE | WRITE | ✓ 一致 | SKILL.md 声明需要文件读写;daemon.js 写入 ~/.ludwitt/*.md, auth.json |
| 网络访问 | NONE | READ | ✓ 一致 | SKILL.md 声明需要网络访问;daemon.js 向 opensource.ludwitt.com 发送 API 请求 |
| 环境变量 | NONE | READ | ✓ 一致 | install.sh:94-109 — 检测 CURSOR_SESSION_ID, CLAUDE_CODE_SESSION, OPENCLAW_STATE_DI… |
1 严重 6 项发现
严重 危险命令 危险 Shell 命令
curl -sSL https://opensource.ludwitt.com/install | sh daemon.js:42 中危 外部 URL 外部 URL
https://opensource.ludwitt.com README.md:34 中危 外部 URL 外部 URL
https://your-deployed-app.vercel.app SKILL.md:181 中危 外部 URL 外部 URL
https://www.youtube.com/watch?v=... SKILL.md:183 中危 外部 URL 外部 URL
https://opensource.ludwitt.com/install daemon.js:42 中危 外部 URL 外部 URL
http://www.apple.com/DTDs/PropertyList-1.0.dtd install.sh:216 目录结构
4 文件 · 52.0 KB · 1419 行 JavaScript 1f · 728L
Markdown 2f · 368L
Shell 1f · 323L
├─
daemon.js
JavaScript
├─
install.sh
Shell
├─
README.md
Markdown
└─
SKILL.md
Markdown
依赖分析 1 项
| 包名 | 版本 | 来源 | 已知漏洞 | 备注 |
|---|---|---|---|---|
node (runtime) | 18+ | system | 否 | 仅依赖 Node.js 运行时,无 npm 第三方依赖包,纯原生实现 |
安全亮点
✓ SKILL.md 详细声明了所需权限(代码执行、部署、GitHub、文件读写),且明确要求用户确认后才注册
✓ API key 和 fingerprint 存储在 ~/.ludwitt/auth.json,权限设为 600(仅所有者可读),符合最佳实践
✓ README.md 链接到真实 GitHub 仓库(rogerSuperBuilderAlpha/ludwitt-openclaw),AGPL-3.0 许可证可追溯
✓ daemon.js 使用环境变量(LUDWITT_REQUEST_TIMEOUT_MS, LUDWITT_REQUEST_RETRIES)配置网络行为,不硬编码敏感值
✓ 无 base64 编码、eval()、反向 shell 等典型恶意指标
✓ 无遍历环境变量收割凭证的行为
✓ 代码结构清晰,HTTP 请求有超时和重试机制