Come proteggere gli ambienti Platform as a Service (PaaS)?

Stai usando PaaS per le tue applicazioni ma non sei sicuro di come proteggerle?


Un Platform-as-a-Service (PaaS) è ​​un modello di cloud computing che fornisce una piattaforma in cui i clienti possono sviluppare, proteggere, eseguire e gestire applicazioni Web. Fornisce un ambiente ottimizzato in cui i team possono sviluppare e distribuire applicazioni senza acquistare e gestire l’infrastruttura IT sottostante e i servizi associati.

In generale, la piattaforma fornisce le risorse e le infrastrutture necessarie per supportare l’intero ciclo di vita dello sviluppo e della distribuzione del software, consentendo agli sviluppatori e agli utenti di accedere da qualsiasi luogo su Internet. I vantaggi di PaaS includono, ma non solo, semplicità, praticità, costi inferiori, flessibilità e scalabilità.

Di solito, la protezione di un PaaS differisce dal tradizionale data center on-premise, come vedremo.

Un ambiente PaaS si basa su a modello di sicurezza condiviso. Il provider protegge l’infrastruttura mentre i clienti PaaS hanno la responsabilità di proteggere i propri account, app e dati ospitati sulla piattaforma. Idealmente, la sicurezza si sposta dal modello on-premise al modello di sicurezza perimetrale delle identità.

Ciò significa che il cliente PaaS deve concentrarsi maggiormente sull’identità come perimetro di sicurezza primario. I problemi su cui concentrarsi includono protezione, test, codice, dati e configurazioni, dipendenti, utenti, autenticazione, operazioni, monitoraggio e registri.

È molto da fare. No?

Non ti preoccupare; lascia che ti guidi passo dopo passo.

Proteggi le applicazioni da attacchi comuni e imprevisti

Uno dei migliori approcci è implementare una soluzione di protezione automatica in tempo reale con la capacità di rilevare e bloccare rapidamente e automaticamente qualsiasi attacco. Gli abbonati PaaS possono utilizzare gli strumenti di sicurezza forniti sulla piattaforma o cercare opzioni di terze parti che soddisfino i loro requisiti.

Uno strumento ideale dovrebbe fornire protezione in tempo reale, rilevando e bloccando automaticamente accessi non autorizzati, attacchi o violazioni.

Fonte: comodo.com

Dovrebbe essere in grado di verificare attività insolite, utenti malintenzionati, accessi sospetti, bot non validi, acquisizione di account e qualsiasi altra anomalia che potrebbe portare a un compromesso. Oltre all’utilizzo degli strumenti, è necessario creare sicurezza nell’applicazione in modo che abbia la sua protezione.

Proteggi gli account utente e le risorse dell’app

Ogni punto di interazione è di solito una potenziale superficie di attacco. Il modo migliore per prevenire gli attacchi è ridurre o limitare l’esposizione delle vulnerabilità e delle risorse dell’applicazione a cui gli utenti non attendibili possono accedere. È anche importante correggere e aggiornare regolarmente e automaticamente i sistemi di sicurezza per ridurre i punti deboli.

Sebbene il fornitore di servizi protegga la piattaforma, il cliente ha una responsabilità più significativa per proteggere l’account e le applicazioni. Ciò significa che l’utilizzo di una serie di strategie di sicurezza come una combinazione di funzionalità integrate di sicurezza della piattaforma, componenti aggiuntivi e strumenti di terze parti, migliora la protezione di account, app e dati. Inoltre, garantisce che solo utenti o dipendenti autorizzati possano accedere al sistema.

Un’altra misura è quella di mantenere al minimo il numero di dipendenti con diritti di amministratore stabilendo un meccanismo di audit per identificare le attività rischiose da parte dei team interni e degli utenti esterni autorizzati.

Gli amministratori dovrebbero inoltre applicare i privilegi minimi dell’utente. Con questo approccio, gli utenti dovrebbero avere solo i privilegi minimi che consentono loro di eseguire applicazioni o svolgere correttamente altri ruoli. Ciò riduce la superficie di attacco, l’uso improprio dei diritti di accesso e l’esposizione di risorse privilegiate.

Scansione dell’applicazione per vulnerabilità di sicurezza

Eseguire una valutazione del rischio per identificare se vi sono minacce alla sicurezza o vulnerabilità nelle app e nelle sue librerie. Utilizzare i risultati per migliorare la protezione di tutti i componenti. Idealmente, stabilisci una scansione regolare e pianifica l’esecuzione automatica giornaliera o qualsiasi altro intervallo a seconda della sensibilità dell’app e delle potenziali minacce alla sicurezza.

Se possibile, utilizzare una soluzione in grado di integrarsi con altri strumenti come il software di comunicazione o ha una funzione integrata per avvisare le persone interessate ogni volta che identifica una minaccia o un attacco alla sicurezza.

Testare e risolvere i problemi di sicurezza nelle dipendenze

Di solito, le app dipenderanno sia dalle dipendenze dirette che indirette, che sono principalmente open source. Eventuali difetti in questi componenti hanno il potenziale di introdurre vulnerabilità di sicurezza nell’app se non risolti.

Una buona pratica è analizzare tutti i componenti interni ed esterni delle app, eseguire test di penetrazione API, controllare reti di terze parti e altro ancora. Alcuni dei mezzi efficaci per correggere le vulnerabilità includono l’aggiornamento o la sostituzione della dipendenza con una versione sicura, patch, ecc.

Snyk varrebbe la pena provare a monitorare i difetti di sicurezza nelle dipendenze.

Eseguire test di penetrazione e modellazione delle minacce

Test di penetrazione aiuta a identificare e affrontare le falle di sicurezza o le vulnerabilità prima che gli aggressori possano trovarle e sfruttarle. Poiché i test di penetrazione sono generalmente aggressivi, possono apparire come attacchi DDoS ed è essenziale coordinarsi con altri team di sicurezza per evitare la creazione di falsi allarmi.

La modellazione delle minacce implica la simulazione di possibili attacchi che provengono da confini attendibili. Questo aiuta a verificare se ci sono difetti di progettazione che gli attaccanti possono sfruttare. La modellazione fornisce ai team IT informazioni sulle minacce, che possono utilizzare per migliorare la sicurezza e sviluppare contromisure per affrontare qualsiasi debolezza o minaccia identificata.

Monitorare le attività & accesso ai file

Il monitoraggio degli account privilegiati consente ai team di sicurezza di ottenere visibilità e comprendere come gli utenti utilizzano la piattaforma. Consente ai team di sicurezza di determinare se le attività degli utenti privilegiati presentano potenziali rischi per la sicurezza o problemi di conformità.

Monitora e registra ciò che gli utenti stanno facendo con i loro diritti e le attività sui file. Questo cerca problemi come accesso sospetto, modifiche, download o upload insoliti, ecc. Un monitoraggio dell’attività dei file dovrebbe anche fornire un elenco di tutti gli utenti che hanno avuto accesso a un file nel caso in cui sia necessario indagare su una violazione.

Una soluzione giusta dovrebbe essere in grado di identificare minacce interne e utenti ad alto rischio cercando problemi come accessi simultanei, attività sospette e molti tentativi di accesso falliti. Altri indicatori includono l’accesso ad ore strane, download o upload di file e dati sospetti, ecc. Quando possibile, le misure automatiche di mitigazione bloccano qualsiasi attività sospetta e avvisano i team di sicurezza di indagare sulla violazione e di affrontare eventuali vulnerabilità di sicurezza.

Protezione dei dati a riposo e in transito

La migliore pratica è crittografare i dati durante l’archiviazione e durante il trasporto. La protezione dei canali di comunicazione impedisce possibili attacchi man-in-the-middle mentre i dati viaggiano su Internet.

Se non già, implementare HTTPS abilitando il certificato TLS per crittografare e proteggere il canale di comunicazione e, di conseguenza, i dati in transito.

Convalida sempre i dati

Ciò garantisce che i dati di input siano nel formato corretto, validi e sicuri.

Tutti i dati, provenienti da utenti interni o team di sicurezza di fonti esterne attendibili e non attendibili, devono trattare i dati come componenti ad alto rischio. Idealmente, eseguire la convalida sul lato client e i controlli di sicurezza prima del caricamento dei dati assicurerà che passino solo dati puliti bloccando i file compromessi o infetti da virus.

Sicurezza del codice

Analizzare il codice per le vulnerabilità durante il ciclo di vita dello sviluppo. Questo inizia dalle fasi iniziali e gli sviluppatori dovrebbero distribuire l’applicazione alla produzione solo dopo aver confermato che il codice è sicuro.

Applicare l’autenticazione a più fattori

L’abilitazione di un’autenticazione a più fattori aggiunge un ulteriore livello di protezione che migliora la sicurezza e garantisce che solo gli utenti autorizzati abbiano accesso ad app, dati e sistemi. Può essere una combinazione di password, OTP, SMS, app mobili, ecc.

Applicare una politica di password complessa

La maggior parte delle persone usa password deboli facili da ricordare e che non possono mai modificarle se non forzate. Questo è un rischio per la sicurezza che gli amministratori possono ridurre al minimo applicando criteri per password complesse.

Ciò dovrebbe richiedere password complesse che scadano dopo un determinato periodo. Un’altra misura di sicurezza correlata è quella di interrompere la memorizzazione e l’invio di credenziali in testo normale. Idealmente, crittografa i token di autenticazione, le credenziali e le password.

Utilizzare l’autenticazione e l’autorizzazione standard

La migliore pratica consiste nell’utilizzare i protocolli e i protocolli di autenticazione e autorizzazione standard, affidabili e testati come OAuth2 e Kerberos. Sebbene sia possibile sviluppare codici di autenticazione personalizzati, questi sono soggetti a errori e vulnerabilità, quindi probabilmente espongono i sistemi agli aggressori.

Processi di gestione delle chiavi

Usa chiavi crittografiche forti ed evita chiavi brevi o deboli che gli aggressori possono prevedere. Inoltre, utilizza meccanismi di distribuzione delle chiavi sicuri, ruota le chiavi regolarmente, rinnovale sempre in tempo, revocale quando necessario ed evita di codificarle con rigore nelle applicazioni.

L’uso di una rotazione automatica e regolare delle chiavi migliora la sicurezza e la conformità, limitando al contempo la quantità di dati crittografati a rischio.

Gestisci l’accesso ad app e dati

Sviluppare e applicare una politica di sicurezza gestibile e verificabile con rigide regole di accesso. L’approccio migliore è garantire ai dipendenti e agli utenti autorizzati solo i diritti di accesso necessari e non di più.

Ciò significa assegnare i giusti livelli di accesso solo alle app e ai dati necessari per svolgere le loro funzioni. Inoltre, dovrebbe essere monitorato regolarmente il modo in cui le persone utilizzano i diritti assegnati e revocando quelli che stanno abusando o che non richiedono.

Operazione in corso

Ci sono molte cose da fare.

  • Esecuzione di test continui, manutenzione regolare, patching e aggiornamento delle app per identificare e correggere vulnerabilità di sicurezza emergenti e problemi di conformità.
  • Istituzione di un meccanismo di audit per risorse, utenti e privilegi. I team di sicurezza dovrebbero quindi riesaminarli periodicamente per identificare e risolvere eventuali problemi oltre a revocare i diritti di accesso che gli utenti stanno abusando o che non richiedono.
  • Sviluppare e distribuire un piano di risposta agli incidenti che mostra come affrontare le minacce e le vulnerabilità. Idealmente, il piano dovrebbe includere tecnologie, processi e persone.

Raccogliere e analizzare i registri automaticamente

Le applicazioni, le API e i registri di sistema forniscono molte informazioni. L’implementazione di uno strumento automatico per raccogliere e analizzare i registri fornisce informazioni utili su ciò che sta accadendo. Molto spesso, i servizi di registrazione, disponibili come funzionalità integrate o componenti aggiuntivi di terze parti, sono ottimi per verificare la conformità con le politiche di sicurezza e altre normative, nonché per gli audit.

Utilizzare un analizzatore di log che si integri con il sistema di allerta, supporti gli stack tecnologici dell’applicazione e fornisca una dashboard, ecc.

Conservare e rivedere una pista di controllo

È consigliabile archiviare una traccia di controllo delle attività degli utenti e degli sviluppatori come tentativi di accesso riusciti e non riusciti, modifiche della password e altri eventi relativi all’account. Una funzione automatica può utilizzare i contatori per proteggere da attività sospette e non sicure.

La pista di controllo può essere utile per indagare in caso di violazione o sospetto di un attacco.

Conclusione

Un modello PaaS rimuove la complessità e il costo di acquisto, gestione e manutenzione di hardware e software, ma attribuisce la responsabilità di proteggere account, app e dati al cliente o al sottoscrittore. Ciò richiede un approccio alla sicurezza incentrato sull’identità che differisce dalle strategie utilizzate dalle aziende nei tradizionali data center on-premise.

Misure efficaci includono la creazione di sicurezza nelle app, la fornitura di un’adeguata protezione interna ed esterna, nonché il monitoraggio e il controllo delle attività. La valutazione dei registri aiuta a identificare le vulnerabilità della sicurezza e le opportunità di miglioramento. Idealmente, i team di sicurezza devono mirare ad affrontare qualsiasi minaccia o vulnerabilità prima che gli aggressori li vedano e li sfruttino.

Jeffrey Wilson Administrator
Sorry! The Author has not filled his profile.
follow me
    Like this post? Please share to your friends:
    Adblock
    detector
    map