클릭재킹

Clickjacking
클릭잭킹 공격에서는 사용자에게 잘못된 인터페이스가 표시되며, 여기서 입력이 보이지 않는 것에 적용됩니다.

클릭잭킹(사용자 인터페이스 수정 공격 또는 UI 수정으로 분류됨)은 사용자인식하는 것과는 다른 무언가를 클릭하도록 사용자를 속이는 악의적인 기술입니다.이것에 의해, 기밀 정보가 공개될 가능성이 있습니다.또, 다음과 같이, 악의는 없는 오브젝트를 클릭하면서, 다른 사람이 컴퓨터를 제어할 수 있게 됩니다. [1][2][3][4][5]페이지

클릭잭킹은 컴퓨터가 권한을 [6]남용하도록 속이는 혼란스러운 대리 문제의 한 예입니다.

역사

2002년에는 웹 페이지를 통해 투명 레이어를 로드하여 사용자가 눈치채지 못하는 사이에 사용자의 입력이 투명 레이어에 영향을 미치는 것이 가능하다는 것을 알게 되었습니다.그러나,[7] 이것은 2008년까지 주로 주요 이슈로 무시되었다.

2008년 Jeremia Grossman과 Robert Hansen은 Adobe Flash Player가 클릭잭이 가능하여 공격자가 사용자 [7]모르게 컴퓨터에 액세스할 수 있음을 발견했습니다.

"클릭잭킹"이라는 용어는 "클릭"과 "히잭킹"이라는 단어의 합성어인 제레미아 그로스만과 로버트 [8][9]한센에 의해 만들어졌다.

유사한 유형의 공격이 더 많이 발견됨에 따라, 이 용어의 초점은 ""UI 리드레싱"은 클릭잭 [7]자체뿐만 아니라 이러한 공격의 범주를 설명하도록 변경되었습니다.

묘사

클릭잭킹의 한 가지 형태는 응용 프로그램 또는 웹 페이지에 있는 취약성을 이용하여 공격자가 사용자의 컴퓨터를 조작하여 자신의 이익을 도모할 수 있도록 합니다.

예를 들어 클릭잭된 페이지는 숨겨진 링크를 클릭하여 사용자가 원치 않는 작업을 수행하도록 속입니다.클릭잭된 페이지에서 공격자는 투명 레이어의 원래 페이지 위에 다른 페이지를 로드하여 사용자를 속여 액션을 취하도록 합니다.그 결과는 사용자가 예상한 것과 다릅니다.사용자가 실제로 보이지 않는 페이지에서 액션을 수행하면서 레이어 아래 페이지의 버튼을 클릭하는 동안 사용자는 보이는 버튼을 클릭한다고 생각합니다.숨겨진 페이지는 진짜 페이지일 수 있습니다.따라서 공격자는 사용자가 의도하지 않은 액션을 수행하도록 사용자를 속일 수 있습니다.사용자는 숨김 페이지에서 실제로 인증되었기 때문에 나중에 공격자에게 이러한 액션을 추적할 방법은 없습니다.

클릭잭킹 카테고리

  • 클래식: 대부분 웹 브라우저[7] 통해 작동
  • Likejacking : 페이스북의 소셜 미디어 기능[10][11] 활용
  • 중첩됨: Google+[12]영향을 미치도록 맞춤화된 클릭잭킹
  • 커서잭킹: 커서의 모양과 위치를[7] 조작합니다.
  • Mouse Jacking : 리모트 RF[13] 링크를 통해 키보드 또는 마우스 입력 주입
  • 브라우저 없음: 브라우저를[7] 사용하지 않음
  • Cookiejacking: 브라우저에서[7][14] cookie
  • 파일재킹: 영향을 받는 디바이스를 파일서버로서[7][15][16] 셋업 할 수 있습니다.
  • Password Manager 공격: 브라우저 자동[7] 채우기 기능의 취약성을 이용한 클릭잭킹

클래식

클래식 클릭잭킹은 공격자가 웹 페이지의 숨겨진 레이어를 사용하여 사용자의 커서가 수행하는 작업을 조작함으로써 사용자가 실제로 [17]클릭하는 항목에 대해 잘못 알고 있는 상황을 말합니다.

사용자는 뉴스 항목에 대한 비디오 링크가 포함된 이메일을 받을 수 있지만, 아마존의 제품 페이지와 같은 다른 웹 페이지는 뉴스 비디오의 "재생" 버튼 위 또는 아래에 "숨겨질" 수 있습니다.사용자는 동영상을 재생하려고 하지만 실제로는 아마존에서 제품을 구입합니다.해커는 클릭 한 번밖에 전송할 수 없기 때문에 방문자가 Amazon.com에 로그인하고 원클릭 오더가 활성화되어 있다는 사실에 의존합니다.

브라우저 간 비호환성으로 인해 이러한 공격의 기술적 구현이 어려울 수 있지만, BeEF나 Metasploit Project와 같은 많은 도구는 취약한 웹 사이트의 클라이언트를 거의 자동으로 이용합니다.클릭잭킹은 XSS[18][19]같은 다른 웹 공격에 의해 촉진되거나 촉진될 수 있습니다.

라이크재킹

Likejacking은 웹 사이트를 보고 있는 사용자를 속여 Facebook 페이지나 다른 소셜 미디어 게시물/계정을 의도적으로 "좋아요"[20]라고 속이는 악의적인 기법입니다."likejacking"이라는 용어는 코리 발루(Corey [21]Ballou)가 "Web 상의 모든 것을 좋아"하는 기사에 올린 댓글에서 유래했다. 이것은 페이스북의 "좋아요" [22]버튼에 대한 악의적인 활동의 가능성을 설명하는 최초의 문서화된 게시물 중 하나이다.

IEEE Spectrum 기사에 따르면, 페이스북의 해커톤 [23]중 하나에서 likejacking의 해결책이 개발되었다고 한다.Facebook Like [24]버튼에 있는 Likejacking의 가능성을 피하기 위해 "좋아요" 북마크렛을 사용할 수 있습니다.

네스트된

네스트된 클릭재킹은 기존의 클릭재킹과 달리 원래 무해한 웹 페이지의 두 프레임 사이에 악의적인 웹 프레임을 삽입함으로써 작동합니다.프레임 페이지 프레임과 상단 창에 표시되는 프레임입니다.이것은 HTTP 헤더의 취약성으로 인해 동작합니다.X-Frame-Options이 요소에 값이 있는 경우SAMEORIGIN 브라우저는 위의 2개의 레이어만 체크합니다.검출되지 않은 채로 이들 2개의 사이에 프레임을 추가할 수 있다는 것은 공격자가 이를 이용해 이익을 얻을 수 있다는 을 의미합니다.

과거에 Google+ 및 결함 버전의X-Frame-Options공격자는 Google의 이미지 검색 엔진에 있는 취약성을 이용하여 원하는 프레임을 삽입할 수 있었습니다.Google+에서도 볼 수 있는 이미지 표시 프레임 사이에서는 공격자가 제어하는 프레임이 로드되고 제한되지 않아 공격자가 이미지 표시 페이지에 [12]접속한 사용자를 오인할 수 있습니다.

커서잭킹

CursorJacking은 사용자가 인식하는 위치에서 커서를 변경하는 UI 리프레싱 기술로,[25] 2010년 Eddy Bordi 연구원이 이를 커스텀 커서 아이콘으로, Marcus Niemietz는 2012년 [26]Mario Heiderich를 통해 커서를 숨김으로써 이를 시연했다.

Alternativ-Testing.fr의 연구원 Jordi Chancel은 Mac OS X 시스템(Firefox 30.0에 포함)의 Mozilla Firefox에서 Flash, HTML 및 JavaScript 코드를 사용하는 CursorJacking 취약성을 발견하여 임의 코드 실행 및 웹 카메라 [27]스파이링을 발생시킬 수 있습니다.

Mac OS X 시스템(Firefox 37.0에서 수정됨)의 Mozilla Firefox에서 다시 한 번 플래시, HTML 및 JavaScript 코드를 사용하는 Jordi Chancel에 의해 두 번째 커서잭킹 취약성이 발견되었으며 이로 인해 웹캠을 통한 스파이 및 영향을 받는 사용자의 [28]컴퓨터에서 악성 프로그램을 실행할 수 있습니다.

마우스잭

UI를 수정하는 다른 클릭잭 기술과는 달리 MouseJack은 Bastille.net의 Marc Newlin이 2016년에 처음 보고한 무선 하드웨어 기반 UI 취약성으로, 취약한 [29]동글에 외부 키보드 입력을 주입할 수 있습니다.Logitech는 펌웨어 패치를 제공했지만 다른 제조업체는 이 [30]취약성에 대응하지 못했습니다.

브라우저 없음

브라우저리스클릭잭킹에서는 공격자는 프로그램의 취약성을 이용하여 웹브라우저의 존재 없이 프로그램의 클래식클릭잭킹을 복제합니다.

이 클릭잭킹 방법은 특히 토스트 알림이 작동하는 방식으로 인해 주로 Android 장치에서 모바일 장치 간에 널리 사용됩니다.Toast 알림은 알림이 요청되는 순간부터 알림이 실제로 화면에 표시되는 순간까지 약간의 지연이 있기 때문공격자는 이 간격을 사용하여 알림 아래에 숨겨져 있고 [7]클릭할 수 있는 더미 단추를 만들 수 있습니다.

쿠키재킹

CookieJacking은 피해자의 웹 브라우저에서 쿠키를 도난당하는 클릭재킹의 한 형태입니다.이는 사용자를 속여 악의는 없는 것처럼 보이는 개체를 끌게 함으로써 이루어지지만 실제로는 사용자가 대상 쿠키의 전체 내용을 선택하도록 합니다.여기서 공격자는 쿠키 및 [14][clarification needed]쿠키가 소유한 모든 데이터를 얻을 수 있습니다.

파일재킹

fileJacking에서 공격자는 웹 브라우저의 기능을 사용하여 컴퓨터를 탐색하고 컴퓨터 파일에 액세스하여 개인 데이터를 얻습니다.이를 수행하려면 사용자가 (브라우저가 사용하는 파일 및 폴더 선택 창을 통해) 활성 파일서버를 확립하도록 유도합니다.이를 통해 공격자는 이제 피해자의 [15]컴퓨터에 액세스하여 파일을 가져올 수 있습니다.

패스워드 매니저 공격

2014년 Carnegie Mellon University 연구원의 논문에 따르면 현재 로그인 페이지의 프로토콜이 암호 저장 시 프로토콜과 다를 경우 브라우저가 자동 채우기를 거부하지만 일부 암호 관리자는 https 저장된 암호의 http 버전에 대한 암호를 안전하지 않게 입력할 수 있습니다.대부분의 매니저는 iFrame 기반 및 리다이렉션 기반 공격 및 여러 디바이스 간에 비밀번호 [16]동기화가 사용된 추가 비밀번호 노출로부터 보호하지 않았습니다.

예방

클라이언트측

스크립트 없음

클릭잭킹(likejacking 포함)에 대한 보호는 NoScript 애드온을 설치하면 Mozilla Firefox 데스크톱 및 모바일[31] 버전에 추가할 수 있습니다.ClearClick 기능은 2008년 10월 8일에 출시되었으며 사용자가 임베디드 문서 또는 [32]애플릿의 보이지 않거나 "다시 압축된" 페이지 요소를 클릭할 수 없도록 합니다.2008년 구글의 "브라우저 보안 핸드북"에 따르면 NoScript의 ClearClick은 "클릭잭킹에 대해 [33]합리적인 수준의 보호를 제공하는 무료 제공 제품"입니다.새로운 커서잭킹 공격으로부터의 보호가 NoScript 2.2.8 RC1에 [26]추가되었습니다.

No Click 잭

No Clickjack 웹 브라우저 애드온(브라우저 확장)은 정규 iFrame의 조작을 방해하지 않고 Google Chrome, Mozilla Firefox, OperaMicrosoft Edge 사용자를 위한 클라이언트 측 클릭잭 보호를 추가합니다.No Clickjack은 Guarded용으로 개발된 테크놀로지를 기반으로 합니다.ID. No Clickjack 애드온은 무료입니다.

가드 아이디

GuardedID(상용 제품)에는 정규 [34]iFrames의 조작을 방해하지 않고 Internet Explorer 사용자를 위한 클라이언트 측 클릭잭 보호가 포함되어 있습니다.가드ID 클릭잭 보호는 모든 프레임을 강제로 표시합니다.가드ID는[clarification needed] 추가 기능 NoClickjack과 팀을 이루어 Google Chrome, Mozilla Firefox, OperaMicrosoft Edge에 대한 보호를 추가합니다.

가젤

GazelleIE 기반의 Microsoft Research 프로젝트 시큐어 웹 브라우저로 OS와 같은 보안 모델을 사용하며 [35]클릭잭킹에 대한 방어 기능이 제한되어 있습니다.Gazelle에서는 다른 기원의 창이 다른 창의 화면 공간 위에 동적 콘텐츠를 그릴 수 있는데, 이는 해당 창이 그리는 콘텐츠가 불투명할 경우에만 해당됩니다.

교차점 옵서버 v2

Intersection Observer v2[36] API는 인간이 정의하는 것처럼 목표 요소의 실제 "가시성"[37]을 추적하는 개념을 도입합니다.이를 통해 프레임 위젯이 커버되는 시기를 감지할 수 있습니다.이 기능은 2019년 [38]4월에 출시된 Google Chrome 74 이후 기본적으로 활성화되어 있습니다.현재 API를 구현하는 브라우저는 Chrome뿐입니다.

서버측

프레임 킬러

웹 사이트 소유자는 서로 다른 [33]소스 프레임에 포함시키고 싶지 않은 페이지에 프레임 킬러 JavaScript 스니펫을 포함시킴으로써 서버 측의 UI 수정(프레임 기반 클릭잭킹)으로부터 사용자를 보호할 수 있습니다.

이러한 JavaScript 기반 보호는 항상 신뢰할 수 있는 것은 아닙니다.특히 Internet Explorer에서는 [33]<IFRAME SECURITY=secommended> [39]요소 내에 타깃 페이지를 포함시킴으로써 이러한 종류의 대책을 "설계상" 회피할 수 있습니다.

X 프레임 옵션

2009년 Internet Explorer 8에서 도입된 새로운 HTTP 헤더X-Frame-Options 이는 클릭잭킹에[40][41] 대한 부분적인 보호를 제공하며 그 직후 다른 브라우저(Safari,[42] Firefox,[43] Chrome [44]Opera[45])에 채택되었습니다.웹 사이트 소유자에 의해 설정된 헤더는 우선 플레이밍 정책(값)을 선언합니다.DENY,ALLOW-FROM origin, 또는SAMEORIGIN는 프레임, 외부 사이트에 의한 프레임 또는 지정된 사이트에 의한 프레임만 허용합니다.또한 일부 광고 사이트에서는 비표준을 반환한다.ALLOWALL(X-Frame-Options를 전혀 설정하지 않은 것과 동등) 임의의 페이지에서 콘텐츠를 프레임 할 수 있도록 하기 위한 것입니다.

2013년에 X-Frame-Options 헤더는 RFC 7034로 [46]공식적으로 공개되었지만 인터넷 표준은 아닙니다.이 문서는 정보 제공 목적으로만 제공됩니다.W3C의 콘텐츠보안 정책 레벨2 권장사항에서는 X-Frame-Options [47]헤더를 폐지하기 위한 대체 보안 디렉티브인 frame-ancestors를 제공하고 있습니다.

X-Frame-Options 등의 보안 헤더는 [48]프레임을 사용하지 않는 클릭재킹 공격으로부터 사용자를 보호하지 않습니다.

콘텐츠 보안 정책

frame-ancestors콘텐츠 보안 정책(버전 1.1에서 도입)의 디렉티브는 iframe, object 등을 사용하여 잠재적으로 적대적인 페이지에 의한 콘텐츠 삽입을 허용하거나 허용하지 않을 수 있습니다.이 디렉티브는 X-Frame-Options 디렉티브를 폐지합니다.페이지가 양쪽 헤더로 처리되는 경우 [49]브라우저는 프레임앤서스터 정책을 우선시해야 합니다.: 일부 일반적인 브라우저는 이 [50]요건을 위반합니다.

프레임 어카운터 정책의 예:

# 삽입을 허용하지 않습니다.모든 iframes 등이 공백이거나 브라우저 고유의 오류 페이지가 포함됩니다.Content-Security-Policy: 프레임앤서스터 '없음'
# 자신의 콘텐츠만 삽입할 수 있습니다.Content-Security-Policy: 프레임앵커 'self'
# 특정 발신기지에서 이 콘텐츠의 삽입을 허용합니다.Content-Security-Policy : frame-flash www.example.com www.wikipedia.org

참고 항목

레퍼런스

  1. ^ Robert McMillan (17 September 2008). "At Adobe's request, hackers nix 'clickjacking' talk". PC World. Archived from the original on 17 July 2015. Retrieved 8 October 2008.
  2. ^ Megha Dhawan (29 September 2008). "Beware, clickjackers on the prowl". India Times. Archived from the original on 24 July 2009. Retrieved 8 October 2008.
  3. ^ Dan Goodin (7 October 2008). "Net game turns PC into undercover surveillance zombie". The Register. Retrieved 8 October 2008.
  4. ^ Fredrick Lane (8 October 2008). "Web Surfers Face Dangerous New Threat: 'Clickjacking'". newsfactor.com. Archived from the original on 13 October 2008. Retrieved 8 October 2008.
  5. ^ Shahriar, Hossain; Devendran, Vamshee Krishna (4 July 2014). "Classification of Clickjacking Attacks and Detection Techniques". Information Security Journal: A Global Perspective. 23 (4–6): 137–147. doi:10.1080/19393555.2014.931489. ISSN 1939-3555. S2CID 43912852.
  6. ^ 혼란스러운 부보안관이 또 탄다!Tyler Close, 2008년 10월
  7. ^ a b c d e f g h i j k Niemietz, Marcus (2012). "UI Redressing Attacks on Android Devices" (PDF). Black Hat.
  8. ^ Robert Lemos, 2008년 10월
  9. ^ JAstine, Berry. "Facebook Help Number 1-888-996-3777". Retrieved 7 June 2016.
  10. ^ "Viral clickjacking 'Like' worm hits Facebook users". Naked Security. 31 May 2010. Retrieved 23 October 2018.
  11. ^ "Facebook Worm – "Likejacking"". Naked Security. 31 May 2010. Retrieved 23 October 2018.
  12. ^ a b Lekies, Sebastian (2012). "On the fragility and limitations of current Browser-provided Clickjacking protection schemes" (PDF). USENIX.
  13. ^ "Wireless Mouse Hacks & Network Security Protection". MOUSEJACK. Retrieved 3 January 2020.
  14. ^ a b Valotta, Rosario (2011). "Cookiejacking". tentacoloViola - sites.google.com. Retrieved 23 October 2018.
  15. ^ a b "Filejacking: How to make a file server from your browser (with HTML5 of course)". blog.kotowicz.net. Retrieved 23 October 2018.
  16. ^ a b "Password Managers: Attacks and Defenses" (PDF). Retrieved 26 July 2015.
  17. ^ Sahani, Rishabh; Randhawa, Sukhchandan (1 December 2021). "Clickjacking: Beware of Clicking". Wireless Personal Communications. 121 (4): 2845–2855. doi:10.1007/s11277-021-08852-y. ISSN 0929-6212.
  18. ^ "The Clickjacking meets XSS: a state of art". Exploit DB. 26 December 2008. Retrieved 31 March 2015.
  19. ^ Krzysztof Kotowicz. "Exploiting the unexploitable XSS with clickjacking". Retrieved 31 March 2015.
  20. ^ Cohen, Richard (31 May 2010). "Facebook Work - "Likejacking"". Sophos. Archived from the original on 4 June 2010. Retrieved 5 June 2010.
  21. ^ Ballou, Corey (2 June 2010). ""Likejacking" Term Catches On". jqueryin.com. Archived from the original on 5 June 2010. Retrieved 8 June 2010.
  22. ^ Perez, Sarah (2 June 2010). ""Likejacking" Takes Off on Facebook". ReadWriteWeb. Archived from the original on 16 August 2011. Retrieved 5 June 2010.
  23. ^ Kushner, David (June 2011). "Facebook Philosophy: Move Fast and Break Things". spectrum.ieee.org. Retrieved 15 July 2011.
  24. ^ Perez, Sarah (23 April 2010). "How to "Like" Anything on the Web (Safely)". ReadWriteWeb. Retrieved 24 August 2011.
  25. ^ Podlipensky, Paul. "Cursor Spoofing and Cursorjacking". Podlipensky.com. Paul Podlipensky. Archived from the original on 22 November 2017. Retrieved 22 November 2017.
  26. ^ a b Krzysztof Kotowicz (18 January 2012). "Cursorjacking Again". Retrieved 31 January 2012.
  27. ^ "Mozilla Foundation Security Advisory 2014-50". Mozilla. Retrieved 17 August 2014.
  28. ^ "Mozilla Foundation Security Advisory 2015-35". Mozilla. Retrieved 25 October 2015.
  29. ^ "What is MouseJack!". Bastille. Retrieved 3 January 2020.
  30. ^ "CERT VU#981271 Multiple wireless keyboard/mouse devices use an unsafe proprietary wireless protocol". www.kb.cert.org. Retrieved 3 January 2020.
  31. ^ Giorgio Maone (24 June 2011). "NoScript Anywhere". hackademix.net. Retrieved 30 June 2011.
  32. ^ Giorgio Maone (8 October 2008). "Hello ClearClick, Goodbye Clickjacking". hackademix.net. Retrieved 27 October 2008.
  33. ^ a b c Michal Zalevski (10 December 2008). "Browser Security Handbook, Part 2, UI Redressing". Google Inc. Retrieved 27 October 2008.
  34. ^ Robert Hansen (4 February 2009). "Clickjacking and GuardedID ha.ckers.org web application security lab". Archived from the original on 11 July 2012. Retrieved 30 November 2011.
  35. ^ Wang, Helen J.; Grier, Chris; Moschchuk, Alexander; King, Samuel T.; Choudhury, Piali; Venter, Herman (August 2009). "The Multi-Principal OS Construction of the Gazelle Web Browser" (PDF). 18th Usenix Security Symposium, Montreal, Canada. Retrieved 26 January 2010.
  36. ^ "Intersection Observer - W3C Editor's Draft".
  37. ^ "Trust is Good, Observation is Better".
  38. ^ "De-anonymization via Clickjacking in 2019".
  39. ^ Giorgio Maone (27 October 2008). "Hey IE8, I Can Has Some Clickjacking Protection". hackademix.net. Retrieved 27 October 2008.
  40. ^ Eric Lawrence (27 January 2009). "IE8 Security Part VII: ClickJacking Defenses". Retrieved 30 December 2010.
  41. ^ Eric Lawrence (30 March 2010). "Combating ClickJacking With X-Frame-Options". Retrieved 30 December 2010.
  42. ^ Ryan Naraine (8 June 2009). "Apple Safari jumbo patch: 50+ vulnerabilities fixed". Retrieved 10 June 2009.
  43. ^ https://developer.mozilla.org/en/The_X-FRAME-OPTIONS_response_header 2010년 10월 7일 Wayback Machine X-Frame-Options 응답 헤더로 아카이브 완료 - MDC
  44. ^ Adam Barth (26 January 2010). "Security in Depth: New Security Features". Retrieved 26 January 2010.
  45. ^ "Web specifications support in Opera Presto 2.6". 12 October 2010. Archived from the original on 14 January 2012. Retrieved 22 January 2012.
  46. ^ "HTTP Header Field X-Frame-Options". IETF. 2013.
  47. ^ "Content Security Policy Level 2". W3C. 2016.
  48. ^ "lcamtuf's blog: X-Frame-Options, or solving the wrong problem".
  49. ^ "Content Security Policy Level 2". w3.org. 2 July 2014. Retrieved 29 January 2015.
  50. ^ "Clickjacking Defense Cheat Sheet". Retrieved 15 January 2016.