Да ли је TOTP на истом лаптопу заиста други фактор?
Генератор кодова на VPN лаптопу је фактор поседовања који стоји унутар исте границе компромитовања. Прво пратите семе и сесију.
Пријавите се у VPN клијент који прво тражи лозинку, а затим шестоцифрени код, и два захтева изгледају као две независне баријере. Гледано по типу фактора, они то и јесу: лозинка је нешто што знате, код је нешто што поседујете. Гледано по ономе што открива један компромитовани лаптоп, они могу да се сруше у једну границу, јер оно што поседујете је датотека на машини у коју куцате. Разлика између та два бројања је тема овог прегледа.
Пратите једно пријављивање од поља за лозинку до поља за код
Гледајте редослед, не ознаке. Клијент шаље лозинку, сервер одговара да је потребан други доказ, и клијент отвара поље за шест или осам цифара. Иза тог поља стоји генераторска апликација која чува заједничку тајну и сат. Она израчунава вредност из тајне и тренутног временског корака, а сервер поново израчунава исту вредност из своје копије тајне.
Обе стране чувају исти кључни материјал. Та симетрија је део који људи пропуштају када код описују као тајну: добављач може да генерише и ваше кодове, зато је семе вредније од било ког појединачног излаза. Код који процури је једнократна вредност; семе које га је створило је трајни податак за пријаву који наставља да производи важеће вредности док се не замени.
Активирање је друга половина тока. Генератор који се откључава шифром уређаја, биометријским захтевом или шифрованим контејнером приказује доказ поседовања плус још нешто. Онај који ради без шифровања и откључава се сесијом оперативног система приказује само датотеку. Иста апликација може да понуди оба уређења зависно од тога како је регистрација извршена, па је одлука о распоређивању у том кораку, не на маркетинг страници апликације.
Одлучите шта код заиста доказује
Језик стандарда је овде необично јасан и вреди га читати директно. Упутство NIST о аутентификаторима наводи софтверске OTP генераторе као аутентификаторе, разликује једнофакторски OTP од вишефакторског OTP са фактором активирања, и наводи да OTP аутентификација није отпорна на фишинг. Свака од те три одредбе мења шта можете да тврдите о захтеву.
Неотпорност на фишинг је најоштрија ивица. Код унет у поље може се унети у туђе поље, у реалном времену, од стране особе која је на то наговорена. Прозор је кратак, што смањује број корисних покушаја али не затвара технику. Ако ваш захтев укључује отпор на то, OTP је погрешан примитив, без обзира где генератор ради.
Једнофакторски наспрам вишефакторског је друго разликовање. Код који се појави без корака активирања доказује поседовање датотеке и ништа друго, а датотека је само онолико јака колико је јак налог који може да је чита. Додајте фактор активирања и тврдња се побољшава, иако још увек описује доказ приказан при пријави, не изолацију машине која га ствара.
Погледајте докле може да стигне компромитовани лаптоп
Нападач са извршавањем кода на радној станици није ограничен на читање поља у које куцате. Сесија успостављена после успешне пријаве обично је токен или колачић, а токен може да се користи са друге машине потпуно без кода. Ако је то способност од које се браните, додавање другог захтева при пријави мења број корака у нападу, не исход.
| 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 |
Читајте трећу колону као искрену. Свако уређење горе оставља нешто унутар границе поверења радне станице, јер се сесија тамо користи. Мења се то да ли дугорочна тајна путује са том границом или остаје изван ње, и да ли је доказ везан за одређено порекло тако да га слична страница не може да проследи.
Два мања детаља припадају истој слици. Код остаје важећи током свог прозора прихватања, често тридесет секунди плус толеранција на одступање сата, па ухваћена вредност може да се репродукује у том прозору, осим ако верификатор не одбије поновну употребу. И инсталирање новог генератора не завршава сесије које су већ аутентификоване, па застарела сесија надживљава промену података за пријаву која је требало да задржи инцидент.
Преместите генератор само тамо где раздвајање помаже
Стављање генератора кодова на телефон је стварно побољшање за један конкретан квар: украдени лаптоп више не носи оба доказа. Али не чини ништа против отмице сесије на лаптопу, ништа за корисника који уноси код на фишинг страници, и ништа за кодове за опоравак који су једном одштампани и фотографисани у апликацију за белешке.
Зато напишите захтев пре него што изаберете алат. Ако је циљ додатни доказ против истечене лозинке, реците то отворено, и апликација на истом уређају то већ пружа. Ако је циљ отпорност на компромитовање VPN радне станице, именујте ту нападачеву способност и изаберите уређење оцењено за њу, а захтев за фишинг наведите одвојено уместо да га претпостављате.
Затим се позабавите оперативном половином, која одлучује да ли било шта од тога преживљава сусрет са инцидентом. Губитак уређаја захтева документован пут замене, ротација података за пријаву захтева опозив активних сесија, а материјал за регистрацију захтева исту заштиту као семе, јер незаштићена копија регистрације даје нападачу исте будуће кодове краћим путем. Набрајање те четири ставке је корисније од расправе да ли су токени на истом уређају добри или безвредни.