Skip to main content

Global Offset Table Overwrite

Les vulnérabilités de type Global Offset Table (GOT) Overwrite se présentent comme des failles de type foramt strings.

┌──(arthur㉿LAPTOP-KSNUF8N7)-[~/case]
└─$ checksec --file=pwn108-1644300489260.pwn108
RELRO           STACK CANARY      NX            PIE             RPATH      RUNPATH      Symbols         FORTIFY Fortified       Fortifiable     FILE
Partial RELRO   Canary found      NX enabled    No PIE          No RPATH   No RUNPATH   49 Symbols        No    0               2               pwn108-1644300489260.pwn108

Elles sont a priori exploitable grace au "Partial RELRO".

Le principe de l'attaque est d'écrire dans la mémoire ce que nous souhaitons. Cela est rendu possible par le format specifier %n dans les fonctions telles que printf qui permet d'écrire de la donnée dans la mémoire en précisant l'adresse à laquelle écrire la donnée.