Har du utviklet, eller holder på å utvikle, en serverløs applikasjon? Da er det viktig å tenke på sikkerheten. Er du sikker på at applikasjonen din er godt beskyttet?
Serverløse applikasjoner blir stadig mer populære, og dermed øker også sikkerhetsrisikoene. Det er mange potensielle feilkilder som kan gjøre systemet sårbart for angrep. Det er viktig å være klar over de største risikoene og jobbe aktivt for å redusere dem.
- Overbelastningsangrep (Denial of service)
- Manipulering av forretningslogikk
- Misbruk av ressurser
- Datainjeksjon
- Usikker autentisering
- Usikker datalagring
- Sårbar integrasjon med tredjeparts API/verktøy
Sikkerhetsarbeidet med serverløse applikasjoner krever en litt annen tilnærming enn med tradisjonelle applikasjoner. Det er flere sikkerhetsaspekter som må tas hensyn til. Derfor trenger du en spesialisert plattform for å sikre omfattende beskyttelse. Dette krever også en annen form for overvåking og feilsøking.
Jeg anbefaler å se nærmere på denne veiledningen fra PureSec som tar for seg de 12 mest kritiske risikoene ved serverløse applikasjoner.
La oss se på noen av løsningene som finnes.
PureSec
PureSec tilbyr helhetlig sikkerhet for AWS Lambda, Google Cloud Functions, IBM Cloud Functions og Azure Functions. De integreres også med flere populære plattformer og verktøy.
- Gitlab
- Splunk
- Sumologic
- Jenkins
- AWS Cloudformation
- Serverless Framework
PureSecs brannmur for serverløse applikasjoner oppdager og forhindrer angrep på funksjonshendelsesdata uten at det går ut over ytelsen. Deteksjonsmotoren kan inspisere hendelsestriggere som NoSQL DB, API, skylagring, Pub/Sub-meldinger og mer.
Deres sikkerhetsbibliotek, FunctionShield, gir utviklere muligheten til å implementere sikkerhetsmekanismer for å håndtere vanlige brukstilfeller. Det kan brukes med Node.js, Python og Java.
Noen av fordelene med å bruke FunctionShield er:
- Forebygging av datalekkasje ved å overvåke utgående nettverkstrafikk fra funksjoner
- Forhindre lekkasje av kildekode for hendelsesbehandlere
- Kontroll av utførelse av underprosesser
- Mulighet for å konfigurere varslingsmodus for å logge sikkerhetshendelser, eller blokkere utførelse ved brudd på retningslinjer.
Det legger til mindre enn 1 millisekunds forsinkelse til den totale utførelsestiden.
Snyk
Snyk er en populær åpen kildekode-løsning for å overvåke, finne og fikse sårbarheter i applikasjonens avhengigheter. Nylig har de lansert integrasjon med AWS Lambda og Azure Functions, som lar deg koble til og sjekke om en distribuert applikasjon er sårbar.
For hver sårbarhet som oppdages, kan du konfigurere varslinger via e-post eller Slack.
Du kan selv definere hvor ofte du ønsker at testen skal kjøres.
Aqua
Aqua tilbyr en to-i-en-tjeneste – sikkerhet for både serverløse containere og funksjoner.
Den skanner containerbilder og funksjoner for kjente og ukjente sårbarheter i biblioteker, konfigurasjoner og tillatelser. Aqua kan også integreres i CI/CD-prosesser.
Twistlock
Beskytt applikasjonen din i alle faser av livssyklusen med Twistlock.
Den skanner og beskytter alle funksjonene i kontoen din i sanntid for å sikre at applikasjonen er fri for sårbarheter. Noen av funksjonene er:
- Støtte for Python, .Net, Java og Node.js
- Skybasert brannmur for kontinuerlig overvåking og forebygging av trusler
- Maler for å sikre overholdelse av HIPPA og PCI
- Integrasjon med TeamCity og Jenkins
- Håndtering av sårbarheter
Twistlock benytter maskinlæring for å tilby automatisert beskyttelse under drift og for å lage retningslinjer.
Konklusjon
Det er viktig å sikre applikasjonen din, enten den er serverløs eller tradisjonell. Den gode nyheten er at mange tilbyr en GRATIS prøveperiode, så du kan teste ut hva som fungerer best for din applikasjon. Hvis du er nybegynner og ønsker å lære mer om AWS Lambda og Serverless Framework, anbefales dette nettkurset.
Likte du artikkelen? Del den gjerne med andre!