关于Build Your Own Botnet的尝试

这是一次失败的尝试、

原文地址:关于Build Your Own Botnet的尝试 - Pleasure的博客

下面是正文内容:

前言

我在上一篇关于DDOS的文章种提到过这个项目,而且说明了由于这个项目是在2020年发布并开源的,并且已经有两年没有进行跟进,众多系统和模块的迭代导致如今这个项目已经很难再正常部署并运行(不是版本问题就是模块不兼容)。

在网上查阅相关资料的时候发现关于这方面的资料真的很少很少(毕竟谁闲的没事会去研究这玩意)

BYOB也是一个冷门的项目料想也不会有什么人来看,就当自我安慰一下,也算是成果的一部分。麻烦大家同情同情,点个关注谢谢。

在开始之前关于相关编程环境的配置可以去看我最近发的关于Windows编程环境配置的文章。

本人浪费了整整一周的时间尝试也没能成功,只能特此写一篇纪实。这应该是我迄今为止搞过最麻烦的一个项目了……

正文

BYOB——即Build Your Own Botnet。出于教育目的帮助网安人员快速建立botnet进行相应的操作。

GitHub上的一个开源项目,地址放在这:GitHub - malwaredllc/byob: An open-source post-exploitation framework for students, researchers and developers.

当下载完项目压缩包后就会立刻报毒,毕竟项目什么用途大家都心知肚明。打开后可以看到两个主要的文件夹:byob和web-gui。其中byob就是直接通过python进行操作的主程序,而web-gui则是通过部署网络图形界面从而方便不懂得程序的人进行操作。

虽然看着很强,但是由于作者开发的原因在部署上或许会有很多困难。很多模块现如今已经无法再安装了,大家看看就可以了。为了能将整个过程的全貌尽可能展现,所以图片的文字可能较小,大家体谅一下。

如果真心想研究可以参考一下下面两篇文章,还是很有帮助的。

僵尸网络-刺痛内网心脏的针 – XiaoliChan's Blog 或 搭建byob僵尸网络 | CTTalk 长亭合作伙伴技术社区

下面会分别从这两个方面来描述一下个人使用体验。

主应用程序

注意事项

我一开始准备的是两台Windows系统的电脑,一台是主机管理机,一台是Windows11的虚拟机受控机。

直到我看到了这一句话……我直接崩溃了,但总体的操作步骤是一样的,和自己和解了。

为了防止逆向工程,受控机默认是不允许是沙盒环境或是虚拟机的。但是我实在没有这么多的设备了总不好直接对其他人的设备下手吧……

我看网上成功的案例都是在2018年!而且使用的都是Python2.7版本!

命令行中需要事先准备的一些指令(配置环境变量),由于我使用的是Windows系统,所以需要安装Windows版本的git指令。还需要安装3.8.6版本的python。

另外就是upx模块,以及visual studio的C语言编译器。

题外话:由于python不断更新的问题导致了一些库的更新以及弃用:比如在3.4版本之后imp模块被importlib模块正式替代,在3.8版本中pyhook不再被直接支持,一些远古项目甚至要用到2.7版本……如果存在模块问题大家看着办解决吧,我也无能为力了。

首先安装环境

参考操作视频:https://www.youtube.com/watch?v=TBSh_w0I-z8

首先必须要安装相应的环境,即requirements.txt中所罗列的模块以及特定版本——如果在哪一行报错了就要相应的进行独立纠错再重新安装(很麻烦,为了截一张图真的不容易,大家点个关注)。

python ./setup.py 
或者
pip install -r ./requirements.txt

可以看到都是在安装到pyhook的时候中断了,重新下载部署完继续就可以成功。

相应操作环境搭建完成后就可以通过clients.py开始生成木马了

输入python clients.py 192.168.56.1 8888 --name test --compress --freeze 开始生成文件

成功生成exe可执行文件

另外打开一个命令行窗口输入python server.py --host192.168.56.1 --port 8888 等待受控机的连接

输入sessions可以检查受控机的状态

然后最令人崩溃的来了

就是连接木马的这一步,不是显示就是现实exe无法执行

大家另请高明吧

WEB应用程序

题外话:最好不要在VPS(即服务器)中进行这种项目试验。这种项目基于控制台内置了很多操作脚本,用于方便他人的使用,所以通常需要一个web-gui界面——即需要开放一个端口用URL访问来进行操作(https://127.0.0.1:5000类似这种)(类似的项目还有OpenVAS)。然而你可能会在不知情的情况下在VPS部署后造成端口占用进程占用从而发生如网站Nginx服务无法启动之类的情况。还是老老实实在虚拟机上试验吧。(由于装了太多的虚拟机和大型游戏1T的硬盘空间都快不够了……)

下面是作者的安装演示视频:https://www.youtube.com/watch?v=uVyniPrTzuk

这里再附带一个Ubuntu虚拟机的下载地址,管理机的相应操作好像需要在Linux系统中进行(可谓干货满满了,麻烦大家关注一下)

参考文章:技术|完整指南:使用 VirtualBox 在 Windows 上安装 Ubuntu

补充一句网上关于Windows11虚拟机的个人下载大多都需要通过网盘链接任务或是BT种子的模式进行下载

由于某些原因Linux开源中国现以停止更新,系统镜像在VirtualBox和VMware里安装都可以

官方下载地址:https://releases.ubuntu.com/23.10.1/ubuntu-23.10.1-desktop-amd64.iso

由于镜像大小超过4GB上传某度网盘需要开通超级会员,这里就不提供个人下载地址了

部署方式就按照通用的虚拟机部署方式,官网提供的参考参数

首先安装相应的环境,直接以管理员身份运行startup.sh或是分别安装requirements.txt中所需要的模块。

安装所需的时间较长,而且需要更改相应的镜像源!

安装成功后,运行run.py就可以打开网页:(Linux会默认开启apache服务)

进行网页操作的是服务端,命令行插入后门的是客户端即受控机。而在现实生活中,这个后门的插入,就可能会是因为一个连接,一个exe,一个U盘……

打开网址127.0.0.1:5000后显示的就是下面的界面

还是同样的问题,全部都弄好了,就是在木马连接受控机的时候出现问题始终无法成功!我也不知道是什么原因……

理论上是只需要通过这个webshell输入命令行就可以省去植入C2或是RAT后门的步骤,直接操控众多bot快速执行攻击命令从而起到放大攻击隐藏真实攻击IP的效果。

所以这边建议,如果你真的居心不妥而且想要通过DDOS搞垮目标服务器,还是直接去.onion寻找相关服务吧……比如,下面这张图片:后果自己承担!

尾声

在网络安全中存在通过php一句话木马结合PUTTY直接通过ssh连接接管服务器的可能。

byob还要求受控机上有相应的开发环境,可谓是要求重重。

这两种方法都需要对受控机拥有绝对的掌控权限,这样的话还不如直接去租一台VPS来的直接。

可能真正有意思的是整个部署的过程吧。

毕竟现实生活中存在杀毒软件和防火墙,受控机成功的可能性真的是少的可怜。

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

身份治理存在权限问题

身份治理正迅速成为 CISO 的首要考虑因素。二十年前,当萨班斯-奥克斯利法案(SoX) 和其他监管指令在互联网泡沫破灭后诞生时,身份治理要求就出现了。合规性控制,例如用户访问审查和有效管理员工访问生命周期的需要,是当时身份治理的…

1.2.1 相机模型—内参、外参

相机模型-内参、外参 更多内容,请关注: github:https://github.com/gotonote/Autopilot-Notes.git) 针孔相机模型,包含四个坐标系:物理成像坐标系、像素坐标系、相机坐标系、世界坐标系。 相机参数包含&…

typescript类型详解

因为介绍了ts的全部类型,所以比较长,各位可以通过目录选择性观看 typescript类型概述typescript 类型注解概念-->监测类型变化 ts类型注解语法ts常用类型原始类型对象类型对象类型_数组类型 ts新增,联合类型ts函数类型ts 函数类型 voidts 函数类型可选参数 ts 对象类型ts 可…

The method toList() is undefined for the type Stream

The method toList() is undefined for the type Stream &#xff08;JDK16&#xff09; default List<T> toList() { return (List<T>) Collections.unmodifiableList(new ArrayList<>(Arrays.asList(this.toArray()))); }

Leetcode 503. 下一个更大元素 II

题意理解&#xff1a; 给定一个循环数组 nums &#xff08; nums[nums.length - 1] 的下一个元素是 nums[0] &#xff09;&#xff0c;返回 nums 中每个元素的 下一个更大元素 。 数字 x 的 下一个更大的元素 是按数组遍历顺序&#xff0c;这个数字之后的第一个比它更大的数&am…

C#系列-EF扩展框架Serilog.EntityFrameworkCore应用实例(39)

Serilog.EntityFrameworkCore 并不是一个官方或广泛认可的 NuGet 包。Serilog 是一个流行的日志记录库&#xff0c;它支持多种日志接收器&#xff08;sinks&#xff09;来将日志输出到不同的目的地&#xff0c;如文件、控制台、数据库等。但是&#xff0c;Serilog.EntityFramew…

作物模型狂奔:WOFOST(PCSE) 数据同化思路

去B吧&#xff0c;这里没图 整体思路&#xff1a;PCSE -》 敏感性分析 -》调参 -》同化 0、准备工作 0.0 电脑环境 我用的Win10啦&#xff0c;Linux、Mac可能得自己再去微调一下。 0.1 Python IDE 我用的Pycharm&#xff0c;个人感觉最好使的IDE&#xff0c;没有之一。 …

C#系列-EF框架的创新应用+利用EF框架技术的知名开源应用项目(42)

EF框架的创新应用 EF框架&#xff0c;即Entity Framework&#xff0c;是微软开发的一个开源的对象关系映射&#xff08;ORM&#xff09;框架&#xff0c;用于.NET应用程序中。它允许开发者以面向对象的方式处理数据库&#xff0c;而无需关心底层的SQL语句和数据库结构。 EF框架…

OpenAI Sora 初体验

OpenAI Sora 初体验 就在刚刚&#xff0c;OpenAI 再次投下一枚重磅炸弹——Sora&#xff0c;一个文本到视频生成模型。 我第一时间体验了 Sora。看过 Sora 的能力后&#xff0c;我真的印象深刻。对细节的关注、无缝的角色刻画以及生成视频的绝对质量真正将可能性提升到了一个新…

人工智能学习与实训笔记(五):神经网络之推荐系统处理

目录 ​​​​​​​七、智能推荐系统处理 7.1 常用的推荐系统算法 7.2 如何实现推荐​​​​​​​ 7.3 基于飞桨实现的电影推荐模型 7.3.1 电影数据类型 7.3.2 数据处理 7.3.4 数据读取器 7.3.4 网络构建 7.3.4.1用户特征提取 7.3.4.2 电影特征提取 7.3.4.3 相似度…

一周学会Django5 Python Web开发-Django5应用配置

锋哥原创的Python Web开发 Django5视频教程&#xff1a; 2024版 Django5 Python web开发 视频教程(无废话版) 玩命更新中~_哔哩哔哩_bilibili2024版 Django5 Python web开发 视频教程(无废话版) 玩命更新中~共计14条视频&#xff0c;包括&#xff1a;2024版 Django5 Python we…

SpringBoot+Tess4J实现本地与远程图片的文字识别

Spring Boot应用程序里集成Tess4J来实现OCR&#xff08;光学字符识别&#xff09;&#xff0c;以识别出本地和远程图片中的文字 一、添加依赖 <dependency><groupId>net.sourceforge.tess4j</groupId><artifactId>tess4j</artifactId><vers…

上位机图像处理和嵌入式模块部署(图像项目处理过程)

【 声明&#xff1a;版权所有&#xff0c;欢迎转载&#xff0c;请勿用于商业用途。 联系信箱&#xff1a;feixiaoxing 163.com】 对于一般的图像项目来说&#xff0c;图像处理只是工作当中的一部分。在整个项目处理的过程中有很多的内容需要处理&#xff0c;比如说了解需求、评…

MyBatis之自定义数据类型转换器

MyBatis之自定义数据类型转换器 前言实现步骤1. 编写自定义类型转换器&#xff08;Boolean到Int&#xff09;2. 将自定义转换器注册到MyBatis-config.xml配置文件3. Mapper.xml文件中进行数据类型转换4. 定义PeronMapper接口 编写测试类1. 测试代码2. 运行log 总结 前言 到这里…

通过写代码学习AWS DynamoDB (3)- 一致性hash

简介 在本文中&#xff0c;我们将简单介绍一致性hash&#xff08;consistent hash&#xff09;的概念&#xff0c;以及一致性hash可以解决的问题。然后我们将在模拟的DDB实现中实现一个简单版本的基于一致性harsh实现的partition。 问题 在《通过写代码学习AWS DynamoDB &am…

嵌入式——Flash(W25Q64)

目录 一、初识W25Q64 1. 基本认识 2. 引脚介绍 ​编辑 二、W25Q64特性 1. SPI模式 2. 双输出SPI方式 三、状态寄存器 1. BUSY位 2. WEL位 3. BP2、BP1、 BP0位 4. TB位 5. 保留位 6. SRP位 四、常用操作指令 1. 写使能指令&#xff08;06h&#xff09; 2. 写禁…

【VTKExamples::PolyData】第二十八期 LinearExtrusion

很高兴在雪易的CSDN遇见你 VTK技术爱好者 QQ:870202403 前言 本文分享VTK样例LinearExtrusion,并解析接口vtkLinearExtrusionFilter,希望对各位小伙伴有所帮助! 感谢各位小伙伴的点赞+关注,小易会继续努力分享,一起进步! 你的点赞就是我的动力(^U^)ノ~YO 目录…

react【三】受控组件/高阶组件/portals/fragment/严格模式/动画

文章目录 1、受控组件1.1 认识受控组件1.2 checkout1.3 selected1.4 非受控组件 2、高阶组件2.1 认识高阶组件2.2 应用1-props增强的基本使用2.3 对象增强的应用场景-context共享2.4 应用2-鉴权2.5 应用3 – 生命周期劫持2.6、高阶组件的意义 3、Portals4、fragment5、StrictMo…

Rust 学习笔记 - 详解数据类型

前言 任何一门编程语言几乎都脱离不了&#xff1a;变量、基本类型、函数、注释、循环、条件判断&#xff0c;这是一门编程语言的语法基础&#xff0c;只有当掌握这些基础语法及概念才能更好的学习 Rust。 标量类型&#xff08;Scalar Types&#xff09; 在 Rust 中&#xff…

12-资源注解annotations和安全行下文securityContext(了解即可)

一、资源注解annotations 资源注解&#xff0c;annotations就是对资源进行注释&#xff1b; 应用场景&#xff1a; 给资源&#xff08;例如pod资源&#xff09;提供配置信息&#xff0c;类似于帮助信息&#xff1b; 早期使用比较多&#xff0c;很多开源组件一般都会使用&#x…