平成30年の午後Ⅱ問1は総合的な問題。複数のテーマについて設問単位で分けられるパターン。設問1がセキュアプログラミング分野のXSSで,かつ反射型とDOM-based型に分かれているが,パッと見問2でもXSSが出題されているので,セキュアプログラミングを苦手としている人は,こっちを選択したかもしれない。設問1だけだから。

 

//設問1//

 

XSSに関する設問。中でもクライアント側に埋め込まれるDOM-basedに関する者が中心。確かにある時期からこっちの攻撃が増えているからな。IPAも3種類のXSSについて言及している資料を公表しているし…。DOM-based XSSがSCの午後問題に登場したのは平成26年秋の午後Ⅱ問2。それ以来,午後重点であっさりと違いは書いているけど,もっと充実させておく必要があるな。平成18年のSVでセキュアプログラミングが出題されて以来,XSSに関する出題が一番多いし,こんな形で基本的な設問だけど,設問のひとつだけに埋め込まれた場合,それをもってしてこの問題を選択するということを回避してしまうともったいないので。

 

ちなみに,設問1(1)は,平成26年秋の午後Ⅱ問2施文3(2)と同じことが問われている。字数も同じなので解答例も同じじゃないかな。「Webサイトからの応答中に不正なスクリプトが含まれていないから」。(3)でHttpOnly属性が問われているので,Cookieのところも充実させる必要がある。

 

 

//設問2,設問3//

 

この2問は問題文に書かれている状況を読み取って解答すればいいだけの問題。短時間で正確に読む(あるいは,問題文を体系化して整理する)ことさえできれば大丈夫。設問2や設問3(2)も具体的に解答の要素を指定してくれているので,解答を一意に絞り込みやすい。設問2はP5の表3の下の記述,設問3(2)は,1箇所しかないセキュリティ対策基準に関する記述と,表3で確定できる。

 

 

//設問4//

 

情報漏えい対策が問われている。コンテナは…これ,SecureSoft社のコンテナだよね。ただ,それを知らなくても懇切丁寧に説明してくれているので解答は可能。(1)は図7の最後だろうし,(2)は図7のメディアの話を書けばいい。(3)は「製作パートナーからDMZのDRMサーバへのアクセスだけを通過させる」っていう抽象的な表現ではダメかな?

 

 

//感想//

 

設問1で新しい切り口を見せてビビらせるのは,よくやること。午前問題でもそうだよね。最初の数問が新規。ただ,それに惑わされることなく…あるいは設問1は落としたとしても残りで点数が取れると判断すれば,この問題を選んだ方が良いかもしれない。

 

しかし,解答用紙の面積比を見ると…下手すりゃ設問1で30点(10点×3)になる可能性がある。となると最低1問,できれば2問はここで稼ぎたい。それを見極める眼が必要。

 

ただ,XSSがセキュアプログラミングのカテゴリとはいえ,ソースの理解までは必要ないことから,今後はXSSに関してはセキュアプログラミングカテゴリから,気持ち外してもいいかも。SQLの知識があればSQLインジェクションも同じように考える。あるいはHTMLに関しての基礎知識を付けてセキュアプログラミングから切り離して意識するか…プログラマ以外のエンジニアは,そこを考えるべきだろう。

 

もちろんベストは,CとJavaに関してソースが読める程度とセキュアなコーディングまで押さえておくことかな。ちょっとそのあたりの資料を別途用意して公開することも検討します。

 

(以上)