
PoC per Dirty COW (CVE-2016-5195)
PoC per Dirty COW (CVE-2016-5195).
Questo PoC si basa su ptrace (invece di /proc/self/mem) per patchare la vDSO. Ha
alcuni vantaggi rispetto ai PoC che modificano i binari del filesystem:
E alcuni svantaggi:
Il payload attuale è quasi lo stesso di
The Sea Watcher e viene eseguito
ogni volta che un processo effettua una chiamata a clock_gettime(). Se il processo ha
privilegi di root e /tmp/.x non esiste, genera un fork, crea /tmp/.x e infine
crea una reverse shell TCP verso l'exploit. Non è elegante, ma potrebbe essere
usato per l'evasione dal container.
Rilevare se la vDSO è stata patchata con successo non è infallibile. Durante il passaggio di restore, la vDSO viene effettivamente ripristinata, ma l'exploit non riesce a segnalarlo correttamente. Infatti, le modifiche alla vDSO non sembrano influenzare il processo dell'exploit.