2022/01/25

バグバウンティの紹介 / Introduction to Bug Bounties(転載)


Introduction to Bug Bounties | by Vedant Roy:

一般的には、クラウドソースによるペネトレーションテストのことで、世界中のセキュリティリサーチャーが、企業が許可したスコープ内の資産の一部をテストすることができます。企業の資産にバグを発見した場合の報酬は、現金、グッズ、殿堂入り、感謝状のいずれかです。

武漢ウイルスの流行により主流になりつつあります。ペネトレーションテスト担当者やエシカルハッカーの多くは、移動時間やオフィスに行くための基本的な準備にかかる時間を節約し、より多くのタスクを短時間で簡単にこなすことで、フルタイムの仕事に多くの余裕を見出しています。また、副業をして副収入を得ることも悪くありません。雇用の喪失や企業の閉鎖を考えると、卵は別のカゴに入れておいたほうがいいでしょう。

さて、どうやって始めるかというと、この分野に関する予備知識があるかないかによります。フルタイムのペネトレーション・テスターとして働いている場合は、プロセス全体のインとアウトをある程度知っている方が始めやすいでしょう。キャリアの浅い方や転職を考えている方でも、まずはこの分野から始めてみるといいでしょう。上記のような制約があっても、それとは無関係に手順やリソースをお伝えします。

  1. プログラミングを学ぶ – この分野ではプログラミングは必須ではありませんが、コードを読み、どのように動作しているのか、異なるスニペットがどのように相互接続されているのかを理解できる程度には学んでおくことをお勧めします。Python、SQL、JavaScriptから始めるのがよいでしょうが、ウェブアプリケーションの機能を理解するために、ローカルサーバーのホスト上で自分のテストアプリケーションを書けるように、PHPも一緒に学ぶことをお勧めします。常に覚えておいてほしいのは、「機能を知らないのに、何かを壊すことはできない」ということです。

  2. セキュリティの基本概念 – ウェブサイトの仕組み、コンピュータネットワーク、入門的な調査、Nmap、Burp Suite、OWASP ZAPなどの各種セキュリティツールの使い方など、基本的な概念を学ぶことは絶対に必要です。他にも、コンピュータネットワークの基礎、VPS(仮想プライベートサーバー)の設定方法、ラボやテスト環境の構築など、学ぶべき前提条件はたくさんあります。参考文献に記載されているNahamsecのgitリポジトリは、これらの学習を始めるのに適した場所です。

  3. OWASP TOP 10 – これは、ウェブアプリケーションで発見されたセキュリティ脆弱性のトップ10を集めたものです。OWASP を学ぶための最良の方法は、まず OWASP.org のウェブサイトから始めて、そのプレビューを見ることです。必要であれば、OWASP OTG に目を通し、より理解を深めることもできます。実践のためには、PortSwigger 社の Web セキュリティ・アカデミーが最適です。このリソースは、常に新しい攻撃手法を追加しており、完全に無料であるため、非常にお勧めです。

  4. 本を読む – もしあなたが熱心な読書家であれば、参考文献や詳細な学習のために保管しておかなければならない本がいくつかあります。「Web application Hacker's handbook 2nd edition」は、Webセキュリティ分野のバイブルとされており、執筆者のDafydd Stuttard氏は、Portswigger社の創業者です。(Burp suite, web security academy)。その他の推奨書籍としては、「Web Hacking 101」、「Bug Bounty Bootcamp」、「Breaking into Infosec」、「Tangled Web」などがあります。

  5. ハンティングを始める – 概念を学び始めたら、理解を深めるために実際に手を動かすことが必要です。そのための最良の方法は、脆弱性開示プログラム(VDP)でバグを探し始めることです。これらのプログラムでは、ウェブサイト上に栄誉が与えられますが、金銭的な報酬はありません。そのため、熟練したバグバウンティハンターの数が少なく、有効なバグを発見する範囲が広いため、簡単にバグを発見することができるのです。オープンバグバウンティは、世界中のVDPをリストアップするプラットフォームのひとつです。しかし、何かを見つけるためにスキャナーを動かし始めるのはやめましょう。手動でテストするだけにしましょう。

  6. ツイッターでフォローする – Twitterはバグバウンティ/セキュリティ研究者のハブとなっています。新しい攻撃手法や新しいツールが常に追加され、ハッシュタグ#bugbounty-tipsを使ってこれらの手法を一箇所にまとめています。bugbounty, #bugbountytips #hacking などのハッシュタグをフォローすると、ニュースフィードが更新されます。

  7. モチベーションを高める映画・ドキュメンタリー – この旅を始めるには、モチベーションが重要です。ハッキングの歴史を知り、なぜ当初は犯罪とみなされていたのかを知ることで、この分野への理解が深まります。私がお勧めする映画/ドキュメンタリーをいくつかご紹介しましょう。「Who am I hacker」(ドイツ語)、「Zero Days」(ドキュメンタリー)、「Mr.Robot」(シリーズ)、「Person of Interest」(シリーズ)、「CSI Cyber」(シリーズ)、「Cyberwar」(ドキュメンタリーシリーズ)、「Hacker」(映画)などがあります。

  8. メンタルヘルス – バグバウンティを長期間行っていると、燃え尽きてしまうことがあります。一般的な誤解として、良いバグが見つからない、バグが重複している、修正チームの反応が遅いなどが主な原因とされていますが、実際には昼夜の仕事をこなすことが一般的な理由です。ですから、これらの症状を感じ始めたら、必ずしばらく休むようにしてください。それ以外にも、体を動かして健康を保ち、7~8時間の睡眠をとることで、順調に経過します。通常、期間は人によって異なることがあるので、コメントできるような特定のタイムラインはありません。常に覚えておいてほしいのは、精神的な健康が最優先であるということです。

最後に、簡単な作業ではないことを覚えておいてください。セキュリティの脆弱性を見つけ出し、ハッカーとしての考え方を身につけるには、多くの時間と努力が必要です。挫折したり、疲れ果てたりするかもしれませんが、それだけの価値はあるはずです。インターネットを他の人にとってより安全な場所にすることは、常に良い選択なのです。

この記事が、読者の皆さんの中で、バグバウンティを始めようと思っている人や、この分野の素晴らしい人たちと一緒に仕事をしようと思っている人の刺激や手助けになれば幸いです。ありがとうございました。

リファレンスとリソース