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

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
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
Black Hat USA 2022 Attendee Report
Black Hat attendees are not sleeping well. Between concerns about attacks against cloud services, ransomware, and the growing risks to the global supply chain, these security pros have a lot to be worried about. Read our 2022 report to hear what they're concerned about now.
Flash Poll
Twitter Feed
Dark Reading - Bug Report
Bug Report
Enterprise Vulnerabilities
From DHS/US-CERT's National Vulnerability Database
CVE-2022-37041
PUBLISHED: 2022-08-12
An issue was discovered in ProxyServlet.java in the /proxy servlet in Zimbra Collaboration Suite (ZCS) 8.8.15 and 9.0. The value of the X-Forwarded-Host header overwrites the value of the Host header in proxied requests. The value of X-Forwarded-Host header is not checked against the whitelist of ho...
CVE-2022-37042
PUBLISHED: 2022-08-12
Zimbra Collaboration Suite (ZCS) 8.8.15 and 9.0 has mboximport functionality that receives a ZIP archive and extracts files from it. By bypassing authentication (i.e., not having an authtoken), an attacker can upload arbitrary files to the system, leading to directory traversal and remote code execu...
CVE-2022-37043
PUBLISHED: 2022-08-12
An issue was discovered in the webmail component in Zimbra Collaboration Suite (ZCS) 8.8.15 and 9.0. When using preauth, CSRF tokens are not checked on some POST endpoints. Thus, when an authenticated user views an attacker-controlled page, a request will be sent to the application that appears to b...
CVE-2022-37044
PUBLISHED: 2022-08-12
In Zimbra Collaboration Suite (ZCS) 8.8.15, the URL at /h/search?action accepts parameters called extra, title, and onload that are partially sanitised and lead to reflected XSS that allows executing arbitrary JavaScript on the victim's machine.
CVE-2022-37423
PUBLISHED: 2022-08-12
Neo4j APOC (Awesome Procedures on Cypher) before 4.3.0.7 and 4.x before 4.4.0.8 allows Directory Traversal to sibling directories via apoc.log.stream.