設定ミスの社外秘情報はググれます――サイバー攻撃者はどうやってクラウドを墜とすのか?ITmedia Security Week 2024 冬

2024年2月28日、アイティメディアが主催するセミナー「ITmedia Security Week 2024 冬」における「クラウドセキュリティ」ゾーンで、多摩大学 ルール形成戦略研究所 客員教授 西尾素己氏が「攻撃者はいかにしてクラウドを堕(お)とすのか 今知るべき攻撃のトレンド」と題した講演に登壇した。以前はランサムウェアをテーマとして、世界情勢に合わせて講演したが、今回は“クラウド”の現状を、西尾氏の視点で語るセッションとなった。

» 2024年04月05日 05時00分 公開
[宮田健@IT]

この記事は会員限定です。会員登録(無料)すると全てご覧いただけます。

クラウドの事故は設定ミスが多い、しかしそれだけではない

多摩大学 ルール形成戦略研究所 客員教授 西尾素己氏

 クラウドに関するインシデントの多くは、設定ミスによって公開してはならない情報が、インターネットから見えてしまう事故に起因している。これはパブリッククラウド特有の問題だが、西尾氏は「よく『特殊な方法やツールで調べているんでしょう?』と誤解される。まずはここから紹介したい」と述べ、「Google Dorks」という手法を紹介する。

 Google Dorksは特別なツールではなく、多くの人が利用する検索エンジンとしての「Google」に、検索演算子を追加して検索結果を絞り込む手法だ。例えば特定のドメインを指定する「site:」に加え、拡張子を指定する「ext:」を組み合わせることで、日本政府を表す「*.go.jp」で公開されている、「PDFファイル」を検索することが可能だ。これを活用することで、日本の企業が公開サーバ上で公開している、データベースをダンプしたものとおぼしき「sqlファイル」の一覧を取り出したり、「Amazon S3」上で公開されている「社外秘」を含むファイルの一覧を取り出したりすることができてしまう。

 想像を超える量の、おそらくは見えてはいけないものが、誰もが使うGoogle検索エンジンで到達できてしまうことについて「雑な検索条件でも、開いてはならないような問題のある情報が転がっていることが分かる。一応、付け加えておくが、検索した結果をGoogleドメインにある一覧で確認する分には問題ないが、リンク先の情報を確認するのは法律的に問題があるので注意してほしい」と西尾氏は指摘する。

 これは一般的なテキストだけでなく、GitHubなどに対しても応用が利く。GitHubにホスティングされているファイルに対してRSA鍵を検索することもでき、秘密にしていると思っていたトークンや鍵が外部から見えている状態にある。

GitHub上にあるクレデンシャル情報を探索することも可能(西尾氏の講演資料から引用)

 「よく『公開設定をミスしたからといって、ウチみたいな中小企業の資産にはたどり着けないだろう』と思い込んでいる話を聞く。たとえテスト環境だとしても、情報公開後にすぐに消したとしても、検索エンジンのクローラーに一度でも触られたら漏えいしたものと考える必要がある。ロシアのチームはこういったセンサーやスキャナーの制作にたけており、常に狙われていると考えるべきだ」(西尾氏)

 日本でも、大企業であるトヨタ自動車が、誤設定を起因とした情報漏えいインシデントを起こしている。個人情報保護委員会もかなり強い懸念を表明しており、「情報セキュリティに関する研修が不十分」「情報の取り扱い状況を把握していなかった」などの指摘に加え、「そもそも当該情報が個人情報である旨を理解していなかったのではないか」とも指摘しており、データ利活用に伴い複雑化する個人情報の定義も注目された。

 同様に、脆弱(ぜいじゃく)性が残るサーバを検索することも可能だ。「Shodan」をはじめとする検索エンジンでは、例えば「Log4Shell」が修正されていないサーバの一覧を取得可能だ。これは今すぐにでも攻撃に悪用が可能な対象を絞り込むことができてしまう。

 「パッチマネジメントの中で緊急性が高いもの、リモートコード実行が可能なものから対処しているかもしれないが、『1カ月くらいなら大丈夫だろう』と放置してはならない。クロールエンジンは日々動いており、攻撃者に見つかる前に対応することが求められる」(西尾氏)

Shodanでは今でもLog4Shell未対応の日本国内サーバが108件リストアップされていた(西尾氏の講演資料から引用)

高まるプライベートクラウド需要

 公開設定が大きな問題となっていることから、パブリッククラウドではなくプライベートクラウドの需要が高まっている。これは生成AIの需要に伴い、パブリッククラウドだと生成AIのソースとして、想定外の利用が起こり得ることも関連するだろう。

 ある程度、これまで踏襲してきた境界型セキュリティが使えることもあり、プライベートクラウドはより安全という印象があるかもしれないが、西尾氏は「プライベートクラウドも狙われやすい」と述べる。

 西尾氏は2023年に発生した、米国ラスベガスにあるカジノホテル、MGMグランドの侵害事例を取り上げる。これはランサムウェアによって社内システムが攻撃された事例だが、プライベートクラウドの仮想化基盤が侵害されたというものだ。

 この事例は、ビジネスSNSの「LinkedIn」に掲載された公開情報から、MGMグランドの従業員を見つけることから始まっている。IT管理者を見つけた後、管理者が持つ電話番号をSIMスワッピングで奪い、それを元に2段階認証のメッセージを攻撃者が受け取れる状況を作る。その後、やはりSNSから収集したITサポート部門の電話番号に連絡し、パスワードをリセット、その後は正規の方法でログインし、ドメインコントローラーを侵害。その上で仮想化基盤、つまりプライベートクラウドの認証情報を奪い、全ファイルを暗号化してバックドアを作った。

MGMグランドが狙われた事例(西尾氏の講演資料から引用)

 このようなプライベートクラウドの仮想化基盤を狙ったランサムウェアが、2023年秋ごろから増えている。この背景には、こういった仮想化基盤がパブリッククラウドでも活用されていることがあるという。

 「パブリッククラウドは多数の顧客が利用しており、万が一侵害を受けたときに身代金を払うモチベーションが高い。まずはプライベートクラウドを“お試し”として攻撃しているのではないか。いつの日か同様のことが、パブリッククラウドでも起きるのではないかと考えている」(西尾氏)

ソフトウェアサプライチェーンのリスク

 西尾氏は続けて、「SolarWinds」の事例を取り上げる。これは米国の最重要インフラで利用されていたネットワーク監視ツールだが、アップデート機能にバックドアが仕込まれた結果、一時的に攻撃者の支配下に墜ちてしまった。背後にはロシアの攻撃グループがいたとされている。

SolarWindsの事件(西尾氏の講演資料から引用)

 加えて、事例の一つとして「LOFYGANG」を西尾氏は取り上げる。これはアプリケーション開発者に個別に連絡し、かなりの金額を提示して数行のコードを組み入れる依頼をしたものだ。そのコードは難読化されているが、バックドアや不正なマイニングコードなどが含まれている。こうすることで、攻撃者からはたった数百万円程度のコストをかけるだけで、そのコードが含まれる数千、数万のプロジェクトを汚染することができる。これが、ソフトウェアサプライチェーン攻撃だ。

 「SBOM(ソフトウェア部品表)が注目されているのはこういった理由からだ。ソフトウェアサプライチェーンを真剣に検討すべき時期に来たといえる」(西尾氏)

ソフトウェアサプライチェーンを専門に扱う集団も(西尾氏の講演資料から引用)

 開発環境を取りまく状況は大きく変化している。先のSolarWindsの製造元は、米国証券取引委員会(SEC)から「詐欺罪」で訴えられた。これは、「自社のソフトウェアが安全だ」と製造元が説明していたにもかかわらず、こういった事故を起こしたことに起因する。「今後のソフトウェア製造元責任の重要な判例となる可能性が高い」と西尾氏は指摘する。

 加えて、「北朝鮮に関連する攻撃グループ『Lazarus』は、執拗(しつよう)にCI/CD(継続的インテグレーション/継続的デリバリー)ツールを攻撃している」と西尾氏は述べる。ここからも、大規模なソフトウェアサプライチェーン攻撃が今後起きる可能性が示唆される。

ソフトウェア開発が狙われる(西尾氏の講演資料から引用)

DevSecOpsで開発環境を守れ

 西尾氏は「クラウド活用において、誤って公開してしまっているような設定の問題もさることながら、開発環境も注意して見ていかねばならない」と述べる。その鍵となるのはDevSecOpsだ。この早急な導入を西尾氏は推奨する。

 ここで気を付けるべきは、DevSecOpsが保証するものだ。これまでは設計時点でセキュリティを議論し、デプロイされたプロダクトが仕様通りにできているかどうかを確認するなど、特定の時点におけるセキュリティを保証してきた。DevSecOpsの導入によって開発のライフサイクルに一貫してセキュリティのライフサイクルを組み入れることで、ライフサイクル全体の「状態としてのセキュリティ」を作り出すことができる。

DevSecOpsが目指す「状態としてのセキュリティ」(西尾氏の講演資料から引用)

EDRだけでは守り切れない時代へ

 そして重要なのは「エンドポイント」だ。エンドポイントを守る手法としてEDR(Endpoint Detection and Response)が注目されているが、西尾氏は「エンドポイントをEDRだけで守れる時代は終わった」と指摘する。

 その理由の一つが「LoTL」だ。LoTLは「Living off the Land」の略で、内部の侵害のためにマルウェアを外部から送り込むのではなく、PowerShellをはじめとする、既にインストールされた標準のバイナリを利用する。正統な署名を持つバイナリを悪用することから、振る舞い検知型の製品でも検出しにくい。現在では、この手法によってPowerShellの機能を使った暗号化も可能だという。

LoTLの悪用事例(西尾氏の講演資料から引用)

 加えて、「DLLサイドローディング」も問題だ。正規なプログラムが汚染済みDLLを読み込むことで、攻撃の検出はますます困難だ。「理論的にはEDRで検出ができても、防御しきることはほぼ不可能だ」と西尾氏は述べる。

DLLサイドローディング(西尾氏の講演資料から引用)

 では、エンドポイントを守るにはどうすればいいのか。西尾氏は「ゼロトラストの考え方を取り入れる」ことを推奨する。具体的には、ゼロトラストアーキテクチャにおける「どこからでも攻撃は来るものだと考え、トラストアルゴリズムを作っていく。それによって“怪しさ”を定義し、『どういう状態が怪しいか』を判断する」ことだ。

 「局所的にエンドポイントにEDRを入れればいい時代は終わった。同じように、クラウドの出口と入り口にファイアウォールを導入すればいいという時代も終わった」(西尾氏)

トラストアルゴリズムの考え方(西尾氏の講演資料から引用)

 つまり、安全なSaaSを、安全なエンドポイント端末から利用することが重要となる。このためには、クラウドの安全性をしっかり評価して利用すること、仮想化技術を活用しさまざまなサイバー攻撃から保護し、感染拡大を防ぐこと、そしてしっかりとした、OSレイヤー以下からの攻撃が防御できるセキュアなハードウェアの利用も重要だ。

ゼロトラストを導入し、エンドポイントをセキュアにするには(西尾氏の講演資料から引用)

 「クラウドは公開設定を誤ると、大変なことになってしまうことを知る。クラウドを使う場合には、クラウドをいかにセキュアに利用するかに加えて、開発環境や運用環境を安全にすることにも注目していただきたい。それが今の攻撃のトレンドだからだ。これに加え、エンドポイントもちゃんと守る。攻撃者が開発環境を狙うとき、エンドポイントを落とすことをまず狙うからだ。クラウドを、組織を守るには、この3段階で捉えてほしい」(西尾氏)

Copyright © ITmedia, Inc. All Rights Reserved.

スポンサーからのお知らせPR

注目のテーマ

Microsoft & Windows最前線2025
AI for エンジニアリング
ローコード/ノーコード セントラル by @IT - ITエンジニアがビジネスの中心で活躍する組織へ
Cloud Native Central by @IT - スケーラブルな能力を組織に
システム開発ノウハウ 【発注ナビ】PR
あなたにおすすめの記事PR

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。