如何获取一个 app 所有使用的端口? - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
diwenx
V2EX    Android

如何获取一个 app 所有使用的端口?

  •  
  •   diwenx 2022-09-19 13:53:53 +08:00 12180 次点击
    这是一个创建于 1125 天前的主题,其中的信息可能已经有所发展或是发生改变。

    请问一下,如何找到一个 app 所有正在进行中的网络连接以及端口呢?比如该 app 与 8.8.8.8 有保持 tcp 连接 ( 127.0.0.1:34555 <-> 8.8.8.8:53 ), 如何能够获取到该信息呢?

    谢谢!

    9 条回复    2022-09-20 12:17:20 +08:00
    diwenx
        1
    diwenx  
    OP
       2022-09-19 13:56:22 +08:00
    我尝试使用过 adb shell cat /proc/PID/net/{tcp/udp},类似于这种:

    sl local_address rem_address st tx_queue rx_queue tr tm->when retrnsmt uid timeout inode
    37: 03EC1BAC:96A9 080D3C17:01BB 08 00000000:00000000 00:00000000 00000000 10005 0 543533 1 0000000000000000 22 3 26 10 1400
    38: 03EC1BAC:F6C9 6276000A:0035 06 00000000:00000000 03:0000033A 00000000 0 0 0 3 0000000000000000
    39: 03EC1BAC:0DD3 6276000A:0035 06 00000000:00000000 03:0000048D 00000000 0 0 0 3 0000000000000000

    但发现虽然有些条目的 uid 可以知道是是哪个进程创建的 (比如#37 的 10005 ),但有些条目的 uid 为 0 (比如#38 ,#39 ),对于 uid 为 0 的条目,如何知道是哪个进程创建的该连接呢?

    如果 cat /proc/PID/net/{tcp/udp}是错误的途径,也请指出哪个文件包含着该信息,谢谢!
    AoEiuV020CN
        2
    AoEiuV020CN  
       2022-09-19 16:30:47 +08:00
    直觉判断 app 自身没有权限获取这个,
    另外你都进入 /proc/PID 了, 这里面的连接自然都是这个 PID 进程创建的连接了,
    brader
        3
    brader  
       2022-09-19 17:19:06 +08:00
    使用代理实现?你可以使用一些代理软件,要高度定制的话,就自己写一个代理程序,然后手机使用代理上网,这样所有网络行为都会被代理记录下来
    diwenx
        4
    diwenx  
    OP
       2022-09-20 04:36:11 +08:00
    @AoEiuV020CN 有些连接的信息会同时在不同的 /proc/PID/出现,所以才会想去使用 uid
    diwenx
        5
    diwenx  
    OP
       2022-09-20 04:37:09 +08:00
    @brader 你好,我是这样做了后想区分 pcap 里的某些 flow 是由哪个 app 发出来的。请问这有什么办法能实现吗?谢谢
    tramm
        6
    tramm  
       2022-09-20 09:08:20 +08:00
    不知道手机里有没有 lsof
    brader
        7
    brader  
       2022-09-20 09:15:27 +08:00
    @diwenx 这个我平时都是靠观察,多关闭打开几次 APP ,人工观察记录下它总是会请求哪些域名和 IP
    brader
        8
    brader  
       2022-09-20 09:24:54 +08:00
    @diwenx 对了,我以前用过一个安卓版的抓包工具,VNET ,它抓包可以设置只抓某个 APP 的包,你可以试试合用不合用
    meetcw
        9
    meetcw  
       2022-09-20 12:17:20 +08:00
    @tramm 昨天好奇测试了下,安卓的 lsof 好像是个阉割版。
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     2500 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 29ms UTC 10:44 PVG 18:44 LAX 03:44 JFK 06:44
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86