Komoly biztonság: az MD5 ártalmasnak tekinthető – a 600,000 XNUMX dolláros PlatoBlockchain Data Intelligence erejéig. Függőleges keresés. Ai.

Komoly biztonság: az MD5 ártalmasnak tekinthető – 600,000 XNUMX dollár erejéig

A francia adatvédelmi hatóság, a CNIL egy lenyűgöző jogi tanácskozáson (Commission Nationale de l'Informatique et des Libertés), az Électricité de France vagy röviden EDF energiacég volt 600,000 euró bírságot szabtak ki (körülbelül 600,000 USD).

A jogi nyilatkozat az ilyen dolgokhoz hasonlóan meglehetősen hosszú és (legalábbis nem jogászok számára) nyelvileg érthető, ami azt jelenti, hogy megfelelő francia nyelvtudásra van szüksége ahhoz, hogy megértse a dolog minden csínját-bínját, de az egész ügyet. négy jogsértésre csapódik le.

Az első három az ügyfelekkel folytatott általános adatokkal kapcsolatos interakciókra vonatkozik, és a következőkre terjed ki:

  • Kereskedelmi marketing e-mailek küldése megfelelő beleegyezés nélkül.
  • Adatgyűjtés anélkül, hogy tisztázná, mit és miért.
  • Nem kezeli megbízhatóan a kéréseket amikor az ügyfelek kérték adataik megtekintését, illetve azok törlését.

De ez az utolsó panasz, ami felkeltette az érdeklődésünket: Sur le manquement à l'obligation d'assurer la sécurité des données.

Angolul ez lazán így fordítható az adatok biztonságos tárolásának elmulasztása, és kifejezetten a jelszavak nem biztonságos kezeléséhez kapcsolódik.

Az MD5 károsnak minősül

A szabályozó többek között megjegyezte, hogy annak ellenére, hogy azt állították, hogy a jelszavakat egy elfogadott kivonatolási algoritmus segítségével sózzák, majd kivonják, az EDF még 25,000 júliusában is több mint 5 2022 felhasználó jelszavát „biztosította” egyetlen MDXNUMX-kivonattal.

Amint azt már sokszor hallotta a Naked Security-n, tárolva a egy jelszó kriptográfiai kivonata Ez azt jelenti, hogy egy jelszót a bemutatáskor érvényesíthet egyszerűen a hash újraszámításával és az eredetileg kiválasztott jelszó hashével való összehasonlításával.

Ha a hash-ek egyeznek, akkor nyugodtan következtethet arra, hogy a jelszavak egyeznek, anélkül, hogy el kellene tárolnia a tényleges jelszót.

Amikor megjelenik, a jelszót csak ideiglenesen kell a memóriában tartani, és a hash kiszámítása után azonnal eldobható.

Mindaddig, amíg a kivonatolási algoritmust kriptográfiailag biztonságosnak tekintik, nem lehet hasznosan „fordítva futtatni”, így nem lehet visszafelé dolgozni a hash-től, hogy bármit is felfedjen magáról a jelszóról. (Az ilyen hash-t a szakzsargonban a egyirányú funkció.)

Hasonlóképpen, egy tisztességes kivonatolási algoritmus megakadályozza, hogy egy ismert hash-sel kezdjen, és olyan bemeneti értéket alakítson ki – bármilyen bevitelt, nem feltétlenül az eredeti jelszót –, amely létrehozza a kívánt hash-t.

Meg kell próbálnia a bemenetet a bevitel után, amíg szerencséje nem lesz, ami még 128 bites hashek esetén is túl sokáig tart ahhoz, hogy megvalósítható támadás legyen. (Azt a biztonsági óvintézkedést alkalmazó hash-t, amely nem teszi lehetővé, hogy több bemenetet találjon ki azonos kimenettel ütközésálló.)

De az MD5-nek, amint azt valószínűleg tudja, jelentős problémák vannak az ütközésekkel, csakúgy, mint annak közvetlen utódja SHA-1 (mindkét hash a 1990-es évek elején jelent meg).

Manapság egyik algoritmust sem ajánlják sehol, senkinek, semmilyen célra, tekintettel arra, hogy vannak hasonló, de még mindig biztonságos alternatívák, amelyek könnyen helyettesíthetők, mint például az SHA-256 és az SHA-512:

Az MD5 hashek 128 bitesek vagy 16 bájt hosszúak. Az SHA-256 és az SHA-512 2x, illetve 4x olyan hosszúak. De önmagában nem ez az extra hash-hossz teszi alkalmasabbá őket. Elsődleges előnyük az MD5-tel szemben, hogy nincsenek konkrét ismert problémáik az ütközésekkel kapcsolatban, így a kriptográfiai biztonságuk emiatt általában nem tekinthető kétségesnek.

Sózás és nyújtás

Röviden: egyetlen vállalattól sem várná el, nemhogy egy olyan energiaszektorbeli behemóttól, mint az EDF, hogy az MD5-öt bármilyen kriptográfiai célra használja, nemhogy jelszavak biztosítására.

Még rosszabb volt azonban ennek hiánya sózás, ahol az egyes felhasználók számára véletlenszerűen kiválasztott adatok egy része keveredik a jelszóval a hash kiszámítása előtt.

A sózás oka egyszerű: biztosítja, hogy a potenciális jelszavak hash értékeit ne lehessen előre kiszámítani, majd magával vinni egy támadáshoz.

Sózás nélkül minden felhasználó kiválasztja a jelszót 123456, a csalók előre tudják, mi lesz a hash.

Még akkor is, ha a felhasználó megfelelőbb jelszót választ, mint pl 34DF6467!Lqa9, előre megmondhatod, hogy az MD5 hash lesz 7063a00e 41866d47 f6226e60 67986e91.

Ha elég hosszú listája van előre kiszámított vagy részben kiszámított jelszavakból (a szakzsargonban meglehetősen pompásan ismert szivárvány asztal), előfordulhat, hogy visszaállíthatja a jelszót a táblázaton keresztül, nem pedig több billió jelszókombináció kipróbálásával, amíg szerencséje nem lesz.

A sózás azt jelenti, hogy szüksége lesz egy teljes, előre kiszámított szivárványtáblára minden felhasználó számára (a táblázatot a só + jelszó kombinációja határozza meg), és nem tudna minden szivárványtáblát kiszámítani – ez a feladat több hétig is eltarthat, és terabájtnyi lemezterületet foglalhat el – addig, amíg a sókat úgyis vissza nem állítja,

De van még mit tennie.

Még ha be is tesz egy sót, így az előre kiszámított „kivonatszótárak” nem használhatók, és megbízható kriptográfiai algoritmust, például az SHA-512-t használ, egy hash-számítás önmagában elég gyors ahhoz, hogy a támadók, akik megszerezték a hash-ek adatbázisát, képesek legyenek. még mindig több milliárd lehetséges jelszót próbál ki másodpercenként, vagy még többet.

Tehát az ún nyújtás valamint, ahol nemcsak a kezdeti jelszót sózza meg, hanem a bemenetet több ezerszer vagy többször is átengedi a kivonatoló algoritmuson, így a támadások lényegesen időigényesebbé válnak minden csaló számára.

Ellentétben az ismételt összeadással, ahol egyetlen szorzást is használhatunk parancsikonként, hogy mondjuk az 5+5+5+5+5+5 számítást 6×5-re cseréljük, az ismételt kivonatokhoz nincsenek parancsikonok. Egy bemenet 1000-szeres kivonatához a kriptográfiai számítási fogantyú 1000 „fordulatára” van szükség.

Nem csak MD5 probléma

Ironikus módon úgy tűnik, hogy bár az EDF-nek csak 25,800 5 kivonatolt jelszava volt az MD512-tel, és védekezésében azt állította, hogy többnyire SHA-XNUMX-t használ helyette, mégsem mindig sózta vagy feszítette meg a tárolt kivonatokat.

A szabályozó jelentése szerint 11,200,000 2,400,000 5 jelszót sikerült helyesen kivonatolni és kivonatolni, de ennek ellenére volt 512 XNUMX XNUMX olyan, amelyet egyszerűen csak egyszer hasítottak ki, akár MDXNUMX-tel, akár SHA-XNUMX-vel.

Úgy tűnik, az EDF mostanra teljesen felépítette a jelszavak tárolását, de a céget így is 600,000 XNUMX euróra büntették, és a következő két évben a CNIL „szemtelen lépése” miatt továbbra is nyilvánosan szerepel az interneten.

Nem lehetünk biztosak benne, mekkora bírságot szabtak volna ki, ha az ítélet csak rossz kivonatolásról szólt volna, és az EDF-nek nem kellett volna felelnie a kezdetben felsorolt ​​három másik adatvédelmi vétségért sem…

…de ez azt mutatja, hogy a rossz kriptográfiai döntések több szempontból is pénzbe kerülhetnek!

Mit kell tenni?

Tárolja ügyfelei jelszavait biztosan!

A sózás és nyújtás extra számítási költsége megválasztható úgy, hogy az egyes felhasználókat ne érje kellemetlenség a bejelentkezéskor, ugyanakkor a leendő támadók támadási sebessége több nagyságrenddel megnő.

Elméletileg 10 évbe (200 10,000 hétbe) tartana egy jelszó-helyreállítási támadás, amelynek során az egyszerű, egyszeri kivonatként tárolt jelszavak 10,000%-ának kinyerése akár egy hétig is eltarthat, ha XNUMX XNUMX-szer megnehezítené az egyes próbajelszavak kiszámításának költségét. .

Olvassa el a kiváló magyarázó cikk pont ebben a témában:

Röviden, ajánljuk a PBKDF2 „nyújtó” algoritmussal SHA-256 mint alapkivonat, felhasználónkénti véletlenszerűen salt of 16 bytes (128 bit) vagy több.

Ez megfelel a CNIL legutóbbi ítéletében foglalt ajánlásoknak.

A CNIL nem ad tanácsot a PBKDF2 iterációk számával kapcsolatban, de amint azt cikkünkben látni fogja, tanácsunk (2022. október) 200,000 or more. (Rendszeresen növelheti a hurkok számát, hogy lépést tudjon tartani a számítási teljesítmény növekedésével.)

Ha nem szeretné használni a PBKDF2-t, javasoljuk, hogy olvassa el az algoritmusokat bcrypt, scrypt és a Argon2 hogy segítsen bölcs döntést hozni.

Ne ragadjon ki a kriptográfiai szemtelen lépésen!


Időbélyeg:

Még több Meztelen biztonság