![見出し画像](https://assets.st-note.com/production/uploads/images/156139135/rectangle_large_type_2_e37814911b2ff7f1e7040c9b5337f4a7.jpeg?width=1200)
【2022年春期】情報処理安全確保支援士 午後I試験【問2】
【出題趣旨】
IoT機器の普及に伴い、利用者が専門知識なしに容易に機器を設置できるようになる中、開発者がセキュリティを考慮していなかったり、利用者が脆弱性修正プログラムを適用していなかったりするケースが増えている。
本問では、ルータやNASを題材として、IoT機器のインターネット接続に使われる技術、仕組みを理解するとともに、脆弱性を作り込んでしまうことの多いWeb機能について、セキュリティの観点から正しく実装する能力を問う。
問1(1)
DNSレコードに関する問題です。
IPアドレスとホスト名の関連を定義するのはAレコード、300秒とレコードの有効期間を定義するのはTTL(Time To Live)です。
![](https://assets.st-note.com/img/1727604966-Ux0cYIXObRwMvl1NqgEiuTpa.png)
よって、正解は以下となります。
a = ア:A
b = エ:TTL
他の選択肢も確認しておきましょう。
MX
DNSのリソースレコードの種類。
ドメインとメールサーバの関連を定義します。TLS
Transport Layer Security
SSLの後継規格で、トランスポート層での通信の暗号化を行う。HTTPと組み合わせ"HTTPS"として使用するのが最も有名。TTY
Unix系のコマンドでTeleTYpeWriterの略。
接続端末のデバイスファイル名を表示するコマンドです。TXT
DNSのリソースレコードの種類。
ドメインやホストに任意のテクスト情報を定義します。
SPF、DKIMなどの認証技術にも使用されます。
問1(2)
WAN側で、UPnP機能が有効になった場合のセキュリティ上の危険性を回答する問題です。UPnP機能は認証なしでリクエストを受け付けることを可能にするプロトコルです。
![](https://assets.st-note.com/img/1727605367-ZV2vMumRIB4fzSDbPaTQji60.png)
現状はLAN側の機器からであれば、ポートフォワーディングの設定とファイアウォール機能の設定の変更が可能であることが分かります。これらのリクエストがWAN側からもできることになるので、全て拒否されているインバウンド(LAN向けの通信)が全て許可にされると外部から内部ネットワークへ向けてアクセス可能となってしまいます。
模範解答は 「外部からLAN側への通信の許可設定が変更される。」 です。
問1(3)
ポイントは以下です。
仮にPCがランサムウェアに感染し、暗号化を実行していた場合、rootディレクトリ配下は管理者権限がないと実行ができません。
![](https://assets.st-note.com/img/1727606604-IP50Hju3yLwUNd2XakzhoSTC.png)
模範解答は 「PCからのファイル操作ではアクセスできない領域のファイルが暗号化されたから」 です。
問2(1)(2)
脆弱性1及び2の名称を解答する問題です。
脆弱性1はURLに%2F(= "/")を入力し、通常アクセスできないフォルダやファイルにアクセスする攻撃です。
他にURLを悪用する手法としてはHTTPヘッダインジェクションなどがありますが、これは不正なパラメータを%0D%0A(= /r/n 改行コード)後に格納して攻撃対象に送付する攻撃手法です。
脆弱性2は任意のOSコマンドと記載があるので、OSコマンドインジェクションです。
![](https://assets.st-note.com/img/1727606880-Nrwy0YjBWHcePMu2SgDfTz1m.png)
![](https://assets.st-note.com/img/1727606908-ZOtETF9l05gQSAfVMsBv8pzm.png)
よって、正解は以下となります。
c = "パストラバーサル"
d = "OSコマンドインジェクション"
問2(3)
まず、エンコードとデコードについて簡単に理解しておきましょう。
エンコードはデータ送信時にデータを変換する処理です。データを受け取った側はエンコードされたままではデータの読み取りができませんので、最優先は復元処理であるデコードです。
続いては比較か、正規化になりますが、パス名が相対パスで送付されていた場合は正規化を実施しないと比較に失敗する可能性があります。
デコード → 正規化 → 比較 が正しい手順です。
よって、正解は以下となります。
ア:URLデコード → ウ:パス名の正規化 → イ:除外リストとの比較
問3(1)
アクセスログを確認してみます。
ヘッダ部の情報のみで、ボディ部についてはログに情報がないことが推測できます。GETメソッドとPOSTメソッドの大きな特徴の違いとしてはボディ部があるかどうかです。
![](https://assets.st-note.com/img/1727608750-KtjbGJyTfA6e0qVLQHF1dEDR.png)
模範解答は 「POSTメソッドで送信したボディがアクセスログに残っていなかったから」 です。
問3(2)
sudoコマンドはrootユーザーや他のユーザ権限でコマンドを実行します。
sudo 権限設定ファイルは「/etc/sudoers」です。
図4の設定ではユーザ(www)はパスワードなしでtarコマンドを実行可能になっています。
![](https://assets.st-note.com/img/1727610775-aQzPk2r1yMDJnY8uUp7ibhLS.png)
tarコマンドは
模範解答は 「sudoコマンドの設定ファイルで、tarコマンドのオプションを受け付けないように設定する。」 です。
問4
![](https://assets.st-note.com/img/1727612593-4BQ6pwoYOJ8HudIgTbGKlNyt.png)
SEO対策等の経験がないと厳しい問題です。
<meta name="robots">
メタデータとして検索エンジンのクローラの動きについて定義します。
all
デフォルト値
インデックスの登録やクローラの動作に制限はありません。noindex
設定したページのインデックス登録を拒否。
検索結果に表示されません。nofollow
リンク先の外部ページとの関連をクロールさせない設定
検索結果には表示されます。none
noindex + nofollownoarchive
検索エンジンにキャッシュを残さない設定nosnippet
スニペットを表示しない設定
*スニペットは検索結果で表示されるWebページの要約文notranslate
ユーザの使用言語と異なる場合に、検索結果に表示しない設定noimageindex
全ての画像をインデックスに登録しない設定。
etc
よって、以下のどちらかが正解となります。
・noindex
・none