Digest hitelesítés

A Digest hitelesítési hozzáférése az egyik olyan közös módszer, amelyet egy webszerver használ a felhasználó böngészőjének hitelesítő adatainak feldolgozásához. Ez a módszer titkosítást használ a jelszó küldésére a hálózaton belül, ami sokkal biztonságosabb, mint a rendszeres hitelesítési hitelesítés. amelyen az adatokat világos szövegben küldi.

Technikailag az emésztési hitelesítés az MD5 kriptográfiai hasítás alkalmazása véletlenszerű értékek alkalmazásával a kriptanalízis megakadályozására. A HTTP protokollt használja.

A hozzáférési hitelesítési kísérletet eredetileg az RFC 2069 (Extension to HTTP: Digest authentication access) használatával határozták meg. Az RFC 2069 szinte klasszikus emésztési hitelesítési sémát határoz meg, amelyben a biztonságot a kiszolgáló által generált véletlen értékek támogatják. A hitelesítési kérelemre adott válasz a következőképpen alakul (ahol HA1, HA2, A1, A2 a karakterláncváltozók nevei):

RFC 2069-ben helyébe később RFC 2617 (HTTP Authentication: normál és megemészteni hozzáférési jogosultság ellenőrzése). Az RFC 2617-ben további biztonsági javításokat vezettek be az emésztési hitelesítéssel; "A védelem minősége" (QOP), az ügyfél által növelt véletlenszerű értékszámláló és az ügyfél által létrehozott véletlenszerű értékek. Ezek a fejlesztések ellen védeni szándékozunk, például támadás cryptanalyst előre kiválasztott nyílt szöveg [kiválasztott-nyílt szövegű támadás].

Ha a QOP irányelv értéke "auth", vagy nincs definiálva, akkor a HA2 egyenlő:

Ha a QOP irányelv értéke "auth-int", akkor a HA2 egyenlő:

Ha a QOP irányelv értéke "auth" vagy "auth-int", akkor a lekérdezésre adott válasz a következőképpen kerül kiszámításra:

Ha a QOP direktíva nincs meghatározva, akkor a válasz a következőképpen kerül kiszámításra:

A fentiek azt mutatják, hogy ha nincs meghatározva a QOP, egyszerűbb RFC 2069 szabványt alkalmaznak.

Az MD5 védelem hatása az emésztési hitelesítésre

A HTTP hitelesítési emésztésre használt MD5 számításoknak "egyirányúnak" kell lenniük, ami nagyobb nehézséget jelent a kezdeti bemeneti adatok meghatározásakor, ha csak a kimenet ismert. Azonban, ha a jelszó túl egyszerű, akkor végezzen keresést az összes lehetséges bemeneti adatok és megtalálni a megfelelő kimenet (brute force támadás) - például egy szótár vagy egy megfelelő look-up listán.

HTTP Digest hitelesítési jellemzők

előnyök

A HTTP emésztési hitelesítés célja a hagyományos emésztési hitelesítési rendszerek biztonságának növelése, például "sokkal biztonságosabb, mint a CRAM-MD5 ..." (RFC2617).

Az emésztési hitelesítés néhány erőssége HTTP:

  • A jelszót nem közvetlenül az emésztésben használják, hanem HA1 = MD5 (felhasználónév: tartomány: jelszó). Ez bizonyos implementációkban (például JBoss DIGESTAuth) lehetővé teszi a HA1 tárolását, nem pedig a nyílt szövegű jelszót.
  • kliens véletlen értéket vittek be RFC2617, amely lehetővé teszi az ügyfél, hogy megakadályozzák a támadás előre kiválasztott nyílt szöveg [kiválasztott-nyílt szövegű támadás] (egyébként például, szivárvány táblázat [szivárvány asztal] veszélyt megemészteni hitelesítési rendszer).
  • A kiszolgáló egész véletlenszerű értéke tartalmazhat időbélyegzőket. Ezért a kiszolgáló ellenőrizheti az ügyfelek által biztosított véletlen értékeket, hogy megakadályozzák a visszajátszási támadásokat.
  • A szerver az újonnan létrehozott vagy használt véletlen értékek táblázatait is tartalmazhatja az újrafelhasználás megakadályozása érdekében.

hiányosságokat

A hozzáférés-hitelesítés megemésztése kompromisszumos megoldás. Úgy tervezték, hogy helyettesítse a titkosítatlan HTTP alapú hitelesítési hozzáférést. Azonban nem szándékozik helyettesíteni a biztonságosabb hitelesítési protokollokat, például a nyilvános kulcsot vagy a Kerberos hitelesítést.

Biztonsági szempontból a hozzáférési hitelesítési felszínnek számos hátránya van:

  • Az RFC 2617 biztonsági beállításainak többsége opcionális. Ha a szerver nem határozza meg a védelem minőségét (QOP), az ügyfél az RFC 2069 lebomló biztonsági módban működik.
  • A digest hitelesítés sebezhető a közepes emberi támadásokra (MitM). Például, a támadó mitm mondja meg az ügyfeleinek hogy az egyszerű hitelesítést vagy hozzáférési módot hitelesítés Digest RFC 2069. Tágabb elmosta, megemészteni hozzáférési jogosultság nem az ügyfelek szerver hitelesítési mechanizmus.
  • Néhány kiszolgáló megköveteli a jelszavak reverzibilis titkosítás használatát. Lehetőség van azonban a felhasználónév, a terület és a jelszó emésztésére. [2]

Alternatív hitelesítési protokollok

Néhány továbbfejlesztett hitelesítési protokoll webes alkalmazásokhoz:

  • Nyilvános kulcs-hitelesítés (általában HTTPS / SSL ügyfél-tanúsítványokkal).
  • Kerberos vagy SPNEGO hitelesítés. először is, hogy a Microsoft IIS az Integrált Windows-hitelesítést (IWA) teszi lehetővé.
  • Védett távoli jelszó protokoll (lehetőleg HTTPS / TLS-en keresztül).

A nyílt típus rosszul védett protokolljait gyakran használják:

Ezek a gyenge nyílt protokollok, amelyeket a hálózati titkosítással együtt alkalmaznak, megakadályozhatják a különböző fenyegetések megakadályozását, amelyek esetében az emésztési hitelesítést tervezték.

Példa magyarázattal

Az alábbi példát eredetileg az RFC 2617-ben mutattuk be, és itt kiterjesztettük, hogy bemutassuk az összes kérés és válasz teljes szövegét. Ne feledje, hogy csak a hitelesítési kód védettségét fedezi - az Opera és a Konqueror csak a böngészők írásakor írta alá az "AUTH-INT" -t (hitelesítés a védelem integritásával). Bár a specifikáció említi a HTTP 1.1 verziót, a séma sikeresen hozzáadható a kiszolgáló 1.0-s verziójához, amint az itt látható.

Ez a tipikus üzenetkezelési séma a következő lépésekből áll.

Megjegyzés: Az ügyfél már rendelkezik felhasználónévvel és jelszóval, anélkül, hogy kérje a felhasználó például, ha azokat a korábban mentett böngésző.

Ügyfélkérés (hitelesítés nélkül) Szerver válasz Ügyfél kérés ("Mufasa" felhasználónév, jelszó "Circle Of Life") Szerver válasz

A válasz értéke három lépésben történik, az alábbiak szerint. Az értékek kombinációját kettőspont választja el.

  1. Az MD5 kiszámított hash-értéket, a hitelesítési hatókört és a jelszót kiszámítják. Az eredmény a HA1.
  2. A kombinált módszer és az URI-emésztés MD5 hash-értékét kiszámítjuk. például "GET" és "/dir/index.html". Az eredmény HA2.
  3. A kombinált HA1 MD5 hash kiszámítása kiszámítja a kiszolgáló véletlenszerű értékét, a lekérdező számlálót, a kliens véletlen értéket, a biztonsági minőségi kódot (QOP) és a HA2 értéket. Az eredmény az ügyfél által adott "válasz" értéke.

Mivel a kiszolgáló ugyanazokkal az információkkal rendelkezik, mint az ügyfél, ugyanazokkal a számításokkal ellenőrizheti a választ. A fenti példában, a kimenet a következőképpen alakítjuk, ahol a MD5 () jelentése funkciót kiszámítani az MD5 hash backslash folytatódnak és idézetek nem használják a számításokban.

A 2617-es RFC-ben megadott példa kitöltésével minden lépésre bemutatjuk az eredményeket.

Ezen a ponton az ügyfél új kérelmet nyújthat be a kiszolgáló véletlenszerű értékének újrahasznosításával (a kiszolgáló minden egyes "401" válaszra új véletlen értéket ad ki), de új véletlen értéket ad az ügyfél számára. A későbbi kérelmek esetében a hexadecimális lekérdező számlálónak nagyobbnak kell lennie, mint az előzőleg használt érték - különben a támadó egyszerűen "ismételheti" a régi kérelmet ugyanazzal az adatokkal. Ez egy kiszolgáló feladat - annak ellenőrzése, hogy a számláló növekszik-e minden kibocsátott véletlen értéknél, és figyelmen kívül hagyja a nem megfelelő kéréseket. Nyilvánvaló, hogy a módszer, az URI és / vagy a számláló megváltoztatása különböző válaszértékeket eredményezhet.

A kiszolgálónak emlékezni kell a véletlenszerű értékekre, amelyeket a közelmúltban hoztak létre. Emlékszik arra is, amikor minden véletlenszerű értéket megadtak, és egy bizonyos idő elteltével kihasználják őket. Ha egy elavult értéket, akkor a szerver elküldi állapot kód „401”, és hozzáadjuk a száraz = TRUE a hitelesítési fejléc, jelezve, hogy a kliens ki újra a kérést egy új véletlen érték, anélkül, hogy a felhasználónak, hogy küldjön egy másik felhasználói nevet és jelszót.

A kiszolgálónak nem kell minden elavult véletlen értéket tárolnia - egyszerűen feltételezheti, hogy a nem megfelelő értékek elavultak. A kiszolgáló számára lehetséges, hogy minden egyes véletlen értéket csak egyszer adnak vissza, bár ez megkönnyíti az ügyfél számára, hogy megismételje az egyes kéréseket. Ne feledje, hogy a kiszolgáló véletlenszerű értéke nem lehet elavult, mert az ügyfél soha nem tudta használni.

SIP emésztési hitelesítés

A SIP alapvetően ugyanazt az algoritmust használja, mint az emésztési hitelesítés. Ezt az RFC 3261 határozza meg.

A böngésző végrehajtása

A legtöbb böngésző jelentős előírásokat hajt végre, kivéve bizonyos speciális funkciókat, például az AUTH-INT vagy az MD5 munkamenet algoritmust. Ha a kiszolgáló megköveteli, hogy ezeket a további funkciókat kell feldolgozni, az ügyfelek nem rendelkezik hitelesítő képesség (bár meg kell jegyezni, hogy az Apache mod_auth_digest szintén nem teljes mértékben végrehajtó RFC 2617).

irodalom

Tekintse meg, mi a "Digest hitelesítés" más szótárakban:

Internet Information Services - Microsoft Fejlesztői Operációs Rendszer Microsoft Windows NT Legfrissebb verzió 7.5 Tesztverzió 8.0 Licenc tulajdonos honlapja ... Wikipedia

Nonce - Egy tipikus csere az ügyfél és a kiszolgáló között a nonce szerver és a cnonce kliens használatával történő hitelesítés során. A kriptográfiában egy egyszeri, véletlenszerűen vagy pszeudo-véletlenszerűen kiválasztott kódot (Wikipedia)

Az adatok integritása - adatok integritását (szintén az adatok integritását) kifejezés a számítástechnikában és távközlési elmélet, ami azt jelenti, hogy az adatok teljesek, azzal a feltétellel, hogy az adatok nem változtak, ha bármilyen műveletet őket, függetlenül attól, hogy átvitel, ... ... Wikipedia

SNTP - Cím: Simple Network Time Protocol szint (az OSI modell): Application Család: TCP / IP Port / ID: 123 / UDP protokollt Cél: Idő szinkronizálás Specifikáció ... Wikipedia

RFID - EPC RFID címke használt Wal Mart RFID kereskedelmi hálózat (angol rádiófrekvenciás azonosítás, rádiófrekvenciás azonosítás.) Eljárás automatikus azonosítási tárgyak, amelyek rádiójeleket vagy olvasni ... ... Wikipedia

Rádiófrekvenciás azonosítás - EPC RFID címke az angol kereskedelmi hálózatban. Rádiófrekvenciás azonosítás) az objektumok automatikus azonosításának módját, amelyben rádiójelek segítségével tárolják a ... ... Wikipedia-ban tárolt adatokat

RFID címke - EPC RFID címke az angol kereskedelmi hálózatban. Rádiófrekvenciás azonosítás) az objektumok automatikus azonosításának módját, amelyben rádiójelek segítségével tárolják a ... ... Wikipedia-ban tárolt adatokat

Kapcsolódó cikkek