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

4/24/2019
09:15 AM
Larry Loeb
Larry Loeb
Larry Loeb
50%
50%

New Fix for jQuery Vulnerabilities

A security patch has been made for jQuery to mitigate 'prototype pollution.'

jQuery is an extremely popular fast, small, and feature-rich front-end JavaScript library. It is used by developers to make tasks like HTML document traversal and manipulation, event handling, animation and Ajax much simpler with an easy-to-use API which is functional across a multitude of browsers.

It is used, according to one site survey, in 74% of all Internet sites.

Like other libraries used for programming languages, malicious changes which have been made to the library may be disseminated without affected developers realizing that the changes in those libraries are present.

To combat this, a security patch has been made for jQuery to mitigate "prototype pollution."

Prototypes are used to define a JavaScript object's default structure as well as its default values. This means that a running application can handle a structure that has not been populated with explicit values.

The base problem has been acknowledged for a few years, but researchers are lately realizing that it has affected real-world Java use. As the use of Java expands beyond simple UI handling, the effects of such pollution are showing up in unexpected places. Olivier Arteau's NorthSec 2018 presentation took a detailed look at the problem and what was going to be needed to tackle it. Indeed, that work was a clear guide to the changes that were going to be necessary.

The problem is evident in other Java libraries (Mongoose's recent problem comes to mind), so it's not just jQuery involved here.

Liran Tal, a security researcher at Synk, took another hard look at jQuery and found even more vulnerabilities.

He found that the vulnerabilities showed up as prototype pollution and would "enables attackers to overwrite a JavaScript application object prototype. When that happens, properties that are controlled by the attacker can be injected into objects and then either lead to denial of service by triggering JavaScript exceptions, or tamper with the application source code to force the code path that the attacker injects."

They also showed a proof of concept that allowed escalation to admin rights on a web app.

Fortunately, jQuery 3.4.0 fixes it, even if they still recommend user input sanitation be used.

But a huge problem still remains. Upgrading may break existing apps, since there are format changes in the higher versions. Ninety-three percent of jQuery use is stuck on versions 1 and 2 of the tool. That is not going to be easily remediated.

Fortunately, a backport of the needed changes has been done so that older versions of jQuery may still be used. Security comes at a price of ever-vigilant maintenance of existing installations. New attacks come with new understandings of dependencies that change threat models. In this case, there is a way to save the day.

— 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
Edge-DRsplash-10-edge-articles
7 Old IT Things Every New InfoSec Pro Should Know
Joan Goodchild, Staff Editor,  4/20/2021
News
Cloud-Native Businesses Struggle With Security
Robert Lemos, Contributing Writer,  5/6/2021
Commentary
Defending Against Web Scraping Attacks
Rob Simon, Principal Security Consultant at TrustedSec,  5/7/2021
Register for Dark Reading Newsletters
White Papers
Video
Cartoon
Current Issue
2021 Top Enterprise IT Trends
We've identified the key trends that are poised to impact the IT landscape in 2021. Find out why they're important and how they will affect you today!
Flash Poll
Twitter Feed
Dark Reading - Bug Report
Bug Report
Enterprise Vulnerabilities
From DHS/US-CERT's National Vulnerability Database
CVE-2021-22152
PUBLISHED: 2021-05-13
A Denial of Service due to Improper Input Validation vulnerability in the Management Console component of BlackBerry UEM version(s) 12.13.1 QF2 and earlier and 12.12.1a QF6 and earlier could allow an attacker to potentially to prevent any new user connections.
CVE-2021-22153
PUBLISHED: 2021-05-13
A Remote Code Execution vulnerability in the Management Console component of BlackBerry UEM version(s) 12.13.1 QF2 and earlier and 12.12.1a QF6 and earlier could allow an attacker to potentially cause the spreadsheet application to run commands on the victim’s local machine with t...
CVE-2021-22154
PUBLISHED: 2021-05-13
An Information Disclosure vulnerability in the Management Console component of BlackBerry UEM version(s) 12.13.1 QF2 and earlier and 12.12.1a QF6 and earlier could allow an attacker to potentially gain access to a victim's web history.
CVE-2021-20331
PUBLISHED: 2021-05-13
Specific versions of the MongoDB C# Driver may erroneously publish events containing authentication-related data to a command listener configured by an application. The published events may contain security-sensitive data when commands such as "saslStart", "saslContinue", "i...
CVE-2021-31215
PUBLISHED: 2021-05-13
SchedMD Slurm before 20.02.7 and 20.03.x through 20.11.x before 20.11.7 allows remote code execution as SlurmUser because use of a PrologSlurmctld or EpilogSlurmctld script leads to environment mishandling.