シャドーIT――セキュリティチームが把握していないシステム――は、常に課題となっています。ポリシーで禁止されていても、管理されていない資産は必ずと言っていいほど見逃されます。そして、防御側が先に発見できなければ、攻撃者に見つかるリスクが常に存在します。
わずか数日間の調査で、Intruderのセキュリティチームは、実際に存在するシャドーITの露出例を複数発見しました。未保護のバックアップ、公開されたGitリポジトリ、認証のない管理パネルなどです。
いずれも高度な攻撃手法を必要とせず、非常に機密性の高いデータや認証情報が含まれていました。
ターゲットの発見方法
シャドーITを発見する最も効果的な方法の一つが、サブドメインの列挙です。開発者は自由に新しいシステムを展開しますが、それらを外部からアクセス可能にするには、ほとんどの場合サブドメインが必要になります。
私たちはCertificate Transparency(CT)ログに注目しました。これは発行されたTLS証明書の公開台帳です。ワイルドカードクエリを実行し、「git」「backup」や人気ソフトウェアの名前など一般的なキーワードで検索することで、約3,000万件のホストを素早く特定できました。
その後、フィンガープリント技術と自動スクリーンショットを組み合わせ、興味深い、または脆弱性がありそうなホストを特定しました。数日以内に、攻撃者が日常的に大規模に悪用するような重大な弱点をさらすシステムのリストができあがりました。
資産が隠れても、Intruderが見つけ出します
Intruderは未知の資産を自動的に発見し、攻撃者に悪用される前に露出をスキャンします。これにより、実際のリスクを迅速に修正し、安全を保つことができます。
シャドーITを可視化しましょう。Intruderで攻撃対象領域を発見しましょう。
(わずか数日間のテストで)発見したもの
何が露出しているかを把握していなければ、脆弱性スキャンは効果を発揮しません。Intruderのような攻撃対象領域管理ソリューションは、隠れた資産を自動的に発見し、脆弱性をスキャンすることで両面からカバーします。
以下の脆弱性は、すべて公開されているホストで実際に確認された露出です。
公開されたバックアップ
バックアップは、最も簡単に発見できる露出の一つでした。多くのバックアップ関連サブドメインではディレクトリの内容が公開されており、バックアップアーカイブが誰でもダウンロードできる状態になっていました。
ごく一部を調査しただけでも、現役の認証情報やウェブサイトのソースコード、完全なデータベースダンプが見つかりました。あるケースでは、アーカイブ内にハードコーディングされたトークン――FTP認証情報も含まれ、テスト時点で有効なもの――が含まれていました。
この種の露出は、どんな脆弱性スキャナーでも簡単に検出できますが、ホストがシャドーITであり、脆弱性管理プログラムに登録されていなければ、インターネット上で露出したまま見逃され続けます。
公開Gitリポジトリ内の秘密情報
未保護のGitリポジトリも、機密データの一般的な流出源です。たとえ認証情報や秘密ファイルを現行のコードベースから削除しても、適切にパージしない限りGitの履歴に無期限で残り続けます。
多くの組織は独自のGitサーバーを運用し、独自コードの管理を維持しています。あるケースでは、LLMマーケットプレイスアプリケーションのソースコードを含む公開Gitサーバーを特定しました。
リポジトリは完全に公開されており、開発者の管理が不十分だったため、外部サービス(Redis、MySQL、OpenAIなど)の秘密情報も含まれていました。これらのトークンはテスト時点で有効でした。
コードリポジトリをインターネット上に公開してしまうのは単純なミスですが、深刻な結果を招きます。重要なのは、他者に発見される前に自分で露出を検知することです。
無防備な管理パネル
公開された管理パネルも繰り返し発生する問題です。ログインページで保護されていても、管理インターフェースを直接インターネット上に配置することで攻撃対象領域が拡大します。しかし、認証が全く不要なパネルも見つかりました。
「Elasticsearch」や「logging」などの用語でスキャンしたところ、多数のログ・監視システムがオンラインで公開されていることが判明しました。
ほとんどは認証情報が必要でしたが、多くは不要で、長期間公開されていたため攻撃者の痕跡(Elasticsearchインスタンスへの身代金要求メモなど)がすでに存在していました。
これらのシステムでアクセスできるデータは非常に機密性が高く、インフラのログ、秘密情報、アプリケーションデータ(ユーザー生成コンテンツを含む)、さらにはチャットボットのメッセージまで含まれていました。認証なしで放置されたパネルは、攻撃者がネットワーク内部に侵入するための詳細情報を簡単に与えてしまいます。
大規模な設定ミスの連鎖
サブドメイン列挙により、大規模な設定ミスの連鎖も明らかになりました。あるホスティングプロバイダーを調査する中で、約100の顧客ドメインが同じ脆弱性――アプリケーションのソースコード、ユーザーファイル、データベースコピーを含むバックアップファイルが公開されている――を抱えていることが判明しました。
個別に見ると、各ドメインは単なる見落としに見えます。しかし、列挙によってパターンが明確になり、顧客全体に広がるシステム的な問題であることが分かりました。
一歩引いて全体像を把握し、プロバイダーに報告することができました。
これがあなたの攻撃対象領域に意味すること
シャドーITは死角を生みますが、隠れたままにする必要はありません。防御側は、次の方法で攻撃前に弱点を検知できます:
-
サブドメインを継続的に列挙し、新しいシステムを攻撃者より先に発見する
-
新たに発見した資産を脆弱性管理プログラムに組み込み、見落としを防ぐ
Intruderはこれを自動で行い、未知の資産を発見して露出をスキャンし、迅速な対応を可能にします。
デモを予約して、Intruderがどのように露出を侵害前に発見するかご覧ください。
著者プロフィール:
執筆:Intruder セキュリティエンジニア Benjamin Marr
BenはIntruderのセキュリティエンジニアで、攻撃的セキュリティスキャンの自動化やセキュリティリサーチを担当しています。OSWE認定ペネトレーションテスターおよびPHPソフトウェアエンジニアとしての経歴を持ちます。
Intruderによるスポンサー記事・執筆。