JavaScript 到命令和控制 (C2) 服务器恶意软件分析及防御

攻击始于一个经过混淆的JavaScript文件,该文件从开源服务中获取编码字符串以执行PowerShell脚本。然后,该脚本从一个IP地址和一个URL缩短器下载一个JPG图像和一个文本文件,这两个文件都包含使用隐写术嵌入的恶意MZ DOS可执行文件。这些有效载荷一旦执行,就会部署Stealer恶意软件,旨在从受感染的系统中提取敏感数据。窃取程序会收集凭证、浏览器数据和系统信息,然后将窃取的数据传输到攻击者控制的Telegram机器人。这种方法使网络犯罪分子能够保持持久性,同时规避传统的安全机制。此次攻击利用多层混淆、合法的网络服务进行有效载荷托管以及加密通信,使得检测和缓解变得十分困难。

介绍

不断发展的网络威胁形势见证了复杂的恶意软件攻击活动激增,这些活动利用多阶段执行、混淆和隐蔽通信渠道来逃避检测。本研究报告研究了一个高度混淆的攻击链,该攻击链始于一个 JavaScript 文件,该文件从开源服务中检索编码命令以执行 PowerShell 脚本。然后,该脚本从 IP 地址和 URL 缩短器下载 JPG 图像和文本文件,这两个 IP 地址和 URL 缩短器都通过先进的隐写技术隐藏恶意的 MZ DOS 可执行文件。

这些有效载荷一旦执行,就会部署窃取恶意软件Stealer,该恶意软件旨在窃取敏感的系统和用户凭证。该恶意软件进一步与攻击者控制的Telegram机器人建立通信通道,从而实现无缝数据泄露,同时绕过传统的安全机制。本报告对攻击链、其技术复杂性以及用于规避检测的方法进行了全面分析,并提出了有效缓解威胁的战略建议。

客观的

通过了解此次攻击所采用的策略、技术和程序 (TTP),本报告旨在增强威胁情报并为检测、缓解和防御类似威胁提供可行的见解。

主要发现

  • 多阶段攻击链:该攻击活动采用了复杂的多阶段流程,首先使用经过混淆的 Windows Script Host (WSH) 植入器,然后使用 PowerShell 下载器,最后反射加载 .NET 有效载荷。这种分层方法增加了检测和缓解工作的复杂性。
  • 高级混淆技术:初始投放器脚本采用了重度混淆技术,包括使用不常见的 Unicode 字符、大量的字符串操作以及运行时代码执行(例如使用 eval())。这不仅掩盖了脚本的真实意图,也阻碍了静态和动态分析。
  • 滥用合法服务进行 C2 和有效载荷投递:攻击者利用一个可信的开源服务进行命令与控制通信,并利用另一个开源云媒体管理服务托管一个看似无害的镜像,以隐藏恶意 .NET 程序集。这种对合法基础设施的滥用有助于恶意软件融入正常的网络流量中。
  • 用于隐藏有效载荷的隐写术:通过使用隐写技术将 Base64 编码的 .NET 程序集隐藏在图像中,该活动绕过了许多传统的内容检查机制,使得使用标准扫描方法识别恶意载荷变得非常困难。
  • 反射加载:使用反射加载直接从内存执行.NET 有效负载可避免在磁盘上留下痕迹,减少取证足迹并逃避传统基于文件的防病毒解决方案的检测。
  • ActiveX 和 WSH Shell 滥用:该活动利用 ActiveX 对象(例如 WScript.Shell、Scripting.FileSystemObject)等传统技术与系统进行交互,甚至提供交互式 Shell。这使得攻击者能够执行任意命令,进一步加剧了威胁形势。
  • PowerShell 集成,灵活性更高:PowerShell 的集成简化了复杂的操作,包括网络通信、动态 Payload 提取和内存代码执行。其灵活性也有助于规避许多标准检测技术。
  • 运营影响和潜在威胁:.NET 有效载荷与该框架的集成使攻击者能够部署各种后续威胁,包括勒索软件、信息窃取程序和后门程序。这扩大了攻击活动的范围,并扩大了对受感染系统的潜在影响。

攻击链分析

img

JS到C2攻击链分析截图

分析

文件名咨询-Dubai.js
文件大小177 KB
已签名未签名
MD5哈希acedc7bdca0d19b982bcf030c73599ed
SHA-256 哈希944c7070cb77d937c9bae8c30a367b1c15b2f8951329cdb64d4b02a5e145ea44

提供的 JavaScript 代码是一个潜在的恶意脚本,旨在执行 Web 请求并运行返回的代码。该函数首先定义一个字符串 (prytaneum),其中包含经过混淆的字符 ( 外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传🖛 外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

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

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

相关文章

【计网】ipconfig、ping、arp、tracert

目录 ipconfig ping arp tracert cmd ipconfig ipcofig -all IPv4 物理地址 ping 检测网络连通情况,分析网络速度 根据域名得到服务器IP 根据TTL判断对方所使用的操作系统以及数据包经过路由器数量 byte数据包大小 time响应时间 TTLDNS记录在DNS服务器上存在…

WiFi那些事儿(八)——802.11n

目录 802.11n 技术简介与测试项 一、802.11n 技术简介 (一)标准概述 (二)关键技术特性 1. MIMO(多输入多输出)技术 2. 信道绑定(Channel Bonding) 3. 帧聚合(Fram…

码蹄集——直角坐标到极坐标的转换、射线、线段

目录 MT1052 直角坐标到极坐标的转换 MT1066 射线 MT1067 线段 MT1052 直角坐标到极坐标的转换 思路&#xff1a; arctan()在c中是atan()&#xff0c;结果是弧度要转换为度&#xff0c;即乘与180/PI 拓展&#xff1a;cos()、sin()在c代码中表示方式不变 #include<bits/…

深入解析 Linux/Unix 通信机制:从原理到观测实践

深入解析 Linux/Unix 通信机制&#xff1a;从原理到观测实践 配图建议&#xff1a;Linux系统架构与通信机制全景示意图 一、开篇&#xff1a;理解“一切皆文件”的哲学 Unix/Linux 操作系统的核心灵魂在于其独特的设计哲学。当 Dennis Ritchie 和 Ken Thompson 在贝尔实验室开…

spring上传文件添加水印

1、实现 MultipartFile package com.pojo.common.core.domain;import java.io.ByteArrayInputStream; import java.io.File; import java.io.IOException; import java.io.InputStream;import org.springframework.lang.Nullable; import org.springframework.util.Assert; im…

嵌入式MCU语音识别算法及实现方案

在嵌入式MCU&#xff08;微控制器单元&#xff09;中实现语音识别&#xff0c;由于资源限制&#xff08;如处理能力、内存、功耗等&#xff09;&#xff0c;通常需要轻量级算法和优化技术。以下是常见的语音识别算法及实现方案&#xff1a; 一、传统语音识别算法 动态时间规整&…

【论文阅读】DETR+Deformable DETR

可变形注意力是目前transformer结构中经常使用的一种注意力机制&#xff0c;最近补了一下这类注意力的论文&#xff0c;提出可变形注意力的论文叫Deformable DETR&#xff0c;是在DETR的基础上进行的改进&#xff0c;所以顺带着把原本的DETR也看了一下。 一、DETR DETR本身是…

大模型在宫颈癌诊疗全流程预测与应用研究报告

目录 一、引言 1.1 研究背景与意义 1.2 研究目的与创新点 二、大模型预测宫颈癌术前风险 2.1 术前数据收集与预处理 2.2 预测模型构建与算法选择 2.3 术前风险预测指标与案例分析 三、大模型辅助制定术中方案 3.1 术中风险动态监测与预测 3.2 基于预测的手术方案优化…

【Python 文件I/O】

Python 的文件 I/O 操作是数据处理的基础技能&#xff0c;涉及文件的读写、路径管理、异常处理等核心功能。以下是文件 I/O 的核心知识点&#xff1a; 一、基础文件操作 1. 打开文件 # 通用模式&#xff1a;r(读)/w(写)/a(追加) b(二进制)/t(文本&#xff0c;默认) f open(…

Twin Builder 中的电池等效电路模型仿真

电池单元热设计挑战 电池热管理的主要挑战之一是确保温度低于最大工作限值。较高的温度会导致效率降低、加速老化和潜在的安全隐患。工程师必须了解电池产生的热量&#xff0c;才能充分设计冷却系统。 了解和预测电池模块的热行为需要将电池的热损耗与电池单元的电气机械特性…

一种基于条件生成对抗网络(cGAN)的CT重建算法

简介 简介:该文提出了一种基于条件生成对抗网络(cGAN)的CT重建算法,通过引入CBAM注意力机制增强网络对关键特征的提取能力,有效解决了CT成像中因噪声干扰导致的重建精度下降问题。实验采用固体火箭发动机模拟件数据集,将正弦图分为五组并添加不同程度的噪声进行训练。结…

【Redis篇】linux 7.6安装单机Redis7.0(参数优化详解)

&#x1f4ab;《博主主页》&#xff1a; &#x1f50e; CSDN主页 &#x1f50e; IF Club社区主页 &#x1f525;《擅长领域》&#xff1a;擅长阿里云AnalyticDB for MySQL(分布式数据仓库)、Oracle、MySQL、Linux、prometheus监控&#xff1b;并对SQLserver、NoSQL(MongoDB)有了…

【BUG】‘DetDataSample‘ object has no attribute ‘_gt_sem_seg‘

问题&#xff1a; 使用mmdetection框架使用COCO格式训练自定义数据集时&#xff0c;其中模型使用HTC模型时出现如下问题&#xff1a; AttributeError: ‘DetDataSample’ object has no attribute ‘_gt_sem_seg’. Did you mean: ‘gt_sem_seg’? results self(**data, mode…

Java日期格式化方法总结

在Java中&#xff0c;日期格式化主要涉及将 Date、LocalDate、LocalDateTime 等日期时间对象转换为指定格式的字符串&#xff0c;或将字符串解析为日期对象。以下是两种常用的日期格式化方式&#xff1a; 一、使用 SimpleDateFormat&#xff08;旧版API&#xff0c;Java 8之前&…

【NLP】27. 语言模型训练以及模型选择:从预训练到下游任务

语言模型训练&#xff1a;从预训练到下游任务 本文详细讲解大型语言模型&#xff08;LLMs&#xff09;是如何训练的&#xff0c;包括不同的模型类型&#xff08;Encoder、Decoder、Encoder-Decoder&#xff09;&#xff0c;以及各类预训练任务的原理、对比、适用场景&#xff0…

通过 ModernBERT 实现零样本分类的性能提升

文本分类 是机器学习中最基础的任务之一&#xff0c;拥有悠久的研究历史和深远的实用价值。更重要的是&#xff0c;它是许多实际项目中不可或缺的组成部分&#xff0c;从搜索引擎到生物医学研究都离不开它。文本分类方法被广泛应用于科学论文分类、用户工单分类、社交媒体情感分…

基于SpringBoot网上书店的设计与实现

pom.xml配置文件 1. 项目基本信息(没什么作用) <groupId>com.spring</groupId> <!--项目组织标识&#xff0c;通常对应包结构--> <artifactId>boot</artifactId> <!--项目唯一标识--> <version>0.0.1-SNAPSHOT</ve…

STM32H743单片机实现ADC+DMA多通道检测+事件组

在上个文章基础上改用事件组进行处理&#xff0c;以便实时任务。 stm32cubeMX自动生成代码 osEventFlagsId_t adctestEventHandle; const osEventFlagsAttr_t adctestEvent_attributes {.name "adctestEvent" };adctestEventHandle osEventFlagsNew(&adctest…

AI Agent开发第57课-AI用在销售归因分析场景中-用随机森林从0构建自己的“小模型”

开篇 在前一篇《机器学习的基础-线性回归如何应用在商业场景中》里,我们说到了如果我们只是简单的分析和预测一下投入广告费用和销售额增长是否存在必然关系,我们用了线性回归法得到了分析,得到的分析结果极其精准,以及提到了:如果当销售因素是非线性的并且有着额外一些如…

Linux运维——Vim技巧三

Vim技巧 一、按 按模 模式 式匹 匹配 配及 及按 按原 原义 义匹 匹配1.1、调整查找模式的大小写敏感性1.2、按正则表达式查找时&#xff0c;使用 \v 模式开关1.3、按原义查找文本时&#xff0c;使用 \V 原义开关1.4、使用圆括号捕获子匹配1.5、界定单词的边界1.6、界定匹配的边…