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

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.

(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.

Comment  | 
Print  | 
More Insights
Comments
Oldest First  |  Newest First  |  Threaded View
Edge-DRsplash-10-edge-articles
I Smell a RAT! New Cybersecurity Threats for the Crypto Industry
David Trepp, Partner, IT Assurance with accounting and advisory firm BPM LLP,  7/9/2021
News
Attacks on Kaseya Servers Led to Ransomware in Less Than 2 Hours
Robert Lemos, Contributing Writer,  7/7/2021
Commentary
It's in the Game (but It Shouldn't Be)
Tal Memran, Cybersecurity Expert, CYE,  7/9/2021
Register for Dark Reading Newsletters
White Papers
Video
Cartoon
Current Issue
How Machine Learning, AI & Deep Learning Improve Cybersecurity
Machine intelligence is influencing all aspects of cybersecurity. Organizations are implementing AI-based security to analyze event data using ML models that identify attack patterns and increase automation. Before security teams can take advantage of AI and ML tools, they need to know what is possible. This report covers: -How to assess the vendor's AI/ML claims -Defining success criteria for AI/ML implementations -Challenges when implementing AI
Flash Poll
Twitter Feed
Dark Reading - Bug Report
Bug Report
Enterprise Vulnerabilities
From DHS/US-CERT's National Vulnerability Database
CVE-2022-41355
PUBLISHED: 2022-10-06
Online Leave Management System v1.0 was discovered to contain a SQL injection vulnerability via the id parameter at /leave_system/classes/Master.php?f=delete_department.
CVE-2022-39284
PUBLISHED: 2022-10-06
CodeIgniter is a PHP full-stack web framework. In versions prior to 4.2.7 setting `$secure` or `$httponly` value to `true` in `Config\Cookie` is not reflected in `set_cookie()` or `Response::setCookie()`. As a result cookie values are erroneously exposed to scripts. It should be noted that this vuln...
CVE-2022-39279
PUBLISHED: 2022-10-06
discourse-chat is a plugin for the Discourse message board which adds chat functionality. In versions prior to 0.9 some places render a chat channel's name and description in an unsafe way, allowing staff members to cause an cross site scripting (XSS) attack by inserting unsafe HTML into them. Versi...
CVE-2022-27810
PUBLISHED: 2022-10-06
It was possible to trigger an infinite recursion condition in the error handler when Hermes executed specific maliciously formed JavaScript. This condition was only possible to trigger in dev-mode (when asserts were enabled). This issue affects Hermes versions prior to v0.12.0.
CVE-2022-41525
PUBLISHED: 2022-10-06
TOTOLINK NR1800X V9.1.0u.6279_B20210910 was discovered to contain a command injection vulnerability via the OpModeCfg function at /cgi-bin/cstecgi.cgi.