935
VMScore

CVE-2016-3861

Published: 11/09/2016 Updated: 03/09/2017
CVSS v2 Base Score: 9.3 | Impact Score: 10 | Exploitability Score: 8.6
CVSS v3 Base Score: 7.8 | Impact Score: 5.9 | Exploitability Score: 1.8
VMScore: 935
Vector: AV:N/AC:M/Au:N/C:C/I:C/A:C

Vulnerability Summary

LibUtils in Android 4.x prior to 4.4.4, 5.0.x prior to 5.0.2, 5.1.x prior to 5.1.1, 6.x prior to 2016-09-01, and 7.0 prior to 2016-09-01 mishandles conversions between Unicode character encodings with different encoding widths, which allows remote malicious users to execute arbitrary code or cause a denial of service (heap-based buffer overflow) via a crafted file, aka internal bug 29250543.

Vulnerability Trend

Vulnerable Product Search on Vulmon Subscribe to Product

google android 7.0

google android 4.1.2

google android 4.2

google android 4.4.2

google android 4.4.3

google android 5.0

google android 4.0.2

google android 4.0.3

google android 4.3

google android 4.3.1

google android 6.0

google android 6.0.1

google android 4.0.4

google android 4.1

google android 4.4

google android 4.4.1

google android 5.1.0

google android 4.0

google android 4.0.1

google android 4.2.1

google android 4.2.2

google android 5.0.1

google android 5.1

Vendor Advisories

Debian Bug report logs - #858177 CVE-2016-3921 CVE-2016-3885 CVE-2016-3861 Package: src:android-platform-system-core; Maintainer for src:android-platform-system-core is Android Tools Maintainers <android-tools-devel@listsaliothdebianorg>; Reported by: Moritz Muehlenhoff <jmm@debianorg> Date: Sun, 19 Mar 2017 12:39 ...
Debian Bug report logs - #688280 android-tools: CVE-2012-5564: android-tools-adb creates a file with a static file name in /tmp Package: src:android-platform-system-core; Maintainer for src:android-platform-system-core is Android Tools Maintainers <android-tools-devel@listsaliothdebianorg>; Affects: android-tools-adb Report ...

Exploits

Source: bugschromiumorg/p/project-zero/issues/detail?id=840 There's an inconsistency between the way that the two functions in libutils/Unicodecpp handle invalid surrogate pairs in UTF16, resulting in a mismatch between the size calculated by utf16_to_utf8_length and the number of bytes written by utf16_to_utf8 This results in a heap- ...

Github Repositories

my extended take on Mark Brand's CVE 2016-3861 libutils bug

CVE-2016-3861 An extended version of Mark Brand's libutils exploit, from the Google Project Zero blog post: googleprojectzeroblogspotcom/2016/09/return-to-libstagefright-exploitinghtml Main differences: all of the mp4 files used for exploitation are generated in the browser dynamically comes with an 'extra_groom' option as certain AOSP builds in the 5