如题, 手头上有一个 VirtualApp 应用, 双开了一个微信, 一直都可以修改地理位置, 自从年前微信升级到 8.0.19 以后,就修改不了位置了。
网上搜了一下 VirtualApp 的原理是 hook 了 app 的运行环境,然后通过 hook LocationManager 来实现修改地址位置的, 讲起来被它双开的应用应该是不能获取到真实信息的, 那微信到底是怎么获取到真实的定位的呢?
1
mineralsalt 2022-02-09 10:35:57 +08:00
微信每次编译都会混淆代码, 函数路径都会发生变化, 会导致 hook 失效, 只能等待软件作者适配, 要么就别更新.
|
2
mineralsalt 2022-02-09 10:38:58 +08:00
另外 hook LocationManager 是非常低级的做法, 可以定位的方法太多了, 随便举几个例子, ip 位置, wifi 位置, 基站位置, 蓝牙, 路由器等等, 都可以确定你的真实位置, 这也是使用这类软件经常被风控封号的原因
|
3
zdxddt OP @mineralsalt #1 从 VirtualApp 的原理来看的话, 微信是执行在它的虚拟机环境里面的,讲起来,无论怎么混淆都没关系吧
|
4
zdxddt OP @mineralsalt #2 这么一说也有可能
|
5
mineralsalt 2022-02-09 10:56:11 +08:00
@zdxddt VirtualApp 提供运行环境, 它只 hook 系统代码, 这些代码是不会变动的, 但是 hook 具体 app, 除了 hook 系统函数, 也需要 hook app 的函数, 这部分代码会随着混淆而改变
|
6
FaneLau 2022-02-09 16:21:26 +08:00 via Android
偏个题,用 8.0.15 发现发送网页链接到对话框(纯链接没有内容预览的那种),在对话框点击链接打开网页后,点右上角发现没有转发到其他聊天窗口的选项(以前用 8.0.12 就有),只有复制网页链接或发送到 QQ 或收藏等选项。我尝试点了收藏,然后去到微信收藏里面点开这个网页,这时点右上角才会出现转发到其他聊天窗口的选项。不知道是不是 8.0.15 开始就都是这个🐶样,我之前用 8.0.12 是没有这个情况的。
|