脆弱性報奨金制度「バグバウンティ(BugBounty)」の勉強をしてきた

セキュリティ

この記事では、脆弱性報奨金制度「バグバウンティ(BagBounty)」について書きます。この記事を書くきっかけになったのは、Connpass勉強会の「Meetup in Tokyo #34 – Security Bug Bounty -」に参加してバグバウンティ面白そうと思ったからです。

LINE株式会社は、東京の場合は、新宿駅直結のミライナタワーにあります。会場の雰囲気は次のような感じでした。

(ツイッター #LINE_DM より)

スポンサーリンク

バグバウンティとは?

WEBサイトやアプリケーションに存在する脆弱性を早期に発見し、ユーザーに、より安全なサービスを提供することが目的です。企画する会社(運営者)は、報告されたバグに対して報奨金を支払います。また、脆弱性を修正します。運営者は自社のテストでは発見できない視点で一般ユーザにテストしてもらうことでより良いサイトを作れるという利点がある。日本でも採用する企業が増えているが運営方法は手探りな部分がある。

一方、バグバウンター「報告者」は、バグを報告することでお金がもらえたりセキュリティエンジニアの実績になったり、優秀な報告者は、「Hall of fame」というページで紹介される。

LINEのバグバウンティ

5/15の資料は次のものでした。この中から、私が感じた要点をまとめます。

LINEのバグバウンティは、品質を保つためにエンジニアを雇うより、バグバウンティ制度を使ったほうが安かったため導入したとのこと。LINEのバグバウンティのサイトを見ると、報告したバグが報奨の対象に選ばれると$500〜$10000の金額が支払われます。2017年のバグバウンティの状況をLINEのエンジニアブログで紹介をしてくれています。

これを見ると、世界各地から報告されていることがわかります。日本は報告数でいうと全体の5%。まだまだ日本はバグバウンティをやっている人が少ないようです。報告された脆弱性もXSSが一番多くて20%、有名道ころの脆弱性を覗いたOTHERが70%となっています。

また、2018年のバグ報告者上位が次のページで紹介されています。

<バグバウンティの選考フロー>

1〜2営業日で一次判定。認定されると2ヵ月くらいで報奨金が支払われる。

<LINEの人が語る、嬉しいバグの報告レポート>

☆タイトルでどこにどういう脆弱性があるかわかる
☆再現手順が明確
☆PoCやPayloadがある
☆脆弱性を利用した場合におけるRiskが書いてある
☆(修正案が書いてあるとなおよい)

 

<LINEの人が語る、脆弱性の見つけかた>

☆LINEアプリは微妙だが、LINE FriendsなどはWebの技術で作られているため、Webの技術を使うと脆弱性を発見できる。

LINEスキームあたりも狙い目

<バグバウンティをやる前に必要な知識>

  • 実サービスと自分の情報を見ることは、OK。他人の情報を見るのは、NG。他の人の情報をみると、アクセスブロックされるので注意。
  • セキュリティで一番すぐに直さなければいけないのは、「RemoteCodeExecute」

サイボウズのバグバウンティ

サイボウズもLINE同様、脆弱性報奨金制度と言うものがあります。バグバウンティの概要はLINEと同じになります。制度や報奨金が異なります。サイボウズの脆弱性報奨金制度の特徴は次の点です。

  • 検証者用に専用の環境を準備する
  • 1年毎に制度や報奨金を見直す
  • CVSSv3を基準とした報奨金計算
  • キャンペーンで、とある製品のバグは金額5倍になっている。

また、サイボウズが考えるバグバウンティの利点は、次の点です。

  • 社内検証とバグハンターの違いは、網羅的にするのではなく、バグハンターは、ピンポイントな診断してくれる。
  • バグハンターとのコネクションを持つことができる(情報交換)。

今日の資料ではありませんが、制度は次のようになっています。大塚さんはお綺麗な方でした☆

サイボウズの内情

報奨金制度のあとに、PSIRTチームと製品開発チームの意見の乖離を説明してくれました。運営したことがないので、ここは箇条書きになります。

  • 何を判断するか明確になっていない
    • PSIRTチーム:脆弱性かどうか判断することを明文化した
    • 製品開発チーム:脆弱性を修正するかどうかを判断することを明文化した
  • 脆弱性と言う言葉の温度差
    • PSRTチーム:認定さればバグにお金を支払いたい。
    • 製品開発チーム:脆弱性にお金を払うのが嫌だ。即対応するかどうか修正するか判断しずらい
  • 脆弱性かどうかを明確にしたい理由が共有できていない
    • より良いサイトを作っていくためのものということを共有する

プロのバグハンターMasato Kinugawaさん

撮影禁止のセッションで、今日はこの人を見に来ました。最初はどこにでも居そうな青年のイメージでしたが、バグバウンティで人生が変わった人で、日本有数の実力者です。お話しをしてくださったあとの私の印象は、「プログラム好きな身近な人」です。雲の上の人なのですが、とても親近感を持ちました。

資料は後ほど公開してくださるとのことでしたが、プロのバグハンターが感じた良い点と悪い点と運営者にお願いしたい点を書きます。

  • 良い点
    • 贈り物は嬉しい。
    • 検証環境が整備されていると嬉しい。
    • 単純にお金が多いと嬉しい
    • アンケートの実施調査があると嬉しい
    • バグの面白さを評価してほしい(技術力に共感してほしいと言う意味)
  • 悪い点
    • 運営者に脆弱性をきちんと理解してほしい。XSS知らないとかがある。
    • 一通りの脆弱性をテストしてから、制度を開始してほしい。受付をした瞬間、受付を停止しているようなプログラムがある。これはNG。 一回社外の診断を受けてからやりましょう。
    • 報告者とコミュニケーションを取って欲しい。報告に対するのレスポンスをみて、その後のバグ報告を継続して行くかを考えている
  • 運営者へのお願い
    • 運営者とバグハンターがお互いがいい気持ちでやり取りができるかが鍵
    • ホームページや窓口で脆弱性は報告してくださいとアナウンスがあると、安心して脆弱性を調べられる。勝手にやると次のようなことになる。

Microsoftのバグバウンティ

息切れをしたため、だいぶメモの量が落ちてしまいました。

  • Microsoftのバグバウンティは、APLごとに期間が決まっている。
  • WindowsDefenderSecurityCenterというものだと、自分でテンプレートの攻撃をつくってセキュリティの検査をできる物がある。
  • Microsoctは、クラウドとセキュリティを売る会社になっている。

バグバウンティのその他の情報

勉強会の中で出てきましたが、まとめ上で書ききれなかった情報を箇条書きにします。

  • CVSSの知識
  •  利用すると良さそうなページ
  • 今はまだ必要ありませんが、税金に関して
    • 報告者が獲得した報奨金額が特定の金額を超える場合、報告者はご自身で確定申告を行う義務が発生いたします。確定申告に関する詳細につきましては、以下の国税庁のホームページ、「No.1900 給与所得者で確定申告が必要な人」および、「No.1490一時所得」をご覧ください。
      • http://www.nta.go.jp/taxes/shiraberu/taxanswer/shotoku/1900.htm
      • http://www.nta.go.jp/taxes/shiraberu/taxanswer/shotoku/1490.htm
  • Googleのバグバウンティ
    • https://www.google.com/about/appsecurity/
    • https://bugs.chromium.org/p/chromium/issues/list

まとめ

この記事では、脆弱性報奨金制度「バグバウンティ(BagBounty)」について勉強したことをまとめました。GoogleやFaceBookで調べるのは大変そうだし、そもそもみつけられるのか??と思っています。でも、私、プチバグバウンティを過去に経験していました。

初めてのバグバウンティ経験
HTML5レベル2の取得に向けて毎日JavaScriptを読むようになりました。HTML5認定試験の公式ページ…

これも立派なバグバウンティですね。

勉強会に出たのに何もやらないのは勿体無いので、まずは、検証環境を用意してくれているサイボウズさんの、脆弱性報奨金制度に申し込んで見ました。続報はそのうちに。

 

 

コメント