
DoorDashのシステムに存在した脆弱性により、誰でも同社の正規サーバーから「公式」なDoorDashテーマのメールを送信できてしまう可能性があり、ほぼ完璧なフィッシングチャネルを提供してしまう状況になっていました。
DoorDashは現在この問題を修正しましたが、脆弱性を報告した研究者と同社との間で激しい対立が勃発し、双方が相手の不適切な行動を非難し合う事態となっています。
誰でも「公式」DoorDashメールを送信できた
DoorDash for Businessプラットフォームの単純な欠陥により、誰でも[email protected]から完全にブランド化された「公式」メールを送信できてしまう状態でした。
偽名のセキュリティ研究者doublezero7によって発見されたこの欠陥は、脅威アクターに悪用されると、非常に説得力の高いフィッシングキャンペーンやソーシャルエンジニアリング詐欺を仕掛けることが可能になります。
簡単に言えば、誰でも無料のDoorDash for Businessアカウントを作成し、バックエンドの管理ダッシュボードから新しい「従業員」(任意の名前とメールアドレス)を追加し、その従業員に食事費用の予算を割り当て、任意のHTMLを含むメールを作成できました。
その結果として送信されるメッセージは、DoorDashの公式テンプレートをまとい、受信者のメールボックスにスムーズに届き、迷惑メール扱いにはなりませんでした。

この発見を行ったセキュリティ研究者は最近BleepingComputerに連絡を取り、悪意ある攻撃者がどのようにこの脆弱性を悪用できるかを示す証拠を提供しました。
「根本原因は予算名の入力フィールドでした。これは生テキストとしてデータベースに保存され、メールに転送されてレンダリングされていました」と研究者はBleepingComputerに語りました。
「閉じていないタグを使うことで、予算情報に関するテキストブロック全体を改変でき、display:noneを使えば、それを完全に隠して細工したペイロードに置き換えることが可能でした。」
「これは完全にメールクライアント側の防御レイヤーに依存していました。通過したものはすべてレンダリングされます。この入力フィールドでは ‘onerror’ 以外の on* イベントも有効でしたが、これらはメールプラットフォーム側でフィルタリングされます」と研究者は続けました。
上のスクリーンショットに表示されている「Claim Free 20$ Voucher」というテキストは、研究者がDoorDash for Businessのバックエンド上で作成した、概念実証レベルのHTMLインジェクション攻撃です(下図参照)。

研究者によると、この機能を悪用して送信されるメールはDoorDashの顧客や加盟店に限定されないため、脅威アクターはほぼ任意の受信者をDoorDash風のメールで標的にできたといいます。
この脆弱性は、Uberのメールシステムに存在し、誰でもUber.comからメールを送信できてしまう未対処の欠陥と同一のタイプであり、この問題は2022年にBleepingComputerによって明らかにされています。
15か月後にようやくエスカレーション
BleepingComputerに連絡を取る前、研究者は長期化する開示プロセスに不満を募らせ、具体的な技術的詳細や概念実証は伏せたまま、この欠陥と自身の開示の試みを要約した簡潔な脆弱性レポートを公開していました。
「技術的な欠陥自体は決して複雑なものではなく、信頼されたメールテンプレート内でレンダリングされる典型的なストアドペイロードでした」と当時彼らは記しています。
しかし発見者は、この脆弱性について提出したHackerOneレポート(# 2608277)が2024年7月17日頃に「Informative(参考情報)」としてクローズされ、「決してエスカレーションされなかった」ことに問題意識を持っており、その結果、この欠陥は15か月以上にわたり悪用可能な状態にあったと主張しています。
公開されているタイムラインおよび研究者がBleepingComputerに語った経緯によると、研究者がDoorDashに直接繰り返しメールを送るまで、この欠陥が修正されることはなく、実際にパッチが適用されたのは11月3日の週になってからでした。
「私の公開による圧力がなければ、この脆弱性はいまも有効なままだったでしょう」と研究者は主張しています。
倫理的な開示は頓挫、報奨金も支払われず
明確なタイムラインを確立するため、BleepingComputerは独自検証を行いましたが、ここから研究者側の説明とDoorDash側の説明が食い違い始めます。
研究者は、同社が圧力をかけられるまで問題を無視していたと主張しています。一方、同社は、その「圧力」自体が倫理的な一線を越えたものだったとしています。
同社の脆弱性報告対応に詳しい人物によると、研究者とDoorDashのやり取りが決裂したのは、研究者が開示のタイムラインに紐づいた多額の支払いを要求したことがきっかけであり、同社はこれを倫理的なバグバウンティ調査の範疇を外れた行為と見なしたといいます。この情報源によれば、研究者は調停の提案も拒否し、金銭的要求を繰り返したとのことです。
研究者は、自身の報告を報酬に値する正当なセキュリティ発見として位置づけています。しかしDoorDashは、この問題をバグバウンティのスコープ外と判断し、研究者のアプローチを「恐喝のように感じられた」と表現しています。
DoorDashの広報担当者はBleepingComputerに次のように述べました。
「DoorDashは、セキュリティ研究者と協力して潜在的なセキュリティ脆弱性を発見・修正するために、バグバウンティプログラムを運用しています。
今回のケースでは、この人物はDoorDashに対して金銭を要求する恐喝行為を試みました。そのため、当社のバグバウンティプログラムからは追放されています。
報告された問題は、当社のバグバウンティプログラムのスコープ外でした。当社のセキュリティチームは、報告された問題に対処する措置を講じました。
当社は今後も、善意で行動する研究者と協力し、プラットフォームの保護に努めていきます。」
BleepingComputerは、全体像を把握するためHackerOneにも取材を行いました。
バグバウンティプラットフォーム側は、研究者のレポートが「Informative」としてクローズされた理由についてはコメントしませんでした。
しかしHackerOneの広報担当者はBleepingComputerに次のように述べました。
「当社はこの件について顧客と連携して精査を行い、HackerOneの行動規範および顧客のプログラムポリシーに沿った適切な対応が取られたことを確認しました。
HackerOneは、プラットフォーム、顧客、およびHackerOneコミュニティの安全とセキュリティを確保するため、利用規約を重視しています。
コミュニティメンバーがHackerOneの利用規約に違反したと判断した場合、恒久的なプラットフォーム利用禁止を含む、迅速かつ適切な措置を講じます。」
BleepingComputerへのメールの中で、研究者は、この欠陥が長期間にわたり未修正のままだったことを改めて強調するとともに、同社へ直接連絡した際に支払いを要求するなど、「あまり倫理的とは言えない」アプローチを取ったことを認めています。
「DoorDashへの最終メールでは、深刻な放置の経緯を踏まえ、沈黙と引き換えに報酬付きのNDAを締結するという条件付きオファーを提示しました」と研究者はBleepingComputerに書いています。
「DoorDashは最後通告から数時間以内にバグを修正しました(それだけ重大だったことを示しています)が、私の支払い要求は無視し、欠陥をひっそりと修正する道を選びました。」
現在は修正済みのこの欠陥は、説得力の高いDoorDashメールのなりすましには利用できたものの、DoorDashのユーザーデータを露出させたり、内部システムへのアクセスを提供したりするものではありませんでした。
他のあらゆるフィッシング手法と同様に、受信者をだまして行動を起こさせる必要があり、その「重大性」がどの程度かについては疑問も残ります。
しかし研究者は、「ひっそりとした修正」と、その後自身がバグバウンティプログラムから排除されたことを報復行為だと見なしています。
「私が[この脆弱性を開示する]決断をしたのは、同社が私のサービスを無償で利用し、16か月にわたる失敗を隠そうとし、さらに私を黙らせようとしたからであり、これはセキュリティ研究に対する非倫理的な姿勢だと考えています。」
「自分の行動がすべて正しかったかどうか、正直なところ分かりません。ただ、最終的に彼らは欠陥を修正したので、少なくともその点では目的を達成できたと思っています」と研究者はBleepingComputerに締めくくりました。
このケースは、脆弱性報告がいかに紛糾し得るか、そして研究者と企業の期待値が食い違うと、いかに迅速に対立へと発展してしまうかを浮き彫りにしています。
この件について説明を受けた情報源はBleepingComputerに対し、この欠陥は今月公表された10月のDoorDash情報漏えいとは無関係だと述べています。