Hanwha Vision 보안 카메라 펌웨어 유출: GitHub 관리자 토큰 및 DoD IP 주소
Hanwha Vision 보안 카메라 펌웨어 유출: GitHub 관리자 토큰 및 DoD IP 주소
보안 연구원은 Hanwha Vision 보안 카메라에 로그인 페이지에 내장된 GitHub 관리자 토큰이 포함되어 출고되었음을 발견했는데, 이는 회사의 GitHub 조직 내 수백 개의 저장소에 관리자 액세스 권한을 제공했습니다. 유출은 카메라의 UI가 Vite로 빌드되었음에도 불구하고 CI 환경의 전체 process.env 객체를 프로덕션 빌드 파일에 잘못 내보냈기 때문에 발생했습니다.
빌드 프로세스를 통해 유출된 관리자 GitHub 토큰
Hanwha Vision은 카메라 루트 파일 시스템의 약 30개 파일에 걸쳐 높은 권한을 가진 GitHub 토큰을 의도치 않게 노출했습니다. 이 취약점은 CI 작업의 환경 변수가 클라이언트 측 코드에 직접 작성된 빌드 타임 구성 오류에서 비롯되었습니다.
펌웨어에서 발견된 유출된 환경 변수 객체의 예는 다음과 같습니다:
var W = {
DATAPORT: "9090",
GIT_LFS_SKIP_SMUDGE: "1",
npm_command: "run-script",
KUBERNETES_SERVICE_PORT_HTTPS: "443",
GITHUB_NPM_TOKEN: "<snip>:ghp_…REDACTED…",
npm_config_userconfig:
/home/docker/.npmrc,
// etc
}
연구원은 이 토큰이 Hanwha GitHub 조직의 수백 개의 저장소에 관리자 권한을 부여함을 확인했습니다. 문제를 보고한 후, Hanwha는 12시간 이내에 대응하여 토큰을 철회했습니다.
펌웨어 암호화 역공학
루트 파일 시스템에 접근하려면 두 층의 암호를 우회해야 했습니다. 일부 이전 연구에서는 모델 번호 기반의 간단한 패스프레이즈(예: HTW + 모델 번호)를 나타냈지만, 최신 펌웨어 버전은 fwupgrader 바이너리 내에서 더 복잡한 난독화 방법을 사용했습니다.
Ghidra와 AI 지원 분석(Claude Code)을 사용하여 fwupgrader 바이너리를 분석한 결과, AES 키가 정적 키 테이블과 XOR 연산되어 런타임에 재조합됨을 밝혀냈습니다. fwupgrader는 затем openssl CLI를 실행하여 루트파일시스템을 복호화합니다. 모델 라인 전반에 사용된 하드코딩된 자격 증명은 다음과 같습니다:
- KEY:
dfa049bb922e63e2decc764af5628068e5b7a2662e479a615b14643e567579b0 - IV:
53f9226801b81454a4f889c9a390db6e6
루트파일시스템을 추출하는 데 사용된 복호화 명령은 다음과 같습니다:
openssl enc -md sha256 -aes-256-cbc -d -K <KEY> -iv <IV> -in <INPUT> -out <OUTPUT>
미국 국방부(DoD) IP 주소 발견
GitHub 토큰 외에도 유출된 환경 변수에는 미국 국방부(DoD)에 할당된 IP 주소가 포함되어 있었습니다. 이러한 주소는 SWARM_MASTER_NFS_ADDRESS, OTEL_ELASTIC_URL, CIMIP와 같은 변수에서 발견되었습니다.
확인된 특정 IP 주소는 다음과 같습니다:
55.101.212.2355.101.212.2155.101.211.213
Hanwha Vision이 Hanwha Group의 자회사이며, 여기에는 K9 Thunder 자주식 포를 제조하는 Hanwha Aerospace와 Hanwha Defense USA가 포함된 점을 고려할 때, 연구원은 이러한 DoD 관련 항목이 모회사 내 여러 자매 회사에서 공유되는 CI 플랫폼의 결과일 수 있다고 추측합니다.
커뮤니티 통찰 및 보안 시사점
업계 관찰자 및 보안 실무자들은 이번 사건에서 몇 가지 중요한 교훈을 강조했습니다:
- AI의 역공학에서의 역할: 난독화된
fwupgrader바이너리가 분석된 속도는 보안에서의 변화를 강조합니다. 한 kommentator는 다음과 같이 언급했습니다: "LLMs가 진정으로 난독화를 죽였습니다. 이전에 이는 극도로 지루하게 만들어서만 작동했지만 AI는 그런 것에 신경 쓰지 않습니다." - IoT 네트워크 격리: 이번 사고는 IoT 기기를 격리할 필요성을 강조합니다. 전문가들은 보안 카메라를 공용 인터넷에 접근할 수 없는 별도의 VLAN에 배치하여 유출된 자격 증명이나 무단 접근의 위험을 완화할 것을 권장합니다.
- 공급망 위험: 상업용 펌웨어에서 정부와 연결된 IP 주소가 발견되면서 공급 측 공격에 대한 우려가 제기되었습니다. 한 커뮤니티 구성원은 이러한 유출이 유출된 GitHub 토큰을 사용한 DoD를 대상으로 한 표적 공격의 증거일 수 있다고 제안했습니다.