🇰🇷 한글 설명
Roundcube Webmail의 rcube_session::unserialize() 함수에서 객체 주입(Object Injection) 취약점이 발견되었습니다. '!'로 시작하는 세션 키가 처리되는 과정에서 데이터 불일치가 발생하여, 공격자가 조작된 세션 데이터를 통해 PHP 객체 주입을 수행할 수 있습니다.
💡 쉬운 설명
웹메일 프로그램이 사용자의 로그인 정보를 처리할 때 데이터 형식을 잘못 해석하는 오류가 있습니다. 이를 악용하면 공격자가 시스템에 몰래 악성 명령을 실행할 수 있는 통로를 만들 수 있습니다.
🇺🇸 원문 (English)
Roundcube Webmail before 1.6.20 and 1.7.x before 1.7.5 contains an object injection primitive in rcube_session::unserialize(). A session key prefixed with “!” was treated as having no value, and the reconstructed serialized string was emitted with a key but no corresponding value, desynchronizing the remainder of the input so that following session data was interpreted as a serialized value. This yields a PHP object injection primitive for an attacker able to influence stored session data. Upstream fixed this in the commit “Fix object injection primitive in rcube_session::unserialize() via “!”-prefixed session keys”, which rejects such keys.
📍 영향받는 시스템
Roundcube Webmail 1.6.20 미만 버전 및 1.7.x 1.7.5 미만 버전
⚔️ 공격 벡터
조작된 세션 데이터를 저장할 수 있는 환경을 통해 PHP 객체 주입 공격 수행
🛡️ 대응 방법
Roundcube Webmail을 최신 보안 패치가 적용된 버전(1.6.20 이상 또는 1.7.5 이상)으로 업데이트
🔧 검증 코드
설치된 Roundcube의 버전을 확인하여 취약한 버전 범위에 해당하는지 대조하십시오.
php -r 'echo "Roundcube Version Check";' # 실제 버전 확인은 설치된 패키지 관리자나 소스 코드를 통해 수행해야 함