1.アプリケーションセキュリティに関する過去問
H18SU午後Ⅱ問1の「図5 セキュリティ強化提案書」の穴埋めにチャレンジしよう。
過去問(H18SU午後Ⅱ問1) |
---|
セキュリティ強化要求仕様書(第2版)に基づき,次のとおりご提案します。 第1ステップ 1.入力検証及び不正データ入力時の無効化 クロスサイトスクリプティング対策として次の強化を行う。 (1) Webページに出力するすべての要素に対してエスケープ処理を施す。 (2) <script>・・・</script>要素の内容を含むWebページを動的に生成しない。 2.パスワード及びセッション情報の不正利用の防止 セッション管理対策として,次の強化を行う。 (1) セッション管理情報には c を使用し,クッキーに格納する場合は有効期限を設ける。 (2) HTTPS通信で利用するクッキーには,secure属性を加える。 3.セキュリティ強化要求仕様書(第2版)に含まれていない重要事項 3.1. ドメイン乗取りの防止 ドメイン名を管理する d サーバが,正しく登録されているか,定期的に調査する。 3.2. ファイル不正アクセスの防止 (1) 外部からのパラメタに,Webサーバ内のファイル名を直接指定させない。 (2) 外部からの入力値でファイル名を指定する場合は, e ディレクトリを指定し,かつ,ファイル名にディレクトリ名が含まれないようにする。 第2ステップ (以下,省略) |
↓
↓
↓
↓
↓
d以外は選択式なので、答えをズバリ書くのは難しかったかと思う。
答えは以下。
c 疑似乱数
d ネーム 又は DNS
e 固定
2.Webサイトにおける一般的な情報セキュリティ問題と対策
アプリケーションセキュリティ対策の中心になるのがWebアプリケーションのセキュリティ対策である。なぜなら、社外に公開するアプリケーションはWebベースのものが多いからだ。
一方、社内にはWebアプリケーション以外にもクライアントサーバ型のアプリケーションが多く存在しますが、社内運用であれば社外に公開しないため、セキュリティ面のリスクは低減されます。
H20SU午後Ⅰ問4にて、「Webサイトにおける一般的な情報セキュリティ問題と対策」が掲載されている。
過去問(H20SU午後Ⅰ問4) |
---|
(H20SU午後Ⅰ問4より引用) |
↓
↓
↓
↓
↓
a、b、cの穴埋めにもチャレンジしてみよう。
正解は以下です。
a ハードニング
b エスケープ処理 又は サニタイジング
c ファイル名を直接指定
少し補足します。aのハードニング(hardening)とは、hard(硬い)という言葉の通り、サーバを硬く(要塞化)することです。bのエスケープ処理に関しては、以下を確認ください。
SQLインジェクション サニタイジング(エスケープ)処理 - 情報処理安全確保支援士 - SE娘の剣 -
3.Webサーバに対する脅威
情報処理安全確保支援士試験の過去問(H23春SC午後Ⅱ問2)の「Web検査の主な検査項目と内容」を紹介する。Web検査の項目はつまり、一般的なWebへの脅威そのものだ。
「検査する脆弱性の内容」から、空欄の「検査項目」を答えてほしい。
検査項目 | 検査する脆弱性の内容 |
---|---|
オブジェクトの直接参照 | 存在を明示していないコンテンツやアプリケーションのデータファイルが,ディレクトリやファイル名,パックアップファイルなどを指定してアクセスされる脆弱性 |
[ a ] | HTML出力文字列のエスケープ処理が不適切な場合,攻撃者の作成した不正なリンクによってWebサイトを閲覧した利用者のブラウザ上でスクリプトが実行される脆弱性 |
[ b ] | 利用者のブラウザによって,利用者の意図しないリクエストがWebサーバに送信され,ログイン中の利用者にだけ許可されたWebサイトの機能が勝手に実行される脆弱性 |
HTTPヘッダインジェクション | 外部から渡されたパラメタをレスポンスのHTTPヘッダに反映する場合,不正なヘッダを生成されたり,レスポンスボディに不正な文字列を挿入されたりする脆弱性 |
[ c ] | 入力フォームのパラメタなどへの不正な文字列挿入によって, SQL文やOSのコマンドが不正に実行される脆弱性 |
不正メール送信 | パラメタ文字列をメールヘッダに反映して電子メールを送信する場合,スパムメール送信などに利用される脆弱性 |
[ d ] | パス文字列の処理が不適切な場合,攻撃者の不正な入力によって,管理者がアクセスを想定していないファイルにアクセスされる脆弱性 |
不適切なセッション管理 | クッキーなどを利用したセッション管理が不適切な場合,なりすましによる不正なアクセスが発生する脆弱性 |
↓
↓
↓
↓
↓
正解は以下である。
a クロスサイトスクリプティング
b クロスサイトリクエストフォージェリ
c SQLインジェクション・OSコマンドインジェクション
d パス(ディレクトリ)トラバーサル