HOME情報セキュリティ情報セキュリティ対策脆弱性対策安全なウェブサイトの作り方

本文を印刷する

情報セキュリティ

安全なウェブサイトの作り方

最終更新日 2020年7月22日
独立行政法人 情報処理推進機構
セキュリティセンター

 「安全なウェブサイトの作り方」は、IPAが届出(*1)を受けた脆弱性関連情報を基に、届出件数の多かった脆弱性や攻撃による影響度が大きい脆弱性を取り上げ、ウェブサイト開発者や運営者が適切なセキュリティを考慮したウェブサイトを作成するための資料です。

「安全なウェブサイトの作り方」改訂第7版の内容

・第1章では、「ウェブアプリケーションのセキュリティ実装」として、SQLインジェクション 、OSコマンド・インジェクション やクロスサイト・スクリプティング 等11種類の脆弱性を取り上げ、それぞれの脆弱性で発生しうる脅威や特に注意が必要なウェブサイトの特徴等を解説し、脆弱性の原因そのものをなくす根本的な解決策、攻撃による影響の低減を期待できる対策を示しています。

・第2章では、「ウェブサイトの安全性向上のための取り組み」として、ウェブサーバの運用に関する対策やウェブサイトにおけるパスワードの取扱いに関する対策等7つの項目を取り上げ、主に運用面からウェブサイト全体の安全性を向上させるための方策を示しています。

・第3章では、「失敗例」として、第1章で取り上げた脆弱性の中から8種類を取り上げ、ウェブアプリケーションに脆弱性を作り込んでしまった際のソースコード、その解説、修正例を示しています。

・巻末には、ウェブアプリケーションのセキュリティ実装の実施状況を確認するためのチェックリストも付属しています。

別冊:「安全なSQLの呼び出し方」 の内容

 第1章では、「安全なウェブサイトの作り方」との関連を記載しています。
 第2章では、SQLインジェクションが発生する原因を説明しています。
 第3章では、アプリケーションがSQL文を組み立てる方法について説明しています。
 第4章では、安全なSQL呼び出しのためには何が必要かを説明しています。
 第5章では、5種類のプログラミング言語とデータベースの組み合わせ(JavaとOracle、PHPとPostgreSQL、PerlとMySQL、JavaとMySQL、ASP.NETとSQL Server)を取り上げ、SQLインジェクション攻撃に対して安全な実装方法を調査し、安全なソースコードの書き方を解説しています。
 付録では、文字コードに関する問題など、特定のデータベースに関する情報をまとめています。

別冊:「ウェブ健康診断仕様」の内容

 「ウェブ健康診断仕様」には、危険度の高い脆弱性など13の診断項目について、検出パターンと、それに対応した脆弱性有無の判定基準が記載されています。
 ただし、「ウェブ健康診断仕様」の診断は、検査パターンを絞り込んだ診断ですので、脆弱性が検出されなかった場合でも、安全宣言には繋がりません。診断の結果を確認した後は、より詳細な診断を受けたり、「安全なウェブサイトの作り方」を参考に対策を実装することなどを推奨します。

資料のダウンロード

「安全なウェブサイトの作り方」

別冊:「安全なSQLの呼び出し方」

日本語版(2010年3月18日公開) 英語版(2010年9月21日公開)

別冊:「ウェブ健康診断仕様」

日本語版(2012年12月26日公開)

ウェブアプリケーションのセキュリティ実装(第1章の抜粋)

 「安全なウェブサイトの作り方」第1章では、ウェブアプリケーションのセキュリティ実装として、下記の脆弱性を取り上げ、発生しうる脅威、注意が必要なサイト、根本的解決および保険的対策を示しています。下記に第1章を脆弱性ごとに抜粋した内容を掲載しています。

 なお、項番については、脆弱性の深刻度や攻撃による影響、届出状況を考慮して割り当てており、対策の優先順位を示すものではありません。優先順位は運営するウェブサイトの状況に合わせてご検討ください。

参考情報

謝辞

本資料の作成には次の方々にもご協力いただきました。

  • NECシステムテクノロジー(株)
  • (独)産業技術総合研究所 情報セキュリティ研究センター
  • 日本電気(株)
  • (株)日立製作所
  • 富士通(株)
  • (株)ラック

脚注

(*1)IPAセキュリティセンターでは、経済産業省の告示に基づき、脆弱性情報に関する届出を受け付けています。「脆弱性関連情報の届出」を参照下さい。
https://www.ipa.go.jp/security/vuln/report/index.html

(*2)ウェブアプリケーションと利用者の間で交わされる通信を検査し、攻撃などの不正な通信を自動的に遮断するソフトウェア、もしくはハードウェアです。

本件に関するお問い合わせ先

IPA セキュリティセンター 熊谷/小林
TEL:03-5978-7527 FAX:03-5978-7552 E-mail:電話番号:03-5978-7501までお問い合わせください。

報道関係からのお問い合わせ先

IPA 戦略企画部 広報戦略グループ
Tel: 03-5978-7503 Fax:03-5978-7510 E-mail:電話番号:03-5978-7501までお問い合わせください。

更新履歴

2020年7月22日
「ウェブアプリケーションのセキュリティ実装(第1章の抜粋)」を掲載。
2017年10月6日
問い合わせ先を修正。
2016年1月27日
誤植を修正。改訂第7版第3刷に更新。
2015年3月26日
誤植を修正。改訂第7版第2刷に更新。
2015年3月16日
更新内容の差分確認のため、改訂第6版を再掲載。
2015年3月12日
改訂第7版を掲載。
2012年12月26日
改訂第6版及び別冊:「ウェブ健康診断仕様」を掲載。
2011年12月26日
改訂第5版の英語版を掲載。
2011年4月6日
改訂第5版を掲載。2012年3月30日第2刷に更新。
2010年9月21日
「安全なSQLの呼び出し方」の英語版「How to Use SQL Calls to Secure Your Web Site」を掲載。
2010年6月7日
改訂第4版の英語版を掲載。
2010年3月18日
別冊:「安全なSQLの呼び出し方」を掲載。
2010年1月20日
改訂第4版を掲載。
2008年6月11日
英語版を掲載。
2008年3月6日
改訂第3版を掲載。8月1日第2刷、2009年6月1日第3刷に更新。
2006年11月1日
改訂第2版を掲載。2007年3月1日第2刷、9月10日第3刷に更新。
2006年1月31日
第1版を掲載。2006年5月11日第2刷に更新。