正答2
解説
正解は2です。
クリックジャッキングは、正規のWebページを透明にしてフレーム内に読み込み、罠のページに重ねる攻撃です。
利用者はボタンを押したつもりで、背後の正規ページの操作をさせられてしまいます。
【選択肢別解説】
1:× X-Content-Type-Optionsは、Webブラウザがファイルの種類を内容から推測する動作(MIMEスニッフィング)を止めるためのヘッダです。
内容の誤認によるクロスサイトスクリプティングなどの対策であり、クリックジャッキングの対策ではありません。
2:○ X-Frame-Optionsは、ページを他のサイトのフレーム内に表示することを禁止・制限するヘッダです。
フレームへの読込みを拒否すれば、透明なフレームを重ねる手口が使えなくなります。
3:× HTMLタグを無害な文字列に置き換える処理は、エスケープ処理と呼ばれます。
これはクロスサイトスクリプティングの対策です。
4:× 入力文字数の上限をチェックすることは、バッファオーバフローなどの不正な入力への対策です。
フレームを重ねる攻撃は防げません。
【ポイント】
クリックジャッキングの対策は、X-Frame-OptionsのDENYやSAMEORIGINの指定です。
現在はContent-Security-Policyのframe-ancestorsでも同様の制御ができます。