試験公開中

このエントリーをはてなブックマークに追加

Pythonで学ぶ Webアプリのセキュアコーディング 脆弱性の見つけ方・直し方が身につく実践入門

インプレス

3,520円 (3,200円+税)

PythonでWebアプリを開発する若手エンジニアに向けて、脆弱性の見つけ方・直し方を手を動かして学べる実践入門書。SQLインジェクションやXSSなど代表的な攻撃手法と対策を、Python製「やられアプリ」を使って体験的に習得できます。セキュリティの基礎から実務で役立つスキルまで。

関連サイト

本書の関連ページが用意されています。

内容紹介

「セキュアコーディング、何から始めればいい?」

PythonでWebアプリを開発する若手エンジニアに向けて、脆弱性の見つけ方と直し方を実践的に学べる入門書が登場!

本書は、セキュリティエンジニアが不足するいま、現場で求められる「安全なWebアプリの作り方」を、Pythonを使ったハンズオン形式で丁寧に解説。脆弱性を「知る」だけでなく、自分の手で「再現し」「修正する」ことで、セキュリティ対策の本質が身につきます。

紹介する脆弱性は、SQLインジェクション、XSS、CSRF、パストラバーサル、XXE、セッション管理など、現場で頻出するものを網羅。さらに「やられアプリ(DSCLab)」を使って、攻撃例と防御策を体験できます。

セキュリティを「なんとなく」から「自信を持って語れる」へ──本書は、そんな第一歩を踏み出すあなたを支える「現場で使える」一冊です。

◆こんな方におすすめ

・PythonでWebアプリを作っているが、セキュリティ対策に不安がある
・エンジニア1年目~3年目で、体系的に脆弱性と対策を学びたい
・セキュリティの実務スキルを「手を動かして」身につけたい

◆本書で学べる主な脆弱性

SQLインジェクション/XSS(クロスサイトスクリプティング)/CSRF/パストラバーサル/XXE(XML外部参照)/認証と認可/セッション管理 ほか

書誌情報

  • 著者: 森 祥平
  • 発行日: (紙書籍版発行日: 2025-11-13)
  • 最終更新日: 2025-11-13
  • バージョン: 1.0.0
  • ページ数: 528ページ(PDF版換算)
  • 対応フォーマット: PDF, EPUB
  • 出版社: インプレス

対象読者

著者について

森 祥平

東京都生まれ。電気通信大学情報工学科を卒業後、株式会社インテック(現TIS)に入社。Javaを用いた大規模ECサイトの開発に従事。その後、外資系企業にキャリアを移し、半導体企業では組み込みソフトウェア開発、マルチメディア企業ではデスクトップアプリ販売、Googleではモバイルアプリの監査を担当。2023年よりContrast Security Japan合同会社にてソリューションアーキテクトとして、Webアプリケーションの脆弱性検出ツールIAST(Interactive Application Security Testing)をはじめとする各種ソリューションの普及に努める。2025年より行動的生体AI認証ソリューションを取り扱うBioCatch社において、ソリューションエンジニアとして技術支援を行っている。冬場は岩原及びニセコスキー場でスキー・スノーボードインストラクターを兼務。ビジネス・ブレークスルー大学大学院 MBA首席修了。豪州BOND University MBA(履修済み全コア科目首席)修了

目次

はじめに

サンプルファイル&本書の前提等

目次

Chapter 1 Webアプリケーションの脆弱性の基礎

  • Section 1-1 Webアプリケーションの脆弱性とは
  • Section 1-2 ライブラリの脆弱性
  • column 脆弱性はほったらかしに?

Chapter 2 Pythonサンプル(やられ)アプリのセットアップ

  • Section 2-1 セットアップを始める前に
  • Section 2-2 GitHubよりサンプルアプリをダウンロード
  • Section 2-3 Pythonのインストール
  • Section 2-4 やられアプリ(DSCLab)のセットアップ
  • Section 2-5 Pythonを書くためのエディタのセットアップ
  • column IT人材不足の昨今、Pythonでキャリアアップを目指そう

Chapter 3 Webアプリケーションの基礎

  • Section 3-1 Webアプリケーションとは
  • Section 3-2 フロントエンドとバックエンド
  • Section 3-3 HTTPリクエストとHTTPレスポンス
  • Section 3-4 入力値検証とエスケープ処理
  • column 脆弱性対策の重要性とDevSecOpsの概念

Chapter 4 SQLインジェクション

  • Section 4-1 Webアプリケーションの脆弱性全体像
  • Section 4-2 SQLインジェクション
  • Section 4-3 NoSQLインジェクション
  • Section 4-4 セカンドオーダーSQLインジェクション
  • column 手戻りをゼロにする:シフトスマートな開発パイプライン

Chapter 5 クロスサイトスクリプティング(XSS)

  • Section 5-1 能動的攻撃と受動的攻撃
  • Section 5-2 クッキーとセッション
  • Section 5-3 クロスサイトスクリプティングの概要と反射型XSS
  • Section 5-4 XSS攻撃の種類:設置型XSSとDOM Based XSS
  • column OWASP TOP 10 ~セキュリティの羅針盤~

Chapter 6 その他のインジェクション

  • Section 6-1 OS コマンドインジェクション
  • Section 6-2 HTTPヘッダインジェクション
  • Section 6-3 メールヘッダインジェクション
  • Section 6-4 コードインジェクション
  • column WAF ~Webアプリケーションの守護神~

Chapter 7 クロスサイトリクエストフォージェリ(CSRF)

  • Section 7-1 クロスサイトリクエストフォージェリ(CSRF)
  • Section 7-2 クリックジャッキング
  • Section 7-3 同一オリジンポリシー(SOP)
  • Section 7-4 Cross-Origin Resource Sharing(CORS)
  • column WAFをすり抜けるゼロデイ攻撃:Log4jとは

Chapter 8 パストラバーサルとXXE、認証・認可

  • 8-1 パストラバーサル
  • 8-2 XML外部参照体(XXE)
  • 8-3 認証と認可
  • column デバッグとペネトレーションテスト

Chapter 9 ライブラリの脆弱性管理

  • 9-1 SCAツールによるライブラリ脆弱性管理の基礎
  • 9-2 SCAツールが参照する脆弱性情報データベース
  • 9-3 SBOM(ソフトウェア部品表)
  • column 実は半分以上は使用されていないOSSライブラリ

Chapter 10 代表的なセキュリティテストツール

  • 10-1 SASTとDASTと次世代IAST
  • 10-2 IAST/SCAツールの活用事例
  • column RASPを用いた攻撃ブロックの仕組み

付録 A Appendix A Dockerを使用したDSCLabのセットアップ

付録 B Appendix B DSCLabセットアップコマンド早見表

おわりに

Home 書籍一覧 Pythonで学ぶ Webアプリのセキュアコーディング 脆弱性の見つけ方・直し方が身につく実践入門 ▲ ページトップへ戻る