
CVE-2020-27786을 위한 리눅스 커널 익스플로잇: userfaultd 경쟁 조건을 이용하여 use-after-free를 유발하고, msg_msg를 통해 커널 주소를 유출하며, modprobe_path를 덮어써서 루트 권한 상승을 달성합니다.
전체 상세 정보와 설명은 여기에서 확인할 수 있습니다: https://1day.dev/notes/Linux-Kernel-n-day-exploit-development
이 취약점은 쓰기 Use-After-Free를 발생시키는 경쟁 조건(Race Condition)입니다. 경쟁 윈도우는 사용자 공간에서 페이지 폴트를 처리하는 userfaultd 기법과 msg_msg를 사용하여 커널 주소를 유출하고 I/O 벡터를 사용하여 쓰기 프리미티브를 획득함으로써 확장되었습니다. 쓰기 프리미티브를 사용하여 modprobe_path 전역 변수를 덮어쓰고 루트 셸을 획득했습니다.