私はウクライナのモバイルオペレーターKyivstarのクライアントであり、ウェブサービス
my.kyivstar.uaのユーザーです。 他の多くのオペレーターと同様に、キエフスターは個人口座のウェブ版を提供しており、そこで口座残高の表示、通話の詳細、料金の変更、サービスの注文または無効化などを行うことができます。
また、彼らは最近、個人
アカウントnew.kyivstar.uaの新しいバージョンを立ち上げました。 興味深い機能が登場しました-SMS検証を介して別のKyivstar電話を追加します。 脆弱性がないかどうかを確認することを約束しました。実際に追加された電話に自分のものと同じアクセス権が与えられたので、クライアントとしてはあまり満足できませんでした。
新しいサイトには、電話を追加するための次のインターフェイスがあります。

追加は4つの手順で行われます。
電話番号を入力してください

SMS添付ファイルからオプションを選択します(静的パスワードでも発生しますが、表示されません)

受信したSMSを入力します。

確認
これらの4つのステップは、一連のPOSTおよびGET要求に変換されます。 このシリーズからの最後の3つのリクエストは、OTP検証後に番号を追加する責任があります。
そして、私はチェックすることに決めました:SMS検証を担当するものなしでこれらの要求を繰り返したらどうなるでしょう。
これらの最後の3つのクエリをさらに詳しく考えてみましょう。
Google Chrome開発者ツールでは、次のように表示されます(Shift + Ctrl + I):

Merge.rpcリクエストはaccount.kyivstar.ua/cas/merge/merge.rpcに送信されます。
最初のリクエストの内容:

要求には、追加する電話番号が含まれます(097 ...)
2番目の要求の内容:

アドレス
new.kyivstar.ua/ecare/addOrMergeへの3番目の要求は、パラメーターなしのGET要求であり、前の2つの操作を確認します。
次に、個人アカウントから追加したばかりの電話を以前に削除して、これら3つの要求を再生することにしました。
再生には、Postmanアプリケーションを使用しました。

予想どおり、ページの更新後、電話は個人アカウントに正常に追加されました。

何がありますか。
SMS確認なしで個人のアカウントに任意の電話番号を追加し、私たちのものとして管理できます。
- 残高と通話の詳細を表示する
- SIMカードのPUK1コードとシリアル番号を表示します。これにより、SIMカードを自分で交換できます
- 新しいサービスを追加し、料金プランを変更する
- そして最も重要なこと-電話から電話にお金を転送する
詐欺師へのより良い贈り物を想像することはできません。
予想どおり、私はすぐにKyivstarカスタマーサポートに連絡し、セキュリティ担当者または開発部門の責任者に、脆弱性の本質とその再現方法の詳細な説明を提供するように依頼しました。 予想どおり、私はリクエストを拒否され、脆弱性の説明をチャットまたはサイト上のユニバーサルフォームを介して送信するよう提案されました。
カスタマーサポートの従業員が脆弱性の詳細な説明を入手できる場合、どのようなリスクが発生する可能性があるのかを理解した上で、私は要求を主張しましたが、やはり成功しませんでした。 他に解決策がないことに気付いた私は、Google Docsファイルの脆弱性を再現するための詳細な指示を発行し、clickmeter.comリンク
追跡サービスを介してリンクにラップし、チャットに送信しました。
予想どおり、私のアプリケーションは会社の従業員の間で騒ぎを起こし、関心を高めました。これは分析サービスclickmeter.comに表示されました。

22のユニークユーザーが2日間のアプリケーションを閲覧しました。

統計によると、リンクはコンピューターとモバイルデバイスの両方から表示されたことがわかります。 ビューの地理もキエフ事務所に限らず、キエフ、リヴィウ、ドネプロペトロフスク、トビリシのリストにありました。
統計を分析すると、企業との既存の通信チャネルはこの種のアプリケーションのファイリングを目的としておらず、脆弱性が解消されるまで第三者による情報漏洩と悪用につながる可能性があることが明らかになりました。
会社に敬意を表する価値はあります。担当の従業員は2日目に私に連絡し、感謝し、リンクを公開しないように頼みました。 次の数週間で、脆弱性は閉じられ、再度連絡が入り、アプリケーションが完了したことを通知されました。
この話は、キエフスターのような規模の企業における情報セキュリティの問題にもっと注意を払う必要があることを思い出させてくれます。このための個別のコミュニケーションチャネルを作成します。 バグバウンティプログラムへの参加や独自のプログラムの作成も、サービスのセキュリティ強化にプラスの効果をもたらします。