경고, 불쾌한 해킹이 들어옵니다!
Flash vs Javascript에 대한 요청은 실제로 동일한 Mozilla 플랫폼 API를 사용하므로 분명히 구분할 수 없습니다. 당신은 모든 비 플래시 requets 다른 보이게하기 위해 뭔가를 할 필요가 - http-on-modify-request
구현에서 조사 할 때
그러나, 비 플래시 요청을 당신에게 을 중지 아무것도 다른 보인다.
제가 생각할 수있는 가장 쉬운 방법은 QueryString 매개 변수를 추가 한 다음 (사용자의 http-on-modify-request
처리기 내부에서 제거하는 것입니다)
기본적으로 각 요청 URI에 ?___NONFLASH__=897123487
또는 &___NONFLASH__=897123487
과 같은 것을 추가하십시오. (어디에서 초기화 할 때 무작위로 토큰 897123487
을 생성하므로이 샌드 박스에서 '탈출'하려고하는 JavaScript/Flash로 추측 할 수 없습니다).
당신은 브라우저의 content.contentDocument
에 다음과 같은 영향을해야 할 것 :
- 링크 - 변경 그들의
href
는
- 형태의 속성 - 자신의
action
는
window.XMLHttpRequest
속성 변경 - 자신의 결정의 버전이 교체 (만들기 어떤 클라이언트 스크립트가 실행되기 전에 당신이 그것을 대체해야합니다!) 단지 클라이언트 window
스크립트 실행 잎
NA는 -Level (예 : window.location.href
변경). NSIObserver
또는 NSIProgressListener
을 사용하여 변경/다시로드하는 URL을 볼 수 있습니다.
편집 :이 모든 내용은 플래시 콘텐츠가 플래시 < -> JavaScript 브리지를 사용하지 않고 JavaScript 측에서 모든 요청을 수행하고 있다고 가정합니다 (가능하지는 않지만 가능합니다).