平野 昌士 著
はせがわ ようすけ 監修
後藤 つぐみ 監修
本書は、安全なWebアプリケーションを開発するための基本知識を、フロントエンドエンジニア向けに解説したセキュリティの入門書です。
これまでWebアプリケーションの開発で、セキュリティは「バックエンドの仕事」というイメージの強い領域でした。しかし、アプリケーションの安全性を高めるためには、フロントエンドエンジニアにも、セキュリティの基礎知識や具体的な対策の実践が求められます。
本書では、Webセキュリティの必須知識である「HTTP」「オリジン」などの基礎トピックや、「XSS」「CSRF」といったフロントエンドを狙ったサイバー攻撃の仕組みを、サンプルアプリケーションを舞台にしたハンズオンで学びます。
もちろん、攻撃からユーザーを守る防御の手法もしっかりおさえます。個々の攻撃手法に応じた対策のほか、「認証機能の実装」「JavaScriptライブラリの安全な使い方」など、開発現場で役立つ実践的な脆弱性対策もカバーしているので、自分の開発で取り入れられるセキュリティ向上のヒントが多く見つかるはずです。
■目次
第1章 Webセキュリティ概要
第2章 本書のハンズオンの準備
第3章 HTTP
第4章 オリジンによるWebアプリケーション間のアクセス制限
第5章 XSS
第6章 その他の受動的攻撃(CSRF、クリックジャッキング、オープンリダイレクト)
第7章 認証・認可
第8章 ライブラリを狙ったセキュリティリスク
Appendix 本編では扱わなかったトピックの学習
【著者】
●平野 昌士
サイボウズ株式会社 フロントエンドエンジニア
JSConf JPスタッフや関西Node学園といったコミュニティの運営を行う傍ら、OSS活動にも取り組んでおり、Node.js Core Collaborator(コミッター)に選出されている。WebとJavaScriptが好きでブログや雑誌の記事執筆、イベントでの講演など多数。
【監修】
●はせがわ ようすけ
株式会社セキュアスカイ・テクノロジー 取締役CTO
Internet Explorer、Mozilla FirefoxをはじめWebアプリケーションに関する多数の脆弱性を発見。 Black Hat Japan 2008、韓国POC 2008、2010、OWASP AppSec APAC 2014、CODE BLUE 2016他講演多数。
●後藤つぐみ
株式会社セキュアスカイ・テクノロジー セキュリティエンジニア
脆弱性診断業務に従事する傍らで、同社内の脆弱性診断員に向けた業務マニュアルの作成およびレビューをリードする。
第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ハンズオン
付属データはこちら
内容についてのお問い合わせは、正誤表、追加情報をご確認後に、お送りいただくようお願いいたします。
正誤表、追加情報に掲載されていない書籍内容へのお問い合わせや
その他書籍に関するお問い合わせは、書籍のお問い合わせフォームからお送りください。
本書の書影(表紙画像)をご利用になりたい場合は書影許諾申請フォームから申請をお願いいたします。
書影(表紙画像)以外のご利用については、こちらからお問い合わせください。
刷数は奥付(書籍の最終ページ)に記載されています。
書籍の種類:
書籍の刷数:
本書に誤りまたは不十分な記述がありました。下記のとおり訂正し、お詫び申し上げます。
対象の書籍は正誤表がありません。
発生刷 | ページ数 | 書籍改訂刷 | 電子書籍訂正 | 内容 | 登録日 | ||||||
---|---|---|---|---|---|---|---|---|---|---|---|
1刷 | 005 1.2.1 セキュリティガイドラインから見る脆弱性の種類と傾向 |
3刷 | 済 |
|
2023.07.04 | ||||||
1刷 | 008 第1章【参考資料】 1行目、8行目 |
3刷 | 済 |
|
2023.07.04 | ||||||
1刷 | 047,048 ●通信データの暗号化 |
2刷 | 済 |
|
2023.05.18 | ||||||
1刷 | 049 ●通信データの改ざんチェック |
2刷 | 済 |
|
2023.05.18 | ||||||
1刷 | 056 第3章【参考資料】 上から10行目、下から2行目 |
3刷 | 済 |
|
2023.07.04 | ||||||
1刷 | 056 第3章【参考資料】 1行目 |
2刷 | 済 |
|
2023.02.13 | ||||||
1刷 | 073 下から2行目 |
未 | 未 |
|
2023.08.02 | ||||||
1刷 | 098 第4章【参考資料】 上から16行目、下から20行目、下から5行目、下から2行目 |
3刷 | 済 |
|
2023.07.04 | ||||||
1刷 | 156 第5章【参考資料】 9行目 |
3刷 | 済 |
|
2023.07.04 | ||||||
1刷 | 192 第6章【参考資料】 7~8行目 |
3刷 | 済 |
|
2023.07.04 | ||||||
1刷 | 251 索引 か行の項目 |
2刷 | 済 |
|
2023.05.18 |