Jelszavak sql-szerver menedzsment hacker
SQL Server nem dokumentált funkció pwdencrypt (), hogy hozzon létre egy hash felhasználói jelszavak, amelyeket aztán tárolt a fő adatbázis. Más szóval,
- kripto jelszavak és titkosított.
Úgy lehet előállítani egy egyszerű lekérdezést
tárolja azokat egy hagyományos adatbázist:
válassza jelszót master.dbo.sysxlogins ahol
name = 'sa'
jelszó hash valahogy így néz ki:
azt kell mondanom, szörnyen néz ki ... Lássuk, mi befolyásolja a képzés:
Próbálja például bitsorkódolják jelszó „asztal”.
Ez történt:
Nos, ha megpróbálja újra, akkor kap egy pár másodpercig:
Könnyen belátható, hogy kapunk egy másik hash, ami azt jelenti, hogy a hash időfüggő. Így két vagy fatörzs felhasználók azonos lehet a jelszavakat, de a jelszavak hash-más lesz.
Most nézzük meg, hogy titkosítja „AAAAAA”:
Ha közelebbről szemügyre a hash, akkor négy részre osztható:
0x0100
84449305
43174C59CC918D34B6A12C9CC9EF99C4769F819B
43174C59CC918D34B6A12C9CC9EF99C4769F819B
És a harmadik és negyedik része vagyunk teljesen azonosak. Ez annak a ténynek köszönhető, hogy ismeretlen okból, tárolja a jelszót kétszer az első alkalommal „ahogy van” (azaz érzékeny), és másodszor - nagybetűvel. Mivel a példánkban az eredeti jelszót állt teljesen nagybetűk, az eredmény a „kettős menteni”, megvan pontosan ugyanolyan része a hash.
Elméletileg ez jelentősen csökkenti a
míg a nyers erő, hiszen meg kell rendezni
Csak nagybetűket.
De vajon időben befolyásolja a hash közvetlenül? A válasz - nincs. Idő () függvény létrehoz egy kiindulási pont srand () függvény, amely létrehoz két véletlen számokat. Ezek a számok egyesítjük (nagy valószínűséggel az is feltételezhető, hogy ezek a számok is megadjuk „rövidítve kiviteli alak”), és a kapott sót, amelyet ezt követően használt „termelés” hash.
Jelszó alakítjuk Unicode és hozzá sót. Aztán minden megy keresztül a titkosítási funkció Advapi32.dll - Az eredmény egy „harmadik” a hash (mint láttuk a bekezdésben a hatása a nyilvántartás).
Ezután a jelszó alakítjuk nagybetű és az említett ismétlődő manipuláció - get „negyedik” része a hash.
Ezután a „szerelvény” a végleges változata a hash, amely tárolja az adatbázisban:
Vegyük a változatlan fejléc:
Ezután a sót, amelyet a titkosításhoz használt jelszót:
A harmadik és negyedik rész - közvetlenül a jelszót is (változatlan és nagybetűk, sorrendben):
Mindent! Kiderült ugyanaz, csúnya és borzalmas hash:
Hogy van az azonosító
A felhasználó belép egy pár név / jelszó.
Először is ott van egy csekket a felhasználó jelenlétét a felhasználónevét. Ha a teszt sikeres, és a felhasználó létezik, a megfelelő hash extrahált só (a második része a hash), és a felhasználó által megadott jelszó crypto segítségével ennek a sónak. Ezután a kapott eredményt összehasonlítjuk a hash az adatbázisban. Abban az esetben, hogy a felhasználó által elérhető, egyébként -, hogy emlékezzen a jelszó ...
Nem világos, hogy miért tárolja a jelszót a hash kétszer - miután a kivonatolt jelszót a nagybetűs, a támadó képes jelentősen csökkenteni a munka: az elején „split” jelszavát a magas regiszterben, és megtudja, milyen szimbólumokat használnak, és aztán csak ellenőriznek minden ezek kombinációi nagybetűs és kisbetűs. Így a munka mennyisége az algoritmus a tíz, száz, sőt több ezer alkalommal (függ a jelszó hossza) kevesebb, mint amikor megpróbál feltörni érzékeny jelszó regisztrálj, ahogy az a „fej”.
konzol programot írtunk, gyakorlati megvalósítása ez a gondolat, amely már szerepel az Ön és megrendelés
(Nagyon hasznos volt, hogy képes legyen feldolgozni a lista, és
megérteni, hogy a program - azonban
ez, mint mindig, az Ön választása szerint):
Van is egy nem konzolos verziója a cracker. Az alkotók azt állítják, hogy gyorsabb ... de ő fizetett, és nem tetszik, hogy fizetni ...
Itt található az ezt a cikket egy ismerősének: