เบŠเปˆเบญเบ‡เป‚เบซเบงเปˆเปƒเบ™เบฅเบฐเบšเบปเบšเบเปˆเบญเบ netfilter เบ—เบตเปˆเบญเบฐเบ™เบธเบเบฒเบ”เปƒเบซเป‰เบ›เบฐเบ•เบดเบšเบฑเบ”เบฅเบฐเบซเบฑเบ”เปƒเบ™เบฅเบฐเบ”เบฑเบš Linux kernel

Netfilter, เบฅเบฐเบšเบปเบšเบเปˆเบญเบเบ‚เบญเบ‡ Linux kernel เบ—เบตเปˆเปƒเบŠเป‰เปƒเบ™เบเบฒเบ™เบเบฑเปˆเบ™เบ•เบญเบ‡เปเบฅเบฐเบ”เบฑเบ”เปเบ›เบ‡เปเบžเบฑเบเป€เบเบฑเบ”เป€เบ„เบทเบญเบ‚เปˆเบฒเบ, เบกเบตเบŠเปˆเบญเบ‡เป‚เบซเบงเปˆ (CVE-2022-25636) เบ—เบตเปˆเบญเบฐเบ™เบธเบเบฒเบ”เปƒเบซเป‰เบ›เบฐเบ•เบดเบšเบฑเบ”เบฅเบฐเบซเบฑเบ”เบขเบนเปˆเปƒเบ™เบฅเบฐเบ”เบฑเบš kernel. เบกเบฑเบ™เป„เบ”เป‰เบ–เบทเบเบ›เบฐเบเบฒเบ”เบงเปˆเบฒเบ•เบปเบงเบขเปˆเบฒเบ‡เบ‚เบญเบ‡เบเบฒเบ™เบ‚เบนเบ”เบฎเบตเบ”เป„เบ”เป‰เบ–เบทเบเบเบฐเบเบฝเบกเบ—เบตเปˆเบญเบฐเบ™เบธเบเบฒเบ”เปƒเบซเป‰เบœเบนเป‰เปƒเบŠเป‰เบ—เป‰เบญเบ‡เบ–เบดเปˆเบ™เบเบปเบเบฅเบฐเบ”เบฑเบšเบชเบดเบ”เบ—เบดเบžเบดเป€เบชเบ”เบ‚เบญเบ‡เบžเบงเบเป€เบ‚เบปเบฒเปƒเบ™ Ubuntu 21.10 เบ”เป‰เบงเบเบเบปเบ™เป„เบเบเบฒเบ™เบ›เบปเบเบ›เป‰เบญเบ‡ KASLR เบ—เบตเปˆเบ–เบทเบเบ›เบดเบ”เปƒเบŠเป‰เบ‡เบฒเบ™. เบšเบฑเบ™เบซเบฒเบ›เบฐเบเบปเบ”เบ‚เบถเป‰เบ™เป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เบˆเบฒเบ kernel 5.4. เบเบฒเบ™เปเบเป‰เป„เบ‚เปเบกเปˆเบ™เบเบฑเบ‡เบกเบตเบขเบนเปˆเป€เบ›เบฑเบ™ patch (เบเบฒเบ™เปเบเป‰เป„เบ‚ kernel เบšเปเปˆเป„เบ”เป‰เบ–เบทเบเบชเป‰เบฒเบ‡เบ‚เบถเป‰เบ™). เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เบ•เบดเบ”เบ•เบฒเบกเบเบฒเบ™เบžเบดเบกเป€เบœเบตเบเปเบœเปˆเบเบฒเบ™เบญเบฑเบšเป€เบ”เบ”เบŠเบธเบ”เปƒเบ™เบเบฒเบ™เปเบˆเบเบขเบฒเบเบขเบนเปˆเปƒเบ™เบซเบ™เป‰เบฒเป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰: Debian, SUSE, Ubuntu, RHEL, Fedora, Gentoo, Arch Linux.

เบŠเปˆเบญเบ‡เป‚เบซเบงเปˆเป€เบเบตเบ”เบˆเบฒเบเบ„เบงเบฒเบกเบœเบดเบ”เบžเบฒเบ”เปƒเบ™เบเบฒเบ™เบ„เบณเบ™เบงเบ™เบ‚เบฐเปœเบฒเบ”เบ‚เบญเบ‡ flow->rule->action.entries array เปƒเบ™เบŸเบฑเบ‡เบŠเบฑเบ™ nft_fwd_dup_netdev_offload (เบเบณเบ™เบปเบ”เป„เบงเป‰เปƒเบ™ file net/netfilter/nf_dup_netdev.c), เป€เบŠเบดเปˆเบ‡เบชเบฒเบกเบฒเบ”เบ™เบณเป„เบ›เบชเบนเปˆเบ‚เปเป‰เบกเบนเบ™เบ—เบตเปˆเบ–เบทเบเบ„เบงเบšเบ„เบธเบกเป‚เบ”เบเบœเบนเป‰เป‚เบˆเบกเบ•เบต. เบ‚เบฝเบ™เปƒเบชเปˆเบžเบทเป‰เบ™เบ—เบตเปˆเบ„เบงเบฒเบกเบŠเบปเบ‡เบˆเปเบฒเบ—เบตเปˆเป€เบเบตเบ™เบ‚เบญเบšเป€เบ‚เบ”เบ‚เบญเบ‡ buffer เบˆเบฑเบ”เบชเบฑเบ™. เบ‚เปเป‰เบœเบดเบ”เบžเบฒเบ”เบˆเบฐเบ›เบฒเบเบปเบ”เบ‚เบถเป‰เบ™เป€เบกเบทเปˆเบญเบ•เบฑเป‰เบ‡เบ„เปˆเบฒเบเบปเบ”เบฅเบฐเบšเบฝเบš "dup" เปเบฅเบฐ "fwd" เปƒเบ™เบ•เปˆเบญเบ‡เป‚เบชเป‰เบ—เบตเปˆเบเบฒเบ™เป€เบฅเบฑเปˆเบ‡เบฎเบฒเบ”เปเบงเบ‚เบญเบ‡เบเบฒเบ™เบ›เบฐเบกเบงเบ™เบœเบปเบ™เปเบžเบฑเบเป€เบเบฑเบ” (offload) เบ–เบทเบเปƒเบŠเป‰. เป€เบ™เบทเปˆเบญเบ‡เบˆเบฒเบเบเบฒเบ™ overflow เป€เบเบตเบ”เบ‚เบถเป‰เบ™เบเปˆเบญเบ™เบ—เบตเปˆเบˆเบฐเบชเป‰เบฒเบ‡เบเบปเบ”เบฅเบฐเบšเบฝเบšเบเบฒเบ™เบเบฑเปˆเบ™เบ•เบญเบ‡ packet เปเบฅเบฐเบเบฒเบ™เบเบงเบ”เบชเบญเบšเบเบฒเบ™เบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™ offload, เบŠเปˆเบญเบ‡เป‚เบซเบงเปˆเบเบฑเบ‡เปƒเบŠเป‰เบเบฑเบšเบญเบธเบ›เบฐเบเบญเบ™เป€เบ„เบทเบญเบ‚เปˆเบฒเบเบ—เบตเปˆเบšเปเปˆเบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™เบเบฒเบ™เป€เบฅเบฑเปˆเบ‡เบ‚เบญเบ‡เบฎเบฒเบ”เปเบง, เป€เบŠเบฑเปˆเบ™: เบเบฒเบ™เป‚เบ•เป‰เบ•เบญเบš loopback.

เบกเบฑเบ™เป„เบ”เป‰เบ–เบทเบเบชเบฑเบ‡เป€เบเบ”เป€เบซเบฑเบ™เบงเปˆเบฒเบšเบฑเบ™เบซเบฒเปเบกเปˆเบ™เบ‚เป‰เบญเบ™เบ‚เป‰เบฒเบ‡เบ‡เปˆเบฒเบเบ”เบฒเบเบ—เบตเปˆเบˆเบฐเบ‚เบนเบ”เบฎเบตเบ”, เป€เบ™เบทเปˆเบญเบ‡เบˆเบฒเบเบงเปˆเบฒเบ„เปˆเบฒเบ—เบตเปˆเป€เบเบตเบ™เบเบงเปˆเบฒ buffer เบชเบฒเบกเบฒเบ”เบ‚เบฝเบ™เบ—เบฑเบšเบ•เบปเบงเบŠเบตเป‰เป„เบ›เบซเบฒเป‚เบ„เบ‡เบชเป‰เบฒเบ‡ net_device, เปเบฅเบฐเบ‚เปเป‰เบกเบนเบ™เบเปˆเบฝเบงเบเบฑเบšเบกเบนเบ™เบ„เปˆเบฒเบ—เบตเปˆเบ–เบทเบเบ‚เบฝเบ™เบ—เบฑเบšเปเบกเปˆเบ™เบเบฑเบšเบ„เบทเบ™เป„เบ›เบซเบฒเบžเบทเป‰เบ™เบ—เบตเปˆเบœเบนเป‰เปƒเบŠเป‰, เป€เบŠเบดเปˆเบ‡เบŠเปˆเบงเบเปƒเบซเป‰เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เบŠเบญเบเบซเบฒเบ—เบตเปˆเบขเบนเปˆเป„เบ”เป‰. เปƒเบ™เบ„เบงเบฒเบกเบŠเบปเบ‡เบˆเปเบฒเบ—เบตเปˆเบˆเปเบฒเป€เบ›เบฑเบ™เป€เบžเบทเปˆเบญเบ›เบฐเบ•เบดเบšเบฑเบ”เบเบฒเบ™เป‚เบˆเบกเบ•เบต. เบเบฒเบ™เบ‚เบนเบ”เบฎเบตเบ”เบŠเปˆเบญเบ‡เป‚เบซเบงเปˆเบฎเบฝเบเบฎเป‰เบญเบ‡เปƒเบซเป‰เบกเบตเบเบฒเบ™เบชเป‰เบฒเบ‡เบเบปเบ”เบฅเบฐเบšเบฝเบšเบšเบฒเบ‡เบขเปˆเบฒเบ‡เปƒเบ™ nftables, เป€เบŠเบดเปˆเบ‡เป€เบ›เบฑเบ™เป„เบ›เป„เบ”เป‰เบžเบฝเบ‡เปเบ•เปˆ CAP_NET_ADMIN, เป€เบŠเบดเปˆเบ‡เบชเบฒเบกเบฒเบ”เป„เบ”เป‰เบฎเบฑเบšเป‚เบ”เบเบœเบนเป‰เปƒเบŠเป‰เบ—เบตเปˆเบšเปเปˆเบกเบตเบชเบดเบ”เบ—เบดเปƒเบ™ namespaces เป€เบ„เบทเบญเบ‚เปˆเบฒเบเปเบเบเบ•เปˆเบฒเบ‡เบซเบฒเบ. เบŠเปˆเบญเบ‡เป‚เบซเบงเปˆเบเบฑเบ‡เบชเบฒเบกเบฒเบ”เบ–เบทเบเปƒเบŠเป‰เป€เบžเบทเปˆเบญเป‚เบˆเบกเบ•เบตเบฅเบฐเบšเบปเบšเบเบฒเบ™เปเบเบเบ•เบปเบงเบšเบฑเบ™เบˆเบธ.

เปเบซเบผเปˆเบ‡เบ‚เปเป‰เบกเบนเบ™: opennet.ru

เป€เบžเบตเปˆเบกเบ„เบงเบฒเบกเบ„เบดเบ”เป€เบซเบฑเบ™