我在隔离环境中使用chrome扫描恶意网站以分析其数据以创建黑名单。这个过程完全由用户脚本和浏览器扩展自动完成。如何使用userscript完全禁用所有退出警告/确认消息?
问题是某些站点能够在beforeunload
或unload
(我将其称为events
)中显示出口对话框。
我已经覆盖这些events
,但是当网站重新覆盖我的覆盖,整个过程停止。我的意思是他们可以重新定义events
与AJAX调用,混淆脚本,evals等
有没有什么办法摆脱这些消息,或保护我的重写? 也许unsafeWindow会处理这个,但我会避免在这个讨厌的环境中使用它。
编辑 - 目前我在userscript使用此代码:
location.href = "javascript:(" + function() {
window.onbeforeunload = null;
window.onunload = null;
} + ")()";
setInterval(function(){
location.href = "javascript:(" + function() {
window.onbeforeunload = null;
window.onunload = null;
} + ")()";
}, 3000);
1.添加您现在使用的代码以阻止这些事件进入问题。 2.基本上我认为你需要使用每一个可以想象的技巧,例如在'unsafeWindow'中重写事件,在定义jQuery时处理'unsafeWindow.jQuery._data(unsafeWindow.window,“events”)'等等。 – wOxxOm
几乎在任何情况下,但我不想使用太多的资源。 –
我认为位置攻击在现代浏览器中不起作用,或者在新版本将在beta版之后的几个月内停止工作。 – wOxxOm