Root ранливост Π²ΠΎ ΠΊΠ΅Ρ€Π½Π΅Π»ΠΎΡ‚ Π½Π° Linux ΠΈ одбивањС Π½Π° услуга Π²ΠΎ systemd

БСзбСдноснитС истраТувачи ΠΎΠ΄ Qualys ΠΎΡ‚ΠΊΡ€ΠΈΡ˜Π° Π΄Π΅Ρ‚Π°Π»ΠΈ Π·Π° Π΄Π²Π΅ пропусти ΠΊΠΎΠΈ Π²Π»ΠΈΡ˜Π°Π°Ρ‚ Π½Π° ΠΊΠ΅Ρ€Π½Π΅Π»ΠΎΡ‚ Π½Π° Linux ΠΈ Π½Π° систСмскиот ΠΌΠ΅Π½Π°ΡŸΠ΅Ρ€ Π½Π° систСмот. Ранливост Π²ΠΎ ΠΊΠ΅Ρ€Π½Π΅Π»ΠΎΡ‚ (CVE-2021-33909) ΠΌΡƒ ΠΎΠ²ΠΎΠ·ΠΌΠΎΠΆΡƒΠ²Π° Π½Π° Π»ΠΎΠΊΠ°Π»Π½ΠΈΠΎΡ‚ корисник Π΄Π° постигнС ΠΈΠ·Π²Ρ€ΡˆΡƒΠ²Π°ΡšΠ΅ Π½Π° ΠΊΠΎΠ΄ со ΠΏΡ€Π°Π²Π° Π½Π° root ΠΏΡ€Π΅ΠΊΡƒ ΠΌΠ°Π½ΠΈΠΏΡƒΠ»Π°Ρ†ΠΈΡ˜Π° со високо Π²Π³Π½Π΅Π·Π΄Π΅Π½ΠΈ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΡƒΠΌΠΈ.

ΠžΠΏΠ°ΡΠ½ΠΎΡΡ‚Π° ΠΎΠ΄ ранливоста сС Π²Π»ΠΎΡˆΡƒΠ²Π° со Ρ„Π°ΠΊΡ‚ΠΎΡ‚ ΡˆΡ‚ΠΎ истраТувачитС ΠΌΠΎΠΆΠ΅Π° Π΄Π° ΠΏΠΎΠ΄Π³ΠΎΡ‚Π²Π°Ρ‚ Ρ€Π°Π±ΠΎΡ‚Π½ΠΈ Сксплоатации ΠΊΠΎΠΈ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ Π½Π° Ubuntu 20.04/20.10/21.04, Debian 11 ΠΈ Fedora 34 Π²ΠΎ стандардната ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΡ˜Π°. Π—Π°Π±Π΅Π»Π΅ΠΆΠ°Π½ΠΎ Π΅ Π΄Π΅ΠΊΠ° Π΄Ρ€ΡƒΠ³ΠΈΡ‚Π΅ дистрибуции Π½Π΅ сС тСстирани, Π½ΠΎ тСорСтски сС исто Ρ‚Π°ΠΊΠ° ΠΏΠΎΠ΄Π»ΠΎΠΆΠ½ΠΈ Π½Π° ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠΎΡ‚ ΠΈ ΠΌΠΎΠΆΠ°Ρ‚ Π΄Π° Π±ΠΈΠ΄Π°Ρ‚ Π½Π°ΠΏΠ°Π΄Π½Π°Ρ‚ΠΈ. ЦСлосниот ΠΊΠΎΠ΄ Π½Π° СксплоатитС Π΅ Π²Π΅Ρ‚Π΅Π½ΠΎ Π΄Π΅ΠΊΠ° ќС Π±ΠΈΠ΄Π΅ објавСн ΠΎΡ‚ΠΊΠ°ΠΊΠΎ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠΎΡ‚ ќС сС Π΅Π»ΠΈΠΌΠΈΠ½ΠΈΡ€Π° насСкадС, Π½ΠΎ засСга Π΅ достапСн само ΠΏΡ€ΠΎΡ‚ΠΎΡ‚ΠΈΠΏ со ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½Π° функционалност, ΡˆΡ‚ΠΎ ΠΏΡ€Π΅Π΄ΠΈΠ·Π²ΠΈΠΊΡƒΠ²Π° ΠΏΠ°Ρ“Π°ΡšΠ΅ Π½Π° систСмот. ΠŸΡ€ΠΎΠ±Π»Π΅ΠΌΠΎΡ‚ Π΅ присутСн ΠΎΠ΄ Ρ˜ΡƒΠ»ΠΈ 2014 Π³ΠΎΠ΄ΠΈΠ½Π° ΠΈ влијаС Π½Π° ΠΈΠ·Π΄Π°Π½ΠΈΡ˜Π°Ρ‚Π° Π½Π° ΠΊΠ΅Ρ€Π½Π΅Π»ΠΎΡ‚ ΠΏΠΎΡ‡Π½ΡƒΠ²Π°Ρ˜ΡœΠΈ ΠΎΠ΄ 3.16. ΠŸΠΎΠΏΡ€Π°Π²ΠΊΠ°Ρ‚Π° Π½Π° ранливоста бСшС ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½ΠΈΡ€Π°Π½Π° со Π·Π°Π΅Π΄Π½ΠΈΡ†Π°Ρ‚Π° ΠΈ ΠΏΡ€ΠΈΡ„Π°Ρ‚Π΅Π½Π° Π²ΠΎ ΠΊΠ΅Ρ€Π½Π΅Π»ΠΎΡ‚ Π½Π° 19 Ρ˜ΡƒΠ»ΠΈ. Π“Π»Π°Π²Π½ΠΈΡ‚Π΅ дистрибуции вСќС Π³Π΅Π½Π΅Ρ€ΠΈΡ€Π°Π° Π°ΠΆΡƒΡ€ΠΈΡ€Π°ΡšΠ° Π½Π° Π½ΠΈΠ²Π½ΠΈΡ‚Π΅ ΠΊΠ΅Ρ€Π½Π΅Π» ΠΏΠ°ΠΊΠ΅Ρ‚ΠΈ (Debian, Ubuntu, Fedora, RHEL, SUSE, Arch).

Ранливоста Π΅ ΠΏΡ€Π΅Π΄ΠΈΠ·Π²ΠΈΠΊΠ°Π½Π° ΠΎΠ΄ нСуспСхот Π΄Π° сС ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈ Ρ€Π΅Π·ΡƒΠ»Ρ‚Π°Ρ‚ΠΎΡ‚ ΠΎΠ΄ ΠΊΠΎΠ½Π²Π΅Ρ€Π·ΠΈΡ˜Π° ΠΎΠ΄ size_t Π²ΠΎ int ΠΏΡ€Π΅Π΄ Π΄Π° сС ΠΈΠ·Π²Ρ€ΡˆΠ°Ρ‚ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ Π²ΠΎ ΠΊΠΎΠ΄ΠΎΡ‚ seq_file, кој создава Π΄Π°Ρ‚ΠΎΡ‚Π΅ΠΊΠΈ ΠΎΠ΄ Π½ΠΈΠ·Π° записи. НСуспСхот Π΄Π° сС ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈ ΠΌΠΎΠΆΠ΅ Π΄Π° Ρ€Π΅Π·ΡƒΠ»Ρ‚ΠΈΡ€Π° со Π·Π°ΠΏΠΈΡˆΡƒΠ²Π°ΡšΠ΅ Π½Π°Π΄Π²ΠΎΡ€ ΠΎΠ΄ Π³Ρ€Π°Π½ΠΈΡ†ΠΈΡ‚Π΅ Π²ΠΎ Π±Π°Ρ„Π΅Ρ€ΠΎΡ‚ ΠΏΡ€ΠΈ ΠΊΡ€Π΅ΠΈΡ€Π°ΡšΠ΅, ΠΌΠΎΠ½Ρ‚ΠΈΡ€Π°ΡšΠ΅ ΠΈ Π±Ρ€ΠΈΡˆΠ΅ΡšΠ΅ ΠΌΠ½ΠΎΠ³Ρƒ Π²Π³Π½Π΅Π·Π΄Π΅Π½Π° структура Π½Π° Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΡƒΠΌΠΈ (Π³ΠΎΠ»Π΅ΠΌΠΈΠ½Π° Π½Π° ΠΏΠ°Ρ‚Π΅ΠΊΠ°Ρ‚Π° ΠΏΠΎΠ³ΠΎΠ»Π΅ΠΌΠ° ΠΎΠ΄ 1 GB). Како Ρ€Π΅Π·ΡƒΠ»Ρ‚Π°Ρ‚ Π½Π° Ρ‚ΠΎΠ°, Π½Π°ΠΏΠ°Ρ“Π°Ρ‡ΠΎΡ‚ ΠΌΠΎΠΆΠ΅ Π΄Π° постигнС Π½ΠΈΠ·Π° ΠΎΠ΄ 10 Π±Π°Ρ˜Ρ‚ΠΈ β€ž//ΠΈΠ·Π±Ρ€ΠΈΡˆΠ°Π½Π°β€œ напишана со ΠΏΠΎΠΌΠ΅ΡΡ‚ΡƒΠ²Π°ΡšΠ΅ ΠΎΠ΄ β€ž-2 GB - 10 Π±Π°Ρ˜Ρ‚ΠΈβ€œ ΡˆΡ‚ΠΎ ΠΏΠΎΠΊΠ°ΠΆΡƒΠ²Π° Π½Π° областа вСднаш ΠΏΡ€Π΅Π΄ Π΄ΠΎΠ΄Π΅Π»Π΅Π½ΠΈΠΎΡ‚ Π±Π°Ρ„Π΅Ρ€.

ΠŸΠΎΠ΄Π³ΠΎΡ‚Π²Π΅Π½ΠΈΠΎΡ‚ Сксплоат Π±Π°Ρ€Π° 5 GB ΠΌΠ΅ΠΌΠΎΡ€ΠΈΡ˜Π° ΠΈ 1 ΠΌΠΈΠ»ΠΈΠΎΠ½ бСсплатни ΠΈΠ½ΠΎΠ΄ΠΈ Π·Π° Ρ€Π°Π±ΠΎΡ‚Π°. Експлоатот Ρ€Π°Π±ΠΎΡ‚ΠΈ со ΠΏΠΎΠ²ΠΈΠΊΡƒΠ²Π°ΡšΠ΅ Π½Π° mkdir() Π·Π° Π΄Π° сС создадС Ρ…ΠΈΠ΅Ρ€Π°Ρ€Ρ…ΠΈΡ˜Π° ΠΎΠ΄ ΠΎΠΊΠΎΠ»Ρƒ ΠΌΠΈΠ»ΠΈΠΎΠ½ ΠΏΠΎΠ΄Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΡƒΠΌΠΈ Π·Π° Π΄Π° сС постигнС Π³ΠΎΠ»Π΅ΠΌΠΈΠ½Π° Π½Π° ΠΏΠ°Ρ‚Π΅ΠΊΠ°Ρ‚Π° Π½Π° Π΄Π°Ρ‚ΠΎΡ‚Π΅ΠΊΠ°Ρ‚Π° ΡˆΡ‚ΠΎ Π½Π°Π΄ΠΌΠΈΠ½ΡƒΠ²Π° 1 GB. Овој Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΡƒΠΌ Π΅ ΠΌΠΎΠ½Ρ‚ΠΈΡ€Π°Π½ ΠΏΡ€Π΅ΠΊΡƒ bind-mount Π²ΠΎ посСбСн кориснички имСнски простор, ΠΏΠΎ ΡˆΡ‚ΠΎ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡ˜Π°Ρ‚Π° rmdir() сС ΠΈΠ·Π²Ρ€ΡˆΡƒΠ²Π° Π·Π° Π΄Π° сС отстрани. ΠŸΠ°Ρ€Π°Π»Π΅Π»Π½ΠΎ, сС ΠΊΡ€Π΅ΠΈΡ€Π° нишка која Π²Ρ‡ΠΈΡ‚ΡƒΠ²Π° ΠΌΠ°Π»Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠ° eBPF, која Π΅ Π±Π»ΠΎΠΊΠΈΡ€Π°Π½Π° Π½Π° сцСната ΠΏΠΎ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° Π½Π° псСвдокодот Π½Π° eBPF, Π½ΠΎ ΠΏΡ€Π΅Π΄ Π½Π΅Ρ˜Π·ΠΈΠ½Π°Ρ‚Π° JIT ΠΊΠΎΠΌΠΏΠΈΠ»Π°Ρ†ΠΈΡ˜Π°.

Π’ΠΎ Π½Π΅ΠΏΡ€ΠΈΠ²ΠΈΠ»Π΅Π³ΠΈΡ€Π°Π½ΠΈΠΎΡ‚ кориснички имСнски простор, сС ΠΎΡ‚Π²ΠΎΡ€Π° Π΄Π°Ρ‚ΠΎΡ‚Π΅ΠΊΠ°Ρ‚Π° /proc/self/mountinfo ΠΈ сС Ρ‡ΠΈΡ‚Π° Π΄ΠΎΠ»Π³Π°Ρ‚Π° ΠΏΠ°Ρ‚Π΅ΠΊΠ° Π½Π° Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΡƒΠΌΠΎΡ‚ ΠΌΠΎΠ½Ρ‚ΠΈΡ€Π°Π½ со Π²Ρ€Π·ΡƒΠ²Π°ΡšΠ΅, ΡˆΡ‚ΠΎ Ρ€Π΅Π·ΡƒΠ»Ρ‚ΠΈΡ€Π° со Ρ‚ΠΎΠ° ΡˆΡ‚ΠΎ Π½ΠΈΠ·Π°Ρ‚Π° β€ž//ΠΈΠ·Π±Ρ€ΠΈΡˆΠ°Π½Π°β€œ сС Π·Π°ΠΏΠΈΡˆΡƒΠ²Π° Π²ΠΎ областа ΠΏΡ€Π΅Π΄ ΠΏΠΎΡ‡Π΅Ρ‚ΠΎΠΊΠΎΡ‚ Π½Π° Π±Π°Ρ„Π΅Ρ€ΠΎΡ‚. ΠŸΠΎΠ·ΠΈΡ†ΠΈΡ˜Π°Ρ‚Π° Π·Π° ΠΏΠΈΡˆΡƒΠ²Π°ΡšΠ΅ Π½Π° Π»ΠΈΠ½ΠΈΡ˜Π°Ρ‚Π° Π΅ ΠΈΠ·Π±Ρ€Π°Π½Π° Ρ‚Π°ΠΊΠ° ΡˆΡ‚ΠΎ Ρ‚Π°Π° ја ΠΏΡ€Π΅ΠΏΠΈΡˆΡƒΠ²Π° ΠΈΠ½ΡΡ‚Ρ€ΡƒΠΊΡ†ΠΈΡ˜Π°Ρ‚Π° Π²ΠΎ вСќС тСстираната, Π½ΠΎ сè ΡƒΡˆΡ‚Π΅ Π½Π΅ΠΊΠΎΠΌΠΏΠ°Ρ˜Π»ΠΈΡ€Π°Π½Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠ° eBPF.

Π‘Π»Π΅Π΄Π½ΠΎ, Π½Π° Π½ΠΈΠ²ΠΎ Π½Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠ° eBPF, Π½Π΅ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΠΈΡ€Π°Π½ΠΎΡ‚ΠΎ ΠΏΠΈΡˆΡƒΠ²Π°ΡšΠ΅ Π½Π°Π΄Π²ΠΎΡ€ ΠΎΠ΄ Π±Π°Ρ„Π΅Ρ€ΠΎΡ‚ сС трансформира Π²ΠΎ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΠΈΡ€Π°Π½Π° способност Π·Π° Ρ‡ΠΈΡ‚Π°ΡšΠ΅ ΠΈ ΠΏΠΈΡˆΡƒΠ²Π°ΡšΠ΅ Π½Π° Π΄Ρ€ΡƒΠ³ΠΈ структури Π½Π° Ρ˜Π°Π΄Ρ€ΠΎΡ‚ΠΎ ΠΏΡ€Π΅ΠΊΡƒ ΠΌΠ°Π½ΠΈΠΏΡƒΠ»Π°Ρ†ΠΈΡ˜Π° со структуритС btf ΠΈ map_push_elem. Како Ρ€Π΅Π·ΡƒΠ»Ρ‚Π°Ρ‚ Π½Π° Ρ‚ΠΎΠ°, Сксплоатот ја ΠΎΠ΄Ρ€Π΅Π΄ΡƒΠ²Π° Π»ΠΎΠΊΠ°Ρ†ΠΈΡ˜Π°Ρ‚Π° Π½Π° Π±Π°Ρ„Π΅Ρ€ΠΎΡ‚ modprobe_path[] Π²ΠΎ ΠΌΠ΅ΠΌΠΎΡ€ΠΈΡ˜Π°Ρ‚Π° Π½Π° Ρ˜Π°Π΄Ρ€ΠΎΡ‚ΠΎ ΠΈ ја ΠΏΡ€Π΅ΠΏΠΈΡˆΡƒΠ²Π° ΠΏΠ°Ρ‚Π΅ΠΊΠ°Ρ‚Π° β€ž/sbin/modprobeβ€œ Π²ΠΎ Π½Π΅Π°, ΡˆΡ‚ΠΎ Π²ΠΈ ΠΎΠ²ΠΎΠ·ΠΌΠΎΠΆΡƒΠ²Π° Π΄Π° ΠΈΠ½ΠΈΡ†ΠΈΡ€Π°Ρ‚Π΅ ΡΡ‚Π°Ρ€Ρ‚ΡƒΠ²Π°ΡšΠ΅ Π½Π° која Π±ΠΈΠ»ΠΎ ΠΈΠ·Π²Ρ€ΡˆΠ½Π° Π΄Π°Ρ‚ΠΎΡ‚Π΅ΠΊΠ° со ΠΏΡ€Π°Π²Π° Π½Π° root Π²ΠΎ ΡΠ»ΡƒΡ‡Π°Ρ˜ Π½Π° Повик request_module(), кој сС ΠΈΠ·Π²Ρ€ΡˆΡƒΠ²Π°, Π½Π° ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΏΡ€ΠΈ ΠΊΡ€Π΅ΠΈΡ€Π°ΡšΠ΅ Π½Π° Netlink сокСт.

Π˜ΡΡ‚Ρ€Π°ΠΆΡƒΠ²Π°Ρ‡ΠΈΡ‚Π΅ ΠΎΠ±Π΅Π·Π±Π΅Π΄ΡƒΠ²Π°Π°Ρ‚ Π½Π΅ΠΊΠΎΠ»ΠΊΡƒ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ˜Π° ΠΊΠΎΠΈ сС Π΅Ρ„Π΅ΠΊΡ‚ΠΈΠ²Π½ΠΈ само Π·Π° ΠΎΠ΄Ρ€Π΅Π΄Π΅Π½Π° Π΅ΠΊΡΠΏΠ»ΠΎΠ°Ρ‚Π°Ρ†ΠΈΡ˜Π°, Π½ΠΎ Π½Π΅ Π³ΠΎ Π΅Π»ΠΈΠΌΠΈΠ½ΠΈΡ€Π°Π°Ρ‚ самиот ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ. Π‘Π΅ ΠΏΡ€Π΅ΠΏΠΎΡ€Π°Ρ‡ΡƒΠ²Π° Π΄Π° сС постави β€ž/proc/sys/kernel/unprivileged_userns_cloneβ€œ Π½Π° 0 Π·Π° Π΄Π° сС ΠΎΠ½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ°Ρ‚ ΠΌΠΎΠ½Ρ‚Π°ΠΆΠ½ΠΈ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΡƒΠΌΠΈ Π²ΠΎ посСбСн имСнски простор Π·Π° кориснички ID, Π° β€ž/proc/sys/kernel/unprivileged_bpf_disabledβ€œ Π½Π° 1 Π·Π° Π΄Π° сС ΠΎΠ½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠΈ Π²Ρ‡ΠΈΡ‚ΡƒΠ²Π°ΡšΠ΅ Π½Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΈΡ‚Π΅ eBPF Π²ΠΎ Ρ˜Π°Π΄Ρ€ΠΎΡ‚ΠΎ.

Π’Ρ€Π΅Π΄ΠΈ Π΄Π° сС ΠΎΠ΄Π±Π΅Π»Π΅ΠΆΠΈ Π΄Π΅ΠΊΠ° Π΄ΠΎΠ΄Π΅ΠΊΠ° Π°Π½Π°Π»ΠΈΠ·ΠΈΡ€Π°Π° Π°Π»Ρ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Π΅Π½ Π½Π°ΠΏΠ°Π΄ кој Π²ΠΊΠ»ΡƒΡ‡ΡƒΠ²Π° ΡƒΠΏΠΎΡ‚Ρ€Π΅Π±Π° Π½Π° ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠΎΡ‚ FUSE намСсто bind-mound Π·Π° ΠΌΠΎΠ½Ρ‚ΠΈΡ€Π°ΡšΠ΅ Π³ΠΎΠ»Π΅ΠΌ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΡƒΠΌ, истраТувачитС Π½Π°ΠΈΠ΄ΠΎΠ° Π½Π° Π΄Ρ€ΡƒΠ³Π° ранливост (CVE-2021-33910) ΡˆΡ‚ΠΎ влијаСшС Π½Π° систСмскиот систСмски ΠΌΠ΅Π½Π°ΡŸΠ΅Ρ€. Π‘Π΅ испостави Π΄Π΅ΠΊΠ° ΠΊΠΎΠ³Π° сС ΠΎΠ±ΠΈΠ΄ΡƒΠ²Π°Ρ‚Π΅ Π΄Π° ΠΌΠΎΠ½Ρ‚ΠΈΡ€Π°Ρ‚Π΅ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΡƒΠΌ со Π³ΠΎΠ»Π΅ΠΌΠΈΠ½Π° Π½Π° ΠΏΠ°Ρ‚Π΅ΠΊΠ° која Π½Π°Π΄ΠΌΠΈΠ½ΡƒΠ²Π° 8 MB ΠΏΡ€Π΅ΠΊΡƒ FUSE, процСсот Π½Π° ΠΈΠ½ΠΈΡ†ΠΈΡ˜Π°Π»ΠΈΠ·Π°Ρ†ΠΈΡ˜Π° Π½Π° ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π°Ρ‚Π° (PID1) снСмува ΠΎΠ΄ ΠΌΠ΅ΠΌΠΎΡ€ΠΈΡ˜Π°Ρ‚Π° Π½Π° ΠΌΠ°Π³Π°Ρ†ΠΈΠ½ΠΎΡ‚ ΠΈ ΠΏΠ°Ρ“Π°, ΡˆΡ‚ΠΎ Π³ΠΎ става систСмот Π²ΠΎ ΡΠΎΡΡ‚ΠΎΡ˜Π±Π° Π½Π° β€žΠΏΠ°Π½ΠΈΡ‡Π½Π°β€œ ΡΠΎΡΡ‚ΠΎΡ˜Π±Π°.

ΠŸΡ€ΠΎΠ±Π»Π΅ΠΌΠΎΡ‚ Π΅ ΡˆΡ‚ΠΎ systemd ја слСди ΠΈ Π°Π½Π°Π»ΠΈΠ·ΠΈΡ€Π° содрТината Π½Π° /proc/self/mountinfo ΠΈ ја ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΡƒΠ²Π° сСкоја Ρ‚ΠΎΡ‡ΠΊΠ° Π½Π° ΠΌΠΎΠ½Ρ‚ΠΈΡ€Π°ΡšΠ΅ Π²ΠΎ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡ˜Π°Ρ‚Π° unit_name_path_escape(), која Π²Ρ€ΡˆΠΈ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΡ˜Π° strdupa() која Π³ΠΈ става ΠΏΠΎΠ΄Π°Ρ‚ΠΎΡ†ΠΈΡ‚Π΅ Π½Π° стСк намСсто Π²ΠΎ Π΄ΠΈΠ½Π°ΠΌΠΈΡ‡ΠΊΠΈ распрСдСлСната ΠΌΠ΅ΠΌΠΎΡ€ΠΈΡ˜Π° . Π‘ΠΈΠ΄Π΅Ρ˜ΡœΠΈ максималната Π³ΠΎΠ»Π΅ΠΌΠΈΠ½Π° Π½Π° ΠΎΡŸΠ°ΠΊΠΎΡ‚ Π΅ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½Π° ΠΏΡ€Π΅ΠΊΡƒ RLIMIT_STACK, ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ°Ρ‚Π° Π½Π° ΠΏΡ€Π΅Π³ΠΎΠ»Π΅ΠΌΠ° ΠΏΠ°Ρ‚Π΅ΠΊΠ° Π΄ΠΎ Ρ‚ΠΎΡ‡ΠΊΠ°Ρ‚Π° Π½Π° ΠΌΠΎΠ½Ρ‚ΠΈΡ€Π°ΡšΠ΅ ΠΏΡ€Π΅Π΄ΠΈΠ·Π²ΠΈΠΊΡƒΠ²Π° процСсот Π½Π° PID1 Π΄Π° ΠΏΠ°Π΄Π½Π΅ ΠΈ Π΄Π° Π³ΠΎ Π·Π°ΠΏΡ€Π΅ систСмот. Π—Π° Π½Π°ΠΏΠ°Π΄, ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° Π³ΠΎ користитС Π½Π°Ρ˜Π΅Π΄Π½ΠΎΡΡ‚Π°Π²Π½ΠΈΠΎΡ‚ FUSE ΠΌΠΎΠ΄ΡƒΠ» Π²ΠΎ ΠΊΠΎΠΌΠ±ΠΈΠ½Π°Ρ†ΠΈΡ˜Π° со ΠΊΠΎΡ€ΠΈΡΡ‚Π΅ΡšΠ΅ Π½Π° високо Π²Π³Π½Π΅Π·Π΄Π΅Π½ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΡƒΠΌ ΠΊΠ°ΠΊΠΎ Ρ‚ΠΎΡ‡ΠΊΠ° Π·Π° ΠΌΠΎΠ½Ρ‚ΠΈΡ€Π°ΡšΠ΅, Ρ‡ΠΈΡ˜Π° Π³ΠΎΠ»Π΅ΠΌΠΈΠ½Π° Π½Π° ΠΏΠ°Ρ‚Π΅ΠΊΠ°Ρ‚Π° Π½Π°Π΄ΠΌΠΈΠ½ΡƒΠ²Π° 8 MB.

ΠŸΡ€ΠΎΠ±Π»Π΅ΠΌΠΎΡ‚ сС ΠΏΠΎΡ˜Π°Π²ΡƒΠ²Π° ΡƒΡˆΡ‚Π΅ ΠΎΠ΄ systemd 220 (Π°ΠΏΡ€ΠΈΠ» 2015), вСќС Π΅ ΠΏΠΎΠΏΡ€Π°Π²Π΅Π½ Π²ΠΎ Π³Π»Π°Π²Π½ΠΎΡ‚ΠΎ ΡΠΊΠ»Π°Π΄ΠΈΡˆΡ‚Π΅ Π½Π° systemd ΠΈ фиксиран Π²ΠΎ дистрибуциитС (Debian, Ubuntu, Fedora, RHEL, SUSE, Arch). ИмСно, Π²ΠΎ systemd ΠΈΠ·Π΄Π°Π½ΠΈΠ΅ 248 Π΅ΠΊΡΠΏΠ»ΠΎΠ°Ρ‚Π°Ρ†ΠΈΡ˜Π°Ρ‚Π° Π½Π΅ Ρ€Π°Π±ΠΎΡ‚ΠΈ ΠΏΠΎΡ€Π°Π΄ΠΈ Π³Ρ€Π΅ΡˆΠΊΠ° Π²ΠΎ systemd ΠΊΠΎΠ΄ΠΎΡ‚ ΡˆΡ‚ΠΎ ΠΏΡ€Π΅Π΄ΠΈΠ·Π²ΠΈΠΊΡƒΠ²Π° Π½Π΅ΡƒΡΠΏΠ΅ΡˆΠ½Π° ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Π½Π° /proc/self/mountinfo. Π˜Π½Ρ‚Π΅Ρ€Π΅ΡΠ½ΠΎ Π΅ ΠΈ Ρ‚ΠΎΠ° ΡˆΡ‚ΠΎ Π²ΠΎ 2018 Π³ΠΎΠ΄ΠΈΠ½Π° сС појави слична ΡΠΈΡ‚ΡƒΠ°Ρ†ΠΈΡ˜Π° ΠΈ ΠΊΠΎΠ³Π° сС ΠΎΠ±ΠΈΠ΄ΡƒΠ²Π°Π° Π΄Π° Π½Π°ΠΏΠΈΡˆΠ°Ρ‚ Сксплоат Π·Π° ранливоста CVE-2018-14634 Π²ΠΎ ΠΊΠ΅Ρ€Π½Π΅Π»ΠΎΡ‚ Linux, истраТувачитС Π½Π° Qualys Π½Π°ΠΈΠ΄ΠΎΠ° Π½Π° Ρ‚Ρ€ΠΈ ΠΊΡ€ΠΈΡ‚ΠΈΡ‡Π½ΠΈ пропусти Π²ΠΎ systemd.

Π˜Π·Π²ΠΎΡ€: opennet.ru

Π”ΠΎΠ΄Π°Π΄Π΅Ρ‚Π΅ ΠΊΠΎΠΌΠ΅Π½Ρ‚Π°Ρ€