反弹端口的原理

来源:百度知道 编辑:UC知道 时间:2024/06/19 09:31:21
如题..反弹端口原理是什么.高手请解说下.

如果对方装有防火墙,客户端发往服务端的连接首先会被服务端主机上的防火墙拦截,使服务端程序不能收到连接,软件不能正常工作。同样,局域网内通过代理上网的电脑,因为是多台共用代理服务器的IP地址,而本机没有独立的互联网的IP地址(只有局域网的IP地址),所以也不能正常使用。就是说传统型的同类软件不能访问装有防火墙和在局域网内部的服务端主机。但往往是道高一尺、魔高一丈,不知哪位高人分析了防火墙的特性后发现:防火墙对于连入的连接往往会进行非常严格的过滤,但是对于连出的连接却疏于防范。于是,与一般的软件相反,反弹端口型软件的服务端(被控制端)主动连接客户端(控制端),为了隐蔽起见,客户端的监听端口一般开在80(提供HTTP服务的端口),这样,即使用户使用端口扫描软件检查自己的端口,发现的也是类似 TCP UserIP:1026 ControllerIP:80 ESTABLISHED 的情况,稍微疏忽一点你就会以为是自己在浏览网页(防火墙也会这么认为的)。看到这里,有人会问:既然不能直接与服务端通信,那如何告诉服务端何时开始连接自己呢?答案是:通过主页空间上的文件实现的,当客户端想与服务端建立连接时,它首先登录到FTP服务器,写主页空间上面的一个文件,并打开端口监听,等待服务端的连接,服务端定期用HTTP协议读取这个文件的内容,当发现是客户端让自己开始连接时,就主动连接,如此就可完成连接工作。本软件用的就是这种“反弹端口”原理,可以穿过防火墙,甚至还能访问局域网内部的电脑。