🇰🇷 한글 설명
Readwise Reader Android 버전이 WebView 내 URL을 생성할 때 공격자가 제어 가능한 메타데이터를 적절한 인코딩 없이 사용합니다. 신뢰할 수 없는 값이 URL 문자열에 직접 삽입되고 innerHTML을 통해 DOM에 삽입됨으로써, 조작된 메타데이터를 통해 스크립트를 주입할 수 있는 저장형 XSS 취약점이 존재합니다.
💡 쉬운 설명
앱이 문서를 읽어올 때 포함된 잘못된 정보를 제대로 검사하지 않아 발생합니다. 공격자가 만든 특수한 문서를 읽으면 앱 내부에서 악성 코드가 실행될 수 있습니다.
🇺🇸 원문 (English)
Readwise Reader for Android constructs URLs in its WebView using attacker-controlled metadata without proper encoding or escaping. The application interpolates untrusted values directly into URL strings and inserts them into the DOM via innerHTML. Because the interpolation occurs without HTML or JavaScript context encoding, a crafted metadata value can break out of the intended URL structure and inject script content. An attacker could supply a document containing malicious metadata that, once synchronized to an Android device and rendered in the Reader WebView, results in execution of injected script content, enabling stored cross-site scripting (XSS)
📍 영향받는 시스템
Readwise Reader for Android (버전 미상)
⚔️ 공격 벡터
악성 메타데이터가 포함된 문서를 동기화하여 WebView를 통해 스크립트 실행
🛡️ 대응 방법
메타데이터 삽입 시 HTML/JavaScript 컨텍스트 인코딩을 적용하고 innerHTML 대신 안전한 API를 사용하도록 업데이트
🔧 검증 코드
명령어 결과에 readwise 관련 패키지가 존재하면 해당 앱이 설치되어 취약점에 노출될 수 있음을 의미합니다.
adb shell pm list packages | grep readwise
📊 CVSS Vector String
CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N
💻 영향받는 소프트웨어
Microsoft Edge for Android