脆弱性検索月間:どのように準備し、どのように生き延びたのか





4月21日に、Hacker Oneと脆弱性検索プログラムを開始しまし 。 5月20日に競技会は終了しました。これはこのプログラムの最初のステップでした。 今日、私たちはどのように防衛を強化し、競争に備えるか、研究者が競争のギャップをどのように探したか、そして彼らが私たちを見つけたのを助けたいと思っています。



もちろん、私たちはバグの報奨金で胸を開けるつもりはありませんでした。 過去数年間に実装したセキュリティ機能の最も深刻で効果的な強度テストとして、脆弱性検索プログラムを開始しました。 防衛の最も強力なラインの1つは、SDCの導入です。 しかし、少し背景から始めましょう。



Mail.Ruドメインによって統合されたプロジェクトは、巨大な異種構造です。 現在、ドメイン内にMail.Ruは独自のサブドメインを持つ50以上の異なるプロジェクトを投稿しました。 既存のアプローチ、ツール、品質基準を持つチームが開発に参加します。 さらに、特定のイベント用に作成されるワンタイムプロジェクトがあります。 そして、これはパートナープロジェクトは言うまでもありません。



このような大量のコードを使用して、ユーザーに便利に(各サービスでパスワードを再入力する必要がなく)同時にセキュリティを損なわないようにするにはどうすればよいですか(したがって、歌う猫を含むWebサイトカードのエラーがメールボックスの盗難につながることはありません)? 決定しました:@セグメントを分離します。



@セグメントを分離



ユーザー保護計画の最初の部分である特権の分離は、長年Mail.Ruで機能していました。 セキュリティを強化する取り組みの一環として、セキュリティを再構築し、単一の標準に減らして強化しました。 計画の2番目の部分であるアクセスセグメンテーションは、比較的最近実装しました。



特権の分離は、制限された機能と最小限のAPIを持つアプリケーションの適切に制御された部分のみが重要なデータにアクセスできることを意味します。



アクセスセグメンテーションとは、あるアプリケーションを侵害しても他のアプリケーションが侵害されないことを意味します。



ユーザーセッションを整理する際、このアプローチはセッション分離またはセキュアドメインクッキー(SDC)を使用して実装されます。これについては、別の投稿で詳しく説明します。 SDCの導入により、さまざまなプロジェクトへのアクセスを論理的に区別し、さまざまなプロジェクトでユーザーアクセスを制御するコードを標準化および最小化することができました。



私たちはすべてのMail.Ru GroupプロジェクトのSDCへの移転に積極的に取り組んでいますが、そのプロセスは迅速ではありません。 それにもかかわらず、私たちは最も重要なプロジェクトを確保することができました。 まず、Mail.Ru MailはSDCに切り替えました。



そこで、プロジェクトの監査を実施し、見つかった欠陥を排除し、SDCを実装しました。 ストレスの多い状況でチェックするようにセキュリティシステムを調整する時が来たので、脆弱性検索プログラムを起動することが最善の方法であると判断しました。



Mail、Cloud、CalendarのWebバージョンとモバイルアプリケーション、およびMail.Ru for BusinessとMail.Ru Authorization Centerの脆弱性を検出した賞を受賞しました。 パートナーおよびサイトとして、彼らはHackerOne.comリソースを選択しました。 HackerOneは、サイバーセキュリティに特化した非営利組織です。 なぜ正確にHackerOneなのか? まず、世界で最も尊敬されるハッカーコミュニティの1つです。 共同設立者の中には、この分野の世界有数の専門家がいます。 このサイトで行われている主な取り組みの1つは、人気のあるオープンソースソフトウェアの脆弱性の検索です。 彼らは商業サービス(私たちを含む。)によって寄付されたお金の30%を調査します。ところで、私たちはHackerOneで最初のロシア企業になりました。 Hackeroneプラットフォームを通じて、悪名高いHeartbleed脆弱性の検出に対して賞が支払われ、最近人類史上最大のデータリークが発生しました。 第二に、HackerOneには非常に便利な条件と参加者向けのインターフェイスがあります。



そのため、バグバウンティを開始し、レポートを待ち始めました。



スキャナーの軍隊が救助に



長く待つ必要はありませんでした。 プログラムが開始されてからほぼ最初の数秒で、レポートが私たちに降り注ぎました。 世界中の研究者(特にアジアの初心者、特に初心者)は、「これが私の最高の時間です!」というモットーの下で、急いで防衛に突入したようです。 プログラムの最初の4日間で、750件のバグレポートを受け取りました。 彼の頭をつかむ時が来たように思えますが、最初の100の後、私たちはそれに気付きました:

  1. アジアでは、Acunetixやその他のセキュリティスキャナーを実行できる非常に多くの人々がいます。

    最初のバグレポートのほとんどは、慎重にコピーされた同一のAcunetixレポートで構成されており、その多くにはURLもWebサイトアドレスも含まれていませんでした。 幸いなことに、このようなレポートの波はすぐに収まりました。





  2. 弱虫のマニュアル。 残りのレポートの大半は、発表された報酬プログラムの範囲外のプロジェクトに関するものでした。



貴重な展示



しかし、関連するレポートも来ました。 警戒する研究者が発見したもの:



後者について-詳細:プログラムに含まれていないプロジェクトでエラーが見つかりました。 ただし、コード実行に関する唯一の脆弱性であることが判明したため、1か月で見つかったプログラムのアクションの中で最も深刻なものであったため、それを発見した参加者を勝者の数に含めることにしました。



次の投稿のいずれかで最も興味深いケースについて確実に説明します。



いくつかの統計



プログラムの1か月の間に、研究者は194個のバグを発見しました(重複ではなく、再現性はありません)。 この数には、プログラムに参加しているプロジェクトのエラーと、他のプロジェクトのバグが含まれます。







数字で:

プログラムに含まれるプロジェクトについて 非プログラムプロジェクト
リモートコード実行 0 1
SQLインジェクション 0 7
Xss 14 68
ドメインまたはアプリケーション間でデータにアクセスする 14 4
CSRF 11 26
不十分な車両保護 4 2
その他の重要ではない 18 27




受賞者



1位($ 5000)-庭崎

2位($ 3000) -reactors08

3位($ 1500) -d1g1



メールでXSSの脆弱性を発見した研究者に授与された最初の2つの場所。

XSSは、Webアプリケーションで最も一般的なセキュリティエラーの1つです。 OWASP分類によると、この脆弱性の技術的リスクは「中程度」と評価されています。 ただし、一部のサービスではかなり深刻な危険があります:XSSは、攻撃者が悪意のあるページにアクセスしたか、電子メールで悪意のあるリンクを開いたユーザーのメールボックスのコンテンツに一時的にアクセスできるようにする可能性があります(ただし、メールボックスを奪い、パスワードやセキュリティの質問を変更することはできませんが、永続的なアクセスを取得)。



SSL証明書の検証が不十分である脆弱性に対して3位になりました。 このような脆弱性により、ユーザーが安全でないネットワーク(カフェやその他の公共の場所など)を介して退出した場合、送信されたデータにアクセスできます。



そして、私たちは、limbolandxの最も深刻な脆弱なオフオスプレイ(同じRCE)に対して、2000ドルの追加賞金を設定することにしました。



次は?



同じタイプのスキャナーレポートは、全体的な好印象を損なうことはありませんでしたが、

貴重で専門的な報告を受け、結果に満足しました。 そのため、競争を進行中のプログラムに変えています(HackerOneの条件についてはhttps://hackerone.com/mailruをご覧ください )。



このプログラムは、さまざまな種類の脆弱性に対して次の報酬を設定します。



Mail.Ru Authorization Centerの場合:

RCE:10,000ドル

SQLiまたは同等のもの、認証バイパス、または同等の情報漏洩:5000ドル

XSS:500ドル(自己XSSを除く)

CSRF:150〜500ドル

オープンリダイレクト:150〜300ドル



プログラムに参加している他のプロジェクト(スコープから):

RCE:3000ドル

SQLiまたは同等のもの、認証バイパス、または同等の情報漏洩:2000ドル

XSS:300-500ドル(自己XSSを除く)

CSRF:150-500ドル



ですから、もしあなたが私たちの防衛のギャップを見つけて、それに対する報酬を得たいと思ったら- 歓迎します。



All Articles