セキスペ過去問の要点まとめ
情報処理安全確保支援士(登録セキスペ)の過去問を復習しやすいよう、要点ポイントを一問一答形式でまとめます。セキスペの午後問題は過去の問題から流用されることも多いので重要なポイントを押さえていきましょう。
古い年代から解いていくと、セキュリティトレンドで、かつ、正答率が低かったトピックは翌年以降も出題されている傾向が読み取れます。
セキスペ直前対策・総仕上げ!
直近5年以内で情報処理安全確保支援士(セキスペ)の午後過去問でよく問われている頻出内容をジャンルごとにコンパクトにまとめたコースです!直前対策、復習、総仕上げにおすすめです!
セキスペ午後の解説動画!
私自身のセキスペ過去問解説の動画コースです。令和5年春と秋の過去問を解説しています。
おかげさまで星4.6(星5が最高)の最高評価をいただけております!!
予想問題
WPA3に関する内容がまだ出てない(午前2では出てる)。細かいので超余裕があれば。
無線が出るなら、EAP-TLS、TLSクライアント認証、DNS、HTTP/HTTPS、DHCPなどを押さえておきたい。
Wi-Fiネットワークの通信を傍受・改ざんできてしまうWPA2プロトコルに存在する脆弱性を悪用する攻撃手法
KRACKs(Key Reinstallation Attacks)
WPA2で使用される主な暗号化方式を2つ
- AES
- CCMP
WPA3で使用される主な暗号化方式を2つ
- AES
- CNSA
WPA3の暗号化方式は主にAES(Advanced Encryption Standard)を基本としていますが、CNSA(Commercial National Security Algorithm Suite)もオプションとしてサポートされています。CNSAは、AES-256を含むより強力な暗号化アルゴリズムを提供し、政府や軍事機関など、より高度なセキュリティが求められる場合に使用されます。
WPA2の鍵交換プロセスは〇〇で、WPA3の鍵交換プロセスは〇〇です。
4-way ハンドシェイク、SAE
4-way ハンドシェイクとは、WPA2(Wi-Fi Protected Access 2)で用いられる鍵交換プロセスで、AP(Access Point)とクライアントが安全な通信のための暗号キー(PTK)を生成する手続きです。
SAE(Simultaneous Authentication of Equals)とは、WPA3で採用されている鍵交換プロセスで、Diffie-Hellmanキー交換を基にした認証方式を用い、総当たり攻撃や辞書攻撃に対する耐性を持つ手法です。楕円曲線暗号の採用により、SAEハンドシェイクでは安全な鍵交換と認証を実現します。
WPA2ではオプション機能だったがWPA3では必須となった、Wi-Fiネットワークにおいて管理フレームを保護するためのセキュリティ機能
PMF(Protected Management Frames)
Wi-Fiが発信する代表的なフレームは管理フレーム、制御フレーム、データフレームの3種類があります。WEPやWPA、WPA2で暗号化されていたのはデータフレームのみで、残り2つのフレームは平文でやり取りされているのが脆弱となります。
管理フレームとは、Wi-Fiネットワークにおいてデバイス間の接続や切断、認証などの管理操作を行うためのデータフレームです。Beaconフレーム、Authenticationフレーム、Deauthenticationフレームなどが該当します。
制御フレームとは、データの送受信を制御するためのフレームです。ACK(Acknowledgment)フレーム、RTS(Request to Send)フレーム、CTS(Clear to Send)フレームなどがあります。
データフレームとは、実際に送受信されるデータを含むフレームです。
Wi-Fi Allianceによって開発された、オープンなWi-Fiネットワーク(パスワード不要)でも安全な接続を提供するためのセキュリティプロトコル
Enhanced Open
Enhanced Openは、〇〇という技術を基にしています。この技術は、クライアントとアクセスポイントが接続する際に、一時的な暗号化キーを自動的に生成して通信を暗号化する仕組みです。
OWE(Opportunistic Wireless Encryption)
OWEでも利用されている公開鍵暗号の一種であり、通信の主体同士が共通の秘密鍵を安全に生成するためのキー交換アルゴリズム
Diffie-Hellman
令和5年秋(2023年秋)
午後1
攻撃者が悪意のあるスクリプトを含むリンクをユーザーに送信し、ユーザーがそのリンクをクリックするとサーバーから送信される応答に含まれるスクリプトがユーザーのブラウザで実行されるXSS攻撃
攻撃者が悪意のあるスクリプトをウェブアプリケーションのデータベースや他の格納場所に保存し、ユーザーがそのページを閲覧するとスクリプトがユーザーのブラウザで実行されるXSS攻撃
攻撃者が悪意のあるスクリプトを含むリンクをユーザーに送信し、ユーザーがそのリンクをクリックするとスクリプトがサーバーからの応答ではなくブラウザのDOMを通じて挿入されユーザーのブラウザで実行されるXSS攻撃
ブラウザ上に出力する前に、HTML、SQL、JavaScriptなどのコードで特別な意味を持つ文字を無害な文字列に置き換える処理
文字数制限の回避で使用されるXSSの攻撃手法
文字列を複数の部分に分割し、連結することで、フィルターを回避する。
本問ではHTMLとJavaScriptを組み合わせて、HTMLでコメントアウトし一つのスクリプトになるような投稿が複数回にわけて行われた。
JavaScriptからサーバーに非同期的にデータ要求を送信し、サーバーからの応答を受け取るためのオブジェクト
XMLHttpRequestオブジェクト
XMLHttpRequestオブジェクトの特徴は以下の通り
- ページ全体を更新せずに、ページの一部分のみを更新できる
- サーバーとの非同期通信が可能
- XMLデータだけでなく、任意のテキストデータを送受信できる
- HTTPリクエストを生成し、サーバへのリクエストを制御できる
- サーバーの応答を処理するイベントハンドラを設定可能
ウェブサーバーからデータを要求または取得するために使用されるHTTPリクエスト。ブラウザのアドレスバーにパラメータが表示され、URLのクエリ文字列に含まれる。
GETリクエスト
ウェブサーバーへデータを送信または更新するために使用されるHTTPリクエスト。パラメータはリクエストの本文に含まれ、ブラウザのアドレスバーには表示されない。
POSTリクエスト
ウェブサーバーとウェブブラウザの間でセッションを一意に識別するための識別子
セッションID
不正に他者のセッションIDを取得し、そのIDを使って正規のユーザーになりすますサイバー攻撃の一種
セッションハイジャック
異なるオリジン間でリソースへのアクセスを制限することで、情報の不正な読み書きを防ぐブラウザのセキュリティポリシー
Same-Origin Policy(同一生成元ポリシー)
オリジンを構成する3つの要素
FQDN、スキーム、ポート番号
〇〇属性を持つCookieはJavaScriptからのアクセスを防ぐことができるのでXSS対策に有効である。
HttpOnly
午後2
攻撃者が正規のアクセスポイントを装い、偽のアクセスポイントを設置・SSIDを偽装することで、ユーザーを騙して接続させ、通信内容を傍受したり、ユーザーを偽のWebサイトに誘導したりする中間者攻撃
Evil Twin攻撃
SSL/TLSサーバ証明書に含まれる、サーバのホスト名やIPアドレスの情報を記載するフィールド
SAN(Subject Alternative Name)、または、CN(Common Name)
CNフィールドにはない、SANフィールドの利点
1つの証明書で複数のホスト名やIPアドレスを記載できる点
証明書の検証ではSANフィールドを参照し、なければCNフィールドを参照する。SANの利用が推奨されており、CNはレガシーな扱いとなっている。
サーバ証明書の検証方法
- ブラウザが、アクセス先のホスト名と証明書のSAN・CN情報を照合する
- 一致する場合は、その証明書を信頼する。一致しない場合は、ブラウザに警告が表示される。
アクセス先のドメイン名(ホスト名・FQDN)がサーバ証明書で記載されているサーバのドメイン名(ホスト名・FQDN)と一緒であるかを検証するのがポイント
サーバ証明書のエラーが表示される場合はどのような場合か?
- サーバ証明書が信頼された認証局から発行されたサーバ証明書ではない場合
- サーバ証明書に記載されているサーバ名と接続先のサーバ名が異なる場合
- サーバ証明書が失効している場合
- サーバ証明書の有効期限が切れている場合
ウェブサイトがブラウザに対して、常にHTTPS通信を強制するセキュリティ機能
HSTS(HTTP Strict Transport Security)
HSTSはウェブサーバーが発行する〇〇ヘッダー(Strict-Transport-Security)を通じて設定され、有効期間中ブラウザがそのサイトへのアクセスをHTTPSで行うように要求します。
レスポンス
HSTSの大きな弱点の1つが、初回の通信は〇〇で行われることです。初回の〇〇通信時にHSTSヘッダーを受け取り、それ以降HTTPSでアクセスするようになります。
HTTP
HSTSの初回通信からHTTPSで通信を行うようにする技術
HSTSプリロード
主要ブラウザ内に組み込まれたHSTSプリロードリストに登録することで初回からHTTPSで通信を行うことが可能。
特定のMACアドレスを持つデバイスのみにネットワーク接続を許可する技術
MACアドレスフィルタリング
MACアドレスは、ネットワーク上のデバイスを一意に識別するための固有の識別番号です。
デバイスの〇〇にそれぞれ固有のMACアドレスが割り当てられています。
ネットワークインターフェースカード(NIC)
認証サーバがEAPで使うUDP上のプロトコル
RADIUS
RADIUSはネットワークアクセス時の認証・認可・アカウンティング(AAA)を集中管理するためのプロトコルです。
IEEE 802.1X認証フレームワークの1つで、クライアントとサーバーの双方が証明書を用いて相互に認証を行う方式
EAP-TLS
EAP-TLSでは証明書ベースの相互認証と暗号化通信が行われますが、その制御フローの中でRADIUSプロトコルが使われます。特に無線LAN認証で利用されます。
デジタル証明書(公開鍵証明書)の発行を認証局(CA)に要求するための署名リクエスト
CSR(Certificate Signing Request)
CSRには申請者の公開鍵や〇〇という証明書の申請者や対象のサーバーを一意に識別するための情報が含まれています。
DN(Distinguished Name)
Distinguished Nameには、国名、組織名、ドメイン名などの付加情報が設定されます。
コンピューターのマザーボードに物理的に埋め込まれているセキュリティチップ。秘密鍵の安全な生成と保管、暗号化と復号化のサポート、デジタル署名の生成と検証、システムの完全性検証を行うことが可能
TPM(Trusted Platform Module)
TPMで〇〇鍵を保管・保護することで外部に持ち出すことを防げる。
秘密
復号化やデジタル署名の生成などで利用する秘密鍵をTPMで保管・保護することで耐タンパ性を高めることができます。不正な物理的アクセスや改ざんへの耐性があることを耐タンパ性と呼びます。
クライアント証明書を従業員自身が業務PCに格納する機会を与えることで起こりうるセキュリティリスク
クライアント証明書を盗める
本問では盗難を防ぐために、ディレクトリサーバの機能で業務PCにクライアント証明書を格納しています。
プライベートIPアドレスとグローバルIPアドレスを変換する技術
NAT(Network Address Translation)
プライベートIPアドレスとポート番号の組み合わせを、グローバルIPアドレスとポート番号に変換する技術
NAPT(Network Address Port Translation)
インターネット上のドメイン名の名前解決を行い、DNSクエリの結果を一時的に保存するDNSサーバー
DNSキャッシュサーバ
ネットワーク上のデバイスにIPアドレスを自動的に割り当てるプロトコル
DHCP(Dynamic Host Configuration Protocol)
DHCPでIPアドレス以外で配布できる情報
- サブネットマスク
- デフォルトゲートウェイ
- DNSサーバのIPアドレス
- リース時間
- プロキシサーバのIPアドレス など
午後3
コンテナ内からホストOSを不正アクセスし、権限の昇格や他のコンテナへの侵害を狙う攻撃
コンテナエスケープ
コンテナエスケープに関する攻撃内容が本問で問われていました。
1つのオペレーティングシステム(OS)上で、複数の隔離された実行環境を作り出すための仮想化技術で、アプリケーションの実行環境をパッケージ化する技術
コンテナ
ソフトウェア開発において、ソースコードやドキュメントなどの開発資源を集約し、バージョン管理を行うためのストレージ
リポジトリ
仮想マシンとコンテナの違い
仮想マシンがハードウェア仮想化によりホストOSの上に完全な仮想化されたゲストOSを構築するのに対し、コンテナはホストOSのカーネルを共有し、プロセスレベルで実行環境を仮想化する点
ホストOSの上にゲストOSを立てるのが仮想マシン、ホストOSを共有するのがコンテナ
TOTP(Time-Based One-Time Password)とは、〇〇と現在の時刻を基に、短い時間間隔ごとに自動的に更新される一回限りのパスワードを生成する仕組み
シェアードシークレット(秘密鍵)
デジタル証明書申請者の身元確認・認証と、その申請情報の検証を行う機関
Registration Authority (RA、登録局)
Webサーバがブラウザに対してHTTPS接続を強制するセキュリティポリシー
HSTS
SSL/TLS証明書の発行に関するすべての情報を公開的なログに記録し、証明書の不正利用や悪用を防止するセキュリティメカニズム
Certificate Transparency(CT)
SSL/TLS証明書でクライアントが接続しようとしているサーバーのホスト名をサーバーに伝えるための拡張機能
SNI(Server Name Indication)
悪意のある攻撃者がDNSキャッシュに不正な情報を注入することで、ユーザーを誤ったWebサイトやサーバーに転送する攻撃手法
DNSキャッシュポイズニング
TLS通信のSNI(Server Name Indication)フィールドに特定のドメイン名を偽装することにより、検閲や監視を行うシステムを回避する手法
ドメインフロンティング
HTTP〇〇情報に基づいてトラフィックをオリジンサーバーにルーティングするCDNの機能が、ドメインフロンティングに悪用されやすい
ヘッダー
ドメイン名登録情報の不正変更やドメイン名の盗用などで不正にドメインをコントロールし、トラフィックを自分のサーバーに誘導する攻撃
ドメイン名ハイジャック
大量のランダムなサブドメイン名を生成し、ターゲットのウェブサーバーに対して大量のDNSクエリを送りつける攻撃
ランダムサブドメイン攻撃
システムやプログラムの動作に影響を与える値を格納する仕組み。プログラムの実行時に設定され、プロセスの実行環境に影響を与える変数。
環境変数(Environment Variables)
パスワード、APIキー、暗号鍵、トークン、または個人情報などの機密性の高い情報やプライベートなデータ
シークレット
LinuxやUNIX系OSにおいて、カーネルや実行中のプロセスに関する情報をリアルタイムで提供する特殊なファイルシステム
/procファイルシステム
プロセスの環境変数を確認するには、〇〇権限が必要
管理者、または対象プロセスを所有するユーザー
環境変数はプロセス内で〇〇で表示されるため、セキュリティリスクがあります。特に、誤ってログやデバッグ情報に出力される可能性があります。
平文
環境変数はプロセス内で平文で表示されるため、セキュリティ上の懸念があります。
環境変数はプロセスの実行環境を設定するために使われますが、その値はプロセスのメモリ空間内で平文のまま存在しています。つまり、プロセスをデバッグしたりメモリをダンプすれば、環境変数の値を簡単に読み取ることができてしまいます。
そのため、シークレットマネージャーなどの専用に格納・管理するためのシステムやサービスを利用するのが望ましいです。HashiCorp Vault、AWS Secrets Manager、Azure Key Vaultなどが代表的です。
午後4
既知のマルウェア(不正なソフトウェア)の特徴的な部分をデータベースに登録しておき、検査対象のファイルとその特徴を照合して、一致するものがあればマルウェアとして検出する手法
パターンマッチング法
パターンマッチング法で対応できるマルウェアの種類
既知のマルウェア
事前に定義されたルールやシグネチャに基づいて、プロセスやファイルの振る舞いを監視し、マルウェアに特有の動作を検出する手法
振る舞い検知(ビヘイビア法)
振る舞い検知(ビヘイビア法)で対応できるマルウェアの種類
既知のマルウェアの亜種や一部の未知のマルウェア
通常の動作パターンからの逸脱を検知する方法
アノマリ検知型
通常の動作からの逸脱を検知するため、正当なアプリケーションの異常な動作を誤ってマルウェアと判断する可能性、つまり、誤検知が高まります。
アノマリ検知型で対応できるマルウェアの種類
未知のマルウェア
セキュリティパッチが提供される前にパッチが対象とする脆弱性を突く攻撃
ゼロデイ攻撃
ファイルやデータなどを暗号化することでユーザーがアクセスできないようにするマルウェア
ランサムウェア
エンドポイント(PCやサーバーなど)における高度な脅威検知と対応を行うためのセキュリティソリューション。インシデント発生後の分析調査とマルウェア排除対応が特徴。
EDR(Endpoint Detection and Response)
従来のマルウェア対策製品とは異なり、エンドポイントにおける脅威の予兆検知から、インシデント分析、迅速な対応、自動化までをワンストップで実現できるのがEDRの強みです。
マルウェアに仕込まれることもある、ユーザーのキーボード入力を記録するソフトウェアまたはハードウェア
キーロガー(Keylogger)
組織が定義したポリシーに基づいて、特定のWebサイトやカテゴリへのアクセスを許可またはブロックする機能
URLフィルタリング
Webサイトのコンテンツを分析し、特定の基準に基づいてアクセスを制御する機能
コンテンツフィルタリング
URLフィルタリング、コンテンツフィルタリング、マルウェア対策、データ損失防止(DLP)、アプリケーション制御など、多様なセキュリティ機能を統合したセキュリティソリューション。プロキシサーバの上位互換。
SWG(Secure Web Gateway)
令和5年春(2023年春)
午後1-1
不正なパスを使用して制限されたディレクトリにアクセスするセキュリティ攻撃方法
ディレクトリトラバーサル(Directory Traversal)
SQLインジェクション対策として、SQL文を組み立てるときは、java.sql.Statementではなくjava.sql.〇〇を利用する。
PreparedStatement
PreparedStatementを使う方法は、セキュアプログラミングの基本であり、理解してほしい。(採点講評より)
並列動作する複数の処理が同一のリソースに同時にアクセスしたとき、想定外の処理結果が生じる不具合
レースコンディション(Race Condition)、競合状態
レースコンディションは個人情報漏えいなどにつながる可能性があるので、設計、実装、テストでの対策を確認しておいてほしい。(採点講評より)
〇〇メソッドや変数は、クラスレベルで共有されるため、複数のスレッドやプロセスが同時にアクセス可能です。このような状況で同一のリソース(例:変数、データベースレコードなど)に対して書き込みや更新を行うと、レースコンディションが発生する可能性が高まります。
static
午後1-2
FTPの2種類のTCPコネクション
- コントロールコネクション(通信制御)
- データコネクション(データ転送)
FTPのデータコネクションのモードを2つ
- アクティブモード
- パッシブモード
FTPのデータコネクションのモードで、FTPサーバからデータコネクションを接続するモード
アクティブモード
FTPのデータコネクションのモードで、FTPクライアントからデータコネクションを接続する
パッシブモード
SNMPを用いて監視や管理を行う対象のデバイス群を識別するためのラベルや識別子
SNMPコミュニティ名
Windows, Linux, UnixなどのOSで利用でき、ネットワーク接続、ルーティングテーブル、インターフェイスの統計など、ネットワーク関連の情報を表示するコマンドラインツール
netstat(Network Statistics)コマンド
netstatコマンドで、サーバーが新しい接続を受け入れる準備ができている状態、接続要求を待機している状態
LISTENING
netstatコマンドで、TCP/IP接続が成功し、データの送受信が可能な状態、データ通信が行われている状態
ESTABLISHED
特定のホスト上のネットワークポートの状態を調べるために使用されるネットワークのセキュリティ診断や不正アクセスの一環として行われるプロセス
ポートスキャン
ポートスキャン対策で行うべきこと
不必要なポートを閉じる
ポートスキャンでターゲットのサービスのバージョンやオペレーティングシステム(OS)のバージョンを特定すること
OSフィンガープリンティング
ポートスキャンの中でもログを取られずに行うステルススキャンの一種で、特定のTCPフラグ(通常はFIN, URG, PSH)を同時にセットしてパケットを送信する攻撃手法
TCP Xmas スキャン(クリスマスツリースキャン)
接続先から何も返信されない場合にはポートが開いている、RSTパケットが返信されてきた場合にはポートが閉じていると判断可能。なお、接続先がWindowsの場合、RSTパケットさえも返信しない挙動からOSがWindowsと特定できてしまう。
DNSトンネリングで悪用されるTXTレコードの仕様
任意の文字列(テキストデータ)を格納できてしまうこと
マルウェア攻撃に実際に利用されたファイルと異なり、Webからダウンロードできるファイルがマルウェア解析対象として適切ではない理由
ファイルの中身・内容が異なる可能性があるから
午後1-3
シングルサインオン(SSO)の一形態であり、異なるセキュリティドメイン間で認証と承認情報を交換するためのXMLベースの標準フレームワーク
SAML(Security Assertion Markup Language)
SAML認証の流れ
- ユーザーがサービスにアクセスすると、認証要求者(SP)はIDプロバイダ(IdP)に認証を要求
- IDプロバイダはユーザーに対して認証を行う
- 認証成功時に、IDプロバイダはSAMLアサーション(XML形式のデータ)を生成し、認証要求者(SP)に送る
- 認証要求者(SP)はSAMLアサーションを解析し、ユーザーが認証されたことを確認
- ユーザがサービス利用開始
通信の暗号化やWebサーバーが正当であることを証明するためのデジタル証明書
サーバ証明書
Webクライアント(ブラウザやPC端末)が正当であることを証明するためのデジタル証明書
クライアント証明書
デジタル証明書を発行、管理、維持、取り消しを行う信頼された第三者機関
認証局(CA: Certificate Authority)
最上位の認証局(CA)自体の公開鍵とそのデジタル署名を含む証明書
ルート証明書
クラウドサービス利用組織の管理者が,組織の利用者が利用している全てのクラウドサービスの利用状況の可視化を行うことによって,許可を得ずにクラウドサービスを利用している者を特定できるサービス
CASB(Cloud Access Security Broker、キャスビー)
特定のIPアドレスやIPアドレス範囲からの通信を許可または拒否するセキュリティ機能
送信元制限機能
ネットワーク構成を変更する場合は、送信元制限のIPアドレスを追加・削除する必要がある旨が問われた。
特定のURLまたはURLのカテゴリー(例:ソーシャルメディア、ギャンブルサイトなど)へのアクセスを制限するセキュリティ機能
URLフィルタリング
特定のURLやカテゴリーに一部ユーザーのアクセスを許可し、その他すべてのユーザーのアクセスは拒否する必要がある旨が問われた。
午後2-1
実行中のアプリケーションに対してセキュリティ脆弱性を動的にテストする手法
DAST(Dynamic Application Security Testing)
cookieにHttpOnly属性がついていると、〇〇が禁止される。
HTML内のスクリプトからcookieへのアクセス
cookieにHttpOnly属性を付与することでXSSを悪用してもcookieを盗めないのは確かだが、XSSを悪用してcookie以外の情報を盗む攻撃がある。その攻撃の手口。
偽の入力フォームを表示させ、入力情報を攻撃者サイトに送る手口
XSSを悪用した攻撃の手口は、様々あり、大きな被害にもつながり得る。対策を考える際にも必要な知識となるので、よく理解してほしい。(採点講評より)
XSS対策として、HTTPレスポンスヘッダの〇〇フィールドに文字コード(charset)を指定する。
Content-Type
XSSによるCookie情報の漏えい対策として、発行するCookieにHttpOnly属性を加え、〇〇メソッドを無効化する。
TRACE
TRACEメソッドとは、HTTPプロトコルで使用されるリクエストメソッドの一つで、クライアントからサーバーへ送信されたリクエストメッセージをそのまま返す機能です。TRACEメソッドを使って、HTTPヘッダーに含まれる認証情報を盗む攻撃(Cross-Site Tracing攻撃)にも悪用されるので無効化が推奨です。
B社のサポート費用の課題について、B社に対して同じ問合せを行わず、問合せ件数を削除するために、A社グループではどのような対策を実施すべきか。セキュアコーディング規約の必須化や開発者への教育以外で、実施すべき対策。
B社への問合せ窓口をA社の診断部門に設置し、窓口が蓄積した情報をA社グループ内で共有する。
午後2-2
SaaSの場合、クラウドサービス利用者が管理するのは〇〇です。
データ
PaaSの場合、クラウドサービス利用者が管理する必要があるものを2つ
アプリケーションとデータ
IaaSの場合、クラウドサービス利用者が管理する必要があるものを4つ
OS、ミドルウェア、アプリケーション、データ
OAuth 2.0やOpenID Connectなどの認証・認可フレームワークで使用されるURLで、認可サーバーがユーザーをクライアントアプリケーションにリダイレクトする際に使用するエンドポイントを指定するURL
Callback URL(Redirect URI)
OAuth 2.0の認可コードフローにおいて、認可サーバーがクライアントアプリケーションに発行する一時的なコード
codeパラメータ(認可コード)
OAuth 2.0の認可コードフローにおいて、認可コードやトークンを送り返すURIを指定するパラメーター
redirect_uri
認可コード横取り攻撃を対策するためのOAuth2.0のセキュリティ拡張機能
PKCE(Proof Key for Code Exchange)
SHA-256でハッシュ化しBase64URLエンコードした値を用いたOAuth 2.0のセキュリティ拡張であるPKCE(Proof Key for Code Exchange)で使用されるcode_challenge_methodの一つ
S256
令和4年秋(2022年秋)
午後1-1
DNSキャッシュサーバが権威DNSサーバにサーバの名前解決要求を行ったときに、攻撃者が偽装したDNS応答を送信する攻撃手法
DNSキャッシュポイズニング
DNSが利用する通信プロコトル
UDP
DNSキャッシュポイズニングが成功するために満たすべき条件
権威DNSサーバからの応答よりも早く到達すること
攻撃者が正当なDNSリクエストに対する応答よりも先に、偽の応答を攻撃先のDNSサーバーに届ける必要があります。
製品Rはファームウェアを提供するサーバとの間の通信においてHTTPSを適切に実装している。どのような実装か。
サーバ証明書を検証し、通信相手が正当なサーバであることを確認する実装
ソフトウェアのデジタル署名を行う電子署名用の証明書
コードサイニング証明書
攻撃者がウェブアプリケーションを通じてオペレーティングシステムのコマンドを不正に実行する攻撃
OSコマンドインジェクション
攻撃者がウェブページに不正なスクリプトを埋め込むことで、他のユーザーのブラウザでそのスクリプトを実行させる攻撃
クロスサイトスクリプティング
攻撃者がウェブアプリケーションの入力フィールドにSQLクエリの一部を挿入することで、データベースを不正に操作する攻撃
SQLインジェクション
攻撃者が不正なコードをウェブアプリケーションやシステムに挿入し、そのコードを実行させる攻撃
コードインジェクション
ウェブセキュリティの脆弱性の一つで、攻撃者がユーザーの意図しない操作をそのユーザーの権限で実行させる攻撃
クロスサイトリクエストフォージェリ
攻撃者が外部サーバーに対して不正なリクエストを送信することで、内部システムにアクセスしたり情報を漏洩させたりする攻撃
サーバサイドリクエストフォージェリ
POSTメソッドを用いたクロスサイトリクエストフォージェリ攻撃で、利用者に攻撃リクエストを送信させる仕組み
悪意のある攻撃リクエストをPOSTメソッドで送信させるスクリプトを仕込んだページを表示させる
攻撃者は、罠ページに、ユーザーがログインしている別のサイト(例:銀行サイト)での操作(例:送金)を行うためのHTMLフォームを埋め込みます。このフォームは、ターゲットとなるサイトに対してPOSTメソッドでリクエストを送るように設定されています。ユーザーが罠ページを開くと、フォームが自動的に送信され、ユーザーのログインセッションを利用して不正な操作が行われます。
POSTメソッドを用いたクロスサイトリクエストフォージェリ攻撃の仕組みと対策について理解を深めてほしい(採点講評より)
クロスサイトリクエストフォージェリ対策として利用者からのリクエストのパラメータ(hiddenパラメータ)に含まれるトークンがもつべき特徴
推測困難なトークン、第三者に予測困難なトークン、予測不可能性
機密性の求められるデータの送信には〇〇メソッドを使わず、POSTメソッドを使うべきである
GET
GETメソッドはURLにデータを含めるため、ブラウザの履歴やサーバーログに情報が残る可能性があります。一方、POSTメソッドはデータをHTTPボディ内で送信するため、URLに情報が含まれません。よってブラウザの履歴やサーバーログに機密情報が残るリスクが低減します。
午後1-2
子プロセスを生成(スポーン)するプロセス。子プロセスの管理と監視を行う。
親プロセス
親プロセスによって生成されるプロセス。親プロセスから資源や実行状態などを継承する。
子プロセス
runプロセスが稼働している原因の追求にはTソフトを調べる必要があると判断した。その理由。
runプロセスはTソフトの子プロセスとする。
runプロセスの親プロセスがTソフトのプロセスであるから
不審なプロセスの調査においては、プロセスの親子関係について調査することの必要性も認識しておいてほしい。(採点講評より)
LDAPとは
ユーザーやリソース、サービスなどの情報を階層的に管理するデータベース(ディレクトリサービス)にアクセスするためのプロトコル。
LDAPの標準的なポート番号
389(TCP/IP)
LDAP over SSL(LDAPS)のポート番号
636(TCP/IP)
午後1-3
対策情報が公開される前の脆弱性を悪用した攻撃
ゼロデイ攻撃
GETメソッドのレスポンスに含まれる内容のうち、攻撃者がレジストリサーバと判断するのに用いたと考えられる情報
レジストリサーバに固有のレスポンスヘッダ
serverレスポンスヘッダーにサーバー固有のソフトウェア名やバージョンを示す内容が記載されている場合、攻撃者はサーバの詳細を把握しやすくなります。
すべてのネットワークトラフィックを不信頼とみなし、厳格なアイデンティティ認証と許可に基づいて各リソースへのアクセスを制御するセキュリティモデル
ゼロトラストネットワーク
犯罪の温床となっている通常の検索エンジンでは検出できないインターネットの隠れた深層領域
ダークウェブ
攻撃者をおびき寄せるために設置された仮想または物理的なデバイスやサービス
ハニーポット
マルウェアに感染した多数のコンピュータが一元的に制御され、スパム送信やDDoS攻撃などに利用されるネットワーク
ボットネット
特定のC&CサーバのグローバルIPアドレスへの接続をFWで拒否する対策が有効ではないのはどのような場合か。
別のグローバルIPアドレスを攻撃者が用いる場合
午後2-1
従来のファイルベースのマルウェアとは異なり、ディスクにファイルとして保存されずにメモリ上で動作するマルウェア
ファイルレスマルウェア
広告表示によって収入を得るソフトウェア
アドウェア
感染したコンピュータのリソースを使って暗号通貨を採掘するマルウェア
暗号資産採掘マルウェア
正当なソフトウェアやファイルに偽装して、ユーザーのシステムに侵入するマルウェア
トロイの木馬
感染したコンピュータのファイルを暗号化し、解除のために身代金を要求するマルウェア
ランサムウェア
マルウェアに感染している検体aの挙動が、検体aを週明けに再実行した時には、攻撃者による変更によって再現できなくなる可能性がある。攻撃者によって変更されるもの。
C&CサーバのIPアドレス
ARP(Address Resolution Protocol)を悪用して、ネットワーク上のデバイス間の通信を傍受または改ざんする攻撃・検閲手法
ARPスプーフィング
ハッシュ化におけるストレッチングとは
ハッシュ化を繰り返す処理
ハッシュ関数を複数回適用することで、元のデータ(パスワード)から生成されるハッシュ値のセキュリティを強化する手法
ハッシュ化する前に元のデータ(パスワード)に追加するランダムな文字列
ソルト
ブルートフォース攻撃を対策する機能
ログイン失敗が数回連続した場合に、当該IDをアカウントロックする機能
あらかじめ計算されたレインボーテーブルを用いて、ハッシュ値から元のデータ(パスワード)を高速に逆引きする攻撃手法
レインボーテーブル攻撃
レインボーテーブルとはハッシュ関数の出力(ハッシュ値)と元のデータ(パスワード)の対応関係をあらかじめ計算して保存したテーブルです。
レインボーテーブル攻撃は、ハッシュ値が漏洩した場合のリスクを高めるため、ソルトの適用やハッシュのストレッチングが推奨されています。
攻撃者がユーザーのパスワードハッシュを盗み、それを用いて認証を突破するセキュリティ攻撃手法
Pass the Hash(PtH)
攻撃者が平文(元のメッセージ)とそれに対応する暗号文(暗号化されたメッセージ)の両方をヒントに鍵を算出する攻撃方式
既知平文
異なる二つのデータが同じSHA-1ハッシュ値を生成するように意図的に操作する攻撃手法。攻撃者はその衝突を利用して、ハッシュを信頼するシステムを欺き、本来のファイルの代わりに悪意のあるファイルを侵入させることができます。
SHA-1 衝突
デバッグログに〇〇を出力しないこと
認証情報
午後2-2
インシデント対応の所要時間を短くするために、通報の受付時には、IRT(インシデントレスポンスチーム)メンバー全員の集合を待たず、〇〇のメンバーが集合した時点で対応を開始するかどうかを決定する。
最低限
インシデント対応のレベル判定のタイミングで、最初の判定に加え、影響の大きさ又は影響の広がりについての事実が見つかるたびに、〇〇を行う。
再判定
情報漏えい対応においては、事実確認と情報の〇〇管理が重要です。
組織の情報を一か所に集め、外部に対する情報提供や報告に関しても〇〇を一本化し、正しい情報の把握と管理を行います。
令和4年春(2022年春)
午後1-1
攻撃者がHTTPヘッダーに不正なデータを挿入することで、サーバーやクライアントの挙動を操作するセキュリティ攻撃
HTTPヘッダインジェクション
IPA | 安全なウェブサイトの作り方 – 1.7 HTTPヘッダ・インジェクション
HTTPヘッダインジェクションで攻撃者がHTTPヘッダーに〇〇フィールドを追加して、ユーザーを悪意のあるサイトにリダイレクトさせる。
HTTPヘッダインジェクションで攻撃者が〇〇ヘッダーを改ざんして、ユーザーのセッションクッキーを盗む。
Set-Cookie
HTTPヘッダは〇〇で区切られているため、攻撃者が不正な入力に〇〇を挿入することで、新しいヘッダフィールドを追加したり、既存のヘッダフィールドを改ざんすることが可能になります。(〇〇は同一)
改行
HTTPヘッダインジェクション攻撃などで悪用されるエンコードされた改行コードとして、%0d%0a
が出題された。
HTTPヘッダインジェクションの対策として、ヘッダの出力を直接行わず、ウェブアプリケーションの実行環境や言語に用意されているヘッダ出力用〇〇を使用する。
攻撃者がSQLクエリに不正なコードを挿入することでデータベースを操作する攻撃手法
SQLインジェクション
SQLインジェクションの対策として、SQL文の組み立ては全て〇〇で実装する。
プレースホルダ
SQL文の雛形の中に変数の場所を示す記号(プレースホルダ)を置いて、後に、そこに実際の値を機械的な処理で割り当てるものです。ウェブアプリケーションで直接、文字列連結処理によってSQL文を組み立てる方法に比べて、プレースホルダでは、機械的な処理でSQL文が組み立てられるので、SQLインジェクションの脆弱性を解消できます。
プレースホルダに実際の値を割り当てる処理
SQLインジェクション対策として、SQL文を組み立てるときは、java.sql.Statementではなくjava.sql.〇〇を利用する。
PreparedStatement
SQLインジェクション対策として、SQLクエリのテンプレートを先に作成し、その後で変数部分に値を挿入する。
ウェブアプリケーションが生成するメールのヘッダに不正なデータを挿入する攻撃手法
メールヘッダインジェクション
メールヘッダインジェクションの対策として、メールヘッダを〇〇にして、外部からの入力はすべてメール本文に出力する
メールヘッダを固定値にできない場合、ウェブアプリケーションの実行環境や言語に用意されているメール送信用〇〇を使用する。
メールヘッダインジェクションの対策として、外部からの入力の全てについて、〇〇コードを削除する。
午後1-2
DNSサーバの設定でホスト名に割り当てているIPアドレスを変更するために、〇〇レコードを更新する。そのレコードの〇〇は、300秒に設定されている。(〇〇はそれぞれ別々)
A、TTL
認証なしでリクエストを受け付ける仕様のプロトコル。主にホームネットワークで使用され、PC、スマートフォン、プリンター、Wi-Fiルーターなどのデバイスが自動的にネットワーク設定を行い、相互通信を可能にする。
UPnP(Universal Plug and Play)
WAN側でUPnP機能を有効にできる仕様とした場合、ルータAが操作されることによって、どのようなセキュリティ上の問題が発生するか。
外部からLAN側への通信の許可設定が変更される。
不正な入力を通じてアプリケーションのファイルシステムにアクセスする攻撃手法
パストラバーサル、ディレクトリトラバーサル
パストラバーサル対策として、URLデコードを実施し、パス名の〇〇を行った上で、除外リスト(ホワイトリスト)との比較を行う。
不正な入力を通じて直接OSのコマンドを実行する攻撃手法
OSコマンドインジェクション
GETメソッドを用いて実行されたOSコマンドの内容はわかるが、POSTメソッドを用いて実行されたOSコマンドの内容がわからない理由
POSTメソッドで送信したボディがアクセスログに残っていないから。
GETメソッドではデータをURLのクエリパラメータに含めて送信されますが、POSTメソッドではHTTPヘッダーのbody部分に格納されるため内容を把握するのが困難になります。
複数のファイルを1つのアーカイブファイルにまとめたり、アーカイブファイルを展開できる、標準のOSコマンド
tarコマンド
sudoコマンドの設定ファイル(/etc/sudoers)で、tarコマンドのオプションが悪用されるのを防ぐ方法
sudoコマンドの設定ファイルで、tarコマンドのオプションを受け付けないように設定する。
sudoの設定でオプションの使用を制限するなど、具体的に解答してほしい。(採点講評より)
インターネットの検索エンジンで検索されないようにするために、各Webページの<head>セクションに<meta name=”robots” content=”〇〇”>と記載する。
noindex、none
noindexを指定することで、クローラー(データを収集するプログラム)にWebページをインデックス(データを検索エンジンデータベースに整理された状態で格納)しないように指示できます。
午後1-3
本人確認の構成要素の1つで、登録する氏名・住所・生年月日等が正しいことを証明/確認すること
身元確認
本人確認の構成要素の1つで、認証の3要素のいずれかの称号で、その人が作業していることを示すこと
当人認証
〇〇を用いてディジタル署名を生成する
秘密鍵
〇〇を用いてディジタル署名を検証する
公開鍵
公開鍵を用いてディジタル署名を検証した後、地方公共団体情報システム機構に署名用電子証明書の〇〇を確認する。
有効性、失効の有無
QRコード決済アプリの本人確認で事前に準備した他人の画像を用いられないようにするために、QRコード決済アプリが毎回ランダムな数字を表示し、利用者がそのランダムな数字を紙に書き、その紙と一緒に容貌や〇〇確認書類を撮影して、直ちに送信することによって、アプリを運営する会社は提出された画像が事前に準備されたものではないことを確認するという方法が考えられる。
本人
オンラインにおける本人確認手法は、今後も様々な手法が提案されると思われるが、現在使われている最新の手法を理解しておいてほしい。(採点講評より)
参考(Q23 画像情報の送信時期【平成 30 年 11 月 30 日施行箇所】)
QRコード決済アプリで、スマートフォンの画面ロックを設定していないと、どのような場合に不正利用が行われるか。
スマートフォンを盗まれた場合
QRコード決済アプリで、スマートフォンを盗まれた場合に不正利用を防ぐための対策機能
QRコード決済アプリの起動時に、PINコードで利用者を認証する機能
午後2-1
攻撃者は透明なレイヤーまたはフレームを用いて、ユーザーがクリックしようとしている元のウェブページの上に別のコンテンツを重ね、ユーザーがクリックすると、実際には攻撃者が意図したアクションが実行される攻撃
クリックジャッキング
攻撃者が用意した画面を利用者から見て、奥に可視状態で罠サイトに公開し、正規サイトの画面を利用者から見て、手前に〇〇な状態で重ねて表示する。
クリックジャッキング脆弱性の対策には、レスポンスヘッダに〇〇を含める方法と〇〇を含める方法がある。後者は標準化されている。(〇〇は別々)
X-Frame-Options、Content-Security-Policy
X-Frame-Optionsは、HTTPヘッダーの一つで、ウェブページがどのようにiframe、frame、objectタグ内で表示されるかを制御します。Content-Security-Policy(CSP)は、ウェブページのセキュリティポリシーを定義するHTTPヘッダーです。
IPA | 安全なウェブサイトの作り方 – 1.9 クリックジャッキング
クリックジャッキングの対策に使うレスポンスヘッダーについては、標準化の動向を含めて正しく理解しておいてほしい。(採点講評より)
ソースコードレビューやツールによる脆弱性診断では発見できないが、専門技術者による脆弱性診断では発見できる脆弱性が多くある。該当する脆弱性。
- 一部のセッション管理の脆弱性
- 認可・アクセス制御の脆弱性
脆弱性の種類によって、検出に有効な手段が異なる。それぞれの脆弱性について、どのような検出手段が有効かを理解しておいてほしい。(採点講評より)
専門技術者における脆弱性診断が長期間行われないことを避けるためには、開発プロセスをどのように見直せばよいか。
- 専門技術者における脆弱性診断が必要なときは、改良リリースを次回に持ち越す。
- 半年に一度、改良リリースの期間を長くする。
- 定期的に、期間の長い改良リリースを設ける。
ライブラリとしてあらかじめ用意されたフレームワークには、脆弱性対策が組み込まれていて、それがデフォルトで有効になっているものもある。CSRF脆弱性の場合では、どのような処理を行う機能が考えられるか。
CSRF対策用トークンの発行、HTMLへの埋め込み、必要なひも付け、及びこれを検証する処理
IPA | 安全なウェブサイトの作り方 – 1.6 CSRF(クロスサイト・リクエスト・フォージェリ)
ソフトウェア開発に使われているフレームワークにどのような脆弱性対策が組み込まれているかを知っておいてほしい。(採点講評より)
午後2-2
CDNでは、インターネット上に〇〇サーバというサーバを分散配置して、動画配信を要求した端末に最も近い〇〇サーバから動画を配信するようにします。
キャッシュ
CDNの仕組みによって、〇〇攻撃への耐性も向上する。
DDoS
インターネットのフィルタリングや監視を回避するために、信頼されたドメインを利用して通信を偽装する手法
ドメインフロンティング攻撃
CDNを悪用したドメインフロンティング攻撃は、標的型攻撃などでもよく登場する攻撃手法なので、是非知っておいてほしい。(採点講評より)
HTTPの〇〇ヘッダーとは、HTTPリクエストに含まれるフィールドで、クライアントが接続先のウェブサーバーのドメイン名やIPアドレスを指定するために使用されます。
ホスト(Host)
攻撃者がKerberosのTicket Granting Ticket(TGT)を偽造(または盗む)することで、ネットワーク内の任意のサービスやデータにアクセスする攻撃手法
ゴールデンチケット
Kerberos認証で、STの偽造については、認証サーバ側で検知できない理由
STは認証サーバに送られてないから
Kerberos認証では、最初にTGT(Ticket Granting Ticket)を取得し、そのTGTを用いてST(Service Ticket)を取得します。STは、クライアントがサービスに対して自身を認証するために使用されます。
Kerberos認証で、奪取されたSTに対して行われる総当たり攻撃は、サーバ側でログイン失敗時のアカウントロックを有効にしていても対策になりません。その理由。
総当たり攻撃はオフラインで行われ、ログインに失敗しないから。
STがすでに認証済みのチケットであるため、総当たり攻撃が行われた場合でも「ログイン失敗」としてカウントされません。対策としてはSTの有効期限を短く設定する、多要素認証を導入するなどが考えられます。
パスワードに対する攻撃手法の種類や違いについて、理解を深めてほしい。(採点講評より)
HTTPリクエスト中の〇〇からSAML Requestを取得する。
クエリ文字列(クエリパラメータ)
SAML Responseに含まれるデジタル署名を検証することで、デジタル署名が正当な発行元のものであること、及びSAMLアサーションの〇〇がないことを確認する。
偽造、改ざん
OAuthにおけるCSRF(Cross-Site Request Forgery)対策として、〇〇パラメタの実装が求められています。
state
Webサービスが認可サーバーに認可リクエストをリダイレクト送信する際のstateパラメタと認可サーバがWebサービスに認可コードを応答した際のstateパラメタを比較し、同一であればシーケンスを続ける。
OAuth2.0のメカニズムと攻撃手法は、安全なAPIアクセスの実現のために必要な知識なのでよく理解してほしい。(採点講評より)
Sサービスのスマホアプリでランダムな検証コードとその値を基にしたチャレンジコードを作成して、そのチャレンジコードを認可要求に追加し、検証コードをトークン要求に追加します。二つのコードを検証することで、検証コードを知らない攻撃者からのトークン要求を排除できる技術
PKCE(Proof Key for Code Exchange)
認可コードが盗まれた場合でも、攻撃者は検証コード(code_verifier)がないとアクセストークンを取得できないです。
OIDC(OpenID Connect)において、エンコードは主にJWT(JSON Web Token)形式で行われます。JWTは〇〇エンコードされたJSONオブジェクトで構成され、ヘッダー、ペイロード、署名の3部分からなります。
base64url
OIDC(OpenID Connect)の〇〇フローは、認証と認可を一緒に行い、IDトークンと認可コードを同時に取得するフローです。
ハイブリッド
OIDC(OpenID Connect)のハイブリッドフローを用いる場合、stateパラメタのほか、〇〇値を実装しているかを確認すべきです。
nonce
ハイブリッドフローにおいて、nonce(Number Once)値は、IDトークンに含まれるランダムな文字列であり、リプレイ攻撃を防ぐために使用されます。
OIDC(OpenID Connect)のハイブリッドフローを用いる場合、stateパラメタのほか、nonce値を実装しているかを確認すべきです。まず、nonce値を生成し、〇〇に含めて送信します。次に送られてきた〇〇に含まれるnonce値を検証することで、攻撃者によるIDトークンの不正利用を防ぐことができます。(〇〇を別々)
認証要求、IDトークン
OpenID Connectのメカニズムと攻撃手法は、安全な認証基盤の実現のために必要な知識なのでよく理解してほしい。(採点講評より)
令和3年秋(2021年秋)
午後1-1
SSH接続する際に、警告メッセージが表示され、接続が切断された場合、保守用中継サーバのフィンガプリントが変わったか、〇〇という状況が想定されるので、J社に確認する。
接続先が保守用中継サーバではない
SSHサーバのフィンガプリントの確認は、実運用で疎かにされやすいが、接続先サーバの確認のために重要なことであるので、その目的をよく理解してほしい。(採点講評より)
利用者IDには、一般利用者の権限を与えることで操作ログの〇〇や削除を防止する。
改ざん
SSHでパスワードを使わずに、公開鍵と秘密鍵という2つのキーを使用してリモートログインを行う認証方式
公開鍵認証方式
鍵ペアの秘密鍵には、十分な強度のパスフレーズを設定する。その目的。
- 設定者以外が不正に秘密鍵を利用できないようにするため
- 秘密鍵が盗まれても悪用できないようにするため
適切に鍵ペアを管理するためにも、SSHにおける公開鍵認証の仕組みをよく理解してほしい。(採点講評より)
保守用中継サーバが不正アクセスされた場合を想定して、顧客管理サーバへのSSH接続に必要な〇〇を利用されないように、保守用中継サーバに保存しない運用にしましょう。
秘密鍵
一度のSSH認証で複数のリモートサーバーに安全に接続し、中間サーバーに秘密鍵を保存するリスクを排除できるSSHの機能
SSH Agent forwarding
午後1-2
プロジェクト離任者が出た場合、Pパスワードが設定されている全てのファイルに対して〇〇を行う必要があり、作業負荷が高い。
Pパスワードの変更
プロジェクトメンバが、プロジェクト参加期間中にR社の規則に反して〇〇した設計秘密は、当該メンバであれば離任後も参照できてしまう。
PCにコピー
企業や組織内でデジタルデータ(文書、画像、音声など)に対するアクセス権限や使用権限を管理する技術・製品群
IRM(Information Rights Management)
利用者IDとパスワードによる認証だけでは、推測が容易なパスワードを利用者が設定してしまうと、長さが10字であったとしても〇〇攻撃に対して脆弱となるので、〇〇への変更が可能か検討する。(〇〇は別々)
辞書、多要素認証
利用者認証に対する攻撃手法には様々なものがあるが、それぞれの特徴と有効な対策をよく理解してほしい。(採点講評より)
パスワードに使われると推測される文字列すべてを総当たり式に当てはめて、ログインを試みる攻撃手法
ブルートフォース(総当たり)攻撃
パスワードに使用されることの多い単語や人名を組み合わせ、繰り返しログインを試行する攻撃手法
攻撃者があらかじめ何らかの方法で入手した、サービスやシステムのIDとパスワードをリスト化したデータを利用し、不正に企業や組織のWebサイトへの不正アクセスを試みるという攻撃手法
パスワードリスト攻撃
複数のアカウントに対して同一パスワードを使って、同時にログイン試行する攻撃手法
パスワードスプレー攻撃
設計秘密ファイルを暗号化し、適切なアクセス権限を付与していたとしても、PCがマルウェアに感染してしまうと、設計秘密の内容を不正に取得されてしまう場合がある。どのような動作をするマルウェアに感染すると不正に取得されるか。
利用者がファイルを開いたとき、画面をキャプチャし、攻撃者に送信する動作
午後1-3
マルウェア感染拡大防止のためのPCの初動対応
LANから切り離す、ネットワークから切り離す
マルウェアに感染したPCの対応として、ディジタルフォレンジックスによる調査を行うことにして必要な情報を取得した。どのような情報か。
ディスクイメージ
マルウェアに感染したPCの対応として、最新のマルウェア定義ファイルを保存したDVD-Rを使用し、マルウェア定義ファイルの〇〇をした後に、フルスキャンを実施するようにした。
更新
あらかじめ登録した実行ファイルだけの実行を、ファイルのハッシュ値を比較することによって許可するソフトウェアを導入する際に、ハッシュ値の登録変更が必要になる場合がある。どのような場合か。
登録した実行ファイルがバージョンアップされた場合
実行ファイルが変化した場合は、ハッシュ値があらかじめ登録したハッシュ値とは異なるので、ソフトウェアによって実行を禁止される。(採点講評より)
あらかじめ登録した実行ファイルだけの実行を、ファイルのハッシュ値を比較することによって許可するソフトウェアを導入する際に、ある種のマルウェアでは実行を禁止できない。どのような場合か。
登録した実行ファイルのマクロとして実行されるマルウェア
実行を許可されているファイルを悪用するマルウェアには、どのようなものがあるかを考えて解答してほしかった。(採点講評より)
午後2-1
セキュリティ関連の情報とイベントを収集、分析、報告するための技術およびソリューションの総称
SIEM(Security Information and Event Management)
本問では協力会社以外からのアクセスを検知するために、SIEM(シーム)が導入されていた。
SIEMからのアラートやイベントを受信し、自動化された対応手順に従って、インシデントへの対応を自動化できるセキュリティソリューション
SOAR(Security Orchestration Automation and Response)
攻撃者が不正なスクリプトをデータベースなどの永続的なデータストレージに保存し、ユーザーがそのデータを取得するときに実行されるタイプのXSS
Stored XSS(格納型XSS)
本問では格納型XSSの脆弱性があった。
攻撃者が特定のURLを介して不正なスクリプトを送信し、それを含むレスポンスがユーザーに返された際に実行されるタイプのXSS
Reflected XSS(反射型XSS)
Webサイトがブラウザに許可するリソースの読み込み元を制限することができるセキュリティポリシー
CSP(Content Security Policy)
CSPは、HTTP〇〇ヘッダーに追加されます
レスポンス
CSPは、HTTPレスポンスヘッダーに追加されます。具体的には、Content-Security-PolicyまたはContent-Security-Policy-Report-Onlyという名前のヘッダーにポリシーを定義します。
CSPでWebブラウザに対して指定したスクリプトファイルの実行だけを許可する場合、実行が許可されるのはどのようなスクリプトファイルか。
URLと同じオリジンであるスクリプトファイル
CSPのscript-src
ディレクティブにおいて、URLとオリジンは一致する必要があります。具体的には、同じオリジン(同じスキーム、FQDN、ポート)から提供されるスクリプトの実行を許可するためには、'self'
を使用します。例えば、example.com
から提供されるスクリプトを許可する場合は、以下のように指定します。
Content-Security-Policy: script-src 'self' https://example
午後2-2
更新予定
令和3年春(2021年春)
午後1-1
インターネット上での認証と認可のためのオープンスタンダードのプロトコル。ユーザーはあるサービス(例:Google、Facebook)の認証情報を使って、別のサービス(例:Spotify、Dropbox)にログインできる。
OAuth
OAuth 2.0の認可コードフローにおいて、認可サーバーがクライアントアプリケーションに発行する一時的なコード
codeパラメータ(認可コード)
ユーザーがウェブサイトへログイン状態であることを狙い、罠サイトを経由してターゲットのウェブサイトに偽のリクエストを送信する攻撃手法
CSRF(Cross-Site Request Forgery)
OAuthにおけるCSRF(Cross-Site Request Forgery)の対策として、RFC6749は、推測困難な値である〇〇パラメタを利用することを推奨している。
state
Webサービスはstateパラメタを(空欄a)を送信する際に付与する。Webサービスは(空欄b)を受信する際に、そのセッションがstateパラメタを付与した際の(空欄a)のセッションと同一であるか否かを確認する。
空欄aは認可リクエスト、空欄bは認可コード
Webサービスが認可サーバーに認可リクエストをリダイレクト送信する際のstateパラメタと認可サーバがWebサービスに認可コードを応答した際のstateパラメタを比較し、同一であればシーケンスを続ける。
午後1-2
送信元のIPアドレスを偽装した名前解決要求を外部DNSサーバに送ることによって、外部DNSサーバを踏み台とし、攻撃対象となる第三者のサーバに対し大量のDNSパケットを送りつけるというDos攻撃
DNSリフレクション攻撃
DNSキャッシュポイズニング攻撃が成功すると、攻撃対象のフルサービスリゾルバが管理するリソースレコードのうち、メールサーバの〇〇レコードのIPアドレスが、攻撃者のメールサーバに書き換えられ、メールが攻撃者のサーバに送信されてしまう。
A
DNSキャッシュポイズニング攻撃の対策として、送信元ポート番号を〇〇する。
ランダム化
DNSキャッシュポイズニング攻撃の対策として、DNSサーバから受け取るリソースレコードに付与されたディジタル署名を利用して、リソースレコードの送信者の正当性とデータの完全性を検証する技術
DNSSEC
中間者攻撃によるDNS通信内容の盗聴、改ざんの対策として、DNS通信を暗号化する〇〇という技術が標準化されている。
DNS over TLS(DoT)
DNS通信を暗号化するDNS over TLSは、DNSのセキュリティ対策にとって重要な技術の一つである。この仕組みを学習してほしい。(採点講評より)
DNS over TLS(DoT)はスタブリゾルバと〇〇間の通信を暗号化するために開発されたものである。
フルサービスリゾルバ
一つのDNSサーバーから別のDNSサーバーへとドメイン名とそれに関連する情報(レコード)をコピーするプロセス
ゾーン転送
午後1-3
パッチ担当者は、セキュリティパッチを検証LANのPCに適用し、社内で利用しているアプリケーションプログラムを2日間動作させて〇〇を確認する。
PCの動作に問題がないこと
ネットワークスイッチにおいて特定のポートの通信データを別のポートにコピーする機能
ミラーポート
ネットワーク経由で電源がオフまたはスリープ状態のコンピュータを遠隔で起動する技術
Wake-on-LAN(WoL)
遠隔から電源投入ができWake On LANで、起動の指示を行うための特殊なイーサネットフレーム
マジックパケット
Wake-on-LAN(WoL)のマジックパケットでは、遠隔から電源投入にする機器に対してブロードキャストフレーム(FF-FF-FF-FF-FF-FF)に続けて、〇〇を16回繰り返したデータを含む起動パケットを送信する。
MACアドレス
ネットワーク上でIPアドレスとMACアドレスを対応付けるためのプロトコル
ARP(Address Resolution Protocol)
ネットワーク内のデバイスが持つIPアドレスと、対応するMACアドレスの対応関係を記録した表
ARPテーブル
令和2年秋(2020年秋)
午後1-1
バーコード決済ではどのような手段でなりすまして決済ができるのか。バーコードは会員番号から作成するものとする。
- 他者のバーコードを会員番号から推測して表示する。
- 他者の会員番号を窃取してバーコードを生成し、決済する。
ハッシュ関数(SHA-256など)を利用してメッセージデータが改ざんされていないことと正当な発信元から送られたことを確認するメッセージ認証コード(MAC)
HMAC(Hash-based Message Authentication Code)
HMACを利用することで確認できることを2つ
- データの完全性
- 送信元の認証
HMACを利用することで送信されたメッセージやデータが途中で改ざんされていないかとメッセージが正当な送信元から来たものであるかを確認できます。
SSL/TLS証明書において、一つの証明書で複数のドメイン名やIPアドレスを保護できる拡張フィールド
SAN(Subject Alternative Name、subjectAltName)
SSL/TLS証明書において、証明書が保護する対象の主要なドメイン名やサーバー名を指定するフィールド
Common Name、CN
Common Name(CN)に設定するサーバーのフルドメイン名
FQDN
SSL/TLS証明書において、証明書を発行した認証局(CA)の名前を記載するフィールド
Issuer
SSL/TLS証明書において、証明書に一意に割り当てられたシリアル番号を記載するフィールド
Serial Number
SSL/TLS証明書において、証明書の有効期間(開始日と終了日)を記載するフィールド
Validity
X.509証明書の拡張フィールドの一つで、証明書を発行した認証局(CA)の識別子を格納するフィールド
authorityKeyIdentifier
X.509証明書のフィールドの一つで、証明書の主題(通常はサーバーまたはクライアント)が持つ公開鍵とその鍵のタイプ(例:RSA、ECDSAなど)に関する情報を格納するフィールド
subjectPublicKeyInfo
攻撃者が事前に用意した多数のパスワードをリスト化したデータを使って、対象のアカウントに対して総当たり攻撃を行う手法
パスワードリスト攻撃
パスワードリスト攻撃の準備段階として行なわれる選別と最適化のプロセス
スクリーニング
スクリーニングを防止するには、会員登録されている場合とされていない場合で表示内容を〇〇にする必要がある。
同じ
スクリーニングを防止するには、会員登録されている場合とされていない場合で表示内容を同じにする必要があることをよく理解してほしい。(採点講評より)
午後1-2
TCPポート389番を使用するディレクトリへのアクセスサービス
LDAP(Lightweight Directory Access Protocol)
PCのWebブラウザではHTTPSでアクセスするWebサーバのサーバ証明書が失効していないことを、RFC6960で規定されている〇〇を利用して確認できるようにしている。
OCSP(Online Certificate Status Protocol、オンライン証明証ステータスプロトコル)
OCSPは、X.509公開鍵証明書の失効状態をタイムリーに確認できるプロトコルである。OCSPの仕組みをよく理解してほしい。(採点講評より)
証明書を発行した認証局(CA)によって作成・管理され、有効期限内に失効したデジタル証明書の一覧
CRL(Certificate Revocation List)
CRLに掲載されるのは有効期限内に失効したディジタル証明書のシリアル番号です。(午前2で頻出)
OCSPを利用したSSL/TLS証明書の確認動作手順
- クライアント(通常はウェブブラウザ)はOCSPレスポンダに対して証明書のステータスを問い合わせ
- OCSPレスポンダは証明書のステータスをクライアントに応答
OCSPレスポンダがCA(認証局)からSSL/TLS証明書の有効性情報を事前に取得・キャッシュし、自ら証明書の有効性情報をクライアントに提供する方法
OCSP Stapling(OCSPステープリング)
CRLと比較した場合のOCSPのメリット
- 証明書の失効情報をリアルタイムで確認可能
- 必要な証明書の失効情報だけを問い合わせるためリソースの負荷が低い など
CRLは証明書の失効リストを一括でダウンロードする方式のため、ダウンロード頻度によっては証明書の失効情報が最新ではない場合やダウンロード時のリソース負荷が高くなる場合があります。
SMTPサーバでメールの通信を暗号化しただけでは、メール送信者から受信者までのエンドツーエンドのメール通信を暗号化する通信要件を満たせない。その理由。
メールサーバ上では、メールが暗号化されていないから。
SMTP over TLS及び Pop over TLSによって、通信は暗号化されるが、メールサーバ上の電子メールは暗号化されていないということをよく理解してほしい。(採点講評より)
メールメッセージの暗号化と送信者の検証が可能な電子メールのセキュリティを高める標準規格
S/MIME(Secure/Multipurpose Internet Mail Extensions、エスマイム)
S/MIMEはインターネットで電子メールを送信するとき,メッセージの本文の暗号化に〇〇暗号方式を用い,〇〇の受渡しに公開鍵暗号方式を用いる
共通鍵
S/MIMEは、メールの本文と添付ファイル(データ部分)を暗号化および署名できますが、メールの〇〇部分(送信者、受信者、件名など)は暗号化されません。
ヘッダー
メールサーバはルーティングや配信のためにヘッダー部分の情報を平文で読む必要があります。ヘッダー部分の詐称対策は送信ドメイン認証のSPF、DKIM、DMARCを併用して送信元認証を行うのが一般的です。
S/MIMEを利用したメールの復号ができなくなる場合はどのような場合か。
復号に必要な秘密鍵を意図せず削除・紛失した場合
午後1-3
プラットフォーム診断の実施時だけ、N-IPS(Network-based IPS)の脅威通信設定を無効にすると、有効にした場合と比べて、より多くの脆弱性を検出する可能性がある。その理由。
N-IPSで遮断されていたプラットフォーム診断の通信が通過するから
IPS(Intrusion Prevention System)とは
ネットワークやシステムに対する不正なアクセスや攻撃をリアルタイムで検出し、自動的に阻止する侵入防止システム
不正なアクセスの検知に加えて自動的に遮断するのがIPS
IDS(Intrusion Detection System)とは
ネットワークやシステムに対する不正なアクセスや攻撃を検出する侵入検出システム
不正なアクセスの検知のみを行うのがIDS、遮断は自動的に行わない
特定のコンピュータやサーバーに直接インストールされるセキュリティソフトウェア(IDS・IPS)
ホスト型IDS・IPS
ネットワーク上で動作するセキュリティアプライアンスまたはソフトウェア(IDS・IPS)
ネットワーク型IDS・IPS
クラウド上で提供されるセキュリティサービス(IDS・IPS)
クラウド型IDS・IPS
セキュリティのプラットフォーム診断を行う際に避けるべき時間帯
通常の業務時間中やシステムやネットワークが通常よりも負荷が高い時間帯
業務・サービス影響を鑑みて深夜作業などで行うのが一般的です。
令和元年秋(2019年秋)
午後1-1
SMTP(Simple Mail Transfer Protocol)でメールの送信元を指定するためのコマンド
MAIL FROM
SMTPでメールが送信される際の「送信元」アドレスを指定するフィールドであり、エラーメッセージの戻り先(バウンスアドレス)としてMAIL FROMコマンドで設定されるフィールド
Envelope-FROM
メールの最終的な送信者を識別し、一般的なメールクライアントで受信者に表示される「送信者」の情報を提供するフィールド
Header-FROM
Envelope-FROMはサーバー間の通信で重要な役割を果たし、エラーが発生した場合の戻り先を指定します。一方で、Header-FROMは最終的な受信者に表示される送信者の情報を提供します。前者は通常ユーザーには見えない情報であり、後者はメールを開いたときに確認できる送信者の情報です。
送信側のDNSに事前に登録されたIPアドレスを用いて、受信側がメールの送信元が正当かどうかを確認する送信ドメイン認証技術
SPF(Sender Policy Framework)
デジタル署名を用いて、メールの内容の改ざんと送信元が正当であるかを確認する送信ドメイン認証技術
DKIM(DomainKeys Identified Mail)
SPFとDKIMの認証失敗時に不正なメールをどう処理するかのポリシーを定める送信ドメイン認証技術
DMARC(Domain-based Message Authentication, Reporting, and Conformance)
送信側と受信側でSPFに対応している状態であっても、その間でSPFに対応している別のメールサーバがEnvelope-FROMを変えずにメールをそのまま転送する場合にSPF認証が失敗する理由
送信側のDNSサーバに設定されたIPアドレスとSMTP接続元のIPアドレスが一致しないから
送信側のDNSサーバに設定されたIPアドレスとメール転送サーバ(SMTP通信の接続元)のIPアドレスが一致しないのでSPF認証が失敗します。
DKIMでメールの送信元の正当性以外に確認できる事項
メール本文及びメールヘッダの改ざんの有無
DKIMでデジタル署名を付与するヘッダー
DKIM-Signature
DKIMで受信側メールサーバは、DKIM-Signatureヘッダのdタグに指定されたドメイン名を基に、外部DNSサーバに〇〇を要求する。受信した〇〇をもとにディジタル署名を検証する。
公開鍵
DMARCのポリシーの表明は、DNSサーバに〇〇レコードを追加する
TXT
攻撃者がどのようにN社の取引先になりすましてN社にメールを送信すると、N社がSPF、DKIM、DMARCでは防ぐことができなくなる。どのような場合か。
N社の取引先と似たメールアドレスから送信ドメイン認証技術を利用してメールを送信する。
攻撃者がN社の取引先と非常に似たドメイン名を登録し、そのドメインにSPF、DKIM、DMARCを設定すると、N社はそのメールを正当なものと誤認する可能性が高まります。例えば攻撃者が「amazon.com」のnを1つ多くした非常によく似たドメイン名で送信ドメイン認証技術(SPF、DKIM、DMARC)を利用して送信するとなりすましと見抜くのが難しくなります。
午後1-2
サイバーセキュリティ情報を共有し、サイバー攻撃への防御力を高める目的で活動する組織
ISAC(Information Sharing and Analysis Center)
攻撃者が情報持ち出しに成功した可能性が高いと判断可能な痕跡(ログ)を2つ
C&C通信にはHTTPまたはDNSプロトロルを使用する。
- グローバルIPアドレスへのHTTP通信成功のログ
- パブリックDNSサービスへのDNS通信成功のログ
ソフトウェアのデジタル署名を行う電子署名用の証明書
コードサイニング証明書
攻撃者がKerberosのTicket Granting Ticket(TGT)を偽造(または盗む)することで、ネットワーク内の任意のサービスやデータにアクセスする攻撃手法
ゴールデンチケット
コンピュータやモバイルデバイス上でキーボードの入力を監視・記録する技術
キーロガー
特定のドメイン名に関するDNSレコード(IPアドレス、メールサーバー情報など)を保持し、それに対する問い合わせに答えるサーバー
権威DNSサーバー(DNSコンテンツサーバー)
クライアントからのDNS問い合わせを受け、以前に解決した問い合わせの結果を一定期間キャッシュして再利用するサーバー
DNSキャッシュサーバー
DNSクライアントからの問い合わせに対して、必要なDNSレコードを見つけるまで他のDNSサーバーに問い合わせを続けるクエリ
再帰的クエリ(Recursive Query)
DNSサーバーが自身で保持している情報のみを用いてクライアントに答えるクエリ。他のDNSサーバーに問い合わせを行わないため、そのサーバーが持っている情報で答えられない場合は、クライアントにその旨を返す。
非再帰的クエリ(Non-Recursive Query)
DNSプロトコルを悪用して非DNSトラフィック(例えば、HTTPなど)を送受信する手法
DNSトンネリング
午後1-3
標的型攻撃対策のインシデント対応として、不審PCの電源が入っていれば電源を入れたままにしておく目的・理由
メモリ上の情報が失われないようにするため
不審PCを利用者LANから切り離さない場合に想定される会社への悪影響
- 不審PCから感染を拡大すること
- インターネットに情報を持ち出されること など
ipconfig /allコマンドを入力する攻撃者の目的
PCのIPアドレス、MACアドレスなどネットワークアダプタの詳細な情報を取得するため
ipconfig /allコマンドはIPアドレス、サブネットマスク、デフォルトゲートウェイ、DNSサーバー、MACアドレスなど、ネットワーク設定に関する多くの詳細を確認できます。
systeminfoコマンドを入力する攻撃者の目的
PC内で悪用できる脆弱性を確認するために、OSのバージョンや脆弱性修正プログラムの適用状況を確認するため
systeminfoコマンドはOSのバージョン、ビルド番号、インストール日、起動時間、プロセッサ情報、メモリ情報、ネットワークカード情報など、多くのシステム関連の詳細を確認できます。
tasklistコマンドを入力する攻撃者の目的
実行中のプロセス一覧を取得し、マルウェアの解析環境でないか確認するため
tasklistコマンドは現在実行中のプロセス(タスク)の一覧を表示します。プロセス名、プロセスID、メモリ使用量、実行中のユーザー名など、各プロセスに関する詳細な情報を確認できます。
dir /aコマンドを入力する攻撃者の目的
PCからその時点で接続可能な端末の一覧を取得するため
dir /aコマンドは指定されたディレクトリ内のすべてのファイルとフォルダーを一覧表示します。/aオプションを使用すると、通常のファイルやフォルダーに加えて、隠しファイルやシステムファイルも表示されます。
net viewコマンドで確認できる内容
同じネットワーク上に存在するコンピューター、共有リソース、プリンターなどの一覧を表示できる。ローカルエリアネットワーク(LAN)内で共有されているリソースを確認する際に有用。
PCまたはサーバの状態によっては、FWのログを使った確認ではマルウェアに感染していることを検知できない場合がある。どのような状態のときか。
マルウェアに感染したがC&Cサーバと通信する前にネットワークから切り離された状態
マルウェアに感染したPCがC&Cサーバと接続していないのは、ネットワークから切り離された状態(ネットワークケーブルを抜く、電源の切断など)かマルウェアが初期偵察状態であり、当該PCや周辺PCからの情報収集中であることが考えられる。(採点講評より)
平成31年春(2019年春)
午後1-1
あるウェブページから別のウェブページにアクセスする際に、両方のページが同じ「生成元」(Origin)に由来する場合のみ、データの読み取りや操作が許可されるポリシー
Same-Origin Policy(同一生成元ポリシー)
Same-Origin Policy(同一生成元ポリシー)によって、〇〇、〇〇、〇〇のいずれかが異なるリソースへのアクセスは制限される。
スキーム、FQDN、プロトコル
(例)Same-Originの場合はアクセス許可
→https://www.example.com
と https://www.example.com/page
(例)スキームが異なる場合はアクセス不可
→http://www.example.com
と https://www.example.com
(例)FQDNが異なる場合はアクセス不可
→https://www.example.com
と https://sub.example.com
(例)プロトコル(ポート番号)が異なる場合はアクセス不可
→https://www.example.com:443
と https://www.example.com:8080
Webページが同一生成元ポリシー(Same-Origin Policy)によるアクセス先の制限を回避するための手法
JSONP(JSON with Padding)
あるWebサイトから他のWebサイトのアクセスを制御できる仕組み
CORS(Cross-Origin Resource Sharing、クロスオリジンリソース共有)
異なるOriginのリソースにアクセスを許可する際には、CORSを使う場合があるので、理解しておいてほしい。(採点講評より)
CORSでWebブラウザが実際のリクエストを送信する前に、OPTIONSメソッドを使用して行う事前確認のリクエスト
プリフライトリクエスト
HTTPの仕様上、Access-Control-Allow-Originヘッダーフィールドに指定できるオリジンの数は〇〇だけ
1つ
複数のオリジンからのアクセスを許可する方法として、Web APIのプログラム内に許可するオリジンのリストを用意しておく必要がある。リクエストがWeb APIに送られてきたときに、そのリクエスト中の〇〇を、許可するオリジンのリストと突合し、一致した値があればその値をAccess-Control-Allow-Originヘッダーフィールドに動的に設定する方法で対応できる。
Originヘッダーフィールドの値
午後1-2
Webブラウザからメールサービスにアクセスしたつもりだったが、実際にはWebブラウザは攻撃者が用意したWebサーバに接続していた。このとき、サーバ証明書が信頼できない旨のエラーが表示されなかったのはなぜか。
HTTPで接続が開始されたから
ウェブサイトがWebブラウザにHTTPSでの接続を強制するセキュリティポリシー
HSTS(HTTP Strict Transport Security)
TOTP(Time-based One-Time Password)用のスマートフォンアプリケーションプログラムを利用した認証方式
ワンタイムパスワード認証方式(OTP認証方式)
ワンタイムパスワード認証方式は、一度しか使用できない一時的なパスワードを用いる認証方法です。具体例として、三菱UFJなどのインターネットバンキング、Googleアカウント、AWSアカウントの認証に用いられています。
WebAuthn(Web Authentication API)対応のWebブラウザおよび生体認証対応のオーセンティケータを搭載したデバイスを利用した認証方式
パスワードレス認証方式
パスワードレス認証方式は、ユーザー名やパスワードを使わずに認証を行う方法です。生体認証、デバイス認証、メール認証が利用されます。具体例として、業務でよく利用されるRSA SecurIDなどのハードウェアトークンによる認証などが挙げられます。
認証サーバでOTP認証方式を利用し、かつ、登録処理を正しく行なったとしてもメールサービスへの不正アクセスが成立する場合がある。偽サイトにおいてどのような処理が行われればメールサービスへの不正アクセスが成立するか。
OTPの入力を要求し、OTPを認証サーバに中継する処理
通信を攻撃者に中継され得る環境下では、ネットワーク上を流れる情報は、ワンタイムパスワードのような毎回変わる情報であっても、攻撃者に悪用され得ることを理解しておいてほしい。(採点講評より)
〇〇を用いてディジタル署名を生成する
秘密鍵
〇〇を用いてディジタル署名を検証する
公開鍵
WebAuthnのパスワードレス認証方式では〇〇の一致を確認することで中間者攻撃を防ぐことができる。
オリジン
午後1-3
ハッシュ関数(SHA-256など)を利用してメッセージデータが改ざんされていないことと正当な発信元から送られたことを確認するメッセージ認証コード(MAC)
HMAC(Hash-based Message Authentication Code)
ブロック暗号(AESなど)を利用してメッセージデータが改ざんされていないことと正当な発信元から送られたことを確認するメッセージ認証コード(MAC)
CMAC(Cipher-based Message Authentication Code)
認証局(CA)にデジタル証明書を発行依頼する際に必要なリクエストファイル、証明書発行要求
CSR(Certificate Signing Request)
任意のデータから128ビットのハッシュ値を生成するハッシュ関数(非推奨)
MD5
MD5はセキュリティ面で脆弱のため、非推奨です。
高速な暗号化と復号が可能なストリーム暗号(非推奨)
RC4
RC4はセキュリティ面で脆弱のため、非推奨です。
〇〇を用いてディジタル署名を生成する
秘密鍵
〇〇を用いてディジタル署名を検証する
公開鍵
ハードウェアやソフトウェアなどが備える、内部構造や内部データを解析されにくい性質
耐タンパ性
コンピュータのマザーボードに組み込まれるセキュリティチップ
TPM(Trusted Platform Module)
IoT機器の物理的な不正アクセスへの対策方法
耐タンパ性の高いTPMに機密情報を保存する
IoT機器では特に物理的な不正アクセスへの対策が重要になるのでTPMおよび耐タンパ性についてよく理解しておいてほしい。(採点講評より)
午後2-1
有線および無線LANネットワークでデバイスやユーザーのアクセス制御を行うための認証フレームワーク
IEEE 802.1X認証
インシデント対応手順に従い、マルウェアに感染したPCのHDDのコピーを作成した。コピーはファイル単位ではなく、セクタ単位で全セクタを対象とした。何をどのような手段で調査することを想定したからか。
削除されたファイルの内容を空きセクタの情報からファイルを復元するため。
セクタとは、データストレージメディア(例:ハードディスク、SSD、フロッピーディスク)上のデータを区分けする基本的な単位です。
マルウェアは、発見されないよう自らの動作や存在の痕跡を消去することが多い。消去されたファイルもセキュリティインシデント対応において、大きな手掛かりとなることが多いので証拠保全の方法について理解しておいてほしい。(採点講評より)
WPA2を使用していても、無線LANの通信が傍受されてしまうとタブレットPCのMACアドレスを攻撃者が知ることができる。その理由。
MACアドレスが平文の状態で送信されるから
WPA2であっても、MACアドレスが含まれるイーサネットフレームのヘッダ部は暗号化されないことを理解しておいてほしい。(採点講評より)
攻撃者が、自分の無線LAN端末を総務部のW-APに接続可能にする方法
端末の無線LANポートのMACアドレスを、総務部のW-APに登録済みのMACアドレスに変更する。
Wi-Fiネットワークの通信を傍受・改ざんできてしまうWPA2プロトコルに存在する脆弱性を悪用する攻撃手法
KRACKs(Key Reinstallation Attacks)
WPA2で使用される主な暗号技術を2つ
- AES
- CCMP
ブロック暗号の運用モードの一つで、各ブロックを独立して暗号化または復号化する方法(非推奨)
ECBモード
ブロック暗号の運用モードの一つで、カウンタ値を用いて各ブロックを独立して暗号化または復号化する方法
CTR(Counter)モード
一般的なブロック暗号のブロック長は、64〜128ビット程度なので、暗号化のためTCP/IPパケットをヘッダも含めて平文ブロックに分割すると、パケットがもつある特徴から、同一端末間の異なるパケットにおいて、同一の平文ブロックが繰り返して現れることが想定される。そのため、その平文の内容は高い確率で推測可能である。TCP/IPパケットの特徴。
IPヘッダ部及びTCPヘッダ部は、同一のバイト列であることが多いこと
TCP/IPパケットのヘッダのバイト列は基本的にそれぞれ20バイトずつであり、同じ端末間で通信するときに送信元と送信先は変わらないので、IPヘッダとTCPヘッダの内容が同じになってしまうことが要因です。
仮にTCP/IPパケット全体をECBモード(非推奨)で暗号化した場合、〇〇が繰り返して現れることになり、暗号の解読が用意になるおそれがある。
同一の暗号ブロック
CTRモードでは、暗号ブロックは、平文ブロックと〇〇を暗号化した値の排他的論理和である。
カウンタ値
HTTPS通信の場合、社内PCからプロキシサーバにCONNECTメソッドによって接続要求を送る時点では平文でWebサーバの〇〇名とポート番号が渡されるが、社内PCとWebサーバの間でTLSセッションが成立して暗号通信路が確立した後は、プロキシサーバでは内容を読み取ることはできない。
ホスト
CONNECTメソッドを使用する際、目的のWebサーバ(またはプロキシサーバ)のホスト名とポート番号が平文で送信されます。
FW1が発行した自己署名証明書を〇〇として全ての社内PCに登録する。
信頼されたCAのディジタル証明書