Oppnå skysamsvar med AWS

Hvis systemene dine tilfeldigvis ligger på AWS-skyplattformen, er du heldig. AWS tilbyr mange tjenester for å enklere oppnå samsvar.

Tror du at samsvar er viktig?

Som programvareingeniører bygger vi produkter som tilhører ulike domener. Uavhengig av domenet ligger ansvaret for å sikre kundenes sensitive data på våre skuldre. Du kan kjøre produktet lokalt, du kan kjøre det i skyen eller kanskje du planlegger å overføre det til skyen. Uansett hva som gjelder, er 'kundens datasikkerhet' viktig.

Ofte må du også etterleve iboende forskriftsamsvar for bestemte produktdomener. Hvis du for eksempel er i domenet for e-handel og håndterer brukernes kredittkortinformasjon, må du være i samsvar med PCI DSS. Hvis du er i helsedomenet, må du sannsynligvis følge HIPAA. På samme måte finnes det mange forskrifter du må følge i ulike domener.

Hvis produktet ditt tilhører et slikt domene, må du overholde samsvaret som følger med. Manglende overholdelse kan føre til søksmål og strenge straffer.

AWS kan redde deg :)

Hvis systemene dine tilfeldigvis ligger på AWS-skyplattformen, er du heldig. AWS tilbyr mange tjenester for å enklere oppnå samsvar. Ta en titt på de viktigste sertifiserings- og sikringsprogrammene til AWS i figuren nedenfor.

achieving cloud compliance 1

I resten av dette innlegget vil vi fokusere på hvordan AWS støtter deg med å oppnå samsvar med PCI DSS (Payment Card Industry data Security Standard) for et e-handelsselskap. Vi vil diskutere bruken av ulike AWS-tjenester for å oppnå dette.

PCI DSS-samsvar

PCI DSS-samsvar må implementeres av alle enheter som er involvert i behandling, lagring eller overføring av kreditt-/debetkortholderdata. Hvis produktet ditt godtar VISA, MasterCard, American Express og osv … kreditt-/debetkort fra kunder for å behandle betalinger, må du overholde PCI DSS. Ta en titt på PCI DSS-referanseveiledning. Det er 12 hovedkrav for å oppfylle PCI datasikkerhetsstandarder. Under hvert av hovedkravene er det mange underkrav som kunden må tilfredsstille. Last ned PCI DSS-standarden publisert av PCI Security Standards Council.

Installer og oppretthold en brannmurkonfigurasjon for å beskytte kortholderdata

Det første kravet tvinger deg til å ha en brannmur ved hver internett-tilkobling. Høres det vanskelig ut å gjennomføre? Vel, det er det ikke.

***AWS Services***: Vi kan bruke VPC Security Groups, NACAL og Config når vi konstruerer produktet vårt. Her er en måte du kan gjøre det på.

  • Bruk VPC-er til å dele nettverket ditt i offentlige og private delnett
  • Kortholderdata går inn i de private subnettene (ikke offentlig tilgjengelig)
  • Begrens tilgangen basert på behov for å kjenne til (ikke gi tilgang til alle)
  • Bruk retningslinjer for Ingress og Egress til VPC Security Group for individuelle ressurser og NACL-er for VPC på delnettsnivå
  • Distribuer en formell endringsbehandlingsprosess (så du alltid vet hva som ble endret, og når)

achieving cloud compliance 2


Ikke bruk standardverdier fra leverandøren

Noen ganger gjør vi dette. Vi beholder standard passord/konfigurasjoner som fulgte med programvaren ved installasjon. Dette bør ikke gjøres, da disse konfigurasjonene kanskje ikke er optimale for dine behov.

***AWS*Services**: Bruk AMIS fra Amazon – de inneholder ikke standardkonfigurasjoner.

  • Fjern og deaktiver unødvendig programvare og applikasjoner. For det første, prøv å ikke bruke unødvendig programvare i det hele tatt
  • Tilpass programvarekonfigurasjonene slik at de passer til miljøet du befinner deg i
  • Ikke kjør webserveren og DBMS på én forekomst. Vel, dette er et vanlig faktum når det gjelder skalerbarhet og sikkerhet
  • Bruk SSH private nøkler med ekstra flerfaktorautentisering (MFA)


Beskytt lagrede kortholderdata

Dette handler om å kryptere data i ro (data som er lagret) for å beskytte kortholderdata.

***AWS*Services**: Benytt AWS-tjenester som støtter kryptering For eksempel EBS(Elastic Block Storage), S3 Encryption, KMS (Key Management Service), RDS(Relational Database Service)

  • Krypter EBS-volumene som er knyttet til EC2-forekomster
  • Bruk kryptering av serversiden med S3
  • Aktiver kryptering på RDS
  • Kan bruke kommersielle eller åpen kildekode krypteringsverktøy
  • Bare lagre minimale kortholderdata
  • Skift krypteringsnøklene regelmessig


Krypter overføring av kortholderdata gjennom åpne, offentlige nettverk

Dette handler om å kryptere data i bevegelse (data som sendes i sprang).

***AWS*Services**: ELB, Network ACLs, Security Groups, Customer Gateways, Virtual Private Gateways, VPN Connections, AWS Direct Connect

  • Krypter data ved hjelp av SSL med en sikker krypteringspakke
  • Avslutt SSL på ELB eller på webserveren
  • Konfigurer VPN eller Direct Connect i kommunikasjonen med AWS og din lokasjon


Bruk og oppdater regelmessig antivirusprogramvare

Når det gjelder sårbarhetsstyring, leverer ikke AWS anti-malware for kundens EC2-forekomster. AWS-kunder må,

  • Bruke antivirusprogramvare på EC2-forekomster, og kontrollere at de oppdateres automatisk
  • Bruk sårbarhetsforberedelse for revisjoner


Utvikle og vedlikeholde sikre systemer og applikasjoner

***AWS*Services**: AMI, CloudTrail, CloudWatch, Config, CloudFormation, CodeCommit, CodeDeploy, CodePipeline

  • Gå gjennom, test og bruk sikkerhetsoppdateringer regelmessig
  • Utvikle programvare i henhold til PCI AppSpec / OWASP retningslinjer
  • Bruk IAM og fjern eventuelle IAM-testbrukere fra ikke-testmiljøer
  • Kontroller at MFA- og IAM-policyen brukes
  • Aktiver CloudTrail, ELB og S3-logging og samle logger for revisjonsspor
  • Eventuelle endringer i miljøet skal dokumenteres og godkjennes
  • Unngå manuell distribusjon. Bruk CloudFormation, CodeDeploy, Chef og Puppet


Begrens tilgangen til kortholderdata etter forretningsbehov

***AWS*Services**: IAM, Directory Services

  • Bruk et antall IAM-brukere og begrens policyer til bestemte funksjoner basert på forretningsbehov
  • Du kan også bruke SAML og SSO for brukere av AWS-administrasjonskonsoll


Tilordne en unik ID til hver person med datatilgang

***AWS*Services**: IAM

  • Ikke bruk AWS rotkonto i det hele tatt hvis det er mulig
  • Kontroller at brukerne bruker IAM-kontoer eller SAML/SSO
  • Aktiver flerfaktorgodkjenning for alle AWS-kontoer
  • Ikke bruk delt legitimasjon noe sted


Begrens fysisk tilgang til kortholderdata

Du trenger ikke å bekymre deg for dette i det hele tatt. I henhold til modellen for delt ansvar administrerer og vedlikeholder AWS sin fysiske infrastruktur og sikkerhet. AWS dekker dette for deg.


Spor og overvåk all tilgang til nettverksressurser og kortholderdata

***AWS*Services**: CloudTrail, CloudWatch, S3

  • Gå gjennom CloudTrails-logger regelmessig for å identifisere kritiske aktiviteter
  • Aktiver S3 Logs, VPC FlowLogs for bedre loggbehandling.
  • Bruk HIDS/HIPS sentralisert logging for å overvåke påloggingsaktiviteter, endringer i filintegritet og sikkerhetshendelser


Test sikkerhetssystemer og -prosesser regelmessig

Amazons attestasjon av samsvar (AOC, Attestation of Compliance). AWS tester systemene sine årlig for sikkerhetsproblemer. På samme måte må du også teste systemet ditt årlig.

  • Sårbarhetsskanning
  • Penetrasjonstesting
  • Informer AWS før penetrasjonstesting
  • Ha et tredjeparts revisjonsmiljø


Oppretthold retningslinjer som tar for seg informasjonssikkerhet for alle ansatte

  • Retningslinjer for sikkerhet skal dokumenteres og deles med alle ansatte
  • AWS innholds- og kontoinformasjon bør oppdateres regelmessig
  • Ha en plan for hendelsesrespons klar før et brudd
  • Få på plass 24/7-overvåking for rask respons


Så langt har vi diskutert hvordan man oppnår PCI DSS-samsvar med AWS Cloud. AWS er selv i samsvar med mange skyforskrifter, inkludert PCI DSS, men for å kreve at produktet overholder det samme må du bruke nødvendige tjenester som leveres av AWS.


For mer fra Manoj, sjekk ut bloggen hans på Medium.