AWS - VPC & Networking Osnovne informacije
Tip
Nauči & vežbaj AWS Hacking:
HackTricks Training AWS Red Team Expert (ARTE)
Nauči & vežbaj GCP Hacking:HackTricks Training GCP Red Team Expert (GRTE)
Nauči & vežbaj Az Hacking:HackTricks Training Azure Red Team Expert (AzRTE)
Podržite HackTricks
- Pogledajte subscription plans!
- Pridružite se 💬 Discord group or the telegram group or pratite nas na Twitter 🐦 @hacktricks_live.
- Podelite hacking tricks slanjem PR-ova na HackTricks i HackTricks Cloud github repos.
AWS Networking ukratko
A VPC sadrži network CIDR kao 10.0.0.0/16 (sa svojim routing table i network ACL).
Ova VPC mreža je podeljena na subnetworks, tako da je subnetwork direktno povezan sa VPC, routing table i network ACL.
Zatim, Network Interface-i prikačeni servisima (kao EC2 instances) su povezani sa subnetworks koristeći security group(s).
Dakle, security group će ograničiti izložene portove mrežnih interfejsa koji je koriste, nezavisno od subneta. A network ACL će ograničiti izložene portove za celu mrežu.
Pored toga, da biste imali pristup Internetu, postoje neke zanimljive konfiguracije koje treba proveriti:
- A subnetwork može auto-assign public IPv4 addresses
- An instance created in the network that auto-assign IPv4 addresses can get one
- An Internet gateway need to be attached to the VPC
- You could also use Egress-only internet gateways
- You could also have a NAT gateway in a private subnet so it’s possible to connect to external services from that private subnet, but it’s not possible to reach them from the outside.
- The NAT gateway can be public (access to the internet) or private (access to other VPCs)
.png)
VPC
Amazon Virtual Private Cloud (Amazon VPC) omogućava vam da pokrenete AWS resources u virtuelnoj mreži koju ste definisali. Ta virtuelna mreža će imati više subneta, Internet Gateways za pristup Internetu, ACLs, Security groups, IP-ove…
Subnets
Subnets pomažu da se uvede viši nivo bezbednosti. Logičko grupisanje sličnih resursa takođe olakšava upravljanje vašom infrastrukturom.
- Valid CIDR su od /16 netmask do /28 netmask.
- A subnet ne može biti u različitim Availability Zones u isto vreme.
- AWS rezerviše prva tri host IP adrese svakog subneta za internu AWS upotrebu: prva host adresa se koristi za VPC router. Druga adresa je rezervisana za AWS DNS, a treća adresa je rezervisana za buduću upotrebu.
- Nazivaju se public subnets oni koji imaju direktan pristup Internetu, dok private subnets to nemaju.
Route Tables
Route tables određuju rutiranje saobraćaja za subnet unutar VPC-a. One određuju koji mrežni saobraćaj se prosleđuje ka internetu ili ka VPN konekciji. Obično ćete naći pristup:
- Local VPC
- NAT
- Internet Gateways / Egress-only Internet gateways (potrebni da bi VPC imao pristup Internetu).
- Da biste učinili subnet javnim, potrebno je da kreirate i prikačite Internet gateway na vaš VPC.
- VPC endpoints (za pristup S3 iz privatnih mreža)
ACLs
Network Access Control Lists (ACLs): Network ACLs su pravila firewalla koja kontrolišu dolazni i odlazni mrežni saobraćaj ka subnetu. Mogu se koristiti za dozvoljavanje ili odbijanje saobraćaja ka određenim IP adresama ili opsezima.
- Najčešće se pristup dozvoljava/odbija koristeći security groups, ali ovo je jedini način da se u potpunosti prekine već uspostavljen reverse shells. Izmenjeno pravilo u security groups ne zaustavlja već uspostavljene konekcije
- Međutim, ovo se odnosi na ceo subnet — budite oprezni prilikom zabrane jer potrebna funkcionalnost može biti poremećena
Security Groups
Security groups su virtuelni firewall koji kontrolišu inbound i outbound mrežni saobraćaj ka instance u VPC-u. Relacija 1 SG prema M instances (obično 1 prema 1).
Obično se koriste za otvaranje opasnih portova na instancama, kao što je npr. port 22:
Elastic IP Addresses
An Elastic IP address je statička IPv4 adresa dizajnirana za dinamičko cloud computing okruženje. Elastic IP adresa se alocira vašem AWS account-u i vaša je dok je ne oslobodite. Korišćenjem Elastic IP adrese možete prikriti pad instance ili softvera brzo premapiranjem adrese na drugu instancu na vašem account-u.
Connection between subnets
Po defaultu, svi subnets imaju automatsko dodeljivanje javnih IP adresa isključeno, ali se to može uključiti.
A local route within a route table enables communication between VPC subnets.
Ako povezujete subnet sa drugim subnetom, ne možete automatski pristupiti subnetima povezanima sa tim drugim subnetom, potrebno je da kreirate veze direktno sa njima. Ovo se takođe odnosi na Internet gateways. Ne možete ići kroz vezu između subneta da biste pristupili internetu, morate dodeliti Internet gateway svom subnetu.
VPC Peering
VPC peering vam omogućava da povežete dva ili više VPC-a zajedno, koristeći IPV4 ili IPV6, kao da su deo iste mreže.
Kada je peering uspostavljen, resursi u jednom VPC-u mogu pristupiti resursima u drugom. Konektivnost između VPC-a se realizuje kroz postojeću AWS mrežnu infrastrukturu, tako da je visoko dostupna bez uskog grla u propusnosti. Kako peered konekcije funkcionišu kao da su deo iste mreže, postoje ograničenja u pogledu CIDR opsega koje možete koristiti.
Ako imate preklapajuće ili identične CIDR opsege za vaše VPC-e, onda nećete moći da peeer-ujete VPC-e.
Svaki AWS VPC će komunicirati samo sa svojim peer-om. Na primer, ako imate peering konekciju između VPC 1 i VPC 2, i drugu konekciju između VPC 2 i VPC 3, onda VPC 1 i VPC 2 mogu komunicirati direktno, kao i VPC 2 i VPC 3, međutim, VPC 1 i VPC 3 ne bi mogli. Ne možete rutirati kroz jedan VPC da biste došli do drugog.
VPC Flow Logs
Unutar vašeg VPC-a, možete imati stotine ili čak hiljade resursa koji međusobno komuniciraju između različitih subneta, javnih i privatnih, kao i između različitih VPC-a putem VPC peering konekcija. VPC Flow Logs vam omogućavaju da zabeležite IP saobraćajne informacije koje protiču između mrežnih interfejsa vaših resursa unutar VPC-a.
Za razliku od S3 access logs i CloudFront access logs, log podaci generisani od strane VPC Flow Logs se ne čuvaju u S3. Umesto toga, podaci iz flow log-ova se šalju u CloudWatch logs.
Ograničenja:
- Ako imate VPC peered konekciju, moći ćete da vidite flow logs peered VPC-ova samo ako su u istom account-u.
- Ako još uvek imate resurse u EC2-Classic okruženju, nažalost ne možete dohvatiti informacije sa njihovih interfejsa
- Kada se VPC Flow Log kreira, ne može se promeniti. Da biste izmenili konfiguraciju VPC Flow Log-a, morate ga obrisati i ponovo kreirati novi.
- Sledeći saobraćaj nije monitorisan i nije zabeležen logovima: DHCP saobraćaj unutar VPC-a, saobraćaj sa instanci koji je namenjen Amazon DNS serveru.
- Bilo koji saobraćaj namenjen IP adresi za VPC default router i saobraćaj ka i od sledećih adresa: 169.254.169.254 koji se koristi za prikupljanje instance metadata, i 169.254.169.123 koji se koristi za Amazon Time Sync Service.
- Saobraćaj vezan za Amazon Windows activation license sa Windows instance
- Saobraćaj između network load balancer interfejsa i endpoint network interfejsa
Za svaki network interface koji objavljuje podatke u CloudWatch log group, koristiće se različit log stream. I unutar svakog od tih stream-ova biće flow log event podaci koji prikazuju sadržaj log unosa. Svaki od ovih logova beleži podatke tokom prozora od približno 10 do 15 minuta.
VPN
Basic AWS VPN Components
- Customer Gateway:
- A Customer Gateway je resource koji kreirate u AWS da predstavlja vašu stranu VPN konekcije.
- To je suštinski fizički uređaj ili softverska aplikacija na vašoj strani Site-to-Site VPN konekcije.
- Dajete routing informacije i javnu IP adresu vašeg mrežnog uređaja (kao što je router ili firewall) AWS-u da biste kreirali Customer Gateway.
- Služi kao referentna tačka za postavljanje VPN konekcije i ne naplaćuje dodatne troškove.
- Virtual Private Gateway:
- A Virtual Private Gateway (VPG) je VPN koncentrator na Amazon strani Site-to-Site VPN konekcije.
- On je prikačen za vaš VPC i služi kao cilj za vašu VPN konekciju.
- VPG je AWS strana endpoint-a za VPN konekciju.
- Rukuje sigurnom komunikacijom između vašeg VPC-a i vaše on-premises mreže.
- Site-to-Site VPN Connection:
- A Site-to-Site VPN connection povezuje vašu on-premises mrežu sa VPC-om kroz sigurni IPsec VPN tunel.
- Ovaj tip konekcije zahteva Customer Gateway i Virtual Private Gateway.
- Koristi se za sigurnu, stabilnu i doslednu komunikaciju između vašeg data centra ili mreže i vašeg AWS okruženja.
- Obično se koristi za redovne, dugoročne konekcije i naplaćuje se na osnovu količine podataka prenesenih preko konekcije.
- Client VPN Endpoint:
- A Client VPN endpoint je resource koji kreirate u AWS da omogućite i upravljate client VPN sesijama.
- Koristi se za omogućavanje da pojedinačni uređaji (kao laptopovi, smartfoni itd.) bezbedno povežu AWS resurse ili vašu on-premises mrežu.
- Razlikuje se od Site-to-Site VPN po tome što je dizajniran za pojedinačne klijente, a ne za povezivanje celih mreža.
- Sa Client VPN-om, svaki klijentski uređaj koristi VPN client softver da uspostavi sigurnu konekciju.
Site-to-Site VPN
Povežite vašu on-premises mrežu sa vašim VPC-om.
- VPN connection: Sigurna konekcija između vaše on-premises opreme i vaših VPC-a.
- VPN tunnel: Enkriptovani link kroz koji podaci mogu prolaziti sa customer mreže ka ili od AWS-a.
Svaka VPN konekcija uključuje dva VPN tunela koje možete istovremeno koristiti za visok nivo dostupnosti.
- Customer gateway: AWS resource koji daje informacije AWS-u o vašem customer gateway uređaju.
- Customer gateway device: Fizički uređaj ili softverska aplikacija na vašoj strani Site-to-Site VPN konekcije.
- Virtual private gateway: VPN koncentrator na Amazon strani Site-to-Site VPN konekcije. Koristite virtual private gateway ili transit gateway kao gateway za Amazon stranu Site-to-Site VPN konekcije.
- Transit gateway: Transit hub koji se može koristiti za međupovezivanje vaših VPC-a i on-premises mreža. Koristite transit gateway ili virtual private gateway kao gateway za Amazon stranu Site-to-Site VPN konekcije.
Limitations
- IPv6 traffic nije podržan za VPN konekcije na virtual private gateway.
- AWS VPN konekcija ne podržava Path MTU Discovery.
Pored toga, uzmite u obzir sledeće kada koristite Site-to-Site VPN.
- Kada povezujete vaše VPC-e sa zajedničkom on-premises mrežom, preporučujemo da koristite nepreklapajuće CIDR blokove za vaše mreže.
Client VPN
Povezivanje sa vaše mašine na vaš VPC
Concepts
- Client VPN endpoint: Resource koji kreirate i konfigurišete da omogućite i upravljate client VPN sesijama. To je resource gde se sve client VPN sesije završavaju.
- Target network: Target network je mreža koju povežete sa Client VPN endpoint-om. Subnet iz VPC-a je target network. Povezivanje subneta sa Client VPN endpoint-om omogućava vam da uspostavite VPN sesije. Možete povezati više subneta sa Client VPN endpoint-om radi visoke dostupnosti. Svi subnetsi moraju biti iz istog VPC-a. Svaki subnet mora pripadati različitom Availability Zone.
- Route: Svaki Client VPN endpoint ima route table koji opisuje dostupne destinacijske mrežne rute. Svaka ruta u route table-u specificira put za saobraćaj do određenih resursa ili mreža.
- Authorization rules: Authorization rule ograničava korisnike koji mogu pristupiti mreži. Za određenu mrežu konfigurišete Active Directory ili identity provider (IdP) grupu kojoj je dozvoljen pristup. Samo korisnici koji pripadaju toj grupi mogu pristupiti naznačenoj mreži. Po defaultu nema authorization rules i morate konfigurisati authorization rules da biste omogućili korisnicima pristup resursima i mrežama.
- Client: Krajnji korisnik koji se povezuje na Client VPN endpoint da uspostavi VPN sesiju. Krajnji korisnici treba da preuzmu OpenVPN client i koriste Client VPN konfiguracioni fajl koji ste kreirali da uspostave VPN sesiju.
- Client CIDR range: IP adresni opseg iz kojeg se dodeljuju client IP adrese. Svaka konekcija do Client VPN endpoint-a dobija jedinstvenu IP adresu iz client CIDR range-a. Birate client CIDR range, na primer,
10.2.0.0/16. - Client VPN ports: AWS Client VPN podržava portove 443 i 1194 za TCP i UDP. Default je port 443.
- Client VPN network interfaces: Kada povežete subnet sa vašim Client VPN endpoint-om, mi kreiramo Client VPN network interfaces u tom subnetu. Saobraćaj koji se šalje u VPC sa Client VPN endpoint-a se šalje kroz Client VPN network interface. Zatim se primenjuje Source network address translation (SNAT), gde se source IP adresa iz client CIDR range-a prevodi na Client VPN network interface IP adresu.
- Connection logging: Možete omogućiti connection logging za vaš Client VPN endpoint da logujete događaje konekcije. Možete koristiti ove informacije za forenzičku analizu, analiziranje korišćenja vašeg Client VPN endpoint-a ili za debug problema sa konekcijom.
- Self-service portal: Možete omogućiti self-service portal za vaš Client VPN endpoint. Klijenti se mogu prijaviti na web-based portal koristeći svoje akreditive i preuzeti najnoviju verziju Client VPN endpoint konfiguracionog fajla, ili najnoviju verziju AWS-providovanog klijenta.
Limitations
- Client CIDR ranges ne smeju da se preklapaju sa lokalnim CIDR-om VPC-a u kome se nalazi pridruženi subnet, niti sa bilo kojim rutama ručno dodatim u route table Client VPN endpoint-a.
- Client CIDR ranges moraju imati veličinu bloka od najmanje /22 i ne smeju biti veći od /12.
- Deo adresa u client CIDR range-u se koristi da podrži model dostupnosti Client VPN endpoint-a, i ne mogu se dodeliti klijentima. Stoga preporučujemo da dodelite CIDR blok koji sadrži dva puta veći broj IP adresa nego što vam je potrebno da biste omogućili maksimalan broj istovremenih konekcija koje planirate da podržite na Client VPN endpoint-u.
- Client CIDR range ne može biti promenjen nakon što kreirate Client VPN endpoint.
- Subnetsi pridruženi Client VPN endpoint-u moraju biti u istom VPC-u.
- Ne možete pridružiti više subneta iz iste Availability Zone sa Client VPN endpoint-om.
- Client VPN endpoint ne podržava subnet associations u dedicated tenancy VPC-u.
- Client VPN podržava samo IPv4 saobraćaj.
- Client VPN nije Federal Information Processing Standards (FIPS) kompatibilan.
- Ako je multi-factor authentication (MFA) onemogućen za vaš Active Directory, korisnička lozinka ne može biti u sledećem formatu.
SCRV1:<base64_encoded_string>:<base64_encoded_string>
- Self-service portal nije dostupan za klijente koji se autentifikuju koristeći mutual authentication.
Tip
Nauči & vežbaj AWS Hacking:
HackTricks Training AWS Red Team Expert (ARTE)
Nauči & vežbaj GCP Hacking:HackTricks Training GCP Red Team Expert (GRTE)
Nauči & vežbaj Az Hacking:HackTricks Training Azure Red Team Expert (AzRTE)
Podržite HackTricks
- Pogledajte subscription plans!
- Pridružite se 💬 Discord group or the telegram group or pratite nas na Twitter 🐦 @hacktricks_live.
- Podelite hacking tricks slanjem PR-ova na HackTricks i HackTricks Cloud github repos.
HackTricks Cloud

