长安二代CS75Plus,自签app安装app到车机
本帖最后由 hcf6666 于 2024-4-21 12:44 编辑## 声明
> 本文章中所有内容仅供研究、学习交流使用,不能用作其他任何目的,严禁用于商业用途和非法用途,否则一切后果自负,与作者无关。如有侵权请联系作者删除文章。
## 前言
手里有长安的都知道,长安汽车除了部分车机有应用商店,自己想安装软件,要费点功夫,老版本可以解锁后挂载system分区用adb root安装app,很多人叫这种方式为扎根。但是新版本限制了这部分权限,导致无法解锁挂载system分区。
那为啥不用adb install直接安装呢?因为安装会验证证书这些,导致不能成功安装,所以本文就是想办法解除该限制。
## 流程
如何定位到关键点这里不过多赘述,最终定位到boot-ext.vdex这个文件,然后转为dex,丢到JEB里面,找到com.vecentek.security.CertificateManager 这个包。
找到isCheckAuth这个方法,可以看到会检查指定包名是否在白名单,不在的话后面会parseSignature 解析签名,然后getSerialNumber 获取 SerialNumber 并和系统app的比对,所以这个签名序列号应该就是突破点,那我们尝试按照这个序列号生成一个签名,签一个app推进去试试。
备注:boot-ext这部分属于为辰加密,不知道这样写是长安要求还是怎样,反正这个也算留了个后手吧。
## 生成证书
先提取一个系统app的签名,然后打印信息瞧瞧序列号是多少
```shell
keytool -printcert -file CERT.RSA
```
```shell
#生成私钥
openssl genrsa -out private.key 2048
#生成v1证书
openssl req -new -key private.key -out csr.csr -subj "/emailAddress=auto_release@auto-pai.com/CN=SCM/OU=Software/O=WTCL/L=HaiDian/ST=Beijing/C=CN"
openssl x509 -req -in csr.csr -signkey private.key -out certificate.crt -days 18250 -set_serial 0xddb66eefd98476f3
#将证书和私钥导出到 PKCS12 格式的密钥库文件
openssl pkcs12 -export -in certificate.crt -inkey private.key -out cert.p12 -name cert
#生成jks
keytool -importkeystore -srckeystore cert.p12 -srcstorepass 123456789 -srcstoretype PKCS12 -destkeystore cert.jks -deststoretype JKS -deststorepass 123456789 -noprompt
#签名
java -jar apksigner.jar sign --ks cert.jks --ks-pass env:password --ks-key-alias "cert" --out "test_sign.apk" "test.apk"
```
## 提示
此方法可以应用于长安大部分车型,弊端是安装的软件不能卸载,因为这样修改签名会被识别成系统应用不允许卸载,只能恢复出厂。
我遇到一个问题:
我使用apktool修改包名后,重现打包。
然后在用这个步骤给重新打包的apk签名。
最后安装,会提示安装失败:”安装应用与当前系统有兼容性问题”
但是我要直接给官方包以这种方式签名,它就没问题
或者我逆向完,用其它工具给签名,也没问题
就很奇怪 大佬,请教一下。按照您的方法生成的签名,算普通签名,还是平台签名呢?是否具有运行某些特殊权限的能力。比如隐藏api,或者android:sharedUserId="android.uid.system"这个系统级权限?感谢。 好办法,提取一个系统app的签名后,是直接使用吗?还是自己怎么再生成一个新的呢? 白名单软件 怎么才能推到车机里 用什么命令呢 白名单,卖工具又要开心了 又能白嫖了{:301_991:} wj21 发表于 2024-4-21 10:43
好办法,提取一个系统app的签名后,是直接使用吗?还是自己怎么再生成一个新的呢?
生成新得签名文件 免root卸载器能否卸载掉 yufeiyang2008 发表于 2024-5-11 16:09
免root卸载器能否卸载掉
部分无法卸载 长安车机通用啊{:301_993:} 谢谢@Thanks!
mark !!!!!