X-Frame-Options, 클릭재킹(Clickjacking)을 막는 방법

재폰지밥·2025년 8월 19일

공부

목록 보기
13/32
post-thumbnail

🖼️ X-Frame-Options, 클릭재킹(Clickjacking)을 막는 방법

웹 사이트 보안을 위협하는 공격 중 하나는 클릭재킹(Clickjacking)입니다.
겉보기에는 정상적인 페이지처럼 보이지만, 실제로는 투명한 iframe 위에 덮여 있어 사용자가 원치 않는 동작을 하게 만드는 공격 기법입니다.

이를 막는 대표적인 방법이 X-Frame-Options 헤더입니다.


1️⃣ 클릭재킹이란?

  • 공격자가 웹사이트를 iframe으로 감싸서 보여줌
  • 사용자는 정상 사이트인 줄 알고 클릭
  • 실제로는 공격자가 의도한 버튼이나 링크 실행
  • 예: "좋아요" 버튼을 위장해 클릭 유도, 계정 설정 변경 등

2️⃣ X-Frame-Options란?

브라우저가 특정 페이지를 iframe 안에서 렌더링할 수 있는지를 제어하는 보안 헤더


3️⃣ 주요 옵션

  • DENY
    → 어떤 경우에도 iframe에 포함 불가

  • SAMEORIGIN
    → 같은 도메인에서만 iframe 허용

  • ALLOW-FROM
    → 특정 도메인에서만 허용 (하지만 일부 브라우저는 미지원)


4️⃣ 설정 예시

X-Frame-Options: DENY

X-Frame-Options: SAMEORIGIN

5️⃣ 한계와 보완

  • 최신 브라우저에서는 Content-Security-Policy: frame-ancestors를 더 권장

  • X-Frame-Options는 과거 호환성 유지 목적도 있음


🧠 정리

  • 클릭재킹은 사용자의 눈을 속이는 공격

  • X-Frame-Options는 이를 방어하는 기본적인 방법

  • 최신 환경에서는 CSP와 함께 사용하는 것이 안전

profile
열심히 살기

0개의 댓글