シーエー・アドバンス技術統括本部の @inahuku_shingo です。
普段は業務で脆弱性診断をしています。
さっそくですが…
バグバウンティとは、バグバウンティ(脆弱性報奨金制度)を行っているサービスやアプリケーションの脆弱性を探し出して報告することで、報奨金を獲得できる制度のことです。
主なバグバウンティ
HackerOne
https://hackerone.com/
Bugcrowd
https://www.bugcrowd.com/
BugBounty.jp
https://bugbounty.jp/
サイボウズ脆弱性報奨金制度
https://cybozu.co.jp/products/bug-bounty/
他にもGoogleやFacebookもやっています。
クリティカルな脆弱性を見つけることができれば、多額の賞金を稼ぐことができる可能性もあります!(夢がありますね…!)
HackerOneでチャレンジしてみた!
今回は登録されているプロジェクトが多そうなHackerOneを選びました!
アカウントを登録して、バグバウンティ対象のサービスを見ていきます。
https://hackerone.com/directory/programs
私は英語が(とても)苦手なのでGoogle翻訳でガイドラインを読みつつ、
色々なプロジェクトにアクセスしながら脆弱性を探して数週間…
……
…
…
とあるサービスで脆弱性を見つけることができました!
当然報告書も(とても苦手な)英語なので、
Google翻訳を使いつつ、HackerOneで公開されている過去の報告内容を参考にしつつ、なんとか報告することができました…!
見つけた脆弱性はまだサービス側で対応中とのことなので詳細は省きますが、
ざっくり下記のような内容で報告しました。
・脆弱性を確認した環境(ブラウザのバージョン等)を記載
・脆弱性が発生するために必要な各種設定の詳細
・脆弱性を確認するための手順をできるだけわかりやすく記載
・文章で伝わりにくいと思われる箇所は、スクリーンショットにして報告書に添付
・リクエストとレスポンスの内容
数日後、報告した脆弱性は無事受理されて、HackerOneによる脆弱性のトリアージ(危険度の確認と設定)完了後、サービス側に報告されたようです。
あとは、報奨金がもらえるまで待つだけです!やったー!
※サービスによっては結構時間がかかるようです。ちなみに今時点でまだもらえていません…!
注意したこと
今回はじめてバグバウンティにチャレンジしてみたのですが、
脆弱性を探すにあたって下記のことに注意しました。
サービスのガイドラインをちゃんと守る
HackerOneに登録されているプロジェクトによって、設定されているガイドラインが違うため、事前にしっかりと把握するようにしました。
ガイドラインを違反した状態で見つけた脆弱性は、受理されないこともあるので要注意です。
脆弱性を探す用のアカウントを使用する
もし、脆弱性があってアカウントが正常に使用できなくなってしまった場合、自分だけではなく、他のユーザーにも影響がでてしまいます。
また、他ユーザーの重要情報を取得できないかなどの観点で脆弱性を探す場合に、
脆弱性を突いて関係のないユーザーの情報を得てしまわないように、自分が作成したアカウントのみで確認することも大事です。
HackerOneに登録されているプロジェクトに、普段使っているサービスがありましたが、
その場合も専用のアカウントを作って確認しました。
発見した脆弱性を他言しない
悪用される恐れがあるので、修正されて脆弱性がしっかりと塞がれたと確認できるまでは他言しないようにしています。
最後に
今年は結局1つしか報告できなかったのですが、来年はもっと見つけていきたいですね!
ということで、ここまで読んでいただき、ありがとうございました。
補足!
もし、バグバウンティをやってみたい方がいらっしゃったら、下記を参考にされるといいかもしれません!
・脆弱性の見つけ方について
脆弱性の発見・報告に関する勉強会~初めての脆弱性調査~
https://www.ipa.go.jp/security/vuln/report/notice/handling_20190926.html
※勉強会は終了していますが、講演資料のpdfが参考になりました!
気軽に脆弱性を見つけてみよう!
https://qiita.com/ihahajime/items/0146ce5515b7a1bbb454
※弊社伊波のアドベントカレンダー17日目の記事です!
Hacker Activity
https://hackerone.com/hacktivity
※HackerOneで公開されている過去のレポートです!脆弱性の詳細や、報告の仕方などが参考になります!
・プロキシツールの使い方について
Windows 10 + Burp Suite で Android 8.0 のアプリの通信を取得する方法
https://qiita.com/toubaru/items/a3427bc4b4e9da33c12f
※弊社桃原のアドベントカレンダー1日目の記事です!
OWASP ZAPを使って通信を取得する設定をサクサク書いてみた(Chrome)
https://qiita.com/inahukus/items/9e82801965c9c3e73e13
※手前味噌ですみません自分の記事です…!