Unauthenticated Arbitrary File Read via Null Byte Injection in DB Electronica Telecomunicazioni S.p.A. Mozart FM Transmitter versions 30, 5…
Unauthenticated Arbitrary File Read via Null Byte Injection in DB Electronica Telecomunicazioni S.p.A. Mozart FM Transmitter versions 30, 50, 100, 300, 500, 1000, 2000, 3000, 3500, 6000, 7000 allows an attacker to perform Null byte injection in download_setting.php allows reading arbitrary files. The `/var/tdf/download_setting.php` endpoint constructs file paths by concatenating user-controlled `$_GET['filename']` with a forced `.tgz` extension. Running on PHP 5.3.2 (pre-5.3.4), the application is vulnerable to null byte injection (%00), allowing attackers to bypass the extension restriction and traverse paths. By requesting `filename=../../../../etc/passwd%00`, the underlying C functions treat the null byte as a string terminator, ignoring the appended `.tgz` and enabling unauthenticated arbitrary file disclosure of any file readable by the web server user.
The product receives input from an upstream component, but it does not neutralize or incorrectly neutralizes NUL characters or null bytes when they are sent to a downstream component.
https://cwe.mitre.org/data/definitions/158.html →Open in CWE collection →An adversary embeds one or more null bytes in input to the target software. This attack relies on the usage of a null-valued byte as a string terminator in many environments. The goal is for certain components of the target software to stop processing the input when it encounters the null byte(s).
https://capec.mitre.org/data/definitions/52.html →Open in CAPEC collection →If a string is passed through a filter of some kind, then a terminal NULL may not be valid. Using alternate representation of NULL allows an adversary to embed the NULL mid-string while postfixing the proper data so that the filter is avoided. One example is a filter that looks for a trailing slash character. If a string insertion is possible, but the slash must exist, an alternate encoding of NULL in mid-string may be used.
https://capec.mitre.org/data/definitions/53.html →Open in CAPEC collection →| Product | Vendor | Status |
|---|---|---|
| mozart_dds_next_1000_firmware | * | Tracked |
| mozart_dds_next_100_firmware | * | Tracked |
| mozart_dds_next_2000_firmware | * | Tracked |
| mozart_dds_next_3000_firmware | * | Tracked |
| mozart_dds_next_300_firmware | * | Tracked |
| mozart_dds_next_30_firmware | * | Tracked |
| mozart_dds_next_3500_firmware | * | Tracked |
| mozart_dds_next_500_firmware | * | Tracked |
| mozart_dds_next_50_firmware | * | Tracked |
| mozart_dds_next_6000_firmware | * | Tracked |
| mozart_dds_next_7000_firmware | * | Tracked |
| mozart_next_1000_firmware | * | Tracked |
| mozart_next_100_firmware | * | Tracked |
| mozart_next_2000_firmware | * | Tracked |
| mozart_next_3000_firmware | * | Tracked |
| mozart_next_300_firmware | * | Tracked |
| mozart_next_30_firmware | * | Tracked |
| mozart_next_3500_firmware | * | Tracked |
| mozart_next_500_firmware | * | Tracked |
| mozart_next_50_firmware | * | Tracked |