🇰🇷 한글 설명
WordPress의 SAML Single Sign On – SSO Login 플러그인에서 SAML 서명 알고리즘 혼동으로 인한 인증 우회 취약점이 발견되었습니다. 공격자가 SAMLResponse의 SignatureMethod 속성을 조작하여 RSA 공개 키를 HMAC-SHA1 공유 비밀키로 재해석하게 함으로써, 인증 없이 관리자 계정을 탈취할 수 있습니다.
💡 쉬운 설명
로그인 인증 과정에서 사용하는 암호화 방식을 공격자가 마음대로 바꿀 수 있는 결함이 있습니다. 이를 통해 공격자는 아이디와 비밀번호 없이도 관리자 권한으로 사이트에 접속할 수 있습니다.
🇺🇸 원문 (English)
The SAML Single Sign On – SSO Login plugin for WordPress is vulnerable to Authentication Bypass via SAML Signature Algorithm Confusion in all versions up to, and including, 5.4.3. The vulnerability exists because `Mo_SAML_Utilities::mo_saml_cast_key()` reads the `SignatureMethod` Algorithm attribute directly from the attacker-controlled `SAMLResponse` parameter rather than enforcing the locally configured algorithm, causing the plugin to recast the IdP's RSA public key as an HMAC-SHA1 shared secret and validate the forged signature against it. This makes it possible for unauthenticated attackers to forge a SAML assertion targeting any WordPress account — including administrators — obtain valid WordPress authentication cookies, and achieve full administrator-level account takeover.
📍 영향받는 시스템
SAML Single Sign On – SSO Login plugin (버전 5.4.3 이하 모든 버전)
⚔️ 공격 벡터
조작된 SAMLResponse를 전송하여 서명 알고리즘을 혼동시키는 방식의 인증 우회 공격
🛡️ 대응 방법
플러그인을 최신 버전으로 업데이트하거나, 서버 설정에서 허용된 서명 알고리즘만 사용하도록 강제해야 합니다.
🔧 검증 코드
출력된 플러그인 이름과 버전이 5.4.3 이하인지 확인하여 취약 여부를 판단합니다.
wp plugin list --status=active | grep -i 'saml-sso' && wp plugin list --all | grep -E 'saml-sso' | awk '{print $2, $3}'