TIKTOK 前端工程师恐怖如斯

2023-01-10 00:14:32 +08:00
 humpy

在 web 端用 JS 搞了个虚拟机执行未知内容字节码,整个虚拟机还被深度混淆,黑人小伙破解了部分指令集,但目前仍然不知道它实际做了什么。

https://ibiyemiabiodun.com/projects/reversing-tiktok-pt2/

不知道是不是字节国内的高手做的啊?这技术水平有一手啊

3852 次点击
所在节点    分享发现
8 条回复
des
2023-01-10 00:24:41 +08:00
目前仍不知道做了什么(指收集设备指纹),https://www.nullpt.rs/reverse-engineering-tiktok-vm-1
0o0O0o0O0o
2023-01-10 00:37:27 +08:00
几乎各个大厂各个端都有 vmp 或者别的保护手段,包括国外土生土长的大厂。
alalida
2023-01-10 00:45:24 +08:00
我觉得还好啊,也不是什么高深技术。

js 重新实现一个 runtime 来运行 js ,类似手法一直被用来做热更新,绕过各类商店的审核。拿着这东西做 js 混淆和代码保护也有业界工具的。

而看文章,其实就是 tt 做了一个浏览器端设备指纹生成的事。根据开源库的数据,只在客户端做,重复率高达 1 %以上,考虑用户基数,这个数值对于商业应用的价值一般般。
humpy
2023-01-10 01:03:42 +08:00
@des #1 @0o0O0o0O0o #2 @alalida #3 感谢科普,是我见识少了😂

上次看到类似的,还是 google 的 project zero 发现的 ios 漏洞,攻击者用位运算搞了个虚拟机,当时也是开了眼界
https://googleprojectzero.blogspot.com/2021/12/a-deep-dive-into-nso-zero-click.html
Jirajine
2023-01-10 01:39:03 +08:00
很正常,在设备指纹、用户追踪、反作弊、加固、反爬、风控、防滥用、用户粘性、深度包检测等领域,国内一直处在世界领先地位。
Eiden
2023-01-10 08:57:42 +08:00
百度贴吧的加密参数 bsk 就是 js 虚拟机跑的
gaifanking
2023-01-10 11:11:29 +08:00
其实也没那么难,就是编译原理那一套,认真学习的话可以手写递归下降生成语法树,不想手写的话也有很多编译器前端框架,比如 ANTLR 这种,学起来也比较简单。后端的话 op 的场景就是翻译为 js 执行,也没啥难度。
楼主可以自己玩玩,antlr+解释器算是最简单的入门方式了,熟悉后后端可以试试生成汇编码(也可以用 llvm ir 来做),或者基于 jvm 生成 class 等很多玩法。
再然后可以试着自己创造一门比较完善的编程语言,走出国门,走向世界,赢取白富美,走上人生巅峰。
xvnehc
2023-01-10 14:36:27 +08:00
看到“黑人小伙破解了部分指令集”忍不住笑了,有 tiktok 内味

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

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

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

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

© 2021 V2EX