Descrivere il funzionamento di un attacco basato su “Buffer Overflow”
Un attacco basato su buffer overflow sfrutta il riempimento del buffer con lo scopo di accedere a zone della memoria critiche per i programmi. I programmi vulnerabili a buffer overflow sono programmi che non allocano il buffer in maniera appropriata e che lasciano la potenziale possibilità all'utente di riempierlo quanto vuole.
Funzioni in C vulnerabili a questo tipo di attacco sono: gets()
, strcpy()
.
Un attaccante con buone conoscenza delle convenzioni di chiamata dell'architettura target, potrebbe riempire il buffer con lo scopo di modificare il valore di altre variabili, o addirittura dell'indirizzo di ritorno con il fine di far eseguire codice arbitrario.
Dimostrare che, se X|Y e X|Z, allora X|(iY+jZ) per ogni intero i,j
Se
La stessa cosa la si può dire di
Il che vuol dire che
Riporto di seguito la dimostrazione del professore, ma la dimostrazione sopra è corretta
Se
Se
Spiegare il funzionamento e lo scopo della “Anti-replay window” in una VPN con IPSEC
L'anti-replay window è un elemento utilizzato da IPsec per evitare attacchi di duplicazione reply attack.
L'anti-replay window consente al ricevente IPsec di non ricevere pacchetti duplicati, questo scopo viene raggiunto attraverso i numeri di sequenza.
La finestra del ricevente IPsec ha una certa dimensione.
I pacchetti ricevuti dal destinatario IPsec possono avere: