Reverse Engineering der Samsung NX mini Firmware-Kompression: Entschlüsselung von Fujitsu RELC

2025-05-07
Reverse Engineering der Samsung NX mini Firmware-Kompression: Entschlüsselung von Fujitsu RELC

Dieser Beitrag beschreibt die Reverse-Engineering-Analyse eines proprietären LZSS-Kompressionsalgorithmus, der in der Firmware der Samsung NX mini, NX3000/NX3300 und Galaxy K Zoom Kameras verwendet wird. Das ursprüngliche Ziel war es, den Algorithmus ausreichend zu verstehen, um den ARM-Code zu extrahieren und zu disassemblieren. Es stellte sich jedoch heraus, dass es sich um Fujitsus RELC (Rapid Embedded Lossless Data Compression) handelt, einen Hardware-IP-Block auf seinen ARM-SoCs. Durch die sorgfältige Analyse des komprimierten Datenstroms bestimmten die Forscher die Kodierungsschemata für Bitmaske, Offset und Länge und entwickelten schließlich einen vollständigen Dekompressor, der alle Firmware-Dateien erfolgreich dekomprimierte. Diese Forschung enthüllt nicht nur den Komprimierungsmechanismus der Samsung-Kameras, sondern hebt auch die Herausforderungen und Techniken hervor, die mit dem Reverse Engineering unbekannter Kompressionsalgorithmen verbunden sind.

Mehr lesen

Inkompatible GRUB2-Änderung verursacht BIOS-Setup-Bootloop

2024-12-16
Inkompatible GRUB2-Änderung verursacht BIOS-Setup-Bootloop

Die Debian- und Kali-Linux-Systeme des Autors erlebten Bootloops nach einem GRUB2-Update, das den Befehl `fwsetup --is-supported` hinzufügte. Ältere GRUB-Versionen erkannten diesen Parameter nicht. Das Problem rührte von einem älteren `efifwsetup.mod`-Modul her, das nach der Wiederherstellung eines Systemsicherungsbildes übrig blieb und einen Konflikt zwischen der neuen GRUB-Konfiguration und dem alten Modul verursachte. Die Installation des Pakets `grub-efi-amd64-bin` löste das Problem. Dies unterstreicht die Bedeutung der Abwärtskompatibilität bei Software-Updates und die Notwendigkeit, potenzielle Nebenwirkungen bei teilweisen Änderungen in komplexer Software wie GRUB2 zu berücksichtigen.

Mehr lesen
Entwicklung Bootloop