Уязвимости Π² Nix ΠΈ Lix, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰ΠΈΠ΅ ΠΏΠΎΠ΄Π½ΡΡ‚ΡŒ ΠΏΡ€ΠΈΠ²ΠΈΠ»Π΅Π³ΠΈΠΈ Π² систСмС

Π’ ΠΏΠ°ΠΊΠ΅Ρ‚Π½Ρ‹Ρ… ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€Π°Ρ… Nix ΠΈ Lix выявлСна ΡƒΡΠ·Π²ΠΈΠΌΠΎΡΡ‚ΡŒ, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰Π°Ρ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ ΠΊΠΎΠ΄ с ΠΏΡ€Π°Π²Π°ΠΌΠΈ Ρ„ΠΎΠ½ΠΎΠ²ΠΎΠ³ΠΎ процСсса, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π² NixOS ΠΈ ΠΌΠ½ΠΎΠ³ΠΎΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΡ… установках выполняСтся ΠΏΠΎΠ΄ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΌ root. ΠŸΡ€ΠΎΠ±Π»Π΅ΠΌΠ° (CVE Π½Π΅ присвоСн) проявляСтся Π² Ρ„ΠΎΠ½ΠΎΠ²ΠΎΠΌ процСссС nix-daemon, примСняСмом для ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΈ доступа Π½Π΅ΠΏΡ€ΠΈΠ²ΠΈΠ»Π΅Π³ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Ρ… ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ ΠΊ сборочным опСрациям ΠΈ Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Ρƒ ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ².

Π£ΡΠ·Π²ΠΈΠΌΠΎΡΡ‚ΡŒ Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ‚ ΠΈΠ·-Π·Π° отсутствия ограничСния рСкурсивной ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΉ Π² ΠΊΠΎΠ΄Π΅ для Ρ€Π°Π·Π±ΠΎΡ€Π° Π°Ρ€Ρ…ΠΈΠ²ΠΎΠ² NAR (Nix Archive), Ρ‡Ρ‚ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ для инициирования исчСрпания стСка сопрограмм ΠΈ пСрСзаписи содСрТимого ΠΊΡƒΡ‡ΠΈ (heap), Ρ€Π°Π·ΠΌΠ΅Ρ‰Ρ‘Π½Π½ΠΎΠΉ послС стСка Π±Π΅Π· стороТСвых страниц памяти. ΠŸΡ€ΠΎΠ±Π»Π΅ΠΌΠ° ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ эксплуатирована Π»ΡŽΠ±Ρ‹ΠΌ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΌ, способным ΡƒΡΡ‚Π°Π½Π°Π²Π»ΠΈΠ²Π°Ρ‚ΡŒ соСдинСния ΠΊ nix-daemon. По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ всС ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΠΈ ΠΈΠΌΠ΅ΡŽΡ‚ Ρ‚Π°ΠΊΡƒΡŽ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ позволяСт ΠΏΠΎΠ΄Π½ΡΡ‚ΡŒ свои ΠΏΡ€ΠΈΠ²ΠΈΠ»Π΅Π³ΠΈΠΈ Π΄ΠΎ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ root Π² ΠΌΠ½ΠΎΠ³ΠΎΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΡ… установках Nix.

ΠŸΡ€ΠΎΠ±Π»Π΅ΠΌΠ° Ρ€Π΅ΡˆΠ΅Π½Π° ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΠ΅ΠΌ уровня рСкурсии Π² 64 Π²Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Ρ… Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΈ, Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ΠΌ стороТСвых страниц памяти ΠΌΠ΅ΠΆΠ΄Ρƒ стСком ΠΈ ΠΊΡƒΡ‡Π΅ΠΉ ΠΈ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠ΅ΠΉ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΎΠΊ символичСских ссылок Π² NAR. Π’ Nix ΡƒΡΠ·Π²ΠΈΠΌΠΎΡΡ‚ΡŒ проявляСтся начиная с вСрсии 2.24.4 ΠΈ устранСна Π² выпусках 2.34.7, 2.33.6, 2.32.8, 2.31.5, 2.30.5, 2.29.4, 2.28.7. Π’ Lix ΡƒΡΠ·Π²ΠΈΠΌΠΎΡΡ‚ΡŒ появилась Π² выпускС 2.93.0 ΠΈ устранСна Π² обновлСниях 2.93.4, 2.94.2 ΠΈ 2.95.2. ΠŸΠ°ΠΊΠ΅Ρ‚Π½Ρ‹ΠΉ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€ Guix ΡƒΡΠ·Π²ΠΈΠΌΠΎΡΡ‚ΡŒ Π½Π΅ Π·Π°Ρ‚Ρ€Π°Π³ΠΈΠ²Π°Π΅Ρ‚.

Помимо этого Π² ΠΎΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½Π½Ρ‹Ρ… обновлСниях Nix устранСна Π΅Ρ‰Ρ‘ ΠΎΠ΄Π½Π° ΡƒΡΠ·Π²ΠΈΠΌΠΎΡΡ‚ΡŒ (CVE отсутствуСт), ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ присвоСн срСдний ΡƒΡ€ΠΎΠ²Π΅Π½ΡŒ опасности (4.3 ΠΈΠ· 10). ΠŸΡ€ΠΎΠ±Π»Π΅ΠΌΠ° проявляСтся начиная с выпуска Nix 2.24.7 ΠΈ позволяСт ΠΎΡ€Π³Π°Π½ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ запись Ρ„Π°ΠΉΠ»ΠΎΠ² Π² ΠΎΠ±Π»Π°ΡΡ‚ΡŒ Π·Π° ΠΏΡ€Π΅Π΄Π΅Π»Π°ΠΌΠΈ ΠΊΠΎΡ€Π½Π΅Π²ΠΎΠ³ΠΎ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π°, Π² ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ осущСствляСтся распаковка Π°Ρ€Ρ…ΠΈΠ²Π°. Π£ΡΠ·Π²ΠΈΠΌΠΎΡΡ‚ΡŒ эксплуатируСтся Ρ‡Π΅Ρ€Π΅Π· созданиС Π² tar-Ρ„Π°ΠΉΠ»Π°Ρ… элСмСнтов с Π°Π±ΡΠΎΠ»ΡŽΡ‚Π½Ρ‹ΠΌΠΈ Ρ„Π°ΠΉΠ»ΠΎΠ²Ρ‹ΠΌΠΈ путями. ΠŸΡ€ΠΈ распаковкС ΠΏΠΎΠ΄ΠΎΠ±Π½Ρ‹Ρ… Π°Ρ€Ρ…ΠΈΠ²ΠΎΠ² ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ Β«nix-prefetch-url β€”unpackΒ» ΠΈΠ»ΠΈ Β«nix store prefetch-file β€”unpackΒ» Ρ„Π°ΠΉΠ»Ρ‹ с Π°Π±ΡΠΎΠ»ΡŽΡ‚Π½Ρ‹ΠΌΠΈ путями ΠΈΠ·Π²Π»Π΅ΠΊΠ°ΡŽΡ‚ΡΡ ΠΊΠ°ΠΊ Π΅ΡΡ‚ΡŒ, Π±Π΅Π· прСобразования Π² ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ ΠΏΡƒΡ‚ΡŒ.

Fonte: opennet.ru