sparka777/cra-compliance-kit

GitHub: sparka777/cra-compliance-kit

面向 IoT 设备的欧盟网络弹性法案 (CRA) 合规工具包,提供 SBOM 生成、CVE 匹配、设备身份认证和安全输入处理等开箱即用的合规模块。

Stars: 0 | Forks: 0

# IoT 设备 CRA 合规套件 **一次 pip install 满足欧盟网络弹性法案 (CRA) 要求。** [![PyPI 版本](https://img.shields.io/pypi/v/cra-compliance-kit)](https://pypi.org/project/cra-compliance-kit/) [![Python](https://img.shields.io/pypi/pyversions/cra-compliance-kit)](https://pypi.org/project/cra-compliance-kit/) [![许可证: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT) ## 关键截止日期 | 义务 | 日期 | 状态 | |-----------|------|--------| | 漏洞报告(24小时内报告至 ENISA) | **2026年9月11日** | 87 天 | | 完整的 CRA 合规性评估 | **2027年12月11日** | 18 个月 | | 违规处罚 | 最高 **1500万欧元或全球营业额的2.5%** | 生效中 | ## 本套件提供的功能 | 模块 | CRA 要求 | 许可证 | |--------|-----------------|---------| | `DeviceIdentityService` (identity.py) | 设备身份、访问控制 — 第10(2-3)条 | MIT | | `FirmwareHealthService` (firmware.py) | 漏洞追踪、CVE 匹配 — 第13(1-3)条 | MIT | | `InputClassifier` (input_guard.py) | 默认安全的输入处理 — 第10(1)条 | MIT | | `PhysicalActionGuard` (action_guard.py) | 硬阻止与需确认的操作 — 第10(3)条 | MIT | | `CycloneDX SBOM Generator` (sbom/generator.py) | 面向 ENISA 的 SBOM 维护 — 第13(8)条 | MIT | | `GuardianSubsystem` *(商业版)* | 集中式安全健康评分 | 受控 — 请联系 sydney@starcaller.uk | | `BehaviouralBaselineService` *(商业版)* | Welford 异常检测 | 受控 — 请联系 sydney@starcaller.uk | | `MemoryProvenance` *(商业版)* | HMAC-SHA256 审计链 | 受控 — 请联系 sydney@starcaller.uk | | `CrossOracleSigner` *(商业版)* | 跨服务请求签名 | 受控 — 请联系 sydney@starcaller.uk | ## 快速开始 ``` pip install cra-compliance-kit ``` ``` from cra_kit.identity import DeviceIdentityService, TrustTier from cra_kit.firmware import FirmwareHealthService from cra_kit.input_guard import InputClassifier from cra_kit.action_guard import PhysicalActionGuard # 1. 使用 tiered trust 注册设备 identity = DeviceIdentityService() identity.enrol_device("sensor-01", "temperature_sensor", trust_tier=TrustTier.ENVIRONMENTAL) # 2. 对照 CVE 数据库检查 firmware fw = FirmwareHealthService() check = fw.check_device("sensor-01", "gateway", "1.5.3") print(f"Vulnerable to {len(check.vulnerabilities_found)} CVEs") # 3. 清理每一个 input classifier = InputClassifier() safe, findings = classifier.is_safe(user_input) # 4. 限制危险操作 guard = PhysicalActionGuard() result = guard.check_action("format_storage") assert result["allowed"] == False # Hard blocked # 5. 生成 SBOM python -m sbom.generator --product "MyIoTGateway" --version "2.1.0" --output sbom.xml ``` ## CRA 条款映射 | 条款 | 要求 | 我们的实现方式 | |---------|-------------|-------------------| | **第10(1)条** | 默认安全配置 | InputClassifier 阻止注入,并在处理前对输入进行净化 | | **第10(2)条** | 设备身份与认证 | DeviceIdentityService — 具备基于证书注册的5级信任模型 | | **第10(3)条** | 访问控制机制 | PhysicalActionGuard — 10个硬阻止 + 11个需确认操作,支持时间感知 | | **第13(1-3)条** | 漏洞处理与修复 | FirmwareHealthService — CVE 匹配、语义版本控制、严重性评分 | | **第13(8)条** | 可根据 ENISA 要求提供 SBOM | CycloneDX 1.5 生成器,支持自动扫描已安装的包 | ## 架构概览 每个模块都是独立的,零外部依赖(仅使用标准库)。 模块将状态存储在 `~/.cra_kit/` 目录下的 SQLite 中以实现持久化。 ``` User Input | v InputClassifier ── detects 8 injection families (prompt, code, SQL, command, XSS, SSRF, traversal, format string) | v DeviceIdentityService ── authenticates, checks trust tier (0-4) | v PhysicalActionGuard ── blocks/confirms dangerous actions, time-gated at night | v FirmwareHealthService ── matches version against CVE database | v SBOM Generator (CycloneDX 1.5 XML) ``` ## 开源核心许可 | 套餐类型 | 模块 | 许可证 | 价格 | |-------------|---------|---------|-------| | **开源版** | identity.py, firmware.py, input_guard.py, action_guard.py, sbom/generator.py | MIT | 免费 | | **专业版**(即将推出) | Guardian + Baselines + Provenance + Signing | 商业 | 1,500/年 | | **企业版**(即将推出) | 所有专业版功能 + 优先支持 + SLA | 商业 | 7,500/年 | ## 环境要求 - Python 3.9+ - SQLite(内置于 Python 标准库中) - 零外部依赖 ## 开发团队 StarTeQ Ltd — Starcaller 背后的团队,这是一款隐私优先的 AI 设备, 在生产环境中拥有 9.3/10 的安全信任评分和 8 模块安全堆栈。 **联系方式:** sydney@starcaller.uk **网站:** [starcaller.uk/cra-compliance](https://starcaller.uk/cra-compliance) ## CRA Watch — 实时漏洞监控 在 **[CRA Watch 仪表板](https://cra-watch.starcaller-teq.workers.dev/dashboard)** 实时监控您已注册的产品。 - 每天 UTC 时间 06:00 轮询 CISA KEV - 按需进行 NVD + EPSS 富化 - CycloneDX VEX 生成 - ENISA 第14条通知草案 - 24小时 / 72小时 / 14天 截止日期追踪 [![CRA Watch](https://img.shields.io/badge/CRA_Watch-live-brightgreen)](https://cra-watch.starcaller-teq.workers.dev/dashboard)
标签:CVE漏洞匹配, Python, SBOM生成, 合规工具, 无后门, 物联网安全, 设备身份认证, 逆向工具