AWS - VPC & Networking Basic Information
Last updated
Last updated
Leer & oefen AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Leer & oefen GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
'n VPC bevat 'n netwerk CIDR soos 10.0.0.0/16 (met sy routeringstabel en netwerk ACL).
Hierdie VPC-netwerk is verdeel in subnetwerke, so 'n subnetwerk is direk verwant aan die VPC, routering tabel en netwerk ACL.
Dan is Netwerk Interfaces wat aan dienste (soos EC2 instansies) geheg is, verbonden aan die subnetwerke met veiligheidsgroep(e).
Daarom sal 'n veiligheidsgroep die blootgestelde poorte van die netwerk interfaces wat dit gebruik, onafhanklik van die subnetwork beperk. En 'n netwerk ACL sal die blootgestelde poorte vir die hele netwerk beperk.
Boonop, om toegang tot die Internet te verkry, is daar 'n paar interessante konfigurasies om na te kyk:
'n subnetwerk kan outomaties openbare IPv4 adresse toewys
'n instansie wat in die netwerk geskep is wat outomaties IPv4 adresse toewys, kan een kry
'n Internet gateway moet aan die VPC geheg wees
Jy kan ook Egress-only internet gateways gebruik
Jy kan ook 'n NAT gateway in 'n privaat subnet hê sodat dit moontlik is om verbinding te maak met eksterne dienste vanaf daardie privaat subnet, maar dit is nie moontlik om hulle van buite te bereik nie.
Die NAT gateway kan publiek wees (toegang tot die internet) of privaat (toegang tot ander VPCs)
Amazon Virtuele Privaatskyf (Amazon VPC) stel jou in staat om AWS hulpbronne in 'n virtuele netwerk te ontplooi wat jy gedefinieer het. Hierdie virtuele netwerk sal verskeie subnetwerke, Internet Gateways om toegang tot die Internet te verkry, ACLs, Veiligheidsgroepe, IPs...
Subnets help om 'n groter vlak van sekuriteit af te dwing. Logiese groepe van soortgelyke hulpbronne help jou ook om 'n gemak van bestuur oor jou infrastruktuur te handhaaf.
Geldige CIDR is van 'n /16 netmask tot 'n /28 netmask.
'n subnet kan nie in verskillende beskikbaarheidsgebiede terselfdertyd wees nie.
AWS reserveer die eerste drie gasheer IP adresse van elke subnet vir interne AWS gebruik: die eerste gasheer adres wat gebruik word, is vir die VPC-router. Die tweede adres is gereserveer vir AWS DNS en die derde adres is gereserveer vir toekomstige gebruik.
Dit word publieke subnetwerke genoem vir diegene wat direkte toegang tot die Internet het, terwyl privaat subnetwerke dit nie het nie.
Routeringstabelle bepaal die verkeer routering vir 'n subnet binne 'n VPC. Hulle bepaal watter netwerkverkeer na die internet of na 'n VPN-verbinding gestuur word. Jy sal gewoonlik toegang vind tot die:
Plaaslike VPC
NAT
Internet Gateways / Egress-only Internet gateways (nodig om 'n VPC toegang tot die Internet te gee).
Om 'n subnet publiek te maak, moet jy 'n Internet gateway skep en heg aan jou VPC.
VPC eindpunte (om toegang tot S3 vanaf privaat netwerke te verkry)
In die volgende beelde kan jy die verskille in 'n standaard publieke netwerk en 'n private een nagaan:
Netwerk Toegang Beheer Lyste (ACLs): Netwerk ACLs is firewall reëls wat inkomende en uitgaande netwerkverkeer na 'n subnet beheer. Hulle kan gebruik word om verkeer na spesifieke IP adresse of reekse toe te laat of te weier.
Dit is die mees algemene om toegang toe te laat/te weier met behulp van veiligheidsgroepe, maar dit is die enigste manier om gevestigde omgekeerde skulpies heeltemal te sny. 'n Gewysigde reël in 'n veiligheidsgroep stop nie reeds gevestigde verbindings nie.
Dit geld egter vir die hele subnetwork, wees versigtig wanneer jy goed verbied, want nodige funksionaliteit mag versteur word.
Veiligheidsgroepe is 'n virtuele firewall wat inkomende en uitgaande netwerk verkeer na instansies in 'n VPC beheer. Verhouding 1 SG tot M instansies (gewoonlik 1 tot 1). Gewoonlik word dit gebruik om gevaarlike poorte in instansies te open, soos poort 22 byvoorbeeld:
'n Elastiese IP adres is 'n statische IPv4 adres wat ontwerp is vir dinamiese wolkrekenaars. 'n Elastiese IP adres word aan jou AWS rekening toegeken, en is joune totdat jy dit vrystel. Deur 'n Elastiese IP adres te gebruik, kan jy die mislukking van 'n instansie of sagteware maskeer deur die adres vinnig na 'n ander instansie in jou rekening te herverdeel.
Standaard het alle subnetwerke die outomatiese toewysing van openbare IP adresse afgeskakel, maar dit kan aangeskakel word.
'n Plaaslike roete binne 'n roeteringstabel stel kommunikasie tussen VPC subnetwerke in staat.
As jy 'n subnet met 'n ander subnet verbind, kan jy nie toegang verkry tot die subnetwerke wat met die ander subnet verbind is nie, jy moet direk verbinding met hulle maak. Dit geld ook vir internet gateways. Jy kan nie deur 'n subnetverbinding gaan om toegang tot die internet te verkry nie, jy moet die internet gateway aan jou subnet toewys.
VPC peering stel jou in staat om twee of meer VPCs saam te verbind, met behulp van IPV4 of IPV6, asof hulle deel van dieselfde netwerk is.
Sodra die peerverbinding gevestig is, kan hulpbronne in een VPC toegang verkry tot hulpbronne in die ander. Die verbinding tussen die VPCs word geïmplementeer deur die bestaande AWS netwerk infrastruktuur, en is dus hoogs beskikbaar sonder enige bandwydte knelpunte. Aangesien gepeerde verbindings werk asof hulle deel van dieselfde netwerk is, is daar beperkings wanneer dit kom by jou CIDR blokreekse wat gebruik kan word. As jy oorvleuelende of duplikaat CIDR reekse vir jou VPC het, dan sal jy nie in staat wees om die VPCs saam te peer nie. Elke AWS VPC sal slegs met sy peer kommunikeer. As 'n voorbeeld, as jy 'n peering verbinding tussen VPC 1 en VPC 2 het, en 'n ander verbinding tussen VPC 2 en VPC 3 soos getoon, dan kan VPC 1 en 2 direk met mekaar kommunikeer, soos VPC 2 en VPC 3, maar VPC 1 en VPC 3 kan nie. Jy kan nie deur een VPC roete om by 'n ander te kom nie.
Binne jou VPC kan jy potensieel honderde of selfs duisende hulpbronne hê wat tussen verskillende subnetwerke kommunikeer, beide publiek en privaat, en ook tussen verskillende VPCs deur VPC peering verbindings. VPC Stroomlogs stel jou in staat om IP verkeer inligting vas te vang wat tussen jou netwerk interfaces van jou hulpbronne binne jou VPC vloei.
In teenstelling met S3 toegang logs en CloudFront toegang logs, is die logdata wat deur VPC Stroomlogs gegenereer word, nie in S3 gestoor nie. In plaas daarvan word die logdata wat vasgevang word, na CloudWatch logs gestuur.
Beperkings:
As jy 'n VPC gepeerde verbinding uitvoer, sal jy slegs die stroomlogs van gepeerde VPCs wat binne dieselfde rekening is, kan sien.
As jy steeds hulpbronne binne die EC2-Classic omgewing uitvoer, kan jy ongelukkig nie inligting van hul interfaces verkry nie.
Sodra 'n VPC Stroomlog geskep is, kan dit nie gewysig word nie. Om die VPC Stroomlog konfigurasie te verander, moet jy dit verwyder en dan 'n nuwe een herskep.
Die volgende verkeer word nie gemonitor en vasgevang deur die logs nie. DHCP verkeer binne die VPC, verkeer van instansies wat bestem is vir die Amazon DNS Server.
Enige verkeer wat bestem is vir die IP adres van die VPC standaard router en verkeer na en van die volgende adresse, 169.254.169.254 wat gebruik word om instansie metadata te versamel, en 169.254.169.123 wat gebruik word vir die Amazon Tyd Sink diens.
Verkeer wat verband hou met 'n Amazon Windows aktiveringslisensie van 'n Windows instansie
Verkeer tussen 'n netwerk laaibalk interface en 'n eindpunt netwerk interface
Vir elke netwerk interface wat data na die CloudWatch loggroep publiseer, sal dit 'n ander logstroom gebruik. En binne elkeen van hierdie strome, sal daar die stroomlog gebeurtenisdata wees wat die inhoud van die loginskrywings toon. Elke een van hierdie logs vang data vas gedurende 'n venster van ongeveer 10 tot 15 minute.
Kliënt Gateway:
'n Kliënt Gateway is 'n hulpbron wat jy in AWS skep om jou kant van 'n VPN verbinding te verteenwoordig.
Dit is essensieel 'n fisiese toestel of sagtewaretoepassing aan jou kant van die Site-to-Site VPN verbinding.
Jy verskaf routering inligting en die publieke IP adres van jou netwerk toestel (soos 'n router of 'n firewall) aan AWS om 'n Kliënt Gateway te skep.
Dit dien as 'n verwysingspunt vir die opstelling van die VPN verbinding en bring geen addisionele koste mee nie.
Virtuele Privaatskyf Gateway:
'n Virtuele Privaatskyf Gateway (VPG) is die VPN konsentrasie aan die Amazon kant van die Site-to-Site VPN verbinding.
Dit is aan jou VPC geheg en dien as die teiken vir jou VPN verbinding.
VPG is die AWS kant eindpunt vir die VPN verbinding.
Dit hanteer die veilige kommunikasie tussen jou VPC en jou plaaslike netwerk.
Site-to-Site VPN Verbinding:
'n Site-to-Site VPN verbinding verbind jou plaaslike netwerk met 'n VPC deur 'n veilige, IPsec VPN tonnel.
Hierdie tipe verbinding vereis 'n Kliënt Gateway en 'n Virtuele Privaatskyf Gateway.
Dit word gebruik vir veilige, stabiele, en konsekwente kommunikasie tussen jou datacentrum of netwerk en jou AWS omgewing.
Gewoonlik gebruik vir gereelde, langtermyn verbindings en word gefaktureer op grond van die hoeveelheid data wat oor die verbinding oorgedra word.
Kliënt VPN Eindpunt:
'n Kliënt VPN eindpunt is 'n hulpbron wat jy in AWS skep om kliënt VPN sessies in te stel en te bestuur.
Dit word gebruik om individuele toestelle (soos skootrekenaars, slimfone, ens.) veilig met AWS hulpbronne of jou plaaslike netwerk te verbind.
Dit verskil van Site-to-Site VPN in die sin dat dit ontwerp is vir individuele kliënte eerder as om hele netwerke te verbind.
Met Kliënt VPN gebruik elke kliënt toestel 'n VPN kliënt sagteware om 'n veilige verbinding te vestig.
Verbind jou plaaslike netwerk met jou VPC.
VPN verbinding: 'n Veilige verbinding tussen jou plaaslike toerusting en jou VPCs.
VPN tonnel: 'n Geënkripteerde skakel waar data van die kliënt netwerk na of van AWS kan beweeg.
Elke VPN verbinding sluit twee VPN tonnels in wat jy gelyktydig kan gebruik vir hoë beskikbaarheid.
Kliënt gateway: 'n AWS hulpbron wat inligting aan AWS verskaf oor jou kliënt gateway toestel.
Kliënt gateway toestel: 'n fisiese toestel of sagtewaretoepassing aan jou kant van die Site-to-Site VPN verbinding.
Virtuele privaatskyf gateway: Die VPN konsentrasie aan die Amazon kant van die Site-to-Site VPN verbinding. Jy gebruik 'n virtuele privaatskyf gateway of 'n transit gateway as die gateway vir die Amazon kant van die Site-to-Site VPN verbinding.
Transit gateway: 'n transit hub wat gebruik kan word om jou VPCs en plaaslike netwerke te interkonnekteer. Jy gebruik 'n transit gateway of virtuele privaatskyf gateway as die gateway vir die Amazon kant van die Site-to-Site VPN verbinding.
IPv6 verkeer word nie ondersteun vir VPN verbindings op 'n virtuele privaatskyf gateway nie.
'n AWS VPN verbinding ondersteun nie Pad MTU Ontdekking nie.
Boonop, neem die volgende in ag wanneer jy Site-to-Site VPN gebruik.
Wanneer jy jou VPCs aan 'n gemeenskaplike plaaslike netwerk verbind, beveel ons aan dat jy nie-oorvleuelende CIDR blokke vir jou netwerke gebruik nie.
Verbind vanaf jou masjien na jou VPC
Kliënt VPN eindpunt: Die hulpbron wat jy skep en konfigureer om kliënt VPN sessies in te stel en te bestuur. Dit is die hulpbron waar alle kliënt VPN sessies beëindig word.
Teiken netwerk: 'n Teiken netwerk is die netwerk wat jy met 'n Kliënt VPN eindpunt assosieer. 'n subnet van 'n VPC is 'n teiken netwerk. Om 'n subnet met 'n Kliënt VPN eindpunt te assosieer, stel jou in staat om VPN sessies in te stel. Jy kan verskeie subnets met 'n Kliënt VPN eindpunt assosieer vir hoë beskikbaarheid. Alle subnets moet van dieselfde VPC wees. Elke subnet moet aan 'n ander Beskikbaarheidsgebied behoort.
Roete: Elke Kliënt VPN eindpunt het 'n roeteringstabel wat die beskikbare bestemming netwerk roetes beskryf. Elke roete in die roeteringstabel spesifiseer die pad vir verkeer na spesifieke hulpbronne of netwerke.
Outorisasiereëls: 'n autorisatiereël beperk die gebruikers wat toegang tot 'n netwerk kan verkry. Vir 'n spesifieke netwerk, konfigureer jy die Aktiewe Gids of identiteitsverskaffer (IdP) groep wat toegang verleen. Slegs gebruikers wat tot hierdie groep behoort, kan toegang tot die spesifieke netwerk verkry. Standaard is daar geen autorisatiereëls nie en jy moet autorisatiereëls konfigureer om gebruikers toegang tot hulpbronne en netwerke te gee.
Kliënt: Die eindgebruiker wat met die Kliënt VPN eindpunt verbind om 'n VPN sessie te vestig. Eindgebruikers moet 'n OpenVPN kliënt aflaai en die Kliënt VPN konfigurasie lêer wat jy geskep het, gebruik om 'n VPN sessie te vestig.
Kliënt CIDR reeks: 'n IP adres reeks waaruit kliënt IP adresse toegeken kan word. Elke verbinding met die Kliënt VPN eindpunt word aan 'n unieke IP adres van die kliënt CIDR reeks toegeken. Jy kies die kliënt CIDR reeks, byvoorbeeld, 10.2.0.0/16
.
Kliënt VPN poorte: AWS Kliënt VPN ondersteun poorte 443 en 1194 vir beide TCP en UDP. Die standaard is poort 443.
Kliënt VPN netwerk interfaces: Wanneer jy 'n subnet met jou Kliënt VPN eindpunt assosieer, skep ons Kliënt VPN netwerk interfaces in daardie subnet. Verkeer wat na die VPC van die Kliënt VPN eindpunt gestuur word, word deur 'n Kliënt VPN netwerk interface gestuur. Bron netwerk adres vertaling (SNAT) word dan toegepas, waar die bron IP adres van die kliënt CIDR reeks vertaal word na die Kliënt VPN netwerk interface IP adres.
Verbindingslogging: Jy kan verbindingslogging vir jou Kliënt VPN eindpunt inskakel om verbindingsgebeurtenisse te log. Jy kan hierdie inligting gebruik om forensiese ondersoeke te doen, analiseer hoe jou Kliënt VPN eindpunt gebruik word, of verbindingsprobleme op te los.
Selfdiensportaal: Jy kan 'n selfdiensportaal vir jou Kliënt VPN eindpunt inskakel. Kliënte kan inlog op die web-gebaseerde portaal met hul geloofsbriewe en die nuutste weergawe van die Kliënt VPN eindpunt konfigurasie lêer aflaai, of die nuutste weergawe van die AWS verskafde kliënt.
Kliënt CIDR reekse kan nie oorvleuel met die plaaslike CIDR van die VPC waarin die geassosieerde subnet geleë is nie, of enige roetes wat handmatig by die Kliënt VPN eindpunt se roeteringstabel gevoeg is.
Kliënt CIDR reekse moet 'n blokgrootte van ten minste /22 hê en mag nie groter wees as /12 nie.
'n gedeelte van die adresse in die kliënt CIDR reeks word gebruik om die beskikbaarheids model van die Kliënt VPN eindpunt te ondersteun, en kan nie aan kliënte toegeken word nie. Daarom beveel ons aan dat jy 'n CIDR blok toewys wat twee keer die aantal IP adresse bevat wat benodig word om die maksimum aantal gelyktydige verbindings wat jy van plan is om te ondersteun, in te stel.
Die kliënt CIDR reeks kan nie verander word nadat jy die Kliënt VPN eindpunt geskep het nie.
Die subnets wat met 'n Kliënt VPN eindpunt geassosieer is, moet in dieselfde VPC wees.
Jy kan nie verskeie subnets van dieselfde Beskikbaarheidsgebied met 'n Kliënt VPN eindpunt assosieer nie.
'n Kliënt VPN eindpunt ondersteun nie subnet assosiasies in 'n toegewyde verblyf VPC nie.
Kliënt VPN ondersteun IPv4 verkeer slegs.
Kliënt VPN is nie Federale Inligting Verwerkingsstandaarde (FIPS) konform nie.
As multi-faktor verifikasie (MFA) gedeaktiveer is vir jou Aktiewe Gids, kan 'n gebruiker se wagwoord nie in die volgende formaat wees nie.
Die selfdiensportaal is nie beskikbaar vir kliënte wat met behulp van wederkerige verifikasie outentiseer nie.
Leer & oefen AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Leer & oefen GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)