Puncte:1

Unde mai exact adăugați zerourile la o adresă URL într-un atac oracol de umplutură? De asemenea, cum ați decripta un fișier în acest fel?

drapel uz

Am studiat diverse atacuri cripto, iar unul dintre atacurile pe care le-am studiat recent a fost atacul padding oracle. Acum, în cea mai mare parte îl înțeleg, dar există un aspect al atacului oracolului de umplutură despre care m-au încurcat diferiți profesori din surse diferite:

Să presupunem că am o adresă URL:

http://somesite.com/place?ciphertext=aaaaaaaaaaaaaaaaabbbbbbbbbbbbbbccccccccccccccdddddddddddddddd

(Să presupunem că textul cifrat este în hex și că „aa” este un octet, deci în total, acest text cifrat este format din 32 de octeți aranjați în două blocuri de 16 octeți. În acest exemplu, primul bloc începe la primul „aa” și se termină cu ultimul „bb”. Totul după aceea este al doilea bloc de text cifrat.)

Acum, știu că pentru a porni atacul de padding oracle, ați adăuga un bloc de 0 ca vector de inițializare la acest text cifrat. Cu toate acestea, am primit semnale ambigue și inconsecvente cu privire la unde ar fi adăugate aceste zerouri.

De exemplu, o sursă a făcut să pară că 0-urile ar fi adăugate ca prefix la primul bloc de text cifrat, astfel încât adresa URL de mai sus va deveni:

http://somesite.com/place?ciphertext=00000000000000000000000000000000aaaaaaaaaaaaaaaaabbbbbbbbbbbbbbccccccccccccccccdddddddddddddd

Cu toate acestea, o altă sursă a făcut să pară că zerourile ar înlocui primul bloc de text cifrat, astfel încât adresa URL ar deveni:

http://somesite.com/place?ciphertext=000000000000000000000000000000000ccccccccccccccdddddddddddddd

Cu toate acestea, o altă sursă a făcut să pară că adăugați zerourile la sfârșitul textului cifrat astfel:

http://somesite.com/place?ciphertext=aaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbccccccccccccccdddddddddddddddd00000000000000000000000000000000

Care este, sau este opțional?

De asemenea, metoda de mai sus de a încerca un atac oracol de umplutură presupune că textul cifrat este prezent într-o adresă URL, dar ce se întâmplă dacă doriți să decriptați un fișier, cum ar fi un cookie sau ceva de genul acesta? Când atacați printr-o adresă URL, puteți obține răspunsuri precum starea 200 și 500 de răspunsuri înapoi de la server. Cu toate acestea, dacă este doar un fișier de pe computer pe care încercați să îl decriptați, atunci ce ar acționa ca server? Din câte știu, dacă este doar un fișier, atunci nu există niciun server care să vă ofere răspunsuri sau erori „badPaddingException” sau ceva de genul acesta.Aceasta înseamnă, de asemenea, că nu există un server care să cunoască de fapt octeții intermediari care au fost utilizați în criptare. Cum, atunci, ați proceda la decriptarea unui fișier (spre deosebire de o adresă URL) folosind metoda de atac cu padding oracle?

bk2204 avatar
drapel fr
Locația IV-ului depinde de modul în care este serializat textul cifrat. De obicei, este doar antepusă, dar uneori este serializat diferit sau IV-ul este generat folosind o funcție de derivare a cheilor și nu poate fi controlat deloc.
Rikudou avatar
drapel uz
@bk2204 Vă mulțumesc pentru acest răspuns. Mai mult, știți cum s-ar putea folosi un atac de padding oracle pentru a decripta ceva precum un fișier sau un cookie (sau ceva care nu este într-o adresă URL)? Nu știu exact cum s-ar folosi această metodă pe un fișier când un fișier simplu de pe computerul tău nu are un server care să-ți trimită o stare de răspuns înapoi.
drapel et
@Rikudou pentru utilizarea unui atac de oracol de umplutură, aveți nevoie de un oracol de umplutură care să răspundă liber la întrebări despre dacă un mesaj este corect sau nu.Dacă nu aveți un oracol de umplutură, nu puteți face un atac de oracol de umplutură. Într-o adresă URL, serverul web care răspunde la adresa URL este oracolul de umplutură.

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.