CLP-01-014 Persistent XSS via Direct Login from Bookmarklet (Critical) Caused by missing output filtering, an attacker can abuse the Bookmarklet in combination with the creation of a new card of type ?Direct Login? to persistently infect a Clipperz account and get full and transparent access to all data stored in the account including passwords, keystrokes and other sensitive data. Steps to Reproduce: Navigate to a maliciously prepared Website Use the Clipperz Bookmarklet Copy the generated JSON to create a Card Navigate to the Clipperz application Create a new card of type ?Direct Login? Paste the content and save (First XSS is triggerd) Create the card (Second XSS is triggered) Anytime the affected user navigates to the malicious card, the injected JavaScript is executed. This thereby effectively ?trojanizes? the entire Clipperz account and gives an attacker access to any of the stored cards and related passwords in plaintext. Example Markup for malicious page:
Resulting JSON: {"page": {"title": ""}, "form": {"attributes": {"action": "http://attacked/", "method": null}, "inputs": [{"type": "text", "name": "username", "value": "root"}, {"type": "password", "name": "password", "value": ""}, {"type": "text", "name": "\">", "value": "bla"}]}, "version": "0.2.3"} Affected Markup in Clipperz application: