рд▓рд┐рдирдХреНрд╕ рдХрд░реНрдиреЗрд▓рдорд╛ рдХрдордЬреЛрд░реА рдЬрд╕рд▓реЗ рдкрдвреНрдиреЗ рдорд╛рддреНрд░ рдлрд╛рдЗрд▓рд╣рд░реВ рднреНрд░рд╖реНрдЯ рд╣реБрди рдЕрдиреБрдорддрд┐ рджрд┐рдиреНрдЫ

рд▓рд┐рдирдХреНрд╕ рдХрд░реНрдиреЗрд▓ (CVE-2022-0847) рдорд╛ рдПрдЙрдЯрд╛ рдХрдордЬреЛрд░реА рдкрд╣рд┐рдЪрд╛рди рдЧрд░рд┐рдПрдХреЛ рдЫ рдЬрд╕рд▓реЗ рдкреГрд╖реНрда рдХреНрдпрд╛рд╕рдХрд╛ рд╕рд╛рдордЧреНрд░реАрд╣рд░реВрд▓рд╛рдИ рдкрдвреНрдиреЗ-рдорд╛рддреНрд░ рдореЛрдбрдорд╛ рднрдПрдХрд╛, O_RDONLY рдлреНрд▓реНрдпрд╛рдЧрд╕рдБрдЧ рдЦреЛрд▓рд┐рдПрдХреЛ рд╡рд╛ рдлрд╛рдЗрд▓ рдкреНрд░рдгрд╛рд▓реАрд╣рд░реВрдорд╛ рдЕрд╡рд╕реНрдерд┐рдд рдХреБрдиреИ рдкрдирд┐ рдлрд╛рдЗрд▓рд╣рд░реВрдХреЛ рд▓рд╛рдЧрд┐ рдЕрдзрд┐рд▓реЗрдЦрди рдЧрд░реНрди рдЕрдиреБрдорддрд┐ рджрд┐рдиреНрдЫред рдкрдвреНрдиреЗ рдорд╛рддреНрд░ рдореЛрдбрдорд╛ рдорд╛рдЙрдиреНрдЯ рдЧрд░рд┐рдпреЛред рд╡реНрдпрд╛рд╡рд╣рд╛рд░рд┐рдХ рд╕рд░реНрддрд╣рд░реВрдорд╛, рдХрдордЬреЛрд░реАрд▓рд╛рдИ рд╕реНрд╡реЗрдЪреНрдЫрд╛рдЪрд╛рд░реА рдкреНрд░рдХреНрд░рд┐рдпрд╛рд╣рд░реВрдорд╛ рд╡рд╛ рдЦреЛрд▓рд┐рдПрдХрд╛ рдлрд╛рдЗрд▓рд╣рд░реВрдорд╛ рднреНрд░рд╖реНрдЯ рдбрд╛рдЯрд╛рдорд╛ рдХреЛрдб рдЗрдиреНрдЬреЗрдХреНрдЯ рдЧрд░реНрди рдкреНрд░рдпреЛрдЧ рдЧрд░реНрди рд╕рдХрд┐рдиреНрдЫред рдЙрджрд╛рд╣рд░рдг рдХреЛ рд▓рд╛рдЧреА, рддрдкрд╛рдЗрдБ sshd рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЛ рд▓рд╛рдЧреА authorized_keys рдлрд╛рдЗрд▓ рдХреЛ рд╕рд╛рдордЧреНрд░реА рдкрд░рд┐рд╡рд░реНрддрди рдЧрд░реНрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫред рд╢реЛрд╖рдг рдХреЛ рдПрдХ рдкреНрд░реЛрдЯреЛрдЯрд╛рдЗрдк рдкрд░реАрдХреНрд╖рдг рдХреЛ рд▓рд╛рдЧреА рдЙрдкрд▓рдмреНрдз рдЫред

рд╕рдорд╕реНрдпрд╛рдХреЛ рдХреЛрдбрдиреЗрдо рдбрд░реНрдЯреА рдкрд╛рдЗрдк рд░рд╛рдЦрд┐рдПрдХреЛ рдЫ, рдЬреБрди 2016 рдорд╛ рдкрд╣рд┐рдЪрд╛рди рдЧрд░рд┐рдПрдХреЛ рдЧрдореНрднреАрд░ рдЬреЛрдЦрд┐рдо рдбрд░реНрдЯреА COW рдЬрд╕реНрддреИ рд╣реЛред рдпреЛ рдиреЛрдЯ рдЧрд░рд┐рдПрдХреЛ рдЫ рдХрд┐ рдЦрддрд░рд╛ рд╕реНрддрд░рдХреЛ рд╕рдиреНрджрд░реНрднрдорд╛, рдбрд░реНрдЯреА рдкрд╛рдЗрдк рдбрд░реНрдЯреА рдХрд╛рдЙ рдЬрд╕реНрддреИ рд╕реНрддрд░рдорд╛ рдЫ, рддрд░ рд╕рдЮреНрдЪрд╛рд▓рди рдЧрд░реНрди рдзреЗрд░реИ рд╕рдЬрд┐рд▓реЛ рдЫред рд▓рдЧ рд╕рд░реНрднрд░рдмрд╛рдЯ рд╕рдВрдХреБрдЪрд┐рдд рдЕрднрд┐рд▓реЗрдЦрд╣рд░реВ рдбрд╛рдЙрдирд▓реЛрдб рдЧрд░реНрдиреЗ рдкреНрд░рдгрд╛рд▓реАрдорд╛ рдиреЗрдЯрд╡рд░реНрдХрдорд╛ рдбрд╛рдЙрдирд▓реЛрдб рдЧрд░рд┐рдПрдХрд╛ рдлрд╛рдЗрд▓рд╣рд░реВрдХреЛ рдЖрд╡рдзрд┐рдХ рднреНрд░рд╖реНрдЯрд╛рдЪрд╛рд░рдХреЛ рдмрд╛рд░реЗрдорд╛ рдЙрдЬреБрд░реАрд╣рд░реВрдХреЛ рд╡рд┐рд╢реНрд▓реЗрд╖рдгрдХреЛ рдХреНрд░рдордорд╛ рдЬреЛрдЦрд┐рдо рдкрд╣рд┐рдЪрд╛рди рдЧрд░рд┐рдПрдХреЛ рдерд┐рдпреЛ (рд▓реЛрдб рдЧрд░рд┐рдПрдХреЛ рдкреНрд░рдгрд╛рд▓реАрдорд╛ 37 рдорд╣рд┐рдирд╛рдорд╛ 3 рднреНрд░рд╖реНрдЯрд╛рдЪрд╛рд░рд╣рд░реВ), рдЬрд╕рдХреЛ рддрдпрд╛рд░реАрдорд╛ splice() рд╕рдЮреНрдЪрд╛рд▓рди рдкреНрд░рдпреЛрдЧ рдЧрд░рд┐рдпреЛред рд░ рдЕрдЬреНрдЮрд╛рдд рдкрд╛рдЗрдкрд╣рд░реВред

рдЕрдЧрд╕реНрдЯ реирежреиреж рдорд╛ рдЬрд╛рд░реА рднрдПрдХреЛ рд▓рд┐рдирдХреНрд╕ рдХрд░реНрдиреЗрд▓ рел.рео рдмрд╛рдЯ рд╕реБрд░реБ рд╣реБрдиреЗ рдЬреЛрдЦрд┐рдо рджреЗрдЦрд┐рдиреНрдЫред рдбреЗрдмрд┐рдпрди 5.8 рдорд╛ рдЙрдкрд╕реНрдерд┐рдд рдЫ, рддрд░ Ubuntu 2020 LTS рдорд╛ рдЖрдзрд╛рд░ рдХрд░реНрдиреЗрд▓рд▓рд╛рдИ рдЕрд╕рд░ рдЧрд░реНрджреИрдиред RHEL 11.x рд░ openSUSE/SUSE 20.04 рдХрд░реНрдиреЗрд▓рд╣рд░реВ рд╕реБрд░реБрдорд╛ рдкреБрд░рд╛рдирд╛ рд╢рд╛рдЦрд╛рд╣рд░реВрдорд╛ рдЖрдзрд╛рд░рд┐рдд рд╣реБрдиреНрдЫрдиреН, рддрд░ рдпреЛ рд╕рдореНрднрд╡ рдЫ рдХрд┐ рд╕рдорд╕реНрдпрд╛ рдирд┐рдореНрддреНрдпрд╛рдЙрдиреЗ рдкрд░рд┐рд╡рд░реНрддрди рддрд┐рдиреАрд╣рд░реВрдорд╛ рдмреНрдпрд╛рдХрдкреЛрд░реНрдЯ рдЧрд░рд┐рдПрдХреЛ рдерд┐рдпреЛ (рдЕрд╣рд┐рд▓реЗрд╕рдореНрдо рдХреБрдиреИ рд╕рдЯреАрдХ рдбрд╛рдЯрд╛ рдЫреИрди)ред рддрдкрд╛рдИрдВрд▓реЗ рдпреА рдкреГрд╖реНрдард╣рд░реВрдорд╛ рд╡рд┐рддрд░рдгрдорд╛ рдкреНрдпрд╛рдХреЗрдЬ рдЕрджреНрдпрд╛рд╡рдзрд┐рдХрд╣рд░реВрдХреЛ рдкреНрд░рдХрд╛рд╢рди рдЯреНрд░реНрдпрд╛рдХ рдЧрд░реНрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫ: Debian, SUSE, Ubuntu, RHEL, Fedora, Gentoo, Arch Linuxред рд╡рд┐рдЬреНрдЮрдкреНрддрд┐ 8, 15 рд░ 5.16.11 рдорд╛ рдЬреЛрдЦрд┐рдордХреЛ рд▓рд╛рдЧрд┐ рд╕рдорд╛рдзрд╛рди рдкреНрд░рд╕реНрддрд╛рд╡ рдЧрд░рд┐рдПрдХреЛ рдерд┐рдпреЛред рдПрдиреНрдбреНрд░реЛрдЗрдб рдкреНрд▓реЗрдЯрдлрд░реНрдордорд╛ рдкреНрд░рдпреЛрдЧ рд╣реБрдиреЗ рдХрд░реНрдиреЗрд▓рдорд╛ рдлрд┐рдХреНрд╕ рдкрдирд┐ рд╕рдорд╛рд╡реЗрд╢ рдЧрд░рд┐рдПрдХреЛ рдЫред

рд╕рдВрд░рдЪрдирд╛ рдмрд╛рдБрдбрдлрд╛рдБрдб рдЧрд░реНрджрд╛ рд░ рдХреЗрд╣рд┐ рд╣реЗрд░рдлреЗрд░рдХреЛ рд╕рдордпрдорд╛ рдореЗрдореЛрд░реА рдЦрд╛рд▓реА рдирдЧрд░рд┐рдПрдХреЛ рддрдереНрдпрдХреЛ рдмрд╛рд╡рдЬреБрдж, рдкреНрд░рдХрд╛рд░реНрдпрд╣рд░реВ copy_page_to_iter_pipe() рд░ push_pipe() рдХреЛ рдХреЛрдбрдорд╛ "buf-> рдЭрдгреНрдбрд╛" рдорд╛рдирдХреЛ рдкреНрд░рд╛рд░рдореНрднрд┐рдХрддрд╛рдХреЛ рдХрдореАрдХреЛ рдХрд╛рд░рдгрд▓реЗ рдЧрд░реНрджрд╛ рдХрдордЬреЛрд░реА рдЙрддреНрдкрдиреНрди рд╣реБрдиреНрдЫред рдЕрдЬреНрдЮрд╛рдд рдкрд╛рдЗрдкрд╣рд░реВ, рдЕрд░реНрдХреЛ рд╕рдЮреНрдЪрд╛рд▓рдирдмрд╛рдЯ рдорд╛рдиред рдпреЛ рд╕реБрд╡рд┐рдзрд╛ рдкреНрд░рдпреЛрдЧ рдЧрд░реЗрд░, рдПрдХ рд╡рд┐рд╢реЗрд╖рд╛рдзрд┐рдХрд╛рд░ рдирднрдПрдХреЛ рд╕реНрдерд╛рдиреАрдп рдкреНрд░рдпреЛрдЧрдХрд░реНрддрд╛рд▓реЗ рдлреНрд▓реНрдпрд╛рдЧрдорд╛ PIPE_BUF_FLAG_CAN_MERGE рдорд╛рдирдХреЛ рдЙрдкрд╕реНрдерд┐рддрд┐ рдкреНрд░рд╛рдкреНрдд рдЧрд░реНрди рд╕рдХреНрдЫ, рдЬрд╕рд▓реЗ рддрдкрд╛рдИрдВрд▓рд╛рдИ рдкреГрд╖реНрдардХреЛ рдХреНрдпрд╛рд╕рдорд╛ рдбрд╛рдЯрд╛рдХреЛ рдЕрдзрд┐рд▓реЗрдЦрдирд▓рд╛рдИ рд╡реНрдпрд╡рд╕реНрдерд┐рдд рдЧрд░реНрди рдЕрдиреБрдорддрд┐ рджрд┐рдиреНрдЫ рд╡рд┐рд╢реЗрд╖ рд░реВрдкрдорд╛ рддрдпрд╛рд░ рдЧрд░рд┐рдПрдХреЛ рдЕрдЬреНрдЮрд╛рдд рдкрд╛рдЗрдкрдорд╛ рдирдпрд╛рдБ рдбрд╛рдЯрд╛ рд▓реЗрдЦреЗрд░ред

рдЖрдХреНрд░рдордгрдХреЛ рд▓рд╛рдЧрд┐, рд▓рдХреНрд╖реНрдп рдлрд╛рдЗрд▓ рдкрдвреНрди рдпреЛрдЧреНрдп рд╣реБрдиреБрдкрд░реНрдЫ, рд░ рдкрд╛рдЗрдкрдорд╛ рд▓реЗрдЦреНрджрд╛ рдкрд╣реБрдБрдЪ рдЕрдзрд┐рдХрд╛рд░ рдЬрд╛рдБрдЪ рдирдЧрд░рд┐рдПрдХреЛ рд╣реБрдирд╛рд▓реЗ, рдкреГрд╖реНрда рдХреНрдпрд╛рд╕рдорд╛ рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрди рдкрдирд┐ рдкрдвреНрдиреЗ-рдорд╛рддреНрд░ рдорд╛рдЙрдиреНрдЯ рдЧрд░рд┐рдПрдХрд╛ рд╡рд┐рднрд╛рдЬрдирд╣рд░реВрдорд╛ рдЕрд╡рд╕реНрдерд┐рдд рдлрд╛рдЗрд▓рд╣рд░реВрдХреЛ рд▓рд╛рдЧрд┐ рдЧрд░реНрди рд╕рдХрд┐рдиреНрдЫ (рдЙрджрд╛рд╣рд░рдгрдХрд╛ рд▓рд╛рдЧрд┐, рдлрд╛рдЗрд▓рд╣рд░реВ c CD-рдХрд╛ рд▓рд╛рдЧрд┐ред рд░реЛрдо)ред рдкреГрд╖реНрда рдХреНрдпрд╛рд╕рдорд╛ рдЬрд╛рдирдХрд╛рд░реА рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрди рдЧрд░реЗрдкрдЫрд┐, рдлрд╛рдЗрд▓рдмрд╛рдЯ рдбрд╛рдЯрд╛ рдкрдвреНрджрд╛, рдкреНрд░рдХреНрд░рд┐рдпрд╛рд▓реЗ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдбрд╛рдЯрд╛ рд╣реЛрдЗрди, рддрд░ рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрд┐рдд рдбрд╛рдЯрд╛ рдкреНрд░рд╛рдкреНрдд рдЧрд░реНрдиреЗрдЫред

PIPE_BUF_FLAG_CAN_MERGE рдЭрдгреНрдбрд╛ рдпрд╕рд╕рдБрдЧ рд╕рдореНрдмрдиреНрдзрд┐рдд рд╕рдмреИ рдШрдгреНрдЯреА рд╕рдВрд░рдЪрдирд╛рд╣рд░реВрдорд╛ рд╕реЗрдЯ рдЧрд░рд┐рдПрдХреЛ рдЫ рднрдиреА рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдЧрд░реНрдирдХреЛ рд▓рд╛рдЧрд┐ рдПрдЙрдЯрд╛ рдмреЗрдирд╛рдо рдЪреНрдпрд╛рдирд▓ рд╕рд┐рд░реНрдЬрдирд╛ рдЧрд░реНрди рд░ рдпрд╕рд▓рд╛рдИ рдордирдорд╛рдиреА рдбреЗрдЯрд╛ рднрд░реНрдирдХреЛ рд▓рд╛рдЧрд┐ рд╕рдЮреНрдЪрд╛рд▓рди рддрд▓ рдЖрдЙрдБрдЫред рдЕрд░реНрдХреЛ, рдбреЗрдЯрд╛ рдЪреНрдпрд╛рдирд▓рдмрд╛рдЯ рдкрдврд┐рдиреНрдЫ, рддрд░ рдЭрдгреНрдбрд╛ pipe_buffer рд╕рдВрд░рдЪрдирд╛рдХреЛ рд╕рдмреИ рдЙрджрд╛рд╣рд░рдгрд╣рд░реВрдорд╛ pipe_inode_info рд░рд┐рдВрдЧ рд╕рдВрд░рдЪрдирд╛рд╣рд░реВрдорд╛ рд╕реЗрдЯ рд░рд╣рдиреНрдЫред splice() рд▓рд╛рдИ рдХрд▓ рдЧрд░реНрдиреБрд╣реЛрд╕реН рддреНрдпрд╕рдкрдЫрд┐ рд▓рдХреНрд╖рд┐рдд рдлрд╛рдЗрд▓рдмрд╛рдЯ рдбреЗрдЯрд╛ рдкрдвреНрдирдХреЛ рд▓рд╛рдЧрд┐ рдЕрдЬреНрдЮрд╛рдд рдкрд╛рдЗрдкрдорд╛, рдЗрдЪреНрдЫрд┐рдд рдЕрдлрд╕реЗрдЯрдмрд╛рдЯ рд╕реБрд░реБ рд╣реБрдиреНрдЫред рдпреЛ рдЕрдЬреНрдЮрд╛рдд рдкрд╛рдЗрдкрдорд╛ рдбрд╛рдЯрд╛ рд▓реЗрдЦреНрджрд╛, PIPE_BUF_FLAG_CAN_MERGE рдлреНрд▓реНрдпрд╛рдЧ рд╕реЗрдЯ рдЧрд░рд┐рдБрджреИ рдЧрд░реНрджрд╛, рдкрд╛рдЗрдк_рдмрдлрд░ рд╕рдВрд░рдЪрдирд╛рдХреЛ рдирдпрд╛рдБ рдЙрджрд╛рд╣рд░рдг рд╕рд┐рд░реНрдЬрдирд╛ рдЧрд░реНрдиреБрдХреЛ рд╕рдЯреНрдЯрд╛ рдкреГрд╖реНрда рдХреНрдпрд╛рд╕рдорд╛ рдбрд╛рдЯрд╛ рдЕрдзрд┐рд▓реЗрдЦрди рд╣реБрдиреЗрдЫред

рд╕реНрд░реЛрдд: opennet.ru

рдПрдХ рдЯрд┐рдкреНрдкрдгреА рдердкреНрди