第1章 総論
総論と対策の分類

Webアプリケーションに起こりうる問題

Webアプリケーションプログラムは、他のソフトウェアに比べて次のような特性をもつ。

これらの特性から、Webアプリケーションにはいくつかの情報セキュリティ問題が生じがちである。それらは概ね次のように分類できる。

(1) 暴露問題

Webサーバは予定外のファイルを開示するおそれがある。また、あるWebコンテンツに埋め込まれたURLによって別のWebコンテンツを呼び出す際、そこに置かれたパラメータが重要な情報を暴露していしたり、干渉を受けるおそれがある。

暴露問題
図1-1 : 暴露問題

(2) エコーバック問題

Webアプリケーションが入力パラメータに何も対策を施さずにHTMLページやHTTPレスポンスヘッダへエコーバック出力を行うロジックをもつことは、「スクリプト注入」や「HTTPレスポンスによるキャッシュ偽造」の問題を起こす。

エコーバック問題
図1-2 : エコーバック問題

(3) 入力問題

Webアプリケーションが取り込む入力パラメータには「SQL注入」「コマンド注入」をはじめとする攻撃を意図した悪意ある内容が含まれているおそれがある。

入力問題
図1-3 : 入力問題

(4) セッション問題

Webアプリケーションがセッションを維持する仕組みは必ずしも堅固なものではなく、他者からの干渉やセッションの乗っ取りのおそれがある。

セッション問題
図1-4 : セッション問題

(5) アクセス制御問題

Webアプリケーションを構成するコンテンツのひとつひとつはそれぞれURLで呼び出される形式をとるものであり、実装方法によってはアクセス制御が迂回されるおそれがある。

アクセス制御問題
図1-5 : アクセス制御問題

(6) 各種の問題

上記以外にもメールの第三者中継や偽ページの問題がある。

Webアプリケーション編の記事の構成

ソフトウェア開発工程の流れおよび上記カテゴリをふまえ、Webアプリケーション編の記事の構成は次のようになっている。