小弟,想用JAVA写一个,获得本机,QQ的通信数据,但有一个问题??可以知道QQ的端口,但是,当用JAVA监听这个端口时,因为,它被QQ已经用了,,好象没法监听???是不是这样袄??

解决方案 »

  1.   

    好象就和lumaQQ差不多,linuxeden有下载,JAVA写的
      

  2.   

    hook
    java是做不到的..
    嘿嘿...
      

  3.   

    你们知道QQ是怎样一个工作原理吗?服务器端的端口是固定的8000,客户端的端口产生就是随机的了。
    应该不能监听吧,我觉得唯一的一个办法就是用原始SOCKET捕获通过本机的所有IP包,然后再进行分析。不过这基本上很难,QQ的消息是经过加密的。
      

  4.   

    本人觉得有点难~
    服务器的端口你是知道的。但是本机的端口你不知道~
    就算你打开了天网,可以看到每个应用程序所监听的端口~
    会发现一般每个QQ都有多个端口监听~
    默认情况下使用UDP登陆,全部使用UDP端口监听
    [UDP方式登录] [219.133.49.22:8000]
    也可以设置为TCP登陆 [218.17.209.23:XXXX]
    我看了天网,除了监听本机,有7个端口在监听[UDP]反正我不知道怎么hook一个端口,大概也就是把发送到这个端口上的所有数据都接受了吧~
    但是你不知道QQ发送的数据的数据结构,而且可能这个数据还是经过加密的~
    所以说这就更难了~如果由高手能够知道怎么办~
    就请发源代码给我 [email protected]
    非常感谢~
      

  5.   

    我感觉要是做这个好像有些难度如果由高手能够知道怎么办~
    就请发源代码给我 [email protected]
    非常感谢~
      

  6.   

    非常关注...
     如果又高手有原码给我一分!
     我要好好研究!
     [email protected]
      

  7.   

    如果java能截获数据包就能做到
      

  8.   

    这种win底层的
    java 能实现么?
    你最好用c/c++实现
      

  9.   

    qq 通訊協議是TCP吧
    msn 才是udp的吧
      

  10.   

    java好像不能实现吧
    sniffer
      

  11.   

    占个坑。
    可以问问LUMAQQ的作者。他对这个可能清楚些。
      

  12.   

    用raw socket,可惜java好像没有这个。