p PatchFirst

GHSA-22fp-mf44-f2mq

GHSA-22fp-mf44-f2mq · youtube-dl vulnerable to file system modification and RCE through improper file-extension sanitization

Здесь приведены факты из открытых источников об уязвимостях. Перед обновлением ознакомьтесь с исходным сообщением.

На странице показана часть фактов из источников. Полное описание и список затронутых версий приведены в связанных бюллетенях.

#### Description This advisory follows the security advisory [GHSA-79w7-vh3h-8g4j published by the _yt-dlp/yt-dlp_ project](https://github.com/yt-dlp/yt-dlp/security/advisories/GHSA-79w7-vh3h-8g4j) to aid remediation of the issue in the _ytdl-org/youtube-dl_ project. ### Vulnerability _youtube-dl_ does not limit the extensions of downloaded files, which could lead to arbitrary filenames being created in the download folder (and path traversal on Windows). ### Impact Since _youtube-dl_ also reads config from the working directory (and, on Windows, executables will be executed from the _youtube-dl_ directory by default) the vulnerability could allow the unwanted execution of local code, including downloads masquerading as, eg, subtitles. ### Patches The versions of _youtube-dl_ listed as _Patched_ remediate this vulnerability by disallowing path separators and whitelisting allowed extensions. As a result, some very uncommon extensions might not get downloaded. **Master code d42a222 or later and nightly builds tagged 2024-07-03 or later** contain the remediation. ### Workarounds Any/all of the below considerations may limit exposure in case it is necessary to use a vulnerable version * have `.%(ext)s` at the end of the output template * download from websites that you trust * do not download to a directory within the executable search `PATH` or other sensitive locations, such as your user directory or system directories * in Windows versions that support it, set [`NoDefaultCurrentDirectoryInExePath`](https://stackoverflow.com/a/50118548) to prevent the _cmd_ shell's executable search adding the default directory before `PATH` * consider that the path traversal vulnerability as a result of resolving `non_existent_dir\..\..\target` does not exist in Linux or macOS * ensure the extension of the media to download is a common video/audio/... one (use `--get-filename`) * omit any of the subtitle options (`--write-subs`/` --write-srt`, `--write-auto-subs`/`--write-automatic-subs`, `--all-subs`). ### References * [GHSA-79w7-vh3h-8g4j](https://github.com/yt-dlp/yt-dlp/security/advisories/GHSA-79w7-vh3h-8g4j) * https://github.com/ytdl-org/youtube-dl/pull/32830

CVSS 7.8 · Высокий

Опубликовано
Обновлено

Стек: python

Затронутые продукты и версии

  • youtube-dl PyPI

    Версии
    • 2015.01.25
    • 2015.01.30.1
    • 2015.01.30.2
    • 2015.02.02
    • 2015.02.02.2
    • 2015.02.02.4
    • 2015.02.02.5
    • 2015.02.03
    • 2015.02.03.1
    • 2015.02.04
    • 2015.02.06
    • 2015.02.09
    • 2015.02.09.1
    • 2015.02.09.2
    • 2015.02.09.3
    • 2015.02.10
    • 2015.02.10.1
    • 2015.02.10.2
    • 2015.02.10.3
    • 2015.02.10.4
    • 2015.02.10.5
    • 2015.02.11
    • 2015.02.16
    • 2015.02.16.1
    • 2015.02.17
    • 2015.02.17.2
    • 2015.02.18
    • 2015.02.18.1
    • 2015.02.19
    • 2015.02.19.1
    • 2015.02.19.2
    • 2015.02.19.3
    • 2015.02.20
    • 2015.02.21
    • 2015.02.23
    • 2015.02.23.1
    • 2015.02.24
    • 2015.02.24.1
    • 2015.02.24.2
    • 2015.02.26
    • 2015.02.26.1
    • 2015.02.26.2
    • 2015.02.28
    • 2015.03.03
    • 2015.03.03.1
    • 2015.03.09
    • 2015.03.15
    • 2015.03.18
    • 2015.03.24
    • 2015.03.28
    • 2015.04.03
    • 2015.04.09
    • 2015.04.17
    • 2015.04.26
    • 2015.05.03
    • 2015.05.04
    • 2015.05.10
    • 2015.05.15
    • 2015.05.20
    • 2015.06.15
    • 2015.06.25
    • 2015.07.04
    • 2015.07.07
    • 2015.07.18
    • 2015.07.21
    • 2015.07.28
    • 2015.08.06.1
    • 2015.08.09
    • 2015.08.16
    • 2015.08.16.1
    • 2015.08.23
    • 2015.08.28
    • 2015.09.03
    • 2015.09.09
    • 2015.09.22
    • 2015.09.28
    • 2015.10.06
    • 2015.10.06.1
    • 2015.10.06.2
    • 2015.10.09
    • 2015.10.12
    • 2015.10.13
    • 2015.10.16
    • 2015.10.18
    • 2015.10.23
    • 2015.10.24
    • 2015.11.01
    • 2015.11.02
    • 2015.11.10
    • 2015.11.13
    • 2015.11.15
    • 2015.11.18
    • 2015.11.19
    • 2015.11.21
    • 2015.11.23
    • 2015.11.24
    • 2015.11.27.1
    • 2015.12.05
    • 2015.12.06
    • 2015.12.09
    • 2015.12.10
    • 2015.12.13
    • 2015.12.18
    • 2015.12.21
    • 2015.12.23
    • 2015.12.29
    • 2015.12.31
    • 2016.01.01
    • 2016.01.09
    • 2016.01.14
    • 2016.01.15
    • 2016.01.23
    • 2016.01.27
    • 2016.01.29
    • 2016.01.31
    • 2016.02.01
    • 2016.02.04
    • 2016.02.05
    • 2016.02.05.1
    • 2016.02.09
    • 2016.02.09.1
    • 2016.02.10
    • 2016.02.13
    • 2016.02.22
    • 2016.02.27
    • 2016.03.01
    • 2016.03.06
    • 2016.03.14
    • 2016.03.18
    • 2016.03.25
    • 2016.03.26
    • 2016.03.27
    • 2016.04.01
    • 2016.04.05
    • 2016.04.06
    • 2016.04.13
    • 2016.04.19
    • 2016.04.24
    • 2016.05.01
    • 2016.05.10
    • 2016.05.16
    • 2016.10.12
    • 2016.10.16
    • 2016.10.19
    • 2016.10.2
    • 2016.10.21
    • 2016.10.21.1
    • 2016.10.25
    • 2016.10.26
    • 2016.10.31
    • 2016.10.7
    • 2016.11.14.1
    • 2016.11.18
    • 2016.11.2
    • 2016.11.22
    • 2016.11.27
    • 2016.11.4
    • 2016.11.8
    • 2016.11.8.1
    • 2016.12.1
    • 2016.12.12
    • 2016.12.15
    • 2016.12.18
    • 2016.12.20
    • 2016.12.22
    • 2016.12.31
    • 2016.12.9
    • 2016.5.21.2
    • 2016.5.30.2
    • 2016.6.11
    • 2016.6.11.1
    • 2016.6.11.3
    • 2016.6.12
    • 2016.6.14
    • 2016.6.16
    • 2016.6.18.1
    • 2016.6.19
    • 2016.6.19.1
    • 2016.6.20
    • 2016.6.22
    • 2016.6.23
    • 2016.6.23.1
    • 2016.6.25
    • 2016.6.26
    • 2016.6.27
    • 2016.6.3
    • 2016.7.1
    • 2016.7.11
    • 2016.7.13
    • 2016.7.16
    • 2016.7.17
    • 2016.7.2
    • 2016.7.22
    • 2016.7.24
    • 2016.7.26.2
    • 2016.7.28
    • 2016.7.3
    • 2016.7.3.1
    • 2016.7.30
    • 2016.7.5
    • 2016.7.6
    • 2016.7.7
    • 2016.7.9
    • 2016.7.9.1
    • 2016.7.9.2
    • 2016.8.1
    • 2016.8.10
    • 2016.8.12
    • 2016.8.13
    • 2016.8.17
    • 2016.8.19
    • 2016.8.22
    • 2016.8.24
    • 2016.8.24.1
    • 2016.8.28
    • 2016.8.31
    • 2016.8.6
    • 2016.8.7
    • 2016.9.11
    • 2016.9.11.1
    • 2016.9.15
    • 2016.9.18
    • 2016.9.19
    • 2016.9.24
    • 2016.9.27
    • 2016.9.3
    • 2016.9.4
    • 2016.9.4.1
    • 2016.9.8
    • 2017.1.10
    • 2017.1.14
    • 2017.1.16
    • 2017.1.18
    • 2017.1.2
    • 2017.1.22
    • 2017.1.24
    • 2017.1.25
    • 2017.1.28
    • 2017.1.29
    • 2017.1.31
    • 2017.1.5
    • 2017.1.8
    • 2017.10.1
    • 2017.10.12
    • 2017.10.15
    • 2017.10.15.1
    • 2017.10.20
    • 2017.10.29
    • 2017.10.7
    • 2017.11.15
    • 2017.11.26
    • 2017.11.6
    • 2017.12.10
    • 2017.12.14
    • 2017.12.2
    • 2017.12.23
    • 2017.12.28
    • 2017.12.31
    • 2017.2.1
    • 2017.2.10
    • 2017.2.11
    • 2017.2.14
    • 2017.2.16
    • 2017.2.17
    • 2017.2.21
    • 2017.2.22
    • 2017.2.24
    • 2017.2.24.1
    • 2017.2.27
    • 2017.2.28
    • 2017.2.4
    • 2017.2.4.1
    • 2017.2.7
    • 2017.3.10
    • 2017.3.15
    • 2017.3.16
    • 2017.3.2
    • 2017.3.20
    • 2017.3.22
    • 2017.3.24
    • 2017.3.26
    • 2017.3.5
    • 2017.3.6
    • 2017.3.7
    • 2017.4.11
    • 2017.4.14
    • 2017.4.15
    • 2017.4.16
    • 2017.4.17
    • 2017.4.2
    • 2017.4.26
    • 2017.4.28
    • 2017.4.3
    • 2017.4.9
    • 2017.5.1
    • 2017.5.14
    • 2017.5.18
    • 2017.5.18.1
    • 2017.5.23
    • 2017.5.26
    • 2017.5.29
    • 2017.5.7
    • 2017.5.9
    • 2017.6.12
    • 2017.6.18
    • 2017.6.23
    • 2017.6.25
    • 2017.6.5
    • 2017.7.15
    • 2017.7.2
    • 2017.7.23
    • 2017.7.30.1
    • 2017.7.9
    • 2017.8.13
    • 2017.8.18
    • 2017.8.23
    • 2017.8.27
    • 2017.8.27.1
    • 2017.8.6
    • 2017.8.9
    • 2017.9.10
    • 2017.9.11
    • 2017.9.15
    • 2017.9.2
    • 2017.9.24
    • 2018.1.14
    • 2018.1.18
    • 2018.1.21
    • 2018.1.27
    • 2018.10.29
    • 2018.10.5
    • 2018.11.18
    • 2018.11.23
    • 2018.11.3
    • 2018.11.7
    • 2018.12.17
    • 2018.12.3
    • 2018.12.31
    • 2018.12.9
    • 2018.2.11
    • 2018.2.22
    • 2018.2.25
    • 2018.2.26
    • 2018.2.3
    • 2018.2.4
    • 2018.2.8
    • 2018.3.10
    • 2018.3.14
    • 2018.3.20
    • 2018.3.26

    Нет опубликованного исправления

Первоисточники

Проверьте свой сервер →