XSS Vulnerability Patches and Security Enhancements for Dashboard1 - Fix parsing error

pull/254/head
Andy Taylor 2 months ago
parent ee3f5de1de
commit e11754a4e0

@ -44,7 +44,7 @@ class Node {
// Validate callsign format (basic check) // Validate callsign format (basic check)
if (!preg_match('/^[A-Z0-9]{1,10}$/i', $this->Callsign)) { if (!preg_match('/^[A-Z0-9]{1,10}$/i', $this->Callsign)) {
$this->Callsign = 'INVALID'; $this->Callsign = 'INVALID';
} }
// Validate LinkedModule (single letter A-Z) // Validate LinkedModule (single letter A-Z)

@ -15,8 +15,8 @@ class ParseXML {
$Element = substr($InputString, strpos($InputString, "<".$ElementName.">")+strlen($ElementName)+2, strpos($InputString, "</".$ElementName.">")-strpos($InputString, "<".$ElementName.">")-strlen($ElementName)-2); $Element = substr($InputString, strpos($InputString, "<".$ElementName.">")+strlen($ElementName)+2, strpos($InputString, "</".$ElementName.">")-strpos($InputString, "<".$ElementName.">")-strlen($ElementName)-2);
// Strip any remaining HTML/XML tags from the content // Return raw content - sanitization happens at output time
return strip_tags($Element); return $Element;
} }
public function GetAllElements($InputString, $ElementName) { public function GetAllElements($InputString, $ElementName) {

@ -77,14 +77,8 @@ $VNStat['Binary'] = '/usr/bin/vnstat';
include an extra config file for people who dont like to mess with shipped config.ing.php include an extra config file for people who dont like to mess with shipped config.ing.php
this makes updating dashboard from git a little bit easier this makes updating dashboard from git a little bit easier
*/ */
if (file_exists("../config.inc.php")) {
$external_config = dirname(__FILE__) . '/../config.inc.php'; include ("../config.inc.php");
if (file_exists($external_config)) { }
$realPath = realpath($external_config);
// Only allow if it's in parent directory
if ($realPath !== false && dirname($realPath) === dirname(dirname(__FILE__))) {
include($realPath);
}
}
?> ?>

Loading…
Cancel
Save

Powered by TurnKey Linux.