728x90
300x250
[PHP] PHP 5.6 - xFrame 공격 방지하기(Clickjacking 피하기)

 

이번에 소개할 것은 xFrame 기반의 공격을 방지하는 방법에 대해서 소개하겠다.

 

대상 프로그램: PHP 5.6

 


1. 클릭 재킹(Clickjacking)

 

클릭 재킹 (사용자 인터페이스 교정 공격, UI 교정 공격, UI 교정)은 웹 사용자를 클릭하여 사용자가 클릭 한 것으로 보이는 것과 다른 것을 클릭하여
기밀 정보를 공개하거나 자신의 컴퓨터를 제어하는 악의적인 기법이다.


겉보기에 무해한 웹 페이지를 클릭해라. 이것은 다양한 브라우저와 플랫폼에 걸친 취약점인 브라우저 보안 문제이다.

클릭 잭은 다른 기능을 수행하는 것으로 보이는 버튼을 클릭하는 것과 같이 사용자의 지식없이 실행할 수 있는 임베디드 코드 또는 스크립트 형태를
취한다.
"클릭 재킹"이라는 용어는 2008년에 Jeremiah Grossman과 Robert Hansen이 만들었다.
클릭 재킹(Clickjacking)은 컴퓨터가 그 권한을 오용하는 것에 순진하게 속아 넘어갈 때를 기술하는 용어인 혼란스러운 대리 문제의 한 예이다.


[설명]
HTML 웹 페이지의 겉보기에 무해한 기능을 사용하여 예기치 않은 작업을 수행 할 수 있으므로 클릭 재킹이 가능하다.

클릭 재킹 페이지는 숨겨진 링크를 클릭하여 원치 않는 작업을 수행하도록 사용자를 속인다.
클릭 재킹 된 페이지에서 공격자는 투명 레이어에서 다른 페이지를 로드한다.
사용자는 보이지 않는 페이지에서 실제로 작업을 수행하는 동안 보이는 버튼을 클릭한다고 생각한다.
숨겨진 페이지는 인증 된 페이지 일 수 있다. 따라서 공격자는 사용자가 의도하지 않은 작업을 수행하도록 속일 수 있다.
사용자가 숨겨진 페이지에서 진실로 인증되었으므로 나중에 공격자를 추적 할 방법이 없다.

 

결과적으로 웹 브라우저가 가지고 있는 취약점을 막는 것이다.

 


2. php코드에 클릭 재킹 피하기 코드 삽입하기

 

<      ? php

header("Content-Type: text/html; charset=UTF-8");
header('X-Frame-Options: DENY');  // 'X-Frame-Options'
// header('X-Frame-Options: ALLOW-FROM https://youtube.com/');

?    >

 

이런 형태로 삽입할 수 있다.

 


3. 참고자료(Reference)

 

1. Clickjacking, Last Modified 07-27-2018, 08:17 (UTC)., Accessed by 2018-07-31, https://en.wikipedia.org/wiki/Clickjacking, Wikipedia.

2. X-Frame-Options SAMEORIGIN blocking iframe on my domain, Last Modified, Accessed by 2018-07-31, https://stackoverflow.com/questions/12182768/x-frame-options-sameorigin-blocking-iframe-on-my-domain, Stack Overflow

3. header, Last Modified, Accessed by 2018-07-31, http://php.net/manual/en/function.header-remove.php, PHP.net

4. X-Frame-Options, Last Modified, Accessed by 2018-07-31, https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/X-Frame-Options, MDN(Developer Mozila)

반응형

+ Recent posts