V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
bzw875
V2EX  ›  Android

怎么迁移一个蓝牙门锁 APP,重新下载已经无法登陆 [开发 APP 的公司已倒闭] ;或者如果录制点击开锁的蓝牙信号也行

  •  
  •   bzw875 · 132 天前 · 4874 次点击
    这是一个创建于 132 天前的主题,其中的信息可能已经有所发展或是发生改变。

    现在有一个登录的华为手机,我想把 APP 迁移到 OPPO 手机,并且保留登录状态。 或者怎么录制点击开锁播放的蓝牙信号也行。

    28 条回复    2024-09-03 18:31:33 +08:00
    kkk9
        1
    kkk9  
       132 天前   ❤️ 1
    钛备份试试看

    至于录制方案没啥用,合格的门锁怎么可能是固定开锁密钥!想想别人只要采集到你的开锁蓝牙广播就可以开门,你还敢用这个锁?

    反编译 APP 看看开门的广播密钥生成也可以
    Dawnnnnnn
        2
    Dawnnnnnn  
       132 天前
    华为没加入互传联盟,没有 ROOT 的情况下用户数据无法迁移到其它品牌手机。最好的方法还是反编译 app ,要不把登录干掉,要不逆蓝牙协议
    LuckyLauncher
        3
    LuckyLauncher  
       132 天前
    抓个蓝牙的包?
    gam2046
        4
    gam2046  
       132 天前   ❤️ 3
    厂家已经噶了的情况,你的 app 还可以用。

    那么大概率是基于某种算法的离线验证(包括算法本身也是离线的,而不依赖服务端返回),就比如常见的 OTP 就属于这一类,但是考虑到门锁不联网(大概),同时也有断电的可能性,因此可能并不是基于时间来生成密钥的。盲猜是基于设备的某种序列号进行生成的,那么逆向,相对来说,是有可行性的。

    至于你说的“制点击开锁播放的蓝牙信号”,如果不是非常弱鸡的设计,应该不存在你希望的重放攻击。
    z0y522
        5
    z0y522  
       132 天前 via iPhone
    如果你说的是夏洛克的话,淘宝有家店卖射频模块
    githmb
        6
    githmb  
       132 天前   ❤️ 1
    换锁
    cheese
        7
    cheese  
       132 天前
    你直接报锁的牌子,大概率公模,找一个其他 app 一样用
    ysc3839
        8
    ysc3839  
       132 天前 via Android
    试试“通通锁”这个 app ?
    linhua
        9
    linhua  
       132 天前
    root 手机 或者 使用 华为手机克隆 将应用 克隆到 已经 root 过的另一部华为手机上
    bzw875
        10
    bzw875  
    OP
       132 天前
    @ysc3839 #8 不是家庭锁
    @cheese #7 是楼宇对讲门禁系统门锁
    @githmb #6 APP 是 [小区阿福] ,登陆发送验证码报错了
    sks4728
        11
    sks4728  
       132 天前
    报设备 品牌
    linhua
        12
    linhua  
       131 天前   ❤️ 1
    用 libchecker 看了 小区阿福 2.6.1 版本的 allowBackup 属性是 true ,应该可通过 adb backup 和 adb restore 对 App 的应用数据进行备份和恢复
    iminto
        13
    iminto  
       131 天前 via Android   ❤️ 1
    开发者选项里,可以打开设置,抓蓝牙数据包。

    或者反编译。

    相比而言,抓包难度小一些。

    都不会的话,就只能忍着了。
    kero991
        14
    kero991  
       131 天前
    这种玩意我觉得长久不了的,现在是厂家 g 了,但 app 还能用
    说不准哪天 app 也 g 了呢?
    w977741432
        15
    w977741432  
       131 天前 via Android
    @linhua root 过程大概率要双清,app 信息就会被清除
    kimzn33251
        16
    kimzn33251  
       131 天前
    分享 app 把 apk 倒出来,然后报价找人逆向看看,这种 app 一般不会像超级 app 那么复杂,有逆向的可能,价格合适会有人接
    evan9527
        17
    evan9527  
       131 天前
    我这是二维码扫码开门禁,厂家倒了,用不了了,物业公告都贴出来了。
    q503315508
        18
    q503315508  
       130 天前
    看了下代码,有从服务器 下载 key 到本地数据库的,开门用到了这个 key 。跳过登录应该也没用
    q503315508
        19
    q503315508  
       130 天前
    sp 存的,找到 key 的话貌似也可以读出来?下班了不看了
    bzw875
        20
    bzw875  
    OP
       88 天前
    @linhua #12 我今天是了,adb backup 后 data.ab 文件有大小,adb restore 后依旧要我登录。apk 我是用手机克隆过来的。不存在版本不一样
    @iminto #13 我反编译了是 Kotlin 代码,好看看,不知道怎么在旧手机 debug
    bzw875
        21
    bzw875  
    OP
       88 天前
    @kkk9 钛备份要 root 权限
    @q503315508 我猜测登录之后,查询手机号属于小区哪个楼,然后下发蓝牙钥匙密码
    linhua
        22
    linhua  
       87 天前
    @bzw875 可能 adb backup restore 是备份恢复 应用的 内部存储。 你试试 将外部存储也复制一下(不需要 root 权限,外部 Android/data 目录)。再检查下看看 外部存储根目录是否有小区阿福 建的文件夹(一般没有)。
    kkk9
        23
    kkk9  
       85 天前
    @bzw875 #21 app 发我看看,有空可以帮你看看,厂家噶了还能用大概率是 app 内置算法,我帮你逆出来
    bzw875
        24
    bzw875  
    OP
       85 天前
    @kkk9 www.crsky.com/soft/397276.html 官方的下载不了了,只有第三方下载
    @iminto 我从手机拉去了 btsnoop_hci.log 这几天在研究蓝牙协议,看不太懂里面哪一段是 APP 发送的蓝牙包
    kkk9
        25
    kkk9  
       85 天前
    @bzw875 #24 这个 APP 没有禁止 ADB 备份 manifest->android:allowBackup="true",然后 openDoor 用的蓝牙 Key(代码写 Password)是存在 sqlite 的。厂家倒闭的情况下,你只能先把 App 的 Data 备份出来才能继续下一步(换机或者开锁脚本)。

    备份步骤:
    adb backup -f backup.ab -noapk com.community.custom.android
    然后你会得到 Data 的打包文件 backup.ab ,解包可以用 java -jar .\abe.jar unpack backup.ab backup.tar

    换手机,恢复步骤:
    安装同版本 App ( adb 提取一下也行),然后 adb restore backup.ab

    完事。
    bzw875
        26
    bzw875  
    OP
       84 天前
    @kkk9 #25 试过了,backup 出一个 16mb 的 ab 文件,adb restore 后,进入 APP 还是登陆页面。APP 版本一致的通过克隆过来的 APP 。
    使用华为手机关机,备份 app 数据和还原 app 数据,进入 APP 还是在登录页面。
    你有兴趣我发送 backup.ab 文件给你,留下邮箱
    kkk9
        27
    kkk9  
       84 天前
    @bzw875 #26 YXBwZGV2QGVtYWlsLmNu
    iminto
        28
    iminto  
       84 天前 via Android
    蓝牙抓包可以参考此文
    https://sspai.com/post/78993
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   3330 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 22ms · UTC 12:26 · PVG 20:26 · LAX 04:26 · JFK 07:26
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.