Google+ +1 위젯은 iframe에서 어떻게 벗어나나요? 플러스 원 위젯

어떻게 든 Google+ 플러스 원 위젯 위에 마우스 커서를 올리면 툴팁 유형 거래가 <iframe>포함되어 있습니다. 이것을 확인하기 위해 DOM을 검사했습니다. *

iframe 경계

그래서:

  1. 뭐? 어떻게!?

  2. 악의적으로 사용되는 경우 이것이 클릭 재킹의 큰 기회가 아닙니까? (이 소셜 위젯에서 MITM을 수행하는 사람이 있다고 상상해보십시오!)

* 업데이트 : 내가 본 것은 툴팁 -y 메시지가 두 번째로 동적으로 생성 되었다는 것입니다 .iframe



답변

구글 +1 위젯은 웹 사이트에서 실행이 있다는 자바 스크립트 구축된다 iframe. 이 JavaScript 위젯은 웹 사이트 컨텍스트에서 실행되므로 iframeOrigin 상속 규칙에 의해 제한되지 않습니다 . 따라서이 JavaScript 위젯은 단순 해 보이지만 상위 사이트에서 원하는 DOM 이벤트를 설정할 수 있습니다 iframe.

또 다른 이유는 Google이 왜 iframe? 왜 div페이지에서를 생성하지 않습니까? 링크는에서 시작하므로 iframeCSRF (교차 사이트 요청 위조) 토큰을 요청에 포함시킬 수 있으며 상위 사이트는이 토큰을 읽고 요청을 위조 할 수 없습니다. 따라서 이는 iframe악의적 인 부모로부터 자신을 보호하기 위해 Origin Inheritance 규칙에 의존하는 안티 CSRF 측정입니다.

공격 관점에서 이것은 UI-Redress보다 XSS (cross-site scripting)와 비슷합니다. 귀하는 귀하의 웹 사이트에 대한 Google 액세스 권한을 부여하고 있으며 사용자가 원하는 경우 사용자 쿠키를 가로 채거나 XmlHttpRequests귀하의 웹 사이트를 공격 할 수 있습니다.

이 경우 Google을 신뢰해야하지만 Google은 귀하를 신뢰하지 않습니다.

이러한 웹 버그의 개인 정보 보호 영향을 완화하는 방법이 있습니다 .


답변

Google은 iFrame을 사용하여 “누설 표준 DIV”를 방지합니다. 클로저 라이브러리 대화 상자도 마찬가지입니다. 아마도 다른 내용이 +1 버튼으로 번지지 않도록하는 것일 수 있습니다. http://closure-library.googlecode.com/svn/trunk/closure/goog/demos/dialog.html .


답변