[论文分享] Never Mind the Malware, Here’s the Stegomalware

Never Mind the Malware, Here’s the Stegomalware [IEEE Security & Privacy 2022]

Luca Caviglione | National Research Council of Italy
Wojciech Mazurczyk | Warsaw University of Technology and FernUniversität in Hagen

近年来,隐写技术已逐渐被观察到用于赋予 threats 隐形能力并发起复杂的攻击活动。这需要在一定程度上重新思考对恶意软件的认知。

Background

人们普遍认为隐写术主要用于学术书籍,其使用几乎仅限于研究论文。在计算机科学领域尤其如此: 除了一些成功的想法,比如保护版权、检测数字媒体的变化或跟踪网络流量。从2014年开始,随着恶意软件传播的急剧增长,许多安全研究人员和专家注意到,攻击变得越来越难以检测,许多威胁在互联网上游荡多年而不受干扰。例如,Regin在2014年被发现,但它的最初起源可以追溯到2003年。
即使增加的隐蔽性是编码技术(例如,二进制混淆),防御方法(例如,反取证例程和内存加密)和架构优化(例如,多级加载以推迟恶意有效载荷的检索)混合的结果,研究人员发现隐写术是这种成功的基本要素。
当使用隐写术时,通过将指令序列转换为中间形式(例如,ASCII或Base64)来避免检测,然后通过操纵图像的像素或将其隐藏在元数据中来隐藏它。类似地,对于网络会话的情况,流量混淆创建一个数据包序列,模拟另一个协议或显示标准特征(例如,数据包的大小或使用的端口)。
相反,隐写恶意软件主要利用网络隐蔽通道,这是通过将恶意数据隐藏在合法流量中创建的,以实现隐蔽的通信路径。作为一个可能的例子,攻击者可以通过在目标流的包间延迟中隐藏命令来激活僵尸网络。
事实上,最近在“野外”观察到的样本利用了许多隐身技术,这些技术也扩展到了更广泛的信息隐藏领域。包括如下机制:

  • 在看起来无害的数据中隐藏恶意代码或其他资源(例如,库,脚本和配置文件),以避免检测,阻塞或内容过滤规则
  • 在受害者的主机上减少有效负载或检索额外的可执行文件,以减少威胁的足迹,避开防病毒软件,或使重建攻击变得更加困难
  • 实施隐蔽通道,以泄露信息和交换命令,以及绕过流量策略或入侵检测系统
  • 允许进程交换数据,即使被限制在单独的执行区域或硬件实体中(例如,沙箱、容器或CPU内核)。

Instances

2021年5月,一种能够在Steam在线游戏平台的资料图片元数据中隐藏信息的威胁被发现。被操纵的头像不能启动可执行代码: 相反,它只是作为另一个恶意阶段的隐藏载体。在执行时,该威胁检查Microsoft Teams的存在,并评估Twitter的可达性,以实施命令和控制(C&C)操作或部署机器人。
2020年7月,发现了一种石油钻机恶意软件的变种。与之前的版本相比,最有趣的区别在于使用隐写术在电子邮件通信中实现了嵌套的C&C通道,即数据隐藏在以附件形式交换的无害图片中。在2020年5月至6月针对日本、意大利、英国和德国工业机构发动的大规模攻击中,隐写术也是关键因素。
更多的细节,参考Trojan.MSExcel. Agent.be and Trojan.PowerShell。Generic被用来感染受害者并获取额外的有效载荷,包括配置文件。为了避免检测和减少足迹,木马从imgur.com等公共服务下载了一张包含恶意代码的图像。与此同时,另一种利用隐写术并通过USB大容量存储设备传播的恶意软件被识别出来。它名为USBFerry,利用了BKDR_IDSHELL。ZTFC-A后门,在与远程控制器通信时向域名系统(DNS)流量和JPG图像中注入秘密数据。2019年早些时候,在Titanium中也观察到了类似的方法:在这种情况下,数据被隐藏在PNG文件中。
从2020年底到2021年底,几家在线商店定期受到攻击,这也证明了人们对赋予恶意软件隐写技术的兴趣越来越大。随着“Magecart”这个总称,指一些针对电子商务平台的网络犯罪集团,它们窃取信用卡号码并出售牟利。例如,在2020年第一季度,网络犯罪分子通过隐藏在一个PNG文件中浏览网页,使其看起来与受害者浏览器中显示的内容完全一致,从而入侵了特百惠网站。基于攻击的数据隐藏技术的范围是相当广泛的。例如,恶意代码隐藏在电子商务网站的PHP和CSS文件的注释块中,而付款页面的恶意代码将受害者的数据注入到JPG图像中。
2019年,大量隐藏图像内容的攻击被分离出来。例如,LokiBot。在StarCruft威胁中也观察到利用隐写修改过的图像的多级加载机制。然而,2019年发现了一个具有隐写功能的主要远程访问木马威胁(首次出现在2017年)的升级版本,目标是金融科技组织。
为简洁起见,我们只讨论由安全专家和研究人员分离出来的最新威胁。表1总结了在野外观察到的最显著和已知的隐写器。如图所示,该表报告了信息隐藏的位置、使用的伪装技术以及目的。更全面和更新的列表可在网上找到。

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

Case of Invoke-PSImage

Invoke-PSImage 很好地说明了猜测何时使用隐写术是非常困难的。本质上,Invoke-PSImage允许通过改变相关绿色和蓝色通道的4个最低有效位,将PowerShell脚本嵌入到图像的像素中。尽管简单且有一些限制,但该方法已经发布在GitHub上,并在安全相关论坛上迅速传播。令人惊讶的是,在发布仅仅两天之后,它就被用于平昌奥运会的第一次攻击。
这证明了“运行代码”的可用性是一项攻击技术成功的重要标准之一。近年来,Invoke-PSImage已经被Powload利用(在2018年上半年发现),并且它仍然存在于Emotet [9] 和bebloh [10] 的不同版本的工具箱中。通过灰星(Greystar)勒索软件和Ursnif [11] 的一些变种,将有效载荷加载到受害者的主机上。另一个值得注意的利用方式是创建后门,就像在bandook [12] 中发生的那样。

What’s Next

很明显,隐写软件使用的广泛技术和内容导致了攻击者和防御者之间的不对称。此外,如果网络犯罪分子怀疑某一运营商将被监视,他/她可以简单地转移到另一个运营商,因此几乎不可能设计出一刀切的对策。因此,开源和商业产品(例如,防火墙和防病毒)的可用性是高度分散或专业化的。例如,许多入侵检测系统不是设计来处理开箱即用的网络隐蔽通道,需要开发特定的规则 [13]。
对于针对图像的威胁,已经有一些专门的产品可用,例如McAfee的隐写防御方案 [14],但它们似乎还不够成熟,无法大规模使用。真正关心隐写软件的研究人员和安全专家在设计防御策略时应该考虑以下4个原则:
(1) Opportunity makes the thief
隐写和隐藏方法主要利用不必要的信息、不完全隔离或可被操纵以存储秘密的歧义。因此,未来的硬件、应用程序编程接口、多媒体文件和网络协议应该强制执行一些抗隐写的设计标准。

(2) Decouple
检测和缓解隐写软件需要同时检查多个工件,这些工件可能非常不同(例如二进制文件、元数据和网络数据包)。即使每个威胁都有自己的特征,需要特定的签名(例如,大量系统调用或HTTP流量响应体中的模式),用于获取硬件和软件可见性的技术也可能是唯一的。追踪隐藏在“意料之外”的数据的攻击者时,一种减轻负担的方法可以从解耦设计中受益。

(3) You will never know
隐写器可能会在意想不到的地方留下它存在的迹象。隐藏的数据可能会增加文件的大小,网络流量的寄生使用可能会改变数据包头部位的分布,图像隐写可能会在RGB直方图中产生特征。事实上,隐写软件的影响是无法预测的,签名和被隐藏数据之间的关系通常无法用常识来捕捉。为了实现这一目标,人工智能可以在一定程度上减少防御者对能够隐藏信息的威胁的盲目性。

(4) Follow the code
随着“犯罪即服务”模式的日益扩散,这种模式允许使用第三方代码和设施来设计和实施威胁。事实上,如果一种充分的、公开可用的方法成为恶意工具的一部分,或者成为威胁后代的基础,那么它的采用将变得非常不可能控制。与此同时,在互联网上寻找利用隐写术的想法、工具和概念验证实现,从预测隐写策略或在恶意威胁消失之前追踪它们的角度来看,可能是一项有价值的努力。

总结

References

[9] “Internet security threat report,” Symantec, Feb. 2019. Accessed: Jun. 9, 2022. https://docs.broadcom.com/doc/istr-24-2019-en
[10] R. Han, C. Yang, J. Ma, S. Ma, Y. Wang, and F. Li, “IMShell-Dec: Pay more attention to external links in powershell,” in Proc. IFIP Int. Conf. ICT Syst. Security Privacy Protection, 2020, vol. 580, pp. 189–202.
[11] C. Patsakis and C. Anargyros, “Analysing the Fall 2020 Emotet campaign,” 2020, arXiv:2011.06479.
[12] T. Seals, “Digitally signed bandook trojan reemerges in global spy campaign,” ThreatPost, Nov. 30, 2020. https://threatpost.com/ digitally-signed-bandook-trojan -spy-campaign/161676
[13] T. Koziak, K. Wasielewska, and A. Janicki, “How to make an intrusion detection system aware of steganographic transmission,” in Proc. Eur. Interdisciplinary Cybersecurity Conf., Nov. 2021, p. 77–82.
[14] “Steganography defensive initiative,” McAfee. Accessed: Jun. 2022. https://www.mcafee.com/enterprise/it-it/downloads/free-tools/ steganography.html

Insights

(1) Stegomalware can give out a paper
(2) scouting the Internet for ideas, tools, and proof-of-concept implementations exploiting steganography could be a worthy effort in the perspective of anticipating cloaking strategies or chasing alicious threats before they disappear.

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

处理本地DNS劫持,导致域名解析失败

回顾情形 在公司内网,有同事反馈appstoreconnect.apple.com网站需要通过代理才能正常访问。 向我这边询问,否修改过路由策略; 检测域名 通过域名ping检测网址,https://ping.chinaz.com/astrill.com,来ping域名apps…

「实用场景教程」如何用日程控件DHTMLX Scheduler制作酒店预订日历?(一)

dhtmlxScheduler是一个类似于Google日历的JavaScript日程安排控件,日历事件通过Ajax动态加载,支持通过拖放功能调整事件日期和时间,事件可以按天,周,月三个种视图显示。 DHTMLX Scheduler正式版下载 在本教程中&…

Git | Git的基本操作以及原理介绍

文章目录 基本操作创建git仓库配置name和email .git目录的结构git add & git commit.git目录结构的变化 git追踪管理的数据git的版本回退回退的原理回退的三种情况 版本库中文件的删除git分支管理分支的删除合并分支时的冲突分支的合并模式分支策略git stash不要在master分…

reactive和effect,依赖收集触发依赖

通过上一篇文章已经初始化项目,集成了ts和jest。本篇实现Vue3中响应式模块里的reactive方法。 前置知识要求 如果你熟练掌握Map, Set, Proxy, Reflect,可直接跳过这部分。 Map Map是一种用于存储键值对的集合,并且能够记住键的原始插入顺…

谈谈一个IT杂家的职业生涯规划,你的护城河被AI 攻破了么

文章大纲 没有顶会的从业者:成为深度学习老中医AIGC 还未能克服的难点:忽然的惊喜 -- 大模型的智能涌现未来还能做点什么,从计算机视觉的发展走向看T 字型人才与护城河成为更加熟练使用人工智能的人 参考文献与学习路径 我的职业生涯将近十年…

JVM实战-JVM之类加载时机

目录 JVM实战-JVM之类加载时机1 主动引用2 被动引用 JVM实战-JVM之类加载时机 Java虚拟机把描述类的数据从Class文件加载到内存,并对数据进行校验、转换解析和初始化,最终形成可以被虚拟机直接使用的Java类型,这个过程被称作虚拟机的类加载机…

第一篇 《随机点名答题系统》简介及设计流程图(类抽奖系统、在线答题系统、线上答题系统、在线点名系统、线上点名系统、在线考试系统、线上考试系统)

专栏目录 第一篇 《随机点名答题系统》简介及设计流程图(类抽奖系统、在线答题系统、线上答题系统、在线点名系统、线上点名系统、在线考试系统、线上考试系统)-CSDN博客 第二篇 《随机点名答题系统》——题库管理详解(类抽奖系统、在线答题…

【luckfox】0、开发环境搭建

前言 本章简单介绍如何搭建luckfox的开发环境。 一、抓取luckfox源码 需要提前准备好ubuntu环境。 git clone https://github.com/LuckfoxTECH/luckfox-pico.git二、编译 youkaiubuntu:/home/luckfox/luckfox-pico$ ./build.sh lunchyoukaiubuntu:/home/luckfox/luckfox-p…

SoftwareTest6 - 用 Selenium 怎么点点点

用 Selenium 来点点点 一 . 什么是自动化 ?1.1 自动化测试的分类接口自动化测试UI 自动化测试 (界面测试) 1.2 实现自动化测试的工具 : selenium环境部署驱动 二 . selenium 的使用2.1 一个简单的示例 : 让谷歌浏览器在百度首页搜索蔡徐坤准备工作编写代码 2.2 打开谷歌浏览器…

C++内存分区 代码区 全局区 栈区 堆区

一.内存四区 1.1 代码区: 存放函数体的二进制代码,由操作系统进行管理。1.2 全局区: 存放全局变量,静态变量以及常量。1.3 栈区: 由编译器自动分配释放,存放函数的参数值,局部变量等。1.4 堆…

JVM虚拟机:垃圾回收器之G1

本文重点 在前面的课程中我们介绍了六个垃圾回收器,分别是新生代的三个以及老年代的三个,本文我们将介绍一个垃圾回收器,它既可以用于新生代又可以用于老年代,这个垃圾回收器就是G1。 G1垃圾回收器的特点 G1是一种服务器端的并发收集垃圾回收器,应用在多处理器和大容量…

大文件分片上传、断点续传、秒传

小文件上传 后端&#xff1a;SpringBootJDK17 前端&#xff1a;JavaScriptsparkmd5.min.js 一、依赖 <parent><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-parent</artifactId><version>3.1.2</ve…

python数据处理作业4:使用numpy数组对象,随机创建4*4的矩阵,并提取其对角元素

每日小语 真理诚然是一个崇高的字眼&#xff0c;然而更是一桩崇高的业绩。如果人的心灵与情感依然健康&#xff0c;则其心潮必将为之激荡不已。——黑格尔 难点&#xff1a;如何创建&#xff1f;取对角元素的函数是什么&#xff1f; gpt代码学习 import numpy as np# 随机创…

【数据结构】树与二叉树(十六):二叉树的基础操作:插入结点(算法Insert)

文章目录 5.2.1 二叉树二叉树性质引理5.1&#xff1a;二叉树中层数为i的结点至多有 2 i 2^i 2i个&#xff0c;其中 i ≥ 0 i \geq 0 i≥0。引理5.2&#xff1a;高度为k的二叉树中至多有 2 k 1 − 1 2^{k1}-1 2k1−1个结点&#xff0c;其中 k ≥ 0 k \geq 0 k≥0。引理5.3&…

【MySQL系列】 第四章 · 约束

写在前面 Hello大家好&#xff0c; 我是【麟-小白】&#xff0c;一位软件工程专业的学生&#xff0c;喜好计算机知识。希望大家能够一起学习进步呀&#xff01;本人是一名在读大学生&#xff0c;专业水平有限&#xff0c;如发现错误或不足之处&#xff0c;请多多指正&#xff0…

windows系统pycharm程序通过urllib下载权重https报错解决

报错内容&#xff1a; raise URLError(unknown url type: %s % type) urllib.error.URLError: <urlopen error unknown url type: https> 解决办法记录&#xff1a; 1. 下载 pyopenssl : pip install pyopenssl 此时&#xff0c; import ssl 可以通过提示指导你安…

机器视觉工程师,实际上调机仔需要居多,不需要那么多会机器视觉开发的,实际上机器视觉公司根本养不起

不要机器视觉开发等着倒闭&#xff0c;要那么多机器视觉开发是想倒闭&#xff0c;根本养不起。 人力对于机器视觉企业来说&#xff0c;仅仅是成本&#xff0c;也可以是剥削利润。当机器视觉公司开发一款标准软件后&#xff0c;意味着什么&#xff1f;技术可以复制&#xff0c;粘…

efcore反向共工程,单元测试

1.安装efcore需要的nuget <PackageReference Include"Microsoft.EntityFrameworkCore" Version"6.0.24" /> <PackageReference Include"Microsoft.EntityFrameworkCore.SqlServer" Version"6.0.24" /> <PackageRefere…

【每日一题】K 个元素的最大和

文章目录 Tag题目来源解题思路方法一&#xff1a;贪心 其他语言Cpython3 写在最后 Tag 【贪心】【脑筋急转弯】【数组】【2023-11-15】 题目来源 2656. K 个元素的最大和 解题思路 方法一&#xff1a;贪心 从第一次操作开始每次选择数组中的最大值&#xff0c;由于最大值在…

pycharm pro v2023.2.4(Python编辑开发)

PyCharm2023是一款集成开发环境&#xff08;IDE&#xff09;&#xff0c;专门为Python编程语言设计。以下是PyCharm2023的一些主要功能和特点&#xff1a; 代码编辑器&#xff1a;PyCharm2023提供了一个功能强大的代码编辑器&#xff0c;支持语法高亮、自动补全、代码调试、版…