Publicus/cvefixes-security-ir-graphrag huggingface dataset:
CVE-2016-3693: Permissions, Privileges, and Access Controls (CWE-264)
value: The Safemode gem before 1.2.4 for Ruby, when initialized with a delegate object that is a Rails controller, allows context-dependent attackers to obtain sensitive information via the inspect method.
CWE description: Weaknesses in this category are related to the management of permissions, privileges, and other security features that are used to perform access control.
CVSS v3 base score: 8.1
Published: 2016-05-20T14:59Z
Repository: https://github.com/theforeman/foreman
Language: Other
Files changed: Gemfile
Commit date: 2016-04-18 15:42:50 +0100
Commit message: Fixes #14635 - bump safemode version to fix the unwanted inspect issue

Diff: diff --git a/Gemfile b/Gemfile
index 5ac752ec1..0adfd6e6c 100644
--- a/Gemfile
+++ b/Gemfile
@@ -17,11 +17,11 @@ gem 'oauth', '~> 0.4'
 gem 'deep_cloneable', '~> 2.0'
 gem 'foreigner', '~> 1.4'
 gem 'validates_lengths_from_database', '~> 0.5'
 gem 'friendly_id', '~> 5.0'
 gem 'secure_headers', '~> 1.3'
-gem 'safemode', '~> 1.2'
+gem 'safemode', '~> 1.2', '>= 1.2.4'
 gem 'fast_gettext', '>= 0.8', '< 2.0'
 gem 'gettext_i18n_rails', '~> 1.0'
 gem 'rails-i18n', '~> 4.0.0'
 gem 'turbolinks', '~> 2.5'
 gem 'logging', '>= 1.8.0', '< 3.0.0'

Vulnerable code: gem 'safemode', '~> 1.2'
Fixed code: gem 'safemode', '~> 1.2', '>= 1.2.4'
CVE-2016-6319: Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting') (CWE-79)
value: Cross-site scripting (XSS) vulnerability in app/helpers/form_helper.rb in Foreman before 1.12.2, as used by Remote Execution and possibly other plugins, allows remote attackers to inject arbitrary web script or HTML via the label parameter.
CWE description: The product does not neutralize or incorrectly neutralizes user-controllable input before it is placed in output that is used as a web page that is served to other users.
CVSS v3 base score: 6.1
Published: 2016-08-19T21:59Z
Repository: https://github.com/theforeman/foreman
Language: Ruby
Files changed: app/helpers/form_helper.rb
Commit date: 2016-08-10 12:26:59 +0200
Commit message: Fixes #16024 - escape labels of form fields

Diff: diff --git a/app/helpers/form_helper.rb b/app/helpers/form_helper.rb
index 0db9635a0..2e7d451fb 100644
--- a/app/helpers/form_helper.rb
+++ b/app/helpers/form_helper.rb
@@ -281,11 +281,11 @@ module FormHelper
     label_size = options.delete(:label_size) || "col-md-2"
     required_mark = check_required(options, f, attr)
     label = options[:label] == :none ? '' : options.delete(:label)
     label ||= ((clazz = f.object.class).respond_to?(:gettext_translation_for_attribute_name) &&
         s_(clazz.gettext_translation_for_attribute_name attr)) if f
-    label = label.present? ? label_tag(attr, "#{label}#{required_mark}".html_safe, :class => label_size + " control-label") : ''
+    label = label.present? ? label_tag(attr, "#{label}#{required_mark}", :class => label_size + " control-label") : ''
     label
   end
 
   def check_required options, f, attr
     required = options.delete(:required) # we don't want to use html5 required attr so we delete the option

Vulnerable code:     label = label.present? ? label_tag(attr, "#{label}#{required_mark}".html_safe, :class => label_size + " control-label") : ''
Fixed code:     label = label.present? ? label_tag(attr, "#{label}#{required_mark}", :class => label_size + " control-label") : ''
CVE-2019-16786: Inconsistent Interpretation of HTTP Requests ('HTTP Request/Response Smuggling') (CWE-444)
value: Waitress through version 1.3.1 would parse the Transfer-Encoding header and only look for a single string value, if that value was not chunked it would fall through and use the Content-Length header instead. According to the HTTP standard Transfer-Encoding should be a comma separated list, with the inner-most encoding first, followed by any further transfer codings, ending with chunked. Requests sent with: "Transfer-Encoding: gzip, chunked" would incorrectly get ignored, and the request would use a Content-Length header instead to determine the body size of the HTTP message. This could allow for Waitress to treat a single request as multiple requests in the case of HTTP pipelining. This issue is fixed in Waitress 1.4.0.
CWE description: The product acts as an intermediary HTTP agent
         (such as a proxy or firewall) in the data flow between two
         entities such as a client and server, but it does not
         interpret malformed HTTP requests or responses in ways that
         are consistent with how the messages will be processed by
         those entities that are at the ultimate destination.
CVSS v3 base score: 7.5
Published: 2019-12-20T23:15Z
Repository: https://github.com/Pylons/waitress
Language: Unknown
Commit date: 2019-12-20 11:30:59 +0100
Commit message: Merge pull request from GHSA-g2xc-35jw-c63p

HTTP Request Smuggling Fixes
CVE-2019-16789: Inconsistent Interpretation of HTTP Requests ('HTTP Request/Response Smuggling') (CWE-444)
value: In Waitress through version 1.4.0, if a proxy server is used in front of waitress, an invalid request may be sent by an attacker that bypasses the front-end and is parsed differently by waitress leading to a potential for HTTP request smuggling. Specially crafted requests containing special whitespace characters in the Transfer-Encoding header would get parsed by Waitress as being a chunked request, but a front-end server would use the Content-Length instead as the Transfer-Encoding header is considered invalid due to containing invalid characters. If a front-end server does HTTP pipelining to a backend Waitress server this could lead to HTTP request splitting which may lead to potential cache poisoning or unexpected information disclosure. This issue is fixed in Waitress 1.4.1 through more strict HTTP field validation.
CWE description: The product acts as an intermediary HTTP agent
         (such as a proxy or firewall) in the data flow between two
         entities such as a client and server, but it does not
         interpret malformed HTTP requests or responses in ways that
         are consistent with how the messages will be processed by
         those entities that are at the ultimate destination.
CVSS v3 base score: 8.2
Published: 2019-12-26T17:15Z
Repository: https://github.com/Pylons/waitress
Language: Unknown
Commit date: 2019-12-24 15:18:05 +0100
Commit message: Merge pull request from GHSA-m5ff-3wj3-8ph4

HTTP header-field stricter validation
CVE-2020-5236: Uncontrolled Resource Consumption (CWE-400)
value: Waitress version 1.4.2 allows a DOS attack When waitress receives a header that contains invalid characters. When a header like "Bad-header: xxxxxxxxxxxxxxx\x10" is received, it will cause the regular expression engine to catastrophically backtrack causing the process to use 100% CPU time and blocking any other interactions. This allows an attacker to send a single request with an invalid header and take the service offline. This issue was introduced in version 1.4.2 when the regular expression was updated to attempt to match the behaviour required by errata associated with RFC7230. The regular expression that is used to validate incoming headers has been updated in version 1.4.3, it is recommended that people upgrade to the new version of Waitress as soon as possible.
CWE description: The product does not properly control the allocation and maintenance of a limited resource, thereby enabling an actor to influence the amount of resources consumed, eventually leading to the exhaustion of available resources.
CVSS v3 base score: 6.5
Published: 2020-02-04T03:15Z
Repository: https://github.com/Pylons/waitress
Language: Unknown
Commit date: 2020-02-02 21:45:15 -0800
Commit message: Merge pull request from GHSA-73m2-3pwg-5fgc

Fix catastrophic backtracking in regular expression
CVE-2022-24761: Inconsistent Interpretation of HTTP Requests ('HTTP Request/Response Smuggling') (CWE-444)
value: Waitress is a Web Server Gateway Interface server for Python 2 and 3. When using Waitress versions 2.1.0 and prior behind a proxy that does not properly validate the incoming HTTP request matches the RFC7230 standard, Waitress and the frontend proxy may disagree on where one request starts and where it ends. This would allow requests to be smuggled via the front-end proxy to waitress and later behavior. There are two classes of vulnerability that may lead to request smuggling that are addressed by this advisory: The use of Python's `int()` to parse strings into integers, leading to `+10` to be parsed as `10`, or `0x01` to be parsed as `1`, where as the standard specifies that the string should contain only digits or hex digits; and Waitress does not support chunk extensions, however it was discarding them without validating that they did not contain illegal characters. This vulnerability has been patched in Waitress 2.1.1. A workaround is available. When deploying a proxy in front of waitress, turning on any and all functionality to make sure that the request matches the RFC7230 standard. Certain proxy servers may not have this functionality though and users are encouraged to upgrade to the latest version of waitress instead.
CWE description: The product acts as an intermediary HTTP agent
         (such as a proxy or firewall) in the data flow between two
         entities such as a client and server, but it does not
         interpret malformed HTTP requests or responses in ways that
         are consistent with how the messages will be processed by
         those entities that are at the ultimate destination.
CVSS v3 base score: 7.5
Published: 2022-03-17T13:15Z
Repository: https://github.com/Pylons/waitress
Language: Unknown
Commit date: 2022-03-16 15:26:15 -0600
Commit message: Merge pull request from GHSA-4f7p-27jc-3c36

Fix for HTTP request smuggling due to incorrect validation
CVE-2022-31015: Uncaught Exception (CWE-248)
value: Waitress is a Web Server Gateway Interface server for Python 2 and 3. Waitress versions 2.1.0 and 2.1.1 may terminate early due to a thread closing a socket while the main thread is about to call select(). This will lead to the main thread raising an exception that is not handled and then causing the entire application to be killed. This issue has been fixed in Waitress 2.1.2 by no longer allowing the WSGI thread to close the socket. Instead, that is always delegated to the main thread. There is no work-around for this issue. However, users using waitress behind a reverse proxy server are less likely to have issues if the reverse proxy always reads the full response.
CWE description: An exception is thrown from a function, but it is not caught.
CVSS v3 base score: 5.9
Published: 2022-05-31T23:15Z
Repository: https://github.com/Pylons/waitress
Language: Unknown
Commit date: 2022-05-24 22:07:10 -0500
Commit message: Merge pull request #377 from Pylons/bugfix/select-closed-socket-race

Bugfix: Retry if a thread closes a socket before we select() on it
CVE-2022-31015: Concurrent Execution using Shared Resource with Improper Synchronization ('Race Condition') (CWE-362)
value: Waitress is a Web Server Gateway Interface server for Python 2 and 3. Waitress versions 2.1.0 and 2.1.1 may terminate early due to a thread closing a socket while the main thread is about to call select(). This will lead to the main thread raising an exception that is not handled and then causing the entire application to be killed. This issue has been fixed in Waitress 2.1.2 by no longer allowing the WSGI thread to close the socket. Instead, that is always delegated to the main thread. There is no work-around for this issue. However, users using waitress behind a reverse proxy server are less likely to have issues if the reverse proxy always reads the full response.
CWE description: The product contains a code sequence that can run concurrently with other code, and the code sequence requires temporary, exclusive access to a shared resource, but a timing window exists in which the shared resource can be modified by another code sequence that is operating concurrently.
CVSS v3 base score: 5.9
Published: 2022-05-31T23:15Z
Repository: https://github.com/Pylons/waitress
Language: Unknown
Commit date: 2022-05-24 22:07:10 -0500
Commit message: Merge pull request #377 from Pylons/bugfix/select-closed-socket-race

Bugfix: Retry if a thread closes a socket before we select() on it
CVE-2022-1045: Unrestricted Upload of File with Dangerous Type (CWE-434)
value: Stored XSS viva .svg file upload in GitHub repository polonel/trudesk prior to v1.2.0.
CWE description: The product allows the upload or transfer of dangerous file types that are automatically processed within its environment.
CVSS v3 base score: 5.4
Published: 2022-04-11T07:15Z
Repository: https://github.com/polonel/trudesk
Language: JavaScript
Files changed: src/controllers/tickets.js
Commit date: 2022-04-09 20:12:14 -0400
Commit message: fix(tickets): disable uploading .svg as an attachment
Diff: diff --git a/src/controllers/tickets.js b/src/controllers/tickets.js
index db840df7..caf1aa63 100644
--- a/src/controllers/tickets.js
+++ b/src/controllers/tickets.js
@@ -573,13 +573,11 @@ ticketsController.uploadImageMDE = function (req, res) {
       '.tiff',
       '.tif',
       '.bmp',
       '.dib',
       '.heif',
-      '.heic',
-      '.svg',
-      '.svgz'
+      '.heic'
     ]
 
     if (!allowedExtensions.includes(ext.toLocaleLowerCase())) {
       error = {
         status: 400,

Vulnerable code:       '.heic',
      '.svg',
      '.svgz'
Fixed code:       '.heic'
CVE-2022-1803: Improper Restriction of Rendered UI Layers or Frames (CWE-1021)
value: Improper Restriction of Rendered UI Layers or Frames in GitHub repository polonel/trudesk prior to 1.2.2.
CWE description: The web application does not restrict or incorrectly restricts frame objects or UI layers that belong to another application or domain, which can lead to user confusion about which interface the user is interacting with.
CVSS v3 base score: 6.9
Published: 2022-05-20T22:16Z
Repository: https://github.com/polonel/trudesk
Language: JavaScript
Files changed: src/middleware/index.js
Commit date: 2022-05-18 17:38:43 -0400
Commit message: fix(core): iframe security fix
Diff: diff --git a/src/middleware/index.js b/src/middleware/index.js
index 1cb07dff3..132f84d86 100644
--- a/src/middleware/index.js
+++ b/src/middleware/index.js
@@ -171,10 +171,11 @@ function allowCrossDomain (req, res, next) {
   res.setHeader('Access-Control-Allow-Methods', 'GET, POST, PUT, DELETE, PATCH, OPTIONS')
   res.setHeader(
     'Access-Control-Allow-Headers',
     'DNT,X-Mx-ReqToken,Keep-Alive,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,accesstoken,X-RToken,X-Token'
   )
+  res.setHeader('Content-Security-Policy', "frame-ancestors 'none';")
 
   if (req.method === 'OPTIONS') {
     res.sendStatus(200)
   } else {
     next()

Fixed code:   res.setHeader('Content-Security-Policy', "frame-ancestors 'none';")
CVE-2022-1947: Other (NVD-CWE-Other)
value: Use of Incorrect Operator in GitHub repository polonel/trudesk prior to 1.2.3.
CWE description: NVD is only using a subset of CWE for mapping instead of the entire CWE, and the weakness type is not covered by that subset.
CVSS v3 base score: 6.5
Published: 2022-05-31T23:15Z
Repository: https://github.com/polonel/trudesk
Language: JavaScript
Files changed: src/controllers/messages.js
Commit date: 2022-05-28 23:12:22 -0400
Commit message: fix(messages): invalid permissions
Diff: diff --git a/src/controllers/messages.js b/src/controllers/messages.js
index f4e091ba0..7c8d3640f 100644
--- a/src/controllers/messages.js
+++ b/src/controllers/messages.js
@@ -88,11 +88,11 @@ messagesController.get = function (req, res) {
       }
     )
   })
 }
 
-messagesController.getConversation = function (req, res) {
+messagesController.getConversation = async (req, res) => {
   const cid = req.params.convoid
   if (_.isUndefined(cid)) return handleError(res, 'Invalid Conversation ID!')
 
   const content = {}
   content.title = 'Messages'
@@ -179,10 +179,20 @@ messagesController.getConversation = function (req, res) {
           if (convo === null || convo === undefined) {
             return res.redirect('/messages')
           }
 
           const c = convo.toObject()
+
+          let isPart = false
+          _.each(c.participants, function (p) {
+            if (p._id.toString() === req.user._id.toString()) isPart = true
+          })
+
+          if (!isPart) {
+            return res.redirect('/messages')
+          }
+
           messageSchema.getConversationWithObject(
             { cid: c._id, userMeta: convo.userMeta, requestingUser: req.user },
             function (err, messages) {
               if (err) return next(err)
 

Vulnerable code: messagesController.getConversation = function (req, res) {
Fixed code: messagesController.getConversation = async (req, res) => {

          let isPart = false
          _.each(c.participants, function (p) {
            if (p._id.toString() === req.user._id.toString()) isPart = true
          })

          if (!isPart) {
            return res.redirect('/messages')
          }
CVE-2024-37168: Insufficient Information (NVD-CWE-noinfo)
value: @grpc/grps-js implements the core functionality of gRPC purely in JavaScript, without a C++ addon. Prior to versions 1.10.9, 1.9.15, and 1.8.22, there are two separate code paths in which memory can be allocated per message in excess of the `grpc.max_receive_message_length` channel option: If an incoming message has a size on the wire greater than the configured limit, the entire message is buffered before it is discarded; and/or if an incoming message has a size within the limit on the wire but decompresses to a size greater than the limit, the entire message is decompressed into memory, and on the server is not discarded. This has been patched in versions 1.10.9, 1.9.15, and 1.8.22.

CWE description: There is insufficient information about the issue to classify it; details are unkown or unspecified.
Published: 2024-06-10T22:15Z
Repository: https://github.com/grpc/grpc-node
Language: Unknown
Commit date: 2024-06-10 10:33:47 -0700
Commit message: Merge pull request from GHSA-7v5v-9h63-cj86

grpc-js: Avoid buffering significantly more than max_receive_message_size per received message
CVE-2021-42836: Uncontrolled Resource Consumption (CWE-400)
value: GJSON before 1.9.3 allows a ReDoS (regular expression denial of service) attack.
CWE description: The product does not properly control the allocation and maintenance of a limited resource, thereby enabling an actor to influence the amount of resources consumed, eventually leading to the exhaustion of available resources.
CVSS v3 base score: 7.5
Published: 2021-10-22T18:15Z
Repository: https://github.com/tidwall/gjson
Language: Other
Files changed: go.mod, go.sum
Commit date: 2021-10-04 11:46:58 -0700
Commit message: Update match dependency

This commit updates the github.com/tidwall/match library, which
address an issue where it's possible to produce a ReDos attack.

fixes #236

Diff: diff --git a/go.mod b/go.mod
index 85b771d..30ed7f0 100644
--- a/go.mod
+++ b/go.mod
@@ -1,8 +1,8 @@
 module github.com/tidwall/gjson
 
 go 1.12
 
 require (
-	github.com/tidwall/match v1.0.3
+	github.com/tidwall/match v1.1.0
 	github.com/tidwall/pretty v1.2.0
 )
diff --git a/go.sum b/go.sum
index d0afaf4..f4dcaab 100644
--- a/go.sum
+++ b/go.sum
@@ -1,4 +1,4 @@
-github.com/tidwall/match v1.0.3 h1:FQUVvBImDutD8wJLN6c5eMzWtjgONK9MwIBCOrUJKeE=
-github.com/tidwall/match v1.0.3/go.mod h1:eRSPERbgtNPcGhD8UCthc6PmLEQXEWd3PRB5JTxsfmM=
+github.com/tidwall/match v1.1.0 h1:VfI2e2aXLvytih7WUVyO9uvRC+RcXlaTrMbHuQWnFmk=
+github.com/tidwall/match v1.1.0/go.mod h1:eRSPERbgtNPcGhD8UCthc6PmLEQXEWd3PRB5JTxsfmM=
 github.com/tidwall/pretty v1.2.0 h1:RWIZEg2iJ8/g6fDDYzMpobmaoGh5OLl4AXtGUGPcqCs=
 github.com/tidwall/pretty v1.2.0/go.mod h1:ITEVvHYasfjBbM0u2Pg8T2nJnzm8xPwvNhhsoaGGjNU=

Vulnerable code: 	github.com/tidwall/match v1.0.3
github.com/tidwall/match v1.0.3 h1:FQUVvBImDutD8wJLN6c5eMzWtjgONK9MwIBCOrUJKeE=
github.com/tidwall/match v1.0.3/go.mod h1:eRSPERbgtNPcGhD8UCthc6PmLEQXEWd3PRB5JTxsfmM=
Fixed code: 	github.com/tidwall/match v1.1.0
github.com/tidwall/match v1.1.0 h1:VfI2e2aXLvytih7WUVyO9uvRC+RcXlaTrMbHuQWnFmk=
github.com/tidwall/match v1.1.0/go.mod h1:eRSPERbgtNPcGhD8UCthc6PmLEQXEWd3PRB5JTxsfmM=
CVE-2021-4261: Improper Neutralization of Special Elements used in an SQL Command ('SQL Injection') (CWE-89)
value: A vulnerability classified as critical has been found in pacman-canvas up to 1.0.5. Affected is the function addHighscore of the file data/db-handler.php. The manipulation leads to sql injection. It is possible to launch the attack remotely. Upgrading to version 1.0.6 is able to address this issue. The name of the patch is 29522c90ca1cebfce6453a5af5a45281d99b0646. It is recommended to upgrade the affected component. VDB-216270 is the identifier assigned to this vulnerability.
CWE description: The product constructs all or part of an SQL command using externally-influenced input from an upstream component, but it does not neutralize or incorrectly neutralizes special elements that could modify the intended SQL command when it is sent to a downstream component. Without sufficient removal or quoting of SQL syntax in user-controllable inputs, the generated SQL query can cause those inputs to be interpreted as SQL instead of ordinary user data.
CVSS v3 base score: 9.8
Published: 2022-12-19T14:15Z
Repository: https://github.com/platzhersh/pacman-canvas
Language: PHP
Files changed: data/db-handler.php
Commit date: 2021-05-05 00:21:21 +0200
Commit message: get rid of sql injection vulnerability

Diff: diff --git a/data/db-handler.php b/data/db-handler.php
index fdcf965..fc0ee81 100644
--- a/data/db-handler.php
+++ b/data/db-handler.php
@@ -94,23 +94,12 @@ function addHighscore($name, $score, $level) {
 	}
 
 	$name_clean = htmlspecialchars($name);
 	$score_clean = htmlspecialchars($score);
 
-	$db->exec('INSERT INTO highscore (name, score, level, date, log_referer, log_user_agent, log_remote_addr, log_remote_host, cheater) '
-		. 'VALUES ("' 
-			. $name . '", ' 
-			. $score . ', ' 
-			. $level . ', "' 
-			. $date . '", "' 
-			. $ref .'", "'
-			. $ua . '", "'
-			. $remA .'", "'
-			. $remH . '", "'
-			. $cheater
-		.'")'
-	);
+	$db->exec('INSERT INTO highscore (name, score, level, date, log_referer, log_user_agent, log_remote_addr, log_remote_host, cheater)VALUES(?,?,?,?,?,?,?,?,?)',$name, $score,$level,$date,$ref,$ua,$remA,$remH,$cheater);
+
 
 	$response['status'] = "success";
 	$response['level'] = $level;
 	$response['name'] = $name;
 	$response['score'] = $score;

Vulnerable code: 	$db->exec('INSERT INTO highscore (name, score, level, date, log_referer, log_user_agent, log_remote_addr, log_remote_host, cheater) '
		. 'VALUES ("' 
			. $name . '", ' 
			. $score . ', ' 
			. $level . ', "' 
			. $date . '", "' 
			. $ref .'", "'
			. $ua . '", "'
			. $remA .'", "'
			. $remH . '", "'
			. $cheater
		.'")'
	);
Fixed code: 	$db->exec('INSERT INTO highscore (name, score, level, date, log_referer, log_user_agent, log_remote_addr, log_remote_host, cheater)VALUES(?,?,?,?,?,?,?,?,?)',$name, $score,$level,$date,$ref,$ua,$remA,$remH,$cheater);
CVE-2015-10053: Improper Neutralization of Special Elements used in an SQL Command ('SQL Injection') (CWE-89)
value: A vulnerability classified as critical has been found in prodigasistemas curupira up to 0.1.3. Affected is an unknown function of the file app/controllers/curupira/passwords_controller.rb. The manipulation leads to sql injection. Upgrading to version 0.1.4 is able to address this issue. The patch is identified as 93a9a77896bb66c949acb8e64bceafc74bc8c271. It is recommended to upgrade the affected component. VDB-218394 is the identifier assigned to this vulnerability.
CWE description: The product constructs all or part of an SQL command using externally-influenced input from an upstream component, but it does not neutralize or incorrectly neutralizes special elements that could modify the intended SQL command when it is sent to a downstream component. Without sufficient removal or quoting of SQL syntax in user-controllable inputs, the generated SQL query can cause those inputs to be interpreted as SQL instead of ordinary user data.
CVSS v3 base score: 9.8
Published: 2023-01-16T12:15Z
Repository: https://github.com/prodigasistemas/curupira
Language: Ruby
Files changed: app/controllers/curupira/passwords_controller.rb
Commit date: 2015-08-13 16:51:14 -0300
Commit message: fixed SQL injection vulnerability

Diff: diff --git a/app/controllers/curupira/passwords_controller.rb b/app/controllers/curupira/passwords_controller.rb
index f3f771b..35983db 100644
--- a/app/controllers/curupira/passwords_controller.rb
+++ b/app/controllers/curupira/passwords_controller.rb
@@ -4,11 +4,11 @@ class Curupira::PasswordsController < ApplicationController
   def new
     @user = User.new
   end
 
   def create
-    @user = User.find_by(params[:user])
+    @user = User.find_by(email: params[:user][:email])
     if @user.present?
       @user.deliver_reset_password_instructions!
       redirect_to new_session_path, notice: "Verifique seu email para receber instruções de recuperação de senha"
     else
       @user = User.new email: params[:user][:email]

Vulnerable code:     @user = User.find_by(params[:user])
Fixed code:     @user = User.find_by(email: params[:user][:email])
CVE-2020-28248: Integer Overflow or Wraparound (CWE-190)
value: An integer overflow in the PngImg::InitStorage_() function of png-img before 3.1.0 leads to an under-allocation of heap memory and subsequently an exploitable heap-based buffer overflow when loading a crafted PNG file.
CWE description: The product performs a calculation that can
         produce an integer overflow or wraparound when the logic
         assumes that the resulting value will always be larger than
         the original value. This occurs when an integer value is
         incremented to a value that is too large to store in the
         associated representation. When this occurs, the value may
         become a very small or negative number.
CVSS v3 base score: 8.8
Published: 2021-02-20T00:15Z
Repository: https://github.com/gemini-testing/png-img
Language: C++
Files changed: src/PngImg.cc
Commit date: 2020-10-06 03:20:34 +0300
Commit message: Handle image size overflow

Diff: diff --git a/src/PngImg.cc b/src/PngImg.cc
index 17968ae..5a554a7 100644
--- a/src/PngImg.cc
+++ b/src/PngImg.cc
@@ -58,14 +58,24 @@ void PngImg::ReadInfo_(PngReadStruct& rs) {
 }
 
 ///
 void PngImg::InitStorage_() {
     rowPtrs_.resize(info_.height, nullptr);
-    data_ = new png_byte[info_.height * info_.rowbytes];
+    // Extend height and rowbytes from uint32_t to size_t to avoid multiplication overflow when size_t is larger
+    size_t h = info_.height;
+    size_t rb = info_.rowbytes;
+    // We need to make sure that info_.height * info_.rowbytes will not overflow size_t
+    // Unfotunately, there's no simple and portable way to do this in C++
+    // For integer division of positive numbers a * b > c <==> a > c / b holds
+    if (h > std::numeric_limits<size_t>::max() / rb) {
+        // TODO Propagate this exception to JS, and test it
+        throw std::runtime_error("Image is too large to allocate single buffer");
+    }
+    data_ = new png_byte[h * rb];
 
     for(size_t i = 0; i < info_.height; ++i) {
-        rowPtrs_[i] = data_ + i * info_.rowbytes;
+        rowPtrs_[i] = data_ + i * rb;
     }
 }
 
 ///
 unique_ptr<Pxl> PngImg::Get(png_uint_32 x, png_uint_32 y) const

Vulnerable code:     data_ = new png_byte[info_.height * info_.rowbytes];
        rowPtrs_[i] = data_ + i * info_.rowbytes;
Fixed code:     // Extend height and rowbytes from uint32_t to size_t to avoid multiplication overflow when size_t is larger
    size_t h = info_.height;
    size_t rb = info_.rowbytes;
    // We need to make sure that info_.height * info_.rowbytes will not overflow size_t
    // Unfotunately, there's no simple and portable way to do this in C++
    // For integer division of positive numbers a * b > c <==> a > c / b holds
    if (h > std::numeric_limits<size_t>::max() / rb) {
        // TODO Propagate this exception to JS, and test it
        throw std::runtime_error("Image is too large to allocate single buffer");
    }
    data_ = new png_byte[h * rb];
        rowPtrs_[i] = data_ + i * rb;
CVE-2020-28248: Out-of-bounds Write (CWE-787)
value: An integer overflow in the PngImg::InitStorage_() function of png-img before 3.1.0 leads to an under-allocation of heap memory and subsequently an exploitable heap-based buffer overflow when loading a crafted PNG file.
CWE description: The product writes data past the end, or before the beginning, of the intended buffer.
CVSS v3 base score: 8.8
Published: 2021-02-20T00:15Z
Repository: https://github.com/gemini-testing/png-img
Language: C++
Files changed: src/PngImg.cc
Commit date: 2020-10-06 03:20:34 +0300
Commit message: Handle image size overflow

Diff: diff --git a/src/PngImg.cc b/src/PngImg.cc
index 17968ae..5a554a7 100644
--- a/src/PngImg.cc
+++ b/src/PngImg.cc
@@ -58,14 +58,24 @@ void PngImg::ReadInfo_(PngReadStruct& rs) {
 }
 
 ///
 void PngImg::InitStorage_() {
     rowPtrs_.resize(info_.height, nullptr);
-    data_ = new png_byte[info_.height * info_.rowbytes];
+    // Extend height and rowbytes from uint32_t to size_t to avoid multiplication overflow when size_t is larger
+    size_t h = info_.height;
+    size_t rb = info_.rowbytes;
+    // We need to make sure that info_.height * info_.rowbytes will not overflow size_t
+    // Unfotunately, there's no simple and portable way to do this in C++
+    // For integer division of positive numbers a * b > c <==> a > c / b holds
+    if (h > std::numeric_limits<size_t>::max() / rb) {
+        // TODO Propagate this exception to JS, and test it
+        throw std::runtime_error("Image is too large to allocate single buffer");
+    }
+    data_ = new png_byte[h * rb];
 
     for(size_t i = 0; i < info_.height; ++i) {
-        rowPtrs_[i] = data_ + i * info_.rowbytes;
+        rowPtrs_[i] = data_ + i * rb;
     }
 }
 
 ///
 unique_ptr<Pxl> PngImg::Get(png_uint_32 x, png_uint_32 y) const

Vulnerable code:     data_ = new png_byte[info_.height * info_.rowbytes];
        rowPtrs_[i] = data_ + i * info_.rowbytes;
Fixed code:     // Extend height and rowbytes from uint32_t to size_t to avoid multiplication overflow when size_t is larger
    size_t h = info_.height;
    size_t rb = info_.rowbytes;
    // We need to make sure that info_.height * info_.rowbytes will not overflow size_t
    // Unfotunately, there's no simple and portable way to do this in C++
    // For integer division of positive numbers a * b > c <==> a > c / b holds
    if (h > std::numeric_limits<size_t>::max() / rb) {
        // TODO Propagate this exception to JS, and test it
        throw std::runtime_error("Image is too large to allocate single buffer");
    }
    data_ = new png_byte[h * rb];
        rowPtrs_[i] = data_ + i * rb;
CVE-2016-2537: Improper Input Validation (CWE-20)
value: The is-my-json-valid package before 2.12.4 for Node.js has an incorrect exports['utc-millisec'] regular expression, which allows remote attackers to cause a denial of service (blocked event loop) via a crafted string.
CWE description: The product receives input or data, but it does
        not validate or incorrectly validates that the input has the
        properties that are required to process the data safely and
        correctly.
CVSS v3 base score: 7.5
Published: 2016-02-23T05:59Z
Repository: https://github.com/mafintosh/is-my-json-valid
Language: JavaScript
Files changed: formats.js
Commit date: 2016-01-17 22:55:32 +0100
Commit message: fix utc-millisec regex to avoid a ddos attack

Diff: diff --git a/formats.js b/formats.js
index 3038dae..9cb8380 100644
--- a/formats.js
+++ b/formats.js
@@ -9,6 +9,6 @@ exports['color'] = /(#?([0-9A-Fa-f]{3,6})\b)|(aqua)|(black)|(blue)|(fuchsia)|(gr
 exports['hostname'] = /^([a-zA-Z0-9]|[a-zA-Z0-9][a-zA-Z0-9\-]{0,61}[a-zA-Z0-9])(\.([a-zA-Z0-9]|[a-zA-Z0-9][a-zA-Z0-9\-]{0,61}[a-zA-Z0-9]))*$/
 exports['alpha'] = /^[a-zA-Z]+$/
 exports['alphanumeric'] = /^[a-zA-Z0-9]+$/
 exports['style'] = /\s*(.+?):\s*([^;]+);?/g
 exports['phone'] = /^\+(?:[0-9] ?){6,14}[0-9]$/
-exports['utc-millisec'] = /^[0-9]+(\.?[0-9]+)?$/
+exports['utc-millisec'] = /^[0-9]{1,15}\.?[0-9]{0,15}$/

Vulnerable code: exports['utc-millisec'] = /^[0-9]+(\.?[0-9]+)?$/
Fixed code: exports['utc-millisec'] = /^[0-9]{1,15}\.?[0-9]{0,15}$/
CVE-2023-46301: Improper Encoding or Escaping of Output (CWE-116)
value: iTerm2 before 3.4.20 allow (potentially remote) code execution because of mishandling of certain escape sequences related to upload.
CWE description: The product prepares a structured message for communication with another component, but encoding or escaping of the data is either missing or done incorrectly. As a result, the intended structure of the message is not preserved.
CVSS v3 base score: 9.8
Published: 2023-10-22T04:15Z
Repository: https://github.com/gnachman/iTerm2
Language: Objective-C
Files changed: sources/PTYSession.m
Commit date: 2023-08-07 21:56:23 -0700
Commit message: Fix ReportUpload vulnerability

Diff: diff --git a/sources/PTYSession.m b/sources/PTYSession.m
index f1ee02a3e0..cadb0b4312 100644
--- a/sources/PTYSession.m
+++ b/sources/PTYSession.m
@@ -12609,11 +12609,16 @@ - (void)requestUploadWithFormat:(NSString *)format version:(NSString *)version {
                     DLog(@"Finished");
                     self.upload = nil;
                 }
             }];
         } else {
-            [self writeTaskNoBroadcast:@"abort\n" encoding:NSISOLatin1StringEncoding forceEncoding:YES reporting:NO];
+            // Send a Control-C to cancel the command. The protocol calls to send "abort\n" but this
+            // introduces a security risk because reports must not contain newlines.
+            [self writeTaskNoBroadcast:[NSString stringWithLongCharacter:3]
+                              encoding:NSISOLatin1StringEncoding
+                         forceEncoding:YES
+                             reporting:NO];
         }
     }];
 }
 
 - (void)setAlertOnNextMark:(BOOL)alertOnNextMark {

Vulnerable code:             [self writeTaskNoBroadcast:@"abort\n" encoding:NSISOLatin1StringEncoding forceEncoding:YES reporting:NO];
Fixed code:             // Send a Control-C to cancel the command. The protocol calls to send "abort\n" but this
            // introduces a security risk because reports must not contain newlines.
            [self writeTaskNoBroadcast:[NSString stringWithLongCharacter:3]
                              encoding:NSISOLatin1StringEncoding
                         forceEncoding:YES
                             reporting:NO];
CVE-2022-2523: Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting') (CWE-79)
value: Cross-site Scripting (XSS) - Reflected in GitHub repository beancount/fava prior to 1.22.2.
CWE description: The product does not neutralize or incorrectly neutralizes user-controllable input before it is placed in output that is used as a web page that is served to other users.
CVSS v3 base score: 6.1
Published: 2022-07-25T14:15Z
Repository: https://github.com/beancount/fava
Language: Other
Files changed: frontend/src/modals/EntryContext.svelte, frontend/src/query/Query.svelte
Commit date: 2022-07-23 21:06:44 +0200
Commit message: fix xss issue in query filter

Diff: diff --git a/frontend/src/modals/EntryContext.svelte b/frontend/src/modals/EntryContext.svelte
index d154aaab..375e5a21 100644
--- a/frontend/src/modals/EntryContext.svelte
+++ b/frontend/src/modals/EntryContext.svelte
@@ -33,11 +33,14 @@
         <tbody>
           {#each Object.entries(balances_before) as [account, inventory]}
             <tr>
               <td><a href={urlForAccount(account)}>{account}</a></td>
               <td>
-                {@html inventory.join("<br>")}
+                {#each inventory as amount}
+                  {amount}
+                  <br />
+                {/each}
               </td>
             </tr>
           {/each}
         </tbody>
       </table>
@@ -50,11 +53,14 @@
         <tbody>
           {#each Object.entries(balances_after) as [account, inventory]}
             <tr>
               <td><a href={urlForAccount(account)}>{account}</a></td>
               <td>
-                {@html inventory.join("<br>")}
+                {#each inventory as amount}
+                  {amount}
+                  <br />
+                {/each}
               </td>
             </tr>
           {/each}
         </tbody>
       </table>
diff --git a/frontend/src/query/Query.svelte b/frontend/src/query/Query.svelte
index 79e4b337..f7e0ec77 100644
--- a/frontend/src/query/Query.svelte
+++ b/frontend/src/query/Query.svelte
@@ -104,11 +104,11 @@
           {#if result.chart}
             <Chart chart={result.chart} />
           {/if}
           {@html result.table}
         {:else if error}
-          {@html error}
+          {error}
         {/if}
       </div>
     </details>
   {/each}
 </div>

Vulnerable code:                 {@html inventory.join("<br>")}
                {@html inventory.join("<br>")}
          {@html error}
Fixed code:                 {#each inventory as amount}
                  {amount}
                  <br />
                {/each}
                {#each inventory as amount}
                  {amount}
                  <br />
                {/each}
          {error}
CVE-2020-26261: Exposure of Resource to Wrong Sphere (CWE-668)
value: jupyterhub-systemdspawner enables JupyterHub to spawn single-user notebook servers using systemd. In jupyterhub-systemdspawner before version 0.15 user API tokens issued to single-user servers are specified in the environment of systemd units. These tokens are incorrectly accessible to all users. In particular, the-littlest-jupyterhub is affected, which uses systemdspawner by default. This is patched in jupyterhub-systemdspawner v0.15
CWE description: The product exposes a resource to the wrong control sphere, providing unintended actors with inappropriate access to the resource.
CVSS v3 base score: 7.9
Published: 2020-12-09T17:15Z
Repository: https://github.com/jupyterhub/systemdspawner
Language: Unknown
Commit date: 2020-12-07 12:48:58 +0100
Commit message: Merge pull request from GHSA-cg54-gpgr-4rm6

use EnvironmentFile to pass environment variables to systemd units
CVE-2016-15029: Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting') (CWE-79)
value: A vulnerability has been found in Ydalb mapicoin up to 1.9.0 and classified as problematic. This vulnerability affects unknown code of the file webroot/stats.php. The manipulation of the argument link/search leads to cross site scripting. The attack can be initiated remotely. Upgrading to version 1.10.0 is able to address this issue. The patch is identified as 67e87f0f0c1ac238fcd050f4c3db298229bc9679. It is recommended to upgrade the affected component. VDB-223402 is the identifier assigned to this vulnerability.
CWE description: The product does not neutralize or incorrectly neutralizes user-controllable input before it is placed in output that is used as a web page that is served to other users.
CVSS v3 base score: 6.1
Published: 2023-03-21T11:15Z
Repository: https://github.com/Ydalb/mapicoin
Language: PHP
Files changed: webroot/stats.php
Commit date: 2016-08-06 17:32:00 +0200
Commit message: fix(stats.php): security issue (XSS)

Diff: diff --git a/webroot/stats.php b/webroot/stats.php
index a6432ec..d9bc9d1 100644
--- a/webroot/stats.php
+++ b/webroot/stats.php
@@ -56,11 +56,11 @@
         <tbody>
         <?php foreach ($searches as $search):?>
             <?php $link = str_replace(['?','&'], ['%3F','%26'], $search['search']); ?>
             <tr>
                 <td>
-                    <a href="https://mapicoin.fr/?u=<?= $link ?>"><?= $search['search'] ?></a>
+                    <a href="https://mapicoin.fr/?u=<?= htmlentities($link, ENT_QUOTES, "UTF-8"); ?>"><?= htmlentities($search['search'], ENT_QUOTES, "UTF-8") ?></a>
                 </td>
                 <td><?= $search['count'] ?></td>
                 <td><?= time_elapsed_string(strtotime($search['updated'])) ?></td>
             </tr>
         <?php endforeach; ?>

Vulnerable code:                     <a href="https://mapicoin.fr/?u=<?= $link ?>"><?= $search['search'] ?></a>
Fixed code:                     <a href="https://mapicoin.fr/?u=<?= htmlentities($link, ENT_QUOTES, "UTF-8"); ?>"><?= htmlentities($search['search'], ENT_QUOTES, "UTF-8") ?></a>
CVE-2017-2616: Concurrent Execution using Shared Resource with Improper Synchronization ('Race Condition') (CWE-362)
value: A race condition was found in util-linux before 2.32.1 in the way su handled the management of child processes. A local authenticated attacker could use this flaw to kill other processes with root privileges under specific conditions.
CWE description: The product contains a code sequence that can run concurrently with other code, and the code sequence requires temporary, exclusive access to a shared resource, but a timing window exists in which the shared resource can be modified by another code sequence that is operating concurrently.
CVSS v3 base score: 4.7
Published: 2018-07-27T19:29Z
Repository: https://github.com/karelzak/util-linux
Language: C
Files changed: login-utils/su-common.c
Commit date: 2017-02-01 11:58:09 +0100
Commit message: su: properly clear child PID

Reported-by: Tobias Stöckmann <tobias@stoeckmann.org>
Signed-off-by: Karel Zak <kzak@redhat.com>

Diff: diff --git a/login-utils/su-common.c b/login-utils/su-common.c
index 5aefd3fff..696adc888 100644
--- a/login-utils/su-common.c
+++ b/login-utils/su-common.c
@@ -366,32 +366,38 @@ create_watching_parent (void)
                        WCOREDUMP (status) ? _(" (core dumped)") : "");
               status = WTERMSIG (status) + 128;
             }
           else
             status = WEXITSTATUS (status);
+
+	  /* child is gone, don't use the PID anymore */
+	  child = (pid_t) -1;
         }
       else if (caught_signal)
         status = caught_signal + 128;
       else
         status = 1;
     }
   else
     status = 1;
 
-  if (caught_signal)
+  if (caught_signal && child != (pid_t)-1)
     {
       fprintf (stderr, _("\nSession terminated, killing shell..."));
       kill (child, SIGTERM);
     }
 
   cleanup_pam (PAM_SUCCESS);
 
   if (caught_signal)
     {
-      sleep (2);
-      kill (child, SIGKILL);
-      fprintf (stderr, _(" ...killed.\n"));
+      if (child != (pid_t)-1)
+	{
+	  sleep (2);
+	  kill (child, SIGKILL);
+	  fprintf (stderr, _(" ...killed.\n"));
+	}
 
       /* Let's terminate itself with the received signal.
        *
        * It seems that shells use WIFSIGNALED() rather than our exit status
        * value to detect situations when is necessary to cleanup (reset)

Vulnerable code:   if (caught_signal)
      sleep (2);
      kill (child, SIGKILL);
      fprintf (stderr, _(" ...killed.\n"));
Fixed code: 
	  /* child is gone, don't use the PID anymore */
	  child = (pid_t) -1;
  if (caught_signal && child != (pid_t)-1)
      if (child != (pid_t)-1)
	{
	  sleep (2);
	  kill (child, SIGKILL);
	  fprintf (stderr, _(" ...killed.\n"));
	}
CVE-2018-7738: Insufficient Information (NVD-CWE-noinfo)
value: In util-linux before 2.32-rc1, bash-completion/umount allows local users to gain privileges by embedding shell commands in a mountpoint name, which is mishandled during a umount command (within Bash) by a different user, as demonstrated by logging in as root and entering umount followed by a tab character for autocompletion.
CWE description: There is insufficient information about the issue to classify it; details are unkown or unspecified.
CVSS v3 base score: 7.8
Published: 2018-03-07T02:29Z
Repository: https://github.com/karelzak/util-linux
Language: Other
Files changed: bash-completion/umount
Commit date: 2017-11-16 16:27:32 +0100
Commit message: bash-completion: (umount) use findmnt, escape a space in paths

 # mount /dev/sdc1 /mnt/test/foo\ bar
 # umount <tab>

has to return "/mnt/test/foo\ bar".

Changes:

 * don't use mount | awk output, we have findmnt
 * force compgen use \n as entries separator

Addresses: https://github.com/karelzak/util-linux/issues/539
Signed-off-by: Karel Zak <kzak@redhat.com>

Diff: diff --git a/bash-completion/umount b/bash-completion/umount
index d76cb9fffd..98c90d61a4 100644
--- a/bash-completion/umount
+++ b/bash-completion/umount
@@ -38,11 +38,12 @@ _umount_module()
 				--version"
 			COMPREPLY=( $(compgen -W "${OPTS[*]}" -- $cur) )
 			return 0
 			;;
 	esac
-	local DEVS_MPOINTS
-	DEVS_MPOINTS="$(mount | awk '{print $1, $3}')"
-	COMPREPLY=( $(compgen -W "$DEVS_MPOINTS" -- $cur) )
-	return 0
+
+	local oldifs=$IFS
+	IFS=$'\n'
+	COMPREPLY=( $( compgen -W '$(findmnt -lno TARGET | sed "s/\([[:blank:]]\)/\\\\\1/g")' -- "$cur" ) )
+	IFS=$oldifs
 }
 complete -F _umount_module umount

Vulnerable code: 	local DEVS_MPOINTS
	DEVS_MPOINTS="$(mount | awk '{print $1, $3}')"
	COMPREPLY=( $(compgen -W "$DEVS_MPOINTS" -- $cur) )
	return 0
Fixed code: 
	local oldifs=$IFS
	IFS=$'\n'
	COMPREPLY=( $( compgen -W '$(findmnt -lno TARGET | sed "s/\([[:blank:]]\)/\\\\\1/g")' -- "$cur" ) )
	IFS=$oldifs
CVE-2021-37600: Integer Overflow or Wraparound (CWE-190)
value: An integer overflow in util-linux through 2.37.1 can potentially cause a buffer overflow if an attacker were able to use system resources in a way that leads to a large number in the /proc/sysvipc/sem file. NOTE: this is unexploitable in GNU C Library environments, and possibly in all realistic environments.
CWE description: The product performs a calculation that can
         produce an integer overflow or wraparound when the logic
         assumes that the resulting value will always be larger than
         the original value. This occurs when an integer value is
         incremented to a value that is too large to store in the
         associated representation. When this occurs, the value may
         become a very small or negative number.
CVSS v3 base score: 5.5
Published: 2021-07-30T14:15Z
Repository: https://github.com/karelzak/util-linux
Language: C
Files changed: sys-utils/ipcutils.c
Commit date: 2021-07-27 11:58:31 +0200
Commit message: sys-utils/ipcutils: be careful when call calloc() for uint64 nmembs

Fix: https://github.com/karelzak/util-linux/issues/1395
Signed-off-by: Karel Zak <kzak@redhat.com>

Diff: diff --git a/sys-utils/ipcutils.c b/sys-utils/ipcutils.c
index e784c4dcb9..18868cfd38 100644
--- a/sys-utils/ipcutils.c
+++ b/sys-utils/ipcutils.c
@@ -216,11 +216,11 @@ void ipc_shm_free_info(struct shm_data *shmds)
 
 static void get_sem_elements(struct sem_data *p)
 {
 	size_t i;
 
-	if (!p || !p->sem_nsems || p->sem_perm.id < 0)
+	if (!p || !p->sem_nsems || p->sem_nsems > SIZE_MAX || p->sem_perm.id < 0)
 		return;
 
 	p->elements = xcalloc(p->sem_nsems, sizeof(struct sem_elem));
 
 	for (i = 0; i < p->sem_nsems; i++) {

Vulnerable code: 	if (!p || !p->sem_nsems || p->sem_perm.id < 0)
Fixed code: 	if (!p || !p->sem_nsems || p->sem_nsems > SIZE_MAX || p->sem_perm.id < 0)
CVE-2021-4262: Improper Neutralization of Special Elements used in an SQL Command ('SQL Injection') (CWE-89)
value: A vulnerability classified as critical was found in laravel-jqgrid. Affected by this vulnerability is the function getRows of the file src/Mgallegos/LaravelJqgrid/Repositories/EloquentRepositoryAbstract.php. The manipulation leads to sql injection. The name of the patch is fbc2d94f43d0dc772767a5bdb2681133036f935e. It is recommended to apply a patch to fix this issue. The associated identifier of this vulnerability is VDB-216271.
CWE description: The product constructs all or part of an SQL command using externally-influenced input from an upstream component, but it does not neutralize or incorrectly neutralizes special elements that could modify the intended SQL command when it is sent to a downstream component. Without sufficient removal or quoting of SQL syntax in user-controllable inputs, the generated SQL query can cause those inputs to be interpreted as SQL instead of ordinary user data.
CVSS v3 base score: 9.8
Published: 2022-12-19T14:15Z
Repository: https://github.com/mgallegos/laravel-jqgrid
Language: Unknown
Commit date: 2021-07-28 08:20:41 -0600
Commit message: Merge pull request #72 from wuwx/patch-2

preventing sql injection