kerberos
Differences
This shows you the differences between two versions of the page.
Next revision | Previous revision | ||
kerberos [2023/09/25 10:44] – created katarina | kerberos [2023/11/27 13:30] (current) – external edit 127.0.0.1 | ||
---|---|---|---|
Line 1: | Line 1: | ||
====Kerberos==== | ====Kerberos==== | ||
+ | **Kerberos** je mrežni autentifikacijski protokol čija je svrha međusobna autentifikacija klijenata i poslužitelja u svrhu uspostave sigurne komunikacije. Stvara se zaseban servis za autentifikaciju pa ostali servisi ne moraju održavati vlastitu bazu podataka o svim korisnicima. Kako bi ovakav pristup radio, svi klijenti i poslužitelji moraju posjedovati zajednički tajni ključ registriran kod autentifikacijskog poslužitelja. Ključevi su dugotrajni, odnosno traju tjednima ili čak mjesecima. Kerberos u pravilu koristi UDP port 88 i oslanja se na simetričnu kriptografiju ključa. | ||
+ | |||
+ | Osnovne komponente Kerberosa su:\\ | ||
+ | * **Principal** - korisnik ili servis koji treba autentificirati | ||
+ | * **Centar za distribuciju ključeva** (//Key Distribution Center//, KDC) - centralni autentifikacijski poslužitelj u Kerberos okruženju, sadrži:\\ | ||
+ | * **Autentifikacijski poslužitelj** (// | ||
+ | * **Distributer kartica** (//Ticket Granting Service// ,TGS) - upravlja zahtjevima za kartice | ||
+ | * **Domena** (//Realm//) - Kerberosova administrativna domena, definira doseg autentifikacije (npr. Domena.com) | ||
+ | * **Baza podataka** - AS verificira pristupne dozvole svih korisnika u bazi | ||
+ | |||
+ | |||
+ | Autentifikacija se se odvija u sljedećim koracima: | ||
+ | |||
+ | - Korisnik započinje proces autentifikacije tako da pošalje zahtjev autentifikacijskom poslužitelju | ||
+ | - Autentifikacijski poslužitelj generira novi tajni ključ i šalje dvodijelnu poruku: | ||
+ | - prvi dio sadrži ključ sjednice šifriran tajnim ključem korisnika (često je to sažetak lozinke korisnika) | ||
+ | - drugi dio sadrži " | ||
+ | - Korisnik dešifrira prvi dio poruke svojim tajnim ključem i tako dobiva ključ sjednice koji koristi za šifriranje komunikacije s distributerom kartice. | ||
+ | - Korisnik šalje zahtjev za autentifikaciju na neki servis (npr. neku web aplikaciju) distributeru kartica. Zahtjev se sastoji od: | ||
+ | - Poruke opisane u dijelu " | ||
+ | | ||
+ | - Distributer kartica dešifrira poruku " | ||
+ | - Ključ sjednice za komunikaciju sa servisom | ||
+ | - Karticu za servis (eng. //service ticket//) - šifriranu tajnim ključem servisa. U njoj se nalazi korisnički identifikator, | ||
+ | - Korisnik servisu pošalje: | ||
+ | - Karticu za servis (iz dijela 5b) | ||
+ | - Korisnički identifikator - šifriran ključem iz dijela 5a | ||
+ | - Servis dešifrira " | ||
+ | |||
+ | |||
+ | {{ :: | ||
+ | |||
+ | Uloga kartice slična je ulozi akreditacije na poslovnim događajima. Da bismo dobili akreditaciju, | ||
+ | |||
+ | ==== Napadi na Kerberos ==== | ||
+ | |||
+ | == AS-REProasting == | ||
+ | |||
+ | Napadač može započeti zahtjev za autentifikacijom kao neki korisnik i kao odgovor će dobiti poruku šifriranu tajnim ključem odnosno lozinkom korisnika (poruka 2a). | ||
+ | Pomoću te poruke, napadač može na svom računalu automatizirano pokušati pogoditi lozinku korisnika, kada se poruka ispravno dešifrira znat će da je pogodio lozinku. | ||
+ | Budući da se napad odvija lokalno, na napadačevom računalu, napad je višestruko brži od " | ||
+ | pokušaja). | ||
+ | |||
+ | Kako bi izbjegli ovakav napad, neke implementacije Kerberosa (npr. Windows Active Directory implementacija) su nadogradile protokol tzv. " | ||
+ | tajnim ključem korisnika. Ako je ova mjera implementirana, | ||
+ | |||
+ | == Kerberoasting == | ||
+ | |||
+ | Pri Kerberos autentifikaciji na neki servis, korisnik prima " | ||
+ | ponekad se radi o kratkoj lozinci koju je postavio čovjek. Napadač može započeti autentifikaciju na neki servis, dobiti " | ||
+ | Ako uspije, može lažirati kartice za servis tako da se servisu može predstaviti kao bilo koji korisnik. | ||
+ | |||
+ | Općenito, trebalo bi izbjegavati to da ljudi postavljaju tajne ključeve servisa, ali ako je to potrebno oni bi trebali biti dugački i nasumično generirani. | ||
+ | |||
+ | |||
+ | |||
+ | |||
+ | ===Izvori=== | ||
+ | [1] https:// | ||
+ | [2] https:// | ||
+ | [3] https:// | ||
+ |
kerberos.1695638640.txt.gz · Last modified: 2025/06/03 10:22 (external edit)