
# CVE-2022-35131 개념 증명 익스플로잇: Joplin 메모 앱의 검색 결과에서 이스케이프되지 않은 사용자 입력을 통한 XSS로 인한 원격 코드 실행
Joplin 2.8.8 및 이전 버전에 영향을 미치는 XSS로, 원격 코드 실행(RCE)으로 이어집니다. Windows 및 Linux에서 테스트되었으며 동작합니다.
보고 및 수정: 2022-06
Ctrl+P를 누르고 메모 또는 제목에서 무언가를 검색합니다.문제는 GotoAnything.tsx의 509행에서 dangerouslySetInnerHTML이 이스케이프되지 않은 사용자 입력과 함께 사용되기 때문입니다. 사용자 입력을 이스케이프하여 수정합니다.
return (
<div key={item.id} className={isSelected ? 'selected' : null} style={rowStyle} onClick={this.listItem_onClick} data-id={item.id} data-parent-id={item.parent_id} data-type={item.type}>
<div style={style.rowTitle} dangerouslySetInnerHTML={{ __html: titleHtml }}></div>
{fragmentComp}
{pathComp}
</div>
);
페이로드에는 공백을 사용할 수 없지만, 인코딩된 공백 \x20은 사용할 수 있습니다.
예시 제목 페이로드:
# Payload 1 (Linux)
zzz
# Payload 2 (Windows)
zzz
# Reverse shell (Linux)
zzz
zzz를 검색하여 페이로드를 실행합니다.