🔍 CVE-2021-32785

5.3
CVSS Score
MEDIUM
2021-07-22
2026-06-17 03:53
✅ 완료

🇰🇷 한글 설명

Apache 2.x용 mod_auth_openidc 모듈에서 Redis 캐시를 암호화하지 않고 사용할 때 발생하는 포맷 스트링 취약점입니다. 공격자가 조작된 인자를 통해 Apache 워커 프로세스를 반복적으로 충돌시켜 서비스 거부(DoS) 상태를 유발할 수 있습니다.

💡 쉬운 설명

인증 모듈이 데이터를 처리하는 과정에서 오류가 발생하여 웹 서버를 강제로 종료시킬 수 있는 문제입니다. 이로 인해 사용자가 웹사이트에 접속하지 못하는 서비스 중단 상태가 발생할 수 있습니다.

🇺🇸 원문 (English)

mod_auth_openidc is an authentication/authorization module for the Apache 2.x HTTP server that functions as an OpenID Connect Relying Party, authenticating users against an OpenID Connect Provider. When mod_auth_openidc versions prior to 2.4.9 are configured to use an unencrypted Redis cache (`OIDCCacheEncrypt off`, `OIDCSessionType server-cache`, `OIDCCacheType redis`), `mod_auth_openidc` wrongly performed argument interpolation before passing Redis requests to `hiredis`, which would perform it again and lead to an uncontrolled format string bug. Initial assessment shows that this bug does not appear to allow gaining arbitrary code execution, but can reliably provoke a denial of service by repeatedly crashing the Apache workers. This bug has been corrected in version 2.4.9 by performing argument interpolation only once, using the `hiredis` API. As a workaround, this vulnerability can be mitigated by setting `OIDCCacheEncrypt` to `on`, as cache keys are cryptographically hashed before use when this option is enabled.

📍 영향받는 시스템

mod_auth_openidc versions prior to 2.4.9 (configured with unencrypted Redis cache)

⚔️ 공격 벡터

조작된 인자를 포함한 Redis 요청을 통해 포맷 스트링 버그를 유발하여 Apache 프로세스 충돌 유도

🛡️ 대응 방법

mod_auth_openidc를 2.4.9 버전 이상으로 업데이트하거나, OIDCCacheEncrypt 설정을 'on'으로 변경하여 캐시 키를 암호화함

🔧 검증 코드

설치된 mod_auth_openidc의 버전을 확인하여 2.4.9 미만인지 확인합니다.

Shell / Script
apache2 -M | grep mod_auth_openidc && dpkg -l | grep mod-auth-openidc 2>/dev/null || rpm -qa | grep mod_auth_openidc

📊 CVSS Vector String

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

💻 영향받는 소프트웨어

Apache HTTP Server