風雲 (ID: 3)
头衔:论坛版主
等级:大天使
积分:1531
发帖:68 篇
来自:保密
注册:2022/3/30 15:28:53
造访:2024/10/15 19:43:14
发帖:68 篇
来自:保密
注册:2022/3/30 15:28:53
造访:2024/10/15 19:43:14
[ 第 1 楼 ]
回复
script 标签引入远程文件存在一个问题,如果对应的文件被篡改了,那么可能会对用户造成影响。虽然cdn一般都是可靠的,但是不排除受到黑客的攻击。
在这种情况下,可以通过script标签的属性 integrity 来进行安全验证,例如:
<script
integrity="sha384-oqVuAfXRKap7fdgcCY5uykM6+R9GqQ8K/uxy9rx7HNQlGYl1kPzQho1wx4JwY8wC"
src="https://cdn.xxx.xx/js/index.js"></script>
如果下载的子资源通过计算后的哈希字符串,跟标签上的不统一,浏览器就会拒绝执行对应的代码。
可以使用openssl 生成这样的哈希值,例如:
wget https://cdn.xxx.xx/js/index.js
openssl dgst -sha384 -binary index.js | openssl base64 -A
在这种情况下,可以通过script标签的属性 integrity 来进行安全验证,例如:
<script
integrity="sha384-oqVuAfXRKap7fdgcCY5uykM6+R9GqQ8K/uxy9rx7HNQlGYl1kPzQho1wx4JwY8wC"
src="https://cdn.xxx.xx/js/index.js"></script>
如果下载的子资源通过计算后的哈希字符串,跟标签上的不统一,浏览器就会拒绝执行对应的代码。
可以使用openssl 生成这样的哈希值,例如:
wget https://cdn.xxx.xx/js/index.js
openssl dgst -sha384 -binary index.js | openssl base64 -A
2022/6/23 8:08:14
IP:已设置保密