Pole označené jako číslo účtu není automaticky veřejný odkaz a označení není test. Testem je, co držení umožňuje: pokud znalost čísla někoho přihlásí, stáhne profil připojení nebo autorizuje zařízení, je toto číslo pověření s životním cyklem. Provádím níže uvedených pět kontrol vždy, když služba vydá číselnou identitu a označí ji za neškodnou. Každá vytvoří řádek v krátkém záznamu a záznam je výstupem, nikoli rozsudkem o produktu.

Zmapujte, co držení skutečně uděluje

Zapište každou akci, kterou číslo odemyká, zvlášť. Přihlášení do portálu, stažení konfiguračního souboru, autorizace nového zařízení a poskytnutí přijatého tunelového přihlášení jsou různá oprávnění a služba může jedno implementovat bez ostatních. Portál, který přijímá číslo jako jediné pole, nic neříká o tom, jak tunel autentizuje svého peer později ani jak se odvozují provozní klíče.

Obecný model lze snadno vyslovit: bearer pověření je takové, které držitel může použít bez prokázání držení samostatného kryptografického klíče, což je rozdíl, který RFC 6750 vytyčuje pro tokeny. Je to srovnání, nikoli tvrzení, že služba založená na čísle implementuje OAuth. Pokud držitel nepotřebuje nic dalšího, považujte číslo za bearer tajemství a zbytek návrhu klasifikujte odpovídajícím způsobem.

Chraňte ho jako tajemství, ne jako odkaz

Uložení vyplývá z klasifikace. Hodnota, která přihlašuje, patří do správce hesel, ne do snímku obrazovky, historie schránky, zprávy v chatu nebo poznámky v prohlížeči. Snímky obrazovky jsou obvyklý únik: číslo je krátké a vypadá neškodně, takže skončí ve vlákně podpory, které přežije zařízení, ze kterého pochází.

Phishing je druhý režim selhání a nezajímá ho, jak náhodné číslo je. Podvodník, který chce hodnotu, vás požádá, abyste ji vložili do formuláře, a pověření, které nikdy nevyprší a nemá druhý faktor, stojí za námahu. K přihlašovací cestě se dostávejte přes záložku nebo známou adresu, ne přes odkaz ve zprávě, která také žádá číslo.

Považujte obnovovací materiál za součást tajemství. Pokud provozovatel vydal také obnovovací kód, PIN nebo e-mailovou adresu, která může účet obnovit, jsou to samostatná pověření se stejným požadavkem na ochranu. Jeden nechráněný kanál pro obnovení promění každou další kontrolu v dekoraci.

Kontrolujte odolnost proti hádání a omezení rychlosti společně

Délka má význam jen vedle metody generování. Dlouhé číslo z předvídatelné posloupnosti je slabší než krátká hodnota z kryptografického generátoru a působivý počet číslic neprokazuje nepředvídatelnost. Ptejte se, jak je hodnota generována, než začnete uvažovat o tom, jak těžké je ji uhodnout.

Samotná odolnost proti hádání také nepřežije neomezenou rychlost pokusů. Kontroly, na kterých záleží, jsou ty, které provozovatel implementuje: počítadla neúspěšných pokusů, uzamčení, omezení na zdroj a to, zda lze špatné číslo odlišit od neexistujícího. Pokud to služba podporuje, jeden neúspěšný pokus ukáže, jak chyba vypadá a zda se objeví počítadlo opakování:

# one attempt, then read the response and any counter or delay
# do not script repeated guesses against a live account
curl -i -X POST https://portal.example.invalid/login -d "account=000000000000"

Zaznamenejte, co odpověď prozrazuje. Odlišná chyba pro neznámý účet je enumerační orákulum, i když je číslo neuhodnutelné, a toto zjištění patří do záznamu, ať už je můžete opravit na straně klienta, nebo ne.

Naplánujte rotaci a odvolání dříve, než je budete potřebovat

Najděte podporovaný postup pro ztracené nebo prozrazené číslo a zapište ho, dokud vše funguje. Lze pověření účtu vůbec vyměnit? Zneplatní výměna již zapsaná zařízení, aktivní relace nebo staženou konfiguraci? Jaký obnovovací materiál postup vyžaduje? Služba bez závislosti na e-mailu může přenést více odpovědnosti za obnovu na uživatele, což postup činí důležitějším, nikoli méně.

Oddělte výměnu účtu od odvolání pověření. Pokud číslo autorizuje stažení klíče, certifikátu nebo profilu, výměna čísla může ponechat stažený materiál platný a odvolání staženého materiálu může být jiná operace s jiným vlastníkem. Nepředpokládejte, že jedno změněné pole ukončí každé připojení; zkontrolujte skutečný model provozovatele a poznamenejte, kde jste to ověřili.

Zdokumentujte rozhodnutí a později ho znovu zkontrolujte

Veďte jednostránkový záznam pro každou službu: jaká oprávnění číslo uděluje, kde je uloženo, kdo ho může obnovit, jaké důkazy o použití existují a co byste udělali v první hodině po prozrazení. Právě tento záznam mění spor o terminologii v rozhodnutí, které může někdo auditovat.

Tvrzení o soukromí potřebují vlastní rozsah. Náhodně vygenerované číslo může stále být stabilním identifikátorem, který spojuje události účtu v čase; nepředvídatelnost není nespojitelnost a ani jedna vlastnost nic neříká o uchovávaných síťových metadatech. Porovnávejte celé návrhy, místo abyste počítali pole na přihlašovací obrazovce.

Než to uložíte:

  • Jsou uvedena všechna oprávnění, která číslo uděluje, včetně stahování a autorizace zařízení.
  • Kanály ukládání a obnovy jsou chráněny stejným standardem jako samotné číslo.
  • Metoda generování a rychlostní limity jsou známy, nikoli odvozeny z délky.
  • Existuje postup výměny a postup odvolání a víte, který ruší který.
  • Záznam uvádí, kdo může hodnotu obnovit a jaké důkazy po použití zůstávají.

Související články