
إثبات مفهوم لاستغلال CVE-2022-35131: XSS تؤدي إلى تنفيذ التعليمات البرمجية عن بُعد في تطبيق Joplin لتدوين الملاحظات عبر إدخال مستخدم غير مهرب في نتائج البحث.
ثغرة XSS تؤدي إلى تنفيذ التعليمات البرمجية عن بُعد (RCE) في Joplin، وتؤثر على الإصدار 2.8.8 والإصدارات الأقدم. تم اختبارها وتعمل على Windows وLinux.
تم الإبلاغ عنها وإصلاحها: 2022-06
Ctrl+P وابحث عن شيء ما في الملاحظة أو العنوانالمشكلة هي أن dangerouslySetInnerHTML يُستخدم مع إدخال مستخدم غير مُهرَّب في GotoAnything.tsx السطر 509. الحل هو إفلات إدخال المستخدم.
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 لتنفيذ الحمولة.