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

android 第三方应用可以不使用系统 hosts 吗,想拦截百度输入法上传文件

  •  
  •   ColoThor · 2021-10-27 09:58:42 +08:00 · 11387 次点击
    这是一个创建于 1125 天前的主题,其中的信息可能已经有所发展或是发生改变。

    想拦截百度输入法上传文件, enter image description here

    请求域名是 ipt.qchannel03.cn enter image description here

    上图是改手机 hosts 之后的请求,不知道为什么还是请求成功,下图是 ping ,windows 命令行 l 和 1 显示的好像没啥区别。。

    enter image description here

    有大佬知道吗,要怎么拦截这个域名

    第 1 条附言  ·  2021-10-29 14:12:07 +08:00
    文件上传应该是因为接入了 QuestMobile
    42 条回复    2021-10-28 12:18:27 +08:00
    czfy
        1
    czfy  
       2021-10-27 10:01:58 +08:00   ❤️ 1
    我寻思换用 gboard 或者 rime 不行吗..
    题主问题等大佬回吧
    ColoThor
        2
    ColoThor  
    OP
       2021-10-27 10:06:58 +08:00
    @czfy 想使用斗图。。
    2i2Re2PLMaDnghL
        3
    2i2Re2PLMaDnghL  
       2021-10-27 10:59:29 +08:00
    conhost 里不要用新宋体,这个字体 1l 不分
    2i2Re2PLMaDnghL
        4
    2i2Re2PLMaDnghL  
       2021-10-27 11:00:52 +08:00   ❤️ 7
    /etc/hosts 是君子协定,又不是不能直接发 DNS 请求
    abersheeran
        5
    abersheeran  
       2021-10-27 11:03:10 +08:00
    本地起一个 DNS 服务器,把你网络 DNS 改成本地那个,再把这个域名解析到 127.0.0.1 就完事。
    efaun
        6
    efaun  
       2021-10-27 11:05:06 +08:00
    adguard?
    miyunda
        7
    miyunda  
       2021-10-27 12:08:32 +08:00
    在家肯定是自己的 DNS ,动手污染了它,比如 dnsmasq/adguardhome 什么的,再建立 vpn ,设置好 tasker ,扫不到自己的 ssid 就连 vpn
    ColoThor
        8
    ColoThor  
    OP
       2021-10-27 12:12:36 +08:00
    看了楼上回复,感觉要拦截都好麻烦的样子。。
    ZeroClover
        9
    ZeroClover  
       2021-10-27 12:18:22 +08:00
    要确保拦截只能使用本地 VPN 类型的软件,比如 AdGuard 或者是各种代理软件的规则引擎。

    DNS 拦截都是不可靠的,毕竟软件可以用 HTTPDNS 来解析。
    ColoThor
        10
    ColoThor  
    OP
       2021-10-27 12:21:48 +08:00
    @ZeroClover 好吧
    v2yllhwa
        11
    v2yllhwa  
       2021-10-27 13:23:52 +08:00 via Android
    安卓修改了 hosts 是有 root 了么?有 root 的话直接 iptables 阻断下试试?
    pckillers
        12
    pckillers  
       2021-10-27 13:31:50 +08:00   ❤️ 1
    lz 你用了 windows 上代理服务器来抓 http 的话。自然就饶过手机的 hosts 了啊。 代理服务器用的是 windows 系统的 hosts 。
    mopland
        13
    mopland  
       2021-10-27 13:43:28 +08:00
    问一下,上图是什么抓包工具?
    nba2k9
        14
    nba2k9  
       2021-10-27 13:44:19 +08:00
    QQ 输入法不也有斗图功能?
    fonlan
        15
    fonlan  
       2021-10-27 13:48:20 +08:00
    AdGuardHome 默认的规则就屏蔽了这个域名
    viphant
        16
    viphant  
       2021-10-27 13:54:32 +08:00
    同意 11 楼
    suyuyu
        17
    suyuyu  
       2021-10-27 13:59:29 +08:00   ❤️ 1
    为啥要用百度输入法 (
    andyskaura
        18
    andyskaura  
       2021-10-27 14:02:11 +08:00
    所以这是直接把信息卖给了第三方隐私收集公司了吗 查了下这个域名属于 北京贵士信息科技有限公司
    ColoThor
        19
    ColoThor  
    OP
       2021-10-27 14:09:12 +08:00
    @mopland charles
    ColoThor
        20
    ColoThor  
    OP
       2021-10-27 14:11:00 +08:00
    @pckillers 这样的吗。。
    ColoThor
        21
    ColoThor  
    OP
       2021-10-27 14:11:32 +08:00
    @v2yllhwa 没接触过,我了解下。。
    Wounmay9976
        22
    Wounmay9976  
       2021-10-27 14:17:58 +08:00 via Android
    用 adguard ,里面可以设置 dns 拦截。
    不过明确告诉你没用的,据我多年观察目前这些国产 APP 多次请求不到解析结果会用 DoH 跟自己的 dns 服务器获取解析结果。
    dingwen07
        23
    dingwen07  
       2021-10-27 14:20:52 +08:00 via iPhone
    我会直接拒绝国产输入法联网,国内安卓应该都有这个功能。iOS 不要相信系统自带的,开了 NE 软件就可以绕过。
    ColoThor
        24
    ColoThor  
    OP
       2021-10-27 14:22:03 +08:00
    @Wounmay9976 实在不行就换 gboard/rime
    ColoThor
        25
    ColoThor  
    OP
       2021-10-27 14:23:51 +08:00
    @dingwen07 看到的是“自带的”,这是 v2 处理的吗
    DAPTX4869
        26
    DAPTX4869  
       2021-10-27 14:46:43 +08:00
    直接一点把百度的网络关了不更快?
    ColoThor
        27
    ColoThor  
    OP
       2021-10-27 15:24:20 +08:00
    逆向了一下,似乎找到了关键代码

    public static File a(Context context) {
    File[] listFiles;
    File file = new File(b.d(context));
    if (file.exists() && !file.isFile() && (listFiles = file.listFiles()) != null) {
    String str = b.b(context) + b.b(context);
    try {
    l.a(str, listFiles);
    File file2 = new File(str);
    File file3 = new File(str + ".gz");
    boolean z = true;
    f.a(str);
    boolean z2 = true;
    file2.delete();
    if (!z2 || !file3.exists()) {
    z = false;
    }
    if (z) {
    com.sijla.g.a.c.a(str);
    return file3;
    }
    } catch (Throwable th) {
    com.sijla.g.a.c.a(str);
    throw th;
    }
    com.sijla.g.a.c.a(str);
    }
    return null;
    }

    代码解析:
    b.d(context) -> /data/data/com.baidu.input/files/.qmt/Qt2/
    String str = b.b(context) + b.b(context); -> /data/data/com.baidu.input/files/.qmt/ardarchive/com.baidu.input_xxx.zip
    l.a(str, listFiles) -> 生成 com.baidu.input_xxx.zip 文件
    f.a(str) -> 生成 com.baidu.input_xxx.zip.gz 文件
    com.sijla.g.a.c.a(str) -> 删除 com.baidu.input_xxx.zip 文件
    ColoThor
        28
    ColoThor  
    OP
       2021-10-27 15:27:14 +08:00
    上面代码路径为 com.sijla
    ColoThor
        29
    ColoThor  
    OP
       2021-10-27 16:06:52 +08:00
    请求方式

    ![enter image description here]( https://s1.328888.xyz/2021/10/27/eIzEB.png)
    ColoThor
        30
    ColoThor  
    OP
       2021-10-27 16:16:59 +08:00
    请求 url 来自 Qt.so 中的 rlard 方法,传入参数 int 1

    ![enter image description here]( https://s1.328888.xyz/2021/10/27/eIpAT.png)
    szdosar
        31
    szdosar  
       2021-10-27 16:21:28 +08:00
    @Wounmay9976 这也太流氓了吧。//据我多年观察目前这些国产 APP 多次请求不到解析结果会用 DoH 跟自己的 dns 服务器获取解析结果。
    cev2
        32
    cev2  
       2021-10-27 17:10:16 +08:00
    @szdosar 这有啥流氓的,是各家 APP 之前被 DNS 劫持搞怕了,上点儿用户规模的 APP 很多都选择内置 HTTPDNS 来解析域名。DNSPod 称为“移动解析”业务,114DNS 也支持。
    Anarchy
        33
    Anarchy  
       2021-10-27 18:57:09 +08:00 via Android
    可以考虑不同意隐私协议,使用基础模式看看。
    Maiiiiii
        34
    Maiiiiii  
       2021-10-27 19:28:35 +08:00
    vpn 可以
    zx900930
        35
    zx900930  
       2021-10-27 21:31:49 +08:00
    主路由上装个 pihole, 问题解决
    SenLief
        36
    SenLief  
       2021-10-27 21:38:01 +08:00 via Android
    gboard
    zhanlanhuizhang
        37
    zhanlanhuizhang  
       2021-10-27 21:38:36 +08:00
    下个手机翻墙软件,自定义一下。只拦截百度的某些连接。
    getadoggie
        38
    getadoggie  
       2021-10-28 01:03:39 +08:00 via iPhone
    @dingwen07 啥意思,是说 iOS 自带的不行吗
    dingwen07
        39
    dingwen07  
       2021-10-28 01:40:22 +08:00
    @getadoggie #38 iOS 国行的控制联网权限在开启 Network Extension ( VPN )的情况下,被限制的 App 可能可以联网,可能是因为流量请求被算到了开启 NE 的 App 上。
    XiLingHost
        40
    XiLingHost  
       2021-10-28 08:40:24 +08:00
    试试看加路由表把这个 ip 黑洞掉
    cheng6563
        41
    cheng6563  
       2021-10-28 09:23:47 +08:00
    何苦呢,直接把联网权限淦了呗,或者直接不用
    getadoggie
        42
    getadoggie  
       2021-10-28 12:18:27 +08:00 via iPhone
    @dingwen07 呀,我以为这个漏洞修复了,结果没有,我之前使用了好一段时间的百毒输入法…
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1183 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 23:12 · PVG 07:12 · LAX 15:12 · JFK 18:12
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.