min117の日記

初期desireもち。趣味Mac,メインFedora,仕事xp。

情報処理試験 平成29年秋期 情報処理安全確保支援士(午前 Ⅱ )

 

午前 Ⅱ は 40分。午前 Ⅰ より易しい気がした。

min117.hatenablog.com

というか、この 東京電機大学 の問題集の「よく出る」だけやっておけば、ほぼ全問正解できそう。かぶる問題ばっかだった。

午前 Ⅱ は 10:50 - 11:30 の 40分。こちらも 2問で3分 を目安に時計を見ながら受験した。ちなみに試験開始までの15分間「ただ待っている」のではなくマークシートのどこに何を書いて何をマークするか脳内シミュレーションしておくとよい。開始直後に1分くらい稼げるし、一番大事な受験番号のマークが正確になるから。

f:id:min117:20171015220807j:plain

問1

エで回答。

 設問でわざわざ「CRL(Certificate Revocation List)」と書いてくれているとおり、何かの「リスト(一覧)」らしい。

 期限切れ(無効)になったものは放っておけばいいのであって、わざわざ「リスト」にして管理するはずもない。なので、アとイは無視。

 期限内(で有効なはず)なのに失効した証明書(ハッキングでも受けたのか?)は、有効だと思って誰かが使っちゃうかもしれないからリストで管理して公開・掲載する必要がある。だから、ウかエ。

 ウ:公開鍵(長ったらしい文字列)をわざわざそのままの形でリスト管理するか?しないと思う。

 エ:とすれば、シリアル番号(一意の番号)を振って管理するだろう。

 だからエ。あと、Revocation の意味また調べる。

問2

ウで回答。

 これは分からない。冒頭の本をもっと勉強しとけばよかった。OCSPとあるけど、Pは Protocol(手順)だろうか。

 ア:「進捗状況を問い合わせるプロトコル」だとすれば、これかもしれない。

 イ:それっぽいが、分からない。

 ウ:失効状態を問い合わせをする手順があってもいい。これにする。

 エ:これもアと似ていてあってそう。迷ったが、今回はウにした。

問3

アで回答。

 Webサイト間で「情報交換」するフレームワークは?という設問。

 ア:SAMLのMLは、XMLに似ている。Lは Language の略と思う(例えば HTML は HyperText Markup Language)。ってことは、情報交換に使う言語を規定していると思われる。だからたぶんコレ。

 イ:SOAP は、何かしら(縦に順番に流れる)手順を規定した言葉だと記憶している。ちなみに病院に行った時に医者が使っているパソコン(電子カルテ)で SOAP と言えば、患者の主訴(Subject)と客観的症状(Objective)を縦に書いたものを指す。とすると、設問にある「情報交換」(横に情報を流す)とはイメージが違う。

 ウ:XKMS は何か知らない。けど、昔 Windows7 を仮想環境で展開しようとした時に、ライセンス情報を一元管理するサーバ(キーマネジメントサーバ、Key Managemnet Server)を KMS と呼んだのを思い出した。とすれば、何らかのキー(鍵)を管理する仕組みであって、設問にある「情報交換」とはイメージが違う。

 エ:XML Signature の「シグネチャ」は、たしか Sign(サイン)の派生語だったはず(昔、Ace of Baseというグループが Sign という良い歌を歌っていたっけ)。「サイン」ということは「印」であって、何かの目印をつけること(スタンプを押すような)なので、設問にある「情報交換」とはイメージが違う。

 なので、ア(だと思う)。

f:id:min117:20171015220811j:plain

問4

ウで回答。

 ハッシュと言えば暗号化。ビットコインもまさにこれだし。

 ア:256の2乗(が発見困難?)。んなわけない。一瞬で解けてしまう。ヘタすると暗算でもできる(256*256 → 65536)。こんな簡単な計算でハッシュが一致してしまったら、暗号化にならない。ビットコインなら盗まれまくってしまう。

 イ:2の256乗(が発見困難?)。んなわけない。こっちだって、パソコンで十分計算できるレベルだから、暗号にならない。例えば、ARMプロセッサ(非力)の RaspberryPi に計算させてみたって一瞬で解ける。これじゃ暗号にならない。

>>> 2**256 115792089237316195423570985008687907853269984665640564039457584007913129639936

f:id:min117:20171015224612p:plain

 ウ:ハッシュが与えられたときに、元のメッセージの探索に要する計算量が大きい(から元のメッセージが復元できないつまり暗号化できる)ことを「衝突発見困難性」という。たぶんこれが正解だろう。

 エ:「ハッシュが一致する二つのメッセージの探索に要する計算量」ではないと思う。二つのデータのハッシュをとってそれを付け合わせる、なんてことは実務でもあまり聞かないし。

問5

エで回答。

 これは簡単すぎた。エに決まってる。Exploit と言えば、色々と脆弱性テスト(ペネトレーション)を試している身とすれば日常用語。ちなみに、ネットで Metasploit Framework と検索すると色々と面白いものが見れる。よい本もある。

 色々試した結果はこのへん。

min117.hatenablog.com

min117.hatenablog.com

f:id:min117:20171015220815j:plain

問6

ウで回答。

 カミンスキー攻撃?知らない。「カミンスキー(Kaminsky)」ってたぶん人名だろうし、ロシアのセキュリティ企業「カスペルスキー」にそっくりだから、たぶんロシアのハッカーがよくやる攻撃なんだろうと予想。

 ア:DNSの攻撃を避けるためにサーバ2台にするとなればコストが掛かりすぎる。直感的に「対策」としては選びたくない。のでアは無いな、と。

 イ:MXレコードに認証処理をかけるってことは、メールの正当性を担保する手段であって、たしかメールの設定でやれたはず。けど、受信がだいぶ遅くなったりする。いずれにしても、設問にある「DNSに対する」攻撃、から少しズレた(メールの)話になっちゃうので、これも違うだろう。

 ウ:DNS問い合わせ時にポートを変えるとなると負荷が高そうだけど、ハッキングの対策としてはありえそう。これにする。

 エ:ブレースホルダつまりカッコ[ とか ]を使って、SQLに埋め込まれた不正ない命令文を無効化するってのは、Webサーバで行う対策であって、DNSとは何ら関係なさそうに思う。

問7

イで回答。

 Smurf攻撃?知らない。これも予習しとけば良かった。知ってるだけで解ける勿体無い問題。

 ア:ICMPつまりPINGを大量に送りつける?そんなの攻撃のうちに入らない。PINGなんて、サーバ側に行く前にファイアウォールとかで遮断されてるのが(どの企業でも行政でも)普通だし、仮にサーバに届いたとしても、ICMPの負荷なんて知れている。なのでアはありえない。

 イ:SYNパケットの大量攻撃。これはあり得そう。SYN攻撃ってのはよく聞く。

 ウ:UDPか。これもあり得そうだけど。でも UDP(Unit Data Protocolだったか)は、もともと「届くかはよく分からないし、届かなくても構わない(もっかい再送すればいい)」という通信用途で使うはず。例えば映像の配信とか。通信(の一部が届かなくて)映像が一部乱れても、見る側はそんなには困らない。てことは、それを大量に送りつけても「攻撃」なのか、そもそも「大容量の映像を送ってきた」のか判断できないし、仮に攻撃だとしても遮断してしまえばいいだけ。UDPが攻撃になるとも思えない。のでこれは違いそう。

 エ:大量の電子「メールを」送りつけてもそれは単なる「迷惑メール」であって、「DoS(パケットを送ってサービスを停止させる)」ではないと思う。だからこれも違う。

問8

イで回答。

 これは何となく合ってると思う。暗号化装置の横に居て、装置のファンの回り方とかランプのチカチカの激しさとか消費電力とか、周囲の(物理的な)状況を見て何かを知ろうとする。涙ぐましい方法だけど、以外にいろんな情報を盗み出せそうな気がする(エニグマってこんな感じだったのだろうか…)。

 いずれにしても、装置のすぐ隣(サイド)にいて、いろんな方法(チャネル)を試すのだから、サイドチャネル。これだろう。

f:id:min117:20171015220818j:plain

f:id:min117:20171015220822j:plain

f:id:min117:20171015220828j:plain

f:id:min117:20171015220832j:plain

f:id:min117:20171015220835j:plain

f:id:min117:20171015220839j:plain

f:id:min117:20171015220843j:plain

f:id:min117:20171015220848j:plain

f:id:min117:20171015220852j:plain

f:id:min117:20171015220855j:plain