Premessa
Questo Statement of Applicability mappa i 93 controlli dell'Annex A di ISO/IEC 27001:2022 allo stato attuale di Hermes Console (modalità SaaS).
Legenda Stato:
| Sigla | Significato |
|---|---|
| ✅ | Controllo implementato — riferimento codice/processo nella colonna successiva |
| 🟡 | Parziale — implementato in parte, dettagli nella nota |
| 📋 | Procedurale / organizzativo — coperto da policy interna OASI |
| ⤴ | Demandato a subprocessor (hosting, Anthropic, Stripe) via contratto/DPA |
| ⛔ | Non applicabile — motivazione nella nota |
Hermes è ISO27001-aligned, non ancora certificato da ente accreditato. Vedi Security Whitepaper §10 per il piano di certificazione formale.
A.5 — Controlli organizzativi (37)
| # | Controllo | Stato | Note |
|---|---|---|---|
| A.5.1 | Information security policy | 📋 | Policy interna OASI versionata; disponibile sotto NDA. |
| A.5.2 | Information security roles and responsibilities | 📋 | RACI mantenuto internamente; CTO + CISO definiti. |
| A.5.3 | Segregation of duties | 🟡 | Ruoli Hermes (ADMIN/OPERATOR/VIEWER + superAdmin) separano operazione tenant da operazione cross-tenant. |
| A.5.4 | Management responsibilities | 📋 | Sign-off CTO annuale. |
| A.5.5 | Contact with authorities | 📋 | Garante Privacy, ACN (CSIRT Italia), enti settoriali (su richiesta). |
| A.5.6 | Contact with special interest groups | 📋 | CLUSIT membership in roadmap. |
| A.5.7 | Threat intelligence | 🟡 | Subscriptions a CVE feeds (osv.dev integrato in VulnScanner); ENISA bulletins manuale. |
| A.5.8 | Information security in project management | 📋 | Threat model parte del template progetto interno OASI. |
| A.5.9 | Inventory of information and other associated assets | ✅ | Asset Hermes tracciati in repo + SBOM (vedi /legal/sbom). |
| A.5.10 | Acceptable use of information and other associated assets | 📋 | Acceptable Use Policy interna OASI; Acceptable Use per il cliente nei TOS Hermes. |
| A.5.11 | Return of assets | 📋 | Off-boarding employee con check-out. |
| A.5.12 | Classification of information | ✅ | Whitepaper §3.1 definisce classi (critical/secret/restricted/confidential). |
| A.5.13 | Labelling of information | 🟡 | Marcatura "Riservato — OASI · core.ai" sui PDF generati; commenti "non-WinAnsi sanitized" sul rendering interno. |
| A.5.14 | Information transfer | ✅ | TLS 1.2+ obbligatorio (Let's Encrypt + HSTS preload via nginx). |
| A.5.15 | Access control | ✅ | WebAuthn passkey + ruoli + tenant FK isolation. |
| A.5.16 | Identity management | ✅ | HermesUser con email unica + tenantId NOT NULL + superAdmin bool. |
| A.5.17 | Authentication information | ✅ | Solo passkey (no password); recovery codes hashati bcrypt(11). |
| A.5.18 | Access rights | ✅ | Guard requireUser/Admin/Paid/SuperAdmin + canAccessTenant. |
| A.5.19 | Information security in supplier relationships | 📋 | DPA con ogni subprocessor (vedi /legal/subprocessors). |
| A.5.20 | Addressing information security within supplier agreements | 📋 | Clausole nei contratti subprocessor. |
| A.5.21 | Managing information security in the ICT supply chain | ✅ | Hermes stesso fa esattamente questo: VulnScanner (osv.dev) + CodeComprehender sul codice del cliente. Internamente: SBOM Hermes + monitoring dipendenze. |
| A.5.22 | Monitoring, review and change management of supplier services | 📋 | Review annuale subprocessor. |
| A.5.23 | Information security for use of cloud services | ✅ | Provider hosting con SLA + cifratura volume (vedi /legal/subprocessors). |
| A.5.24 | Information security incident management planning | ✅ | Whitepaper §8 + procedura interna. |
| A.5.25 | Assessment and decision on information security events | 📋 | Triage P0/P1/P2 documentato. |
| A.5.26 | Response to information security incidents | 📋 | Runbook interno; obbligo notifica 24h GDPR Art. 33 / 72h NIS2 Art. 23. |
| A.5.27 | Learning from information security incidents | 📋 | Post-mortem obbligatorio P0/P1, pubblicato (anonimizzato). |
| A.5.28 | Collection of evidence | ✅ | Audit log HermesAuditLog append-only con userId/tenantId/ip/userAgent/timestamp. |
| A.5.29 | Information security during disruption | 📋 | BCP documentato (RPO/RTO in /legal/dpa). |
| A.5.30 | ICT readiness for business continuity | 📋 | DR test ad ogni release maggiore. |
| A.5.31 | Legal, statutory, regulatory and contractual requirements | 📋 | Compliance register interno (GDPR, NIS2 quando applicabile, Codice Privacy IT). |
| A.5.32 | Intellectual property rights | 📋 | License compliance via SBOM (vedi /legal/sbom). |
| A.5.33 | Protection of records | ✅ | Audit log append-only + backup DB. |
| A.5.34 | Privacy and protection of PII | ✅ | Hermes minimizza: nessun PII del cliente nel codice analizzato è target; eventuali finding di PII hardcoded sono rischi da segnalare al cliente, non dati che OASI conserva volontariamente. |
| A.5.35 | Independent review of information security | 📋 | Pen test esterno annuale (in pianificazione). |
| A.5.36 | Compliance with policies, rules and standards for information security | 📋 | Review trimestrale interna. |
| A.5.37 | Documented operating procedures | ✅ | deploy/README.md, deploy/STRIPE.md, memoria interna versionata. |
A.6 — Controlli sulle persone (8)
| # | Controllo | Stato | Note |
|---|---|---|---|
| A.6.1 | Screening | 📋 | Background check standard EU per nuovi hire OASI. |
| A.6.2 | Terms and conditions of employment | 📋 | Clausole NDA + IP assignment + security duties. |
| A.6.3 | Information security awareness, education and training | 📋 | Onboarding security mandatory; refresh annuale. |
| A.6.4 | Disciplinary process | 📋 | Procedura HR interna. |
| A.6.5 | Responsibilities after termination or change of employment | 📋 | Revoca accessi entro 24h; NDA post-termination. |
| A.6.6 | Confidentiality or non-disclosure agreements | 📋 | NDA contestuali al contratto di lavoro. |
| A.6.7 | Remote working | 📋 | Policy MFA + disk encryption obbligatori. |
| A.6.8 | Information security event reporting | 📋 | Canale interno + esterno (security@oasi.systems). |
A.7 — Controlli fisici (14)
| # | Controllo | Stato | Note |
|---|---|---|---|
| A.7.1 — A.7.14 | tutti i controlli fisici | ⤴ | Demandati al provider hosting (vedi /legal/subprocessors). OASI non gestisce data center proprio. Il provider è certificato ISO/IEC 27001 e SOC2; i controlli fisici (perimeter, badge, CCTV, fire suppression, power, cooling, supply chain hw) sono coperti dal loro programma. Documenti del provider disponibili al cliente su richiesta sotto NDA. |
A.8 — Controlli tecnologici (34)
| # | Controllo | Stato | Note |
|---|---|---|---|
| A.8.1 | User end-point devices | 📋 | MDM su laptop OASI (encryption + remote wipe). |
| A.8.2 | Privileged access rights | ✅ | superAdmin gated + guardrail anti-lockout su PATCH /users/[id]. |
| A.8.3 | Information access restriction | ✅ | Tenant FK isolation; tenantWhere / canAccessTenant su ogni route. |
| A.8.4 | Access to source code | ✅ | Repo OASI privato; permessi per branch. |
| A.8.5 | Secure authentication | ✅ | WebAuthn passkey (phishing-resistant by design). |
| A.8.6 | Capacity management | 📋 | Monitoring + alerting sul provider hosting. |
| A.8.7 | Protection against malware | 🟡 | Scanning binaries lato CI; SecretScanner engine-side per detection in InstrumentationApplier. |
| A.8.8 | Management of technical vulnerabilities | ✅ | VulnScanner (osv-scanner) sulle dipendenze Hermes e su quelle del cliente. SBOM aggiornato (vedi /legal/sbom). |
| A.8.9 | Configuration management | ✅ | Docker Compose pinned versions, pnpm-lock.yaml versionato, Prisma migrations atomiche. |
| A.8.10 | Information deletion | ✅ | finally{ rm -rf temp } su ogni endpoint clone-aware. Cancellazione DB su richiesta cliente. |
| A.8.11 | Data masking | 🟡 | Sanitization di pattern oauth2:[^@]+@ nei log d'errore; rendering Markdown via React (auto-escape). |
| A.8.12 | Data leakage prevention | ✅ | Minimizzazione corpus inviato a LLM (top-N file selezionati, budget chars); no caching tra repo; deploy key/PAT mai loggati. |
| A.8.13 | Information backup | ⤴ | Snapshot giornaliero a livello provider hosting + esportabile da operatore (pg_dump manuale documentato). |
| A.8.14 | Redundancy of information processing facilities | 🟡 | Modalità SaaS: single-region. Enterprise / on-prem: configurabile dal cliente. |
| A.8.15 | Logging | ✅ | Audit log applicativo + Docker logs + provider hosting logs. |
| A.8.16 | Monitoring activities | ✅ | Audit explorer (/audit) per anomalie applicative; provider per infra. |
| A.8.17 | Clock synchronization | 📋 | NTP sul box (default Debian); critico per signature verification Stripe. |
| A.8.18 | Use of privileged utility programs | 🟡 | Subprocess spawn limitato a git, osv-scanner, ssh-keygen con timeout + maxBuffer. |
| A.8.19 | Installation of software on operational systems | 📋 | Solo OASI può deployare; CI/CD versionato. |
| A.8.20 | Networks security | ⤴ | Provider hosting (firewall, DDoS basic mitigation). nginx terminator TLS lato app. |
| A.8.21 | Security of network services | ✅ | TLS-only, HSTS, no plaintext HTTP. |
| A.8.22 | Segregation of networks | 🟡 | Postgres in network privato del docker-compose, esposto solo al servizio Hermes. |
| A.8.23 | Web filtering | ⛔ | N/A: Hermes non opera web filtering; pertinente al cliente che usa Hermes. |
| A.8.24 | Use of cryptography | ✅ | AES-256-GCM + scrypt + bcrypt + HS256 + SHA-256 + HMAC-SHA256 — schemi documentati nel Whitepaper §4.1. |
| A.8.25 | Secure development life cycle | ✅ | TypeScript strict, 654 unit test, Prisma type-safe, eslint, code review obbligatorio. |
| A.8.26 | Application security requirements | ✅ | OWASP Top 10 considered in design (authn, broken access control, sensitive data exposure, security misconfig). Pen test esterno in pianificazione. |
| A.8.27 | Secure system architecture and engineering principles | ✅ | Principio least privilege, defense in depth (auth + tenant scope + audit + crypto), fail-secure (404 vs 403 per non leak-are esistenza). |
| A.8.28 | Secure coding | ✅ | Code review + linting + test gate su PR + SAST in roadmap (Semgrep). |
| A.8.29 | Security testing in development and acceptance | 🟡 | Test unit (654) + integrazione (e2e Discovery+Apply provati). DAST in roadmap. |
| A.8.30 | Outsourced development | ⛔ | N/A: Hermes sviluppato interamente in-house. |
| A.8.31 | Separation of development, test and production environments | ✅ | Branch main = prod; ambienti dev/test su VPS separati o locali. DB di prod separato per tenant cliente (in modalità on-prem). |
| A.8.32 | Change management | ✅ | Tutte le modifiche prod via PR + review + CI green; migrations Prisma atomiche con baseline-resolve documentato. |
| A.8.33 | Test information | ✅ | Test fixture interne; nessun dato cliente in fixture pubbliche (rule "no fake data" → uso solo repository pubblici per smoke). |
| A.8.34 | Protection of information systems during audit testing | ✅ | Pen test esterno (in pianificazione) eseguito su ambiente staging. |
Documento mantenuto da OASI S.r.l. Per richiedere il dettaglio
implementativo di un controllo specifico (con riferimenti file+riga del
codice), scrivere a security@oasi.systems sotto NDA.