Puncte:0

Antet gazdă certificat SNI și IIS

drapel cn

Context: site-ul web IIS cu antetul numelui de gazdă configurat și certificatul TLS.

Când un client inițiază o conexiune la site-ul specificat, acesta este fluxul corect?

  • Clientul (browserul) efectuează căutarea DNS
  • Conexiunea TCP este stabilită la server
  • Clientul (browserul) construiește sarcina TLS unde include SNI, care este numele site-ului și începe strângerea de mână cu serverul
  • Serverul caută certificatul cu numele specificat în lista de certificate de legături de site și răspunde
  • Odată ce TLS este stabilit, serverul web IIS direcționează cererea HTTP către site-ul specific folosind valoarea antetului HOST.

După înțelegerea mea, SNI-ul este informațiile de bază pentru ca serverul să caute certificatul site-ului.

Ce se întâmplă dacă, după strângere de mână TLS, modific de fapt antetul HTTP Host pentru a viza un alt site web? Este posibil ?

Lex Li avatar
drapel vn
âDe fapt modific antetul HTTP Host pentru a viza un alt site webâ nu este suficient de clar. Întrebați-vă unde puteți modifica antetul gazdei și atunci ar trebui să vedeți posibilitatea reală. De obicei, puteți modifica acel antet doar din partea browserului, apoi pierdeți controlul pe măsură ce browserul îl preia și inițializează o altă conexiune TLS la celălalt site.
Puncte:0
drapel cz

RFC 6066 secțiunea 11.1 spune, parțial:

Deoarece este posibil ca un client să prezinte un alt server_name în protocolul de aplicație, server de aplicații implementările care se bazează pe aceste nume sunt aceleași TREBUIE verificați pentru a vă asigura că clientul nu a prezentat un alt nume în protocolul de aplicare.

Modul în care serverele web realizează acest lucru poate varia. Apache și nginx resping ambele astfel de conexiuni, deși în mod ciudat Apache are o opțiune pentru a dezactiva acest lucru. Nu am idee ce face IIS, dar sper că este sănătos. Îl poți testa cu ușurință singur.

drapel br
Clauza „care se bazează pe aceleași nume” lucrează mult aici. Este suficient să ignorăm numele de la SNI și să procesăm doar antetul `Host:` pentru a obține o implementare conformă, iar așteptarea mea ar fi ca aceasta să fie norma cu gateway-uri TLS dedicate unde conexiunea TLS nici măcar nu ajunge la server.
Michael Hampton avatar
drapel cz
@SimonRichter Pe lângă problemele de securitate, HTTP/2 se întrerupe în moduri diverse și subtile în acest scenariu.
drapel br
Singura problemă de securitate este că, dacă utilizați SNI pentru a distribui traficul pe mai multe mașini, puteți trimite o solicitare către o mașină care nu are acel nume de gazdă configurat, care este o amenințare destul de scăzută (dar cea mai enervantă de care să vă apărați) . Dacă aceeași mașină termină TLS și procesează cererea, aruncarea numelui din SNI nu expune nicio suprafață de atac suplimentară -- tot ce puteți face este să vorbiți cu o gazdă cu care ați putea vorbi, de asemenea, folosind numele corect în SNI.

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.