🇰🇷 한글 설명
Kirby CMS는 4.9.1 및 5.4.1 이전 버전에서 컬렉션 쿼리에 사용되는 모델 속성을 검증하지 않아, 공격자가 쿼리에 임의의 모델 메서드를 포함할 수 있습니다. 이를 통해 password() 해시 노출, root() 절대 경로 노출, loginPasswordless()를 이용한 권한 상승, delete()를 이용한 대량 삭제가 가능합니다. 해당 문제는 4.9.1 및 5.4.1 버전에서 수정되었습니다.
💡 쉬운 설명
Kirby라는 웹 콘텐츠 관리 시스템에서 공격자가 데이터 조회 요청에 민감한 기능을 몰래 끼워 넣을 수 있는 취약점입니다. 이를 악용하면 비밀번호 정보가 유출되거나 다른 사용자 권한을 얻거나 데이터가 대량으로 삭제될 수 있습니다.
🇺🇸 원문 (English)
Kirby is an open-source content management system. Prior to 4.9.1 and 5.4.1, Kirby did not validate the model attributes that were used in its collection queries, allowing attackers to include arbitrary model methods in their queries. This includes methods with sensitive data such as password() (disclosing the password hash) or root() (disclosing the absolute filesystem path on the server) as well as methods that perform impactful actions such as loginPasswordless() (causing a privilege escalation to another user) or delete() (deleting all queried models in one go if the authenticated user has appropriate permissions). This issue has been fixed in versions 4.9.1 and 5.4.1.
📍 영향받는 시스템
Kirby CMS 4.9.1 미만 및 5.4.1 미만 버전
⚔️ 공격 벡터
컬렉션 쿼리 파라미터에 임의의 모델 메서드(password, root, loginPasswordless, delete 등)를 삽입하여 실행
🛡️ 대응 방법
Kirby를 4.9.1 이상 또는 5.4.1 이상으로 업데이트
🔧 검증 코드
출력된 버전이 4.9.1 이상(4.x 계열) 또는 5.4.1 이상(5.x 계열)이면 패치된 것이고, 그보다 낮으면 취약한 상태입니다.
composer show getkirby/cms 2>/dev/null | grep -E 'versions'