User Tools

Site Tools


length-extension-attack

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
length-extension-attack [2023/11/29 10:02] lsslength-extension-attack [2025/12/01 11:40] (current) – external edit 127.0.0.1
Line 16: Line 16:
 tajna_vrijednost nije poznata! tajna_vrijednost nije poznata!
  
-Jedan od alata kojim se može izvesti ovakav napad je hash_extender [1].  +Jedan od alata kojim se može izvesti ovakav napad je **hash_extender** [1]. 
- +
-Primjer - hacknite digitalni potpis+
  
 +__**PRIMJER**__ - **Zadatak s Hacknite platforme - Digitalni potpis**
 <file> <file>
  
-Stjepan je osmislio inovativan način autentifikacije. Umjesto lozinke, korisnici moraju učitati digitalno potpisanu datoteku koja dokazuje njihov identitet. Je li autentifikacija implementirana na siguran način?+Stjepan je osmislio inovativan način autentifikacije. Umjesto lozinke, korisnici moraju učitati digitalno  
 +potpisanu datoteku koja dokazuje njihov identitet. Je li autentifikacija implementirana na siguran način?
  
-Dostupna Vam je python skripta za generiranje datoteka i digitalno potpisana datoteka niskoprivilegiranog korisnika, ali ne i tajna lozinka koja se koristi za digitalno potpisivanje.+Dostupna Vam je python skripta za generiranje datoteka i digitalno potpisana datoteka niskoprivilegiranog  
 +korisnika, ali ne i tajna lozinka koja se koristi za digitalno potpisivanje.
  
 Hint: length extension attack Hint: length extension attack
Line 37: Line 38:
 Proučimo skriptu gen_signed_dokument.py Proučimo skriptu gen_signed_dokument.py
  
-<code>+<code python>
 import sys import sys
 import hashlib import hashlib
Line 75: Line 76:
 {{length_extension_2.png}} {{length_extension_2.png}}
  
-To se dogodilo zato što je u tom dokumentu valjani MAC za tekst <code>testni_korisnik</code>a ne za +To se dogodilo zato što je u tom dokumentu valjani MAC za tekst <code>testni_korisnik</code> a ne za 
 <code>testni_korisnik <code>testni_korisnik
-can_read_flag</code>.+can_read_flag</code>
  
 Možemo zaključiti da trebamo generirati dokument koji ima u sebi ime korisnika, tekst //can_read_flag// i validni MAC.  Možemo zaključiti da trebamo generirati dokument koji ima u sebi ime korisnika, tekst //can_read_flag// i validni MAC. 
-Budući da ne znamo tajnu vrijednost, ne možemo jednostavno izračunati valjani MAC, a budući da je tajna duga 32 znaka ne  +Budući da ne znamo tajnu vrijednost, ne možemo jednostavno izračunati valjani MAC, abudući da je tajna duga 32 znakane možemo ju ni pogoditi. Međutim, imamo valjani MAC za tekst //testni_korisnik//, a poznata nam je i duljina tajne, pa možemo izvesti napad produljenjem. \\
-možemo ju ni pogoditi. Međutim, imamo valjani MAC za tekst //testni_korisnik//, a poznata nam je i duljina tajne, pa možemo izvesti +
-napad produljenjem. +
 Koristimo alat //hash_extender// Koristimo alat //hash_extender//
  
Line 90: Line 88:
  
 U argument //--data// postavljamo podatak //testni_korisnik// zato što za taj niz znakova imamo validni MAC, u argument //signature// stavljamo MAC iz testne datoteke U argument //--data// postavljamo podatak //testni_korisnik// zato što za taj niz znakova imamo validni MAC, u argument //signature// stavljamo MAC iz testne datoteke
-, u argument append dodajemo tekst koji želimo nadodati na kraj datoteke (paziti da se treba dodati i newline!) te kao veličinu tajne stavljamo 32 (što smo isčitali iz koda).+, u argument append dodajemo tekst koji želimo nadodati na kraj datoteke (paziti da se treba dodati i newline!) te kao veličinu tajne stavljamo 32 (što smo čitali iz koda).
  
 Kao ispis programa dobili smo novogenerirani validni MAC te //hexdump// novog dokumenta. Osim teksta //can_read_flag// dodana je i nadopuna (engl. padding). Alat je generirao novi MAC i za md5 i za md4 algoritam, u ovom slučaju nas zanima samo md5. Kao ispis programa dobili smo novogenerirani validni MAC te //hexdump// novog dokumenta. Osim teksta //can_read_flag// dodana je i nadopuna (engl. padding). Alat je generirao novi MAC i za md5 i za md4 algoritam, u ovom slučaju nas zanima samo md5.
Line 102: Line 100:
  
 Kad učitamo datoteku dobijemo flag. Kad učitamo datoteku dobijemo flag.
- 
  
  
length-extension-attack.1701252158.txt.gz · Last modified: 2025/12/01 11:40 (external edit)

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki