삼성 NX mini 펌웨어 압축 알고리즘 리버스 엔지니어링: 후지쯔 RELC 규명

2025-05-07
삼성 NX mini 펌웨어 압축 알고리즘 리버스 엔지니어링: 후지쯔 RELC 규명

이 글에서는 삼성 NX mini, NX3000/NX3300, Galaxy K Zoom 카메라 펌웨어에 사용된 독점 LZSS 압축 알고리즘의 리버스 엔지니어링 과정을 자세히 설명합니다. 초기 목표는 알고리즘을 충분히 이해하여 ARM 코드를 추출하고 디스어셈블하는 것이었지만, 후지쯔의 RELC(Rapid Embedded Lossless Data Compression), 즉 ARM SoC에 내장된 하드웨어 IP 블록인 것으로 밝혀졌습니다. 연구자들은 압축 스트림을 세밀하게 분석하여 비트 마스크, 오프셋, 길이 인코딩 방식을 파악하고, 최종적으로 모든 펌웨어 파일을 성공적으로 압축 해제하는 완벽한 압축 해제기를 만들었습니다. 이 연구는 삼성 카메라 펌웨어의 압축 메커니즘을 밝히는 동시에 알려지지 않은 압축 알고리즘의 리버스 엔지니어링에 따르는 어려움과 기법을 강조합니다.

더 보기
개발

GRUB2의 비호환 변경으로 인한 BIOS 설정 부팅 루프

2024-12-16
GRUB2의 비호환 변경으로 인한 BIOS 설정 부팅 루프

저자의 Debian 및 Kali Linux 시스템은 `fwsetup --is-supported` 명령어가 추가된 GRUB2 업데이트 이후 부팅 루프를 경험했습니다. 이전 버전의 GRUB은 이 매개변수를 인식하지 못했습니다. 문제는 시스템 백업 복원 후 남아 있던 이전 `efifwsetup.mod` 모듈에서 발생했으며, 새로운 GRUB 구성과 이전 모듈 간의 충돌을 일으켰습니다. `grub-efi-amd64-bin` 패키지를 설치하여 문제를 해결했습니다. 이는 소프트웨어 업데이트에서의 하위 호환성의 중요성과 GRUB2와 같은 복잡한 소프트웨어에서 부분적인 변경을 수행할 때 잠재적인 부작용을 고려해야 함을 강조합니다.

더 보기
개발 부팅 루프