一个bitter组织下载器样本分析

2024-03-26 17:44

本文主要是介绍一个bitter组织下载器样本分析,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

BITTER

该组织最早在2016由美国安全公司Forcepoint进行了披露,并且命名为“BITTER”,同年国内友商360也跟进发布了分析报告,命名为“蔓灵花”

样本分析

MD5:806626d6e7a283efffb53b3831d53346
vt:看文件名判断是伪装成pdf的自解压程序。
在这里插入图片描述

查看文件信息,修改后缀名为rar后解压。
在这里插入图片描述

源文件为自解压程序,运行后打开诱饵文档pdf,释放dlhost程序到“C:\intel\logs”路径下并执行。
在这里插入图片描述

dlhost.exe分析

需要注意此样本是否判断在指定的路径下运行。

需要注意样本是否有基址随机化问题,NtHeader→OptionalHeader→DllCharacteristics→IMAGE_DLLCHARACTERISTICS_DYNAMIC_BASE,如果数值为1,即开启了“基址重定位”(动态随机基址),现将其修改为0后保存文件:

从调用的api猜测样本获取系统信息,通过socket传输,并下载后续文件到本地执行。

winmain函数:
解密出一些数据,解密方式-=0xd
在这里插入图片描述
在这里插入图片描述

CreateSemaphore+GetLastError 保证内存中只有一个恶意进程在运行。
在这里插入图片描述
connect解密出的ip地址
在这里插入图片描述
看send函数的参数buf,最后一次出现在401080函数中且其他字符串是之前解密出的与通信相关的字符串,说明该函数是拼接出发送数据也就是上线包的函数。在这里插入图片描述
其中unk_435598未出现过,交叉引用查看调用,
在这里插入图片描述
结合上文可知是对get方式的http请求的参数进行拼接。
在这里插入图片描述
a=hostname
在这里插入图片描述
b = computername
在这里插入图片描述
c = systeminfo
在这里插入图片描述

d = [UserName][UserName][GUID][dwActiveProcessorMask][dwAllocationGranularity][dwOemId][dwPageSize][dwProcessorType][wProcessorArchitecture]
在这里插入图片描述
最后拼接出数据如图
在这里插入图片描述

send发送http请求数据包
在这里插入图片描述
在这里插入图片描述
之后判断接收数据是否有yes file字符串,提取[]中的数据,处理接受的数据,下载其他组件并执行。

这篇关于一个bitter组织下载器样本分析的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/849329

相关文章

怎样通过分析GC日志来定位Java进程的内存问题

《怎样通过分析GC日志来定位Java进程的内存问题》:本文主要介绍怎样通过分析GC日志来定位Java进程的内存问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、GC 日志基础配置1. 启用详细 GC 日志2. 不同收集器的日志格式二、关键指标与分析维度1.

使用Python实现可恢复式多线程下载器

《使用Python实现可恢复式多线程下载器》在数字时代,大文件下载已成为日常操作,本文将手把手教你用Python打造专业级下载器,实现断点续传,多线程加速,速度限制等功能,感兴趣的小伙伴可以了解下... 目录一、智能续传:从崩溃边缘抢救进度二、多线程加速:榨干网络带宽三、速度控制:做网络的好邻居四、终端交互

MySQL中的表连接原理分析

《MySQL中的表连接原理分析》:本文主要介绍MySQL中的表连接原理分析,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1、背景2、环境3、表连接原理【1】驱动表和被驱动表【2】内连接【3】外连接【4编程】嵌套循环连接【5】join buffer4、总结1、背景

python中Hash使用场景分析

《python中Hash使用场景分析》Python的hash()函数用于获取对象哈希值,常用于字典和集合,不可变类型可哈希,可变类型不可,常见算法包括除法、乘法、平方取中和随机数哈希,各有优缺点,需根... 目录python中的 Hash除法哈希算法乘法哈希算法平方取中法随机数哈希算法小结在Python中,

Java Stream的distinct去重原理分析

《JavaStream的distinct去重原理分析》Javastream中的distinct方法用于去除流中的重复元素,它返回一个包含过滤后唯一元素的新流,该方法会根据元素的hashcode和eq... 目录一、distinct 的基础用法与核心特性二、distinct 的底层实现原理1. 顺序流中的去重

基于 HTML5 Canvas 实现图片旋转与下载功能(完整代码展示)

《基于HTML5Canvas实现图片旋转与下载功能(完整代码展示)》本文将深入剖析一段基于HTML5Canvas的代码,该代码实现了图片的旋转(90度和180度)以及旋转后图片的下载... 目录一、引言二、html 结构分析三、css 样式分析四、JavaScript 功能实现一、引言在 Web 开发中,

关于MyISAM和InnoDB对比分析

《关于MyISAM和InnoDB对比分析》:本文主要介绍关于MyISAM和InnoDB对比分析,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录开篇:从交通规则看存储引擎选择理解存储引擎的基本概念技术原理对比1. 事务支持:ACID的守护者2. 锁机制:并发控制的艺

springboot下载接口限速功能实现

《springboot下载接口限速功能实现》通过Redis统计并发数动态调整每个用户带宽,核心逻辑为每秒读取并发送限定数据量,防止单用户占用过多资源,确保整体下载均衡且高效,本文给大家介绍spring... 目录 一、整体目标 二、涉及的主要类/方法✅ 三、核心流程图解(简化) 四、关键代码详解1️⃣ 设置

Python pip下载包及所有依赖到指定文件夹的步骤说明

《Pythonpip下载包及所有依赖到指定文件夹的步骤说明》为了方便开发和部署,我们常常需要将Python项目所依赖的第三方包导出到本地文件夹中,:本文主要介绍Pythonpip下载包及所有依... 目录步骤说明命令格式示例参数说明离线安装方法注意事项总结要使用pip下载包及其所有依赖到指定文件夹,请按照以

MyBatis Plus 中 update_time 字段自动填充失效的原因分析及解决方案(最新整理)

《MyBatisPlus中update_time字段自动填充失效的原因分析及解决方案(最新整理)》在使用MyBatisPlus时,通常我们会在数据库表中设置create_time和update... 目录前言一、问题现象二、原因分析三、总结:常见原因与解决方法对照表四、推荐写法前言在使用 MyBATis