Hvordan sikre webapplikasjoner med AWS WAF?



Denne artikkelen vil fortelle deg hvordan du kan sikre webapplikasjoner med AWS WAF og følge den opp med en praktisk demonstrasjon.

Denne artikkelen vil fortelle deg hvordan du kan sikre webapplikasjoner med WAF og følg den opp med en praktisk demonstrasjon. Følgende tips vil bli dekket i denne artikkelen,

Så la oss komme i gang da,





Fortsetter med denne artikkelen om 'Hvordan sikre webapplikasjon med AWS WAF?'

Komme i gang med noen grunnleggende

AWS tilbyr tjenester som EC2, ELB (Elastic Load Balancer), S3 (Simple Storage Service), EBS (Elastic Block Storage) for å lage nyttige og fancy applikasjoner raskt og med mindre CAPEX (CAPITAL UTGIFTER). Når du lager disse applikasjonene, er det like viktig å sikre applikasjonen og beskytte dataene. Hvis de ikke er ordentlig sikret, kan applikasjonsdataene komme i gale hender som i tilfelle nylig Capital One-hendelse .



Capital One var vert for en webapplikasjon på EC2, og den ble ikke sikret ordentlig. En tidligere AWS-ansatt var i stand til å utnytte dette sikkerhetsproblemet og laste ned reams av kundedata fra S3. Senere ble det funnet at dataene fra 30 andre organisasjoner også ble lastet ned fra AWS. Så for å understreke det igjen er det ikke bare nok å arkitektere og designe en applikasjon, men det er like viktig å sikre en applikasjon.

Capital One brukt AWS WAF (webapplikasjonsbrannmur) for å beskytte webapplikasjonen, men den ble ikke konfigurert riktig på grunn av hvilken hackeren klarte å få tilgang til dataene i S3 og laste den ned. I denne artikkelen vil vi undersøke hvordan du bruker og konfigurerer AWS WAF for å beskytte mot vanlige nettangrep som SQL Injection, XSS (Cross Site Scripting) osv. AWS WAF må konfigureres sammen med Lastbalanse for applikasjon , CloudFront eller API Gateway. I dette scenariet vil vi bruke Application Load Balancer. Enhver forespørsel fra kunden via nettleseren vil gå gjennom AWS WAF og deretter til Application Load Balancer og til slutt til Web Application på EC2. AWS WAF kan brukes til blokker den ondsinnede forespørselen fra hackerne ved hjelp av et sett med regler og betingelser.

Image - Secure Web Applications With AWS WAF - Edureka

Fortsetter med denne artikkelen om 'Hvordan sikre webapplikasjon med AWS WAF?'



Sekvens av trinn for å komme i gang med AWS WAF

Trinn 1: Opprette en sårbar webapplikasjon,

Det første trinnet er å lage en webapplikasjon som er sårbar for SSRF-angrep (Server Side Request Forgery) som nevnt i dette Blogg på hvordan Capital One-angrepet skjedde. Denne bloggen har trinn for å:

  1. Lag en EC2
  2. Installer den nødvendige programvaren for å opprette webapplikasjonen med SSRF-sårbarhet
  3. Opprett og IAM-rolle med S3 skrivebeskyttet tillatelse
  4. Fest IAM-rollen til EC2
  5. Til slutt, utnytt SSRF-sårbarheten for å få sikkerhetsinformasjonen knyttet til IAM-rollen.

Når trinnsekvensen er fullført i den nevnte bloggen, erstatter du 5.6.7.8 med den offentlige IP-adressen til EC2 i URL-en nedenfor og åpner den i nettleseren. Sikkerhetsinformasjonen som er tilknyttet IAM-rollen, skal vises i nettleseren som vist nedenfor. Dette ble i utgangspunktet hacket av Capital One. Med sikkerhetsinformasjonen i hånden kunne hackeren få tilgang til andre AWS-tjenester som S3 for å laste ned dataene.

http://5.6.7.8:80?url=http://169.254.169.254/latest/meta-data/iam/security-credentials/Role4EC2-S3RO

Steg 2: Opprette applikasjonsbelastningsutjevner

AWS WAF kan ikke knyttes direkte til en webapplikasjon. Men kan bare knyttes til Application Load Balancer, CloudFront og API Gateway. I denne opplæringen vil vi lage Load Balancer for applikasjon og tilknytning til AWS WAF med det samme.

Trinn 2a: En målgruppe er en samling av EC2-forekomster og må opprettes før du oppretter Application Load Balancer. I EC2 Management Console klikker du på målgruppen i venstre rute og klikker på “Opprett målgruppe”.

php mysql_fetch_array

Trinn 2b: Skriv inn målgruppenavnet og klikk på 'Opprett'. Målgruppen vil bli opprettet.

Trinn 2c: Forsikre deg om at målgruppen er valgt, og klikk på kategorien Mål, og klikk på rediger for å registrere EC2-forekomster i målgruppen.

Trinn 2d: Velg EC2-forekomst og klikk på 'Legg til registrert' og klikk på 'Lagre'.

Forekomstene skal registreres som vist nedenfor for målgruppen.

Trinn 2e: På tide å opprette applikasjonsbelastningsutjevning. Klikk på Load Balancer i venstre rute i EC2 Management Console og klikk på 'Create Load Balancer'.

Klikk på 'Opprett' for 'Application Load Balancer'.

Fortsetter med denne artikkelen om 'Hvordan sikre webapplikasjon med AWS WAF?'

Trinn 2f: Skriv inn navnet på Application Load Balancer. Og sørg for at alle tilgjengelighetssonene er valgt, og klikk på Neste.

Trinn 2g: I 'Konfigurer sikkerhetsinnstillinger' klikker du på Neste.

Opprett en ny sikkerhetsgruppe i 'Konfigurer sikkerhetsgrupper' eller velg en av eksisterende sikkerhetsgrupper. Forsikre deg om at port 80 er åpen for tilgang til nettsiden på EC2. Klikk på Neste.

Trinn 2h: I 'Konfigurer ruting' velger du 'Eksisterende målgruppe' og velger den som ble opprettet i det tidligere trinnet. Klikk på Neste.

Trinn 2i: EC2-målforekomstene er allerede registrert som en del av målgruppene. Så i kategorien 'Registrer mål', uten endringer, klikk på Neste.

Trinn 2j: Til slutt, gjennomgå alle detaljene i Application Load Balancer og klikk på Create. Applikasjonsbelastningsbalansen vil bli opprettet som vist nedenfor.

Trinn 2k: Få domenenavnet til Application Load Balancer, og erstatt den uthevede teksten i URL-en nedenfor, og åpne den samme i nettleseren. Merk at vi får tilgang til webapplikasjonen via Application Load Balancer, og sikkerhetsinformasjonen vises som vist nedenfor. URL-en nedenfor kan blokkeres ved å bruke AWS WAF som vist i de påfølgende trinnene for å stoppe lekkasje av sikkerhetsinformasjonen.

MyALB-1929899948.us-east-1.elb.amazonaws.com ? url = http: //169.254.169.254/latest/meta-data/iam/security-credentials/Role4EC2-S3RO

Trinn 3: Opprette AWS WAF (Web Application Firewall)

Trinn 3a: Gå til AWS WAF Management Console og klikk på “Configure web ACL”. AWS WAF-oversikten vises. Her er hierarkiet til AWS WAF. Web ACL har en rekke regler og regler har en rekke betingelser som vi skulle lage i de påfølgende trinnene. Klikk på Neste.

Trinn 3b: Angi web-ACL-navnet, regionen som Nord-Virginia (eller hvor EC2 ble opprettet), ressurstypen som 'Application Load Balancer' og velg til slutt Application Load Balancer som ble opprettet i det tidligere trinnet. Klikk på Neste.

Trinn 3c: Her en betingelse for å blokkere en bestemt forespørsel om webapplikasjon må opprettes. Rull ned og klikk på 'Opprett tilstand' for 'String og regex-samsvarsvilkår'.

Trinn 3d: Skriv inn navnet på tilstanden, skriv inn som 'streng samsvar', filtrer på 'Alle spørringsparametere' og resten av parametrene nøyaktig som vist nedenfor. Og klikk på “Legg til filter” og deretter på Opprett. Her prøver vi å lage en tilstand som samsvarer med URL-en som inneholder verdien av spørringsparameteren som 169.254.169.254. Denne IP-adressen er relatert til EC2-metadata .

Trinn 3e: Nå er det på tide å lage en regel som er en samling av forhold. Klikk på 'Opprett regel' og spesifiser parametrene som vist nøyaktig nedenfor. Klikk på “Add Condition”, Create og “Review and create”.

Fortsetter med denne artikkelen om 'Hvordan sikre webapplikasjon med AWS WAF?'

Trinn 3f: Gå til slutt gjennom alle detaljene og klikk på “Bekreft og opprett”. Web ACL (Access Control List) blir opprettet og assosiert med Application Load Balancer som vist nedenfor.

Trinn 3g: Prøv nå å få tilgang til Application Load Balancer URL via nettleseren som utført i Trinn 2k . Denne gangen får vi '403 forbudt' ettersom nettadressen vår samsvarer med ACL-tilstanden på nettet, og vi blokkerer den. Forespørselen når aldri belastningsbalansen for applikasjonen eller webapplikasjonen på EC2. Her merker vi at selv om applikasjonen gir tilgang til sikkerhetsinformasjonen, blokkerer WAF det samme.

Trinn 4: Rydding av AWS-ressursene opprettet i denne opplæringen. Oppryddingen må gjøres i nøyaktig samme rekkefølge som nevnt nedenfor. Dette er for å sikre at AWS stopper faktureringen for de tilknyttede ressursene som er opprettet som en del av denne opplæringen.

  • Slett tilstand i regelen
  • Slett regelen i WebACL
  • Demonter ALB i WebACL
  • Slett WebACL
  • Slett regelen
  • Slett filteret i Tilstand
  • Slett tilstanden
  • Slett ALB og målgruppen
  • Avslutt EC2
  • Slett IAM-rollen

Konklusjon

Som nevnt tidligere er det veldig enkelt og interessant å lage en webapplikasjon med AWS. Men vi må også sørge for at applikasjonen er sikker og at dataene ikke lekker i gale hender. Sikkerheten kan brukes i flere lag. I denne veiledningen har vi sett hvordan du bruker AWS WAF (Web Application Firewall) for å beskytte webapplikasjonen mot angrep som å matche IP-adressen til EC2 Metadata. Vi kunne også ha brukt WAF for å beskytte mot vanlige angrep som SQL Injection og XSS (Cross Site Scripting).

flette sortering c ++ algoritme

Bruk av AWS WAF eller faktisk noe annet sikkerhetsprodukt gjør ikke applikasjonen sikker, men produktet må være konfigurert riktig. Hvis de ikke er konfigurert riktig, kan dataene komme i feil hender, slik det skjedde med Capital One og andre organisasjoner. Også den andre viktige tingen å vurdere er at sikkerhet må tenkes fra første dag og ikke kobles til applikasjonen på et senere tidspunkt.

Dette bringer oss til slutten av denne artikkelen om hvordan du kan sikre webapplikasjoner med AWS WAF. Vi har også kommet med en læreplan som dekker nøyaktig hva du trenger for å knekke løsningsarkitekteksamen! Du kan ta en titt på kursdetaljene for opplæring.

Har du spørsmål til oss? Vennligst nevn det i kommentarfeltet i denne Hva er AWS-bloggen, så kommer vi tilbake til deg.