Iekšējais ALB ar publisku DNS nosaukumu: vai tiešām atklāts?
Publisks risinātājs var atgriezt privātas adreses iekšējam AWS slodzes līdzsvarotājam. Pirms saukt to par atklātu, pārbaudiet shēmu, ceļus un klausītāju.
Palaidiet publisku DNS vaicājumu iekšējam slodzes līdzsvarotājam, un jūs varat saņemt atpakaļ privātu adresi, kas izskatās kā nepareiza konfigurācija, līdz pārbaudāt, kam ieraksts ir domāts. AWS dokumentē, ka iekšējo līdzsvarotāju nosaukumi var būt publiski atrisināmi, kamēr to mezgli glabā tikai privātas adreses. Risinātājs atbildēja, kur atrodas pakalpojums; tas neizveidoja maršrutu, neatvēra drošības grupu un nevienu neautentificēja. Vai šī atbilde ir problēma, ir atkarīgs no faktiem, ko varat pārbaudīt pēc kārtas.
Pirmais solis: lasiet shēmu, nevis IP
Shēmas lauks ir paša līdzsvarotāja paziņojums par savu robežu. aws elbv2 describe-load-balancers --names app-internal atgriež Scheme ar vērtību internal vai internet-facing, kā arī adreses tipu IPv4 vai divkāršam stekam. Uz internetu vērsts līdzsvarotājs joprojām var pārsūtīt uz privātiem mērķiem, tāpēc privātu aizmugures adrešu redzēšana neko nepierāda par priekšpusi.
Pierakstiet shēmu, pirms skatāties uz kaut ko citu, jo katrs vēlākais spriedums ir atkarīgs no tās. Tā arī norāda, kādas kontroles pastāv, no drošības grupām un klausītāja noteikumiem līdz tā līdzsvarotāja tipa funkcijām. Shēma, kas nokopēta no veca konsoles ekrānuzņēmuma, ir sliktāka par nekādu piezīmi. Izlasiet to vēlreiz no API un ielīmējiet vērtību biļetē.
Otrais solis: apskatiet, uz ko nosaukums atrisinās
Vaicājiet ārpus VPC ar dig +short app-internal-1234567890.eu-west-1.elb.amazonaws.com un atzīmējiet, vai atbildes ir 10.0.0.0/8, 172.16.0.0/12 vai 192.168.0.0/16. Privāta atbilde no publiska risinātāja ir gaidītā uzvedība iekšēja līdzsvarotāja nosaukumam; tas nav pierādījums, ka adrese ir maršrutējama no interneta.
Atrisiniet to pašu nosaukumu VPC iekšienē un salīdziniet. Ja abas atbildes atšķiras, jūs redzat split-horizon nosaukumu piešķiršanu, un šī atšķirība ir dizaina detaļa, nevis noplūde.
Trešais solis: uzskaitiet ceļus, kas var to sasniegt
Privāta adrese ir sasniedzama visur, kur pastāv maršruts un drošības noteikums. Uzskaitiet tos apzināti: VPN starp vietnēm, klienta VPN, VPC peering, transit gateway pieslēgumi, Direct Connect un jebkurš starpniekserveris vai bastions VPC iekšienē. Viens no tiem ir paredzētais ceļš, un pārējie ir tie, ko meklētu uzbrucējs.
Pēc tam pārbaudiet katra ceļa kontroles: drošības grupas līdzsvarotājā, tīkla ACL apakštīklos un maršrutēšanu, kas ceļu vispār rada. Lielākā daļa ziņoto atklātā iekšējā pakalpojuma gadījumu tiek atrisināti šeit: vai nu bija neparedzēts peering, vai arī ceļš bija paredzēts un lietojumprogrammai nebija autentifikācijas.
Ceturtais solis: pārbaudiet klausītāju un lietojumprogrammu atsevišķi
Mēģiniet savienoties no tīkla, kuram nevajadzētu sasniegt pakalpojumu, un apstipriniet, ka nevarat. Pēc tam mēģiniet no tā, kuram vajadzētu, un apstipriniet, ka sasniedzat klausītāju. Šie divi rezultāti atdala tīkla sasniedzamību no lietojumprogrammas uzvedības, un tie ir vienīgie pierādījumi, kas svarīgi atklātības jautājumā.
Sasniedzams klausītājs nav tas pats, kas pieejama lietojumprogramma. Pārbaudiet TLS sertifikātu un protokola politiku, pēc tam pašas lietojumprogrammas autentifikāciju un autorizāciju. Iekšējs rīks, kas pieņem jebkuru zvanītāju uzņēmuma VPN, ir atklāts katram šajā VPN kompromitētajam portatīvajam datoram, kas ir cita riska pakāpe nekā uz internetu vērsts, bet joprojām risks.
Atcerieties, ka kontroles atšķiras pēc tipa. Lietojumprogrammu līmeņa ugunsmūri piesaistās vienai līdzsvarotāju saimei, nevis otrai, tāpēc apstipriniet, kas patiešām ir pieejams jūsu priekšā esošajai shēmai un tipam, tā vietā lai pieņemtu vienlīdzību.
Piektais solis: izlemiet, vai pašam nosaukumam ir nozīme
Publiska atrisināmība var atklāt pakalpojuma nosaukumu, reģionu un adrešu diapazonu. Uztveriet to kā informācijas atklāšanas jautājumu ar politikas atbildi, nevis kā automātisku incidentu: turiet sensitīvus biznesa terminus ārpus resursu nosaukumiem un atzīmējiet atklāšanu riska reģistrā, ja nosaukumu piešķiršanas konvencija atklāj vairāk, nekā vēlaties.
Ja organizācija vēlas privātu nosaukumu pieredzi, privāta hostēta zona var nodrošināt aizstājvārdu, kas atrisinās tikai saistītajos VPC. Tas maina nosaukumu, ko lietotāji redz; tas nepadara pakalpojumu sniedzēja ģenerēto nosaukumu slepenu un neizņem nevienu tīkla ceļu.
Nemēģiniet piespraust adreses, lai paslēptu atbildi. Līdzsvarotāja adreses mainās, piespraušana sabojā TLS validācijas ieradumus, un kontrole, kas jums patiešām nepieciešama, ir tas, kurš var izveidot savienojumu un ko lietojumprogramma no viņa prasa. Pārbaudiet četrus faktus, pierakstiet tos, un jautājums vairs nav divdomīgs.