{"uuid": "c83458f8-a66b-4820-b791-3987b067fbed", "vulnerability_lookup_origin": "1a89b78e-f703-45f3-bb86-59eb712668bd", "author": "9f56dd64-161d-43a6-b9c3-555944290a09", "vulnerability": "CVE-2025-38352", "type": "exploited", "source": "https://t.me/purp_sec/1388", "content": "\ud83d\udcdd Race Condition UAF \u0432 \u044f\u0434\u0440\u0435 Linux (CVE-2025-38352)\n\n\u041d\u0430\u0447\u0438\u043d\u0430\u0435\u043c \u043d\u0435\u0434\u0435\u043b\u044e \u0441 \u0440\u0430\u0437\u0431\u043e\u0440\u0430 \u043a\u0440\u0438\u0442\u0438\u0447\u0435\u0441\u043a\u043e\u0439 \u0443\u044f\u0437\u0432\u0438\u043c\u043e\u0441\u0442\u0438 \u0432 POSIX CPU \u0442\u0430\u0439\u043c\u0435\u0440\u0430\u0445 \u044f\u0434\u0440\u0430 Linux, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u044d\u043a\u0441\u043f\u043b\u0443\u0430\u0442\u0438\u0440\u0443\u0435\u0442\u0441\u044f in the wild.\n\n\u2b07\ufe0f \u0421\u0443\u0442\u044c \u0443\u044f\u0437\u0432\u0438\u043c\u043e\u0441\u0442\u0438\n\n\u0411\u0430\u0433 \u043d\u0430\u0445\u043e\u0434\u0438\u0442\u0441\u044f \u0432 \u0444\u0443\u043d\u043a\u0446\u0438\u0438 handle_posix_cpu_timers(). \u041e\u043d\u0430 \u043f\u0435\u0440\u0435\u043d\u043e\u0441\u0438\u0442 \u0442\u0430\u0439\u043c\u0435\u0440\u044b \u0432 \u043b\u043e\u043a\u0430\u043b\u044c\u043d\u044b\u0439 \u0441\u043f\u0438\u0441\u043e\u043a firing \u043f\u043e\u0434 tsk-&gt;sighand-&gt;siglock, \u043d\u043e \u043f\u043e\u0441\u043b\u0435 unlock_task_sighand() \u043e\u0442\u043a\u0440\u044b\u0432\u0430\u0435\u0442 \u043e\u043a\u043d\u043e \u0433\u043e\u043d\u043a\u0438 \u043d\u0430 \u044d\u0442\u0430\u043f\u0435 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0438 firing.\n\n\u0415\u0441\u043b\u0438 \u0432 \u044d\u0442\u043e \u043e\u043a\u043d\u043e (~3000\u20134000 \u043d\u0441) \u043a\u043e\u043d\u043a\u0443\u0440\u0435\u043d\u0442\u043d\u044b\u0439 \u043f\u043e\u0442\u043e\u043a \u0443\u0441\u043f\u0435\u0432\u0430\u0435\u0442 \u0440\u0438\u043f\u043d\u0443\u0442\u044c EXIT_ZOMBIE-\u0437\u0430\u0434\u0430\u0447\u0443 \u0438 \u043f\u0430\u0440\u0430\u043b\u043b\u0435\u043b\u044c\u043d\u043e \u0443\u0434\u0430\u043b\u0438\u0442\u044c \u0442\u0430\u0439\u043c\u0435\u0440, \u043e\u0431\u044a\u0435\u043a\u0442 \u0442\u0430\u0439\u043c\u0435\u0440\u0430 \u043e\u0441\u0432\u043e\u0431\u043e\u0436\u0434\u0430\u0435\u0442\u0441\u044f \u0447\u0435\u0440\u0435\u0437 RCU, \u0430 handle_posix_cpu_timers() \u043f\u0440\u043e\u0434\u043e\u043b\u0436\u0430\u0435\u0442 \u043e\u0431\u0440\u0430\u0449\u0430\u0442\u044c\u0441\u044f \u043a \u043d\u0435\u043c\u0443 \u0447\u0435\u0440\u0435\u0437 firing, \u0447\u0442\u043e \u043f\u043e \u0438\u0442\u043e\u0433\u0443 \u0438 \u0434\u0430\u0435\u0442 UAF (Use-After-Free).\n\n\u2b07\ufe0f \u041f\u0440\u0438\u043c\u0435\u0440 \u044d\u043a\u0441\u043f\u043b\u0443\u0430\u0442\u0430\u0446\u0438\u0438\n\n\u23fa \u0410\u0442\u0430\u043a\u0443\u044e\u0449\u0438\u0439 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442 ptrace \u0434\u043b\u044f \u043f\u0435\u0440\u0435\u0445\u0432\u0430\u0442\u0430 \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u0434\u043e\u0447\u0435\u0440\u043d\u0438\u043c \u043f\u043e\u0442\u043e\u043a\u043e\u043c, \u043f\u0435\u0440\u0435\u0432\u043e\u0434\u044f \u0435\u0433\u043e \u0432 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 EXIT_ZOMBIE. \u0420\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u0441\u043a\u0438\u0439 \u043f\u0440\u043e\u0446\u0435\u0441\u0441 \u043d\u0430\u043c\u0435\u0440\u0435\u043d\u043d\u043e \u0437\u0430\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0435\u0442 \u0432\u044b\u0437\u043e\u0432 waitpid(), \u043d\u0435 \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u044f \u044f\u0434\u0440\u0443 \u043e\u043a\u043e\u043d\u0447\u0430\u0442\u0435\u043b\u044c\u043d\u043e \u0443\u0434\u0430\u043b\u0438\u0442\u044c \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0443 \u0437\u0430\u0434\u0430\u0447\u0438.\n\u23fa \u041f\u0430\u0440\u0430\u043b\u043b\u0435\u043b\u044c\u043d\u043e \u0441 \u043e\u0447\u0438\u0441\u0442\u043a\u043e\u0439 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u0430 \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0435\u0442\u0441\u044f \u043a\u043e\u043d\u043a\u0443\u0440\u0438\u0440\u0443\u044e\u0449\u0438\u0439 \u0432\u044b\u0437\u043e\u0432 timer_delete().\n\u23fa \u041f\u0440\u0438 \u0432\u044b\u0437\u043e\u0432\u0435 waitpid() \u044f\u0434\u0440\u043e \u043e\u0431\u043d\u0443\u043b\u044f\u0435\u0442 \u0443\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u044c tsk-&gt;sighand. \u041a\u043e\u043d\u043a\u0443\u0440\u0438\u0440\u0443\u044e\u0449\u0438\u0439 \u0432\u044b\u0437\u043e\u0432 timer_delete() \u0441\u0447\u0438\u0442\u044b\u0432\u0430\u0435\u0442 sighand == NULL. \u042d\u0442\u043e \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 \u0432\u043e\u0441\u043f\u0440\u0438\u043d\u0438\u043c\u0430\u0435\u0442\u0441\u044f \u043a\u0430\u043a \u0441\u0438\u0433\u043d\u0430\u043b: \u0444\u0443\u043d\u043a\u0446\u0438\u044f \u043e\u0431\u0445\u043e\u0434\u0438\u0442 \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u044b\u0435 spinlocks \u0438 \u0438\u043d\u0438\u0446\u0438\u0438\u0440\u0443\u0435\u0442 \u043e\u0441\u0432\u043e\u0431\u043e\u0436\u0434\u0435\u043d\u0438\u0435 \u043f\u0430\u043c\u044f\u0442\u0438 \u0442\u0430\u0439\u043c\u0435\u0440\u0430 \u0447\u0435\u0440\u0435\u0437 \u043c\u0435\u0445\u0430\u043d\u0438\u0437\u043c RCU, \u0447\u0442\u043e \u043f\u0440\u0438\u0432\u043e\u0434\u0438\u0442 \u043a UAF.\n\n\ud83d\udcac \u041f\u043e\u0434\u0440\u043e\u0431\u043d\u043e\u0441\u0442\u0438\n\ud83d\udcac PoC\n\n#red_team #Linux #UAF #RaceCondition", "creation_timestamp": "2026-08-15T00:00:35.943628Z"}