반응형
Click jacking은 웹 브라우저 화면에 출력되는 내용에 HTML, CSS , JS등과 같이 화면 출력에 영향을 미치는 요소들을 이용하여 사용자의 눈을 속여 사용자의 클릭을 유도하는 공격 방법.
외부 페이지 리소스를 불러올 수 있는 태그 엘리먼트 (<frame>, <iframe>, <object>, <embed>, <applet>)를 사용.
- 사용자 클릭을 유도하는 페이지 구성 후에 그 페이지 위에 iframe등의 태그로 누르게 할 페이지를 로드.
- 그리고 CSS opacity(투명도 조절) 등의 방법을 통해 숨겨놓음.
- iframe 태그가 웹 브라우상에서 더 앞에 위치.
ex ) 광고 끄기 버튼 앞으로 송금 버튼 iframe으로 숨겨놓음.
Mitigation
부모 페이지의 URL을 제한
X-Frame-Options
HTTP 응답 헤더를 통해 DENY, SAMEORIGIN 두 개의 값으로 설정 가능.
DENY | 부모 페이지 URL 상관없이 모두 차단. |
SAMEORIGIN | 부모 페이지 URL이 Same Origin이라면 허용. |
EX) X-Frame-Options: DENY
frame-ancestors
Content Security Policy (CSP) frame-ancestors 지시어를 통해 값 설정 가능.
frame-ancestors 지시어는 CSP를 HTTP 응답 헤더를 통해 설정해야 함. <meta> 태그로는 설정 불가.
'none' | X-Frame-Options DENY와 동일 |
'self' | X-Frame-Options SAMEORIGIN과 동일 |
http://, https:// | scheme이 같으면 모두 허용 |
*.dreamhack.io, dreamhack.io, https://dreamhack.io | host나 scheme+host가 같으면 모두 허용, 와일드카드(*)를 사용할 수 있음. |
EX) Content-Security-Policy: frame-ancestors http://dreamhack.io *.google.com https://
(http://dreamhack.io와 google.com의 모든 서브도메인 그리고 https:// scheme을 모두 허용)
반응형
'Security' 카테고리의 다른 글
[Webhacking] SQL Injection (0) | 2021.09.20 |
---|---|
[Webhacking] server-side basic (0) | 2021.09.20 |
[Webhacking] open redirect (0) | 2021.09.19 |
[Webhacking] CSRF (cross site request forgery) (0) | 2021.09.19 |
[Webhacking] XSS (cross site scripting) (0) | 2021.09.19 |