透视俄乌网络战之二:Conti勒索软件集团(上)
透视俄乌网络战之一:数据擦除软件
Conti勒索软件集团(上)
- 1. Conti简介
- 2. 组织架构
- 3. 核心成员
- 4. 招募途径
- 5. 工作薪酬
- 6. 未来计划
- 参考
1. Conti简介
Conti于2019年首次被发现,现已成为网络世界中最危险的勒索软件之一,并以其在目标系统中加密和部署的速度快而闻名。Conti被认为是流行的Ryuk勒索软件家族的变种。据美国国土安全部网络安全和基础设施安全局(CISA)和美国联邦调查局(FBI)统计,Conti针对全球发起了400多次网络攻击,其中四分之三的目标位于美国,勒索金额高达2500万美元。

原本Conti和REvil都是俄罗斯勒索软件团伙的主力军,但2022年1月11日,美国对俄罗斯施加压力后,俄罗斯采取行动逮捕了REvil勒索团伙的成员,使得Conti成为俄罗斯软件团伙中的“牛耳”。
2月27日,Conti勒索软件团伙的内部聊天记录因俄乌克冲突而遭到泄露。具体过程如下:
2022年2月25日,Conti承诺在俄罗斯入侵乌克兰后支持俄罗斯政府。

2022年2月27日,由于Conti组织内部冲突,Conti发布了第二条消息。

2022年2月27日,Twitter账号@ContiLeaks发布了勒索软件组织Conti的大量聊天记录,其中包含Conti用于内部交流的数十万条Jabber和Rocket.Chat消息。

2. 组织架构
Conti堪称史上最能卷的网络勒索组织之一,并且其内部组织性非常强,管理制度严格,这也是他能卷到飞起的原因之一。
- 人事(HR) :负责招聘新员工,包括梳理求职网站、组织线上面试以及在面试官和相关技术联络人之间进行沟通。
- 程序员(Coders):负责 编写并维护恶意软件代码、服务器后端。
- 测试人员(Testers ):负责检查并测试各种恶意软件,以确保恶意软件避免被发现。
- 加密人员(Crypters):主要负责对有效载荷、二进制文件和脚本进行语法更改,以使其更难检测和分析
- 系统管理员(SysAdmins):主要负责安装系统、维护服务器、建立代理、注册域、管理帐户
- 逆向工程师(Reverse Engineers):负责了解所有使用工具的工作原理,协助研发人员
- 攻击团队(Offensive Team):负责获得对受害机器的初始访问权限,进行权限升级和横向移动,最终目标是获得域管理员权限,开展攻击活动。
- OSINT及谈判专家(OSINT Specialists and Negotiation Staff ):OSINT 专家复杂寻找目标,谈判专家负责在受害者的数据被窃取时,与受害者进行谈判谈判赎金支付需求。
3. 核心成员
Conti团伙核心成员组织架构图如下:

Stern :大boss,负责集团运营和与附属公司合作,并直接和间接地管理许多人员和项目。
Bentley:技术负责人,负责测试和防御规避,管理加密人员与测试人员。
Mango:主要协调解决负责攻击人员和开发人员之间的问题。
Buza:技术管理者,负责开发和产品,在开发团队中策划加载器和bot的开发。
Target:负责管理黑客团队,还负责管理所有线下办公场所。
Veron:与Emotet合作的枢纽,Veron正在与相关的Conti成员管理Emotet活动的所有资源,包括基础设施。
4. 招募途径
(1)headhunter.ru 和 superjobs.ru
Conti可通过第三方工具直接访问 headhunter.ru简历数据库

通过筛选的候选人简历会被匿名发送到公司内部相关的技术联络点并确保候选人的上司不知道他们的身份。但有时通过在网上搜索求职者的工作经历,可以推断出他们的身份。

(2)员工内部推介
根据stern的聊天截图,Conti成员内部推荐可以获得内推奖金。

(3)暗网论坛
Conti的竞争对手REvil团伙曾经做了一个宣传噱头,将 价值100万美元的比特币存入了一个账户,然后在讨论该噱头活跃度高的论坛帖子中发布招聘广告。招聘广告收到了许多带有联系方式的回复,且所有回复都是公开的,因此Conti的HR可以从中筛选出一批高质量的候选人,并向他们发送工作邀请。

5. 工作薪酬
Conti的谈判团队成员(包括OSINT专家)的报酬是佣金,一般为支付赎金的0.5%到1%。编码人员和管理人员的工资是用比特币支付的,每月转账一到两次。
Conti的员工会因表现不佳而被罚款。

然而罚款并不够有效,Conti甚至会采用解雇威胁来激励员工。

攻击团队的压力就更大了,他们已经习惯了随时待命,周六和周日休息,就是他们最大的快乐。

攻击团队的成员被要求随时投入到他们的“战斗角色”中。

公司的“当月最佳员工”奖,奖金相当于该员工工资的50%,来自对当月待遇较差的员工征收的惩罚性罚款。

Conti的管理层会非常认真的挑选获当月最佳员工

Conti员工有的并不知道自己从事的是犯罪活动的一部分。求职面试中,会告诉招聘者,公司的主要方向是为渗透测试者提供软件。
一个绰号为“Zulas”的小组成员,很可能是用Erlang编程语言开发Trickbot后端的人。Zulas对Erlang充满热情,渴望展示他其他作品的例子,甚至提到了他的真名。当他的经理提到他的Trickbot项目可被“半个世界”看到时,Zulas并不理解这种说法,也不知道他的软件在做什么。他的经理只能告诉他,他正在为一个广告分析系统的后端工作。


Conti认同“Work Hard and Play Hard”,部分长期员工之间都形成了良好的关系,他们会举行面对面的会议,甚至会与家人聚在一起喝酒。

6. 未来计划
(1)推出加密系统
Conti 团伙的管理团队不断寻求拓展新的业务,其中一个想法该集团自己的生态系统中创建一个加密货币交易所。


(2)暗网社交网络
“暗网社交网络”(又名:“VK for darknet”或“Carbon Black for hackers”),这是一个受Stern启发并由Mango实施的项目,计划作为商业项目开发。


参考
[1] LEAKS OF CONTI RANSOMWARE GROUP PAINT PICTURE OF A SURPRISINGLY NORMAL TECH START-UP… SORT OF
[2] Conti Armada: The ARMattack Campaign
相关文章:
透视俄乌网络战之二:Conti勒索软件集团(上)
透视俄乌网络战之一:数据擦除软件 Conti勒索软件集团(上) 1. Conti简介2. 组织架构3. 核心成员4. 招募途径5. 工作薪酬6. 未来计划参考 1. Conti简介 Conti于2019年首次被发现,现已成为网络世界中最危险的勒索软件之一࿰…...
【华为OD机试python】拔河比赛【2023 B卷|100分】
【华为OD机试】-真题 !!点这里!! 【华为OD机试】真题考点分类 !!点这里 !! 题目描述 公司最近准备进行拔河比赛,需要在全部员工中进行挑选。 选拔的规则如下: 按照身高优先、体重次优先的方式准备比赛阵容; 规定参赛的队伍派出10名选手。 请实现一个选拔队员的小程序。 输…...
05 CNN 猴子类别检测
一、数据集下载 kaggle数据集[10 monkey] 二、数据集准备 2.1 指定路径 from tensorflow import keras import tensorflow as tf import numpy as np import pandas as pd import matplotlib.pyplot as plttrain_dir /newdisk/darren_pty/CNN/ten_monkey/training/ valid_d…...
【C#】关于Array.Copy 和 GC
关于Array.Copy 和 GC //一个简单的 数组copy 什么情况下会触发GC呢[ReliabilityContract(Consistency.MayCorruptInstance, Cer.MayFail)]public static void Copy(Array sourceArray,long sourceIndex,Array destinationArray,long destinationIndex,long length);当源和目…...
Vue前端框架08 Vue框架简介、VueAPI风格、模板语法、事件处理、数组变化侦测
目录 一、Vue框架1.1渐进式框架1.2 Vue的版本 二、VueAPI的风格三、Vue开发准备工作四、模板语法文本插值属性绑定条件渲染列表渲染key管理状态 四、事件处理定义事件事件参数事件修饰符 五、数组变化侦测 一、Vue框架 渐进式JavaScript框架,易学易用,性…...
WebStorm使用PlantUML
虽然 WebStorm 没有官方的 PlantUML 插件,但我们可以使用第三方插件 PlantUML Integration 来实现在 WebStorm 中使用 PlantUML。 以下是使用 PlantUML Integration 插件,在 WebStorm 中设计一个 Vue 模块的步骤: 安装 PlantUML Integratio…...
Python做批处理,给安卓设备安装应用和传输图片
场景:几台新安卓平板过来了,需要安4个应用并复制4张图片。手工操作其实也未尝不可,但是能自动化起来,岂不是美哉。 python调用系统命令,我选用了os.system,最简单粗暴,也能有回显,就…...
如何获取springboot中所有的bean
代码 Component public class TestS {Autowiredprivate Map<String, Object> allBean Maps.newConcurrentMap();public void testA(){System.out.println("测试下");}}这段代码是一个使用 Spring Framework 的依赖注入(DI)功能的示例。…...
大数据技术之Hadoop:HDFS存储原理篇(五)
目录 一、原理介绍 1.1 Block块 1.2 副本机制 二、fsck命令 2.1 设置默认副本数量 2.2 临时设置文件副本大小 2.3 fsck命令检查文件的副本数 2.4 block块大小的配置 三、NameNode元数据 3.1 NameNode作用 3.2 edits文件 3.3 FSImage文件 3.4 元素据合并控制参数 …...
用C语言实现牛顿摆控制台动画
题目 用C语言实现牛顿摆动画,模拟小球的运动,如图所示 拆解 通过控制台API定位输出小球运动的只是2边小球,中间小球不运动,只需要固定位置输出左边小球上升下降时,X、Y轴增量一致。右边小球上升下降时,X、…...
如何自己开发一个前端监控SDK
最近在负责团队前端监控系统搭建的任务。因为我们公司有统一的日志存储平台、日志清洗平台和基于 Grafana 搭建的可视化看板,就剩日志的采集和上报需要自己实现了,所以决定封装一个前端监控 SDK 来完成日志的采集和上报。 架构设计 因为想着以后有机会…...
node.js笔记
首先:浏览器能执行 JS 代码,依靠的是内核中的 V8 引擎(C 程序) 其次:Node.js 是基于 Chrome V8 引擎进行封装(运行环境) 区别:都支持 ECMAScript 标准语法,Node.js 有独立…...
mysql 增量备份与恢复使用详解
目录 一、前言 二、数据备份策略 2.1 全备 2.2 增量备份 2.3 差异备份 三、mysql 增量备份概述 3.1 增量备份实现原理 3.1.1 基于日志的增量备份 3.1.2 基于时间戳的增量备份 3.2 增量备份常用实现方式 3.2.1 基于mysqldump增量备份 3.2.2 基于第三方备份工具进行增…...
9月5日上课内容 第一章 NoSQL之Redis配置与优化
本章结构 关系型数据库和非关系型数据库 概念介绍 ●关系型数据库: 关系型数据库是一个结构化的数据库,创建在关系模型(二维表格模型)基础上,一般面向于记录。 SQL 语句(标准数据查询语言)就是…...
QT 第四天
一、设置一个闹钟 .pro QT core gui texttospeechgreaterThan(QT_MAJOR_VERSION, 4): QT widgetsCONFIG c11# The following define makes your compiler emit warnings if you use # any Qt feature that has been marked deprecated (the exact warnings # depend…...
nrf52832 GPIO输入输出设置
LED_GPIO #define LED_START 17 #define LED_0 17 #define LED_1 18 #define LED_2 19 #define LED_3 20 #define LED_STOP 20设置位输出模式: nrf_gpio_cfg_output(LED_0); 输出高电平:nrf_gpio_pin_set(LED_0); 输…...
MyBatis 动态 SQL 实践教程
一、MyBatis动态 sql 是什么 动态 SQL 是 MyBatis 的强大特性之一。在 JDBC 或其它类似的框架中,开发人员通常需要手动拼接 SQL 语句。根据不同的条件拼接 SQL 语句是一件极其痛苦的工作。例如,拼接时要确保添加了必要的空格,还要注意去掉列…...
CSS 斜条纹进度条
效果: 代码: html: <div class"active-line flex"><!-- lineWidth:灰色背景 --><div class"bg-line"><div v-for"n in 30" class"gray"></div></div><div…...
JavaScript(1)每天10个小知识点
目录 1. JavaScript 有哪些数据类型,它们的区别?**2. 数据类型检测的方式有哪些**3. null 和 undefined 区别**4. intanceof 操作符的实现原理及实现**5. 如何获取安全的 undefined 值?**6. Object.is() 与比较操作符 “”、“” 的区别*…...
scanf和scanf_s函数详解
目录 引言: 1.scanf函数的用法: 2.scanf_s函数的用法: 3.scanf和scanf_s的区别: 结论: 引言: 在C语言中,输入函数scanf是非常常用的函数之一,它可以从标准输入流中读取数据并将其…...
智能分布式爬虫的数据处理流水线优化:基于深度强化学习的数据质量控制
在数字化浪潮席卷全球的今天,数据已成为企业和研究机构的核心资产。智能分布式爬虫作为高效的数据采集工具,在大规模数据获取中发挥着关键作用。然而,传统的数据处理流水线在面对复杂多变的网络环境和海量异构数据时,常出现数据质…...
A2A JS SDK 完整教程:快速入门指南
目录 什么是 A2A JS SDK?A2A JS 安装与设置A2A JS 核心概念创建你的第一个 A2A JS 代理A2A JS 服务端开发A2A JS 客户端使用A2A JS 高级特性A2A JS 最佳实践A2A JS 故障排除 什么是 A2A JS SDK? A2A JS SDK 是一个专为 JavaScript/TypeScript 开发者设计的强大库ÿ…...
Vite中定义@软链接
在webpack中可以直接通过符号表示src路径,但是vite中默认不可以。 如何实现: vite中提供了resolve.alias:通过别名在指向一个具体的路径 在vite.config.js中 import { join } from pathexport default defineConfig({plugins: [vue()],//…...
【Elasticsearch】Elasticsearch 在大数据生态圈的地位 实践经验
Elasticsearch 在大数据生态圈的地位 & 实践经验 1.Elasticsearch 的优势1.1 Elasticsearch 解决的核心问题1.1.1 传统方案的短板1.1.2 Elasticsearch 的解决方案 1.2 与大数据组件的对比优势1.3 关键优势技术支撑1.4 Elasticsearch 的竞品1.4.1 全文搜索领域1.4.2 日志分析…...
通过MicroSip配置自己的freeswitch服务器进行调试记录
之前用docker安装的freeswitch的,启动是正常的, 但用下面的Microsip连接不上 主要原因有可能一下几个 1、通过下面命令可以看 [rootlocalhost default]# docker exec -it freeswitch fs_cli -x "sofia status profile internal"Name …...
Python训练营-Day26-函数专题1:函数定义与参数
题目1:计算圆的面积 任务: 编写一个名为 calculate_circle_area 的函数,该函数接收圆的半径 radius 作为参数,并返回圆的面积。圆的面积 π * radius (可以使用 math.pi 作为 π 的值)要求:函数接收一个位置参数 radi…...
归并排序:分治思想的高效排序
目录 基本原理 流程图解 实现方法 递归实现 非递归实现 演示过程 时间复杂度 基本原理 归并排序(Merge Sort)是一种基于分治思想的排序算法,由约翰冯诺伊曼在1945年提出。其核心思想包括: 分割(Divide):将待排序数组递归地分成两个子…...
二叉树-144.二叉树的前序遍历-力扣(LeetCode)
一、题目解析 对于递归方法的前序遍历十分简单,但对于一位合格的程序猿而言,需要掌握将递归转化为非递归的能力,毕竟递归调用的时候会调用大量的栈帧,存在栈溢出风险。 二、算法原理 递归调用本质是系统建立栈帧,而非…...
Linux入门(十五)安装java安装tomcat安装dotnet安装mysql
安装java yum install java-17-openjdk-devel查找安装地址 update-alternatives --config java设置环境变量 vi /etc/profile #在文档后面追加 JAVA_HOME"通过查找安装地址命令显示的路径" #注意一定要加$PATH不然路径就只剩下新加的路径了,系统很多命…...
Linux 内存管理调试分析:ftrace、perf、crash 的系统化使用
Linux 内存管理调试分析:ftrace、perf、crash 的系统化使用 Linux 内核内存管理是构成整个内核性能和系统稳定性的基础,但这一子系统结构复杂,常常有设置失败、性能展示不良、OOM 杀进程等问题。要分析这些问题,需要一套工具化、…...
