[Original blog post here:
https://wwws.nightwatchcybersecurity.com/2019/02/07/content-injection-in-amazon-kindles-fireos-cve-2019-7399/]
SUMMARY
The FireOS operating system provided by Amazon for Fire tablet devices
can be injected with malicious content by an MITM attacker. An
attacker can also capture the serial number of the device. The root
cause is lack of HTTPS for legal content (terms of use and privacy
policy) within the settings section.
The issue was discovered in FireOS v5.3.6.3 and fixed by the vendor in
v5.3.6.4 that was released in November 2018. Devices will
automatically update to the latest version. CVE-2019-7399 has been
assigned by MITRE to track this issue.
VULNERABILITY DETAILS
FireOS is an operating system provided by Amazon for the Fire tablet
devices. It is a customized fork of Android. While monitoring network
traffic on a test device, we observed that several calls from the
settings section (terms of use and privacy policy) are done without
HTTPS and can be injected with malicious content by an MITM attacker.
It is also possible for the attacker to observe this traffic and
capture the serial number (DSN) of the device.
Steps To Replicate (on Ubuntu 18.04)
1. Install the application on the Android device but do not start it.
2. Install dnsmasq and NGINX on the Linux host:
sudo apt-get install dnsmasq nginx
3. Modify the /etc/hosts file to add the following entry to map the
domain name to the Linux host:
192.168.1.x www.kindle.com
192.168.1.x kindle.com
4. Configure /etc/dnsmasq.conf file to listen on the IP and restart DNSMASQ
listen-address=192.168.1.x
sudo /etc/init.d/dnsmasq restart
5. Add a file with malicious content (you may need to use sudo):
cd /var/www/html
mkdir support
echo powned >support/privacy
echo powned >support/terms
6. Modify the settings on the Kindle device to static, set DNS to
point to a192.168.1.xa. AT THIS POINT a the Kindle device will resolve
DNS against the Linux computer and serve the large servers file
7. Tap aSettingsa, aLegal and Compliancea, and tap either aTerms of
Usea or aPrivacya. Observe injected content.
VENDOR RESPONSE AND MITIGATION
The issue was discovered in FireOS v5.3.6.3 and fixed by the vendor in
v5.3.6.4 that was released in November 2018. Devices will
automatically update to the latest version. MITRE assigned
CVE-2019-7399 to track this issue.
REFERENCES
Amazon tracking # PO135449968
CVE-ID: CVE-2019-7399
CREDITS
Text of the advisory written by Yakov Shafranovich.
TIMELINE
2018-09-03: Initial report to the vendor
2018-09-04: Report triaged and being reviewed by the vendor
2018-09-17: Communication from the vendor, issue still being reviewed
2019-01-10: Fix confirmed, communication regarding disclosure
2019-01-30: Vendor pinged about CVE assignment
2019-02-03: Draft advisory sent for review
2019-02-04: CVE issued by MITRE
2019-02-07: Public disclosure; minor syntax updates