Π£ΡΠ·Π²ΠΈΠΌΠΎΡΡ‚ΡŒ Π² 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

Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ