前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >MQTT协议详解

MQTT协议详解

作者头像
用户11188770
发布于 2024-07-01 05:29:57
发布于 2024-07-01 05:29:57
4410
举报

本项目为单文件的资源加载器(红队有效载荷加载器)混淆最终版,主要解决代码被标记问题,搭载完全无法检测的cobaltstrike有效载荷,可轻松绕过绝大部分杀软,无惧分析无惧沙箱

一、开发目的

  1. 常规杀毒软件通过标记程序代码段(.text段)加入黑名单,无论如何编译,均会被查杀。
某国内杀毒软件扫描技术
某国内杀毒软件扫描技术

此时运用混淆技术则轻松绕过,程序经过混淆后,各部分哈希值均会被改变,对于杀毒软件来说,这就是一个全新文件

第1次混淆编译
第1次混淆编译
第2次混淆编译
第2次混淆编译
  1. 蓝队通过上传沙箱或各检测平台(例如微步或virustotal)导致大量分发,然后通过反编译来分析文件,此时若程序经过高度混淆,分析难度大大提高
图:IDA无法分析
图:IDA无法分析

二、技术特点

  • 一键编译OLLVM混淆
  • 有效载荷(bin)隐藏在资源区
  • 一个函数,外加10行代码

有效载荷:指的是导出的bin文件,99%的C2均支持导出bin格式。

虽然部分杀毒软件由于其[设计机制]需要使用白加黑,但现实是更多杀毒软件仅需单文件即可轻松绕过,实测如下:

编号

杀毒软件

测试结果

方式

1

Avast

绕过

单文件

2

瑞星杀毒

绕过

单文件

3

2345安全卫士

绕过

单文件

4

卡巴斯基small office

绕过

高级白加黑

5

火绒6

绕过

单文件

6

360杀毒

绕过

高级白加黑

7

360安全卫士

绕过

高级白加黑

8

江民杀毒

绕过

单文件

9

金山毒霸

绕过

单文件

10

腾讯电脑管家

绕过

单文件

11

微软Defender

绕过

单文件

12

ESET NOD32 Antivirus

绕过

单文件

三、使用演示

  1. 导出有效载荷,如cobaltstrike的payload_x64.bin,将bin放入项目文件夹中
  2. 运行ps,自动混淆编译

视频区域

四、总结

一套完整的项目由平台(C2)、加载器(Loader)、途径三部分构成:

  • 平台指的是运行在服务器上的C2,决定了有效载荷是否能绕过特征检测机制(如静态特征,内存特征)并与服务器通信。
  • 加载器指的是运行在终端上的程序(通常为白加黑或单可执行文件),加载器用于加载我们的C2有效载荷(payload)至内存。决定了是否能隐蔽运行有效载荷。
  • 途径指的是通过某一种技术投递(如lnk快捷方式),通常是社会工程学。

本文主要介绍了加载器的混淆技术,在这之前也介绍了[红队有效载荷加载器]的基本使用,如需查阅平台及途径部分请看先前内容。

免杀的核心在于有效载荷(bin),而不在于加载器。该加载器相关文章"10行代码"即可免杀全球绝大多数杀毒软件

五、免责声明

本文涉及方案仅限合法授权的安全研究、渗透测试用途,使用者须确保符合《网络安全法》及相关法规。具体条款如下:

  • 仅可用于已获得书面授权的目标系统测试;
  • 遵守法律法规,不得用于侵犯他人隐私或数据窃取;

本人不承担因用户滥用本软件导致的任何后果。使用即视为同意并接受上述条款。

推荐阅读
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2024-06-28,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
EMQX从搭建到作用于MQTT
​ 1. 协议与实现:MQTT 是一种协议,定义了消息发布、订阅、分发的标准;而 EMQX 是基于此协议实现的消息代理服务。EMQX 支持 MQTT 3.1、3.1.1 和 5.0 版本的协议。
一只牛博
2025/05/31
1200
EMQX从搭建到作用于MQTT
MQTT协议,终于有人讲清楚了
大家好,我是小麦,最近做了一个物联网的项目,顺便总结一下MQTT协议。大家都知道,MQTT协议在物联网中很常用,如果你对此还不是很了解,相信这篇文章可以带你入门。
wenzid
2021/07/20
22.1K0
MQTT协议,终于有人讲清楚了
13 目前主流的MQTT 3.1.1和MQTT 5.0协议介绍
MQTT(Message Queuing Telemetry Transport)协议是一种轻量级的、基于发布/订阅模式的消息传输协议,专为在硬件性能受限、网络状况不佳的远程设备和环境中运行而设计。MQTT协议工作在TCP/IP协议族上,通过最小化传输开销和协议交换来有效减少网络流量,使其特别适用于物联网(IoT)领域中的设备间通信。
DS小龙哥
2025/05/27
1650
MQTT–入门「建议收藏」
 MQTT(Message Queuing Telemetry Transport,消息队列遥测传输协议),是一种基于发布/订阅(publish/subscribe)模式的“轻量级”通讯协议,该协议构建于TCP/IP协议上,由IBM在1999年发布。MQTT最大优点在于,可以以极少的代码和有限的带宽,为连接远程设备提供实时可靠的消息服务。作为一种低开销、低带宽占用的即时通讯协议,使其在物联网、小型设备、移动应用等方面有较广泛的应用。
全栈程序员站长
2022/08/25
1.1K0
MQTT–入门「建议收藏」
MQTT协议
MQTT协议简介 MQTT(Message Queuing Telemetry Transport,消息队列遥测传输)是IBM开发的一个即时通讯协议,该协议支持所有平台,几乎可以把所有联网物品和外部连接起来,被用来当做传感器和致动器(比如通过Twitter让房屋联网)的通信协议。 虽然HTTP是网页的事实标准,不过机器之间(Machine-to-Machine,M2M)的大规模沟通需要不同的模式:之前的请求/回答(Request/Response)模式不再合适,取而代之的是发布/订阅(Publish/Sub
大数据和云计算技术
2018/03/08
5.6K0
MQTT协议
mqtt服务器搭建(ubuntu)
MQTT(Message Queuing Telemetry Transport,消息队列遥测传输协议),是一种基于发布/订阅(publish/subscribe)模式的”轻量级”通讯协议,该协议构建于TCP/IP协议上,由IBM在1999年发布。MQTT最大优点在于,可以以极少的代码和有限的带宽,为连接远程设备提供实时可靠的消息服务。作为一种低开销、低带宽占用的即时通讯协议,使其在物联网、小型设备、移动应用等方面有较广泛的应用。
全栈程序员站长
2022/09/06
7.9K0
mqtt服务器搭建(ubuntu)
浅谈物联网开发最热协议—MQTT协议
最近在在物联网相关项目的开发的时候,有用到物联网常用的通信协议--MQTT协议,刚开始对这一块的知识并不是很了解,所以在这里一边学习一边记录,有不合理的地方还希望能多多指正。
灰小猿
2020/09/23
2K0
浅谈物联网开发最热协议—MQTT协议
MQTT 详解
MQTT(Message Queuing Telemetry Transport,消息队列遥测传输协议),是一种基于发布/订阅(publish/subscribe)模式的"轻量级"通讯协议,该协议构建于TCP/IP协议上,由IBM在1999年发布。MQTT最大优点在于,可以以极少的代码和有限的带宽,为连接远程设备提供实时可靠的消息服务。作为一种低开销、低带宽占用的即时通讯协议,使其在物联网、小型设备、移动应用等方面有较广泛的应用。
高广超
2019/05/20
4.9K0
mqtt协议实战(一)
最近项目中用到了mqtt的协议,今天特地抽时间学习了一下,搭建了一个基于nodejs的mqtt的服务。现在写一篇文章记录,分享给大家。
拿我格子衫来
2022/01/24
1.2K0
mqtt协议实战(一)
物联网IoT系列之MQTT协议基础知识
物联网(Internet of Things,简称IoT)是一个由互联网、传统电信网、传感器网络等组成的庞大网络,它通过嵌入式传感器、设备和软件,将物理世界中的物体连接起来,实现物与物、物与人、物与网络之间的智能化交互。简单来说,物联网就是让“万物互联”,让设备能够自主地感知、传输和处理数据,从而为人类生活和工业生产带来更高的效率和便利。
SmileNicky
2025/03/08
4380
物联网IoT系列之MQTT协议基础知识
为什么最近每份 Android 简历都说 “熟悉 MQTT 协议”?
MQTT 是一种基于发布 - 订阅模型的消息传递协议,在物联网和移动应用有较广泛的应用。如果你的目标是冲击中高级工程师岗位,MQTT 或许是一个不错的亮点。最近,我还发现很多候选人会在简历中写自己 “熟悉 MQTT 协议”,但多数人只是停留在了解或用过的程度。
用户9995743
2022/12/22
4.5K0
为什么最近每份 Android 简历都说 “熟悉 MQTT 协议”?
了不起的 MQTT 物联网协议
MQTT是在低带宽高延迟不可靠的网络下进行数据相对可靠传输的应用层协议。 MQTT的核心思想是简单并适应物联网环境。
大漠天涯
2024/03/28
1830
一文了解MQTT协议
我们之前已经说了这个SSL 和 TCP/IP 协议了,我们今天就来详细的说说这个 MQTT 协议,因为很多消息现在都是支持 MQTT 协议的,比如 RabbitMQ ,还有 Kafka 等,今天我们就来详细的介绍 MQTT 协议到底是个什么。
Java极客技术
2022/12/04
4.2K0
一文了解MQTT协议
MQTT协议学习总结
海量的设备接入和设备管理对网络带宽、通信协议以及平台服务架构都带来了很大挑战。对于物联网协议来
叫我阿杰好了
2022/11/07
3.9K0
MQTT协议学习总结
MQTT QoS 设计:车联网平台消息传输质量保障
车联网场景下会产生海量数据,这些数据可以作为车辆诊断的基础,保障车辆安全稳定地运行;也可以与手机等基础设施进行联动,以提供更好的行车体验。国家与行业也陆续出台了相关政策文件,如《汽车驾驶自动化分级》、《国家车联网产业标准体系建设指南》、《车联网信息服务数据安全技术要求》等,对车联网数据传输提出了更高要求。通信的安全、稳定、可靠自始至终都是车联网亘古不变的话题,因此一套完善的数据传输保障方案也是车联网业务中不可忽视的一部分。
EMQ映云科技
2022/07/04
1K0
MQTT QoS 设计:车联网平台消息传输质量保障
ESP8266-WIFI_MQTT固件连接OneNet物联网平台
在物联网(IoT)应用中,设备之间的无线通信是实现远程监控和控制的关键。STM32F103C8T6单片机作为一款高性能、低功耗的微控制器,广泛应用于各种嵌入式系统中。为了实现与云平台的通信,常常需要借助无线模块。ESP8266-WIFI模块是一款集成了Wi-Fi功能的低成本无线通信模块,具有良好的网络连接能力,能够与各种物联网平台进行数据交互。
DS小龙哥
2025/05/29
2700
ESP8266-WIFI_MQTT固件连接OneNet物联网平台
物联网协议的王者:MQTT
MQTT 最初由 Andy Stanford-Clark 博士和 Arlen Nipper 博士于 1999 年创建,用于通过卫星连接石油管道遥测系统。
网络技术联盟站
2023/03/05
1K0
物联网协议的王者:MQTT
springboot + rabbitmq 做智能家居,我也没想到会这么简单
前一段有幸参与到一个智能家居项目的开发,由于之前都没有过这方面的开发经验,所以对智能硬件的开发模式和技术栈都颇为好奇。
程序员小富
2020/06/21
2.5K1
springboot + rabbitmq 做智能家居,我也没想到会这么简单
MQTT协议通俗讲解
基本概念 Basic Conception Session 会话 定义 定义:某个客户端(由ClientID作为标识)和某个服务器之间的逻辑层面的通信 生命周期(存在时间):会话 >= 网络连接 ClientID 客户端唯一标识,服务端用于关联一个Session 只能包含这些 大写字母,小写字母 和 数字(0-9a-zA-Z),23个字符以内 如果 ClientID 在多次 TCP连接中保持一致,客户端和服务器端会保留会话信息(Session) 同一时间内 Server 和同一个 ClientID 只能保持一个 TCP 连接,再次连接会踢掉前一个 CleanSession 标记 在Connect时,由客户端设置 0 —— 开启会话重用机制。网络断开重连后,恢复之前的Session信息。需要客户端和服务器有相关Session持久化机制。 1 —— 关闭会话重用机制。每次Connect都是一个新Session,会话仅持续和网络连接同样长的时间。 客户端 Session 已经发送给服务端,但是还没有完成确认的 QoS 1 和 QoS 2 级别的消息 已从服务端接收,但是还没有完成确认的 QoS 2 级别的消息 服务器端 Session 会话是否存在,即使会话状态的其它部分都是空 (SessionFlag) 客户端的订阅信息 (ClientSubcription) 已经发送给客户端,但是还没有完成确认的 QoS 1 和 QoS 2 级别的消息 即将传输给客户端的 QoS 1 和 QoS 2 级别的消息 已从客户端接收,但是还没有完成确认的 QoS 2 级别的消息 (可选)准备发送给客户端的 QoS 0 级别的消息 长连接维护与管理 Keep Alive 心跳 目的是保持长连接的可靠性,以及双方对彼此是否在线的确认。 客户端在Connect的时候设置 Keep Alive 时长。如果服务端在 1.5 * KeepAlive 时间内没有收到客户端的报文,它必须断开客户端的网络连接 Keep Alive 的值由具体应用指定,一般是几分钟。允许的最大值是 18 小时 12 分 15 秒 Will 遗嘱 遗嘱消息(Will Message)存储在服务端,当网络连接关闭时,服务端必须发布这个遗嘱消息,所以被形象地称之为遗嘱,可用于通知异常断线。 客户端发送 DISCONNECT 关闭链接,遗嘱失效并删除 遗嘱消息发布的条件,包括: 服务端检测到了一个 I/O 错误或者网络故障 客户端在保持连接(Keep Alive)的时间内未能通讯 客户端没有先发送 DISCONNECT 报文直接关闭了网络连接 由于协议错误服务端关闭了网络连接 相关设置项,需要在Connect时,由客户端指定 Will Flag —— 遗嘱的总开关 0 -- 关闭遗嘱功能,Will QoS 和 Will Retain 必须为 0 1 -- 开启遗嘱功能,需要设置 Will Retain 和 Will QoS Will QoS —— 遗嘱消息 QoS 可取值 0、1、2,含义与消息QoS相同 Will Retain —— 遗嘱是否保留 0 -- 遗嘱消息不保留,后面再订阅不会收到消息 1 -- 遗嘱消息保留,持久存储 Will Topic —— 遗嘱话题 Will Payload —— 遗嘱消息内容 消息基本概念 报文标识 Packet Identifier 存在报文的可变报头部分,非零两个字节整数 (0-65535] 一个流程中重复:这些报文包含 PacketID,而且在一次通信流程内保持一致: PUBLISH(QoS>0 时),PUBACK,PUBREC,PUBREL,PUBCOMP SUBSCRIBE, SUBACK UNSUBSCIBE,UNSUBACK 新的不重复:客户端每次发送一个新的这些类型的报文时都必须分配一个当前 未使用的PacketID 当客户端处理完这个报文对应的确认后,这个报文标识符就释放可重用。 独立维护:客户端和服务端彼此独立地分配报文标识符。因此,客户端服务端组合使用相同的报文标识符可以实
PM吃瓜
2019/08/20
2.5K0
物联网的基础协议之MQTT
本文主要介绍MQTT相关的概念,并且通过搭建MQTT服务器和客户端,测试MQTT的通信。本文主要从实际使用的角度去理解MQTT,并不会讲述过于深奥的理论知识。可以通过下面的文章了解MQTT的相关介绍。
bigmagic
2020/03/17
1.3K0
相关推荐
EMQX从搭建到作用于MQTT
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档