È praticamente la prima volta che utilizzo un exploit di buffer overflow. Ho scritto un semplice programma C vulnerabile ai buffer overflow:
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
void main()
{
char*...
Il seguente codice fa parte di un programma che viene generato ad ogni richiesta dallo script ruby on rails di nginx:
static void time_t_to_dos_time(time_t user_supplied_time_t, int *dos_date, int *dos_time)
{
struct tm *t = localtime(&...
Sto provando a sfruttare un file binario che ho accesso al codice sorgente.
int flag = 0;
int main() {
char buf[0x50];
puts("Who are you? ");
printf("> ");
fgets(buf, 0x50, stdin);
printf(buf);
if (flag == 1337) {...
Vedo che c'è un numero crescente di PC forniti con TPM basato su firmware (fTPM), ad es. Intel NUC .
Per quanto ho capito, queste soluzioni emulano praticamente un chip TPM usando le istruzioni speciali della CPU ( ARM TrustZone o Intel SG...
La maggior parte delle tecniche di difesa contro ROP ruota attorno alla randomizzazione, come ASLR .
Se contrassegno tutte le regioni di memoria, ad eccezione del segmento di codice, non eseguibile, questo annullerà ROP?
A scuola mi è stato assegnato un compito per eseguire un buffer overflow, che eseguiva alcuni shellcode e apriva una nuova shell. Dopo un po 'di giocherellando, l'overflow del buffer è riuscito, e quando ho eseguito l'exploit in GDB dice che il...
Ho sentito che questo può davvero velocizzare le prestazioni di crittografia, ma non riesco a trovare alcuna informazione valida su come implementarlo.
Per i miei studi cerco di creare un payload in modo tale che trabocchi il buffer e invochi una funzione "segreta" chiamata "target"
Questo è il codice che uso per testare su un i686
#include "stdio.h"
#include "string.h"
void target() {
p...
Quindi sto provando a scrivere un buffer overflow per un'applicazione server vulnerabile consapevolmente, voglio imparare come farlo da solo e voglio solo un po 'di direzione.
Lo sto guardando in un debugger di immunità sul server e ho il con...
Nei sistemi x86, ci sono tre requisiti per un attacco di iniezione di codice che funzioni:
scrive il carico utile di attacco in memoria
il carico utile di attacco è eseguibile
devia il controllo del flusso sul payload
Come possiamo im...