ADVISORY INFORMATION

  • Product: Framer Preview
  • Vendor URL: https://www.framer.com/
  • Type: Improper Export of Android Application Components [CWE-926]
  • Date found: 2020-09-06
  • Date published: 2020-09-22
  • CVSSv3 Score: 5.5 (CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:N/I:H/A:N)
  • CVE: CVE-2020-25203

CREDITS

This vulnerability was discovered and researched by Julien Ahrens from RCE Security.

VERSIONS AFFECTED

Framer Preview 12

INTRODUCTION

Framer Preview is the best way to view and interact with your Framer X and Framer Classic projects on Android phones and tablets.

(from the vendor’s homepage)

VULNERABILITY DETAILS

The “Framer Preview” app for Android exposes an activity to other apps called “com.framer.viewer.FramerViewActivity”. The purpose of this activity is to show contents of a given URL via an fullscreen overlay to the app user.

However, the app does neither enforce any authorization schema on the activity nor does it validate the given URL.

This can be abused by an attacker (malicious app) to load any website/web content into the fullscreen overlay. An exemplary exploit could look like the following:

Intent i = new Intent();
i.setComponent(new ComponentName("com.framerjs.android", "com.framer.viewer.FramerViewActivity"));
i.setAction("android.intent.action.VIEW");
i.setData(Uri.parse("https://www.rcesecurity.com"));
startActivity(i);

RISK

A malicious app on the same device is able to exploit this vulnerability to lead the user to any webpage/content. The specific problem here is the assumed trust boundary between the user having the Framer Preview app installed and what the app is actually doing/displaying to the user. So if the user sees the app being loaded and automatically loading another page, it can be assumed that the loaded page is also trusted by the user.

SOLUTION

None

REPORT TIMELINE

  • 2020-09-06: Discovery of the vulnerability
  • 2020-09-06: CVE requested from MITRE
  • 2020-09-07: Contacted vendor via their security@, no response
  • 2020-09-08: MITRE assigns CVE-2020-25203
  • 2020-09-09: Informed vendor about the CVE assignment, no response
  • 2020-09-22: Public disclosure due to unresponsive vendor

REFERENCES

None