SuperAPI AI 工具集

journal-update

安全与审计

查看项目

更新于 10-15 20:06

技能介绍

用途:该技能用于 Bitrix 模块开发者在安全扫描后维护并验证累积的 security-journal.json。应在 scan 与 journal-review 之后运行,作为提交前最后一步。

主要能力:日志生命周期逻辑是确定性的,封装在 scripts/update_journal.py 中,不要手工编辑日志状态,除非脚本无法表达该情况。输入包括 journal-review 输出的已审查扫描 JSON、可选的上一版 security-journal.json、可选的模块路径(用于将消失的发现归类为 removed,当原文件已不存在时)、可选的最终归档 SHA-256。

使用方式:先运行更新器: python3 <skill-dir>/scripts/update_journal.py reviewed-scan.json
--previous security-journal.json
--module-path modules/vendor.module
--archive-sha256 <sha256>
--output security-journal.json 首次运行时省略 --previous。随后验证输出: python3 <skill-dir>/scripts/update_journal.py --validate-only security-journal.json 读取 current_state 并仅报告发布就绪摘要:就绪为 ready_for_submission(阻塞/开放发现为零)、blocked(仍存在开放 high 发现)、needs_review(仍有 accepted-risk 或 false-positive 处置)。

确定性规则:发现通过由类型、规范化文件、行号与规范化描述派生的稳定指纹匹配,严重程度被有意排除,以便再分级映射到同一发现而非分叉日志。当前扫描与既往匹配的发现保留同一 journal_finding_id;无匹配则新建。既往开放但当前扫描缺失的发现被解决:若最后已知文件在 --module-path 下不存在则标记 removed,否则标记 fixed;已解决的发现再次出现则以 open 状态重开。若扫描发现带有 partner_disposition.status 且值为 false_positive 或 accepted_risk,则保留合作方处置;若匹配既往已有该处置且新扫描未明确提供新处置,则保留原处置,避免每次重扫被重新标记。脚本不会删除历史发现或运行记录。

输出:写出一个累积日志,结构为 schema_version、module、current_state、runs、findings。该日志是合作方随最终归档唯一应提交的产物;原始与已审查扫描可本地保留用于调试,除非被要求否则无需提交 Marketplace。

限制:需先完成扫描与日志审查;指纹匹配依赖规范化输入;除脚本无法表达的情况外不得手动改日志;资料未提供具体安装命令、依赖环境或收费标准。