🔍 CVE-2026-42312

6.8
CVSS Score
MEDIUM
2026-05-11
2026-05-15 14:09
✅ 완료

🇰🇷 한글 설명

pyLoad 0.5.0b3.dev100 이전 버전의 set_config_value() API에서 보안 옵션 허용목록 검증이 불완전하여, 인증된 비관리자 사용자가 SSL/TLS 검증을 비활성화할 수 있습니다. 이를 통해 중간자 공격자가 위조된 인증서를 제시하여 모든 다운로드 통신을 탈취할 수 있습니다.

💡 쉬운 설명

pyLoad 다운로드 매니저에서 일반 사용자가 보안 검증을 끌 수 있는 버그입니다. 공격자가 네트워크를 가로채서 위조된 웹사이트로 사용자를 속여 파일을 탈취할 수 있습니다.

🇺🇸 원문 (English)

pyLoad is a free and open-source download manager written in Python. Prior to 0.5.0b3.dev100, the set_config_value() API method (@permission(Perms.SETTINGS)) in src/pyload/core/api/__init__.py gates security-sensitive options behind a hand-maintained allowlist ADMIN_ONLY_CORE_OPTIONS. The option ("general", "ssl_verify") is not on that allowlist. Any authenticated user with the non-admin SETTINGS permission can set general.ssl_verify = off, and every subsequent outbound pycurl request is made with SSL_VERIFYPEER=0 and SSL_VERIFYHOST=0 — TLS peer and hostname verification are fully disabled. An on-path attacker can then present forged certificates for any hostname pyload fetches. This is a direct continuation of the fix family CVE-2026-33509 / CVE-2026-35463 / CVE-2026-35464 / CVE-2026-35586, each of which patched a different missed option in the same allowlist. This vulnerability is fixed in 0.5.0b3.dev100.

📍 영향받는 시스템

pyLoad < 0.5.0b3.dev100

⚔️ 공격 벡터

인증된 사용자가 API의 set_config_value()를 통해 general.ssl_verify=false를 설정하면 TLS 검증 비활성화, 중간자 공격으로 통신 탈취 가능

🛡️ 대응 방법

pyLoad를 0.5.0b3.dev100 이상으로 업그레이드하거나, ssl_verify 옵션을 허용목록(ADMIN_ONLY_CORE_OPTIONS)에 추가하여 관리자만 변경 가능하도록 제한

🔧 검증 코드

버전이 0.5.0b3.dev100 이상이면 안전하고, 그 이하면 취약합니다. 버전이 출력되지 않으면 pyLoad가 설치되지 않은 상태입니다.

Shell / Script
pip show pyload-ng 2>/dev/null | grep Version | awk '{print $2}' | sed 's/^v//'

📊 CVSS Vector String

CVSS Vector
CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:N

💻 영향받는 소프트웨어

Python