Is in mislearre VPN-handshake echt in downgrade-oanfal?
Downgrade-oanfallen besteane, mar de measte mislearre handshakes binne in oanbiedingsôfwiking, in minne rûte of in ferrûn profyl. Sjoch earst wat ôfpraat is.
In handshake dy't op in flater einiget fielt as in oanfal oant jo nei it berjocht sjogge, en meastentiids is it rekkenjen: gjin mienskiplik oanbod, in sertifikaat dat ferrûn is of in pakket dat nea oankaam. In downgrade-oanfal is eat spesifyks: in tsjinstanner dy't beide kanten nei swakker gedrach triuwt as se keazen hiene, en it lit oare bewiis efter. Eltse mislearring as kweawilligens behannelje stjoert jo op syk nei in slachtoffer dat der miskien net is, wylst in echte downgrade as konfiguraasjeflater behannelje it swakkere resultaat stean lit. De twa flaters kostje ferskillend, en mar ien is goedkeap te reparearjen.
Wat in downgrade-oanfal eins feroaret
It doel is net de syfer te brekken en net in kaai te rieden. It is de ûnderhanneling te beynfloedzjen sadat beide kanten op in âldere ferzje of in swakker algoritme útkomme dat de oanfaller oan kin, of ien kant leauwe litte dat de oare allinnich dat stipet.
Wat feroaret is de oerienkomst, net de autentikaasje. As de oanfaller it oanbod feroarje kin sûnder ûntdutsen te wurden, kinne de pearen noch in handshake foltôgje en inoar noch autentisearje, mei parameters dy't de oanfaller foarkar jout. Dêrom is de nijsgjirrige fraach oft de ûnderhanneling sels troch yntegriteitsbeskerming dutsen is.
Wêrom de ûnderhanneling sels autentisearre wurde moat
TLS 1.3 makket dy beskerming eksplisyt. In klant dy't de nijere ferzje oanbean hat, kin in server opmerke dy't stil weromfallen is, om't de willekeurige wearde fan de server in fêst patroan draacht as er 1.2 of leger ûnderhannelet, en de klant moat ôfbrekke as er dat sjocht. De folsleine transkripsje is ek troch de einberjochten dutsen, sadat in wiziging earne yn 'e ûnderhanneling letter mislearret ynstee fan stil troch te gean.
Âldere protokolferzjes hiene swakkere ferhalen, en krekt dêrom binne de weromfallelregels fan belang. In TLS 1.0-einpunt yn deselde konfiguraasje is gjin downgrade-oanfal; it is in tastien resultaat dat jo sels keazen hawwe ta te litten. It ûnderskie is oft it swakkere resultaat út in beskerme beslissing kaam of út in ûnbeskerme paad dat in tuskenpersoan beynfloedzje koe. As jo it sa formulearje, losse de measte foarfallen op yn in konfiguraasjefraach.
IKEv2 gedraacht him oars, mar rêst op itselde idee. It oanbod wurdt droegen yn in útwikseling dy't letter beide pearen autentisearret, sadat in middenkast dy't de algoritmen oerskriuwt de autentikaasje brekt ynstee fan te stjoeren. It kontrôlekanaal fan OpenVPN beskermet syn ûnderhanneling mei TLS en brûkt dat kanaal dan om de syfers fan it datakanaal ôf te praten, en dêrom is de logrigel fan it kontrôlekanaal de nijsgjirrige.
Konfigurearre kompatibiliteit is gjin oanfal
In behearder kin mei opsetsin âldere karren tastean om in dokumintearre klant te stypjen, en dy beslissing is yn 'e konfiguraasje sichtber. In oanfaller kin dy konfiguraasje net meitsje; hy kin allinnich in paad brûke dat him it oanbod beynfloedzje lit.
De gefaarlike reparaasje is dy't it bewiis fan it ferskil fuorthellet. Alle âldere opsjes oansette, sertifikaatferifikaasje útsette of elke syfer akseptearje om in flater ferdwine te litten ferbreedet wat it einpunt akseptearje sil, en hellet de kontrôles fuort dy't it swakkere resultaat rapportearre hiene.
As jo ien âlde opsje hâlde moatte, neam dan de reden en de klant yn it konfiguraasjekommentaar, en behein de opsje dan ta it profyl dat it nedich hat. In kompatibiliteitsútsûndering beheind ta ien lústerder is te auditearjen; ien dy't globaal tapast wurdt is gewoan in swakkerer standert dy't nimmen him betinkt keazen te hawwen.
Lês de mislearring foardat jo in oarsaak neame
Bewarje de krekte flatertekst, de ferzjes fan klant en server en de tiid foardat jo wat feroarje. Klassifisearje dan: wiene de pearen it net iens oer in oanbod, mislearre it pakketpaad, of wegere ien kant in parameter dy't it eartiids akseptearre?
In ôfwiking fan it oanbod neamt meastentiids de oertrêdende ferzjes of algoritmen en mislearret elke kear op itselde punt. In probleem mei rûteleas of MTU stoppet of rint op in tiidlimit, en it fariearret faak mei it netwurk. In ferrûn sertifikaat jout in ferifikaasjeflater ynstee fan in ûnderhannelingsflater.
Neat fan dat is bewiis fan in oanfaller. In kweawillige oarsaak by de earste mislearring tawize is de flater, om't it de deterministyske bug ferberget dy't moarn wer mislearret.
Befêstigje wat eins keazen is
Lês nei elke korreksje it ôfpraat resultaat ynstee fan te fertrouwen dat de ferbining omheech kaam. In ferbining dy't slagget om't ferifikaasje fuorthelle is, is de útkomst dy't jo foarkomme woene. De twa opdrachten hjirûnder litte de keazen ferzje en syfer sjen foar in TLS-einpunt, plus de rigel fan it kontrôlekanaal út in OpenVPN serverlog.
openssl s_client -connect 198.51.100.30:443 -servername vpn.example.net -brief </dev/null
grep -iE 'Control Channel|Data Channel' /var/log/openvpn.log | tail -5Fergelykje it resultaat mei de konfiguraasje dy't jo bedoelden, net mei wat no ferbynt. As de keazen ferzje âlder is as it tastiene minimum, is it profyl of de weromfallel-list it plak om te sykjen, en it antwurd is dy list te reparearjen ynstee fan in oanfal te ferklearjen en alles dêromhinne opnij te bouwen.