『Webブラウザセキュリティ ― Webアプリケーションの安全性を支える仕組みを整理する』

ブラウザの視点で学ぶセキュリティ

現代のWebブラウザには、ユーザーがWebというプラットフォームを安全に利用できるように、さまざまなセキュリティ機構が組み込まれています。

  • リソース間に境界を設定し、アプリケーションに制限を課す機構(Origin、SOP、CORS、CSPなど)
  • Webブラウザの動作をOSのプロセスレベルで考察することで役割が理解できる機構(CORB、CORP、Fetch Metadataなど)
  • 通信路や受け取ったデータの状態に関するもの(HSTS、SRIなど)
  • 現在のWebアプリケーションにとって不可欠なCookieに関するセキュリティ機構

こうしたセキュリティ機構のほとんどは、Webブラウザを開発する人やセキュリティの専門家が知っていればいいものではありません。

アプリケーション開発者が、自分のアプリケーションで正しく利用したりデプロイしたりすることではじめて効果を発揮し、そのユーザーを守るのに役立つものです。

とはいえ、アプリケーションを開発する立場では、これらの機構が単にアプリケーションの制約や複雑さを増す要素にしか思えない場合もあるでしょう。

バイパスされたり、弱めた状態で利用されたり、あるいは一種の「おまじない」として扱われている場合さえあるかもしれません。

本書は、これら「現代のWebブラウザが備えていてアプリケーション開発者にも理解が求められる多様なセキュリティ機構」について、一つひとつ丁寧に整理して解説するものです。 そもそもどんな脅威に対抗するためのセキュリティ機構なのか、現在の形でWebブラウザに導入されているのはなぜか、攻撃者がさらに対抗してくる可能性はないのか、リファレンスなどを通じて使い方を調べるだけでは理解しにくい背景まで掘り下げて説明しています。

攻撃者とWebブラウザ開発者たちとのせめぎ合いの歴史から、Webセキュリティについての理解を深める一冊です。

著者紹介

米内貴志

2017年より東京大学理学部情報科学科在学中。2019年より株式会社Flatt Securityにてプロダクト開発とWebシステムに関するセキュリティ技術の研究に従事。一般社団法人セキュリティ・キャンプ協議会やSECCON実行委員会の一員として、情報セキュリティ技術の教育活動や、CTF(セキュリティ技術を競うコンテスト)の開催、運営にも参画している。

2 冊 発売中