Tydelike skakels vir IP-toegangslyste: wat die toekenning werklik toelaat
’n Skakel wat ’n firewallpoort oopmaak, laat ’n adres toe, nie ’n persoon nie. Bepaal die omvang, vereis doelbewuste bevestiging en toets herhaling, verval en IPv6.
Om een klik in ’n tydelike firewallreël te omskep, is gerieflik, en dit bou terselfdertyd ’n magtigingstelsel wat besluit wie ’n diens mag bereik. Wat dit uitreik, is ’n adres eerder as ’n persoon, en daardie verskil maak saak sodra twee mense ’n NAT deel. Beperk die toekenning, bevestig dit doelbewus en maak die vervaldatum betekenisvol voordat die skakel gebou word. Die besluit voor jou is waar om die grens te plaas, nie of daar een moet bestaan nie.
Bepaal watter vraag die toekenning beantwoord
Begin by die vereiste. As ’n genoemde persoon die diens moet bereik en die toepassing reeds daardie persoon verifieer, hou ’n geauthentiseerde poort die identiteit by die handhawingspunt en het dit hoegenaamd geen adrestoelating nodig nie. As die teiken ’n bou-agent, ’n administratiewe sprongpoort of ’n toestel is wat nie aan gebruikersaanmelding kan deelneem nie, is ’n beperkte adrestoekenning dalk die enigste praktiese beheer wat beskikbaar is.
Om adrestoelating vir ’n gebruikergerigte toepassing te kies, skuif die werklike magtigingsprobleem na ’n ander plek, en die portaal erf dan die blaam vir ’n leemte wat hy nooit gesluit het nie.
Bepaal die versoek se grense op die bediener
Die blaaier mag nie die bestemming, die poort of die voorvoegsel kies nie. Die portaal los die diens uit sy eie rekords op en kontroleer aanspraak met ’n toets aan die bedienerkant, wat dieselfde beginsel is wat OWASP se magtigingsriglyne op elke versoek toepas. Adresafleiding hoort ook by die beskermde grens: wanneer ’n truproxy die kliëntadres rapporteer, aanvaar slegs die gekonfigureerde proxiketting en sy gedokumenteerde hantering van koptekste. ’n Aanstuur-kopteks wat deur ’n besoeker verskaf word, is ’n bewering oor herkoms, nie bewyse daarvan nie.
Kontroleer dan dat die portaal en die diens dieselfde bron sien. Gesplete tonneling, ’n proxy-hop en IPv4 teenoor IPv6 kan aan twee bestemmings twee verskillende adresse gee, so ’n toekenning wat via een pad geaktiveer is, dek dalk nie die versoek wat volg nie.
Wys die toekenning voordat dit geïnstalleer word
Om ’n skakel oop te maak, behoort die voorgestelde diens, die waargenome bron en die duur te vertoon en nog niks te verander nie. Daardie enkele stap verander die e-posskakel van ’n aksie in ’n voorstel, en dit keer dat ’n voorskoubot of ’n e-poskandeerder toegang verleen bloot deur dit te laai.
Die bevestiging behoort ’n toestandveranderende versoek te wees met die gewone kruiswerf- en oorsprongverdediging. Die teken behoort eenmalig te wees en atoomverbruik te word op die oomblik dat die reël geïnstalleer word, en die rekord behoort die eienaar, diens, adres, toekenningsidentifiseerder en vervaldatum vas te lê sonder om ooit die rou teken te log.
Die aflewering van die teken verdien dieselfde sorg as die reël self. ’n Vervalde of reeds gebruikte skakel wat steeds ’n reël produseer, is ’n tweede deur wat met dieselfde sleutel toegerus is.
Die adres word gedeel selfs terwyl die toekenning geld
’n Kantoor-NAT, ’n operateur-NAT en ’n gedeelde VPN-uitgang plaas elkeen verskeie mense agter een adres. Om daardie adres toe te laat, laat almal daar agter toe vir sover dit die diens se volgende grens aangaan, terwyl dit niks bewys oor wie die rekening hou wat die diens verwag nie.
Om die reël te verwyder is ook nie ’n universele ontkoppeling nie. Gevestigde verbindings, gekasde toepassingstekens en langdurige sessies kan die reël met minute of veel langer oorleef, so die leeftyd wat jy kies, behoort te weerspieël wat die diens ná toelating doen eerder as net hoe lank die reël bestaan.
Toets vier gevalle, en albei adresfamilies
’n Toekenning is net so goed soos die vier gevalle wat dit oorleef: ’n nuwe toegelate versoek, ’n nie-goedgekeurde versoekende, ’n herhaling van dieselfde skakel en dieselfde versoek ná verval.
Toets dan elke familie afsonderlik, want die bronadres wat die diens sien, kan tussen hulle verskil.
dig +short A service.example.com
dig +short AAAA service.example.com
curl -4 -sS -o /dev/null -w "%{http_code}\n" https://service.example.com
curl -6 -sS -o /dev/null -w "%{http_code}\n" https://service.example.com
Die nuttige uitkoms is ’n tydelike, ouditeerbare toelatingsbesluit onder normale gebruikerstoestemming, eerder as ’n permanente opening wat die naam dra van wie eerste geklik het.