--- Begin Message ---
Package: release.debian.org
Severity: normal
X-Debbugs-Cc: nagvis@packages.debian.org
Control: affects -1 + src:nagvis
User: release.debian.org@packages.debian.org
Usertags: unblock
Please unblock package nagvis
The CVEs fixed in 1.9.47 were not marked no-dsa as I had expected.
[ Reason ]
The security team filed #1106686 to get the CVE fixes into trixie.
[ Impact ]
Unfixed security issues.
[ Tests ]
None
[ Risks ]
Low, has few users.
[ Checklist ]
[x] all changes are documented in the d/changelog
[x] I reviewed all changes and I approve them
[x] attach debdiff against the package in testing
[ Other info ]
N/A
unblock nagvis/1:1.9.47-1
Kind Regards,
Bas
diff -Nru nagvis-1.9.46/ChangeLog nagvis-1.9.47/ChangeLog
--- nagvis-1.9.46/ChangeLog 2025-04-04 18:02:07.000000000 +0200
+++ nagvis-1.9.47/ChangeLog 2025-05-23 08:56:15.000000000 +0200
@@ -1,3 +1,10 @@
+1.9.47
+ * FIX: Don't show complete backtrace if crashing. Now the backtrace is being logged to the apache error log
+ * FIX: Fix potential XSS via WYSIWYG editor. Now the option to edit these such elements is moved to a specific
+ permission and only administrators can use this editor per default. (CVE-2024-47090)
+ * FIX: Fix possible livestatus injection via dynmaps (CVE-2024-38866) (#398 Thanks to Shortfinga)
+ (CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:N/VI:N/VA:N/SC:N/SI:L/SA:L)
+
1.9.46
* Feature: add option to verify session cookie via curl. Before when having allow_url_fopen
disabled, NagVis was not able to verify the session cookie. Now you can use curl to verify
diff -Nru nagvis-1.9.46/debian/changelog nagvis-1.9.47/debian/changelog
--- nagvis-1.9.46/debian/changelog 2025-04-05 13:34:03.000000000 +0200
+++ nagvis-1.9.47/debian/changelog 2025-05-28 05:34:26.000000000 +0200
@@ -1,3 +1,19 @@
+nagvis (1:1.9.47-1) unstable; urgency=medium
+
+ * Team upload.
+ * Move from experimental to unstable.
+
+ -- Bas Couwenberg <sebastic@debian.org> Wed, 28 May 2025 05:34:26 +0200
+
+nagvis (1:1.9.47-1~exp1) experimental; urgency=medium
+
+ * Team upload.
+ * New upstream release.
+ Fixes: CVE-2024-38866 & CVE-2024-47090.
+ * Add Catalan debconf translation by Carles Pina i Estany.
+
+ -- Bas Couwenberg <sebastic@debian.org> Fri, 23 May 2025 15:10:32 +0200
+
nagvis (1:1.9.46-1) unstable; urgency=medium
* Team upload.
diff -Nru nagvis-1.9.46/debian/po/ca.po nagvis-1.9.47/debian/po/ca.po
--- nagvis-1.9.46/debian/po/ca.po 1970-01-01 01:00:00.000000000 +0100
+++ nagvis-1.9.47/debian/po/ca.po 2025-05-23 15:08:01.000000000 +0200
@@ -0,0 +1,72 @@
+# Catalan translation of nagvis's debconf messages
+# Copyright © 2025 Free Software Foundation, Inc.
+# This file is distributed under the same license as the nagvis package.
+# poc senderi <pocsenderi@protonmail.com>, 2025.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: nagvis\n"
+"Report-Msgid-Bugs-To: nagvis@packages.debian.org\n"
+"POT-Creation-Date: 2020-01-21 20:05+0100\n"
+"PO-Revision-Date: 2025-04-03 21:25+0200\n"
+"Last-Translator: poc senderi <pocsenderi@protonmail.com>\n"
+"Language-Team: Catalan <debian-l10n-catalan@lists.debian.org>\n"
+"Language: ca\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: Poedit 2.4.2\n"
+
+#. Type: select
+#. Choices
+#: ../nagvis.templates:2001
+msgid "shinken"
+msgstr "shinken"
+
+#. Type: select
+#. Description
+#: ../nagvis.templates:2002
+msgid "Monitoring suite used with NagVis:"
+msgstr "Suite de monitorització utilitzada amb el NagVis:"
+
+#. Type: select
+#. Description
+#: ../nagvis.templates:2002
+msgid ""
+"The NagVis package supports Icinga as well as Nagios, using the check-mk-"
+"live broker backend."
+msgstr ""
+"El paquet NagVis és compatible amb l'Icinga i amb el Nagios, utilitzant el "
+"dorsal intermediari «check-mk-live»."
+
+#. Type: select
+#. Description
+#: ../nagvis.templates:2002
+msgid ""
+"If you would like to use NagVis with a different backend or a different "
+"monitoring suite, please choose \"other\". You'll have to configure it "
+"manually."
+msgstr ""
+"Si voleu utilitzar el NagVis amb un dorsal diferent o amb una suite de "
+"monitorització diferent, trieu «other». S'haurà de configurar manualment."
+
+#. Type: boolean
+#. Description
+#: ../nagvis.templates:3001
+msgid "Delete NagVis data when purging the package?"
+msgstr "Voleu suprimir les dades del NagVis al purgar el paquet?"
+
+#. Type: boolean
+#. Description
+#: ../nagvis.templates:3001
+msgid ""
+"NagVis creates files in /var/{cache,lib}/nagvis and /etc/nagvis (for "
+"instance background images and map files), including a small database for "
+"authentification. If you don't need any of these files, they can be removed "
+"now, or you may want to keep them and clean up by hand later."
+msgstr ""
+"El NagVis crea fitxers a «/var/{cache,lib}/nagvis» i a «/etc/nagvis» (per "
+"exemple, imatges de fons i fitxers de mapa), incloent una petita base de "
+"dades per a l'autenticació. Si no necessiteu cap d'aquests fitxers, es "
+"poden eliminar ara, o també és possible que mantenir-los i fer neteja "
+"manualment més endavant."
diff -Nru nagvis-1.9.46/share/server/core/classes/CoreAuthorisationHandler.php nagvis-1.9.47/share/server/core/classes/CoreAuthorisationHandler.php
--- nagvis-1.9.46/share/server/core/classes/CoreAuthorisationHandler.php 2025-04-04 18:02:07.000000000 +0200
+++ nagvis-1.9.47/share/server/core/classes/CoreAuthorisationHandler.php 2025-05-23 08:56:15.000000000 +0200
@@ -53,6 +53,7 @@
'createObject' => 'edit',
'deleteObject' => 'edit',
'addModify' => 'edit',
+ 'editHtml' => 'edit',
),
'Overview' => Array(
'getOverviewRotations' => 'view',
diff -Nru nagvis-1.9.46/share/server/core/classes/GlobalMapCfg.php nagvis-1.9.47/share/server/core/classes/GlobalMapCfg.php
--- nagvis-1.9.46/share/server/core/classes/GlobalMapCfg.php 2025-04-04 18:02:07.000000000 +0200
+++ nagvis-1.9.47/share/server/core/classes/GlobalMapCfg.php 2025-05-23 08:56:15.000000000 +0200
@@ -800,7 +800,7 @@
if(isset($params['source_file']))
unset($params['source_file']);
$param_values = $this->paramsToString($params);
- $cacheFile = cfg('paths','var').'source-'.$this->name.'.cfg-'.$param_values.'-'.$this->isView.'-'.CONST_VERSION.'.cache';
+ $cacheFile = cfg('paths','var').'source-'.$this->name.'.cfg-'.sha1($param_values.'-'.$this->isView.'-'.CONST_VERSION).'.cache';
$CACHE = new GlobalFileCache(array(), $cacheFile);
// 2a. Check if the cache file exists
diff -Nru nagvis-1.9.46/share/server/core/classes/ViewMapAddModify.php nagvis-1.9.47/share/server/core/classes/ViewMapAddModify.php
--- nagvis-1.9.46/share/server/core/classes/ViewMapAddModify.php 2025-04-04 18:02:07.000000000 +0200
+++ nagvis-1.9.47/share/server/core/classes/ViewMapAddModify.php 2025-05-23 08:56:15.000000000 +0200
@@ -116,6 +116,11 @@
$perm_user = get_checkbox('perm_user');
$show_dialog = false;
+ global $AUTHORISATION;
+ if(!$AUTHORISATION->isPermitted('Map', 'editHtml', '*')) {
+ throw new NagVisException(l('Cannot edit HTML. Please contact your administrator'));
+ }
+
// Modification/Creation?
// The object_id is known on modification. When it is not known 'type' is set
// to create new objects
diff -Nru nagvis-1.9.46/share/server/core/defines/global.php nagvis-1.9.47/share/server/core/defines/global.php
--- nagvis-1.9.46/share/server/core/defines/global.php 2025-04-04 18:02:07.000000000 +0200
+++ nagvis-1.9.47/share/server/core/defines/global.php 2025-05-23 08:56:15.000000000 +0200
@@ -23,7 +23,7 @@
*****************************************************************************/
// NagVis Version
-define('CONST_VERSION', '1.9.46');
+define('CONST_VERSION', '1.9.47');
// Set PHP error handling to standard level
// Different levels for php versions below 5.1 because PHP 5.1 reports
diff -Nru nagvis-1.9.46/share/server/core/functions/html.php nagvis-1.9.47/share/server/core/functions/html.php
--- nagvis-1.9.46/share/server/core/functions/html.php 2025-04-04 18:02:07.000000000 +0200
+++ nagvis-1.9.47/share/server/core/functions/html.php 2025-05-23 08:56:15.000000000 +0200
@@ -271,6 +271,11 @@
if (submitted($form_name))
$default = post($name, $default);
+ global $AUTHORISATION;
+ if(!$AUTHORISATION->isPermitted('Map', 'editHtml', '*')) {
+ echo '<b>Cannot edit HTML. Please contact your administrator.</b>';
+ return;
+ }
// plain <textarea>
echo '<textarea id="textarea_'.$name.'" name="'.$name.'"'.$class.$style.'>'.escape_html($default).'</textarea>'.N;
diff -Nru nagvis-1.9.46/share/server/core/functions/nagvisErrorHandler.php nagvis-1.9.47/share/server/core/functions/nagvisErrorHandler.php
--- nagvis-1.9.46/share/server/core/functions/nagvisErrorHandler.php 2025-04-04 18:02:07.000000000 +0200
+++ nagvis-1.9.47/share/server/core/functions/nagvisErrorHandler.php 2025-05-23 08:56:15.000000000 +0200
@@ -37,7 +37,9 @@
echo $OBJ;
} else {
echo "Error (".get_class($OBJ)."): ".$OBJ->getMessage();
- var_dump(debug_backtrace());
+ echo "<br>";
+ echo "For more information check the apache error log.";
+ error_log(print_r(debug_backtrace(), true));
}
die();
diff -Nru nagvis-1.9.46/share/server/core/sources/dynmap.php nagvis-1.9.47/share/server/core/sources/dynmap.php
--- nagvis-1.9.46/share/server/core/sources/dynmap.php 2025-04-04 18:02:07.000000000 +0200
+++ nagvis-1.9.47/share/server/core/sources/dynmap.php 2025-05-23 08:56:15.000000000 +0200
@@ -7,7 +7,7 @@
$objects = array();
$type = $p['dynmap_object_types'];
- $filter = str_replace('\n', "\n", $p['dynmap_object_filter']);
+ $filter = preg_replace('/(\\\\n)+/', "\n", $p['dynmap_object_filter']);
foreach($MAPCFG->getValue(0, 'backend_id') AS $backend_id) {
$ret = $_BACKEND->getBackend($backend_id)->getObjects($type, '', '', $filter);
// only use the internal names
--- End Message ---