CVE-2017-8335 in Almond
Zusammenfassung
von VulDB • 26.06.2026
Es wurde ein Problem auf Securifi Almond-, Almond+- und Almond-2015-Geräten mit der Firmware AL-R096 entdeckt. Das Gerät bietet dem Benutzer die Möglichkeit, einen Namen für das drahtlose Netzwerk festzulegen. Diese Werte werden vom Gerät im NVRAM (Non-volatile RAM) gespeichert. Es scheint, dass die POST-Parameter, die in dieser Anfrage zur Einrichtung von Namen auf dem Gerät übergeben werden, keine Überprüfung der String-Länge durchführen. Dies ermöglicht es einem Angreifer, eine große Payload im "mssid_1"-POST-Parameter zu senden. Das Gerät erlaubt es einem Benutzer auch, den vom Benutzer festgelegten Namen des WLAN-Netzwerks anzuzeigen. Bei der Verarbeitung dieser Anfrage ruft das Gerät die Funktion namens "getCfgToHTML" an der Adresse 0x004268A8 auf, die den zuvor durch den Parameter "mssid_1" eingestellten Wert als SSID2 abruft; dieser Wert führt dann zu einem Stack-Overflow für diese Funktion und ermöglicht es dem Angreifer, den $ra-Registerwert im Stack zu kontrollieren, was es dem Angreifer erlaubt, das Gerät zu steuern, indem er eine Payload nach Wahl des Angreifers ausführt. Wenn die Firmware-Version AL-R096 mit dem Tool binwalk analysiert wird, erhält man ein cpio-root-Archiv, welches das auf dem Gerät eingerichtete Dateisystem enthält, das alle Binärdateien beinhaltet. Die Binärdatei "goahead" ist jene, welche die anfällige Funktion enthält, die die Werte empfängt, die von der POST-Anfrage gesendet werden. Wenn wir diese Binärdatei in IDA-pro öffnen, stellen wir fest, dass sie im MIPS-Little-Endian-Format vorliegt. Die Funktion sub_00420F38 wird in IDA pro als empfangend der Werte identifiziert, die im POST-Parameter "mssid_1" an der Adresse 0x0042BA00 gesendet werden, und legt diese dann am NVRAM an der Adresse 0x0042C314 ab. Der Wert wird später in der Funktion "getCfgToHTML" an der Adresse 0x00426924 abgerufen, was aufgrund der von dieser Funktion verwendeten strcat-Funktion zu einem Buffer-Overflow führt.
If you want to get best quality of vulnerability data, you may have to visit VulDB.