研究者らは、Shinobi動画監視システムのコード内に埋め込まれた鍵を発見しました。この鍵を悪用すれば、外部の第三者がログインもパスワードも使わずにユーザーデータベースとカメラ設定にアクセスできる可能性があります。今回の重大な脆弱性CVE-2026-82448は、ノード間通信サービスがネットワーク経由でアクセス可能な状態になっているインストール環境に影響します。この脆弱性の説明は2026年8月29日に公開され、修正はコミット5a76c74fで示されています。
Shinobiの機能とこの問題が重要な理由
Shinobiは、自分のコンピューターやサーバーをネットワーク・ビデオ・レコーダーに変えるソフトウェアです。このプログラムはIPカメラを接続し、録画を保存し、ブラウザ経由でストリームを視聴できるようにします。そのため、データベースへのアクセスはユーザーアカウントだけでなく、監視システム全体の構成にも影響を及ぼします。今回のアドバイザリでは、ユーザーレコードやカメラ設定を読み取ったり改変したりできることが確認されており、任意のデータベースクエリを実行できることでサービス停止のリスクも生じます。
深刻度と影響範囲
この問題を発見したのは研究者のSadik Erturk氏です。VulnCheckはこの脆弱性をCVSS 4.0スケールで9.3と評価しており、GitHubアドバイザリの記録でも同じスコアが示されています。悪用にはアカウントもシステム所有者による操作も一切必要ありません。ただし、攻撃者は脆弱なサービスに対して具体的にネットワークアクセスを持っている必要があり、ログインフォームを備えたサイトにアクセスできるだけでは不十分です。
脆弱性が存在する場所
この問題はChild Nodesという仕組みに存在します。これは動画処理を複数のマシンに分散させる機能です。追加のノードはメインサーバーに接続し、そのサーバーを経由してデータベースクエリを実行します。開発者のドキュメントによれば、ノード間通信はデフォルトでポート8288を使用し、この機能自体は別途設定が必要です。したがって、インストールされたShinobiのすべてのコピーがこの種の攻撃に自動的に脆弱であるとは言えません。
攻撃の仕組み
この鍵は信頼されたノードの通行証として機能していましたが、開発者はその値をソースコードに直接残していました。攻撃者はWebSocket接続を確立する際にこの既知の鍵を提示し、その後任意のSQLクエリを送信できます。サーバーは追加ノード用の標準メッセージハンドラーを通じてコマンドを受け付けていたため、外部からの接続がシステムの信頼された参加者としてデータベースにアクセスできてしまう状態でした。
サーバーの完全な乗っ取りとは限らない
ただし、データベースへのアクセスを、オペレーティングシステムの完全な掌握と自動的に同一視することはできません。旧版の公式インストーラーは、確かにShinobiを最大権限を持つユーザーであるrootとして実行するよう提案していました。そのようなモードでは、システムコマンドを実行した際の被害が拡大する可能性がありますが、CVE-2026-82448のアドバイザリが説明しているのは任意のデータベースクエリの実行であり、root権限でサーバーを乗っ取るための別の攻撃チェーンが存在することは確認されていません。
修正内容と所有者が取るべき対応
開発者の修正内容の説明では、ノード間通信の問題は、システムコマンドの実行やアクセス制御違反など他のセキュリティ上の不備と並んで記載されています。CVE-2026-82448については、修正の境界となるコミットは5a76c74f3977661ff3f9fd55a260db352c0b19c0です。所有者は、インストール済みのビルドに該当パッチが含まれているか、またノード間通信の設定に独自の秘密鍵が設定されているかを確認する必要があります。
アップデートを行うまでの間は、Child Nodesのポートを外部アドレスから遮断し、不要であればサービス自体を無効化しておくべきです。ウェブインターフェースの前に追加のパスワードを設けても、そこへの接続がセキュリティで保護されたウェブログインを迂回する形であれば、個別にアクセス可能なポート8288は保護されません。調査対象となったアドバイザリでは、実際のインストール環境に対する攻撃を裏付ける情報や、影響を受けたサーバー数の推定は示されていません。
翻訳元: https://meterpreter.org/shinobi-hardcoded-key-vulnerability/