主机防病毒攻略之勒索病毒
勒索病毒并不是某一个病毒,而是一类病毒的统称,主要以邮件、程序、木马、网页挂马的形式进行传播,利用各种加密算法对文件进行加密,被感染者一般无法解密,必须拿到解密的私钥才有可能破解。
已知最早的勒索软件出现于 1989 年,名为“艾滋病信息木马”(Trojan/DOS.AidsInfo,亦称“PC Cyborg木马”),其作者为 Joseph Popp。早期的勒索病毒主要通过钓鱼邮件,挂马,社交网络方式传播,使用转账等方式支付赎金,其攻击范畴和持续攻击能力相对有限,相对容易追查。2006 年出现的 Redplus 勒索木马(Trojan/Win32.Pluder),是国内首个勒索软件。2013下半年开始,是现代勒索病毒正式成型的时期。勒索病毒使用AES和RSA对特定文件类型进行加密,使破解几乎不可能。同时要求用户使用虚拟货币支付,以防其交易过程被跟踪。这个时期典型的勒索病毒有CryptoLocker,CTBLocker等。自2016年开始,WannaCry勒索蠕虫病毒大爆发,且目的不在于勒索钱财,而是制造影响全球的大规模破坏行动。
戏剧性的是,在此阶段,勒索病毒已呈现产业化、家族化持续运营状态。
自2018年开始,勒索木马技术日益成熟,已将攻击目标从最初的大面积撒网无差别攻击,转向精准攻击高价值目标。比如直接攻击医疗行业,企事业单位、政府机关服务器,包括制造业在内的传统企业面临着日益严峻的安全形势。
勒索病毒工作原理
勒索病毒文件一旦进入被攻击者本地,就会自动运行,同时删除勒病毒母体,以躲避查杀、分析和追踪(变异速度快,对常规的杀毒软件都具有免疫性)。接下来利用权限连接黑客的服务器,上传本机信息并下载加密私钥与公钥,利用私钥和公钥对文件进行加密(先使用 AES-128 加密算法把电脑上的重要文件加密,得到一个密钥;再使用 RSA-2048 的加密算法把这个密钥进行非对称加密。)。除了病毒开发者本人,其他人是几乎不可能解密。如果想使用计算机暴力破解,根据目前的计算能力,几十年都算不出来。如果能算出来,也仅仅是解开了一个文件。(当然,理论上来说,也可以尝试破解被 RSA-2048 算法加密的总密钥,至于破解所需要的时间,恐怕地球撑不到那个时候。)加密完成后,还会锁定屏幕,修改壁纸,在桌面等显眼的位置生成勒索提示文件,指导用户去缴纳赎金。
值得一提的是,有的勒索方式索要赎金是比特币,如果你不会交易流程,可能会遭到勒索者的二次嘲讽:自己上网查!( Ĭ ^ Ĭ )
以下为APT沙箱分析到勒索病毒样本载体的主要行为:
1、调用加密算法库;
2、通过脚本文件进行Http请求;
3、通过脚本文件下载文件;
4、读取远程服务器文件;
5、通过wscript执行文件;
6、收集计算机信息;
7、遍历文件。
该样本主要特点是通过自身的解密函数解密回连服务器地址,通过HTTP GET 请求访问加密数据,保存加密数据到TEMP目录,然后通过解密函数解密出数据保存为DLL,然后再运行DLL (即勒索者主体)。该DLL样本才是导致对数据加密的关键主体,且该主体通过调用系统文件生成密钥,进而实现对指定类型的文件进行加密,即无需联网下载密钥即可实现对文件加密。同时,在沙箱分析过程中发现了该样本大量的反调试行为,用于对抗调试器的分析,增加了调试和分析的难度。
如何防勒索病毒?
青铜段位
不要打开陌生人或来历不明的邮件,防勒索病毒通过邮件的攻击;
需要的软件从正规(官网)途径下载;
升级杀毒软件到最新版本,阻止已存在的病毒样本攻击;
Win7、Win 8.1、Win 10用户,尽快安装微软MS17-010的官方补丁;
定期异地备份计算机中重要的数据和文件,万一中病毒可以进行恢复;
定期进行安全培训,日常安全管理可参考“三不三要”(三不:不上钩、不打开、不点击。三要:要备份、要确认、要更新)思路。
钻石段位
1. 物理,网络隔离染毒机器;
2. 对于内网其他未中毒电脑,排查系统安全隐患:
a)系统和软件是否存在漏洞
b)是否开启了共享及风险服务或端口,如135、137、139、445、3389
c)只允许办公电脑,访问专门的文件服务器。使用FTP,替代文件夹共享。
d)检查机器ipc空连接及默认共享是否开启
e)检查是否使用了统一登录密码或者弱密码
3. 尽量不要点击office宏运行提示,避免来自office组件的病毒感染;
4. 尽量不要双击打开.js、.vbs等后缀名文件;
5. 事后处理
在无法直接获得安全专业人员支持的情况下,可考虑如下措施:
通过管家勒索病毒搜索引擎搜索,获取病毒相关信息。搜索引擎地址(勒索病毒拦截|文件恢复_文档守护者保护文档安全 - 腾讯电脑管家
若支持解密,可直接点击下载工具对文件进行解密
王者段位
在如何防勒索病毒这个话题中,人们常规的防御思维综上所述。虽然没什么毛病,但怎么看都像是“坐以待毙”,被动挨打。不过也无可厚非,毕竟见招拆招是惯性思维。
正确的防勒索病毒手段,一定是以不变应万变。
举个栗子:
农场主养了一群羊,毛发油亮,膘肥体壮,卖相极好,农场主甚是欣慰。
有一天农场主发现少了几只羊,还发现了狼的踪迹,便明白了有狼偷羊。
农场主跟踪狼的踪迹,设置陷阱,日夜监督,身心俱疲,但还是没有捉到狼,羊的数量还在减少。
最后,农场主把茅草的羊圈换成了花岗岩羊圈,羊再也没少过,农场主也再也不用去寻找狼。
主机加固的概念便是如此。
所以如何防勒索病毒,主机加固的思路才是良策。
主机加固的核心要点:
系统加固
将调试好的系统锁定,变成可信系统。
在可信系统下,非法程序、脚本都无法运行。而且不会影响数据进出。
即使系统有漏洞,甚至管理员权限丢失,这个可信系统都是安全的。
程序加固
采用可信签名方式对可执行程序、脚本的启动进行实时的hash值校验,校验不通过
拒绝启动,并且可信程序无法被伪装。
文件加固
保护指定类型的文件不被篡改。
磁盘加密
创建安全沙盒,该沙盒对外隔离,对沙盒内的数据进行加密,确保数据只能在授权管理有效前提下,才能被解密。如果没有授权,即使管理员也无法拷贝使用这些数据,即使系统克隆也无效。
数据库加固
第一层:数据库文件禁止陌生程序访问和篡改。确保数据库文件级安全。
第二层:数据库端口访问可信过滤,只允许业务程序进行数据库端口通信连接,在连
接字符串的IP+端口+账号密码中,追加进程身份识别。
第三层:数据库连接SQL文进行智能过滤,防止关键数据被检索和访问,防止数据库
内数据被非法访问,防止数据库表单的危险操作行为。
很多问题换一种思维可能就迎刃而解。如何防勒索病毒,显然用主机加固的策略更佳。至于主机加固产品如何选型,各位仁者见仁智者见智吧。个人推荐MCK主机加固。这个产品所属公司在数据安全领域可是老前辈了,而且他们的另一个产品SDC沙盒在源代码安全领域是很能打的。
相关文章:
主机防病毒攻略之勒索病毒
勒索病毒并不是某一个病毒,而是一类病毒的统称,主要以邮件、程序、木马、网页挂马的形式进行传播,利用各种加密算法对文件进行加密,被感染者一般无法解密,必须拿到解密的私钥才有可能破解。 已知最早的勒索软件出现于 …...

Win10系统重装过程(一键装机)
相信不少小伙伴都有刷机重装系统的过程,那种镜像,up盘,压缩包等多个复杂过程也折磨的大伙不堪重负,因此本期带来简易版一键装机相应操作。 下载地址: 小心点击下方链接,点击即下载(3.66GB&…...

查询优化之单表查询
建表 CREATE TABLE IF NOT EXISTS article ( id INT(10) UNSIGNED NOT NULL PRIMARY KEY AUTO_INCREMENT, author_id INT(10) UNSIGNED NOT NULL, category_id INT(10) UNSIGNED NOT NULL, views INT(10) UNSIGNED NOT NULL, comments INT(10) UNSIGNED NOT NULL, title VARBI…...

ChatGPT写小论文
ChatGPT写小论文 只是个人对写小论文心得?从知乎,知网自己总结的,有问题,可以留个言我改一下 文章目录 ChatGPT写小论文-1.写论文模仿实战(狗头)0.论文组成1.好论文前提:2.标题3.摘要4.关键词5.概述6.实验数据、公式或者设计7.结论,思考8.参考文献 0.模仿1.喂大纲…...

公共资源包发布流程详解
文章目录 公有包发布并使用npm安装git仓库协议创建及使用 npm 私有包创建及使用 group npm 私有包私有仓账密存放位置 当公司各个系统都需要使用特定的业务模块时,这时候将代码抽离,发布到 npm 上,供下载安装使用,是个比较好的方案…...

设计模式简谈
设计模式是我们软件架构开发中不可缺失的一部分,通过学习设计模式,我们可以更好理解的代码的结构和层次。 设计原则 设计原则是早于设计方法出现的,所以的设计原则都要依赖于设计方法。这里主要有八个设计原则。 推荐一个零声学院免费教程&…...
day35—选择题
文章目录 1.把逻辑地址转换程物理地址称为(B)2.在Unix系统中,处于(C)状态的进程最容易被执行3. 进程的控制信息和描述信息存放在(B)4.当系统发生抖动(thrashing)时,可以采取的有效措…...
mybatis的<foreach>标签使用
记录:419 场景:使用MyBatis的<foreach></foreach>标签的循环遍历List类型的入参。使用collection属性指定List,item指定List中存放的对象,separator指定分割符号,open指定开始字符,close指定结…...

干货 | 被抑郁情绪所困扰?来了解CBT吧!
Hello,大家好! 这里是 壹脑云科研圈 ,我是 喵君姐姐~ 我们的情绪就像是一组正弦波,有情绪很高涨的时刻,也会有情绪低落的瞬间,也会有情绪平稳的时候。 这种情绪上的变化非常正常,也正是因为这…...

每日一个小技巧:1招教你手机消除笔怎么用
在日常生活中,我们经常需要在手机上进行编辑和涂改,但是由于各种原因,我们可能会做出错误或者不满意的修改。这时候,消除笔就派上用场了。消除笔可以帮助我们在不影响其他内容的前提下,对错误或者不满意的修改进行撤销…...

4月26号软件更新资讯合集....
Tpflow V7.0.2,PHP 工作流引擎新版发布 欢迎使用 Tpflow V7.0.1 工作流引擎 TpFlow 工作流引擎是一套规范化的流程管理系统,基于业务而驱动系统生命力的一套引擎。彻底释放整个信息管理系统的的活力,让系统更具可用性,智能应用型…...
尚硅谷大数据项目【电商数仓5.0】学习笔记
尚硅谷大数据项目【电商数仓5.0】学习笔记 大数据学习基础 基础shell编程:大数据之基础shell 集群快速安装教程:大数据集群快速安装教程 注:如果您已经有大数据学习基础,可以通过上面教程快速搭建学习环境,如果您没…...

vue3配置router路由并实现页面跳转
1、安装vue-router 用vue3需要安装版本4.0以上的vue-router,安装命令: npm install vue-routernext --savevue2尽量安装4.0以下版本,安装命令: npm i vue-router3.1.3在package.json中可以查看vue-router版本号: 2、…...

Java中字符串的初始化详解
前言 在深入学习字符串类之前,我们先搞懂JVM是怎样处理新生字符串的。当你知道字符串的初始化细节后,再去写String s "hello"或String s new String("hello")等代码时,就能做到心中有数。 首先得搞懂字符串常量池的概…...
面向对象(七)-- 代码块
目录 1. 代码块的概述 2. 代码块的分类 3. 代码块的执行优先级 1. 代码块的概述 在Java中,使用 { } 括起来的代码被称为代码块 2. 代码块的分...

《编程思维与实践》1037.一元多项式乘法
《编程思维与实践》1037.一元多项式乘法 题目 思路 比较容易想到将步骤分为三步: 1.读取多项式每项的系数(coefficient)和对应的指数(dim); 2.进行多项式乘法; 3.输出进行多项式乘法后的非零项系数. 其中多项式乘法可以通过循环来处理,输出可以用if来判断系数是否为0,需要考虑…...

top命令学习
文章目录 一、top命令回显信息含义1、第一行2、第二行3、第三行4、第四行5、第五行6、第六行进程信息 二、top简单交互1、按数字“1”,显示列出所有cpu的信息2、按“M”,按内存使用率从大到小排序3、按“P”,按CPU使用率从大到小排序 一、top…...

PHP数组的功能及实现案例
目录 前言 一、什么是数组 二、创建关联数组 1.1运行流程(思想) 1.2代码段 1.3运行截图 三、创建索引数组 1.1运行流程(思想) 1.2代码段 1.3运行截图 前言 1.若有选择,可实现在目录里进行快速查找ÿ…...

Cesium实践(4)——空间数据加载
文章目录 前言几何形体点线面体 标签文字图标 几何文件GeoJsonKMLCZML 三维模型总结 前言 本文介绍Cesium如何加载空间数据,空间数据即明确定义在三维空间中的数据,空间数据包括以下几类:1、几何形体(点、线、面、体)…...

FreeRTOS(三)——应用开发(一)
文章目录 0x01 FreeRTOS文件夹FreeRTOSConfig.h文件内容上面定义的宏决定FreeRTOS.h文件中的定义0x02 创建任务创建静态任务过程configSUPPORT_STATIC_ALLOCATION创建动态任务过程configSUPPORT_DYNAMIC_ALLOCATION 0x03 FreeRTOS启动流程启动流程概述 0x04 任务管理任务调度器…...

Cilium动手实验室: 精通之旅---20.Isovalent Enterprise for Cilium: Zero Trust Visibility
Cilium动手实验室: 精通之旅---20.Isovalent Enterprise for Cilium: Zero Trust Visibility 1. 实验室环境1.1 实验室环境1.2 小测试 2. The Endor System2.1 部署应用2.2 检查现有策略 3. Cilium 策略实体3.1 创建 allow-all 网络策略3.2 在 Hubble CLI 中验证网络策略源3.3 …...

基于Docker Compose部署Java微服务项目
一. 创建根项目 根项目(父项目)主要用于依赖管理 一些需要注意的点: 打包方式需要为 pom<modules>里需要注册子模块不要引入maven的打包插件,否则打包时会出问题 <?xml version"1.0" encoding"UTF-8…...

自然语言处理——循环神经网络
自然语言处理——循环神经网络 循环神经网络应用到基于机器学习的自然语言处理任务序列到类别同步的序列到序列模式异步的序列到序列模式 参数学习和长程依赖问题基于门控的循环神经网络门控循环单元(GRU)长短期记忆神经网络(LSTM)…...

Mac下Android Studio扫描根目录卡死问题记录
环境信息 操作系统: macOS 15.5 (Apple M2芯片)Android Studio版本: Meerkat Feature Drop | 2024.3.2 Patch 1 (Build #AI-243.26053.27.2432.13536105, 2025年5月22日构建) 问题现象 在项目开发过程中,提示一个依赖外部头文件的cpp源文件需要同步,点…...
基于Java Swing的电子通讯录设计与实现:附系统托盘功能代码详解
JAVASQL电子通讯录带系统托盘 一、系统概述 本电子通讯录系统采用Java Swing开发桌面应用,结合SQLite数据库实现联系人管理功能,并集成系统托盘功能提升用户体验。系统支持联系人的增删改查、分组管理、搜索过滤等功能,同时可以最小化到系统…...

技术栈RabbitMq的介绍和使用
目录 1. 什么是消息队列?2. 消息队列的优点3. RabbitMQ 消息队列概述4. RabbitMQ 安装5. Exchange 四种类型5.1 direct 精准匹配5.2 fanout 广播5.3 topic 正则匹配 6. RabbitMQ 队列模式6.1 简单队列模式6.2 工作队列模式6.3 发布/订阅模式6.4 路由模式6.5 主题模式…...

【电力电子】基于STM32F103C8T6单片机双极性SPWM逆变(硬件篇)
本项目是基于 STM32F103C8T6 微控制器的 SPWM(正弦脉宽调制)电源模块,能够生成可调频率和幅值的正弦波交流电源输出。该项目适用于逆变器、UPS电源、变频器等应用场景。 供电电源 输入电压采集 上图为本设计的电源电路,图中 D1 为二极管, 其目的是防止正负极电源反接, …...
多模态图像修复系统:基于深度学习的图片修复实现
多模态图像修复系统:基于深度学习的图片修复实现 1. 系统概述 本系统使用多模态大模型(Stable Diffusion Inpainting)实现图像修复功能,结合文本描述和图片输入,对指定区域进行内容修复。系统包含完整的数据处理、模型训练、推理部署流程。 import torch import numpy …...
tomcat指定使用的jdk版本
说明 有时候需要对tomcat配置指定的jdk版本号,此时,我们可以通过以下方式进行配置 设置方式 找到tomcat的bin目录中的setclasspath.bat。如果是linux系统则是setclasspath.sh set JAVA_HOMEC:\Program Files\Java\jdk8 set JRE_HOMEC:\Program Files…...

CVPR2025重磅突破:AnomalyAny框架实现单样本生成逼真异常数据,破解视觉检测瓶颈!
本文介绍了一种名为AnomalyAny的创新框架,该方法利用Stable Diffusion的强大生成能力,仅需单个正常样本和文本描述,即可生成逼真且多样化的异常样本,有效解决了视觉异常检测中异常样本稀缺的难题,为工业质检、医疗影像…...