SQLite Vulnerability Could Put Thousands of Apps at Risk

A significant bug in SQLite could allow for remote code execution, leaks of memory and program crashes within thousands of apps, according to new research.

Larry Loeb, Blogger, Informationweek

December 17, 2018

4 Min Read

A nuclear bomb has gone off in security land.

SQLite is a free, public domain relational database management system which is contained in a C programming library. It is widely used across the computing spectrum, including apps and the underlying operating systems that these applications run on such as Unix flavors, macOS and Android.

The database ends up part of the resultant program, and is not the kind that works by client-server interactions.

(Source: iStock)\r\n

(Source: iStock)\r\n

Now, the Tencent Blade Team from China has found a massive bug within SQLite. The bug can cause remote code execution, leaks of program memory and program crashes.

Boom.

The Tencent researchers note:

"Magellan is a remote code execution vulnerability […] that exists in SQLite. As a well-known database, SQLite is widely used in all modern mainstream operating systems and software, so this vulnerability has a wide range of influence. […] We will not disclose any details of the vulnerability at this time, and we are pushing other vendors to fix this vulnerability as soon as possible."

One good thing: Tencent researchers note that they have not yet seen exploitation of this bug in the wild.

The possible attack surface is enormous. The library has been used in Internet of Things devices -- such as Google Home -- desktop software, web browsers -- Google Chrome, Vivaldi, Opera, Brave -- and many other apps and programs.

Tencent notes that the vulnerability can be triggered remotely by something comparable to accessing a particular web page in a browser. It can crash Chrome 70s renderer, according to a demo.

Dr. D. Richard Hipp, the developer of SQLite, is more reserved in how the bug will affect things. He noted in a post on the Hacker News blog: "The vulnerability only exists in applications that allow a potential at-tacker to run arbitrary SQL. If an application allows that, it is usually called an 'SQL Injection' vulnerability and is the fault of the application, not the database engine. The one notable exception to this rule is WebSQL in Chrome."

Notably, Hipp does not dispute the existence of the problem itself -- only what to call it.

It appears from first reports that the WebSQL API is involved in the vulnerability. Neither Firefox or Edge support this API, and it seems to be SQLite-query specific. That means that one would need to access internal tables to activate the bug. However, Firefox has an external SQLite database associated with it, so perhaps a wily researcher will find some way to make Firefox vulnerable. But, so far Firefox has made no mention of this bug, and and it has revised things since the new version of SQLite came out.

The Safari browser doesn't have the API enabled, so it is not vulnerable.

SQLite 3.26.0 and Chrome 71 do fix the underlying problem -- along with an updated Chromium -- since Tencent told these vendors about the problem in November. But that revision to SQLite has not yet been incorporated in current apps or systems. (See Google Chrome 71: Bugs Squashed & New Ways to Block 'Abusive Experiences'.)

Doing this kind of library revision to a program can cause other sorts of problems, and it is usually undertaken only when absolutely necessary. In this case, it will need to be.

Security researchers have already begun to try and reverse-engineer the bug, from the information SQLite released when it fixed the problem. Full exploits will not be that long in coming.

The effect of this bug will force many kinds of differing programs to need maintenance. Anything that allows arbitrary SQLite execution within the program is at risk.

Related posts:

— Larry Loeb has written for many of the last century's major "dead tree" computer magazines, having been, among other things, a consulting editor for BYTE magazine and senior editor for the launch of WebWeek.

Read more about:

Security Now

About the Author

Larry Loeb

Blogger, Informationweek

Larry Loeb has written for many of the last century's major "dead tree" computer magazines, having been, among other things, a consulting editor for BYTE magazine and senior editor for the launch of WebWeek. He has written a book on the Secure Electronic Transaction Internet protocol. His latest book has the commercially obligatory title of Hack Proofing XML. He's been online since uucp "bang" addressing (where the world existed relative to !decvax), serving as editor of the Macintosh Exchange on BIX and the VARBusiness Exchange. His first Mac had 128 KB of memory, which was a big step up from his first 1130, which had 4 KB, as did his first 1401. You can e-mail him at [email protected].

Keep up with the latest cybersecurity threats, newly discovered vulnerabilities, data breach information, and emerging trends. Delivered daily or weekly right to your email inbox.

You May Also Like


More Insights