フロントエンド開発のためのセキュリティ入門 知らなかったでは済まされない脆弱性対策の必須知識
書籍情報
発売日 : 2023年02月13日
著者/編集 : 平野 昌士/はせがわ ようすけ/後藤 つぐみ
出版社 : 翔泳社
発行形態 : 単行本
書籍説明
内容紹介
Webアプリケーションの堅牢化に欠かせない知識を凝縮!本書は、安全なWebアプリケーションを開発するための基本知識を、フロントエンドエンジニア向けに解説したセキュリティの入門書です。Webセキュリティの必須知識である「HTTP」「オリジン」などの基礎トピックや、「XSS」「CSRF」といったフロントエンドを狙ったサイバー攻撃の仕組みを、サンプルアプリケーションを舞台にしたハンズオンで学びます。もちろん、攻撃からユーザーを守る防御の手法もしっかりおさえます。個々の攻撃手法に応じた対策のほか、「認証機能の実装」「JavaScriptライブラリの安全な使い方」など、開発現場で役立つ実践的な脆弱性対策もカバーしているので、自分の開発で取り入れられるセキュリティ向上のヒントが多く見つかるはずです。解説はセキュリティを学ぶのが初めての人でも読み進められるよう、基本的な用語からひとつずつ丁寧に説明しています。また取り上げるトピックも、フロントエンドエンジニアが最低限おさえておくべき内容に厳選しました。対象読者ー業務経験1〜3年目のフロントエンドエンジニア、Webセキュリティを学び始めたいWebエンジニア、Webアプリケーションの具体的なセキュリティ対策を手を動かしながら学びたい人。
目次
第1章 Webセキュリティ概要
1.1 なぜセキュリティ対策を行うのか
1.2 Webの脆弱性の種類と傾向
第2章 ハンズオンの準備
2.1 準備をはじめる前に
2.2 Node.jsの設定
2.3 Node.js + Expressを使ったHTTPサーバの構築
第3章 HTTP
3.1 HTTP基礎
3.2 HTTPのハンズオン
3.3 安全な通信のためのHTTPS
第4章 オリジンによるWebアプリケーション間のアクセス制限
4.1 アプリケーション間でのアクセス制限の必要性
4.2 同一オリジンポリシー(Same-Origin Policy)による保護
4.3 同一オリジンポリシーによる制限のハンズオン
4.4 CORS(Cross-Origin Resource Sharing)
4.5 CORS ハンズオン
4.6 postMessageを使ったiframeをまたいだデータの送信
4.7 プロセス分離によるサイドチャネル攻撃の対策
第5章 XSS
5.1 能動的攻撃と受動的攻撃
5.2 XSS
5.3 XSS対策のハンズオン
5.4 Content Security Policy(CSP)を使った XSS 対策
5.5 CSPの設定ハンズオン
第6章 その他の受動的攻撃(CSRF、クリックジャッキング、オープンリダイレクト)
6.1 CSRF
6.2 CSRF対策のハンズオン
6.3 クリックジャッキング
6.4 クリックジャッキング対策のハンズオン
6.5 オープンリダイレクト
6.6 オープンリダイレクト対策のハンズオン
第7章 認証・認可
7.1 認証と認可の違い
7.2 認証機能のセキュリティリスク
7.3 アカウント作成フォーム実装ハンズオン
7.4 ログイン情報の漏えいに注意する
第8章 ライブラリを狙ったセキュリティリスク
8.1 ライブラリの利用
8.2 ライブラリに潜むセキュリティリスク
8.3 ライブラリ利用のセキュリティ対策
Appendix 本編では扱わなかったトピックの学習
A.1 さらにセキュリティを学ぶには
A.2 HTTPSハンズオン
著者情報
平野 昌士
平野, 昌士
はせがわ ようすけ
はせがわ, ようすけ
後藤 つぐみ
後藤, つぐみ