【衝撃】マクドナルドアプリで相次ぐセキュリティ脆弱性が発覚!現役CSIRTが解説する企業システムの実態とは

つい先日、世界最大級のファストフードチェーン「マクドナルド」の公式アプリで深刻なセキュリティ脆弱性が相次いで発見されたという報告が話題になりました。独立研究者のBobDaHacker氏による調査で明らかになった実態は、現代のWebアプリケーション開発において決して他人事ではない問題を浮き彫りにしています。

私もCSIRT(Computer Security Incident Response Team)の一員として数多くのセキュリティインシデントに対応してきましたが、今回のマクドナルドの事例は「基本的なセキュリティ対策の重要性」を改めて痛感させられる内容でした。

マクドナルドアプリで発見された脆弱性の全貌

今回発見された脆弱性は単一の問題ではなく、複数の異なるセキュリティホールが連鎖的に存在していたことが特徴的です。私たちフォレンジック調査の現場でも、このような「複合的な脆弱性」が一つのシステムに同時に存在するケースをよく目にします。

リワード機能のサーバーサイド検証不備

最初に発見されたのは、マクドナルドの公式アプリのリワード(ポイント)機能における致命的な欠陥でした。本来であれば、ユーザーがポイントを使用する際には以下のような検証が必要です:

  • ユーザーが実際にそのポイントを保有しているか
  • 使用しようとするポイント数が妥当な範囲内か
  • 不正な操作によるポイント消費ではないか

しかし、マクドナルドアプリではこれらの検証がサーバー側で適切に行われておらず、クライアント側(アプリ側)の処理だけでポイントを消費できてしまう状態でした。

実は、私が過去に調査した中小企業のECサイトでも似たような事例がありました。その時は攻撃者が商品の価格を1円に改ざんして大量購入を行い、数百万円の損失が発生していました。幸いマクドナルドの場合は研究者による報告だったため大きな被害は避けられましたが、悪意のある攻撃者に悪用されていたら深刻な事態になっていたでしょう。

ブランド資産ポータルの認証不備

さらに深刻だったのが、Feel-Good Design Hubというブランド資産ポータルでの認証機能の不備です。当初はクライアント側のパスワードのみで保護されており、報告から3ヶ月後にアカウント制に変更されたものの、根本的な問題は解決されていませんでした。

特に問題だったのは以下の点です:

  • 登録用エンドポイントが無認証でアクセス可能
  • エラーメッセージが入力漏れを詳細に教えてしまう
  • 初期パスワードが平文でメール送信される

平文でのパスワード送信は、2025年現在では絶対に避けるべきセキュリティプラクティスです。メールは暗号化されていない場合が多く、経路上で第三者に盗聴される可能性があります。

APIキーとシークレットの露出問題

フロントエンドのJavaScriptに通知サービスのAPIキーとシークレットが露出していたという問題も見逃せません。これは私たちがWebアプリケーションの脆弱性診断で頻繁に遭遇する典型的な問題の一つです。

このような露出により可能になってしまうのは:

  • ユーザー一覧の不正取得
  • マクドナルド名義を騙った通知の送信
  • 内部システムへの不正アクセス

実際に私が関わった事例では、APIキーが露出していた中小企業のWebサービスで、攻撃者が偽の緊急通知を大量送信し、顧客の信頼を大きく損なう事態が発生しました。幸い今回は研究者による報告だったため、キーの撤去と回転が迅速に行われましたが、発見が遅れていたら大変なことになっていたでしょう。

社内ポータルでの権限昇格問題

さらに深刻だったのが、社内向けポータルでの権限境界の甘さです。店舗クルー相当の低権限アカウントで全社の人事検索システムにアクセスでき、従業員のEID(Employee ID)や氏名で詳細情報を検索できる状態でした。

中には「なりすまし開始」というインターフェースが露出していた画面もあったとのことで、これは内部統制の観点から極めて危険な状況です。

私がフォレンジック調査を行った企業でも、似たような権限昇格攻撃により機密情報が漏洩した事例がありました。その時は従業員の個人情報約5万件が外部に流出し、企業は多額の賠償金と信頼回復のためのコストを負担することになりました。

CosMc’sアプリのクーポン不正利用問題

マクドナルドの新ブランド「CosMc’s」のアプリでも、一回限りクーポンの制御がクライアント側に依存しており、APIを直接呼び出すことで何度でも利用できる状態でした。

このような「クライアント側依存」の脆弱性は、モバイルアプリやWebアプリケーションでよく見られる問題です。開発者が「ユーザーは善良である」という前提でシステムを設計してしまうことで生じます。

過去に調査した小売業の事例では、クーポンの不正利用により月間数百万円の損失が発生していました。このような経済的被害は企業の存続に直結する問題となる可能性があります。

報告窓口不在という運用面の問題

技術的な脆弱性と同じくらい深刻だったのが、適切な報告窓口が存在しなかったことです。security.txtファイルは一時期設置されていたものの、数ヶ月で撤去されてしまっていました。

最終的に研究者は本社の代表電話に何度も連絡し、社内の担当者名を伝えて折り返しをもらうという手段で連絡を取ることができました。しかし、このような状況では善意の研究者による報告さえも困難になってしまいます。

さらに問題だったのは、協力したクルーが「セキュリティ上の懸念」を理由に契約終了となったことです。これは組織のセキュリティ文化に深刻な問題があることを示しています。

企業が学ぶべきセキュリティ対策のポイント

今回のマクドナルドの事例から、企業が学ぶべき重要なポイントをまとめてみました:

1. サーバーサイドでの検証を徹底する

クライアント側の処理は常に改ざん可能であると考え、重要な判定はすべてサーバー側で行う必要があります。これはWebサイト脆弱性診断サービス 0のような専門的な診断サービスで定期的にチェックすることが効果的です。

2. 認証・認可の仕組みを適切に実装する

ユーザーの身元確認(認証)と権限管理(認可)は、システムセキュリティの基本です。特に管理系の機能には必ず適切な認証機能を実装しましょう。

3. 秘密情報の取り扱いを見直す

APIキーやパスワードなどの秘密情報は、フロントエンドに露出しないよう注意が必要です。また、パスワードの平文送信は2025年現在では絶対に避けるべきプラクティスです。

4. 脆弱性報告の受け皿を整備する

security.txtファイルの設置や、Vulnerability Disclosure Program(VDP)の整備により、善意の研究者からの報告を受け付ける体制を構築することが重要です。

個人・中小企業でもできるセキュリティ対策

マクドナルドのような大企業でさえこのような問題が発生するのですから、個人や中小企業ではより一層の注意が必要です。

基本的なセキュリティ対策

まず最低限実施すべきなのが、アンチウイルスソフト 0の導入です。マルウェアやフィッシング攻撃からシステムを保護することで、多くの脅威を未然に防ぐことができます。

また、リモートワークが一般的になった現在では、VPN 0の利用も必須となっています。公衆WiFiを利用する際の通信傍受リスクや、地理的制限回避による不正アクセスを防ぐ効果があります。

定期的なセキュリティチェック

Webサイトやアプリケーションを運営している企業には、定期的な脆弱性診断をお勧めします。今回のマクドナルドの事例のような問題も、Webサイト脆弱性診断サービス 0を利用することで事前に発見・対策することが可能です。

まとめ:セキュリティは継続的な取り組み

今回のマクドナルドの事例は、どれだけ大きな企業であってもセキュリティ対策に「絶対」はないということを示しています。重要なのは、継続的にセキュリティ対策を見直し、改善し続けることです。

私たちフォレンジックアナリストが現場で目にする多くのインシデントは、「基本的なセキュリティ対策の不備」が原因で発生しています。今回のような事例を他山の石として、自社のセキュリティ対策を見直すきっかけにしていただければと思います。

セキュリティインシデントは「もし起きたら」ではなく「いつ起きるか」という前提で対策を講じることが重要です。適切な準備と継続的な改善により、企業と顧客の大切な情報を守っていきましょう。

一次情報または関連リンク

blogHeader
How I Hacked McDonald's (Their Security Contact Was Harder to Find Than Their Secret Sauce Recipe)
How I found critical security vulnerabilities in McDonald's systems affecting millions of employees, and had to cold-cal...
タイトルとURLをコピーしました