Indice

24 Settembre 2024

Sicurezza informatica con Rewix: l'applicazione SaaS per eCommerce

Sicurezza informatica con Rewix: l'applicazione SaaS per eCommerce

La sicurezza informatica è la garanzia di mantenimento di “integrità”, “disponibilità”, “confidenzialità” dei dati che si devono gestire. La miglior sicurezza passa dalla prevenzione e dal monitoring per evitare che minacce potenziali possano diventare reali creando impatti negativi su uno o più degli obiettivi della sicurezza informatica.

La gestione della sicurezza segue l’intero ciclo di vita di un software: inizia con il disegno dell’architettura applicativa e sistemistica più appropriata, continua con la fase di sviluppo e testing della stessa e continua durante la fase di utilizzo e manutenzione dell’applicazione con l’utilizzo delle migliori prassi in materia e l’adozione di tutti gli strumenti atti a prevenire violazioni della sicurezza. La gestione di permessi a manutentori e sviluppatori è fondamentale per evitare accessi ai dati non autorizzati. Durante la fase di design è necessario prevedere e studiare attentamente la gestione dei ruoli e dei permessi che i vari utenti dovranno avere nella fase di accesso ai dati. 

Durante la progettazione della base dati, particolare attenzione è sempre rivolta alla gestione delle politiche di auditing, volte a registrare nel database la data, l'identità e l'entità della modifica dei dati di particolare sensibilità. In questo modo eventuali operazioni errate o fraudolente da parte di operatori abilitati alla modifica possono essere rintracciate ed attribuite all’autore.

Inoltre la sicurezza informatica passa dalla gestione efficiente ed efficace dell’infrastruttura server e di networking che deve sempre rispondere nel migliore dei modi alle minacce dell’ambiente esterno. Una architettura a cluster dei vari nodi applicativi è garanzia di disponibilità e scalabilità della applicazione. È importante un'attenta politica di backup con la retention più adatta alla mole di dati da gestire e la verifica puntuale di queste procedure. Il backup è fondamentale per il disaster recovery.

Alcune di queste procedure possono essere oggetto di certificazione di qualità ma sono spesso relative alla certificazione delle procedure interne ai data center che ospitano i server e i dati.
Accanto alle best practices di programmazione e sviluppo di una web app, la sicurezza informatica è rafforzata da norme come la normativa nazionale e comunitaria in fatto di tutela della privacy (“Il Codice in materia di protezione dei dati personali” - Decreto legislativo 30 giugno 2003, n. 196) e successive e come la normativa nazionale che regola l’attività di amministratori di sistema (“Misure e accorgimenti prescritti ai titolari dei trattamenti effettuati con strumenti elettronici relativamente alle attribuzioni delle funzioni di amministratore di sistema” - 27 novembre 2008 - G.U. n. 300 del 24 dicembre 2008).
Inoltre qualora tutte queste pratiche falliscano è possibile richiedere al fornitore la sottoscrizione di una polizza assicurativa Responsabilità civile che copra i danni derivanti dal manifestarsi di uno o più dei rischi citati in precedenza.

Architettura di REWIX

Rewix è una moderna Web application pubblica di classe enterprise scritta su framework J2EE (Java 2 Enterprise Edition) con DB PostgreSQL dove è presente una effettiva separazione tra le funzioni usando una architettura a livelli:

  • presentation logic basato su di un web server in DMZ
  • business logic fornito da un application server in altra DMS
  • data access logic realizzato da un data base su altro server separato da firewall con gli strati precedenti.

 

Architettura di REWIX - Schema

La architettura e la applicazione REWIX rappresenta lo stato dell’arte in fatto di applicazioni J2EE.

Applicazioni J2EE. Rewix eCommerce - Schema

Security e Architettura applicativa

L’architettura a livelli è spesso imposta come policy di sicurezza aziendale in molti contesti enterprise ed è adottata nativamente da REWIX. 

La conoscenza nel dettaglio dei nostri sistemi, accompagnata all’aggiornamento continuo sulle vulnerabilità ci permette di gestire con buoni risultati la stabilità della struttura informativa dei progetti basati su Rewix.

Security e Architettura applicativa di Rewix - schema

Accanto alla sicurezza applicativa è necessario che tutte le procedure e i processi siano in linea con le best practices e con le normative di settore e che le persone del team di sviluppo siano identificabili con precisione.
Le seguenti sono le condizioni in cui si trova l’applicativo e l’infrastruttura software che lo sorregge.

Web server

Il ruolo del web server di gestire richieste e risposte, può essere integrato con altre funzionalità date da software di terze parti quali web proxy o web firewall. Un web proxy serve per intercettare i pacchetti e tracciare la navigazione, un web firewall per intercettare e bloccare pacchetti potenzialmente pericolosi.
Il server web rappresenta l'unico elemento dell'infrastruttura esposto su architettura web pubblica. Per questo è prevista sempre l'applicazione di servizi di firewalling che si occupino di gestire la protezione delle porte esposte al pubblico e l'eventuale gestione di tentativi di attacchi basati su networking a basso livello (attacchi DOS, MTM, ecc.)

Osservazioni:

  • La versione del sistema operativo della macchina ospite, i services pack e le patch sono sempre aggiornate.
  • Sono attivate la maggior precisione possibile nei log, implementare procedure di analisi dei log a scadenze fisse.
  • Si utilizzano se possibile (anche di terze parti) software di controllo e validazione del flusso di dati che transita attraverso il web server
  • Verificare e se necessario personalizzare o nascondere tutti i files, cartelle o informazioni di errore esposti dal web server per default. Può capitare che alcuni software (web server compreso) espongano funzionalità varie all’esterno.

Application server

L’application server altro non è che un contenitore/interprete dell’applicativo che fornisce le funzionalità di accesso ai dati e altro alla applicazione. Il suo compito è quello di ricevere le richieste dal web server, interrogare la fonte dati e restituire al web server una risposta.

Osservazioni:

  • La versione del sistema operativo della macchina ospite, i services pack e le patch sono sempre aggiornate.
  • Mantenere sempre aggiornato l’application server all’ultima versione, patch o service pack.
  • Utilizzare prevalentemente le classi native e certificate per l’application server.

Database

Si parte dalla fonte dati:

  • La versione del sistema operativo della macchina ospite, i services pack e le patch sono sempre aggiornate.
  • La versione del database su cui lavoriamo è sempre aggiornata 
  • Le (eventuali) password della nostra applicazione vanno conservate nel db criptate
  • Il progetto, lo sviluppo e l’implementazione della base dati è essere svolto da persone competenti, fidate, e con uno sguardo alla sicurezza interna ed esterna
  • La gestione delle policy di accesso al db al di fuori dell’applicazione web che lo utilizzerà sono riservate al minor numero di persone possibile  e i permessi sulle istanze studiate nei minimi dettagli
  • Dove possibile sono utilizzate stored procedure per effettuare ogni operazione e creare viste sui dati che sono sempre preferibili agli accessi diretti sulle tabelle .
  • Ovviamente la macchina che conterrà una qualunque fonte dati di produzione è protetta da e verso l’esterno (ma anche l’interno) con strettissime policy sul firewall (le porte e i servizi non indispensabili li sono chiuse e nascoste).
  • I dati della applicazione sono registrati senza limitazioni di tempo e fino a quando i legittimi titolari richiedono la rimozione dei dati in conformità con le leggi vigenti. Qualora i dati siano stati utilizzati per transazioni, i dati relativi all’intestatario della transazione verranno conservati per tutelare la integrità della base dati.

Autenticazione

In un’applicazione web l’autenticazione è il sistema fondamentale di protezione dei dati, è la linea di frontiera che separa la parte esposta da quella protetta. Se un sistema di autenticazione non funziona o funziona male o non è abbastanza sicuro, tutti gli sforzi per ottenere un’applicazione affidabile risulteranno prima o poi vani.

Rewix utilizza le seguenti tecnologie di autenticazione:

  • HTTP Basic e Digest
  • Form Based
  • Certificati Digitali SSL, token, ecc.
  • Nomi DNS e IP address
  • Password Based Quali username, memorizzazione password, qualità, lockout, aging, history, reset

Security Controls

Per assicurare la sicurezza in un'applicazione SaaS come Rewix, diversi controlli e capacità di sicurezza devono essere implementati sistematicamente per proteggere sia la piattaforma che i dati degli utenti. Ecco una descrizione di ciò che potrebbero includere questi controlli e capacità, basati su pratiche standard di sicurezza informatica:

Security Controls

  1. Autenticazione Robusta: Implementazione di meccanismi di autenticazione forti, inclusa l'autenticazione a due fattori (2FA) e Single Sign-On (SSO) per gli utenti, particolarmente per quelli con privilegi amministrativi.
  2. Gestione delle Identità e degli Accessi (IAM): Controllo rigoroso degli accessi basato sui ruoli, assicurando che gli utenti abbiano solo le autorizzazioni necessarie per eseguire le loro funzioni.
  3. Crittografia dei Dati: Crittografia dei dati in transito e a riposo utilizzando standard come TLS e AES, per proteggere le informazioni sensibili e personali.
  4. Protezione Endpoint: Utilizzo di soluzioni di sicurezza endpoint per rilevare e mitigare malware e altre minacce sui dispositivi che accedono alla piattaforma.
  5. Firewall e Web Application Firewall (WAF): Protezione del perimetro di rete e delle applicazioni web da attacchi comuni come l'iniezione di SQL, cross-site scripting (XSS), e altri exploit noti.
  6. Sicurezza della Configurazione: Applicazione di configurazioni di sicurezza rigorose e standardizzate per i sistemi operativi, database e altri componenti infrastrutturali.
  7. Gestione delle Patch: Processo regolare di patch management per applicare le patch di sicurezza ai software e alle piattaforme utilizzate.
  8. Monitoraggio e Risposta agli Incidenti: Monitoraggio continuo delle attività sospette con un team di risposta agli incidenti pronto ad agire in caso di violazioni di sicurezza.
  9. Backup e Ripristino: Implementazione di strategie di backup e ripristino per prevenire la perdita di dati e assicurare la continuità operativa.

Security Capabilities

  1. Rilevamento delle Minacce: Capacità di identificare attività potenzialmente dannose attraverso sistemi di rilevamento delle intrusioni (IDS) e prevenzione delle intrusioni (IPS).
  2. Valutazione della Vulnerabilità: Scansioni regolari dei sistemi per identificare e mitigare le vulnerabilità prima che possano essere sfruttate.
  3. Gestione degli Eventi e delle Informazioni di Sicurezza (SIEM): Utilizzo di soluzioni SIEM per la raccolta, l'analisi e la segnalazione di eventi di sicurezza.
  4. Formazione sulla Sicurezza: Programmi di formazione e consapevolezza sulla sicurezza per gli utenti e lo staff, per educarli su pratiche sicure e identificazione delle minacce.
  5. Penetration Testing: Esecuzione periodica di test di penetrazione da parte di esperti di sicurezza esterni per simulare attacchi informatici e valutare la robustezza delle difese della piattaforma.

Il penetration testing in particolare è un elemento cruciale della strategia di sicurezza di Rewix. Eseguendo test di penetrazione su base periodica, Rewix può identificare e correggere le vulnerabilità, migliorare le politiche di sicurezza e le procedure di risposta agli incidenti, e in generale, rafforzare la postura di sicurezza della piattaforma contro gli attacchi cibernetici sempre più sofisticati.

Livelli diversi di accesso all’informazione

REWIX adotta la possibilità di gestire livelli di accesso differenziati alle informazioni tramite ruoli e permessi. L’esportazione delle anagrafiche è disponibile solo ad utenti con una speciale password con appositi grant sul DB (detta MasterPassword). La gestione delle sessioni è gestita in maniera tale da aver traccia nei log degli accessi.

Team di sviluppo e supporto

Zero11 utilizza per lo sviluppo e il supporto dipendenti e collaboratori di assoluta fiducia. Durante il processo di sviluppo utilizza tutte le migliori pratiche per evitare furti di dati, accessi ai dati non autorizzati e sottrazione del codice sorgente della applicazione. Le attività eseguite dal team vengono salvate su file di log e di time tracking. Il codice sorgente della applicazione è gestito tramite strumenti di SCM e di versioni per la gestione dei rilasci e delle versioni. Le attività di supporto sono gestite tramite sistema di ticketing.

Fase di design

L'applicazione è privacy by design compliant.

Fase di testing

La applicazione è sottoposta a test e verifiche per il rispetto di tutte le norme e pratiche descritte in precedenza. Periodicamente vengono eseguiti vulnerability e penetration test per verificare lo stato di risposta agli attacchi possibili sul web dell’applicazione REWIX.

Secure data center

La applicazioni Zero11 sono ospitate sull’infrastruttura Critical Case presso il datacenter ICT Telecom Italia Torino, certificato ISO 27001. Il datacenter ha impianto antincendio, condizionamento ed elettrico completamente ridondati con SLA al 99,98% con supporto privilege TIM. Per ogni necessità di accesso ai locali, garantito 24 ore su 24, è sempre previsto l’affiancamento materiale di un tecnico TIM presente per qualunque vostra necessità. Per ulteriori informazioni si veda il documento allegato.

Controllo accessi e sicurezza fisica

  • presidio h24 con sicurezza fisica perimetrale e guardiani
  • accesso controllato al data center e alle sale dati
  • massimi standard di costruzione e manutenzione dell’edificio
  • video sorveglianza perimetrale e interna
  • tracking delle movimentazioni degli asset interni
  • controllo ambientale
  • controllo dell’umidità e della temperatura dell’aria
  • sistema di condizionamento e raffreddamento ridondato (N+1)

Alimentazione elettrica

  • sistemi CPS/UPS ridondati
  • unità di distribuzione elettrica (PDUs) ridondati
  • generatori diesel ridondati (N+1) con scorte di carburante on site

Backup

  • tutti i dati sono sottoposti a backup quotidiano con un sistema di rotazione incrementale e full backup
  • i backup dei dati sono copiati in altro data center in forma criptata e la chiave è fornita al cliente

Rete

Criticalcase è AS48815 e gestisce interamente il suo network. Siamo interconnessi sia al TOPIX che al MIX oltre che a 26 carrier nazionali ed esteri per garantire la migliore affidabilità e performance dei nostri servizi internet. 

L’85% del traffico gestito da CriticalCase rimane intra-carrier. Questo significa per un utente di uno specifico provider riuscire a raggiungere direttamente i nostri locali senza utilizzare la rete internet. 

Tutta la rete è protetta da un sistema IPS WatchGuard XTM 2050 per l’identificazione e filtraggio del traffico malevolo. Tutta la rete core CriticalCase, i routers BGP, le componenti di Firewalling e IPS, è interconnessa a 10 Gbit per poter garantire la piena gestibilità del traffico anche nel caso di attacchi DDOS o picchi di traffico causati da eventi, streaming e TV online. 

Politica di backup

La politica di backup di Rewix che implementa la replica continua dei dati e procedure di backup intraday può essere delineata come segue:

Politica di Replica Continua

Obiettivo: Assicurare la resilienza e la disponibilità immediata dei dati attraverso una replica continua su un cluster geograficamente diverso.

Procedura:

  1. Replica in Tempo Reale: I dati del database principale vengono replicati in tempo reale su un cluster secondario situato in un'area geografica differente. Questo assicura ridondanza e accesso ai dati in caso di guasti o disastri nel sito principale.
  2. Monitoraggio: Il sistema di monitoraggio verifica costantemente l'integrità e la latenza della replica, garantendo che i dati sul cluster secondario siano aggiornati e consistenti con quelli del cluster principale.
  3. Failover Automatico: In caso di interruzione del servizio DB nel cluster principale, il sistema è configurato per passare automaticamente al cluster secondario, minimizzando così il downtime.

Politica di Backup Intraday

Obiettivo: Salvaguardare i dati attraverso backup intraday, assicurando che in caso di perdita di dati, sia possibile recuperarli fino a un punto molto vicino al momento del disastro.

Procedura:

  1. Backup Programmato: Durante la giornata, vengono eseguiti backup periodici dei dati a intervalli regolari.
  2. Duplice Localizzazione: Ogni backup viene copiato in due località geograficamente distinte dal cluster principale e secondario, per proteggere ulteriormente i dati da eventi catastrofici regionali.
  3. Verifica e Test: Dopo ogni operazione di backup, viene eseguito un test per verificare l'integrità dei dati copiati. Questo assicura che i backup siano validi e restaurabili.

Retention dei Backup

Obiettivo: Conservare i backup dei dati per un periodo di sei mesi per soddisfare i requisiti aziendali e normativi.

Procedura:

  1. Ciclo di Vita dei Backup: Tutti i backup vengono conservati per un periodo di sei mesi. Dopo questo periodo, i backup vengono automaticamente eliminati secondo le policy di data retention.
  2. Recupero Dati: Se necessario, i dati possono essere recuperati da qualsiasi backup all'interno del periodo di retention.
  3. Documentazione e Compliance: Mantenere una documentazione accurata di tutte le operazioni di backup e le procedure di retention per garantire la conformità alle politiche aziendali e alle normative vigenti.

Revisione e Aggiornamento della Politica

Obiettivo: Assicurare che la politica di backup rimanga efficace e conforme alle esigenze aziendali e ai cambiamenti tecnologici.

Procedura:

  1. Revisione Periodica: La politica di backup viene rivista periodicamente per adattarla alle nuove tecnologie, alle modifiche normative e alle mutevoli necessità aziendali.
  2. Aggiornamento delle Procedure: Ogni cambiamento significativo nell'infrastruttura o nei requisiti di business conduce a un aggiornamento delle procedure di backup e di retention.
  3. Formazione del Personale: Il personale coinvolto nel processo di backup viene regolarmente aggiornato e formato in merito alle nuove procedure e tecnologie.

Questa politica di backup è progettata per garantire che i dati dell'applicazione SaaS siano protetti, recuperabili e gestiti in modo conforme alle migliori pratiche e agli standard di settore.

Rispetto normative

Zero11 rispetta le normative sulla normativa nazionale e comunitaria in fatto di tutela della privacy (“Il Codice in materia di protezione dei dati personali” - Decreto legislativo 30 giugno 2003, n. 196) e come la normativa nazionale che regola l’attività di amministratori di sistema (“Misure e accorgimenti prescritti ai titolari dei trattamenti effettuati con strumenti elettronici relativamente alle attribuzioni delle funzioni di amministratore di sistema” - 27 novembre 2008 - G.U. n. 300 del 24 dicembre 2008).

Assicurazione

Zero11 ha sottoscritto una polizza assicurativa RC per la protezione dei dati e per garantire la continuità del servizio. Gli oneri della polizza sono esclusi dall’offerta presentata.

Join the eCommerce Revolution

Fai crescere il tuo business, trova nuovi buyer e coinvolgili come clienti. Sfrutta al 100% le possibilità di vendere ad altre aziende.

Inizia a vendere