āĻā§āĻāϞā§āϰ āύāĻŋāϰāĻžāĻĒāϤā§āϤāĻž āĻāĻŦā§āώāĻāϰāĻž āĻāĻžāϰā§āύā§āϞ⧠āĻāĻāĻāĻŋ āĻĻā§āϰā§āĻŦāϞāϤāĻž āĻā§āĻāĻā§ āĻĒā§āϝāĻŧā§āĻā§āύāĨ¤ Linux āĻāĻāĻāĻŋ āĻĒā§āϰāĻŋāĻāĻŋāϞā§āĻ āĻāϏāĻā§āϞā§āĻļāύ āĻāĻžāϞāύāĻžāϰā§āĻŦāĻŋāϞāĻŋāĻāĻŋ (CVE-2025-38236) āĻŦāĻŋāĻĻā§āϝāĻŽāĻžāύāĨ¤ āĻ āύā§āϝāĻžāύā§āϝ āĻŦāĻŋāώāϝāĻŧā§āϰ āĻŽāϧā§āϝā§, āĻāĻ āĻāĻžāϞāύāĻžāϰā§āĻŦāĻŋāϞāĻŋāĻāĻŋāĻāĻŋāϰ āĻŽāĻžāϧā§āϝāĻŽā§ āĻā§āĻāϞ āĻā§āϰā§āĻŽā§ āĻŦā§āϝāĻŦāĻšā§āϤ āϏā§āϝāĻžāύā§āĻĄāĻŦāĻā§āϏ āĻāĻāϏā§āϞā§āĻļāύ āĻŽā§āĻāĻžāύāĻŋāĻāĻŽāĻā§ āĻŦāĻžāĻāĻĒāĻžāϏ āĻāϰāĻž āϝāĻžāϝāĻŧ āĻāĻŦāĻ āĻā§āϰā§āĻŽā§āϰ āϏā§āϝāĻžāύā§āĻĄāĻŦāĻā§āϏāĻĄ āϰā§āύā§āĻĄāĻžāϰāĻŋāĻ āĻĒā§āϰāĻā§āϰāĻŋāϝāĻŧāĻžāϰ āĻĒā§āϰā§āĻā§āώāĻžāĻĒāĻā§ āĻā§āĻĄ āĻāĻā§āϏāĻŋāĻāĻŋāĻāĻ āĻāϰāĻžāϰ āϏāĻŽāϝāĻŧ āĻāĻžāϰā§āύā§āϞ-āϏā§āϤāϰā§āϰ āĻā§āĻĄ āĻāĻā§āϏāĻŋāĻāĻŋāĻāĻļāύ āĻ āϰā§āĻāύ āĻāϰāĻž āϏāĻŽā§āĻāĻŦ (āĻāĻĻāĻžāĻšāϰāĻŖāϏā§āĻŦāϰā§āĻĒ, āĻā§āϰā§āĻŽā§āϰ āĻ āύā§āϝ āĻā§āύ⧠āĻāĻžāϞāύāĻžāϰā§āĻŦāĻŋāϞāĻŋāĻāĻŋ āĻāĻžāĻā§ āϞāĻžāĻāĻŋāϝāĻŧā§)āĨ¤ āĻāĻ āϏāĻŽāϏā§āϝāĻžāĻāĻŋ āĻāĻžāϰā§āύā§āϞ āĻĨā§āĻā§āĻ āĻĒā§āϰāĻāĻžāĻļ āĻĒā§āϤ⧠āĻļā§āϰ⧠āĻāϰā§āĨ¤ Linux ā§Ŧ.⧝ āĻāĻŦāĻ āĻāĻžāϰā§āύā§āϞ āĻāĻĒāĻĄā§āĻā§ āϏāĻŽāĻžāϧāĻžāύ āĻāϰāĻž āĻšāϝāĻŧā§āĻā§ Linux ā§Ŧ.ā§§.ā§§ā§Ēā§Š, ā§Ŧ.ā§Ŧ.⧝ā§Ŧ, ā§Ŧ.⧧⧍.ā§Šā§Ŧ āĻāĻŦāĻ ā§Ŧ.ā§§ā§Ģ.ā§ĢāĨ¤ āĻāĻāĻāĻŋ āĻāĻā§āϏāĻĒā§āϞāϝāĻŧā§āĻ āĻĒā§āϰā§āĻā§āĻāĻžāĻāĻĒ āĻĄāĻžāĻāύāϞā§āĻĄā§āϰ āĻāύā§āϝ āĻāĻĒāϞāĻŦā§āϧ āĻāĻā§āĨ¤
āĻāĻ āĻĻā§āϰā§āĻŦāϞāϤāĻžāĻāĻŋ MSG_OOB āĻĢā§āϞā§āϝāĻžāĻā§āϰ āĻāĻāĻāĻŋ āĻŦāĻžāϏā§āϤāĻŦāĻžāϝāĻŧāύāĻāϤ āϤā§āϰā§āĻāĻŋāϰ āĻāĻžāϰāĻŖā§ āĻāĻā§, āϝāĻž AF_UNIX āϏāĻā§āĻā§āϰ āĻāύā§āϝ āϏā§āĻ āĻāϰāĻž āϝā§āϤ⧠āĻĒāĻžāϰā§āĨ¤ MSG_OOB ("āĻāĻāĻ-āĻ āĻĢ-āĻŦā§āϝāĻžāύā§āĻĄ") āĻĢā§āϞā§āϝāĻžāĻāĻāĻŋ āĻĒā§āϰā§āϰāĻŋāϤ āĻĄā§āĻāĻžāϰ āϏāĻžāĻĨā§ āĻāĻāĻāĻŋ āĻ āϤāĻŋāϰāĻŋāĻā§āϤ āĻŦāĻžāĻāĻ āϝā§āĻā§āϤ āĻāϰāĻžāϰ āϏā§āϝā§āĻ āĻĻā§āϝāĻŧ, āϝāĻž āĻĒā§āϰāĻžāĻĒāĻ āĻŦāĻžāĻāĻŋ āĻĄā§āĻāĻž āĻā§āϰāĻšāĻŖ āĻāϰāĻžāϰ āĻāĻā§āĻ āĻĒāĻĄāĻŧā§ āύāĻŋāϤ⧠āĻĒāĻžāϰā§āĨ¤ āĻāĻ āĻĢā§āϞā§āϝāĻžāĻāĻāĻŋ āĻāĻžāϰā§āύā§āϞ⧠āϝā§āĻ āĻāϰāĻž āĻšāϝāĻŧā§āĻāĻŋāϞāĨ¤ Linux āĻāϰāĻžāĻāϞā§āϰ āĻ āύā§āϰā§āϧ⧠ā§Ģ.ā§§ā§Ģ āϏāĻāϏā§āĻāϰāĻŖāĻāĻŋ āĻāύāĻž āĻšāϝāĻŧā§āĻāĻŋāϞ āĻāĻŦāĻ āĻŦā§āϝāĻžāĻĒāĻāĻāĻžāĻŦā§ āĻā§āĻšā§āϤ āύāĻž āĻšāĻāϝāĻŧāĻžāϝāĻŧ āĻāϤ āĻŦāĻāϰ āĻāĻāĻŋāĻā§ āĻŦāĻžāϤāĻŋāϞ āĻāϰāĻžāϰ āĻĒā§āϰāϏā§āϤāĻžāĻŦ āĻāϰāĻž āĻšāϝāĻŧā§āĻāĻŋāϞāĨ¤
Chrome āĻāϰ āϏā§āϝāĻžāύā§āĻĄāĻŦāĻā§āϏ āĻŦāĻžāϏā§āϤāĻŦāĻžāϝāĻŧāύ UNIX āϏāĻā§āĻ āĻ
āĻĒāĻžāϰā§āĻļāύ āĻāĻŦāĻ send()/recv() āϏāĻŋāϏā§āĻā§āĻŽ āĻāϞāĻā§āϞāĻŋāĻā§ āĻ
āύā§āĻŽāϤāĻŋ āĻĻā§āϝāĻŧ āϝā§āĻāĻžāύ⧠MSG_OOB āĻĢā§āϞā§āϝāĻžāĻāĻāĻŋ āĻ
āύā§āϝāĻžāύā§āϝ āĻŦāĻŋāĻāϞā§āĻĒāĻā§āϞāĻŋāϰ āϏāĻžāĻĨā§ āĻ
āύā§āĻŽā§āĻĻāĻŋāϤ āĻāĻŋāϞ āĻāĻŦāĻ āĻāϞāĻžāĻĻāĻžāĻāĻžāĻŦā§ āĻĢāĻŋāϞā§āĻāĻžāϰ āĻāϰāĻž āĻšāϝāĻŧāύāĻŋāĨ¤ MSG_OOB āĻŦāĻžāϏā§āϤāĻŦāĻžāϝāĻŧāύ⧠āĻāĻāĻāĻŋ āĻŦāĻžāĻ āϏāĻŋāϏā§āĻā§āĻŽ āĻāϞāĻā§āϞāĻŋāϰ āĻāĻāĻāĻŋ āύāĻŋāϰā§āĻĻāĻŋāώā§āĻ āĻā§āϰāĻŽ āϏāĻŽā§āĻĒāĻžāĻĻāύ āĻāϰāĻžāϰ āĻĒāϰ⧠āĻāĻāĻāĻŋ āĻŦā§āϝāĻŦāĻšāĻžāϰ-āĻĒāϰāĻŦāϰā§āϤā§-āĻŽā§āĻā§āϤ āĻ
āĻŦāϏā§āĻĨāĻž āĻĻā§āĻāĻž āĻĻā§āĻāϝāĻŧāĻžāϰ āĻ
āύā§āĻŽāϤāĻŋ āĻĻā§āϝāĻŧ: char dummy; int socks[2]; socketpair(AF_UNIX, SOCK_STREAM, 0, socks); send(socks[1], "A", 1, MSG_OOB); recv(socks[0], &dummy, 1, MSG_OOB); send(socks[1], "A", 1, MSG_OOB); recv(socks[0], &dummy, 1, MSG_OOB); send(socks[1], "A", 1, MSG_OOB); recv(socks[0], &dummy, 1, MSG_OOB); recv(socks[0], &dummy, 0, 1); recv(āĻŽā§āĻāĻž[XNUMX], &āĻĄāĻžāĻŽāĻŋ, XNUMX, MSG_OOB);
āĻāϤā§āϏ: opennet.ru
