NoScript

✍ dations ◷ 2025-07-09 12:35:44 #Firefox 附加组件,安全软件,广告拦截软件

NoScript 是一个为 Mozilla Firefox 和 Mozilla Application Suite网页浏览器 (诸如Flock、SeaMonkey等) 所开发的自由的扩展(Add-ons)。NoScript 以白名单选择性执行 JavaScript、Java、Flash、Sliverlight 以及其它插件和脚本内容。

在安装之后,JavaScript、Java、Flash、Sliverlight和其它可执行内容都会被Firefox默认阻止。用户可以手动允许这些内容。NoScript会在Firefox中占据一个工具栏图标或是一个状态栏图标,并显示正在浏览的页面上每个站点的内容被阻止或允许的情况,同时也可以修改之前阻止或允许的内容。

对于每个页面,可以选择允许特定的地址,特定的域名或是根域名并执行它的内容。同时,允许一个域名之后(例如, mozilla.org),它的所有二级域名都会被默认允许(例如 www.mozilla.org, addons.mozilla.org 等等)而且与协议无关(例如HTTP和HTTPS)。而允许一个地址之后(协议:主机 例如 http://www.mozilla.org 页面存档备份,存于互联网档案馆 ),它的所有子目录都会被允许 (例如 http://www.mozilla.org/firefox 页面存档备份,存于互联网档案馆 和 http://www.mozilla.org/thunderbird 页面存档备份,存于互联网档案馆 ),此时它的根域名和以及其它二级域名不会被。因此,mozilla.org和addons.mozilla.org就不会被自动允许。

页面也可以在NoScript中被列入黑名单。把一个页面列入黑名单不仅会阻止执行脚本内容,同时还会去掉手动执行这些内容的选项。即使安全设置低于默认值,NoScript还是可以阻挡一些网页攻击,例如DNS重新绑定攻击。

2007年4月11日,NoScript 1.1.4.7版公开发布,新增了一个客户端的保护,针对类型0和类型1的XSS攻击。一旦一个页面试图将HTML或是JavaScript代码插入另一个页面,NoScript就会过滤掉有害请求。

2008年9月15日,NoScript 1.8.1版公开发布,使得用户可以强制某些网站必须通过https访问,增加安全性。此外NoScript也可以强制https网站把cookies加密来阻止cookies劫持。
2009年9月23日,NoScript 1.9.8.9版增加了对HSTS的支持。这一功能使得用户在访问支持的网站(例如,PayPal)的时候自动只通过HTTPS访问,以防止中间人攻击。

NoScript的默认行为是阻止所有不在白名单中的脚本。这可能使大量依赖于JavaScript技术,例如AJAX的页面无法正常工作。不熟悉的用户也许会觉得相比起增加的安全保护而付出的麻烦不值得。

但同时NoScript也支持一个可选的黑名单模式:用户可以选择全局启用JavaScript然后禁止他们不信任的站点。即便如此配置,NoScript仍然能在很大程度上增强安全性,由于仍然具有XSS、CSRF和点击劫持等防护功能。

截至2009年5月 (2009-05), NoScript的白名单默认包含了扩展作者的部分域名,一些Google的域名(包括一个必要的用于显示Google Adsense广告的域名),雅虎以及微软,由于这些使用了AJAX的Web邮件服务可能是某些用户唯一熟悉的使用邮件方式,如果不这样做,这些用户就会在安装NoScript之后无意地把他们自己锁住。这个白名单是可以修改的。

NoScript被PC World杂志评为2006年百大最佳产品之一。

2009年5月1日,Firefox扩展Adblock Plus的作者Wladimir Palant,宣布一周之前的NoScript 1.9.2版开始妨碍Adblock Plus正常工作。NoScript会在未经Adblock Plus和用户允许的情况下解析并显示赞助商页面。Palant说NoScript使用了代码混淆来逃避十六进制代码层面对这个修改的检测。几乎同时,Mozilla因此次事件决定修改社区准则。4月30日,NoScript升级到1.9.2.3,把传说中的代码混淆改为了一个用户可见的特性,即NoScript在Adblock Plus的过滤规则中将自己的网站设置为白名单。Wladimir Palant指出这个过滤规则即便被用户删除也会在每次启动的时候自动添加回去,不过这看起来似乎只是个无意的Bug,因为白名单同时也可以被永久禁止或是如NoScript FAQ所说,被用户自己的过滤规则覆盖。几小时之后,2009年5月2日,自动更新的NoScript 1.9.2.6版彻底移除了这一白名单,并在发行记录中对没有在用户事先允许的情况下修改Adblock Plus功能的行为作出公开道歉。2009年5月4日,在博客上一篇长文中,NoScript的作者Giorgio Maone以个人身份对最初含糊的说法表达了歉意,认识到这是破坏了信任关系并对此表示后悔。他同时解释NoScript添加的Adblock Plus白名单是对EasyList反常性“攻击”的对抗,这些攻击针对Manoe的网站,并几乎破坏了页面所有的动态功能,甚至是安装NoScript软件包的链接。

2009年5月1日以及2009年5月3日在讨论NoScript对Adblock Plus的修改时,有人在NoScript支持论坛中指出NoScript官网上有一个CSS规则不停让Ghostery这个Mozilla扩展弹出提示,表示网页上有奇怪而隐蔽的"bug"。Ghostery也会提示用户Manoe网站上Google Adsense的使用。Manoe在回应中宣称他的CSS没有做出这些,Ghostery的提示是由于其自身的技术问题,同时这些提示看起来很糟糕而且妨碍了网页真实效果的展示。在之后的声明中Manoe又特别批评这些提示挡住了了捐款按钮和使用许可的显示并且表示他的CSS没有阻止Ghostery的正常工作。

大多数人则认为Manoe的CSS文件包含了足够多的统计代码,Ghostery的判断并没有错。有人指出Ghostery在其原始状态的提示并没有挡住Manoe的捐款按钮,并在几秒钟之后就消失了。另外,用户们指出Manoe的一行样式使得Ghostery无法提供一个网页bug的信息,并认为总体上来说这是Manoe自己的问题。但Manoe仍坚称Ghostery显示信息的方式不合适和过度敏感而导致两个扩展出现了矛盾。

这件事的讨论扩展到了第三方站点,有些人谎称干扰了Ghostery工作的是NoScript扩展而不是Manoe的站点。Ghostery的作者David Cancel 页面存档备份,存于互联网档案馆原先发表了一些过激言论但随后修正了。

2009年5月6日,在此事的激烈讨论平息之后,Maone公开表示他改变了自己的观点,为此他修改了自己站点的CSS。Ghostery的提示框不再被隐藏而是向页面中部轻微移动了一些,以免挡住捐款按钮或是许可信息。

相关

  • 虚弱虚弱、无力、乏力(英语:weakness或asthenia)是一种症状的统称,有着多种不同的用法。该症状的成因多种多样,可细分为真性肌无力(true muscle weakness),或者体感肌无力。真性肌无力是
  • 信息学信息学,旧称情报学(日本人翻译),主要是指以信息为研究对象,利用计算机及其程序设计等技术为研究工具来分析问题、解决问题的学问,是以扩展人类的信息功能为主要目标的一门综合性学
  • 罗莎琳·富兰克林罗莎琳·爱尔西·富兰克林(英语:Rosalind Elsie Franklin,1920年7月25日-1958年4月16日),是一位英国物理化学家与晶体学家。她所做的研究,专注于DNA、病毒、煤炭与石墨等物质的结构
  • 龙珠直播龙珠TV直播平台,是一个中国大陆以游戏直播为主的视频直播分享网站,现隶属上海聚力传媒技术有限公司(PPTV)旗下,于2015年2月1日上线。龙珠直播前身是2010年由苏州游视网络科技有限
  • 最受欢迎电视女角色万千星辉颁奖典礼最受欢迎电视女角色每年由电视广播有限公司颁发,给予年度该公司最受观众喜爱及欢迎的电视剧中女演员之荣誉。最受欢迎电视女角色奖于2006年创立。此奖项前身
  • 奇幻电影奇幻电影(fantasy films)是奇幻类型的电影。这类型的电影都大量的包含魔法、超自然现实事件、或是幻想生物如龙、半兽人以及幻想世界如魔戒中的中土奇幻电影。在电影的划分中
  • 超级谢尔曼坦克超级谢尔曼坦克是以色列于1950年代研发的M4谢尔曼坦克的改进型,分为“M50”、“M51”两种型号。以色列自建国后,一直与邻国关系不睦。为了对付邻国的侵袭,以色列开始四处购置武
  • 巴克特里亚语巴克特里亚语或大夏语(Bactrian Language)是在古代巴克特里亚使用的一种伊朗语,属东伊朗语支,现存文献有贵霜帝国时期的钱币、印章及铭文,另外在吐鲁番等地发现了一些手稿碎片,其
  • 李秀明李秀明(1954年12月9日-),生于天津,祖籍河北大城。曾是中华人民共和国演员,并曾任中国电影家协会第五届理事会理事。1980年代获得金鸡百花双料影后,与刘晓庆、张金玲并称为北京电影
  • 马吕斯·彭眉胥马吕斯·彭眉胥(英语:Marius Pontmercy)是法国作家维克多·雨果的文学作品《悲惨世界》中的第二男主角。与成年后的珂赛特(英语:Cosette)相恋。在ABC之友会(英语:Friends of the ABC