现在好多木马都实现了 端口复用技术,小弟也十分好奇,曾经尝试但是没有成功。不知道大家有谁知道其实现原理?能否给予帮助?说说其实现原理

解决方案 »

  1.   

    好象是自己定义一个粗糙的协议,不走UDP/TCP
      

  2.   

    SO_REUSEADDR: Allows the socket to be bound to an address that is already in use. (See bind.) Not applicable on ATM sockets.
      

  3.   

    《用TCP/IP进行网际互连第一卷》里面好像讲过,我没有用过,呵呵
    可以找这本书的电子版看看
      

  4.   

    猜测一下,也许是使用类似过滤、监听的技术,因为木马使用的端口可能已经有程序在用了,它不可能再listen,仅是猜测:)
      

  5.   

    其实就是采用TUNNEL方式。
    比如把你的木马程序发送的包头加上该端口已经BIND的程序的协议包头。
      

  6.   

    BOOL bReuseaddr=TRUE;
    setsockopt(s,SOL_SOCKET ,SO_REUSEADDR,(const char*)&bReuseaddr,sizeof(BOOL));
      

  7.   

    上面说用SO_REUSEADDR自己试过吗?我很怀疑的,
    如果地址和端口都相同的话好像只有udp容许这样的bind,tcp是不支持的FTP就是端口复用的例子。
    ----
    可以解释一下吗?
      

  8.   

    SO_REUSEADDR似乎不是你说的复用
    GZ
      

  9.   

    不知道楼主说的复用是否为多个应用同时占用
    同一个IP+PORT的情况?
      

  10.   

    FTP是怎么复用的勒?我只知道他的工作原理:监听端口21(用于用户的交互)。。当有用户请求上传或下载的时候,如果请求是PASV。则FTP服务器随机再开一个端口。FTP客户端再连接这个新开的端口进行数据的传送,当数据传送完成后(或长时间客户端无响应)服务器端会关闭这个随机开的端口...这是我自己的理解,并自己用程序实现过。希望说得不对的地方还请大侠请教^_^
      

  11.   

    To:
     alec626(月吻长河) 
    tunnel只是隧道技术把,这个应该不是端口复用把。
      

  12.   

    不知道楼主说的复用是否为多个应用同时占用
    同一个IP+PORT的情况?对我说的就是这个情况