Perché 0x41414141 è associato agli exploit di sicurezza?

20

Questo articolo e questa ricerca suggerisce che la parola 0x41414141 a 32 bit sia associata agli exploit di sicurezza.

Perché 0x41414141 è associato a exploit di sicurezza?

    
posta Randomblue 15.08.2012 - 00:56
fonte

2 risposte

38

Non è niente di fondamentale. È solo una convenzione storica, come usare foo come nome di una variabile quando non hai idea di cosa chiamarla.

Più in dettaglio: il modo più semplice per verificare l'overflow del buffer consiste nel digitare una lunga stringa di A (AAAAAAAA ...) in un campo di testo e vedere cosa succede. Se il programma si blocca, potrebbe essere vulnerabile. Se il programma si arresta in modo anomalo e un debugger mostra 0x41414141 nel contatore del programma, ooh boy, si colpisce lo stipendio: il programma è quasi sicuramente vulnerabile. (Ricorda, il codice ASCII per 'A' è 0x41 in esadecimale, quindi 0x41414141 è ciò che vedresti se guardassi la rappresentazione a livello di byte di una stringa di A in un editor esadecimale.)

Perché A's? Nessuna ragione sono solo la prima lettera dell'alfabeto.

Quindi, questo è un test rapido e sporco che a volte i pentesters usano. Ma ovviamente non c'è niente di speciale su 0x41414141. I fan di Douglas Adams possono digitare una lunga stringa di B, quindi cercare 0x42424242. Sarebbe ugualmente efficace e persino più divertente. Devo ricordarmi di usarlo nella mia prossima demo di hacking .....

    
risposta data 15.08.2012 - 03:32
fonte
4

È più associato alla semplice dimostrazione di concetti. 0x41414141 è solitamente il risultato quando una stringa (solitamente lunga) di A viene utilizzata per dimostrare un overflow (o qualcosa di simile).

    
risposta data 15.08.2012 - 01:15
fonte

Leggi altre domande sui tag