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
Oldest First  |  Newest First  |  Threaded View
Commentary
How SolarWinds Busted Up Our Assumptions About Code Signing
Dr. Jethro Beekman, Technical Director,  3/3/2021
News
'ObliqueRAT' Now Hides Behind Images on Compromised Websites
Jai Vijayan, Contributing Writer,  3/2/2021
News
Attackers Turn Struggling Software Projects Into Trojan Horses
Robert Lemos, Contributing Writer,  2/26/2021
Register for Dark Reading Newsletters
White Papers
Video
Cartoon Contest
Write a Caption, Win an Amazon Gift Card! Click Here
Latest Comment: George has not accepted that the technology age has come to an end.
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
How Enterprises are Developing Secure Applications
How Enterprises are Developing Secure Applications
Recent breaches of third-party apps are driving many organizations to think harder about the security of their off-the-shelf software as they continue to move left in secure software development practices.
Twitter Feed
Dark Reading - Bug Report
Bug Report
Enterprise Vulnerabilities
From DHS/US-CERT's National Vulnerability Database
CVE-2021-26814
PUBLISHED: 2021-03-06
Wazuh API in Wazuh from 4.0.0 to 4.0.3 allows authenticated users to execute arbitrary code with administrative privileges via /manager/files URI. An authenticated user to the service may exploit incomplete input validation on the /manager/files API to inject arbitrary code within the API service sc...
CVE-2021-27581
PUBLISHED: 2021-03-05
The Blog module in Kentico CMS 5.5 R2 build 5.5.3996 allows SQL injection via the tagname parameter.
CVE-2021-28042
PUBLISHED: 2021-03-05
Deutsche Post Mailoptimizer 4.3 before 2020-11-09 allows Directory Traversal via a crafted ZIP archive to the Upload feature or the MO Connect component. This can lead to remote code execution.
CVE-2021-28041
PUBLISHED: 2021-03-05
ssh-agent in OpenSSH before 8.5 has a double free that may be relevant in a few less-common scenarios, such as unconstrained agent-socket access on a legacy operating system, or the forwarding of an agent to an attacker-controlled host.
CVE-2021-3377
PUBLISHED: 2021-03-05
The npm package ansi_up converts ANSI escape codes into HTML. In ansi_up v4, ANSI escape codes can be used to create HTML hyperlinks. Due to insufficient URL sanitization, this feature is affected by a cross-site scripting (XSS) vulnerability. This issue is fixed in v5.0.0.