무료 버전과 Pro 버전을 모두 포함하는 WordPress 플러그인 ‘Really Simple Security'(이전의 ‘Really Simple SSL’)에 영향을 미치는 심각한 인증 우회 취약점이 발견되었습니다.
Really Simple Security는 WordPress 플랫폼용 보안 플러그인으로, SSL 구성, 로그인 보호, 2단계 인증 계층 및 실시간 취약성 감지 기능을 제공합니다. 무료 버전만 해도 400만 개 이상의 웹사이트에서 사용됩니다.
이 결함을 공개적으로 공개한 Wordfence는 이를 12년 역사상 보고된 가장 심각한 취약점 중 하나로 꼽으며 원격 공격자가 영향을 받은 사이트에 대한 완전한 관리 액세스 권한을 얻을 수 있다고 경고했습니다.
설상가상으로 이 결함은 자동화된 스크립트를 사용하여 대량으로 악용될 수 있으며 잠재적으로 대규모 웹사이트 탈취 캠페인으로 이어질 수 있습니다.
Wordfence는 호스팅 제공업체가 고객 사이트의 플러그인을 강제 업데이트하고 데이터베이스를 검사하여 누구도 취약한 버전을 실행하지 않도록 할 것을 제안하는 위험이 있습니다.
2FA로 인해 보안이 약화됨
문제의 심각한 심각도 결함은 Wordfence의 연구원 István Márton이 2024년 11월 6일에 발견한 CVE-2024-10924입니다.
이는 플러그인의 2단계 REST API 작업에서 사용자 인증을 부적절하게 처리하여 관리자를 포함한 모든 사용자 계정에 무단 액세스를 허용함으로써 발생합니다.
구체적으로 문제는 ‘user_id’와 ‘login_nonce’ 매개변수를 확인하여 사용자 신원을 확인하는 ‘check_login_and_get_user()’ 함수에 있습니다.
‘login_nonce’가 유효하지 않은 경우 요청은 거부되지 않고 대신 ‘user_id’만을 기반으로 사용자를 인증하는 ‘authenticate_and_redirect()’를 호출하여 효과적으로 인증 우회를 허용합니다.
이 결함은 2단계 인증(2FA)이 활성화된 경우 악용될 수 있으며 기본적으로 비활성화되어 있더라도 많은 관리자는 더 강력한 계정 보안을 위해 이를 허용합니다.
CVE-2024-10924는 “무료”, “Pro” 및 “Pro Multisite” 릴리스의 플러그인 버전 9.0.0부터 최대 9.1.1.1까지 영향을 미칩니다.
개발자는 이제 코드가 ‘login_nonce’ 확인 실패를 올바르게 처리하고 ‘check_login_and_get_user()’ 함수를 즉시 종료하도록 하여 결함을 해결했습니다.
수정 사항은 Pro 버전의 경우 11월 12일, 무료 사용자의 경우 11월 14일에 출시된 플러그인 버전 9.1.2에 적용되었습니다.
공급업체는 WordPress.org와 협력하여 플러그인 사용자에 대해 강제 보안 업데이트를 수행했지만 웹사이트 관리자는 여전히 최신 버전(9.1.2)을 실행하고 있는지 확인해야 합니다.
Pro 버전 사용자는 라이선스가 만료되면 자동 업데이트가 비활성화되므로 9.1.2를 수동으로 업데이트해야 합니다.
어제 현재 플러그인 무료 버전의 설치를 모니터링하는 WordPress.org 통계 사이트에서는 약 450,000건의 다운로드가 확인되었으며, 이로 인해 3,500,000개의 사이트가 잠재적으로 결함에 노출되었습니다.