Cosmian KMS — Multi-Framework Security Audit
Audit date: 2026-08-18T08:47:56Z
Frameworks: NIST CSF 2.0 / SSDF (SP 800-218) · CIS Controls v8 · ISO/IEC 27034 · OSSTMM
Repository: kms — branch feat/split_key
Commit: a02a3ebbe
Automated Audit Checks
| Status | Check |
|---|---|
| ⚠️ WARN | gitleaks not installed — skipping secret scan |
| ✅ PASS | unsafe block count: 345 (< 350 threshold; mostly FFI wrappers) |
| ⚠️ WARN | cargo audit: advisories found — run 'cargo audit' for details (non-blocking for warnings) |
| ✅ PASS | cargo deny: no banned dependencies or features |
| ✅ PASS | deny.toml bans serde_json unbounded_depth feature |
| ✅ PASS | Structured logging (OTLP/rolling) configuration found |
| ✅ PASS | Safe default bind address (127.0.0.1 / localhost) found in codebase |
| ✅ PASS | JWKS HTTPS guard (validate_jwks_uris_are_https or equivalent) present in codebase |
| ✅ PASS | DB URL password masking (**** placeholder) found |
| ✅ PASS | TLS P12 password masking found |
| ✅ PASS | JWKS HTTP client disables redirect following (SSRF guard) in jwks.rs |
| ✅ PASS | No wildcard CORS origin found in default server configuration |
| ✅ PASS | TTLV/XML recursion depth limit constant found in codebase |
| ✅ PASS | JWT algorithm allowlist found in codebase |
| ✅ PASS | No legacy TLS 1.0/1.1 configuration detected |
| ✅ PASS | Files with panic!() (non-test): 16 (< 20 threshold) |
| ⚠️ WARN | Hard-coded privileged usernames found in config source — verify intent |
| ✅ PASS | Zeroize/Secrecy usage found for sensitive key material |
| ⚠️ WARN | unwrap() count (non-test): 1808 — review each call site |
| ✅ PASS | Access-control module (/Users/manu/Cosmian/core/cli_alt3/kms/crate/access) exists |
| ⚠️ WARN | semgrep not installed — skipping static analysis (run: pip install semgrep) |
Summary
- ✅ Passed: 16
- ⚠️ Warnings: 5
- ❌ Failed: 0
AUDIT PASSED WITH WARNINGS — 5 item(s) require review.
Report auto-generated by .mise/scripts/audit/multi_framework.sh on 2026-08-18T08:47:56Z