seers
V2EX  ›  Android

Android 和 iOS 双持,谈谈开放的 Android 不如封闭的 iOS 的一个地方

  •  
  •   seers · Sep 2, 2022 · 17525 views
    This topic created in 1527 days ago, the information mentioned may be changed or developed.

    唯一让我不爽的一点,Android 不信任用户的根证书,但是 iOS 反而大大方方的,非常奇怪,Android 就好像风韵少妇,嘴上怎么调戏都行,就是不让最后一步,iOS 仿佛高贵冷艳御姐,但是只要你有了 key ,就可以为所欲为,非常反差。

    26 replies  •  2022-09-09 19:47:40 +08:00
    KagurazakaNyaa
    KagurazakaNyaa
    Sep 2, 2022❤️1
    1
    可能是因为 Android 的根证书安装起来门槛太低了,不过用户根证书也是可以安装到系统根里的,只要你 root 了就可以

    另外是否信任用户根其实是应用的选择,应用甚至可以不信任系统根而是信任内置的公钥
    butanediol2d
    butanediol2d
    Sep 2, 2022 via iPhone
    2
    @XiLingHost 能不能详细说明一下,root 之后如何添加根证书。Android 直接在设置中添加需要连密钥一同添加,我并不想把密钥也放进去。于是我直接把证书放到系统的证书目录里(目录应该是没错,我看设置中列出的其他预装根证书都在这个目录里)。但这样操作之后,手机安装的软件还是不信任我的 CA ,并且系统也弹出不信任的 CA 的通知。
    churchmice
    churchmice
    Sep 2, 2022 via Android❤️3
    3
    @butanediol2d 不是直接放就行,名字有讲究,要生成对应的名字才行,具体的生成方法我忘记了。我有自己的 CA,root 之后改对名字放进对应目录一直没问题
    churchmice
    churchmice
    Sep 2, 2022 via Android
    4
    Goooler
    Goooler
    Sep 2, 2022
    5
    NULL2020
    NULL2020
    Sep 2, 2022
    6
    所以,安卓小白想问问,到底怎么样可以愉快地抓包?
    CEBBCAT
    CEBBCAT
    Sep 2, 2022 via iPhone
    7
    @NULL2020 http 该怎么抓怎么抓,https 需要安装证书,Android 到一定版本后还需要使用类似 JustTrustMe 之类的插件。再多的细节就记不得了。如果遇到证书绑定的 App ,要更麻烦一些

    你 Google 了吗?怎么说?
    butanediol2d
    butanediol2d
    Sep 2, 2022 via iPhone❤️1
    8
    @churchmice 感谢,我尝试一下。
    codehz
    codehz
    Sep 2, 2022
    9
    iOS 也不是没有 ssl pinning ,只是好像没安卓那么广
    dingwen07
    dingwen07
    Sep 2, 2022 via iPhone
    10
    应该 Google 为了防止人们过滤广告
    ByteCat
    ByteCat
    Sep 3, 2022
    11
    iOS 上遇到过 SSL Pinning 的,那种就很难搞了
    1nKya
    1nKya
    Sep 3, 2022
    12
    @NULL2020 大概可以考虑 WSA 喵?
    SenLief
    SenLief
    Sep 3, 2022 via iPhone
    13
    ssl pinning 咋解决的?
    tbg
    tbg
    Sep 3, 2022
    14
    比喻很形象
    wwbfred
    wwbfred
    Sep 3, 2022
    15
    Android 我记得用户导入的根证书和系统自动信任的根证书位置是不一样的,某些情况下系统不认,要想达到同等的效果需要 ROOT 。
    iOS 信任的根证书也不是无条件的,苹果的一些域名只能用系统证书,无解。SSL Spinning 只能搞自签名应用,要么每年给苹果交钱,要么一周过期一次。过两年侧载法律落地了应该就没有这个问题了。
    albert0yyyy
    albert0yyyy
    Sep 3, 2022
    16
    但是只要你有了 root ,也可以为所欲为 /doge
    albert0yyyy
    albert0yyyy
    Sep 3, 2022❤️1
    17
    @NULL2020 Android-SSL-TrustKiller 或者 JustTrustMe 模块或者直接用将用户证书置为根证书,用 Fiddler ,能抓 https 明文
    albert0yyyy
    albert0yyyy
    Sep 3, 2022
    18
    而且只是 Android 7 以上不信任用户证书,可以说是 Android 在普通消费者版本逐渐在收紧权限。

    退一步说 Android 也还是开发源代码的,可以比喻为 Android 在外眼里逐渐从疯丫头变成乖巧,在家里头身体每个细胞你都能掌控
    albert0yyyy
    albert0yyyy
    Sep 3, 2022
    19
    而且对于普通消费来说确实是安全了,确实难抓包了,全是空包。

    对于开发者来说,备一台 root 开发机应该是比较好的。
    albert0yyyy
    albert0yyyy
    Sep 3, 2022
    20
    @NULL2020 或者手机运行 root 虚拟机或者平行空间,虚拟机里安装根证书,手机抓虚拟机的包
    NULL2020
    NULL2020
    Sep 3, 2022
    21
    @albert0yyyy #20 所以,按你这么说,就一点不愉快啊,一堆魔法操作,安卓小白根本不会
    albert0yyyy
    albert0yyyy
    Sep 3, 2022
    22
    @NULL2020 啊这,你都想抓包了。。。这不就是逆向了,和人家逆着来哪里会愉快。只能多学点技术愉快起来。
    huarong
    huarong
    Sep 3, 2022
    23
    android 信任用户证书的问题,可以用下面这个工具解决,不需要 root 。
    huarong
    huarong
    Sep 3, 2022❤️2
    24
    android 信任用户证书的问题,可以用下面这个工具解决,不需要 root:
    apk-mimt: https://github.com/shroudedcode/apk-mitm

    apk-mitm automates the entire process. All you have to do is give it an APK file and apk-mitm will:

    1. decode the APK file using Apktool
    2. replace the app's Network Security Configuration to allow user-added certificates
    3. modify the source code to disable various certificate pinning implementations
    4. encode the patched APK file using Apktool
    5. sign the patched APK file using uber-apk-signer
    realpg
    realpg
    Sep 4, 2022
    25
    @albert0yyyy #19
    你确定是开发者而不是破解别人开发软件的人么?
    lushan
    lushan
    Sep 9, 2022
    26
    使用 magisk 进行 root ,然后使用这个 https://github.com/Magisk-Modules-Repo/movecert 即可
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   1497 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 54ms · UTC 06:09 · PVG 14:09 · LAX 22:09 · JFK 01:09
    ♥ Do have faith in what you're doing.