Semantica 0.6.5 安全修复版本发布
Semantica 发布 0.6.5,这是一个安全修复版本,修复了 Explorer API 与图/三元组存储后端中 6 个外部报告漏洞,包括两个 Critical 问题:Explorer API 的认证缺失、Cypher 注入;另外还新增了嵌入式 Oxigraph 后端、完整的 PROV-O 支持和 25 个以上 bug 修复。
Semantica 0.6.5 于 2026 年 8 月 11 日发布,是一个安全修复版本,修复了 Explorer API 与图/三元组存储后端中 6 个外部报告的漏洞,并附带新增功能与大量正确性修复。
安全修复
- 认证缺失(Critical):11 个 API 路由器的所有路由均可无凭据访问。新增
Depends(require_auth)校验X-API-Key与SEMANTICA_API_KEY,未设置时返回 503,而非默认放行;SEMANTICA_ALLOW_ANONYMOUS=true仍可作为本地开发显式选项。 - 本体 URL 抓取的 SSRF(High):原可经 302 重定向绕过校验访问云实例元数据地址或内部服务;现改为手动跟随重定向、上限 5 跳,每一跳目标均重新校验,并通过自定义适配器将连接固定到已验证 IP,同时保留 Host 与 TLS SNI 校验。
- Cypher 注入(Critical):节点标签、关系类型和属性键无法参数化,来自文档的实体类型可提前闭合 Cypher 片段并追加语句(如
DETACH DELETE),影响 Neptune、Neo4j、FalkorDB 后端。新增query_sanitize.py校验所有插值位置。 - SPARQL 注入(Critical):三元组 IRIs 中含
>可闭合<...>标记并追加任意 SPARQL(如CLEAR ALL),影响 Blazegraph、RDF4J、Jena 后端。在各插值位置应用validate_uri()。 - WebSocket 握手缺少 Origin 校验(Moderate,仅匿名模式):
/ws/graph-updates现按与CORSMiddleware相同的允许列表检查 Origin。 - SPARQL 路由正则 ReDoS:
_PREFIX_DECL正则中重叠量词导致 O(n²) 回溯,已改为字符不相交,并增加 10,000 字符查询长度上限。 - 其他关键问题:
VectorStore.save()/load()的pickle.load()任意代码执行改为 JSON,旧.pkl文件被拒绝;RDF/XML 解析 XXE 改用defusedxml;SPARQL 图物化上限 50,000 节点/边。
此外还对 CI/CD 供应链做了加固(GitHub Actions 固定提交 SHA、SLSA 构建溯源、受保护 pypi 环境),并为 WebIngestor、SitemapCrawler 和 RESTIngestor 加入 SSRF 防护。
新增功能
- 嵌入式 Oxigraph 后端,经可选依赖
pyoxigraph在进程内提供 SPARQL 1.1 存储,无需外部服务器。 - ProvenanceManager 补齐 PROV-O 规范能力,包括失效墓碑、哈希链完整性校验、下游血缘遍历、位时与 Bundle 支持,新增 CLI 命令。
- Altair Anzo 三元组存储后端;
/api/sparql路由新增 34 个测试;ProvenanceManager 默认持久化到 SQLite;AgentMemory 支持 Markdown 往返导入导出。
修复:涵盖 VectorStore 各后端结果结构不一致、Qdrant 元数据键错误、Explorer 前端错误被静默吞掉、SKOS 写入无环检测、SHACL 校验未实际执行、Neptune 示例 CloudFormation 暴露数据库端口等 25 项以上问题。版本说明建议所有部署升级,尤其是运行 Explorer API 的部署。
来源与核对说明
- semantica-agi/semantica ↗https://github.com/semantica-agi/semantica/releases/tag/v0.6.5
本文经 AI 整理及独立自动校对,未做运行验证;自动校对仍可能遗漏问题,请以原始资料为准。
这篇内容对你有帮助吗?
点赞人数由服务器记录,收藏保存在当前浏览器。
继续阅读
Semantica v0.6.7 发布:新增 LangChain 集成、SAP OData 摄取与推理 Action 层 →
WrenAI 语义核心 wren-semantic-core 发布 v0.5.0 →