Kérdés:
Védekezés a szótárakat használó támadások ellen
Albert
2019-08-20 19:55:26 UTC
view on stackexchange narkive permalink

A jelszavak elleni támadások bizonyos formái szótárakat használnak. Biztonságosabb olyan nonszensz jelszavakat használni, mint a YunSUanLin , Artibichoke stb., Amelyek úgy tűnik, nem tartoznak egyetlen szótárhoz sem?

Ha 10 véletlenszerűen kiválasztott szótárból álló jelszót használ, amely ** sokkal biztonságosabb **, mint egy 10 véletlen karakteres jelszó ... tehát attól függ.
A `YunSuanLin` érvényes kínai névnek tűnik, és valószínűleg a kínai 3-pinjin szótárakra vonatkozik, ezért a véletlenszerű generátorok előnyben részesítik az értelmetlen szavak kitalálását.
Nagy téma.A só valószínűleg a szótár támadásainak legegyszerűbb módja, de vannak más vektorok is, például az [ismert jelszólisták] (https://github.com/noloader/SecLists).A támadók minden bizonnyal megpróbálják a listán szereplő összes gyenge / sebzett / veszélyeztetett jelszót.
@jww A só semmit sem véd a szótár támadásai ellen.
@MechMK1 - A só érvényteleníti az előre kiszámított táblákat.Lásd még: [OWASP Threat Model for Secure Password Storage] (https://www.owasp.org/images/1/12/Secure_Password_Storage.pdf).
@jww Igen, de a szótári támadásoknak semmi közük az előre kiszámított táblákhoz.A szótári támadás olyan támadás, amikor a jelszójelölteket a * valószínű * jelöltek listájából választják ki, a billentyűtérben (vagyis a nyers erőben) semmilyen módon nem lehetséges.
@MechMK1 - Mit gondolsz, honnan állítják össze az előre kiszámolt táblázatokat?
@jww Igen, előre kiszámított táblákat hoz létre a szótárakból, de ha egy táblázatot használ arra, hogy keressen, ha korábban hash-t már kiszámítottak, akkor nem hajt végre szótári támadást, hanem keresési támadást használ.Ezek nem ugyanazok, nem helyettesíthetők.
Kötelező XKCD: https://xkcd.com/936/
@MechMK1 - [szótári támadás] (https://en.wikipedia.org/wiki/Dictionary_attack).Nem vagyok biztos benne, hogy a "keresési támadás" a mainstream.Mindig szótári támadásnak hívták, mióta emlékszem.Nem a wikipédiára hivatkozom mérvadó hivatkozásként.Csak a wikipédiát és az owasp-t használom példaként, amely a legtöbb ember szótári támadásnak nevezi.(Vagy a legtöbb embert ismerem).
@jww Megbeszélhetjük ezt a [Chat] -ben (https://chat.stackexchange.com/rooms/151/the-dmz).Nem akarom jobban elrontani a megjegyzéseket, mint már tettem
@MechMK1 - Valószínűleg a legjobb itt hagyni a beszélgetést.Ha nem világos a terminológia, akkor mások is lehetnek.
@jww továbbra is úgy gondolom, hogy alapvető nézeteltérésünk van abban, hogy miből áll egy "szótári támadás", és a DMZ segítségével szeretném egyértelműbben tisztázni álláspontomat és összegyűjteni álláspontját.Mert elvileg nem tévedsz, de tévednek az olyan általánosított állítások, mint a "Sók védenek a szótár támadásai ellen".
@jww Továbbá, ha megnézzük az idézett OWASP példát, a P. 10-en a "Dictionary Attack", "Brute Force Attack" és "(Pre-Computed) Rainbow Table Attack" látható, amelyek megmutatják, hogy van különbség a kettő között.
@MechMK1 - Igen, megpróbáltam elkerülni a Rainbow Table Attack-ot.Ez vonatkozik az MD5-re és a kivonatolási láncokra, az MD5 tömörítési funkciójának kialakítása miatt.A szótárból való előzetes számítás már régóta létezik.Inkább a támadás tulajdonsága.Előre kiszámíthatja a kivonatokat, vagy használhatja a főzetlen szót, és menet közben hajthatja végre az átalakítást.
Folytassuk [folytassuk ezt a beszélgetést a csevegésben] (https://chat.stackexchange.com/rooms/97768/discussion-between-mechmk1-and-jww).
öt válaszokat:
MechMK1
2019-08-20 20:18:10 UTC
view on stackexchange narkive permalink

A támadók gyakran nem csak szótárakat használnak, hanem olyan szabályokat is, amelyek átengedik a szótárakban szereplő szavakat.

Például szabály lehet, hogy bizonyos betűket helyettesítenek a számokkal, amelyek ugyanúgy néznek ki. Ez a Jelszó -ból P455w0rd -ot csinálna.

Ebben az esetben alkalmazható szabály az lenne, ha egyetlen betűt távolítanánk el egy szóból. Ez azt jelenti, hogy csak a jelszó permutálása egy betű eltávolításával vagy szándékos elírási hibával nagyobb esélyeket fog elérni, de ez nem garantált.

Ha konkrétan válaszol a kérdésére: Igen , akkor biztonságosabb. nem értelmes szavakat használni, mint szavakat használni egy szótárban.

Ez azonban nem annyira biztonságos, mint amennyit csak lehet. Az offline jelszókezelő valóban véletlenszerű jelszavakat generálhat Önnek, és titkosított módon tárolja azokat. Ez azt jelenti, hogy a jelszókezelő feloldásához soha nem kell beírnia a jelszavát, a fő jelszó kivételével.

Ennek bemutatásához tegye fel a kérdést, melyik jelszót tartja biztonságosabbnak: YunSuanLin0 vagy [D @, 7 ## M] enMd *) j5fxG ~ KQ ~? r \ <DdV ^ ?

A hozzászólások nem bővebb megbeszélések;ezt a beszélgetést [csevegésbe helyezték] (https://chat.stackexchange.com/rooms/97898/discussion-on-answer-by-mechmk1-defense-against-attacks-using-dictionaries).
Jenessa
2019-08-20 20:03:42 UTC
view on stackexchange narkive permalink

Ez olyan kérdésnek tűnhet, amelynek egyértelmű válasza van, de nem annyira triviális.

A szótárakban nem megjelenő szavak véletlenszerűbbek („entrópia”), ezért nehezebb kitalálni őket számítógépek.

De az emberek számára is nehezebb megjegyezni őket . Ez pedig a jelszó újrafelhasználásához vezet. Ez nagyon rossz.

Ha nem használ jelszókezelőt (és kellene!), Akkor a véletlenszerű szótárakból álló mondatok használata általában biztonságosabb, mint a véletlenszerű nem szavak. Tudjon meg többet erről itt: Milyen jelszót használjak? (amelynek nagyon pontos és könnyen érthető vizuális magyarázata van)

További információ a jelszókezelőkről itt.

Tom
2019-08-21 14:34:52 UTC
view on stackexchange narkive permalink

A "biztonságosabb" egy relatív kifejezés. Mi biztonságosabb, milyen körülmények között?

Tisztán elméleti körülmények között, feltételezve valamiféle durva erő támadását, az igen értelmetlen szavak "biztonságosabbak" abban az értelemben, hogy nagy valószínűséggel a támadó megpróbál szótár támadása a kimerítő keresés előtt.

A való életben a szótári támadások két körülmények között történnek: a) durva kényszerítés az utad valamilyen rendszerbe és b) a jelszavak feltörése a kiszivárgott jelszó-hash adatbázisban.

Az a) megoldás az, hogy nem használ hibás szoftvert. Ha a szoftvere nem zárja ki a támadót 10 vagy 100, vagy más számú sikertelen kísérlet után, akkor a szoftvere meghibásodott.

A b) esetében valószínűleg a támadó leáll a szokásos egyszerű megtörése után. jelszavakat, amelyeket sok felhasználó fog használni. Valószínűleg még egy kicsit hagyja futni, de szokatlan lenne, hogy addig működne a cracker, amíg meg nem kapja az összes jelszót - valószínűleg még több kiszivárgott adatbázisa van, könnyű célpontokkal, amelyekre jobban fordítja az idejét és az erőforrásait.

A b) esetében az, hogy olyan jelszóval rendelkezik, amely nincs a szótárban, és nem egyszerű permutáció (a crackerek tudnak a szokásos "O helyettesítése nullával" helyettesítésekről és még sok minden másról), drámai módon javítja annak esélyét, hogy ne legyen a hasibeenpwned. com

Akkor is a _haveibeenpwned_ oldalon fog végezni, mintha az adatbázis online állapotba kerülne (még a feltöretlen jelszavakkal is), fennáll annak az esélye, hogy feltörik, így az összes cím felkerül a listára.
Michael Haephrati
2019-08-21 02:33:57 UTC
view on stackexchange narkive permalink

Ami a szótárakat illeti, tartalmazzák a leggyakrabban használt jelszavak listáját, és ezek értelmetlen kifejezések és szavak is lehetnek. Például az x + word + 123 vagy az x + majom a leggyakrabban használt jelszavak és a qwerty mellett, amelyeknek nincs igazán értelme. Tehát használhat értelmetlen jelszavakat, de ügyeljen arra, hogy azok kiszámíthatatlanok és ne legyenek olyan gyakoriak. Ha pedig erõsségre törekszik a jelszavaiban, akkor a kezdeti 2 vagy 3 szót több mondattal kombinálhatja. Sőt, ha speciális karaktereket adhat a jelszavához, sokkal biztonságosabb lenne.

a speciális karakterek ** nem ** biztonságosabbak.Nincs egyetlen olyan empirikus bizonyítékom sem, amely bizonyítja, hogy javítja a biztonságot.Éppen ellenkezőleg, nehezebbé teszik a jelszavak emlékezetét (ami nagyobb valószínűséggel írja le őket), és nehezebben írja be (ami megkönnyíti a vállakkal való szörfözést).
Egyetértek Tom aggodalmával, de amúgy is nagyra értékelték, mert rámutatott, hogy a jelszavak "szótára" sokkal többet tartalmaz, mint egy angol szótár tényleges szó szerinti szavai.Túl sok embernek van ilyen furcsa ötlete, hogy ha a Merriam-Webster régi kiadásában nem olyat választanak a polcukra, hogy biztonságban lesznek.
Azt állítom, hogy nincs különbség a szokásos karakterek és a speciális karakterek között, a súly megegyezik, de ha MÉG speciális karaktereket is használunk, akkor az egyes karakterek kombinációinak száma nagyobb, ezért a legjobb, ha az ASCII táblázatból származó lehetséges értékeket használjuk, ésnemcsak számjegyeket és betűrendes értékeket.Ez igaz, ha nyersen kényszerít egy jelszót.A speciális karaktereket tartalmazó jelszó erőteljesebb kikényszerítése több időt vesz igénybe.
Tom K.
2019-08-22 16:29:25 UTC
view on stackexchange narkive permalink

TL; DR: A jelszó előállításának legbiztonságosabb módja általában a jelszókezelő használata.

Aki hashakat hasít vagy bruteforsítja a bejelentkezési kísérleteket, annak több eszköze van a lehetséges jelszavak (vagy jelszó-kivonatok) megtalálásához. ) kérdéses. A szótárak vagy a szótárak csak ezek egyike. Tehát csak a szótárakkal szembeni védekezési technikák korlátozása nem elegendő.

Mint mások kijelentették, amikor egy támadó olyan eszközöket használ, mint a hashcat vagy a Hasogató János, a szabályokat úgy definiálják, hogy néha "tovább fokozzák" a szavakat. szójegyzékekben található. Ezeket a szabályokat viszonylag könnyedén meg lehet határozni. De honnan ismerik a támadók ezeket a szabályokat? És honnan származnak ezek a szótárak?

A második kérdés könnyen megválaszolható: A hírhedt rockyou.txt -hez hasonlóan sok más szótár is megjelenik a nagyobb (vagy kisebb) társaságok.

Most megkaptad a szavak listáját. Hol szerezed meg a szabálykészletet?

Térjünk vissza ezekre a szótárakra. Az IIRC rockyou.txt fájlban ~ 14 millió jelszó van. A felhasználói jelszavak milliói egy helyen adják meg az óriási adatsort, mely jelszavakat használják leggyakrabban, mely betűket írják nagybetűvel, és hova írják általában a számokat és a speciális karaktereket.

A szójegyzékek kissé megváltoztak az évek során mert megtanítottuk az embereket más jelszavak készítésére, mint az "iloveyou", a "jelszó" vagy a "baseball". De a változás lassú, mert a) sok idősebb ember és b) olyan feltörekvő országokból érkező emberek kapnak hozzáférést a digitális szolgáltatásokhoz, amelyek nem elterjedtek a jelszóért,

A lényeg: az emberek be akarják írni a jelszavukat könnyen, és szeretnének könnyen emlékezni rájuk.

Az egyszerű gépelés fontos, ha számokról és speciális karakterekről van szó. Elméletileg körülbelül 200 speciális karakter van, amelyeket csak ALT + Numpad kombinációkkal írhat be. De a valóságban a legtöbb ember egy vagy két karaktert használ (a billentyűzet elrendezésétől függően):! @ #} |) (USA),! "§ * # = (DE).
Valószínűleg itt lát egy mintát, mert ugyanez vonatkozik a számokra is: az 1209-et használják leggyakrabban.

Tehát visszatérve a kérdésére.
Mit akar pontosan elérni?
Nem akar jelszavakat generálni, mint minden más felhasználó. Nem szeretne szótárból használni egy szót. Tehát használja a jelszókezelőt, igaz? De ezt nem mindig lehet megtenni. Ha bejelentkezik a rendszerébe, még nem rendelkezik hozzáféréssel a jelszókezelőhöz.

Néha emlékeznie kell egy jelszóra, majd egy könnyen megjegyezhető jelszóval szeretne rendelkezni. és nagyon erős is. Javaslatom: Próbáljon ki valami olyasmit, mint kockaedény, vagy hagyja, hogy a jelszókezelő generáljon egy jelszót az Ön számára, és utána emlékezzen rá. Használj furcsa szavakat és ragd össze őket. Használjon speciális karaktereket, amelyeket valamivel nehezebb begépelni, mint a "!" -T. Ne csak egy speciális karaktert vagy egy számot használjon.

Ha úgy gondolja magában, hogy okos szabályra gondolt, ne felejtse el, millió más ember van, aki ugyanazt csinálja, és hogy a támadók tudni fog erről a szabályról is.

A legfontosabb: 1. Használjon nagyon hosszú jelszavakat. 2. Ne használjon olyan jelszavakat, mint mindenki más. Mert ezek az építési szabályokkal rendelkező jelszavak, amelyeket minden támadó ismer. Így lehet védekezni egy szótár támadásával szemben.

Amit kapsz egy erős jelszóból, ideje. A jelszó megváltoztatásához hasznos idő a fiók feltörése után. A jelszó hossza és a jelszavak létrehozásának módja megvásárolja ezt az erőt és időt.

"" 2. Ne használjon olyan jelszavakat, amelyek mindenki másához hasonlóak. Mert ezek az építési szabályokkal rendelkező jelszavak, amelyeket minden támadó ismer. "" Vagy még jobb: "2". Tegyük fel, hogy a támadó ismeri az építési szabályokat. Csakhasználja az építési szabályokat, hogy még ilyen ismeretek nélkül sem tudják kitalálni a jelszavát. "Végül is ajánlja az előző bekezdésben szereplő diceware-eket.
Nem is emlékszem, hányan hiszik, hogy az `oKmJuHbGtFcDe` biztonságos jelszó.Jól néz ki, nem?Amíg nem próbálja kiírni a billentyűzeten.
Valószínűleg qwerty billentyűzet nélküli emberek, MechMK1;)
@P-L Az a helyzet, hogy hiszik, hogy "okosak", és hogy "ezt egyetlen hacker sem tudta volna kitalálni".Ezért azt mondom: "Ha úgy gondolja, hogy a rendszert játszotta, akkor a rendszer csak játszotta".


Ezt a kérdést és választ automatikusan lefordították angol nyelvről.Az eredeti tartalom elérhető a stackexchange oldalon, amelyet köszönünk az cc by-sa 4.0 licencért, amely alatt terjesztik.
Loading...