当前的网络浏览器(firefox、chrome 等)通常都内置有弹出窗口阻止程序,可防止在没有用户交互(单击链接)的情况下出现弹出窗口。
此外,还有多个插件通常可以很好地防止不必要的添加/弹出窗口(adblock plus、adblock plus popup addon,...)。
然而,我最近遇到了一种打开弹出窗口的新方法,这种方法似乎很难被网络浏览器/插件处理:
选项 1:用户单击一个链接(在 tab1 中),该链接在当前选项卡(tab1)中打开,然后 javascript 脚本尝试打开一个弹出窗口(在 tab2 中)。
选项 2:用户点击一个链接(在选项卡 1 中),该链接在新选项卡(选项卡 2)中打开,然后 javascript 脚本尝试在原始选项卡(选项卡 1)中打开广告。
选项 1 似乎能被浏览器很好地处理,但选项 2 却不能。有没有什么办法可以阻止第二个选项?
答案1
NoScript
这听起来可能像是火箭筒方法,但你会发现它可以阻止很多此类问题和其他问题。
主页https://noscript.net/将其定义为
NoScript Firefox 扩展为 Firefox、Seamonkey 和其他基于 Mozilla 的浏览器提供了额外的保护:这个免费的开源插件允许 JavaScript、Java、Flash 和其他插件只在您选择的受信任网站(例如您的在线银行)上执行。NoScript 还提供了浏览器中有史以来最强大的反 XSS 和反点击劫持保护。NoScript 独特的基于白名单的先发制人脚本阻止方法可防止利用安全漏洞(已知甚至未知!)而不会造成任何功能损失...
默认情况下,它将完全禁用不受信任站点的 JavaScript(有时甚至用代理替换它以使页面导航继续工作),但即使对于启用了 JS 的受信任站点,它仍将提供许多不同的保护。