Domande con tag 'stack-overflow'

3
risposte

Quanto è grande una parola canarino su Linux, in genere?

Una parola canaria è una sequenza di bit posizionata al confine tra un buffer (come una pila) e controllare i dati in un programma, come un modo per rilevare e reagire ai buffer overflow. Quanti bit lunghi sono questi canarini su Linux, di...
posta 23.01.2017 - 00:38
4
risposte

Se lo stack cresce verso il basso, come può un overflow del buffer sovrascrivere il contenuto sopra la variabile?

Mi rendo conto di come funziona un overflow del buffer, ma ho un problema a capire la direzione in cui è diretto l'overflow. Pertanto, se lo stack aumenta verso il basso , significa che l'indirizzo di ritorno è sopra lo spazio riservato della...
posta 03.09.2016 - 10:45
0
risposte

Utilizzo dell'architettura del set di istruzioni (ISA) per interrompere lo stack overflow

Ho imparato a usare gli overflow dello stack per ottenere un'esecuzione arbitraria del codice, uno dei trucchi usati è la sovrascrittura dell'indirizzo di ritorno per far sì che il flusso di controllo vada nel modo desiderato. Supponendo che il...
posta 07.05.2017 - 16:47
2
risposte

Perché un attacco ret2libc deve seguire l'ordine "system (), exit (), comando?

In un attacco ret2libc, capisco che l'indirizzo di ritorno può essere sovrascritto con l'indirizzo del comando di sistema, che accetta una stringa di comando come argomento. In questo caso, l'indirizzo della stringa di comando non dovrebbe venir...
posta 12.09.2016 - 23:31
1
risposta

Come funziona lo stack del compilatore gcc guard per l'overflow dello stack?

Quando compiliamo il programma c con gcc, dobbiamo inserire l'opzione "-z execstack" per abilitare l'attacco di overflow dello stack. La domanda che voglio porre è come gcc lo implementa. Senza questa opzione, in che modo gcc protegge lo stack?...
posta 25.05.2018 - 14:30
1
risposta

L'exploit non funziona al di fuori di GDB

Ho già provato varie soluzioni fornite ad altri "exploit non funziona al di fuori delle domande gdb" (r.sh, invoke.sh, rimuovendo le variabili d'ambiente) ea questo punto non ho alcuna idea perché l'exploit non funziona (behemoth1 su wargames...
posta 04.03.2017 - 16:24
2
risposte

Come viene applicata la protezione dello stack in un binario?

Su una macchina Linux con una CPU Intel, diciamo che sono stato compilato da binary con -fstack-protect-all. Come è codificato nel file binario? (Posso vedere queste informazioni usando readelf?). È codificato in ogni pagina / segmento o è...
posta 03.05.2017 - 00:52
2
risposte

Indirizzi cablati e relativi nello shellcode

Questa domanda è principalmente nel contesto dell'esecuzione di comandi arbitrari in un overflow del buffer (ad es. stack). Recentemente ho letto da qualche parte che gli indirizzi (assoluti) cablati sono non buoni per lo shellcode, ad es....
posta 18.05.2017 - 11:58
1
risposta

Smashing stack in x86_64

Lo sfruttamento di funzioni come strcpy() dipende dal fatto che la stringa del payload non deve contenere zero byte che potrebbero terminare la funzione di copia. Se il payload contiene indirizzi x86_64 (ad es. Per sovrascrivere un indirizz...
posta 19.06.2018 - 12:56
2
risposte

C - Semplice sfruttamento dell'overflow del buffer, in che modo l'EIP viene sovrascritto in diverse funzioni di chiamata di tipo?

Sfondo generale: Ho scritto un server di eco cercando di implementare un esempio di BoF in C che utilizza una chiamata di funzione strcpy () come tale: // .... including the corresponding libraries depending on host environment #include <...
posta 21.03.2018 - 07:09