• 请不要在回答技术问题时复制粘贴 AI 生成的内容
fengleidongxi
V2EX  ›  程序员

关于安卓抓包

  •  
  •   fengleidongxi · Sep 11, 2017 · 7242 views
    This topic created in 3343 days ago, the information mentioned may be changed or developed.

    好多方法抓包只能看到共享 UID,看不到数据包来自哪个程序,有什么办法可以看到?

    tcpdump、wireshark 连 UID 都看不到?

    30 replies  •  2017-09-14 12:36:11 +08:00
    xanthuiop
    xanthuiop
    Sep 11, 2017
    1
    安卓直接在手机上用 packet capture(不需要 root)不就可以了,这软件可以看到是哪个程序的包
    ltux
    ltux
    Sep 11, 2017
    2
    使用 vpn 模式的抓包软件呗。tcpdump 只管网络,才不管 UID。别说安卓嘞,你就是在 windows 上用 wireshark 也不支持查看包来自哪个程序。
    choury
    choury
    Sep 11, 2017
    3
    我写的程序可以显示应用的数据流向,虽然可以抓包,但是我不是为了抓包,你懂的
    ila
    ila
    Sep 11, 2017 via Android
    4
    @choury 学雷锋不留名
    NoAnyLove
    NoAnyLove
    Sep 12, 2017
    5
    @xanthuiop 这个软件有点意思,用的什么技术实现的?
    CFM880
    CFM880
    Sep 12, 2017
    6
    用 Charles/Fiddler 抓包,在手机上设置代理,人工看是属于哪个应用的,基本也能满足抓包要求
    HuangLibo
    HuangLibo
    Sep 12, 2017
    7
    Charles +1
    xanthuiop
    xanthuiop
    Sep 12, 2017 via Android❤️1
    8
    @NoAnyLove 没研究过....好像是用的这个 https://github.com/libuv/libuv
    fengleidongxi
    fengleidongxi
    OP
    Sep 12, 2017
    9
    @xanthuiop 这个不行,共享 UID 的程序,仍然看不到具体是哪个程序在发送数据包
    fengleidongxi
    fengleidongxi
    OP
    Sep 12, 2017
    10
    @ltux VPN 模式的我都尝试好几个了,共享 UID 的程序,看到不具体是哪个程序
    fengleidongxi
    fengleidongxi
    OP
    Sep 12, 2017
    11
    @choury 你的可以看到共享 UID 中具体是哪个程序在发送数据包吗?比如 UID1000,有十几个程序,只能看到是 UID1000 这十几个程序在发送,但具体无法捕捉到是这十几个程序中的哪个程序
    fengleidongxi
    fengleidongxi
    OP
    Sep 12, 2017❤️1
    12
    @NoAnyLove 基本 VPN 代理,创建一个虚拟的 VPN 连接
    fengleidongxi
    fengleidongxi
    OP
    Sep 12, 2017
    13
    @CFM880 谢谢,我研究一下这个
    fengleidongxi
    fengleidongxi
    OP
    Sep 12, 2017
    14
    @HuangLibo 谢谢
    choury
    choury
    Sep 12, 2017
    15
    @fengleidongxi #11 你要是没 root 当然只能看到 uid,root 了就能知道 pid 了,就知道程序了
    NoAnyLove
    NoAnyLove
    Sep 12, 2017
    16
    @xanthuiop Orz,点错了。。。。。。那是用来做消息循环的异步库啊
    NoAnyLove
    NoAnyLove
    Sep 12, 2017
    17
    @fengleidongxi 如果我没记错的话,$$好像也是用的这个技术来实现为指定 APP 提供服务的吧。除了系统自带的程序以外,安装的 APP 应该每一个都有独立的 UID 吧?为什么会有共享的 UID 情况?
    choury
    choury
    Sep 12, 2017
    18
    @NoAnyLove #17 你自己搜 shared uid
    fengleidongxi
    fengleidongxi
    OP
    Sep 12, 2017
    19
    @choury 你指的哪种方法 ROOT 后可以看到 PID ?设置已 ROOT,我试过多种方法只能看到 UID,或者程序名,共享 UID 看到的是几十个程序名
    fengleidongxi
    fengleidongxi
    OP
    Sep 12, 2017
    20
    @NoAnyLove 为什么会有共享 UID 呢?因为可以共享数据,因为可以。。。。。。哎~~~哎~~~
    choury
    choury
    Sep 12, 2017
    21
    @fengleidongxi #19 读取 proc 目录,解析 /proc/pid/fd 目录下面的文件就可以了
    jisibencom
    jisibencom
    Sep 12, 2017
    22
    Fiddler 不知道为什么,一开搞得我网都不能上,代理也设置了
    agostop
    agostop
    Sep 12, 2017
    23
    感觉这些问题,基本都跟 android 没啥大关系,都还是 Linux 那一套。
    fengleidongxi
    fengleidongxi
    OP
    Sep 12, 2017
    24
    @CFM880 研究了半天,还是看不到是哪个应用请求的
    fengleidongxi
    fengleidongxi
    OP
    Sep 12, 2017
    25
    @choury 可以留个邮箱,咱们详谈吗?详谈
    fengleidongxi
    fengleidongxi
    OP
    Sep 12, 2017
    26
    @agostop android and linux 是什么关系
    NoAnyLove
    NoAnyLove
    Sep 12, 2017
    27
    @fengleidongxi 我看了一下一下自己手机上的进程,感觉每一个不同的 App 都是用的不同的 UID 在运行,而且 /data/data 下的目录也是不同 App 用的不同 UID 和 GID 进行创建。什么情况下会出现共享 UID ?
    agostop
    agostop
    Sep 13, 2017
    28
    随便百度一下 linux 流量 pid,应该就能解决这个问题吧?
    shawlib
    shawlib
    Sep 13, 2017
    29
    @xanthuiop 我试了试,很多 app 屏蔽了这个抓不到,有什么解决办法吗?
    xanthuiop
    xanthuiop
    Sep 14, 2017 via Android
    30
    @shawlib 你可以 root 以后试试 bitshark(比特鲨)应该能抓到,这是手机版的 wireshark,我是码畜,平常也就是抓包玩玩,对这也没什么研究...我也不是很清楚...凭我玩 linux 经验来看,怕是应用权限不够啊...
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   1693 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 63ms · UTC 05:25 · PVG 13:25 · LAX 21:25 · JFK 00:25
    ♥ Do have faith in what you're doing.