Dark Reading is part of the Informa Tech Division of Informa PLC

This site is operated by a business or businesses owned by Informa PLC and all copyright resides with them.Informa PLC's registered office is 5 Howick Place, London SW1P 1WG. Registered in England and Wales. Number 8860726.

Application Security //

Database

12/17/2018
08:15 AM
Larry Loeb
Larry Loeb
Larry Loeb
50%
50%

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.

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.

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.

Comment  | 
Print  | 
More Insights
Comments
Newest First  |  Oldest First  |  Threaded View
COVID-19: Latest Security News & Commentary
Dark Reading Staff 8/3/2020
Pen Testers Who Got Arrested Doing Their Jobs Tell All
Kelly Jackson Higgins, Executive Editor at Dark Reading,  8/5/2020
New 'Nanodegree' Program Provides Hands-On Cybersecurity Training
Nicole Ferraro, Contributing Writer,  8/3/2020
Register for Dark Reading Newsletters
White Papers
Video
Cartoon Contest
Current Issue
Special Report: Computing's New Normal, a Dark Reading Perspective
This special report examines how IT security organizations have adapted to the "new normal" of computing and what the long-term effects will be. Read it and get a unique set of perspectives on issues ranging from new threats & vulnerabilities as a result of remote working to how enterprise security strategy will be affected long term.
Flash Poll
The Changing Face of Threat Intelligence
The Changing Face of Threat Intelligence
This special report takes a look at how enterprises are using threat intelligence, as well as emerging best practices for integrating threat intel into security operations and incident response. Download it today!
Twitter Feed
Dark Reading - Bug Report
Bug Report
Enterprise Vulnerabilities
From DHS/US-CERT's National Vulnerability Database
CVE-2020-15820
PUBLISHED: 2020-08-08
In JetBrains YouTrack before 2020.2.6881, the markdown parser could disclose hidden file existence.
CVE-2020-15821
PUBLISHED: 2020-08-08
In JetBrains YouTrack before 2020.2.6881, a user without permission is able to create an article draft.
CVE-2020-15823
PUBLISHED: 2020-08-08
JetBrains YouTrack before 2020.2.8873 is vulnerable to SSRF in the Workflow component.
CVE-2020-15824
PUBLISHED: 2020-08-08
In JetBrains Kotlin before 1.4.0, there is a script-cache privilege escalation vulnerability due to kotlin-main-kts cached scripts in the system temp directory, which is shared by all users by default.
CVE-2020-15825
PUBLISHED: 2020-08-08
In JetBrains TeamCity before 2020.1, users with the Modify Group permission can elevate other users' privileges.