Megbotorkáltam, és rájöttem erre az esszére Bruce Schneier, aki azt állította, hogy a div id = “91a99f1932”>
XKCD jelszó séma gyakorlatilag meghalt.
A modern jelszó-feltörők szótárukból különböző szavakat ötvöznek : […]
Ezért a gyakran emlegetett XKCD séma a jelszavak előállításához – szúrja össze az egyes szavakat, például ” correcthorsebatterystaple ” – ez már nem jó tanács. A jelszófeltöltők folytatják ezt a trükköt.
A támadó minden olyan személyes információt betáplál a jelszóalkotókba, amelyhez hozzáférhet. Egy jó jelszó-feltörő teszteli a címjegyzékből származó neveket és címeket, az értelmes dátumokat és minden egyéb személyes adatot. […] ha a program valaha tárolta a memóriában, ez a folyamat megragadja.
Úgy tűnik, hogy állítása szerint ez azért van, mert ismert hogy az emberek úgy szerkeszthetik a jelszavukat, hogy alkalmassá váljon a támadásra, de úgy tűnik, hogy az erő pusztán a kitevők erejében rejlik. Feltételezem, hogy arra utal, hogy az emberek nem igazán véletlenszerűen választják a szavakat, ami talán nem “Nem teljesen elgondolkodtató, mivel néhányszor átgördültem, hogy megszerezzek valamit, ami nem minden mellékmondat és melléknév. Mindazonáltal feltételezem, hogy az entrópia 2-10-es tényezővel történő csökkentése nem igazán jelentős (ha a szavak listája megduplázódik 4000-re, nem is olyan nehéz, a veszteség meghaladja a megtérülést).
A másik tanács: “, ha a program valaha is tárolta a memóriában ” kissé zavarba ejtő, bár … nem minden jelszó tárolódik a memóriában egyszerre? Ez úgy tűnik kissé túllépve; mire utal valójában hogy?
Megjegyzések
Válasz
A Szent Háború
Úgy gondolom, hogy úgy fogja találni, hogy a jelszavak előállításának helyes módja szent háborút indíthat el, ahol az egyes csoportok úgy gondolják, hogy a másik a nagyon egyszerű matematikai hibák vagy a lényeg elmulasztása. Ha 10 számítógépbiztonsági szakembert fogad be egy szobába, és megkérdezi tőlük, hogyan kell jó jelszavakkal előállni, akkor 11 különböző választ fog kapni.
A félreértés
A sok ok egyike nincs következetes tanács a jelszavakkal kapcsolatban, mindez a fenyegetésmodellezés kérdéshez kapcsolódik. Mi ellen akarsz pontosan védekezni?
Például: egy olyan támadó ellen próbálsz védekezni, aki kifejezetten téged céloz meg, és ismeri a rendszeredet a jelszavak előállításához? Vagy csak egy vagy a felhasználók millióiból valamilyen kiszivárgott adatbázisban? Védekezik a GPU alapú jelszó feltörés ellen, vagy csak egy gyenge webszerver ellen? Rosszindulatú programmal [1] fertőzött gazdagépen tartózkodik?
Úgy gondolom, feltételeznie kell, hogy a támadó ismeri a jelszavak előállításának pontos módszerét, és csak téged céloz meg. [2] Az xkcd képregény mindkét példában feltételezi, hogy a generáció minden részlete ismert.
A matematika
Az xkcd képregény matematikája helyes, és nem fog változni .
A jelszavakhoz be kell írnom, és ne felejtsem el, hogy egy python szkriptet használok, amely valóban véletlenszerű xkcd stílusú jelszavakat generál. szótár 2 ^ 11 (2048) általános, könnyen beírható, angol szóból. A teljes forráskódot és a szavak listájának másolatát átadhatom egy támadónak, még mindig 2 ^ 44 lehetséges jelszó lesz.
Ahogy a képregény mondja:
1000 találgatás / másodperc Valószínű támadás egy gyenge távoli webszolgáltatás ellen. Igen, az ellopott hash feltörése gyorsabb , de az átlagos felhasználónak nem ez kell aggódnia.
Ez szép egyensúlyt teremt könnyen megjegyezhető és nehezen feltörhetők között.
Mi lenne, ha több energiát próbálnánk ki ?
Biztos, hogy a 2 ^ 44 rendben van, de a GPU feltörése gyors, és csak gyorsabb lesz. A Hashcat néhány nap alatt, nem évek alatt feltörhet egy ekkora gyenge hash-t [3]. Emellett több száz jelszóra kell emlékeznem. Néhány x után még az xkcd stílus is megnehezül.
Itt lépnek be a jelszókezelők, szeretem a KeePass fájlt, de sok más alapvetően ugyanaz. Ezután létrehozhat csak egy hosszabb xkcd jelszó, amelyet megjegyezhet (mondjon 10 szót). Ezután minden fiókhoz létrehoz egy egyedi, 128 bites, valóban véletlenszerű jelszót (a hexa vagy az alap 64 jó). A 128 bites elég erős lesz egy hosszú ideig. Ha paranojussá akar válni, akkor nagyobb lesz, nem kell többletet létrehozni 256 bites hex jelszavakkal.
[1] Ez az a pont, ahol Ha bejön egy kompromittált gazdagép, akkor elveszett. Nem számít, hogy beírja-e, vagy másoláshoz és beillesztéshez olyan programot használ, mint a KeePass, ha a támadó kulcs-naplózni / olvasni tud memóriát.
[2] A gyengébb (de valószínűbb) helyett feltételezés, hogy a támadó éppen megrontotta a ” Top Passw0rdz 4realz 111 nevű szótárat! “.
[3] Biztosan mindannyian használjunk PBKDF2-et stb., De sok webhely még mindig az SHA1-en van. (És ezek a jók)
Hozzászólások
- @ Dick99999 modern grafikus processzorok 6 GB memóriával rendelkezhetnek egyetlen kártyán (bár 2 bővítőhelyre lenne szükség), és könnyen el tudnak tárolni néhány ezer szóból álló szótárat.
- @NateKerkhofs Ez félelmetes és elképesztő Az első (programozható) gépem 1mHz és 64kb RAM-mal rendelkezett, és 6 GB-os videomemóriáról beszélt …
- ” 128 bites, valóban véletlenszerű jelszó … ” Valóban véletlenszerű? Nem ‘ ez még mindig álvéletlen?
- Ennek kell lennie elfogadta a választ, ha nem más okból, mint a Szent Háború részből áll.
- @Kilincs Ha az értelmes kombinációkat választja, az entrópia nagy része eltűnik. ‘ nem próbáltam megbecsülni, hány mondatot választhatna ki, de ez valószínűleg közelebb áll egymilliárdhoz, mint egy 2 ^ 44-hez.
Válasz
Schneier ezt írja:
Ezért a gyakran emlegetett XKCD séma a jelszavak előállításához – egyes szavak összefűzése, például a “correcthorsebatteratterapaple” – már nem jó tanács. A jelszófeltöltők folytatják ezt a trükköt.
de a kulcs ahhoz, hogy megértsük, mire is vágyik valójában, egy kicsit tovább áll az esszéjében:
Még mindig van egy séma, amely működik. Még 2008-ban leírtam a “Schneier sémát” “
úgy, hogy ez minden. Ole “Bruce azt akarja állítani, hogy az ő rendszere az Egyetlen, a legjobb, a győztes, a végső rendszer. Ezért le kell mondania a” versenytársakról “, tekintet nélkül arra, hogy ilyenek-e az állítások tudományosan megalapozottak, vagy sem.
Ebben az esetben mindig azt feltételeztük , hogy a jelszógenerálási módszer ismeretes a támadó számára. Ez az entrópiaszámítások teljes pontja. ; lásd az elemzést . Az, hogy a támadók ezen a trükkön vannak, semmit sem változtat nál (amikor a támadó ismeri a jelszó előállításának módszerét, az entrópia kiszámítása pontosan írja le a jelszó erősségét; amikor a támadó inkompetens és nem ismeri a jelszógenerálási módszert, a jelszó erőssége csak nagyobb, olyan mennyiséggel, amelyet számszerűsíteni szinte lehetetlen).
A “memóriában lévő jelszavakról” szóló tudósítás csak összefüggéstelenebb kócoskodás. A jelszavak szükség esetén valamikor a RAM-ba kerülnek, függetlenül attól, hogy beírja-e őket, vagy másolja-e beillesztésből egy jelszószéfből, vagy bármi hasonló.
Azt hiszem, hogy Bruce részeg volt.
Frissítés : Schneier-t kifejezetten arra kérték, hogy kommentálja a jelszavának elítélését a Reddit AMA-ban , amelyre 2016. augusztus 2-án került sor. kiváló alternatívája a véletlenszerű szókifejezéseknek. Schneier szerint a sémája “több entrópiát ad emlékezetes karakterenként, mint más módszerek”, ami igaz a szavakat alkotó karakterekhez képest. De ez akkor sem releváns, ha egy rendszer a szavak, nem pedig a karakterek memorizálására támaszkodik, és engedélyezhetsz annyi szót, hogy megfelelő “entrópiát” generálj a jelszó egészéhez.
Megjegyzések
- Igen, azt gondoltam, hogy a megjegyzései furcsa eltérést mutatnak tipikus jó tanácsaitól.Az ajánlott sémája valószínűleg nem ‘ nem rossz, de még ‘ t nem sok tényleges tesztnek vetették alá. A jelszó-megközelítést összehasonlításban meglehetősen könnyű tesztelni, és úgy gondolja, hogy ‘ úgy gondolja, hogy ez vonzó lesz a benne lévő kriptográfus számára. Lehet, hogy csak átlátta a természetes nyelvi jelszavak feltörésével kapcsolatos híreket, és nem látta, hogy ‘ különbséget tennének ezek és a véletlenszerű jelszavak között.
- Az az érvelésed, hogy neki kell a verseny lebecsülése kudarcot vall, mivel a sémájának leírása után azonnal azt mondja, hogy ” Még jobb, ha véletlenszerű, nem megjegyezhető alfanumerikus jelszavakat használunk (szimbólumokkal, ha a webhely megengedi), és egy jelszókezelőt, például a Jelszóbiztonságot, hogy létrehozhassa és tárolhassa őket “.
- @wfaulk A jelszó biztonságos Bruce Schneier ‘ alkotása, így a versennyel kapcsolatos érvelése továbbra is áll. A sikertelen állításod sikertelen 😉
- @AviD: Ezt teljesen nem tudtam. 😳
- Amit ‘ hiányzik, és nyilvánvalóan Schneier is, az az, hogy nincs ” trükk ” a ” oldalra “. A Diceware biztonsága már feltételezi, hogy a támadó ismeri a sémát , valójában azt feltételezi, hogy maga a szótár is ismert. ‘ Nem számít, hogy a támadónak megvan-e a pontos szótár és a szavak száma: egyszerűen túl sok kombináció van ahhoz, hogy bármilyen sikeres támadást végezzen, mielőtt a nap felrobban.
Válasz
[Közzététel: Az AgileBits-nél dolgozom, az 1Password készítőinél]
Az egyik oka annak, hogy miért támogattam egy XKCD-szerű sémát (mielőtt még így hívták volna) a A jobb mesterjelszavak felé még 2011-ben éppen azért van, mert erőssége nem ne támaszkodjon arra, hogy a támadó tudja, milyen sémát használt. Ha idézhetem magam
A Diceware nagyszerű tulajdonsága, hogy pontosan tudjuk, mennyire biztonságos, még ha feltételezzük is, hogy a támadó ismeri a használt rendszert. A biztonság a kocka dobásának valódi véletlenszerűségéből adódik. Négy vagy öt szó használatának elegendőnek kell lennie az elkövetkező néhány év hihető támadásai ellen a jelszófeltörők megfigyelt sebessége miatt [az 1Password Master Password ellen]
Amit az XKCD képregény nem kommunikál hatékonyan, az az, hogy a szavak kiválasztásának (egységesen) véletlenszerűnek kell lennie . Ha arra kéri az embereket, hogy véletlenszerűen válasszanak szavakat, akkor súlyos elfogultságot kap a konkrét főnevek. Az ilyen elfogultságokat ki lehet használni és ki is fogjuk használni.
Mennyi erőt akarsz
Egy tökéletes világban szeretnénk megerősíteni a jelszavunkat, hogy olyan erős legyen, mint a kulcsok, amelyekkel védünk azt. Mondjon 128 bitet. De ezeknek a technikáknak az ellenére az emberek nem fogják ezt elérni. Nézzük tehát reálisan a támadásokat és azt, hogy mit tehetünk a mi apró agyunknak.
Az eredeti 7776 bejegyzésű Diceware szójegyzékkel, hozzávetőlegesen 12,9 bitet kap szavanként. Tehát ha legalább 64 bitet szeretne a jelszavához, akkor öt szó fogja megtenni.
A jelszavak kitalálása lassabb, mint a kulcsok kitalálása
Ebben a szakaszban nagyon durva hátra érkezek a boríték becslése szerint állandó dollárösszeg esetén 2 ^ 13-szor lassabb a jelszó tesztelése, mint az AES kulcs tesztelése.
Ne feledje, hogy a jelszó tesztelése sokkal lassabb, mint egy kulcs. Megfelelő típusú jelszó-elosztási sémák használata esetén a legtöbb támadót másodpercenként 100 000 találgatás alatt lehet tartani. Tehát bár soha nem akarunk 50 bites kulcsokat használni, az 50 bites jelszavak használatának mégis van értelme.
Ha nem korlátozódunk a kocka dobására, mint Arnold Reinholdban “s eredeti Diceware séma 1995-től, akkor használhatunk hosszabb szavak listáját. Az Erős jelszógenerátor az 1Password for Windows rendszerben 17679 angol szó felsorolását tartalmazza 4 és 8 betű között (a tabu szavaktól és az aposztrófot vagy kötőjelet tartalmazó szavaktól megtisztítva). Ez körülbelül 14 bitet ad szavanként. Tehát ebből négy 56 bitet, öt pedig 70.
Ismételten oda kell figyelni a repedés sebességére. A Deep Crack még 1997-ben 92 milliárd DES tesztet tudott futtatni másodpercenként. Ha feltételezzük, hogy egy csúcskategóriás speciális számítógép másodpercenként egymillió találgatást képes végrehajtani egy meglehetősen jól kiváltott jelszóval, másodpercenként egymillió találgatást tehet meg, akkor a jelszavakat manapság körülbelül 16 bittel nehezebb feltörni, mint a DES kulcsokat 1997-ben. p> Tehát nézzük meg ezt a Stack Exchange becslést egy kétmagos 3,8 GHz-es processzor esetében: 670 millió kulcs másodpercenként.Ha 5000 dollár hardvert feltételeznénk, akkor másodpercenként könnyen meghaladhatjuk a 10 milliárd kulcsot. Tehát hasonló hardverköltség mellett a kulcs feltörése még mindig több mint 2 ^ 13-szor gyorsabb, mint a jelszó feltörése.
Felülvizsgált jelszóerősségi célok
Becslésem szerint 2 ^ 13 A jól kiváltott jelszó tesztelése sokszor drágább, mint az AES-kulcs tesztelése. Megfontolandó, hogy egy ésszerűen kivonatolt jelszó 13 bit erősebb, mint a tényleges entrópiája a repedések szempontjából. Ha 90 bit “hatékony erőt” akarunk elérni, akkor 77 bit jelszó erősséggel kell ezt megtenni. Ezt egy hatszavas Diceware jelszóval (77,5 bit) az eredeti listából és 84,6 bitet, hat szóval az 17679 szó listájából lehet elérni.
Nem várom el, hogy a legtöbb ember olyan jelszavakat használjon, amelyek Azt hiszem, hogy az emberek 4 vagy 5 szó hosszúságú dolgokat fognak használni. De ha valóban aggódsz, hogy az NSA a jelszavad után megy, akkor hat szónak elegendőnek kell lennie, ha feltételezzük, hogy tisztességes jelszó-elosztási sémát használsz.
Csak nagyon durva becslések
Nem töltöttem sok időt a költségek és a referenciaértékek kutatásával. Becsléseim szerint sok mindenről van szó. Megpróbáltam konzervatív lenni (pesszimista az általam támogatott rendszerrel kapcsolatban). Homályosan fogalmaztam a “jól hashelt jelszavakat” is. Ismét nagyon konzervatív vagyok az 1Password jelszó-összekeverésével kapcsolatban. (Új adatformátumunkhoz a támadókat másodpercenként 20 000 találgatás alatt tartották, régebbi adatformátumunkban pedig 300 000 találgatást értek el másodpercenként -GPU gépek. Az itteni becsléseim szerint másodpercenként 1 millió találgatást választottam egy “ésszerűen hash jelszóért”.)
Még néhány történelmi megjegyzés
Összességében Az “XKCD-szerű” jelszavak ötlete legalább annyira visszanyúlik, mint az 1980-as évek eleji S / Key egyszeri jelszavak . Ezek 2048-as listát használtak négy betűs szóval. Hatszavas S / Key jelszóval 66 bitet kaptál. Nem tudom, hogy ez az ötlet, hogy véletlenszerűen kiválasztott szavakat használj a listából egy jelszóhoz, megelőzte-e az S / Key kulcsot.
1995-ben , Arnold Reinhold a következőt javasolta: Diceware . Nem tudom, hogy tudott-e akkoriban az S / Key-ről. A Diceware-t a PGP-hez szükséges kifejezések kifejlesztésével összefüggésben javasolták. Ez még azelőtt történt, hogy a legtöbb számítógép kriptográfiailag megfelelő véletlenszám-generátorral rendelkezett volna. Tehát valójában dobókockákkal jár. (Bár bízom az általam használt gépek CSPRNG-jeiben, mégis élvezem az “új jelszó feltöltését”).
2011 júniusában felélesztettem az érdeklődést a Diceware iránt a A jobb mesterjelszavak felé néhány további módosítással. Ez 15 perc hírnevemet eredményezte. Miután megjelent az XKCD képregény, készítettem egy geek kiadást , amely végigjárta a matematika egy részét.
2011 júliusában Randall Monroe felvette a Diceware-szerű sémákat, és közzétette a ma már híres képregény . Mivel nem én vagyok az ötlet kitalálója, egyáltalán nem bánom, ha a képregény feldobja. Valóban, ahogy mondtam követő cikkemben
Ami majdnem elvitt 2000 szó, amelyet nem szakkifejezéssel kell mondani, Randall Monroe egy képregényben tudott összefoglalni. Ez csak a matematika erejét mutatja …
De egy dolog aggódik a képregény értelmezésében. Számomra és az emberek számára, akik már megértették a sémát, világos, hogy a szavakat megbízhatóan egységes véletlenszerű folyamaton keresztül kell megválasztani. A „véletlenszerű” szavak kiszúrása a fejéből nem egy megbízhatóan egységes folyamat .
Megjegyzések
- Nagyszerű, hogy történelmi szempontból említi a Diceware programot, és ugyanakkor elismeri az XKCD jelszavakkal kapcsolatos nagyszerű marketing munkáját. A módosított sémáról meg van magyarázva bárhol, miért nem szerepelnek 3 vagy 2 betűs szavak ezekben a szavak listájában? lásd: blog.agilebits.com/2013/04/16/… . Azért, mert a ‘ off ‘ és ‘ sor 1 szót offline is támadhat? Lásd a Raestloz bejegyzéséhez fűzött megjegyzéseimet. Az eredeti Diceware lista sok 1, 2 és 3 betűs szót tartalmaz.
- Kiváló kérdés! Abban az időben (esetleg hibásan) gondolkodtam, hogy azt is szeretném, ha a jelszavak minimális hosszúságúak lennének. Biztosítani akartam, hogy ha valaki háromszavas jelszót használ, akkor az meghaladja a minimum 12 karakter hosszúságot. Megjegyzem, hogy az S / Key 1, 2 és 3 betűs szavakat is megenged.
- Gyorsan ellenőriztem a SimThrow jelszógenerátor és tesztelő által használt szavak listáját.Az eredeti Diceware-listán legalább 1400 ilyen ütközés van, például ‘ any ‘ ‘ hogyan ‘ és ‘ amúgy ‘. Ez egy 4 szóból álló mondatot 3 szóra degradálhat, ha nem használunk elválasztót. ‘ nagy ütközési számot jelent, mert a lista tartalmazza az összes betűt és 2 betűkombinációt. Úgy tűnik tehát, hogy jól választotta, ha nem tartalmaz 2 betűs szót. A Diceware azt javasolja, hogy a mondat minimális hossza 17 legyen. A generátorom a szó- és a karakteralapú helyreállítási időket egyaránt becsüli, hogy megbirkózzon olyan webhelyekkel, amelyek csak rövid jelszavakat (20) engedélyeznek.
- Ellenőriztem a következő szótárakat is. S / Key : > 93 ütközés, kibővített dicelists USA : > 190 és holland listám: > 750. Ennek kezelésére egy elválasztó karakter beillesztését javasoljuk. egy kifejezés szavai között.
- Vigyázz, a dobókocka nem teljesen véletlenszerű. forbes.com/sites/davidewalt/2012/09/06/… és insidescience.org/blog/2012/09/12/…
Válasz
Az XKCD jelszó séma olyan jó, mint valaha volt. A biztonság nem abból ered, hogy ismeretlen, de jó módszer emlékezetes jelszavak előállítására egy nagy keresési helyből. Ha azonban a használni kívánt szavakat választja, nem pedig véletlenszerűen, akkor ez az előny elvész – az emberek “Nem jó véletlenszerűség.
A memóriával kapcsolatos információk kevéssé vannak megfogalmazva, de ez aggodalomra ad okot: ha jelszó-ellopó rosszindulatú programok kerülnek a számítógépére, akkor” söpörjön le mindent a RAM-ból és a merevlemezről a szöveges formában, hogy felhasználhassa a fiókok irányított támadásában.
Megjegyzések
- +1 nem adok ‘ nem gondolja, hogy az XKCD technika halott – ez ‘ nem ‘ egy trükk ‘ hogy a crackerek ‘ rajta vannak ‘. Tudja, hogy a technika kifordítva van, de ez mégsem ‘ nem teszi még jobban feltörhetővé, ha ‘ elég véletlenszerű.
- @PiTheNumber, ha ‘ nem használ elég szót vagy egy apró szótárt, akkor ‘ egyáltalán nem alkalmazza az xkcd technikát; de nem, még az xkcd képregényben is ‘ egyértelműen egyértelmű, hogy NEM elveszíti előnyét, ha mindenkinek elmondja ” hé, I ‘ m helyes korrekciós akkumulátor-stílus jelszóval ” – az ellenőrzések / entrópia mennyisége a bit akkor is magasabb, mint a legtöbb normál jelszó, még akkor is, ha a módszer ismert.
- Feltéve, hogy nem ‘ nem használja az XKCD-t is ‘ s véletlenszám-generátor (nyertem ‘ t linket, mindenki tudja).
- @PiTheNumber a ‘ 11 betűs, véletlenszerű jelszó ‘ nem releváns, mivel nem ésszerű alternatíva a jelszavakkal szemben. A jelszavak alternatívák az emlékezetes jelszavakhoz, és ezek pontosan olyan gyengék, mint az xkcd leírja. Persze, ha egy jelszókezelőben tárolt jelszót használ, akkor teljesen véletlenszerű jelszavak illenek, de ebben az esetben ‘ lényegében nem ‘ a jelszavad ‘ mint valamiben, amelyet te használna vagy látna, hanem inkább egy ‘ automatikusan generált véletlenszerű kulcsot token ‘ hasonló az ssh kulcsokhoz.
- @PiTheNumber A szavakat nem az ember választja, hanem véletlenszerűen. A szótár, amelyből a szavakat választják, maga az ember által választott, de ez más kérdés. Nincs „legvalószínűbb” – az xkcd képregény matematikája helyes.
Válasz
Ahogy mások A Bruce Schneier által leírt támadás akkor hatékony, ha a felhasználó több szót is kiválaszt, nem pedig eszközt használ. Schneier általában egy nagyközönség számára ír, ami valószínűleg nem fogja fel a különbséget az önválasztott “véletlenszerű” szavak és a program által választott véletlenszerű szavak között.
Azt is hozzáteszem, hogy ha szkriptet vagy egy másik eszköz a szavak véletlenszerű kiválasztásához, az első szekvenciát kell használnia, amelyet ad . Ha úgy dönt, ” Nem szeretem azt, és addig futtatom újra, amíg meg nem tetszik, ez már nem véletlenszerű jelszó , hanem az ember által választott.
Még akkor is, ha szkriptet használ, és még ha nem is károsítja a véletlenszerűséget, ha több szekvenciából kiválasztja a kedvencét, akkor is fennáll annak a lehetősége, hogy egy támadó kihasználhatja a PRNG-t Ha a támadó megtudhatja, mikor hozta létre a jelszót, és milyen PRNG-t használt, és esetleg más információkat a PRNG-ről, például a hálózati forgalmat, amelyet a PRNG-jével egyidejűleg hoztak létre, ez csökkentheti a a véletlenszerű jelszavad.
Talán kissé ezoterikus, de ha a PRNG-d kihasználható, akkor a 2 ^ 44 ábra nem fog teljes mértékben megvalósulni. (És ha azt feltételezed, hogy “senki nem fogja megpróbálni kihasználni a PRNG-t”, miért érdekel az igazán biztonságos jelszó használata?)
Megjegyzések
- +1 Érdekes szög. A PRNG kihasználása nyilvánvaló a titkosítás összefüggésében kulcsok – ez ‘ érdekes, hogy itt gyakorlatilag utólagosnak tűnik. Azt hiszem, a tipikus jelszavak annyira rosszak hogy a PRNG-k ehhez képest biztonságban érzik magukat. Vélhetően ha egy támadó ellophat egy kivonatolt jelszavak listáját, akkor a pwdChangedTime vagy azzal egyenértékű dolog megtalálása triviális lenne? Egy másik ok a jelszó-elöregedés megszüntetésére?
- Gyors hátlap a borítékon. Ha a jelszót a generálása után egy percen belül frissíti, és a PRNG-ben az entrópia egyetlen forrása a rendszeridő, akkor lehet, hogy 2 ^ 35-ig csökkenti a dolgokat nanoszekundumos felbontás szempontjából. Ésszerűen hangzik?
- Tegyük fel, hogy elutasítok egy kifejezést, mert nem szeretem a szót ‘, és ezt 1000-szer csinálom. Aztán 1000 szóval csökkentettem a szótárt. Még mindig véletlenszerű a választás a csökkentett szótár közül? Ha mégis így van, akkor az így csökkentett 7776 szóból álló Diceware szótárból származó 4 szóból álló mondat még mindig (7776-1000) ^ 4 = 2.1E15 / 50.9 lehetőséget / entrópia biteket ad, a 3.7E15 / 51.7 lehetőségek / entrópia bitek teljes értékét. szótár. Nem tudom megítélni a véletlen generátor hatását. A www.random.org webhelyet használom.
- @ Dick99999 nem ‘ nem gondolom, hogy ‘ a felajánlott lehetőségek számáról, amelyeket kizár egy jelszó kiválasztásakor. ‘ arról szól, hogy mintázat milyen kifejezéseket zárna ki, ha kizárná, ha bemutatná. A támadó feltételezheti, hogy a felhasználó rövidebb szavakat, a QWERTY billentyűzeten könnyebben beírható szavakat, valamint a nagybetűket és írásjeleket nem tartalmazó szavakat részesíti előnyben. ez a stratégia nagymértékben szűkítheti a kifejezések feltárható terét. Alapvetően ‘ ugyanaz a kérdés, mint a kedvenc sportcsapatok, születésnapok és gyerekek ‘ nevek kitalálása.
- @wberry nem hiszem, hogy a matematika sikerül ezen. Tegyük fel, hogy elutasít 1000 jelszót, mielőtt megtalálna egyet. Ezután ‘ ésszerű becslés, hogy a lehetséges jelszóterületnek csak 1/1000 része tetszik. Tegyük fel, hogy egy támadó képes teljesen kitalálni, hogy a tér mely 1/1000-e a kedvenc – ez csökkenti a lehetőségek számát 2 ^ 44-ről 2 ^ 34-re, ami jelentős, de nem annyira, hogy egy extra szó ‘ t kiegyenlíti a veszteséget. Ráadásul, ha korlátozza az elutasításokat, még ez sem szükséges.
Válasz
Attól függ. Egy dolgot meg kell értenie, hogy ez nem bizonytalanság: a képregényben használt entrópiaértékek feltételezik, hogy a támadó már tudja, hogy ezt a módszert használja . Ha a támadó nem tudja, hogyan generálja újra a jelszót, akkor az entrópia tömegesen emelkedik.
Az XKCD módszer trükkje az, hogy ténylegesen véletlenszám-generátort és jó szavakat kell használnia: soha ne válassza ki a szavakat magad, még véletlenszerűen sem (idézőjelben, mert az emberek valójában nagyon rosszul választják ki véletlenszerűen a dolgokat, ezért nem szabad ezt megtenni). A Diceware rendelkezik eszközökkel, amelyek segítenek ezt megtenni, és a véletlenszerű elemeket még a hétköznapi kocka használatával is eltávolítja a számítógép hatóköréből.
Széles alapú támadással szemben – az a fajta dolog, amikor a támadó egy webhelyről kapott egy jelszó listát, és nem tud semmit arról, hogy kinek a jelszavai szerepelnek a listán – ez olyan erős, mint valaha volt. Ahogy mondod, ereje a kitevők (és egy jó szólista) erejéből származik.
Schneier támadása működhet, de csak teljesen más kontextusban. Támadása azt feltételezi, hogy kifejezetten téged céloz meg egy támadó, aki már nagyon sokat tud rólad .Ez elsőre nem tűnhet különösebben aggasztónak, mert a sztereotip elszánt támadó hírszerző a képernyő mögött, és a legtöbben nem kell annyira aggódnunk ezek miatt: csak annyian vannak, és mindegyik csak megengedheti magának, hogy ennyi emberrel törődjön. De valójában sokkal nagyobb probléma, mint amilyennek elsőre tűnhet, a kifinomult rosszindulatú programok megjelenésének köszönhetően. A rosszindulatú programok telepítése megengedheti magának, hogy törődjön veled, annak ellenére, hogy a támadó nem, és így továbbra is rendkívül elszánt támadóval áll szemben. Még az embernél is határozottabb lehet, bár sokkal kevésbé kreatív.
A rosszindulatú programok, amelyek információkat gyűjtenek rólad, nagyon fontosnak tartják a számodra fontosnak tűnő szavakat a szavak listájában. Ezt azért teszi, mert az emberek többsége maga választja ki a “véletlenszerű” szavakat, de ezzel valójában meglehetősen erősen elfogulnak a számukra legfontosabb szavak felé: még mindig véletlenszerűnek “érezheti magát”, de egyes szavak sokkal valószínűbbek jöjjön fel, mint mások. Ezért ezeknek a szavaknak a kiemelt fontossága gyakran viszonylag gyors találatokat eredményez, és ez a “trükk”, amiről Schneier beszél.
akkor is meghiúsíthatja Schneier támadását a valós véletlenszerűség használatával . A fogás az, hogy ehhez fegyelemre van szükség: minden döntés arról, hogy milyen szavakat használjon a jelszavában (eltekintve attól, hogy jó szót választunk) listát) teljesen ki kell venni a kezedből. Ebben segíthetnek neked olyan dolgok, mint a Diceware.
Megjegyzések
- @Gilles: Ennek az oka az entrópia lecsökken, ha a támadó tudja, hogy a módszer megváltoztatja a jelszó teljes szerkezetét. Ha nem ismeri a módszert, akkor ” helyes ló akkumulátortartó ” úgy néz ki, mint 216 szimbólum egy 2-szimbólumos ábécéből: más szóval 216 bit. Ha tudod, hogy ‘ négy angol szó (és ismerje az XKCD
s szójegyzék), akkor úgy néz ki, mint egy 4 szimbólum egy 2048-as szimbólumból. A 2048 ^ 4 nagy, de ‘ 2 ^ 216-nál kisebb, vagyis egy ilyen véletlenszerű, valóban véletlenszerű bitlánc hány bájt entrópiával rendelkezik. De az XKCD ‘ állításai már ezt elszámolják: 2048 ^ 4 = 2 ^ 44.
Válasz
Az erősség A matematika meglehetősen egyszerű, ha a szóválasztás véletlenszerűen történik: (a szavak száma a szótárban) ^ (a szavak száma a mondatban), feltételezve, hogy a támadó tudja a szótárban található szavak számát. Tehát egy 5 szóból álló kifejezés egy ismert ( a támadó által !) 7776 szóból álló Diceware szótár használatával: 7776 ^ 5 = 2.8E19 vagy 64 bites entrópia.
Van egy olyan elem, amelyet nem említ a séma: ha az egész mondatba csak egy (véletlenszerű) karaktert adunk véletlenszerű helyre, akkor az erősség körülbelül 10 bittel nő , lásd: Diceware, Opcionális dolgok .
A fenti matematika szintén nem veszi figyelembe a szavak közötti elválasztó szimbólumot. Ez további 5 bitet adhat hozzá.
Megjegyzések
- Az XKCD képregény lényege (vagy legalább egyikük) az, hogy egy véletlenszerű helyre egy véletlenszerű karakter hozzáadása növeli a nehézséget a jelszó memorizálása annál nagyobb, ami megnehezíti a feltörését.
- Úgy gondolom, hogy általában memorizálni, szerintem nem igaz a boltozat fő jelszavára. Úgy látom, hogy a ‘ könnyen beírható ‘ a fő előny. Egyre több olyan helyzetben találkozom, amikor a jelszókezelők nem tudják kitölteni a jelszót (alkalmazások, WifI vendéghálózat), és be kell írnom őket.
- @Mark – az extra véletlenszerű (vagy csak szótár nélküli) karakterek legyen azonos az összes jelszavával, vagyis ‘ nem felejtette el. ‘ Meg fogja keresni az entrópia további bitjeit, legalábbis addig, amíg több más jelszavát nem veszélyezteti, amikor a jelszó továbbra is xkcd-erősségű.
- @imotiredicantsleep – Ez egy nagyon érdekes javaslat. Mindig kereste a megoldást, hogy ezt az erősítési technikát könnyebben lehessen használni. Homályban biztonságnak nevezhetjük, mert a támadó profitálhat a véletlenszerű karakterről és a helyzetről szóló ismeretekből. Enyhe kompromisszum, azt hiszem, a könnyű használat és a biztonság között.
- @ Dick99999 abszolút, ez ‘ kompromisszumot jelent. Amíg az állandó komponens nem sérül, addig legyőz egy na ï ve szótár támadást, és jelentősen lassítja a kifinomultabb támadást. Nem értek egyet ‘ azzal, hogy a ‘ biztonságot homály fedi, mivel elmondhatom, hogy a technikát használom anélkül, hogy elveszíteném azt az entrópiát, amelyet a lehetséges értékek adnak nekem. A fő gyengeség az, hogy ha az állandó rész ismert, feláldozta a jelszóval ellátott ingatlanokat , amelyek véletlenszerűség szerint történtek.
Válasz
Szeretnék egy igen választ is hozzáadni, de egyéb okok. Ez nem jó tanács [általában] a hosszúsági korlátok miatt:
- Olyan webhelyek, mint a Skype, az ING, az eBay és az én országomban a Binckbank ans KPN a jelszavakat 20 karakterre korlátozzák. (Ez a banki limit 15, de 2 faktoros engedélyt használt)
- Egy átlagos 3000–8000 szavas szótár esetében átlagosan 4,5 karakter / szó hosszúságú, amely csak 3-4 szófázis használatát teszi lehetővé.
- Nagy szótárak használata esetén az átlag csak 6-7: 3 szó lehet.
- Ha a webhely ragaszkodik egy szimbólum és egy szám használatához a jelszóban, akkor csak 18 karakter áll rendelkezésre a kifejezés.
Ez a hosszúság csak az online támadások ellen véd. Az off-line támadások a kulcs levezetésétől és a hash függvénytől, az iteráció számától és az alkalmazás helyén használt hardver feltörésétől függenek, függetlenül attól, hogy egy 3-4 szóból álló kifejezés megfelelő védelmet nyújt-e.
Megjegyzések
- Azok a webhelyek, amelyek korlátozzák a jelszavak hosszát, gyakran jelzik, hogy a jelszó tárolási rendszerük nagyon bizonytalan. Elfutni. Összességében elmondható, hogy a jelszó erősségére vonatkozó követelmények általában bántalmazóbbak, mint hasznosak, az IMO (mind a biztonság, mind az emlékezetesség szempontjából).
- Adja hozzá a Suntrust a 15 karakterből álló jelszavak listájához. Kíváncsi vagyok, mi van ezzel az iparral ..
- A másik oldalon ‘ lényegesen könnyebb beírni a ‘ correcthorsebatterystaple ‘ okostelefonon, mint tovább váltogatni a kis-, nagy-, számok és írásjelek között.
- Az alacsony jelszó korlátozza a don ‘ t csak a nem biztonságos jelszó tárolási módszereket jelenti – azt jelenti, hogy a jelszavakat sima szövegben tárolják, vagy titkosítják (nem hasítják). @ Á ngel Az összes Microsoft-fiókhoz tartozó jelszavam ennél hosszabb, ezért felhívom a BS-t. Régen, az NTLM előtt a Windows jelszavai 16 karakterre korlátozódtak, iirc. Ez korábbi, mint XP, és alig releváns.
- @Zenexer A Microsoft-fiókok tekintetében: A Microsoft online fiókok (live.com, Office 365 stb.) 16 karakterre korlátozódnak (betűk, számok és egyes szimbólumok megengedettek) ).
Válasz
Fontos, hogy megfelelő kontextus legyen. A xkcd képregény összehasonlítja a Tr0ub4dor&3
-t egy feltételezett 28 bites entrópiával (bár én kiszámítom 34,6-ként) correcthorsebatterystaple
-re, és feltételezett 44 bit entrópia (egy négy szóból álló kockazár kód 51,7 bit … de az egyik ilyen szó nem “diceware”. Egyszerű, 100 ezer szavas helyesírási szótár segítségével 66,4 bitre számolom.
Először tegyük ezt könnyebben érthetővé. 94 van kinyomtatható karakterek. Egy karakteres jelszó log₂(94) = 6.55
entrópiabit. Két karakter log₂(94²) = 13.10
entrópia.A jelszavaséma végső entrópiáját feloszthatja 6,55-gyel annak érdekében, hogy meghatározza a tisztán véletlenszerű jelszó karakterekkel mért egyenértékű bonyolultságát.
Ezért:
- 28 bit entrópia ≈ 4,3 karakteres jelszó (nagyon rossz!)
- 44 bit entrópia ≈ 6,7 karakteres jelszó (szintén rossz)
- 66,4 bit entrópia ≈ 10,1 karakteres jelszó (rendben 2016-ra)
Az xkcd számaiban bízva láthatja, miért aggódott Schneier. Ez kissé túlfutottnak tűnik, mivel a legtöbb támadó tíz vagy több karakter után is feladja [idézet szükséges] – néhány évbe telik, mire egy nagy fürt megtöri a 10 karakteres MD5 kivonatolt jelszót – bár nyilvánvaló, hogy ha egy jó támadó ismeri a sémáját, akkor az abszolút karakterhossz nem kérdés.
A séma teljes komplexitása a legfontosabb. Feltételeznie kell a legrosszabb esetet (hogy a támadó tudja a pontos sémáját) . Nagyszerű ötlet, hogy a jelszó 11+ karakterből álljon ( ha megengedett ), de ez másodlagos prioritás (és átengedett kifejezésekkel ingyen érkezik) ).
Hozzon létre négy szóból álló plusz jelszót és jelszót
Íme a jelszavam létrehozására vonatkozó tanácsom (entrópia-becslésekkel):
- Készítsen értelmetlen “mondatot” 4+, egyenként 4+ karakterből álló szóból (100 000⁴).
- Ezen szavak egyike sem köthető Ön –vagy egymást– bármilyen módon
- Használjon nagybetűket, szóközöket és legalább két szimbólumot vagy írásjelet (32²)
- Legalább egy szót nem sikerül a helyesírás-ellenőrzés (pl. leetspeak, idegen szavak, mindegyik 64)
- Tartalmazzon még legalább egy “hibát” (helyesírás / nyelvtan / szintaxis, entrópia ismeretlen)
- Két szó között, adjon hozzá egy hagyományos “véletlenszerű” 7+ char jelszót (92⁷)
Ennek legalább log₂(100000⁴ × 32 × 3 × 64 × 92⁵) = 112
entrópiabitternek kell lennie (ami nagyon erős, ≈17 karakter). Kihagytam a nagybetűket (feltételezem, hogy csak az első karakter nagybetűs) és egy szimbólumot (feltételezem, hogy .
, !
vagy ?
, tehát a második szimbólum összetettsége 3), és azt is feltételeztem, hogy a “véletlenszerű” nem egészen véletlenszerű, és a kódot öt karakteres egyenértéknek számítottam (a fentiek szigorú betartása) képlet 128+ bit entrópiát adna neked 20 karakterrel).
Ezt az utolsó pontot érdemes megismételni:
Az emberek nagyon rosszul generálják a véletlenszerűségeket
Nagyon kevés ember által létrehozott “véletlenszerű” karakter kód, még megközelíti az igazi véletlenszerűséget. A kódhoz kapcsolódó minták lesznek a személy billentyűzetéhez, kedvenc számaihoz és / vagy egy feltételezéshez, miszerint egy bizonyos homályos szó felismerhetetlen.
Ezt a sémát úgy alakítottam ki, hogy robusztus legyen az emberek velejáró véletlenszerűségének hiánya ellen; korlátozott szókincset feltételezve (mondja ki a 2600 szót Basiban c angol nyelvű ), a kapcsolódó szavak használata (csak három szó megszámlálásával büntetik), és egy jelszó, amely csak hat alfanumerikus entrópiára korlátozódik, maga a log₂(2600³ × 62⁶)
70 bit (≈10,6 karakter).
Ne hagyja, hogy ez a víz lejárjon a jelszóval! Ez a szakasz annak bemutatására szolgál, hogy ez a séma bizonyos ellenállást mutat az emberi korlátozott entrópiával szemben. választások, nem pedig a rossz választások ösztönzése érdekében.
Az egyetlen problémát azok jelentik, akik idézeteket vagy szövegeket vesznek négy szavuknak. Ezeket a passzus mondatokat triviálisan legyőzzük, ha az idézetet vagy a szöveget kitalálhatjuk (mondjuk úgy, hogy megnézzük a Facebook-lájkjait), vagy máskülönben körülbelül 6 véletlenszerű karakterű entrópiája lenne 30 másodperces (MD5) és 17 napos (PBKDF2) repedési idő alatt. .
A entrópiatáblámat használhatja számítsa ki a jelszóséma entrópiáját.
(Ne aggódjon azon a tényen, hogy a jelszavak röviden a memóriában élnek , hacsak Ön fejlesztő)
Megjegyzések
- Azt is meg kell jegyezni, hogy a nem- ASCII karakterek olyanok, mint az ezüst golyók, és a legtöbb támadást automatikusan legyőzik. A
•••••••••
(kilenc felsorolásjel) jelszó zavarba ejtően biztonságos (és ugyanúgy néz ki, mint elrejtve!) Hosszúsága és homálya miatt, bár ‘ d borzalmas ötlet legyen, hogy valójában csak ettől a ténytől függ. Helyezzen egy nem ASCII karaktert a jelszavába + 4szóba, és összetettsége az egekbe szökik (kiszámításához használja az unicode értékét), bár talán a hordozhatóság rovására (mi lenne, ha ‘ ismerős ‘ okostelefon használatával?)
Válasz
Nem, nem hiszem.
Az xkcd képregényben szereplő tényleges tanács az, hogy használjon olyan emlékeztetőket, amelyek könnyen megjegyezhetők és akkor generál jelszót, ha emlékszik rájuk . Ezek bárhol alapvető jelszótanácsadások, és mindig igazak lesznek (még az idézett Schneier-módszer is ezt a két alapvető tényt használja). Valójában a képregény gyakori angol szavakat használ, de a megvalósításnak nem kell lennie, és nem is a képregény azt sugallja, hogy kellene.
Természetesen a legbiztonságosabb jelszavak teljesen véletlenszerű karakterláncok, például egy MD5 karakterlánc kinézete, és valószínűleg egy jelszókezelővel tárolhatja ezeket a jelszavakat, de akkor milyen jelszót fog használni az adott kezelőhöz? ¯ \ (ツ) / ¯
Megjegyzések
- ” Természetesen a legbiztonságosabb jelszavak teljesen véletlenszerű karakterláncok ” NO, lásd az összehasonlítást hu.wikipedia.org/wiki/Password_strength#Random_passwords
- Nem, hogy ‘ s nem az, amit az xkcd tanácsol, javasoljuk, olvassa el újra – és az elemzést a vonatkozó kérdésben itt (a fenti hivatkozással).
- Az Ön aláírása ” ¯ \ (ツ) / ¯ ” kiváló jelszó: rövid, könnyű emlékezni, nagyon nehéz megtörni, nehezen észlelhető jelszóként napló.
- @Daniel Azuelos, … triviális hozzáadni a közönséges karakterláncok listájához …
- @Raestloz Olyan személy, aki nem ‘ ne használjon olyan karaktereket, amelyek az ASCII tartományban vannak, nem ‘ nem fognak ASCII jelszót használni. Gondolod, hogy mindazok az ázsiai országok két billentyűzetet használnak, egyet a mindennapi gépeléshez és egyet a jelszavakhoz? A harminc éves operációs rendszerektől eltérően, mint például a DOS, az összes modern operációs rendszer ‘ rendben kezeli az Unicode-ot és más karakterkészleteket / oldalakat, és minden weboldalnak támogatnia kell őket (mindaddig, amíg a a fejlesztő nem ‘ nem kódolja az űrlapot egy véletlenszerű karakterkészlet használatával, vagy hagyja, hogy a böngésző választhasson). A jelszavak csak bitek, amelyek jelentenek valamit az emberek számára.
correcthorsebatterystaple
volt, akkor ez sokkal kevésbé biztonságos!correcthorsebatterystaple
, ügyeljen arra, hogy ne ‘ jelentkezzen be egy olyan rendszerbe, amely csendesen csonkolja meg! Acorrecth
-hez hasonló jelszót valószínűleg könnyebb kitalálni, mint azN#y;f8eR
-t.