リアルワールドバグハンティング

リアルワールドバグハンティング

ハッキング事例から学ぶウェブの脆弱性

リアルワールドバグハンティングの表紙
その他
著者:
Peter Yaworski / 玉川 竜司(ピーター ヤウォルスキー / タマガワ リュウジ)
価格:
¥3,300
出版社:
オライリー・ジャパン
出版日:
2020年09月28日頃
ISBN:
9784873119212
在庫:
1
判型:
単行本
3.33(3 件 / 楽天ブックス)
中級者向け
サーバー管理インターネット・WEB デザインインターネットセキュリティ脆弱性セキュリティWeb ハッキング倫理的ハッキングバグハントWeb アプリケーションセキュリティ報奨金プログラムWeb アプリケーションセキュリティテスト

なぜ注目されているか

総合353位 言及 2 件

書籍紹介

Web アプリケーションの脆弱性を見つけ出す過程を解説!
ユーザがどのように Web サイトを破壊するか、またどうして破壊が可能になるのかを説明します。インターネットの仕組みと基本的な Web ハッキングの概念、脆弱性を特定する方法について倫理的ハッカーである著者が解説します。Twitter、Facebook、Google、Uber などの企業が報酬を出してアプリケーションの脆弱性をなくした実例を列挙。実際に報告された脆弱性の様々なタイプをバグハントの報奨金と共に紹介しており具体的です。

技書の森解説

『リアルワールドバグハンティング』 (Peter Yaworski 著、玉川 竜司 訳、オライリー・ジャパン、2020 年 9 月刊) は、企業が報奨金を出して受け付けた Web アプリケーションの脆弱性報告を題材に、弱点がどこに生まれ、どう見つけられ、どう報告されたのかを種類別に学ぶ書籍です。副題は ハッキング事例から学ぶウェブの脆弱性、原書は Real-World Bug Hunting です。版元は、Twitter、Facebook、Google、Uber などで報奨金の対象になった実例を紹介しながら、脆弱性に共通する要素の見分け方を解説する本と説明しており、バグハンターに加えて、安全なアプリケーションを開発し運用したいエンジニアにも向けた一冊と位置づけています。

全 20 章と付録の構成、脆弱性の種類ごとに実例を並べる

1 章 バグバウンティの基本では、脆弱性とバグバウンティの関係、ブラウザでサイトにアクセスしたときに名前解決から描画までに起こること、HTTP リクエストの性質を確認します。2 章から 18 章は脆弱性の種類ごとの章で、オープンリダイレクト、HTTP パラメーターの汚染、クロスサイトリクエストフォージェリ、HTML インジェクションとコンテンツスプーフィング、キャリッジリターンラインフィードインジェクション、クロスサイトスクリプティング、テンプレートインジェクション、SQL インジェクション、サーバーサイドリクエストフォージェリ、XML 外部エンティティ、リモートコード実行、メモリの脆弱性、サブドメインの乗っ取り、レース条件、安全ではないダイレクトオブジェクト参照、OAuth の脆弱性、アプリケーションロジックと設定の脆弱性と続きます。各章は仕組みの説明の後に実際の報告事例を並べ、事例ごとに教訓の節を置く形です。19 章 独自のバグバウンティの発見と 20 章 脆弱性レポートでは、対象の探し方とテストの進め方、報告前に参加プログラムのポリシーを読むことや詳細を十分に書くことといった報告の作法を扱い、付録 A ではプロキシーやポートスキャン、ブラウザープラグインなどツールの分類を、付録 B では学習用のリソースを紹介します。

事例から学ぶことが Web セキュリティの理解を深める理由

脆弱性 の解説書は、攻撃の分類と対策を一覧として示すものが多く、知識としては整理されても、実際のサービスのどこにその穴が開くのかは想像しにくいままになりがちです。本書が事例を中心に組まれていることの価値はここにあります。たとえば レース条件 は、教科書の上では同時実行の問題として説明されますが、招待の受諾や支払いといった業務の処理に当てはめて語られると、自分のサービスのどの画面が同じ形をしているかを考えるきっかけになります。脆弱性の種類の多くは OWASP が整理してきた Web アプリケーションのリスクとも重なるため、分類の知識を持っている人にとっては、それぞれが現実の大規模サービスでどう現れたかを補う読み物になります。また 20 章で報告の作法を独立して扱っている点は、見つけた問題を開発側に正確に伝える力が、発見と同じくらい重要であることを示しています。

前提知識と、許可された範囲で学ぶという条件

読み進めるには、HTTP の基本、HTML と JavaScript の役割、Cookie やセッションによる認証の仕組みといった Web の基礎を一通り知っていることが前提です。1 章で通信の流れを確認するとはいえ Web 開発そのものの入門ではないため、こうした前提が心もとない場合は Web 開発の入門書を先に通しておくと理解が速くなります。また本書は事例の解説と考え方の整理が中心で、検証環境の構築やツールの操作を手順として追う演習書ではありません。もっとも大切な前提は、試す場所です。バグバウンティは参加企業がプログラムのポリシーで許可した範囲でのみ成り立つ活動であり、許可の無いサイトに対して同じことを行えば法令に触れるおそれがあります。

体系的な対策の設計や、組織としてのセキュリティ管理の進め方を学びたい人には、本書の焦点は合いません。目的に合う一冊を選び直したい場合は セキュリティ技術書の選び方 が手がかりになります。一方で、バグバウンティへの参加を考えている人はもちろん、Web サービスを開発する立場で攻撃側がどこを見ているのかを具体的に知りたい人、レビューやテストで見落としやすい穴の形を事例の蓄積として持っておきたい人にとって、実在の報告を種類別に読める本書は、設計やコードを見る目を確実に変えてくれる一冊です。

言及した記事 (2 件)

この本に興味がある方におすすめ

関連する本

関連記事

関連用語

共有: