VPN-i sisselogimine takerdub pärast RADIUS Access-Challenge’i
Access-Challenge ei ole ei õnnestumine ega lõplik keeldumine. Vaadake, kuidas NAS, lüüs ja klient peavad järgmise vastuse samas vahetuses edasi kandma.
Parool on õige, VPN-i sisselogimine siiski ebaõnnestub ja RADIUS-server on võib-olla teinud täpselt seda, mida talle öeldi. Lüüs sai tõenäoliselt Access-Challenge’i, ei näidanud midagi kasulikku ning seejärel kas aegus või käsitles seda vastust keeldumisena. Kliendi poolelt näeb see välja nagu vale mandaat või katkine tunnel. Põhjus asub tavaliselt vestluse keskel, mida keegi ei salvestanud.
Üks sisselogimine, kaks RADIUS-vahetust
Kui taustsüsteem soovib teist faktorit, ei vasta see esimesele päringule ei kinnituse ega keeldumisega. See vastab koodiga 11 ja ootab kasutaja järgmist vastust, mille lüüs peab järelpäringus tagasi saatma. See järelpäring kuulub samasse autentimisvestlusse, mitte uude sisselogimiskatsesse.
Toimivas seades näeb kasutaja teist viipa: esmalt parool, seejärel ühekordne kood, või üks kombineeritud viip, kui operaator on selle dokumenteerinud. Katkises seades ei ilmu teine viip kunagi ja sisselogimine lihtsalt ebaõnnestub.
See on sümptom, mida jälitada, ja seda on lihtne kinnitada ainult kliendi poolelt: kui VPN-klient küsib täpselt üht saladust ja keeldub seejärel paroolist, mille tead kehtivat olevat, lõppes vahetus tõenäoliselt väljakutse juures.
Mida väljakutse tegelikult kannab
RADIUS-spetsifikatsioon kirjeldab koodi 11 jaotises 4.4 ja lubab kahte atribuuti, mis siin olulised on. Reply-Message sisaldab kasutajale mõeldud teksti ja State sisaldab läbipaistmatut väärtust, mille server soovib tagasi saada. NAS ei tohi State’i tõlgendada, vaid ainult muutmata kujul tagastada.
Järelpäring kasutab uut Identifier’it ja uut Request Authenticator’it ning peab kandma sama State’i väärtust ja kasutaja vastust. Server sobitab selle ootava väljakutsega just selle State’i kaudu, mistõttu lüüs, mis atribuudi uuesti genereerib või ära jätab, ei saa tseremooniat lõpule viia. Ka iga vastuse response authenticator peab valideeruma, muidu peaks NAS paketi kõrvale heitma.
Jaotis 4.4 lisab detaili, mis selgitab enamikku vaikseid tõrkeid: NAS, mis ei suuda väljakutseid toetada, käsitleb Access-Challenge’i keeldumisena. Kui teie lüüsi VPN-teenus on sellest toest varasem või jätab selle välja, muutub taustsüsteemi taotlus teise faktori järele koheseks «autentimine ebaõnnestus» ilma ühegi viibata.
Kus aheldatud päring kaob
Esimene kahtlane on viiba tee, mitte mandaat. Portaal, mis kuvab veebisisselogimistel OTP-välja, ei tee seda automaatselt VPN-teenuse jaoks, ja mõned lüüsid edastavad väljakutse ainult klientidele, kes seda võimet kuulutavad. Kokege sama kontot mõlemas sisenemispunktis; kui portaal töötab ja VPN mitte, vaatate üleandmist, mitte tokenit.
Sisestusvorming on teine kahtlane. Parooli ja koodi ühendamine ilma tarnija dokumenteeritud eraldajata või salvestatud mandaadi laskmine vana koodi kordama ebaõnnestub viisil, mis näeb välja täpselt nagu vale parool. Kasutage operaatori dokumenteeritud eraldi viipa või kombineeritud vormingut ja ärge kunagi mõelge eraldajat ise välja.
Väljaandespetsiifilised defektid on olemas, kuid aastaid tagasi parandatud versioonide loend ei ole tänase paigalduse diagnoos. Lugege selle tarkvara väljalaskemärkmeid, mida te tegelikult käitate, ja hoidke täheldatud vahetuse etappi oma tõendina.
Jälgige üht katset algusest lõpuni
Korrake seda üks kord, serveripoolse silumisega sisse lülitatud, ja hoidke kõik muud sessioonid salvestusaknast väljas:
$ sudo radsniff -i eth0 -x -f 'udp port 1812'
$ sudo freeradius -X
$ radtest alice 'password' 127.0.0.1 0 testing123
Väljundis otsige vestluse kuju, mitte üksikut rida. Esimene Access-Request Identifier’iga 3, State’i kandev Access-Challenge, seejärel teine Access-Request Identifier’iga 4, mis kordab seda State’i ja sisaldab kasutaja vastust. Kui teine päring puudub, ei jätkanud lüüs kunagi. Kui see saabub ilma State’ita, ei saa server seda ootava väljakutsega sobitada ja keeldub tavaliselt.
Jälge jagamisel peitke mandaadid, tokenid ja mittevajalikud isikuandmed ning korreleerige sündmusi ühest katsest, selle asemel et segada kordusi mitmest brauseri vahekaardist. Ajatemplid on siin teie sõber; väljakutse, mis saabub pärast seda, kui klient on alla andnud, näib kasutajale keeldumisena ja logis aeglase vastusena.
Soovitud lõppseisund on lõpuleviidud, volitatud vestlus, millele järgneb kavandatud teenusejuurdepääs. RADIUS-serverilt saabuv vastus tõestab sellest palju vähem.