
Exploit de preuve de concept pour CVE-2022-35131 : XSS menant à une exécution de code à distance dans l'application de prise de notes Joplin via une entrée utilisateur non échappée dans les résultats de recherche.
XSS menant à RCE dans Joplin affectant la version 2.8.8 et antérieures. Testé et fonctionne sur Windows et Linux.
Signalé et corrigé : 2022-06
Ctrl+P et rechercher quelque chose dans la note ou le titreLe problème vient du fait que dangerouslySetInnerHTML est utilisé avec une entrée utilisateur non échappée dans GotoAnything.tsx ligne 509. Correction en échappant l'entrée utilisateur.
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>
);
L'espace ne peut pas être utilisé dans la charge utile, mais l'espace encodé \x20 peut être utilisé.
Exemples de charges utiles de titre:
# Payload 1 (Linux)
zzz
# Payload 2 (Windows)
zzz
# Reverse shell (Linux)
zzz
Recherchez zzz pour exécuter la charge utile.