From: Guilhem Moulin Date: Sat, 30 Dec 2023 14:15:54 +0100 Subject: Avoid reachable assertion via crafted XML document with a '\0' located after whitespace Bug: https://www.forescout.com/resources/sierra21-vulnerabilities Bug-Debian: https://bugs.debian.org/1059315 Bug-Debian: https://security-tracker.debian.org/tracker/CVE-2023-34194 Bug-Debian: https://security-tracker.debian.org/tracker/CVE-2023-40462 --- tinyxmlparser.cpp | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/tinyxmlparser.cpp b/tinyxmlparser.cpp index 8aa0dfa..1601962 100644 --- a/tinyxmlparser.cpp +++ b/tinyxmlparser.cpp @@ -1606,6 +1606,10 @@ const char* TiXmlDeclaration::Parse( const char* p, TiXmlParsingData* data, TiXm } p = SkipWhiteSpace( p, _encoding ); + if ( !p || !*p ) + { + break; + } if ( StringEqual( p, "version", true, _encoding ) ) { TiXmlAttribute attrib;