問20 フォームのデータの置き場

情報処理​安全確保​支援士 令和7年度 春期 午前II、全25問のうちの問20。

出典:令和7年度 春期 情報処理安全確保支援士試験 午前II 問20(選択肢の表を文に組み直した)

Web ページ内の HTML フォームに入力されたデータが Web サーバに送られる際には,HTTP プロトコルの GET メソッド又は POST メソッドを用いたリクエストメッセージが使用される。このとき,入力されたデータはリクエストメッセージのどの部分に含まれるか。ここで,HTTP のバージョンは HTTP/1.1 とし,リクエストメッセージは,リクエスト行,ヘッダー,メッセージボディの順で構成されているものとする。

  1. アGET メソッドが使用される場合 リクエスト行,POST メソッドが使用される場合 ヘッダー
  2. イGET メソッドが使用される場合 リクエスト行,POST メソッドが使用される場合 メッセージボディ
  3. ウGET メソッドが使用される場合 ヘッダー,POST メソッドが使用される場合 ヘッダー
  4. エGET メソッドが使用される場合 ヘッダー,POST メソッドが使用される場合 メッセージボディ
答えと解説を開く

正解はイです。

GET では、フォームのデータは URL の後ろにクエリ文字列 (?name=value の形) として付けられ、リクエスト行の中に入ります。POST では、データはヘッダーのあとのメッセージボディに入ります。正解はイです。

ほかの選択肢が違う理由

  • アGET のリクエスト行は合っていますが、POST のデータはヘッダーではなくメッセージボディに入ります。
  • ウフォームのデータは、どちらのメソッドでもヘッダーには入りません。GET はリクエスト行、POST はメッセージボディです。
  • エPOST のメッセージボディは合っていますが、GET のデータはヘッダーではなく、リクエスト行の URL に付きます。

仕組み

GET の URL は、ブラウザの履歴、サーバのアクセスログ、ほかのサイトへ移るときの Referer に残ります。だから、パスワードなどの秘密を GET で送ってはいけません。

また、GET は「読むだけ」に使い、登録や削除のように状態を変える操作は POST などで受けるのが決まりです。リンクを開いただけで操作が起きる作りは、CSRF などの攻撃に付け込まれやすくなります。

この問に出る言葉