해킹된 전구에 금지된 서적을 담다

by DD
2일 전
조회수 2

해킹된 Wi-Fi 스마트 전구를 이용해 금지된 서적을 호스팅하는 프로젝트를 소개함

ESP32C3 칩Tasmota 펌웨어를 기반으로, 4MB 저장 공간의 제약을 극복하는 과정이 상세히 설명됨

데이터 격리 아키텍처(Data Isolation Architecture) 구현 및 커스텀 펌웨어 개발을 통해 기술적 난관을 해결함

커뮤니티에서는 저작권 문제기술적 윤리에 대한 논의가 활발함

ESP32C3 4MB 플래시 공간의 제약과 극복

프로젝트의 핵심 과제는 ESP32C3 칩의 4MB 제한된 플래시 메모리에 펌웨어, 웹 서버, 그리고 여러 권의 책을 모두 저장하는 것이었습니다. 초기에는 Tasmota 펌웨어를 수정하려 했으나, 복잡성과 용량 문제로 Arduino IDE를 이용한 커스텀 펌웨어 개발로 방향을 전환했습니다. 최종적으로 ESP-IDF 프레임워크파티션 테이블 재구성을 통해 SPIFFS 파티션 크기를 2MB로 확장하여 이 문제를 해결했습니다.

데이터 격리 아키텍처(Data Isolation Architecture) 및 OTA 업데이트 문제

기존 Tasmota의 데이터 미저장 정책(Zero-Retention Policy)과 달리, 프로젝트는 데이터 격리 아키텍처(Data Isolation Architecture)를 구현했습니다. 특히, NVS 파티션에 저장되는 Wi-Fi 자격 증명(SSID, 비밀번호)의 평문 저장 문제를 해결하기 위해 펌웨어 부팅 시 NVS 파티션을 초기화하도록 했습니다. 이로 인해 Tasmota의 기본 OTA 업데이트 기능이 작동하지 않아, 커스텀 세이프부트(Custom Safeboot) 펌웨어를 별도로 개발하여 OTA 업데이트 기능을 유지했습니다.

하드웨어 수정의 어려움과 대안 모색

초기에는 microSD 카드 리더기를 추가하여 저장 공간을 확장하려 했으나, ESP32C3 칩에 납땜하는 과정이 매우 어렵고 장치 파손 위험이 높아 포기했습니다. LED 제어 핀을 활용하는 방안도 단방향 출력(One-way Output) 제약으로 실패했습니다. 결국, 기존 4MB 저장 공간 내에서 최적화하는 방향으로 프로젝트를 진행했으며, 이는 오프더셀프(Off-the-shelf) 장치 재활용의 한계를 보여줍니다.

커뮤니티의 저작권 및 윤리적 논쟁

커뮤니티에서는 이 프로젝트의 기술적 구현에 대한 찬사(freddyb, sjamaan)와 더불어, 저작권이 있는 디지털 서적의 무단 배포에 대한 법적, 윤리적 문제를 제기했습니다(kghose, oceanghaiyang). 특히 미국 헌법상 도서 대여는 보호받지만, 디지털 파일 공유는 저작권 침해 소지가 있다는 점이 논의되었습니다. 이는 기술적 혁신과 법적/윤리적 경계 사이의 복잡한 딜레마를 보여줍니다.

캡티브 포털(Captive Portal) 구현과 사용자 경험

사용자가 Wi-Fi 전구에 쉽게 접근할 수 있도록 캡티브 포털(Captive Portal) 기능을 구현했습니다. 이는 DNS 서버를 설정하여 모든 요청을 전구의 웹 서버로 리디렉션하고, 다양한 OS(Windows, Android, iOS)의 네트워크 연결 테스트 요청에 응답하는 방식으로 작동합니다. 이를 통해 사용자는 인터넷 연결이 없더라도 전구에 호스팅된 금지된 서적에 쉽게 접근할 수 있습니다.

Banned book library in a Wi-Fi lightbulb