Quanto è sicura la serverless computing?

0
107

Zero

Considerazioni di sicurezza devono essere prese in considerazione in ogni riga di codice per ogni sviluppatore di app, non importa ciò che l’applicazione o dove è correre. Questo è molto standard operativi pratica oggi. Con serverless di calcolo, tuttavia, diventa ancora più importante.

Serverless funzioni, offrendo microservices, sono modulari pezzi di codice che si comportano in maniera particolare quando fornito con particolare ingressi. Essi si trovano in una Funzione-as-a-Service (FaaS) il fornitore del servizio cloud della piattaforma e, come tali, sono protetti da un grado dal fornitore di propria infrastruttura di sicurezza.

Così ci si può aspettare di infrastrutture fisiche e di wrapper componenti – centro dati, rete, server e sistemi operativi – per essere protetto. Questo di per sé riduce la probabilità di un exploit di successo, come patch i server sono annoverati tra i più grandi vulnerabilità.

Sfide per la sicurezza

Detto questo, i problemi di sicurezza rimangono per il serverless sviluppatore di app. Gli sviluppatori sono ancora responsabile per l’esecuzione sicura del loro codice, tra cui la logica dell’applicazione, il codice e dati. Si deve anche tenere a mente che il serverless architettura porta con sé una serie di vulnerabilità di protezione specifiche.

In particolare, la natura modulare di serverless applicazioni significa che essi offrono una maggiore superficie di attacco, come conseguenza della loro interconnessione. Si può attingere i dati da più fonti, che potrebbero includere, ad esempio, il cloud storage, dispositivi IoT, o una varietà di Api e code di messaggi. Molti di questi può essere difficile per i tradizionali firewall di ispezione. Inoltre, serverless significa che i dati si sposta tutto di più – tra funzioni e servizi di terze parti, per esempio – in modo che i dati è più esposto al rischio di intercettazione.

E perché serverless applicazioni operare in mezzo a una complessa rete di connessioni, fa piena prova di sicurezza difficile prima del rilascio in un ambiente reale. Per esempio, una funzione spesso si basano su librerie di terze parti così come il collegamento di API remoti connessi a servizi web, le dipendenze che potrebbero essere difficili da accertare.

Le migliori pratiche

Così l’adesione alle buone pratiche – come mai confidando di ingresso, di mancanza di sicurezza e rispettando il principio del privilegio minimo rimane importante.

Il trust problema significa che la crittografia come mezzo di protezione segreti, come le API e le chiavi di crittografia, le configurazioni e i database delle credenziali di accesso, è essenziale: non ha segreti dovrebbe mai essere memorizzate in chiaro. Preferibilmente, devono essere conservati solo se strettamente necessario, preferibilmente, una varietà di segreti di sistemi di gestione sono disponibili. I dati da qualsiasi funzione o servizio dovrebbero essere criptati per impedire la costruzione di un fragile catena di funzioni; un anello debole rompe la catena di sicurezza.

Almeno privilegio significa che solo di privilegi sufficienti deve essere concesso per lo scopo di comportamento, aiutando in questo modo, per evitare, ad esempio, l’esecuzione del sistema a livello di funzioni. Questo implica di autenticazione forte: controllo di accesso deve essere applicato su tutta la linea di trigger, funzioni e gli eventi, come appropriato.

Questo complesso ambiente può anche essere difficile monitorare, visualizzare ed eseguire il debug, che è un altro rischio per la sicurezza. In modo adeguato la registrazione per facilitare il debug in questo contesto è essenziale, come la visibilità delle singole funzioni, è probabile che deve essere necessariamente limitata. La registrazione dettagliata sarà anche migliorare la visibilità nelle azioni di intrusi e aiutare a prevenire le violazioni.

Inoltre, la complessità di serverless ambienti significa che per verificare le dipendenze delle librerie esterne e risorse web per la vulnerabilità è altamente consigliabile. E, naturalmente, la validazione dell’input rimane essenziale.

Tuttavia, senza server non è squallore e di desolazione. Ci sono vantaggi in termini di sicurezza per la tecnologia. Oltre a quelli di cui sopra, come la possibilità di lasciare i problemi di proteggere l’infrastruttura per la FaaS provider – perché un serverless funzione gira, fa il suo lavoro e gira velocemente verso il basso, significa che sarà meno vulnerabile a lungo vissuto attacchi, come DDOS.

Funzioni tendono ad essere relativamente piccoli pezzi di codice, rendendo più facile definire esattamente ciò che non potrà fare, che consente di ridurre la superficie di attacco. Per lo stesso motivo, tuttavia, è molto facile da implementare una funzione, e altre applicazioni possono diventare dipendenti da esso, rendendo la sua rimozione rischioso – che a sua volta significa che si può finire con un sacco di funzioni di distribuzione con mal definite le connessioni, ma che sono difficili da arrestare.

Riepilogo

Serverless di calcolo rimane abbastanza nuova tecnologia, e alcuni problemi di sicurezza rimangono da affrontare. Tuttavia, offre enormi vantaggi di business e, nel tempo, si può aspettare il dominio-specifica tecnologia di sicurezza a maturare e ad attivare i benefici di serverless completamente emergere.

Argomenti Correlati:

Cloud

0