Ĉu TOTP sur la sama tekkomputilo estas vere dua faktoro?
Kodgenerilo sur la VPN-tekkomputilo estas posedfaktoro, kiu staras ene de la sama kompromita limo. Unue spuru la semon kaj la seancon.
Ensalutu al VPN-kliento, kiu petas pasvorton kaj poste sesciferan kodon, kaj du instigoj aspektas kiel du sendependaj baroj. Laŭ faktoro-tipo ili estas: la pasvorto estas io, kion vi scias, la kodo estas io, kion vi posedas. Laŭ tio, kion elmontras unu kompromitita tekkomputilo, ili povas kunfali en unu limon, ĉar tio, kion vi posedas, estas dosiero sur la maŝino, en kiun vi tajpas. La diferenco inter tiuj du kalkuloj estas la temo de ĉi tiu trairo.
Spuru unu ensaluton de la pasvorta kampo ĝis la koda kampo
Rigardu la sinsekvon, ne la etikedojn. La kliento sendas la pasvorton, la servilo respondas, ke necesas dua pruvo, kaj la kliento malfermas kampon por ses aŭ ok ciferoj. Malantaŭ tiu kampo staras generila aplikaĵo, kiu tenas komunan sekreton kaj horloĝon. Ĝi kalkulas valoron el la sekreto kaj la nuna tempopaŝo, kaj la servilo rekalkulas la saman valoron el sia kopio de la sekreto.
Ambaŭ flankoj tenas la saman ŝlosilan materialon. Tiu simetrio estas la parto, kiun homoj maltrafas, kiam ili priskribas la kodon kiel sekreton: la provizanto povas ankaŭ generi viajn kodojn, kaj tial la semo valoras pli ol iu ajn unuopa eligo. Kodo, kiu likas, estas unufoja valoro; la semo, kiu ĝin produktis, estas konstanta legitimilo, kiu daŭre produktas validajn valorojn ĝis ĝi estos anstataŭigita.
Aktivigo estas la alia duono de la fluo. Generilo, kiu malŝlosiĝas per aparata pasvorto, biometrika instigo aŭ ĉifrita ujo, prezentas posedpruvon plus ion alian. Tiu, kiu funkcias senĉifre kaj malŝlosiĝas per la operaciuma seanco, prezentas nur la dosieron. La sama aplikaĵo povas proponi ambaŭ aranĝojn laŭ tio, kiel la registriĝo estis farita, do la deploja decido kuŝas en tiu paŝo, ne sur la merkatika paĝo de la aplikaĵo.
Decidu, kion la kodo fakte pruvas
La lingvo de la normoj estas nekutime klara ĉi tie, kaj indas rekta legado. La gvidilo de NIST pri aŭtentikiloj listigas programajn OTP-generilojn kiel aŭtentikilojn, distingas unufaktoran OTP de plurfaktora OTP kun aktiviga faktoro, kaj asertas, ke OTP-aŭtentikigo ne rezistas fiŝadon. Ĉiu el tiuj tri frazoj ŝanĝas, kion vi povas aserti pri la instigo.
Ne rezisti fiŝadon estas la plej akra rando. Kodo tajpita en kampon povas esti tajpita en alies kampon, en reala tempo, de persono, kiun oni persvadis fari tion. La fenestro estas mallonga, kio malpliigas la nombron de utilaj provoj sed ne fermas la teknikon. Se via postulo inkluzivas reziston al tio, OTP estas la malĝusta primitivo, sendepende de kie la generilo funkcias.
Unufaktora kontraŭ plurfaktora estas la dua distingo. Kodo, kiu aperas sen aktiviga paŝo, pruvas posedon de dosiero kaj nenion alian, kaj la dosiero estas tiel forta, kiel la konto, kiu povas ĝin legi. Aldonu aktivigan faktoron kaj la aserto pliboniĝas, kvankam ĝi ankoraŭ priskribas la pruvon prezentitan ĉe ensaluto, ne la izolitecon de la maŝino, kiu ĝin produktas.
Vidu, kion kompromitita tekkomputilo povas atingi
Atakanto kun koda plenumo sur la laborstacio ne limiĝas al legado de la kampo, en kiun vi tajpas. La seanco starigita post sukcesa ensaluto kutime estas ĵetono aŭ kuketo, kaj ĵetonon eblas uzi de alia maŝino tute sen kodo. Se tio estas la kapablo, kontraŭ kiu vi defendas, aldono de dua instigo ĉe ensaluto ŝanĝas la nombron de paŝoj en la atako, ne la rezulton.
| Arrangement | What it adds at login | What it leaves inside the laptop boundary |
|---|---|---|
| Password plus TOTP app on the same machine | A possession proof the password alone does not supply | The seed, the unlock step and the authenticated session |
| TOTP app on a separate phone | Seed storage outside the workstation | Session cookies, the typed password and any prompt that can be proxied |
| Hardware key with a signed challenge | A per-login signature bound to the origin | Whatever the browser and the workstation are already trusted to do |
Legu la trian kolumnon kiel la honestan. Ĉiu aranĝo supre lasas ion ene de la fida limo de la laborstacio, ĉar tie la seanco estas uzata. Tio, kio ŝanĝiĝas, estas ĉu la longdaŭra sekreto vojaĝas kun tiu limo aŭ restas ekstere, kaj ĉu la pruvo estas ligita al specifa origino, por ke imita paĝo ne povu ĝin plusendi.
Du pli malgrandaj detaloj apartenas al la sama bildo. Kodo restas valida dum sia akcepta fenestro, ofte tridek sekundoj plus toleremo al horloĝa devio, do kaptita valoro povas esti reludita ene de tiu fenestro, se la kontrolanto ne rifuzas reuzon. Kaj instalado de nova generilo ne finas seancojn, kiuj jam estis aŭtentikigitaj, do malnova seanco postvivas la ŝanĝon de legitimilo, kiu devus enhavti la incidenton.
Movu la generilon nur tien, kie apartigo helpas
Meti la kodgenerilon sur telefonon estas reala plibonigo por unu specifa paneo: ŝtelita tekkomputilo ne plu portas ambaŭ pruvojn. Ĝi faras nenion kontraŭ seanca kaperado sur la tekkomputilo, nenion kontraŭ uzanto, kiu tajpas kodon en fiŝan paĝon, kaj nenion kontraŭ la rekuperaj kodoj, kiuj estis unufoje printitaj kaj fotitaj en noto-aplikaĵon.
Do skribu la postulon antaŭ ol elekti la ilon. Se la celo estas plia pruvo kontraŭ likinta pasvorto, diru tion malkaŝe, kaj la aplikaĵo sur la sama aparato jam liveras ĝin. Se la celo estas rezistemo al kompromito de la VPN-laborstacio, nomu tiun atakkapablon kaj elektu aranĝon taksitan por ĝi, kun la fiŝa postulo esprimita aparte anstataŭ supozita.
Poste traktu la operacian duonon, kiu decidas, ĉu io el tio postvivas kontakton kun incidento. Perdo de aparato bezonas dokumentitan anstataŭan vojon, rotacio de legitimiloj bezonas revokon de aktivaj seancoj, kaj la registriĝa materialo bezonas la saman protekton kiel la semo, ĉar neprotektita registriĝa kopio donas al atakanto la samajn estontajn kodojn per pli mallonga vojo. Listigi tiujn kvar erojn estas pli utile ol disputi, ĉu ĵetonoj sur la sama aparato estas bonaj aŭ senvaloraj.