第三方脚本更改测试(哈希)

时间:2014-04-12 23:44:57

标签: javascript html5 xss

在网页中包含脚本时,是否有办法查看此脚本是否随时间发生变化?

例如:

<script src="https://thirdparty.com/script.js"></script>
<script>
   // Some code to hash the script contents and store in a variable hashOfScript
   // Then compare to a known version of the script
   if (hashOfScript !== previousHashOfScript) {
      alert('Script has changed!!!');
   }
</script>

这是出于安全目的。基本上,我包含了一个我普遍信任的第三方网站的脚本,可以检查他们的脚本。此后,我只想跟踪它以查看脚本是否发生了变化。大多数情况下,我想知道他们是抓取我的cookie还是读取DOM中的敏感数据。

修改

其中一个例子是Google Analytics。我通常信任Google和我的Google Analytics数据,因此我包含了analytics.js。但是,如果有权访问Google的人希望他们可以执行以下操作:

// PSUEDOCODE HERE
if (requestingSite === interestingData) {
   analytics.js = cookieGrabbingAndDomScrapingAnalytics.js
   send(analytics.js)
}

同样,这只是一个稳定的JS脚本的一个例子,可以在个案的基础上恶意地改变(由一个坏人或者(不太可能)由中间人)。

注意:我的整个网站和所有脚本都是通过HTTPS加载的。

0 个答案:

没有答案