NetCat

NetCat

IP1 : 192.168.0.100 和 IP2 : 192.168.0.101

IP1是Windows机器,IP2是Linux机器

一、未加密通信

  • IP1输入: nc -l -p 22222

  • IP2输入: nc 192.168.0.100 22222

    -l : 代表这台电脑是接受者
    -p : 指定传输端口
    
    • 这样既可互相通信【PS:Windows和Linux的编码形式不同,所以输入汉字可能存在乱码,但同一个系统传输不会存在乱码】

二、文件传输

1、文件传输

  • IP1【传输文件的】:nc -v -w 30 -l -p 22222 < C:\Users\30352\Desktop\1.php

  • IP2【接收文件的】:nc -v -w 5 192.168.0.100 22222 > /home/mpy/123.php

    -v : 代表两者屏幕会有反馈
    -w : 代表nc在传输开始计时前等待的秒数,也表示传输完成后多少秒断开
    < : 提取文件,并将它放入接受者电脑中
    > : 从一台机器中提供输出的文件,并把它放入新的文件
    

2、目录传输

  • IP1【传输目录的】 : tar -zcvf - 目录名 | nc -l -p 22222 -w 15
  • IP2【接收目录的】 : nc 192.168.0.100 22222 -w 3 | tar -zxvf -

传输目录的-w15秒【存在-l的情况下】指的是开启本地监听如果15秒内每人连接就断开监听,或者是传输完毕后15秒后断开连接

接受目录的-w3秒指的是3秒内没有连接到指定IP和端口就断开连接,或者是传输完毕3秒后断开连接

  • IP1【接受目录的】 : nc -l -p 22222 -w 15 | tar -zxvf -

  • IP2【传输目录的】: tar -zcvf - -目录名 | nc -l -p 192.168.0.100 22222 -w 3

    -zcvf : 压缩文件
    -zxvf : 解压文件
    

三、创建合法的远程外壳

远程外壳(英语:remote shell,缩写:rsh)是一个命令行界面计算机程序,可以作为另一个用户计算机网络中的另一台计算机上执行shell命令

1、通过Windows远程执行cmd控制Windows

  • IP1输入 : nc -Lp 22222 -vv -e cmd.exe
  • IP2输入 : nc 192.168.0.100 22222
    • IP2就可以在自己电脑上执行IP1的电脑
-L : 电脑持续监听指令的状态【其他连接断开还会继续监听其他连接,不会断开】
-vv : 详细的输出
-e : 打开安全漏洞
cmd.exe : nc执行这个指令可以在一台远程电脑上获得

2、通过Linux远程执行/bin/bash来控制Linux

  • IP2输入 : sudo nc -lp 22222 -e /bin/bash
  • IP1输入 : nc 192.168.0.101 22222

四、加密传输信息

使用 cryptcat 进行加密传输

  • IP1输入 : cryptcat -k admin -l -p 22222

  • IP2输入 : cryptcat -k admin 192.168.0.100 22222

    -k : 使用密码或者堆成秘钥生成
    admin : 代表密码【两者必须一致】
    
posted @ 2022-07-12 18:05  余星酒  阅读(174)  评论(0)    收藏  举报