ืคื’ื™ืขื•ืช ื‘-XFS ื”ืžืืคืฉืจืช ืงืจื™ืืช ื ืชื•ื ื™ ื‘ืœื•ืง ื’ื•ืœืžื™ ืฉืœ ื”ืชืงืŸ

ื–ื•ื”ืชื” ืคื’ื™ืขื•ืช (CVE-2021-4155) ื‘ืงื•ื“ ืžืขืจื›ืช ื”ืงื‘ืฆื™ื XFS ื”ืžืืคืฉืจืช ืœืžืฉืชืžืฉ ืžืงื•ืžื™ ืœืœื ื”ืจืฉืื•ืช ืœืงืจื•ื ื ืชื•ื ื™ ื‘ืœื•ืง ืฉืื™ื ื ื‘ืฉื™ืžื•ืฉ ื™ืฉื™ืจื•ืช ืžื”ืชืงืŸ ื—ืกื™ืžื”. ื›ืœ ื”ื’ืจืกืื•ืช ื”ืขื™ืงืจื™ื•ืช ืฉืœ ืœื™ื‘ืช ืœื™ื ื•ืงืก ื™ืฉื ื•ืช ืž-5.16 ื”ืžื›ื™ืœื•ืช ืืช ืžื ื”ืœ ื”ื”ืชืงืŸ XFS ืžื•ืฉืคืขื•ืช ืžื‘ืขื™ื” ื–ื•. ื”ืชื™ืงื•ืŸ ื ื›ืœืœ ื‘ื’ืจืกื” 5.16, ื›ืžื• ื’ื ื‘ืขื“ื›ื•ื ื™ ืœื™ื‘ื” 5.15.14, 5.10.91, 5.4.171, 4.19.225 ื•ื›ื•'. ื ื™ืชืŸ ืœืขืงื•ื‘ ืื—ืจ ืžืฆื‘ ื”ืขื“ื›ื•ื ื™ื ืฉื ื•ืฆืจื™ื ื›ื“ื™ ืœืชืงืŸ ืืช ื”ื‘ืขื™ื” ื‘ื”ืคืฆื•ืช ื‘ื“ืคื™ื ื”ื‘ืื™ื: Debian, RHEL, SUSE, Fedora, Ubuntu, Arch.

ื”ืคื’ื™ืขื•ืช ื ื’ืจืžืช ืขืœ ื™ื“ื™ ื”ืชื ื”ื’ื•ืช ืœื ื ื›ื•ื ื” ืฉืœ ืฉื ื™ ioctl(XFS_IOC_ALLOCSP) ื•-ioctl(XFS_IOC_FREESP) ืกืคืฆื™ืคื™ื™ื ืœ-XFS, ืฉื”ื ืื ืœื•ื’ื™ ืคื•ื ืงืฆื™ื•ื ืœื™ ืฉืœ ืงืจื™ืืช ืžืขืจื›ืช fallocate() ืœื›ืœ ืœื™ื‘ื”. ื‘ืขืช ื”ื’ื“ืœืช ื’ื•ื“ืœ ืงื•ื‘ืฅ ืฉืื™ื ื• ืžื™ื•ืฉืจ ื‘ืœื•ืง, ioctls XFS_IOC_ALLOCSP/XFS_IOC_FREESP ืœื ืžืืคืกื™ื ืืช ื‘ืชื™ื ื”ื–ื ื‘ ืœืืคืก ืขื“ ืœื’ื‘ื•ืœ ื”ื‘ืœื•ืง ื”ื‘ื. ืœืคื™ื›ืš, ื‘-XFS ืขื ื’ื•ื“ืœ ื‘ืœื•ืง ืกื˜ื ื“ืจื˜ื™ ืฉืœ 4096 ื‘ืชื™ื, ืชื•ืงืฃ ื™ื›ื•ืœ ืœืงืจื•ื ืขื“ 4095 ื‘ืชื™ื ืฉืœ ื ืชื•ื ื™ื ื›ืชื•ื‘ื™ื ืงื•ื“ืžื™ื ืžื›ืœ ื‘ืœื•ืง. ืื–ื•ืจื™ื ืืœื” ืขืฉื•ื™ื™ื ืœื”ื›ื™ืœ ื ืชื•ื ื™ื ืžืงื‘ืฆื™ื ืฉื ืžื—ืงื•, ืงื‘ืฆื™ื ืžืื•ื—ื• ื•ืงื‘ืฆื™ื ืขื ื‘ืœื•ืงื™ื ืฉื ืžื—ืงื•.

ืืชื” ื™ื›ื•ืœ ืœื‘ื“ื•ืง ืืช ื”ืžืขืจื›ืช ืฉืœืš ืขื‘ื•ืจ ื”ื‘ืขื™ื” ื‘ืืžืฆืขื•ืช ืื‘ ื˜ื™ืคื•ืก ืคืฉื•ื˜ ืฉืœ ื ื™ืฆื•ืœ. ืื ืœืื—ืจ ื‘ื™ืฆื•ืข ืจืฆืฃ ื”ืคืงื•ื“ื•ืช ื”ืžื•ืฆืข, ื ื™ืชืŸ ืœืงืจื•ื ืืช ื”ื˜ืงืกื˜ ืฉืœ ืฉื™ื™ืงืกืคื™ืจ, ืื– ืžื ื”ืœ ื”ืชืงืŸ FS ืคื’ื™ืข. ื”ืจื›ื‘ื” ืชื—ื™ืœื” ืฉืœ ืžื—ื™ืฆืช XFS ืœื”ื“ื’ืžื” ื“ื•ืจืฉืช ื”ืจืฉืื•ืช ืฉื•ืจืฉ.

ืžื›ื™ื•ื•ืŸ ืฉ-ioctl(XFS_IOC_ALLOCSP) ื•-ioctl(XFS_IOC_FREESP) ื–ื”ื™ื ื‘ืคื•ื ืงืฆื™ื•ื ืœื™ื•ืช ืœ-fallocate(), ื•ื”ื”ื‘ื“ืœ ื”ื™ื—ื™ื“ ื‘ื™ื ื™ื”ื ื”ื•ื ื“ืœื™ืคืช ื ืชื•ื ื™ื, ื”ื ื•ื›ื—ื•ืช ืฉืœื”ื ื“ื•ืžื” ืœื“ืœืช ืื—ื•ืจื™ืช. ืœืžืจื•ืช ื”ืžื“ื™ื ื™ื•ืช ื”ื›ืœืœื™ืช ืฉืœ ืื™ ืฉื™ื ื•ื™ ืžืžืฉืงื™ื ืงื™ื™ืžื™ื ื‘ืงืจื ืœ, ื‘ื”ืฆืขืช Linus, ื”ื•ื—ืœื˜ ืœื”ืกื™ืจ ืœื—ืœื•ื˜ื™ืŸ ืืช ioctls ืืœื• ื‘ื’ืจืกื” ื”ื‘ืื”.

ืžืงื•ืจ: OpenNet.ru

ื”ื•ืกืคืช ืชื’ื•ื‘ื”