2016.07.02(土)

自著を語る「体系的に学ぶ 安全なWebアプリケーションの作り方 脆弱性が生まれる原理と対策の実践」徳丸 浩(ブックレビュー)

調査・レポート・白書 ブックレビュー

wsabook1「体系的に学ぶ 安全なWebアプリケーションの作り方 脆弱性が生まれる原理と対策の実践」徳丸 浩 著 2011年3月3日 ソフトバンククリエイティブ刊


本書は、Webアプリケーションの開発者のためのセキュリティ解説書である。

Webアプリケーションのセキュリティ問題(脆弱性)は、開発の工程で混入するバグの一種である。開発者がセキュリティに無知なままに開発したアプリケーションには脆弱性が混入する可能性が高い。したがって、アプリケーション開発者にとって実用的な解説書となることを目指して本書を執筆した。

具体的には、以下をゴールとした。

・開発者が、脆弱性の及ぼす影響を切実で身近なものとして把握する
・開発者が、脆弱性が発生する原理を理解する
・開発者が、脆弱性の対処を実践できるようにする

これらゴールを達成するために、以下の工夫を施した。

・脆弱性のサンプルとして、被害の大きさを理解でき、かつ十分シンプルなものを記載した

・攻撃方法の紹介として、情報漏洩やデータ改ざんの手口を具体的に示した

・脆弱性サンプルを手軽に動かせるように仮想マシンイメージを提供し、実行に必要なソフトウェアも含めてCD-ROMとして添付した

・読者が脆弱性発生の原理を理解できるよう、HTTPやセッション管理、同一生成元ポリシーなどの前提知識を含めて解説した

・脆弱性の対処方法については、原理だけでなく、PHP等で実現可能な方法をサンプルと共に示した

・脆弱性の説明を逆引き辞典風に構成した(「メール送信の問題」などアプリケーションの機能毎に参照できるようにした)

本書の構成は以下の通りである。

まず、最初の3つの章は、本書全体の導入として、脆弱性とはなにか、脆弱性サンプルの動かし方、基本的な前提知識について説明している。第3章の後半では、ブラウザのサンドボックス機能および同一生成元ポリシーを説明して、クロスサイト・スクリプティングなど受動的攻撃の導入としている。

第4章は本書の中心となる章であり、脆弱性の種類毎に、原理、影響、対処方法を説明している。ただし、前述したように、節の組み立てとしてはアプリケーションの機能毎に並んでおり、リファレンスとして活用しやすいように工夫した。

第5章はセキュリティを確保するために必要な認証・アカウント管理・認可・ログ出力の各機能についての説明である。最近ネット上でも話題に上ることの多いパスワードの保存方法についても、攻撃方法と対処方法について十分に解説している。

第6章以降は、Webアプリケーションセキュリティの様々なトピックスとして、文字コードの問題、携帯電話向けWebサイトに固有な問題、OSやWebサーバーを含めたサイト全体の安全性確保の方法、開発マネジメントにおけるセキュリティ施策などを解説している。開発マネジメントについては、発注者にとっても有益なガイドとなるようにした。

本書は、筆者の独りよがりとならないようインターネット上でレビュアーを公募し、16名のレビュアーとメーリングリストで議論を行いながら執筆した。レビュアーによる提案は、字句の誤り指摘だけではなく、説明不足や論理の飛躍に対する指摘、前提知識の解説の追加提案など、本書の構成に影響するものも含まれる。その結果、説明順序の入れ替え、図表の差し替え、節の追加など、大きな変更が加わった。ここで、レビュアーのやりとりの一例を紹介しよう。

ディレクトリリスティング(ファイルの一覧を表示する機能)を抑止するための保険的対策として、初稿では、各ディレクトリにダミーのindex.htmlを入れておくという方法を紹介していた。この方法はベテランのセキュリティ屋にはよく知られたTipsだが、レビュアーの太田良典氏から異論が出た。全てのディレクトリにダミーのファイルをおくことで構成管理のコストが増加するなど、さまざまな副作用が発生するというのだ。検討の結果、本書で紹介している他の対策(コストはあまり増えない)に追加してダミーのindex.htmlを配置することのメリットは薄いと判断して、この記述は削除した。

この例からも分かるように、本書は、単に安全なアプリケーションが開発できることにとどまらず、開発生産性などにも配慮した実用性の高い脆弱性対処方法の紹介を目指している。レビュアーの方々の中には、Web制作やアプリケーション開発の第一線で活躍されている方も含まれているので、上記のような議論を経て、この目標はかなり達成されたものと感じている。あらためて、レビュアー諸氏に感謝する。

このように本書は、Webアプリケーション開発者向けの本格的なセキュリティ解説書として他に例を見ないという点では極めてユニークであるが、一方で極めて正攻法の解説書でもある。Webアプリケーションの開発や発注に携わる方々すべてに読んでいただきたい。

HASHコンサルティング株式会社 代表取締役 徳丸 浩)


・出版社の解説ページ
・著書のサポートページ
・Amazonの販売ページ


徳丸 浩(とくまる ひろし)
HASHコンサルティング株式会社代表、京セラコミュニケーションシステム株式会社技術顧問、独立行政法人情報処理推進機構(IPA)非常勤研究員。技術士(情報工学部門)

1985年、京セラ株式会社に入社後、ソフトウェアの開発、企画に従事。1999年、携帯電話向け認証課金基盤の方式設計を担当したことをきっかけに Webアプリケーションのセキュリティに興味を持つ。2004年、同分野を事業化。2008年、独立し、Webアプリケーションセキュリティを専門分野とするHASHコンサルティング株式会社を設立。脆弱性診断やコンサルティング業務のかたわら、ブログや勉強会などを通じてセキュリティの啓蒙活動をおこなっている。


その他の著書
「Webアプリケーションのセキュリティ完全対策―不正アクセスや情報漏洩を防ぐ」
徳丸 浩、田畑 拓、三好 雅貴、園田 健太郎 著 2004年11月 日経BP社刊




※原稿募集
「自著を語る」のコーナーでは著者による御寄稿をお待ちしております。情報セキュリティ、インターネット犯罪等に関わる書籍の著者の方は問い合わせフォームから「自著を語る寄稿希望」とお書き添えのうえお気軽にご連絡ください。
《ScanNetSecurity》

特集

調査・レポート・白書 アクセスランキング

  1. 複数の標的型攻撃の相関分析により、攻撃手口や攻撃者の目的に迫る(IPA)

    複数の標的型攻撃の相関分析により、攻撃手口や攻撃者の目的に迫る(IPA)

  2. Androidデバイスを狙うランサムウェアの攻撃が急増、遭遇者は1年で約4倍(カスペルスキー)

    Androidデバイスを狙うランサムウェアの攻撃が急増、遭遇者は1年で約4倍(カスペルスキー)

  3. CSIRT構築および運用の実態調査、構築時に定めるべき事項が明らかに(JPCERT/CC)

    CSIRT構築および運用の実態調査、構築時に定めるべき事項が明らかに(JPCERT/CC)

  4. トップページのEV SSL対応は10社中3社--主要電力会社サイトのSSL対応状況(ビットスター)

  5. 公共・製造・金融… 産業別サイバー攻撃ベスト 3 (ベライゾンジャパン)

  6. 外部にさらされているインフラは東京が突出~SHODANで見る5都府県(トレンドマイクロ)

  7. システムログ管理の実態を調査、4種類のタイプと実装レベルも解説(IPA)

  8. 大規模DDoS攻撃が増加、ピーク時に289Gbpsを記録した例も--四半期レポート(アカマイ)

  9. 情報セキュリティ対策の有効性を統計学的に分析(IPA)

  10. 2015年第4四半期のクレジットカード不正使用被害、被害額は増加傾向(日本クレジット協会)

アクセスランキングをもっと見る

★★ ( FB ログイン可) 会員限定記事、週 1 回のメルマガ、人気ニュースランキング、特集一覧をお届け…無料会員登録はアドレスのみで所要 1 分程度 ★★
★★ ( FB ログイン可) 会員限定記事、週 1 回のメルマガ、人気ニュースランキング、特集一覧をお届け…無料会員登録はアドレスのみで所要 1 分程度 ★★

登録すれば、記事一覧、人気記事ランキング、BASIC 会員限定記事をすべて閲覧できます。毎週月曜朝には一週間のまとめメルマガをお届けします(BASIC 登録後 PREMIUM にアップグレードすれば全ての限定コンテンツにフルアクセスできます)。

×