
Dirty COW (CVE-2016-5195)에 대한 PoC
Dirty COW (CVE-2016-5195)에 대한 PoC입니다.
이 PoC는 vDSO를 패치하기 위해 /proc/self/mem 대신 ptrace에 의존합니다. 파일 시스템 바이너리를 수정하는 PoC에 비해 몇 가지 장점이 있습니다:
그리고 몇 가지 단점:
현재 페이로드는 The Sea Watcher의 것과 거의 동일하며, 프로세스가 clock_gettime()을 호출할 때마다 실행됩니다. 프로세스에 root 권한이 있고 /tmp/.x가 존재하지 않으면, fork하여 /tmp/.x를 생성하고 마지막으로 익스플로잇으로의 TCP 리버스 셸을 생성합니다. 우아하지는 않지만 컨테이너 탈출에 사용될 수 있습니다.
vDSO가 성공적으로 패치되었는지 감지하는 것은 완벽하지 않습니다. 복원 단계에서 vDSO는 실제로 복원되지만 익스플로잇이 이를 올바르게 보고하지 못합니다. 실제로 vDSO 변경은 익스플로잇 프로세스에 영향을 미치지 않는 것으로 보입니다.