www-apps/phpsysinfo: fix CVE-2023-49006

Signed-off-by: Conrad Kostecki <conikost@gentoo.org>
This commit is contained in:
Conrad Kostecki
2024-03-10 14:35:34 +01:00
parent c3ecf33d89
commit 178ca30bd5
2 changed files with 47 additions and 1 deletions

View File

@@ -0,0 +1,44 @@
From 4f2cee505e4f2e9b369a321063ff2c5e0c34ba45 Mon Sep 17 00:00:00 2001
From: namiltd <namiltd@users.noreply.github.com>
Date: Wed, 24 May 2023 10:39:48 +0200
Subject: [PATCH] Disable JSONP data mode by default for security reasons
---
phpsysinfo.ini.new | 7 +++++++
read_config.php | 5 +++++
2 files changed, 12 insertions(+)
diff --git a/phpsysinfo.ini.new b/phpsysinfo.ini.new
index f2c90f24..25b67c26 100644
--- a/phpsysinfo.ini.new
+++ b/phpsysinfo.ini.new
@@ -47,6 +47,13 @@ ADD_PATHS=false
;
ALLOWED=false
+; Enable JSONP data mode (e.g. /phpsysinfo/xml.php?plugin=complete&jsonp&callback=getData)
+; Disabled by default for security reasons.
+; - false : JSONP data mode disabled
+; - true : JSONP data mode enabled
+;
+;JSONP=false
+
; List of sudo commands
; Example : SUDO_COMMANDS="iptables-save" //execute "sudo iptables-save" instead "iptables-save"
; SUDO_COMMANDS=false //no sudo commands
diff --git a/read_config.php b/read_config.php
index 17d0683a..53fbf38e 100644
--- a/read_config.php
+++ b/read_config.php
@@ -89,6 +89,11 @@
}
}
+ if (isset($_GET['jsonp']) && (!defined('PSI_JSONP') || !PSI_JSONP)) {
+ echo "JSONP data mode not enabled in phpsysinfo.ini.";
+ die();
+ }
+
/* default error handler */
if (function_exists('errorHandlerPsi')) {
restore_error_handler();

View File

@@ -1,4 +1,4 @@
# Copyright 1999-2023 Gentoo Authors
# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -16,6 +16,8 @@ RDEPEND="
virtual/httpd-php
"
PATCHES=( "${FILESDIR}/${PN}-3.4.3-cve-2023-49006.patch" )
need_httpd_cgi
src_install() {