pulpul 日本の試験

システム監査技術者 概念書 · セキュリティ

セキュリティ実装技術

要点と定義

セキュリティ実装技術では、脅威がどこに作用し、対策がどこで働くかを結び付けて考えます。シラバスの「セキュリティ実装技術」は、システムの開発・運用、ネットワーク、データベース、アプリケーションに実装する対策の仕組みや効果を扱います。

クロスサイトスクリプティング(XSS)は、Webページに混入した文字列が閲覧者のブラウザでスクリプトとして解釈・実行される問題です。出力先の文脈に応じて入力値を無害化し、HTML本文なら「<」を「&lt;」のように変換して、タグとして解釈されないようにします。過去の出題で扱った補足として、XSS対策を判断するときは、入力の大きさを制限する対策やOSのパッチ適用と、ページ出力時の処理を区別します。前者だけでは、出力された文字列がスクリプトとして実行される問題を直接防げません。

サイドチャネル攻撃は、暗号アルゴリズムの数式そのものではなく、装置の処理時間、消費電力、電磁波など、処理に伴って外部に現れる情報から秘密情報を推定しようとする攻撃です。過去の出題で扱った補足として、観測対象が装置から漏れる物理的な変化なら、平文と暗号文の関係を調べる解読とは区別できます。実務では、暗号機能の実装と、その動作時に外へ現れる情報の両方を確認する観点になります。

SAMLは、異なるセキュリティドメイン間で認証情報や属性情報などを交換するための仕様です。過去の出題で扱った補足として、サービスを検索可能にする仕様や、電子メールを保護する仕様、署名用の鍵を管理する仕様とは役割が異なります。システム間連携を確認するときは、何の情報をどのドメイン間で渡すのかに注目します。

リスクベース認証は、アクセス環境などから認証要求のリスクを判断し、必要に応じて追加認証を求める方式です。たとえば、普段と異なる環境からのアクセス時に追加の本人確認を求めます。過去の出題で扱った補足として、どの環境でも常に同じ手順を使う方式や、常に同じ二つの認証方式を併用する方式とは区別されます。

サンドボックスは、疑わしいプログラムを隔離された領域で動かし、ほかの領域への影響を抑える仕組みです。過去の出題で扱った補足として、ログを集めて分析する機能、入力値を無害化する処理、Webサーバへの代理応答とは別の対策です。運用では、隔離領域から共有データや外部サービスにどこまでアクセスできるかも確認します。

WAFは、Webアプリケーションに向けられた通信を検査し、攻撃を検知・阻止する仕組みです。過去の出題で扱った補足として、対象がWebアプリケーションへの攻撃か、端末内の通信、サーバOSへのログイン、ファイルのマルウェア感染かを区別すると、対策の役割を整理できます。

適用条件と例

対策を選ぶときは、攻撃が成立する場所と、対策が作用する場所を対応させます。たとえば、利用者が投稿した文章をページに表示する機能では、保存前の入力確認だけでなく、表示先の文脈に合った出力処理を確認します。HTML本文と属性値などでは解釈のされ方が異なるため、単に文字を置換すれば常に安全だとは考えません。

監査で暗号装置を確認する場面では、アルゴリズムの選定記録に加え、実装が処理時間や消費電力などから秘密情報を推定されにくいかという観点も持てます。SAMLを使う連携では、送受信する情報とドメイン境界を確認します。リスクベース認証では、どのアクセス状況を高リスクと判断し、どの追加認証につなげるかを確認します。

この節の続き

ここまでが冒頭部分です。ログインすると、無料でも1日2節まで全文をお読みいただけます。

アプリでこの節を読む