보안 카메라 펌웨어에 GitHub 관리자 토큰 내장
원제: My security camera shipped a GitHub admin token in its login page
왜 중요한가
IoT 기기 펌웨어에 CI 환경 변수가 그대로 포함되는 공급망 보안 위협의 실제 사례로, 엔터프라이즈 환경의 보안 카메라 관리 리스크를 부각한다.
보안 연구자가 2026년 7월 24일, 한화비전(Hanwha Vision) 보안 카메라 펌웨어를 분석한 결과, 카메라 로그인 UI 관련 파일 약 30곳에 GitHub 조직 내 수백 개 저장소에 대한 관리자 권한을 가진 GitHub 토큰이 포함되어 있음을 확인했다.
보안 연구자가 한화비전(Hanwha Vision) 보안 카메라 펌웨어를 분석하던 중, 심각한 자격증명 노출 문제를 발견했다.
연구자는 공개된 펌웨어 이미지를 binwalk로 분석하고, 기존 연구자 Matt Brown의 writeup을 참고해 암호화된 펌웨어의 1차 복호화 패스프레이즈(HTW + 모델번호)를 확인했다. 내부에는 추가 암호화된 fwimage.tgz가 존재했으며, 동봉된 fwupgrader 바이너리를 Ghidra 및 Claude Code로 분석한 결과, AES 키가 바이너리 내 정적 키 테이블과 XOR 연산으로 난독화되어 있음을 밝혔다. IV는 평문으로 저장되어 있었다. 연구자는 복호화 키(KEY = dfa049bb922e...)와 IV(IV = 53f926801b81...)를 공개했으며, 이를 통해 전체 루트 파일시스템에 접근할 수 있다.
루트 파일시스템을 확보한 뒤 TruffleHog로 스캔한 결과, GitHub 토큰이 약 30개 파일에 중복 포함된 것을 즉시 발견했다. 해당 토큰은 한화비전의 GitHub 조직 내 수백 개 저장소에 대한 관리자(admin) 권한을 보유하고 있었다.
원인은 Vite로 UI를 빌드하는 과정에서 process.env 환경 변수 전체가 빌드 결과물에 삽입된 것으로, CI 환경에서 사용된 GITHUB_NPM_TOKEN 등 민감한 자격증명이 그대로 펌웨어에 포함됐다. 카메라 관리자 UI에 접근한 사용자라면 네트워크를 통해 이 토큰을 수신했을 가능성이 있다고 연구자는 지적했다. 본 연구자는 해당 카메라 실기기를 보유하지 않아 실제 서빙 여부는 확인하지 못했다.