Eroarea spune “versiune greșită”, așa că e tentant să începeți să schimbați versiuni TLS. Cu un proxy, verificați o posibilitate anterioară: a trimis clientul un handshake TLS către un port care aștepta HTTP simplu?

O destinație precum https://example.com/ și un proxy precum http://proxy.example:8080 sunt o pereche obișnuită. Schimbarea celui de-al doilea URL în HTTPS îi spune clientului să își cripteze conversația cu proxy-ul însuși. Nu este o instrucțiune de a permite site-uri HTTPS.

Localizați prima conversație TLS

La un proxy HTTP, clientul poate trimite mai întâi CONNECT și primi un răspuns HTTP. Abia apoi începe TLS-ul destinației în interiorul tunelului. La un proxy HTTPS, vine mai întâi o conexiune TLS separată către proxy.

Un parser TLS care primește o pagină de eroare HTTP sau alt text simplu poate raporta o eroare de protocol. Formularea nu stabilește ce versiuni TLS acceptă site-ul, nici măcar dacă site-ul a fost contactat.

  1. Notați URL-ul proxy-ului, inclusiv schema acestuia, și protocolul documentat al punctului final.
  2. Aflați dacă eșecul a avut loc înainte de un răspuns CONNECT, în timpul TLS-ului destinației sau la verificarea certificatului proxy-ului însuși.
  3. Verificați versiunile reale ale clientului și ale dependențelor când comparați o soluție veche. Implementările anterioare de proxy tratau uneori schema altfel.

Mai multe corecturi pot fi greșite din motive diferite. Lista de proxy-uri HTTP oferă candidați obișnuiți de punct final HTTP pentru cereri publice permise pe o astfel de rută. Un punct final HTTP simplu are nevoie de schema de proxy HTTP; un punct final cu adevărat TLS ar trebui să păstreze HTTPS și verificarea certificatului. Un proxy care refuză CONNECT are nevoie de un serviciu sau o politică acceptată, nu de o retrogradare arbitrară a bibliotecii.

Păstrați primul eșec observabil. Dezactivarea verificării certificatului nu poate face un receptor care vorbește doar HTTP să vorbească TLS, iar alegerea unei politici vechi de cifrare nu poate explica un refuz HTTP trimis înainte de handshake-ul site-ului.

Articole similare