For the past five years, a vulnerability in many Android phones has left users' text messages, call histories, and possibly other sensitive data open to snooping, security researchers said Thursday.

The flaw, which is most severe in Android versions 4.3 and earlier, allows low-privileged apps to access sensitive data that's supposed to be off-limits, according to a blog post published by security firm FireEye. But instead, the data is available by invoking permissions that are already requested by millions of apps available in Google Play. Company researchers said the vulnerability can also be exploited by adversaries who gain physical access to an unlocked handset. Indexed as CVE-2016-2060, the bug was first introduced when mobile chipmaker Qualcomm released a set of programming interfaces for a system service known as the "network_manager" and later the "netd" daemon.

"CVE-2016-2060 has been present on devices since at least 2011 and likely affects hundreds of Android models around the world," FireEye researchers wrote. "This vulnerability allows a seemingly benign application to access sensitive user data including SMS and call history and the ability to perform potentially sensitive actions such as changing system settings or disabling the lock screen. Devices running Android 4.3 (“Jelly Bean MR2”) or older are the most affected by the vulnerability, and are likely to remain unpatched. Newer devices utilizing SEAndroid are still affected, but to a lesser extent."

The vulnerability was patched in the Android security patch Google released on May 1. A Google representative said Nexus devices were never affected. Still, a large portion of Android users are unable to receive monthly patches because of restrictions imposed by carriers or manufacturers. That percentage of users—Google was unable to say how big it is, but it makes up the vast majority—will remain vulnerable for the foreseeable future and may never get a fix.

Those most at risk are the estimated 34 percent of the user base running versions 4.3 or earlier. That's because those handsets lack a security protection introduced in 4.4 called SEAndroid, short for Security Enhancements for Android. The defense helps secure phones in a variety of ways, including limiting the access apps can gain to other “radio” users' application data and limiting filesystem write capabilities and app-to-app interactions. SEAndroid also provides protections for the netd daemon.

Even on vulnerable devices running 4.4 or higher, however, a malicious application can surreptitiously modify sensitive OS properties. Attackers often combine such exploits with a similarly low-severity exploit to increase their reach into a targeted phone.