Hanwha製カメラのLoginページにGitHub管理者トークンが埋め込まれていた
मूल शीर्षक: My security camera shipped a GitHub admin token in its login page
यह क्यों महत्वपूर्ण है
IoT/カメラfirmwareにCI環境変数が混入するサプライチェーンリスクを具体的事例として示しており、組込み機器のセキュリティ管理に警鐘を鳴らす。
セキュリティ研究者が韓国メーカーHanwha Visionのカメラfirmwareを解析したところ、GitHub organizationの数百リポジトリへのadmin権限を持つトークンが約30ファイルに含まれていることを発見した。
セキュリティ研究者がHanwha Visionのカメラfirmwareを調査した際、以下の問題を発見した。
**Firmware解析の手順**
Hanwha Visionの公式サイトからfirmwareのblobを入手し、binwalkで解析した。外側のアーカイブはHTW+モデル番号(例:HTWXNP-9300RW)がパスフレーズとして使われており、Matt Brownの先行調査を参考に復号できた。しかし内部にはさらに別の暗号化されたfwimage.tgzが存在し、同じ手法は通用しなかった。
**難読化の解除**
外側アーカイブに含まれるfwupgraderバイナリをGhidraではなくClaude Codeで解析したところ、AESキーが静的なXORテーブルで難読化され、IVは平文で保存されていることが判明した。openssl CLIを呼び出すコマンド断片もXOR難読化されており、最終的に使用されるコマンドとKEY・IVを完全に再現した。これらのKEYとIVは同モデルライン全体で共通の固定値であるとして研究者はブログ上で公開した。
**GitHub admin tokenの漏洩**
rootfsを取得後、trufflehogで自動スキャンを実施したところ、GitHubトークンが約30ファイルに重複して含まれていることが確認された。このトークンはHanwhaのGitHub organizationの数百リポジトリにadmin権限でアクセス可能だった。
原因はビルドプロセスにある。UIはViteで構築されており、ビルド時に`process.env`の全内容が変数`W`に代入され、CI環境の環境変数(GITHUB_NPM_TOKENを含む)がそのままバンドルファイルに書き込まれていた。カメラのadmin UIにアクセスしたすべてのユーザーにこのトークンが送信された可能性がある。