javascript(和插件)在网页中的位置?
我已经编写了一个拦截代理,我正在为它添加一个功能,其中它将从通过它接收的网页中删除所有JavaScript(以及VBScript和任何插件内容,如Flash、Silverlight、ActiveX组件和Java小程序,这些小程序可以运行任意的,如果是沙盒,则可以与页面交互的代码)。如果删除页面内容是“容易的部分”,那么获得一个详尽的列表,列出这些东西可以隐藏的地方可能是“困难的部分” 当然,JavaScript可以通过各种方式包括其他JavaScript,例如向dom添加新的脚本元素。这与我无关,因为如果我阻止HTML和/或CSS引入JavaScript的所有方式,我就不必担心JavaScript会引入其他JavaScript。(或者Flash可以拉入JavaScript,或者JavaScript可以拉入Flash内容等) 我确定页面可以包含JavaScript(或VBScript)的方式有:javascript(和插件)在网页中的位置?,javascript,html,security,web,browser,Javascript,Html,Security,Web,Browser,我已经编写了一个拦截代理,我正在为它添加一个功能,其中它将从通过它接收的网页中删除所有JavaScript(以及VBScript和任何插件内容,如Flash、Silverlight、ActiveX组件和Java小程序,这些小程序可以运行任意的,如果是沙盒,则可以与页面交互的代码)。如果删除页面内容是“容易的部分”,那么获得一个详尽的列表,列出这些东西可以隐藏的地方可能是“困难的部分” 当然,JavaScript可以通过各种方式包括其他JavaScript,例如向dom添加新的脚本元素。这与我无关
我也认为HTML5视频的问题超出了这个问题的范围,因为它们不运行任意代码。 我也不关心JavaScript或插件执行的任何方式,这些方式需要浏览器扩展的存在,除非这些扩展被非常广泛地使用
然而,我确实希望这个脚本和插件剥离功能是铁的。如果有人能够通过这个特性使用复杂的方法来滑动代码,那么就我而言,可能采用的复杂方法与这个问题相关 而且,包含只在某些浏览器中工作而在其他浏览器中不工作的代码的方法也在范围之内有没有其他类型的插件或语言可以包含在我上面没有考虑过的网页中?首先,使用标签、属性和协议的白名单,而不是黑名单,并且要非常小心。(例如,注释是不安全的;IE有条件注释。
数据:
也不安全。)哦,你应该确保,对于每个白名单对象,没有办法强制使用HTML上下文(因为否则就不可能知道要过滤什么)。并确保设备上的任何软件都不能强制使用HTML上下文。如果可能的话,最好只是检查浏览器中是否禁用了JavaScript…