Skip to content

Security: ReviveCoding/risk-controlled-vlm-evidence-platform

Security

SECURITY.md

Security Notes

Implemented safeguards include:

  • safe relative document paths and canonical containment checks;
  • SHA-256 validation during ingestion and immediately before and after parsing;
  • per-file and aggregate document, byte, page, block, and text limits;
  • encrypted-PDF rejection and archive traversal, symlink, duplicate-member, compression-ratio, and expansion limits;
  • normalized finite bbox validation;
  • Unicode-normalized prompt-injection filtering;
  • strict single-object VLM output and retrieved-candidate identity checks;
  • transactional output publication with fsync, atomic commit, manifests, locks, and stale-lock recovery;
  • stable public API errors, request-size limits, bounded work queues, timeouts, and durable idempotency;
  • non-root Docker runtime with a persistent writable state directory;
  • SHA-pinned GitHub Actions, CycloneDX SBOM, and artifact hash registration.

Before internet exposure, add organization-specific authentication, authorization, TLS termination, tenant isolation, malware scanning, secrets management, network policy, audit-log retention, backup/restore, rate limits at the edge, and production load/incident testing.

Do not load untrusted pickle or joblib model files. Register model artifacts and verify their SHA-256 before use.

Additional v0.6.0 safeguards:

  • mandatory slots require positive supporting evidence rather than neutral model abstentions;
  • invalid or out-of-scope superseding assertions cannot suppress older evidence;
  • exact duplicate assertions from one source are not treated as independent corroboration;
  • document/VLM packs have aggregate block and text ceilings before retrieval;
  • Windows-reserved run IDs and artifact paths are rejected before publication;
  • idempotency records are pruned by configurable age and maximum count.

There aren't any published security advisories