詳しい解説 | セキュリティスペシャリスト 25年秋 午後T-問題2

セキュリティスペシャリスト試験の25年度秋 午後T問題2の主催者発表解答を紹介します。またオリジナルの解説も掲載します。


スポンサード リンク

主催者解答 解説
設問1 (1) 秘密情報ではないという特性 端末識別番号(個体識別情報、個体識別番号)は携帯電話などデバイスごとに割り当てられる固有の番号です。ただし秘密情報ではなく、外部から簡単に表示させることが可能です。
設定によっては、Webアプリケーションからの要求に自動的に応答する形式で端末識別番号を送信します。またDocomoの一部の機種では「*#06#」と入力することにより簡単に番号を表示させることが可能です。ただし機種によりサポートされていない可能性があります。

IMEI:International Mobile Equipment Identifier
(2) AES・・・共通鍵暗号方式。
HMAC・・・メッセージ認証符号。ハッシュ関数を元に算出する。
RIPEMD・・・ハッシュ関数。
SHA-256・・・ハッシュ関数。

問題文の「鍵付きハッシュ関数」はHMACのみです。HMACは秘密鍵とハッシュ関数を組み合わせます。
(3) スマホアプリをリバースエンジニアリングする。 Bさんの提案は「スマホアプリ内に共通で専用の秘密鍵を埋め込み、携帯電話の端末識別番号を元にハッシュ化して使用するというもです。ただしこの場合、秘密鍵はスマホアプリ内にハードコードされるため、アプリの解析により割り出される可能性が高くなります。通常、共通して使用する秘密鍵はユーザ側のアプリや端末に組み込むことは非常に危険です。
設問2 スマホアプリでメールアドレスを選択して、それをWebAPに送信する。 アドレス帳すべてのメールアドレスをWebAPに送付することは危険です。(送信する経路での盗聴や、WebAP側での脆弱性による漏洩などの被害が大きいため。)漏洩した場合のリスクを考慮し、最小限のメールアドレスをWebAPに送付すべきです。
設問3 (1)-1 パラメータ:YoyakuCode
内容:利用者WのYoyakuCode
他人が予約したYoyakuCodeを入力した場合、表示されてしまう問題があります。一種の「強制ブラウジング」の脆弱性でです。
(1)-2 パラメータ:DateTime
内容:送信時とのずれが5分未満の時刻

1)と2)は順不同
問題文をよく読むことです。「この問題は,ある利用者(以下,利用者Vという)が,数日前に自分が発した予約確認のリクエスト中に含まれるパラメタのうちの二つのパラメタの値を変更して送信することによって,別の利用者(以下,利用者Wという)の予約情報を取得することができるというものであった。」と記載されています。よってVを表示したのは明らかに5分以上前のため、DateTimeの時刻も修正する必要があることが分かります。修正しないで送付した場合は「(e)  DateTimeの値とサーバ側の時刻とのずれが5分以上の場合はアプリケーションエラーを返す。 」が発生します。
(2) YoyakuCodeの値がAuthKeyに対応する予約明細コードでないときはアプリケーションエラーを返す。 このシステムの大きな問題点は、主にAuthKeyさえ認証されてしまえばYoyakuCodeを表示することが可能という点です。YoyakuCodeは月ごとに連番で採番されるため簡単に他人のYoyakuCodeを推測することが可能です。ゆえにYoyakuCodeとAuthKeyを関連付けし、関連しないYoyakuCodeは表示しない対策が有効となります。
ちなみにYoyakuCodeを推測不能なランダムな数字にするという対策も考えられますが、YoyakuCodeさえ分かれば表示されるため正解とはならないでしょう。

スポンサード リンク


(*)解答は必ず主催者発表を参照してください。仮にこのページに記述に誤りがあった場合でも、いかなる人物、団体も時間的損失、金銭的の損失その他あらゆる損失の補償もいたしません。

[情報処理セキュリティスペシャリスト過去問題の解説一覧に戻る]