NetAlertX is a network, presence scanner, and alert framework. Prior to version 25.6.7, a vulnerability in the authentication logic allows users to bypass password verification using SHA-256 magic hashes, due to loose comparison in PHP. In vulnerable versions of the application, a password comparison is performed using the `==` operator at line 40 in front/index.php. This introduces a security issue where specially crafted "magic hash" values that evaluate to true in a loose comparison can bypass authentication. Because of the use of `==` instead of the strict `===`, different strings that begin with 0e and are followed by only digits can be interpreted as scientific notation (i.e., zero) and treated as equal. This issue falls under the Login Bypass vulnerability class. Users with certain "weird" passwords that produce magic hashes are particularly affected. Services relying on this logic are at risk of unauthorized access. Version 25.6.7 fixes the vulnerability.
The vulnerability results from using the `==` operator instead of the strict `===` in the front/index.php file (line 40) when comparing password hashes. In PHP, loose comparison treats strings starting with `0e` and containing only digits as scientific notation representing zero. If the SHA-256 hash of the user-supplied string and the hash of the password stored in the system meet this condition, PHP will consider them equal — despite being different values. An attacker can therefore provide a specially crafted input string ('magic hash') that, when hashed, meets these criteria and is recognized as a correct password.
An attacker can remotely and without authentication gain unauthorized access to the NetAlertX application, leading to a breach of confidentiality and integrity of monitored network data and potentially the entire environment managed by this tool.
NetAlertX should be updated to version 25.6.7 or later, which fixes the vulnerability by replacing the loose comparison operator `==` with the strict operator `===`. Until the update is applied, it is recommended to restrict access to the application interface only to trusted networks or hosts.
NetAlertX in all versions before 25.6.7; instances are particularly vulnerable where users have passwords that generate magic hash values when hashed with SHA-256.
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:LNetalertx
APPNetalertx< 25.6.7
Related vulnerabilities
NetAlertX — ominięcie uwierzytelnienia umożliwia zmianę ustawień (CVSS 10.0)
NetAlertX — nieuwierzytelniony command injection via savesettings (RCE)
NetAlertX 24.7.18 before 24.10.12 allows unauthenticated file reading because an HTTP client can ignore a redi...