🇰🇷 한글 설명
SiYuan 2.9.0 이상 3.8.7 미만 버전의 인증되지 않은 /check-auth 페이지에서 to 파라미터가 스킴 검증 없이 window.location.href에 할당되는 크로스사이트 스크립팅 취약점이 존재합니다. 공격자는 javascript: URI가 포함된 조작된 링크를 전달하여, 피해자가 로그인한 후 실행되도록 할 수 있습니다.
💡 쉬운 설명
공격자가 만든 특수 링크를 클릭하면 SiYuan 사용자의 로그인 이후 악성 스크립트가 실행될 수 있습니다. 이를 통해 워크스페이스 내용이나 설정이 읽히거나 변경될 위험이 있습니다.
🇺🇸 원문 (English)
SiYuan from 2.9.0 before 3.8.7 contains a cross-site scripting vulnerability in the unauthenticated /check-auth page that assigns the to parameter to window.location.href without scheme validation. Attackers can send a crafted link with a javascript: URI that executes after victim login, invoking kernel APIs to read or modify workspace content and settings.
📍 영향받는 시스템
SiYuan 2.9.0 이상 3.8.7 미만 버전
⚔️ 공격 벡터
javascript: URI가 담긴 조작된 링크를 피해자에게 전달하여 로그인 후 커널 API를 통해 워크스페이스 데이터를 조회·수정
🛡️ 대응 방법
SiYuan을 3.8.7 이상 버전으로 업데이트하고, 신뢰할 수 없는 링크 클릭을 피합니다.
🔧 검증 코드
출력된 버전이 3.8.7 미만이면 취약하므로 업데이트가 필요하며, 3.8.7 이상이면 패치가 적용된 것입니다.
siyuan --version 2>/dev/null || (dpkg -l siyuan 2>/dev/null | grep -E '^ii')