User Tools

Site Tools


kerberos

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
kerberos [2023/11/27 12:09] lsskerberos [2025/12/01 11:40] (current) – external edit 127.0.0.1
Line 11: Line 11:
  
  
-Autentifikacija se se odvija u sljedećim koracima: +Autentifikacija se odvija u sljedećim koracima:
-1. Korisnik započinje proces autentifikacije tako da pošalje zahtjev autentifikacijskom poslužitelju +
  
-2. Autentifikacijski poslužitelj generira novi tajni ključ i šalje dvodijelnu poruku: +  - Korisnik započinje proces autentifikacije tako da pošalje zahtjev autentifikacijskom poslužitelju  
- a) prvi dio sadrži kljuć sjednice šifriran tajnim ključem korisnika (često je to sažetak lozinke korisnika) +  - Autentifikacijski poslužitelj generira novi tajni ključ i šalje dvodijelnu poruku: 
- b) drugi dio sadrži "Karticu za izdavanje kartica" (engl. Ticket-granting ticket) šifriranu tajnim ključem  +      prvi dio sadrži ključ sjednice šifriran tajnim ključem korisnika (često je to sažetak lozinke korisnika) 
-          distributera kartica . U "kartici za izdavanje kartica" nalazi se i identifikator korisnika, rok trajanja kartice i ključ sjednice.+      drugi dio sadrži "Karticu za izdavanje kartica" (eng//Ticket-granting ticket//) šifriranu tajnim ključem distributera kartica . U "kartici za izdavanje kartica" nalazi se i identifikator korisnika, rok trajanja kartice i ključ sjednice. 
 +  - 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 "2b" i identifikatora servisa na koji se korisnik želi autentificirati. Podsjetimo se da je ta poruka opisana u dijelu "2b" šifrirana tajnim ključem distributera kartice.  
 +     -Identifikator korisnika i vremenska oznaka 
 +  - Distributer kartica dešifrira poruku "4a" svojim tajnim ključem te tako dobije ključ sjednice, zatim dešifrira poruku "4b". Uspoređuju se korisnički identifikatori iz poruka "4a" i "4b", ako se poklapaju, distributer kartica zna da je zahtjev autentičan. Također se uspoređuju vremenska oznaka i rok trajanja. Ako se distibuter kartica uvjerio u autentičnost podataka šalje: 
 +    - Ključ sjednice za komunikaciju sa servisom  
 +    - Karticu za servis (eng. //service ticket//) - šifriranu tajnim ključem servisa. U njoj se nalazi korisnički identifikator, vremenska oznaka te ključ iz dijela "5a" 
 +  -  Korisnik servisu pošalje: 
 +    - Karticu za servis (iz dijela 5b) 
 +    - Korisnički identifikator - šifriran ključem iz dijela 5a 
 +  - Servis dešifrira "karticu za servis" uz pomoć svog tajnog ključa i tako dobije ključ kojim može dešifrirati poruku "6b" Uspoređuje korisničke identifikatore i vremenske oznake iz poruka 6a i 6b. Ako je sve u redu, korisnik je autentificiran
  
-3. Korisnik dešifrira prvi dio poruke svojim tajnim ključem i tako dobiva ključ sjednice koji koristi za šifriranje komunikacije 
-s distributerom kartice. 
  
-4. Korisnik šalje zahtjev za autentifikaciju na neki servis (npr. neku web aplikaciju) distributeru kartica. Zahtjev se sastoji od: +{{ ::kerberos_shema.png?nolink&600 | Shema kerberos komunikacije}}
-   a) Poruke opisane u dijelu "2b" i identifikatora servisa na koji se korisnik želi autentificirati. Podsjetimo se da je ta poruka opisana u dijelu "2b" šifrirana tajnim ključem distributera kartice +
-   b) Identifikator korisnika i vremenska oznaka+
  
-5Distributer kartica dešifrira poruku "4a" svojim tajnim ključem te tako dobije ključ sjednicezatim dešifrira poruku "4b". Uspoređuju se korisnički identifikatori iz poruka "4a" "4b"ako se poklapajudistributer kartica +Uloga kartice slična je ulozi akreditacije na poslovnim događajima. Da bismo dobili akreditaciju, moramo pokazati osobnu iskaznicuNakon toga za potrebe identificiranja pokazujemo samo akreditaciju, a osobnu iskaznicu više ne vadimo. Ako izgubimo akreditaciju, jednostavno zatražimo novu tako što opet pokažemo osobnu iskaznicu nadležnoj osobi. Analognokorisnik jednom upiše lozinku dobije karticu te nakon toga više nema potrebe za upisivanjem lozinkeveć se autentifikacija radi preko kartice. Isto takokorisnik može u bilo kojem trenutku tražiti novu karticu.  Naravno, kad je u pitanju internetska sigurnost, potrebne su dodatne mjere, stoga se uvodi ograničeno vrijeme trajanje kartice (8 do 10 satii još se za dodatnu autentifikaciju koristi ključ sesije koji je jednokratan.
-zna da je zahtjev autentičan. Također se uspoređuju vremenska oznaka i rok trajanja. Ako se distirbuter kartica uvjerio u autentičnost podataka šalje: +
-   a) Ključ sjednice za komunikaciju sa servisom  +
-   b) Karticu za servis (engl. service ticketšifriranu tajnim ključem servisaU njoj se nalazi korisnički identifikator, vremenska oznaka te ključ iz dijela "5a"+
  
-6. Korisnik servisu pošalje: +==== Napadi na Kerberos ====
-   a) Karticu za servis (iz dijela 5b) +
-   b) Korisnički identifikator - šifriran ključem iz dijela 5a+
  
-7. Servis dešifrira "karticu za servis" pomoću svog tajnog ključa i tako dobije ključ kojim može dešifrirati poruku "6b" Uspoređuje korisničke identifikatore i vremenske oznake iz poruka 6a i 6b i ako je sve u redu, +== AS-REProasting ==
- korisnik je autentificiran+
  
 +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). 
 +Uz pomoć 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 "online" pogađanja lozinki te sustav ne može primijeniti nikakva ograničenja (npr. da zaključa pristup korisničkom računu nakon 10 neuspjelih
 +pokušaja).
 +
 +Kako bi izbjegli ovakav napad, neke implementacije Kerberosa (npr. Windows Active Directory implementacija) su nadogradile protokol tzv. "predautentifikacijom" - incijalni zahtjev za autentifikacijom mora također biti šifriran 
 +tajnim ključem korisnika. Ako je ova mjera implementirana, napadač ne može dobiti poruke šifrirane tajnim ključem korisnika, osim ako je u poziciji gdje može presretati autentifikacijski promet legitimnog korisnika.
 +
 +== Kerberoasting ==
 +
 +Pri Kerberos autentifikaciji na neki servis, korisnik prima "karticu za servis" (korak 5b) koja je šifrirana tajnim ključem servisa. Taj tajni ključ je uglavnom dugi, nasumično generirani ključ, koji se uz to i periodički mijenja. Međutim,
 +ponekad se radi o kratkoj lozinci koju je postavio čovjek. Napadač može započeti autentifikaciju na neki servis, dobiti "karticu za servis" i onda na svom računalu pokušati pogoditi tajni ključ servisa. 
 +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.
  
-{{ ::kerberos_shema.png?nolink&600 | Shema kerberos komunikacije}} 
  
-Uloga kartice slična je ulozi akreditacije na poslovnim događajima. Da bismo dobili akreditaciju, moramo pokazati osobnu iskaznicu. Nakon toga za potrebe identificiranja pokazujemo samo akreditaciju, a osobnu iskaznicu više ne vadimo. Ako izgubimo akreditaciju, jednostavno zatražimo novu tako što opet pokažemo osobnu iskaznicu nadležnoj osobi. Analogno, korisnik jednom upiše lozinku i dobije karticu te nakon toga više nema potrebe za upisivanjem lozinke, već se autentifikacija radi preko kartice. Isto tako, korisnik može u bilo kojem trenutku tražiti novu karticu.  Naravno, kad je u pitanju internetska sigurnost, potrebne su dodatne mjere, stoga se uvodi ograničeno vrijeme trajanje kartice (8 do 10 sati) i još se za dodatnu autentifikaciju koristi ključ sesije koji je jednokratan. 
  
-Kerberos je podložan određenim napadima, kao na primjer krađi kartica ili napadima s poznatim jasnim tekstom. Rizik od krađe kartica smanjuje se već spomenutim ograničenim rokom trajanja. Sigurnosti doprinose i dovoljno jake lozinke korisnika jer uvijek postoji opasnost od napada grubom silom (//brute force//). Također, postoje razna proširenja Kerberosa, kao npr. PKINIT  (//Kerberos with Public Key cryptography for INITial authentication//) koja poboljšavaju sigurnost. Svejedno, Kerberos se smatra jednim od najpouzdanijih sigurnosnih protokola i u širokoj je primjeni. 
  
 ===Izvori=== ===Izvori===
kerberos.1701086964.txt.gz · Last modified: 2025/12/01 11:40 (external edit)

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki