한화비전 보안 카메라의 웹 UI 로그인 페이지에 GitHub 관리자 토큰이 포함돼 출하됨

12 hours ago 7

Hanwha Vision 카메라 펌웨어의 웹 관리 UI 파일 약 30개에 동일한 GitHub 토큰이 들어 있었고, 이 토큰은 조직 내 수백 개 저장소에 관리자 권한을 보유했음 펌웨어의 fwupgrader는 하드코딩된 AES 키를 정적 테이블과 XOR해 복원한 뒤 openssl로 루트 파일 시스템을 해독했으며, 키와 IV는 동일 모델군에서 공통으로 사용됐음 Vite 빌드 변수가 process.env 전체로 설정되면서 CI 작업의 환경 변수가 결과물에 기록됐고, GITHUB_NPM_TOKEN과 여러 내부 설정까지 카메라 펌웨어에 포함됨 약 500개 펌웨어를 같은 방식으로 조사해 62%를 추출했으며, GitHub 토큰이 발견된 펌웨어 3개에는 모두 같은 토큰이 들어 있었음 Hanwha는 신고 후 12시간 이내에 토큰을 폐기했지만, CI 환경 전체를 클라이언트 결과물에 삽입하는 구성은 자격 증명과 내부 인프라 정보를 제품에 노출할 수 있음 펌웨어 확보와 첫 번째 암호화 계층 Hanwha Vision 웹사이트는 카메라 모델별 펌웨어 이미지를 공개해 파일을 내려받아 분석할 수 있었음 binwalk로 이미지를 조사하자 카메라용 AI 구성요소가 담긴 별도 tarball과 암호화된 fwimage.tgz가 발견됨 Matt Brown의 Hanwha 펌웨어 복호화 분석에 따라 HTW와 모델 번호를 결합한 암호를 사용함 분석 대상에서는 HTWXNP-9300RW가 작동함 해제된 tarball 안에는 다른 방식으로 암호화된 또 하나의 fwimage.tgz가 있어 기존 복호화 절차를 그대로 재사용할 수 없었음 fwupgrader에서 복호화 방식 복원 외부 tarball에 포함된 fwupgrader 바이너리를 Ghidra와 Claude Code로 분석해 실제 루트 파일 시스템을 추출함 fwupgrader에는 복호화 방식을 감추는 난독화가 적용돼 있었음 AES 키를 바이너리 내부의 작은 정적 키 테이블과 XOR한 뒤 실행 중 재조립함 IV는 바이너리에 평문으로 들어 있음 openssl 명령 조각도 같은 방식으로 XOR 난독화됨 복원된 명령은 SHA-256과 AES-256-CBC를 사용하는 다음 형태임 openssl enc -md sha256 -aes-256-cbc -d \ -K <KEY> -iv <IV> -in <INPUT> -out <OUTPUT> 키와 IV는 하드코딩돼 동일 모델군에서 공통으로 사...

Read Entire Article