有没有可能,把一段 js 隐写在图片中,然后网页里引用能让其正常运行?

2019-10-28 20:47:57 +08:00
 dusu

RT,突然有这个想法,但是研究了一圈似乎没找到绕过文件头的办法,

这个用处在于,用各种三方图床存 JS 可以加速访问(可能还有更多应用场景)。

只是一个想法拿出来讨论,轻喷。

6977 次点击
所在节点    奇思妙想
22 条回复
locoz
2019-10-28 20:52:34 +08:00
可以,但必须有另一个 js 去处理一下
dusu
2019-10-28 20:55:12 +08:00
@locoz 如果是存三方图床上的话,那还会有跨域问题...
Trim21
2019-10-28 20:59:23 +08:00
如果不是为了绕过浏览器的安全限制只是为了撸图床的带宽的话 jsdeliver 不就行了吗
0o0O0o0O0o
2019-10-28 21:03:31 +08:00
找一个 js 写的 js interpreter 就可以了,挺多的
AaronLiu00
2019-10-28 21:03:50 +08:00
AaronLiu00
2019-10-28 21:04:27 +08:00
azh7138m
2019-10-28 21:57:42 +08:00
@AaronLiu00 博客挺好的,就是修改 document.title 的地方写崩了,我手机上是乱码
AaronLiu00
2019-10-28 23:10:22 +08:00
@azh7138m 哈哈,其实乱码就是本意
cocolate
2019-10-28 23:42:08 +08:00
当然可行 曾经有个 chrome 插件用这个方法绕过代码审查偷传用户资料
zouchtssn
2019-10-28 23:50:10 +08:00
看了内容突然意识到 steganography 对应的中文是隐写
CODEWEA
2019-10-29 00:14:07 +08:00
没用,控制台能看出来
DonnyChao
2019-10-29 00:59:37 +08:00
以前有人利用这个机制,使用图片藏 PHP 代码制作来图片木马....
JingNi
2019-10-29 04:21:44 +08:00
PHP 就有这种方式,include 一个图片,文件被字符串直接当做代码执行了,但是 PHP 这个方法不限制文件头。
IceBay
2019-10-29 06:07:18 +08:00
js 文件里放 base64 后的图片?
wangxiaoaer
2019-10-29 07:06:26 +08:00
CROB 了解一下。
EscYezi
2019-10-29 08:19:08 +08:00
话说为什么不直接用 CDN😂
oott123
2019-10-29 09:37:25 +08:00
可以是可以,但像 uc 这样的浏览器把你图片压缩了你的代码就崩了(笑
opengps
2019-10-29 09:40:23 +08:00
如果有,那就危险了。黑产比你用的多,达到的效果远比你想的要可怕
dianso
2019-10-29 10:42:52 +08:00
可以的啊,很简单的方法就是自己编译下浏览器
dusu
2019-10-29 10:57:34 +08:00
@AaronLiu00

🙏以及感谢各位,虽然和我想的差一点

不过已经按思路手撸了一个前后端版本,准备小范围实践下

之前已经有前人开源过图片生成

https://github.com/jklmnn/imagejs/

按说明处理过后,发现 chrome 安全检查已经屏蔽非 javascript header 执行 js 了,so 只能放弃…

P.S. 图片加 php / asp 代码早已经是皆知的事情了哈,那个不存在绕过文件头的问题,和我这个还不太一样

P.S. 图片压缩部分,我确认了一下,浏览器上 png 压缩率不是很高,一般图床也不会对 png 做特别处理,只要 png 数据不是特别多的情况下,效果应该还能接受,不过也要全面测试

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/613791

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX