Hvordan deaktiverer man AWS EC2-metadata?

Denne artikel vil lære dig om EC2-metadata, og hvorfor det er vigtigt. Du vil også lære, hvordan du deaktiverer metadata for at beskytte dig selv mod angreb som SSRF.

Amazon Web Services (AWS) har en Amazon Elastic Compute Cloud-tjeneste (Amazon EC2), som giver skalerbar behandlingskapacitet. Ved at bruge Amazon EC2 kan du udvikle og implementere apps hurtigere uden at foretage en forudgående hardwareinvestering.

Afhængigt af dine behov skal du starte lige så mange eller så få virtuelle servere. Konfigurer netværks- og sikkerhedsindstillinger, og kontroller lagring ved hjælp af Amazon EC2.

Oplysninger om din instans, der kan tilpasses eller administreres i en kørende instans, er kendt som instansmetadata. Forekomstens metadatakategorier omfatter værtsnavn, hændelser og sikkerhedsgrupper. Derudover kan du få adgang til de brugerdata, du angav, da du startede din instans ved hjælp af instansmetadata.

Du kan inkludere et kort script eller angive parametre, mens du konfigurerer din instans. Ved at bruge brugerdata kan du oprette generiske AMI’er og ændre konfigurationsfilerne til starttidspunktet.

Du kan konfigurere nye eller eksisterende instanser til at udføre følgende opgaver ved hjælp af instansmetadataindstillinger:

  • Kræv, at instansmetadataanmodninger sendes via IMDSv2
  • Indsæt PUT-respons-hop-grænsen.
  • Lockdown forekomst metadata adgang
  Bedste alternativer til Kickass Torrents i 2017, og hvordan man forbliver sikker

Det er muligt at få adgang til metadata fra en aktiv EC2-instans ved hjælp af en af ​​følgende teknikker: IMDSv1sIMDSv2

Instance Metadata Service er kendt som IMDS. Som du måske antager, er metoderne lidt anderledes; IMDSv1 anvender en anmodning/svar-metode, mens IMDSv2 er sessionsorienteret.

AWS opfordrer dig til at bruge IMDSv2, som er den foretrukne metode. Som standard bruger AWS SDK IMDSv2-kald, og du kan kræve, at brugere konfigurerer en ny EC2 med IMDSv2 aktiveret ved at bruge IAM-betingelsesnøgler i en IAM-politik.

Brug følgende IPv4- eller IPv6-URI’er til at se alle typer instans-metadata fra en kørende instans.

IPv4

krølle http://169.254.169.254/latest/meta-data/

IPv6

krølle http://[fd00:ec2::254]/nyeste/metadata/

IP-adresserne er link-lokale adresser og er kun gyldige fra instansen.

For at se forekomstens metadata kan du kun bruge den lokale linkadresse på 169.254.169.254. Anmodninger til metadata via URI’en er gratis, så der er ingen ekstra gebyrer fra AWS.

Behov for at deaktivere metadata

I AWS-opsætninger er SSRF-angrebet hyppigt og velkendt for alle. Angribere, der automatiserer sårbarhedsscanning og indsamler IAM-legitimationsoplysninger fra offentligt tilgængelige onlineapplikationer, er blevet fundet af Mandiant (et cybersikkerhedsfirma).

  Sådan integreres skrifttyper i PowerPoint

Implementering af IMDSv2 for alle EC2-instanser, hvilket har yderligere sikkerhedsfordele, ville reducere disse risici for din virksomhed. Muligheden for, at en fjende stjæler IAM-legitimationsoplysninger via SSRF, ville falde betydeligt med IMDSv2.

Brug af Server Side Request Forgery (SSRF) til at få adgang til EC2-metadatatjenesten er en af ​​de teknikker til AWS-udnyttelse, der oftest undervises i.

Metadatatjenesten er tilgængelig for de fleste EC2-instanser på 169.254.169.254. Dette indeholder nyttige oplysninger om instansen, såsom dens IP-adresse, sikkerhedsgruppenavn osv.

Hvis en IAM-rolle er knyttet til en EC2-instans, vil metadatatjenesten også indeholde IAM-legitimationsoplysninger, der skal godkendes som denne rolle. Vi kan stjæle disse legitimationsoplysninger afhængigt af versionen af ​​IMDS i brug og SSRF’ens muligheder.

Det er også værd at overveje, at en modstander med shell-adgang til EC2-instansen kunne få disse legitimationsoplysninger.

I dette eksempel kører en webserver på EC2-instansens port 80. Denne webserver har en simpel SSRF-sårbarhed, som giver os mulighed for at sende GET-anmodninger til enhver adresse. Dette kan bruges til at sende en anmodning til http://169.254.169.254.

For at deaktivere metadata

Ved at blokere HTTP-slutpunktet for instansmetadatatjenesten kan du forhindre adgang til dine instansmetadata, uanset hvilken version af instansmetadatatjenesten du bruger.

  Kotlin vs Java: Forskelle og ligheder

Du kan til enhver tid vende denne ændring ved at aktivere HTTP-slutpunktet. Brug modify-instance-metadata-options CLI-kommandoen og indstil http-endpoint-parameteren til deaktiveret for at deaktivere metadata for din instans.

For at deaktivere metadata skal du køre denne kommando:

aws ec2 modify-instance-metadata-options –instance-id i-0558ea153450674 –http-endpoint deaktiveret

deaktivering af metadata

Du kan se, at efter at jeg har deaktiveret mine metadata, får jeg en FORBUDT besked, hvis jeg prøver at få adgang til dem.

Hvis du vil aktivere dine metadata igen, skal du køre denne kommando:

aws ec2 modify-instance-metadata-options –instance-id i-0558ea153450674 –http-endpoint aktiveret

aktivere metadata igen

Konklusion

Metadata kan være nyttige til at udtrække information fra store datalagre. Det kan dog også misbruges at vide om en persons placering eller identitet uden dennes viden eller samtykke. Fordi det registrerer alle ændringer, du foretager, inklusive sletninger og kommentarer, skal du være opmærksom på, at det kan indeholde oplysninger, du ikke ønsker, at andre skal kunne se. Som følge heraf er det afgørende at fjerne metadata for at bevare dit online privatliv og anonymitet.

Du kan også udforske nogle AWS-nøgleterminologier, der fremmer din AWS-læring.