Уязвимост Π² Python ΠΌΠΎΠ΄ΡƒΠ»Π° TarFile, допускаща запис Π² ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»Π½ΠΈ части Π½Π° Ρ„Π°ΠΉΠ»ΠΎΠ²Π°Ρ‚Π° систСма

Π’ стандартния Python ΠΌΠΎΠ΄ΡƒΠ» tarfile, ΠΊΠΎΠΉΡ‚ΠΎ ΠΏΡ€Π΅Π΄Π»Π°Π³Π° Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π·Π° Ρ‡Π΅Ρ‚Π΅Π½Π΅ ΠΈ запис Π½Π° tar Π°Ρ€Ρ…ΠΈΠ²ΠΈ, бяха ΠΎΡ‚ΠΊΡ€ΠΈΡ‚ΠΈ ΠΏΠ΅Ρ‚ уязвимости, ΠΊΠ°Ρ‚ΠΎ Π΅Π΄Π½Π° ΠΎΡ‚ тях Π΅ с ΠΊΡ€ΠΈΡ‚ΠΈΡ‡Π½Π° стСпСн Π½Π° опасност. УязвимоститС са отстранСни Π² изданията Python 3.13.4 ΠΈ 3.12.11. Най-опасната уязвимост (CVE-2025-4517) позволява ΠΏΡ€ΠΈ Ρ€Π°Π·Π°Ρ€Ρ…ΠΈΠ²ΠΈΡ€Π°Π½Π΅ Π½Π° спСциално ΠΎΡ„ΠΎΡ€ΠΌΠ΅Π½ Π°Ρ€Ρ…ΠΈΠ² Π΄Π° сС записват Ρ„Π°ΠΉΠ»ΠΎΠ²Π΅ Π² ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»Π½ΠΈ части Π½Π° Ρ„Π°ΠΉΠ»ΠΎΠ²Π°Ρ‚Π° систСма. Π’ систСмни скриптовС, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‰ΠΈ tarfile ΠΈ стартирани с ΠΏΡ€Π°Π²Π° root (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π² инструмСнти Π·Π° Ρ€Π°Π±ΠΎΡ‚Π° с ΠΏΠ°ΠΊΠ΅Ρ‚ΠΈ ΠΈ ΠΈΠ·ΠΎΠ»ΠΈΡ€Π°Π½ΠΈ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΈ), уязвимостта ΠΌΠΎΠΆΠ΅ Π΄Π° сС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° Π·Π° повишаванС Π½Π° ΠΏΡ€ΠΈΠ²ΠΈΠ»Π΅Π³ΠΈΠΈΡ‚Π΅ ΠΈΠ»ΠΈ ΠΈΠ·Π»ΠΈΠ·Π°Π½Π΅ извън изолирания ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€.

Уязвимостта засяга ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΈ, Π² ΠΊΠΎΠΈΡ‚ΠΎ ΠΌΠΎΠ΄ΡƒΠ»ΡŠΡ‚ tarfile сС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° Π·Π° Ρ€Π°Π·Π°Ρ€Ρ…ΠΈΠ²ΠΈΡ€Π°Π½Π΅ Π½Π° Π½Π΅Π½Π°Π΄Π΅ΠΆΠ΄Π½ΠΈ tar Π°Ρ€Ρ…ΠΈΠ²ΠΈ, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΉΠΊΠΈ функцията TarFile.extractall() ΠΈΠ»ΠΈ TarFile.extract() с ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚ΡŠΡ€ 'filter=', Π·Π°Π΄Π°Π΄Π΅Π½ Π½Π° 'data' ΠΈΠ»ΠΈ 'tar'. Уязвимостта Π΅ ΠΏΡ€ΠΈΡ‡ΠΈΠ½Π΅Π½Π° ΠΎΡ‚ Π½Π΅ΠΏΡ€Π°Π²ΠΈΠ»Π½Π° ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Π½Π° послСдоватСлността '..' Π² ΠΈΠΌΠ΅Ρ‚ΠΎ Π½Π° символичната Π²Ρ€ΡŠΠ·ΠΊΠ°. ΠŸΡ€ΠΎΠ±Π»Π΅ΠΌΡŠΡ‚ засяга вСрсии Π½Π° Python ΠΎΡ‚ 3.12 Π½Π°Ρ‚Π°Ρ‚ΡŠΠΊ. Π Π΅ΠΆΠΈΠΌΡŠΡ‚ 'filter="data"' сС ΠΏΡ€ΠΈΠ»Π°Π³Π° ΠΏΠΎ ΠΏΠΎΠ΄Ρ€Π°Π·Π±ΠΈΡ€Π°Π½Π΅ Π² ΠΊΠ»ΠΎΠ½Π° Π½Π° Python 3.14, ΠΊΠΎΠΉΡ‚ΠΎ Π² ΠΌΠΎΠΌΠ΅Π½Ρ‚Π° сС Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π²Π° (ΠΈΠ·Π΄Π°Π²Π°Π½Π΅Ρ‚ΠΎ Π΅ ΠΏΠ»Π°Π½ΠΈΡ€Π°Π½ΠΎ Π·Π° СсСнта).

Π”Ρ€ΡƒΠ³ΠΈ уязвимости Π² TarFile:

  • CVE-2025-4330 β€” Π²ΡŠΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ Π·Π° заобикалянС Π½Π° Ρ„ΠΈΠ»Ρ‚ΡŠΡ€Π° Π½Π° ΠΈΠ·Π²Π»Π΅Ρ‡Π΅Π½ΠΈΡ‚Π΅ Π΄Π°Π½Π½ΠΈ, ΠΊΠΎΠ΅Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅ Π΄Π° Π΄ΠΎΠ²Π΅Π΄Π΅ Π΄ΠΎ ΠΈΠ·Π²Π»ΠΈΡ‡Π°Π½Π΅ Π½Π° символична Π²Ρ€ΡŠΠ·ΠΊΠ°, ΡƒΠΊΠ°Π·Π²Π°Ρ‰Π° извън основната дирСктория, Π² която сС ΠΈΠ·Π²ΡŠΡ€ΡˆΠ²Π° Ρ€Π°Π·Π°Ρ€Ρ…ΠΈΠ²ΠΈΡ€Π°Π½Π΅Ρ‚ΠΎ.
  • CVE-2025-4138 β€” Π²ΡŠΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ Π·Π° създаванС Π½Π° ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»Π½ΠΈ символични Π²Ρ€ΡŠΠ·ΠΊΠΈ извън основната дирСктория ΠΏΡ€ΠΈ Ρ€Π°Π·Π°Ρ€Ρ…ΠΈΠ²ΠΈΡ€Π°Π½Π΅ Π½Π° Π°Ρ€Ρ…ΠΈΠ²ΠΈ с ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚ΡŠΡ€ 'filter="data"'.
  • CVE-2024-12718 β€” Π²ΡŠΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ Π·Π° ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ Π½Π° ΠΌΠ΅Ρ‚Π°Π΄Π°Π½Π½ΠΈΡ‚Π΅ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π²Ρ€Π΅ΠΌΠ΅Ρ‚ΠΎ Π½Π° модификация) Π½Π° Ρ„Π°ΠΉΠ»ΠΎΠ²Π΅ извън основната дирСктория ΠΏΡ€ΠΈ Ρ€Π°Π·Π°Ρ€Ρ…ΠΈΠ²ΠΈΡ€Π°Π½Π΅ Π½Π° Π°Ρ€Ρ…ΠΈΠ²ΠΈ с ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚ΡŠΡ€ 'filter="data"' ΠΈΠ»ΠΈ ΠΏΡ€Π°Π²Π° Π·Π° Π΄ΠΎΡΡ‚ΡŠΠΏ (chmod) ΠΏΡ€ΠΈ Ρ€Π°Π·Π°Ρ€Ρ…ΠΈΠ²ΠΈΡ€Π°Π½Π΅ Π½Π° Π°Ρ€Ρ…ΠΈΠ²ΠΈ с ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚ΡŠΡ€ 'filter="tar"'.
  • CVE-2025-4435 β€” Π°ΠΊΠΎ ΠΏΡ€ΠΈ Ρ€Π°Π·Π°Ρ€Ρ…ΠΈΠ²ΠΈΡ€Π°Π½Π΅ Π½Π° Π°Ρ€Ρ…ΠΈΠ²Π° ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚ΡŠΡ€ TarFile.errorlevel Π΅ Π·Π°Π΄Π°Π΄Π΅Π½ Π½Π° 0, Ρ‚ΠΎ Π² ΠΏΡ€ΠΎΡ‚ΠΈΠ²ΠΎΡ€Π΅Ρ‡ΠΈΠ΅ с докумСнтацията, Π΅Π»Π΅ΠΌΠ΅Π½Ρ‚ΠΈ Π½Π° Π°Ρ€Ρ…ΠΈΠ²Π°, ΠΏΠΎΠΏΠ°Π΄Π°Ρ‰ΠΈ ΠΏΠΎΠ΄ зададСния Ρ„ΠΈΠ»Ρ‚ΡŠΡ€, са Ρ€Π°Π·Π°Ρ€Ρ…ΠΈΠ²ΠΈΡ€Π°Π½ΠΈ, Π° Π½Π΅ ΠΈΠ³Π½ΠΎΡ€ΠΈΡ€Π°Π½ΠΈ.

Π˜Π·Ρ‚ΠΎΡ‡Π½ΠΈΠΊ: opennet.ru

ΠšΡƒΠΏΠ΅Ρ‚Π΅ Π½Π°Π΄Π΅ΠΆΠ΄Π΅Π½ хостинг Π·Π° сайтовС с Π·Π°Ρ‰ΠΈΡ‚Π° ΠΎΡ‚ DDoS, VPS VDS ΡΡŠΡ€Π²ΡŠΡ€ΠΈ πŸ”₯ ΠšΡƒΠΏΠ΅Ρ‚Π΅ Π½Π°Π΄Π΅ΠΆΠ΄Π΅Π½ хостинг Π·Π° сайтовС с Π·Π°Ρ‰ΠΈΡ‚Π° ΠΎΡ‚ DDoS, VPS VDS ΡΡŠΡ€Π²ΡŠΡ€ΠΈ | ProHoster