セキュリティチームは、組織の主要な本番ドメインに最善の努力を傾注するのが一般的です。結局のところ、その組織にとって最も多くのトラフィックを運ぶアプリケーションは収益を生み出します。そこで公開されるデータは、攻撃者にとって最大の標的となる。これを保護することが最も重要であることは理にかなっているが、それがすべてではない。
もし納得がいかないなら、少し攻撃者の気持ちになって考えてみよう。表面的には)価値の低いターゲットを狙うことで、何が達成できるだろうか?脆弱性の低いターゲットが、プライマリーターゲットに到達するための進入路を作る手助けになる可能性はないだろうか?
見てみよう。
攻撃戦略弱点を見つける
堅固に守られた要塞に侵入する方法を考えるとき、知性のある攻撃者なら、正面玄関のドアまで歩いていって、ドアを打ち破ろうとはしないだろう。これは彼らの唯一の攻撃戦略ではないだろう。その代わりに、防御の弱点を見つけようとするだろう。
ウェブ・セキュリティも同様だ。クラウド・コンピューティングの世界では特にそうで、今日の組織は柔軟性と容易なスケーリングのためにクラウドの移植性を活用している。例えばLinodeでは、ボタンをクリックするだけでアプリケーションの新しいインスタンスを立ち上げることができます。
しかし、クラウド・コンピューティングの利便性は、安全な慣行を伴う必要がある。強力なセキュリティを持つメイン・アプリケーションに機能を追加するよりも、新しいアプリケーションを構築してサブドメインにデプロイする方が簡単だと考えるエンジニアリング・サブチームがいるかもしれない。もちろん、これらのサブチームは、自分たちの組織を攻撃にさらすつもりはない。しかし、新しいアプリケーションやサブドメインによって組織のウェブ・フットプリントを拡大することで、攻撃対象領域を拡大し、環境全体のセキュリティを確保することをより困難にしているのです。
また、サブドメイン上の本番稼動していないアプリケーションのインスタンスは、おそらくメインのアプリケーショ ン、あるいは少なくともそのデータストアと通信する必要があることに留意してください。これは、攻撃者が、より安全でないシステムからより安全なシステムへの経路を見つけることができる場所です。
防衛戦略境界線を知る
要塞の比喩に戻ろう。攻撃者が弱点を見つける最良の方法のひとつは、ターゲットの周囲全体を偵察することだ。つまり、攻撃者と同じように考えるのであれば、可能性のある攻撃ポイントをすべて見つけることが、システムのセキュリティを万全にするための素晴らしい第一歩なのだ。
Sublist3rのようなツールは、セキュリティ・チームや侵入テスト担当者のために設計されている。境界を監視し、何が配備されているかを知るのに役立つ。しかし、攻撃者はこれらを使って、使用されているすべてのサブドメインを列挙することもできます。
とはいえ、防御を確立するための出発点は、システムへの侵入経路をすべて監視することだ。
他人の失敗から学ぶ
最近、私が分析していたサイトで、この種の状況の完璧な例に遭遇した。その会社は、メインサイトの防御を万全にし、TLS 1.3でセキュア化し、PCI-DSS準拠の認定を受けるまでに多大な労力を費やしていた。それは大変な作業だ!
しかし...彼らはまた、SSL/HTTPSで保護されていないサブドメインでコンテンツ管理システムを運用していた。🤦🏻♂️ このCMSへのトラフィックはすべて-認証さえも-完全にクリアな状態で実行されていた。
グーグル・クロームでさえこれが問題であることを知っており、URLバーに「安全ではありません」という大きな警告を表示する。これはログインページなので、ユーザー名とパスワードはプレーンテキストで送信されます。十分にやる気のある攻撃者であれば、ISPやネットワークレベルでトラフィックを傍受することで、これを手に入れることができる。そして、その認証情報を使って同じ会社が所有する別のシステムを攻撃することができる。このサブドメインの認証情報が同じ会社の他のアプリで再利用される可能性は?かなり高いと言える。
あるいは、攻撃者がCMSにアクセスし、アプリケーションにマルウェアや悪意のあるJavaScriptを埋め込むことで、従業員が他のシステムにアクセスした際に顧客データが流出する可能性もある。
この会社が誇る主要なアプリケーションの安全確保には、多大な努力が払われた。正面のゲートは施錠され、いたるところに警備員が配置されている。一方、裏口は大きく開け放たれ、誰も監視していない。
結論
ほとんどの人は、サブプロダクションドメインが大きなリスクだとは思っていない。「曖昧さによるセキュリティだ」と彼らは言う。この単純な例で、なぜそれがセキュリティ戦略として不適切なのかがはっきりしたかと思います。システムやアプリケーションの規模は関係ない。あなたのビジネスがそれを導入するのであれば、それはセキュリティの焦点の一部である必要があります。
今日からできる実践的なステップをいくつか紹介しよう:
- ドメインをスキャンして、現在使用されているすべてのサブドメインのインベントリーを作成する。
- 各サブドメインを、悪用されやすさ、悪用された場合のビジネスへの影響の両面からランク付けする。
- 最も悪用されやすく、ビジネスに最も影響を与えるサブドメインをロックダウンするセキュリティツールを導入する。
- リソースと帯域幅に余裕がある限り、リストの下のほうに行くようにする。
まずはサブドメインを少しずつ確保することから始めても大丈夫です。何もしないよりは確実にいい!完璧を良しとしないこと。重要なのは、インターネットに導入したソリューションにはある程度のリスクが伴うということを念頭に置くことだ。そして、リスクがあるところはどこでも、そのセキュリティに注意を払うべきである。攻撃者は、大きな損害を与えるために会社全体を乗っ取る必要はありません。したがって、重要でないシステムであっても、会社が健全であり続けるためにふさわしい重さで扱う価値があります。
攻撃者のように考えることは、素晴らしいスタートだ。脆弱性に対する警戒を怠らず、攻撃を拡大する前に誰かが足がかりを作り、しばらく潜んでいる可能性のある場所を根絶することは、あなたのビジネスがサイバーセキュリティの次の大きなニュースにならないようにするための大きな一歩です。
セキュリティの詳細については、Linodeのセキュリティ関連のドキュメントやガイドをご覧ください。
コメント