Linux เช•เชฐเซเชจเชฒ VFS เชจเชฌเชณเชพเชˆ เชตเชฟเชถเซ‡เชทเชพเชงเชฟเช•เชพเชฐ เชตเชงเชพเชฐเชตเชพเชจเซ€ เชฎเช‚เชœเซ‚เชฐเซ€ เช†เชชเซ‡ เช›เซ‡

Linux เช•เชฐเซเชจเชฒ เชฆเซเชตเชพเชฐเชพ เชชเซ‚เชฐเซ€ เชชเชพเชกเชตเชพเชฎเชพเช‚ เช†เชตเซ‡เชฒ เชซเชพเช‡เชฒเชธเชฟเชธเซเชŸเชฎ เชธเช‚เชฆเชฐเซเชญ API เชฎเชพเช‚ เชจเชฌเชณเชพเชˆ (CVE-2022-0185) เช“เชณเช–เชตเชพเชฎเชพเช‚ เช†เชตเซ€ เช›เซ‡ เชœเซ‡ เชธเซเชฅเชพเชจเชฟเช• เชตเชชเชฐเชพเชถเช•เชฐเซเชคเชพเชจเซ‡ เชธเชฟเชธเซเชŸเชฎ เชชเชฐ เชฐเซ‚เชŸ เชตเชฟเชถเซ‡เชทเชพเชงเชฟเช•เชพเชฐเซ‹ เชฎเซ‡เชณเชตเชตเชพเชจเซ€ เชฎเช‚เชœเซ‚เชฐเซ€ เช†เชชเซ€ เชถเช•เซ‡ เช›เซ‡. เชธเช‚เชถเซ‹เชงเช• เช•เซ‡ เชœเซ‡เชฎเชฃเซ‡ เชธเชฎเชธเซเชฏเชพเชจเซ‡ เช“เชณเช–เซ€ เช›เซ‡ เชคเซ‡เชฃเซ‡ เชถเซ‹เชทเชฃเชจเซ‹ เชกเซ‡เชฎเซ‹ เชชเซเชฐเช•เชพเชถเชฟเชค เช•เชฐเซเชฏเซ‹ เช›เซ‡ เชœเซ‡ เช•เซ‹เชกเชจเซ‡ เชกเชฟเชซเซ‹เชฒเซเชŸ เชฐเซ‚เชชเชฐเซ‡เช–เชพเช‚เช•เชจเชฎเชพเช‚ เช‰เชฌเซเชจเซเชŸเซ 20.04 เชชเชฐ เชฐเซ‚เชŸ เชคเชฐเซ€เช•เซ‡ เชšเชฒเชพเชตเชตเชพเชจเซ€ เชฎเช‚เชœเซ‚เชฐเซ€ เช†เชชเซ‡ เช›เซ‡. เชกเชฟเชธเซเชŸเซเชฐเชฟเชฌเซเชฏเซเชถเชจ เชฆเซเชตเชพเชฐเชพ เชจเชฌเชณเชพเชˆเชจเซ‡ เช เซ€เช• เช•เชฐเชคเซเช‚ เช…เชชเชกเซ‡เชŸ เชฌเชนเชพเชฐ เชชเชพเชกเซเชฏเชพ เชชเช›เซ€, เชเช•เซเชธเชชเซเชฒเซ‹เชˆเชŸ เช•เซ‹เชก เชเช• เช…เช เชตเชพเชกเชฟเชฏเชพเชจเซ€ เช…เช‚เชฆเชฐ เช—เชฟเชŸเชนเชฌ เชชเชฐ เชชเซเชฐเช•เชพเชถเชฟเชค เช•เชฐเชตเชพเชจเซ€ เชฏเซ‹เชœเชจเชพ เช›เซ‡.

VFS เชฎเชพเช‚ legacy_parse_param() เชซเช‚เช•เซเชถเชจเชฎเชพเช‚ เชจเชฌเชณเชพเชˆ เช…เชธเซเชคเชฟเชคเซเชตเชฎเชพเช‚ เช›เซ‡ เช…เชจเซ‡ เชคเซ‡ เชซเชพเชˆเชฒ เชธเชฟเชธเซเชŸเชฎเซ‹ เชชเชฐ เชชเซ‚เชฐเชพ เชชเชพเชกเชตเชพเชฎเชพเช‚ เช†เชตเซ‡เชฒ เชชเชฐเชฟเชฎเชพเชฃเซ‹เชจเชพ เชฎเชนเชคเซเชคเชฎ เช•เชฆเชจเซ€ เชฏเซ‹เช—เซเชฏ เชฎเชพเชจเซเชฏเชคเชพเชจเชพ เช…เชญเชพเชตเชจเซ‡ เช•เชพเชฐเชฃเซ‡ เชฅเชพเชฏ เช›เซ‡ เชœเซ‡ Filesystem Context API เชจเซ‡ เชธเชชเซ‹เชฐเซเชŸ เช•เชฐเชคเชพ เชจเชฅเซ€. เชœเซ‹ เชคเชฎเซ‡ เช–เซ‚เชฌ เชฎเซ‹เชŸเซเช‚ เชชเชฐเชฟเชฎเชพเชฃ เชชเชธเชพเชฐ เช•เชฐเซ‹ เช›เซ‹, เชคเซ‹ เชคเชฎเซ‡ เชฒเช–เซ‡เชฒเชพ เชกเซ‡เชŸเชพเชจเชพ เช•เชฆเชจเซ€ เช—เชฃเชคเชฐเซ€ เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡ เช‰เชชเชฏเซ‹เช—เชฎเชพเช‚ เชฒเซ‡เชตเชพเชคเชพ เชชเซ‚เชฐเซเชฃเชพเช‚เช• เชšเชฒเชจเซ‹ เช“เชตเชฐเชซเซเชฒเซ‹ เชฅเชˆ เชถเช•เซ‡ เช›เซ‡ - เช•เซ‹เชกเชฎเชพเช‚ เชฌเชซเชฐ เช“เชตเชฐเชซเซเชฒเซ‹ เชšเซ‡เช• "if (len > PAGE_SIZE - 2 - เช•เชฆ) เช›เซ‡", เชœเซ‡ เช•เชฐเซ‡ เช›เซ‡ เชจเซ€เชšเชฒเชพ เชฌเชพเช‰เชจเซเชก เชฆเซเชตเชพเชฐเชพ เชชเซ‚เชฐเซเชฃเชพเช‚เช• เช“เชตเชฐเชซเซเชฒเซ‹ (เชชเซ‚เชฐเซเชฃเชพเช‚เช• เช…เช‚เชกเชฐเชซเซเชฒเซ‹, เชœเซเชฏเชพเชฐเซ‡ เชคเชฎเซ‡ 4094 - 4096 - 2 เชจเซ‡ เชธเชนเซ€ เชตเช—เชฐเชจเชพ int เชชเชฐ เช•เชพเชธเซเชŸ เช•เชฐเซ‹ เช›เซ‹, เชคเซ‹ เชคเชฎเชจเซ‡ 4095 เชฎเชณเซ‡ เช›เซ‡) เชœเซ‹ เช•เชฆเชจเซเช‚ เชฎเซ‚เชฒเซเชฏ 2147483648 เช•เชฐเชคเชพ เชตเชงเชพเชฐเซ‡ เชนเซ‹เชฏ เชคเซ‹ เช•เชพเชฎ เช•เชฐเชคเซเช‚ เชจเชฅเซ€.

เช† เชญเซ‚เชฒ เชชเชฐเชตเชพเชจเช—เซ€ เช†เชชเซ‡ เช›เซ‡, เชœเซเชฏเชพเชฐเซ‡ เช–เชพเชธ เชกเชฟเชเชพเช‡เชจ เช•เชฐเซ‡เชฒ FS เช‡เชฎเซ‡เชœเชจเซ‡ เชเช•เซเชธเซ‡เชธ เช•เชฐเซ€ เชฐเชนเซเชฏเชพ เชนเซ‹เชฏ, เชคเซเชฏเชพเชฐเซ‡ เชฌเชซเชฐ เช“เชตเชฐเชซเซเชฒเซ‹ เชฅเชพเชฏ เช›เซ‡ เช…เชจเซ‡ เชซเชพเชณเชตเซ‡เชฒ เชฎเซ‡เชฎเชฐเซ€ เชตเชฟเชธเซเชคเชพเชฐเชจเซ‡ เช…เชจเซเชธเชฐเซ€เชจเซ‡ เช•เชฐเซเชจเชฒ เชกเซ‡เชŸเชพ เชชเชฐ เชซเชฐเซ€เชฅเซ€ เชฒเช–เซ‡ เช›เซ‡. เชจเชฌเชณเชพเชˆเชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡, CAP_SYS_ADMIN เช…เชงเชฟเช•เชพเชฐเซ‹ เชœเชฐเซ‚เชฐเซ€ เช›เซ‡, เชเชŸเชฒเซ‡ เช•เซ‡ เชเชกเชฎเชฟเชจเชฟเชธเซเชŸเซเชฐเซ‡เชŸเชฐ เช“เชฅเซ‹เชฐเชฟเชŸเซ€. เชธเชฎเชธเซเชฏเชพ เช เช›เซ‡ เช•เซ‡ เชœเซ‹ เชฏเซเชเชฐ เชจเซ‡เชฎเชธเซเชชเซ‡เชธ เชฎเชพเชŸเซ‡ เชธเชชเซ‹เชฐเซเชŸ เชธเชฟเชธเซเชŸเชฎเชฎเชพเช‚ เชธเช•เซเชทเชฎ เชนเซ‹เชฏ เชคเซ‹ เชเช• เชฌเชฟเชจเชชเซเชฐเชพเชชเซเชคเชฟเชนเซ€เชค เชตเชชเชฐเชพเชถเช•เชฐเซเชคเชพ เช…เชฒเช— เช•เชจเซเชŸเซ‡เชจเชฐเชฎเชพเช‚ เช†เชตเซ€ เชชเชฐเชตเชพเชจเช—เซ€เช“ เชฎเซ‡เชณเชตเซ€ เชถเช•เซ‡ เช›เซ‡. เช‰เชฆเชพเชนเชฐเชฃ เชคเชฐเซ€เช•เซ‡, เชฏเซเชเชฐ เชจเซ‡เชฎเชธเซเชชเซ‡เชธ เช‰เชฌเซเชจเซเชŸเซ เช…เชจเซ‡ เชซเซ‡เชกเซ‹เชฐเชพ เชชเชฐ เชกเชฟเชซเซ‹เชฒเซเชŸ เชฐเซ‚เชชเซ‡ เชธเช•เซเชทเชฎ เช›เซ‡, เชชเชฐเช‚เชคเซ เชกเซ‡เชฌเชฟเชฏเชจ เช…เชจเซ‡ เช†เชฐเชเชšเชˆเชเชฒ เชชเชฐ เชธเช•เซเชทเชฎ เชจเชฅเซ€ (เชธเชฟเชตเชพเชฏ เช•เซ‡ เช•เชจเซเชŸเซ‡เชจเชฐ เช†เช‡เชธเซ‹เชฒเซ‡เชถเชจ เชชเซเชฒเซ‡เชŸเชซเซ‹เชฐเซเชฎเชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ‹).

เช† เชธเชฎเชธเซเชฏเชพ Linux 5.1 เช•เชฐเซเชจเชฒเชฅเซ€ เชชเซเชฐเช—เชŸ เชฅเชˆ เชฐเชนเซ€ เช›เซ‡ เช…เชจเซ‡ เช—เชˆเช•เชพเชฒเชจเชพ เช…เชชเชกเซ‡เชŸเซเชธ 5.16.2, 5.15.16, 5.10.93, 5.4.173เชฎเชพเช‚ เชคเซ‡เชจเซ‡ เช เซ€เช• เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซ€ เช›เซ‡. RHEL, Debian, Fedora, Ubuntu เชฎเชพเชŸเซ‡ เชจเชฌเชณเชพเชˆ เชชเซ‡เช•เซ‡เชœ เช…เชชเชกเซ‡เชŸเซเชธ เชชเชนเซ‡เชฒเซ‡เชฅเซ€ เชœ เชฌเชนเชพเชฐ เชชเชพเชกเชตเชพเชฎเชพเช‚ เช†เชตเซเชฏเชพ เช›เซ‡. เช†เชฐเซเชš เชฒเชฟเชจเช•เซเชธ, เชœเซ‡เชจเซเชŸเซ, เชธเซเชธ เช…เชจเซ‡ เช“เชชเชจเชธเซเชธ เชชเชฐ เชซเชฟเช•เซเชธ เชนเชœเซ€ เช‰เชชเชฒเชฌเซเชง เชจเชฅเซ€. เช•เชจเซเชŸเซ‡เชจเชฐ เช†เช‡เชธเซ‹เชฒเซ‡เชถเชจเชจเซ‹ เช‰เชชเชฏเซ‹เช— เชจ เช•เชฐเชคเซ€ เชธเชฟเชธเซเชŸเชฎเซ‹ เชฎเชพเชŸเซ‡ เชธเซเชฐเช•เซเชทเชพ เช‰เช•เซ‡เชฒ เชคเชฐเซ€เช•เซ‡, เชคเชฎเซ‡ sysctl "user.max_user_namespaces" เชจเซ€ เช•เชฟเช‚เชฎเชค 0 เชชเชฐ เชธเซ‡เชŸ เช•เชฐเซ€ เชถเช•เซ‹ เช›เซ‹: echo "user.max_user_namespaces=0" > /etc/sysctl.d/userns.conf # sysctl -p / etc/ sysctl.d/userns.conf

เชธเซ‹เชฐเซเชธ: opennet.ru

เชเช• เชŸเชฟเชชเซเชชเชฃเซ€ เช‰เชฎเซ‡เชฐเซ‹