系统运维安全之病毒自检及防护
一、前言
Linux勒索病毒(Linux ransomware)是一种最令人恶心的计算机恶意病毒,它以侵入Linux系统,捆绑文件并要求支付赎金才能释放文件为主要目的,破坏用户的数据,造成数据讹诈。Linux勒索病毒它们的存在已经很长一段时间,但安全警示显示最近活跃度是又开始增加的。感染方式也比过去更先进,它们的攻击目标也更广泛,涉及到Linux系统上的多种文件,包括文档、图片、音频和视频文件等。
常见病毒:
- “勒索病毒解密.makop”:跟通用病毒传播方式一样,它通过恶意电子邮件附件、恶意下载链接、感染的软件安装程序或漏洞利用等途径传播。用户可能会通过打开附件、点击链接、下载软件或访问被感染的网站来感染病毒。一旦用户执行了感染病毒的操作,恶意代码将被释放到受感染计算机上。恶意代码可能会使用已知或新发现的漏洞,将自己嵌入到系统中,以便在后台执行。.之后makop勒索病毒开始扫描计算机上的文件,包括文档、图片、视频等。一旦找到目标文件,它会使用强大的加密算法对这些文件进行加密,加密后通常是“.makop”或“.mop”等扩展名出现,用户是无法访问或打开它们的。
\- 常见后缀为:.360、.halo、.malox、.mallox、.maloxx、malloxx、.faust、.kat6、.l6st6r、.babyk、.DevicData-D-XXXXXXXX、.lockbit3.0、.eight、.locked、,locked1、.secret、.[MyFile@waifu.club].mkp、.milovski-V、,makop、devos、eking、.[hpsupport@privatemail.com].Elbie、.Elibe、.[hudsonL@cock.li].Devos、.[myers@cock.li].Devos、.[henderson@cock.li].Devos,[myers@airmail.cc].Devos、.[support2022@cock.li].faust、.[tsai.shen@mailfence.com].faust、faust、.777等勒索病毒
二、特征及影响
1)勒索病毒多以windows系统为主要传播对象/首次攻击目标,尤其利用RDP远程桌面最为常见,然后再利用系统漏洞横向传播。多以如下方式传播,包括:
1.通过电子邮件附件传播:病毒可以混入含有恶意程序的电子邮件附件,发送给用户,当用户点击附件时,病毒就会被下载和安装到用户的系统中。
2.通过社交媒体传播:病毒可以嵌入社交媒体中的链接,当用户点击链接时,病毒就会被下载和安装到用户的系统中。
3.通过聊天软件传播:病毒可以用聊天软件发送给用户,当用户点击链接时,病毒就会被下载和安装到用户的系统中。
2)Linux平台病毒问题主要为蠕虫病毒、勒索病毒、后门病毒,其中蠕虫病毒占比近半。在蠕虫病毒中最主要的恶意行为是恶意挖矿,恶意挖矿所需的技术和攻击成本较低,这些挖矿程序在后台静默运行,抢占系统大部分资源,造成系统卡顿,影响正常使用,为攻击者带来客观收益,这也是近年来此类蠕虫病毒泛滥的主要原因;Linux平台病毒传播主要通过漏洞和弱口令暴破进行,暴破传播主要以SSH暴破为主,漏洞传播主要以各种RCE漏洞为主。有些病毒感染进来后,会对内网进行扫描,如果发现目标存在漏洞,将对目标进行攻击,植入后门、挖矿等病毒模块,被利用的漏洞往往远程执行Shell脚本进行横向传播,且inux平台病毒通常具有一定的持久化手段来进行自我保护,给防御和查杀带来困难。
对于勒索病毒来说,Linux中,大部分勒索病毒自身并不携带任何传播手段,由攻击者进行人工渗透入侵,攻击成功后上传勒索病毒模块,通过加密和窃取数据的方式对企业或单位进行敲诈勒索,Linux勒索病毒具有以下特征:
1.它可以侵入Linux系统,捆绑文件,并要求支付赎金以释放文件。
2.它可以在Linux系统上传播,通过多种方式感染计算机:例如,通过邮件附件、社交媒体、聊天软件等。
3.它可以攻击多种文件,包括文档、图片、音频和视频文件等。
4.它会显示一个要求用户支付赎金的消息,要求用户支付比特币作为赎金才能恢复被捆绑的文件。
Linux平台病毒常见的持久化手段:
- 定时任务:这是Linux病毒常用的持久化手段,可通过向crontab目录写入定时任务的方式,来定期执行Shell脚本,往往伴随着大量外访链接,即时手动清除了,后门程序仍可自动创建定时任务。
\- 添加为Linux系统服务,在systemd/system目录下为病毒模块创建一个服务配置文件,系统启动后,病毒会自动运行;
\- 常伪装成系统进程:后门陈旭会创建了多个进程来防止主进程被关闭和防止病毒模块被删除,这类持久化进程往往难以排查;
三、防护
1)防护手段
1.安装杀毒软件:安装杀毒软件和其他安全软件,并及时更新其病毒库,以防止病毒的传播和感染。
2.及时修补漏洞,减小暴露面:及时扫描和修复系统中的安全漏洞,及时安装操作系统和应用程序的安全更新,以弥补已知漏洞,防止病毒的入侵,减少受到攻击的风险。修改默认端口如SSH、Redis、FTP、MySQL等,防止被扫描器暴破;
3.使用强密码:使用强度足够高的密码,避免系统和各个软件使用相同的密码,以防止攻击者破解密码,从而获取系统访问权限。
4.定期备份数据:定期将重要数据备份到安全的外部设备或云存储中,确保备份是自动的并进行多个版本的保存。
5.谨慎打开附件和链接:避免打开来自不明寄件人的电子邮件附件,以及点击怀疑链接,因为这可能是传播恶意软件的重要途径之一。
6.安装可信安全软件:使用强大的安全软件来检测和拦截恶意软件的入侵尝试。
7.网络安全意识教育:教育员工、家庭成员等有关网络安全的基本知识,以减少被社会工程攻击的风险。
2)防护工具
1.勒索病毒解密.makop” :通过分析病毒的加密算法,然后使用特定的密钥来解密加密的文件。它首先会搜索系统中被加密的文件,然后识别出病毒的加密算法,最后使用特定的密钥来解密文件。它可以有效抵御新出现的勒索病毒,防止新的文件被加密,支持多种文件格式,可以解密 doc,pdf,ppt,xls,mp3,jpg 等多种文件。它主要应用于被勒索病毒加密的文件解密,它能够有效恢复被加密的文件,让用户可以重新访问这些文件。
2、专业查杀软件:windows可选火绒,比如:HRkill专杀工具;PCHunter、
3、Linux杀毒:Clamav、GScan(),火绒安全企业版linux终端产品,Rootkit(木马后门工具)检查,使用chkrootkit,
- Gscan:Gscan是一款使用Python3基于web渗透测试开发的信息收集扫描器,其融合了大部分的信息收集能力于一体。如常见的主机探活、端口扫描、目录扫描、邮箱收集等,同时还提供接口用于拓展其漏洞扫描能力。Gscan旨在为安全应急响应人员对 Linux 系统排查时提供便利,实现主机侧 Checklist(检查表) 的自动全面化检测,根据检测结果自动数据聚合,进行黑客攻击路径溯源。目前程序只针对Centos进行开发测试,其他系统并未做兼容性,扫描结果仅做参考;
#Gcan安装
yum install git python3 python3-devel gcc-c++ gcc make -y
git clone https://github.com/grayddq/GScan.git
cd GScan
python3 GScan.py -h #帮助
#使用默认安全扫描
python3 GScan.py #会生成 ./GScan/log/gscan.log 文件
#完全扫描
python3 GScan.py --full#chkriotkit安装
tar zxvf chkrootkit.tar.gz
cd chkrootkit-*
make sense
cp -r chkrootkit-* /usr/local/chkrootkit/usr/local/chkrootkit/chkrootkit -h #帮助
#注:chkrootkit在检查rootkit的过程中使用了部分系统命令,因此,如果服务器被黑客入侵,那么依赖的系统命令可能也已经被入侵者替换,此时chkrootkit的检测结果将变得完全不可信。为了避免chkrootkit的这个问题,可以在服务器对外开放前,事先将chkrootkit使用的系统命令进行备份,在需要的时候使用备份的原始系统命令让chkrootkit对rootkit进行检测。
#chkrootkit依赖命令
mkdir /usr/share/.commands #创建一个存储这些命令的隐藏目录
cp -pr `which --skip-alias awk cut echo find egrep id head ls netstat ps strings sed uname` /usr/share/.commands/usr/local/chkrootkit/chkrootkit -p /usr/share/.commands/ #参数-p,指定chkrootkit检测时使用系统命令的目录,chkrootkit指定使用原始命令扫描检测
四、附录:其他安全
4.1、其他安全风险
常见危害:暴力破解,漏洞利用,流量攻击,木马控制(Webshell,PC木马等),病毒感染(挖矿,蠕 虫,勒索等)。
//分析日志,统计确认服务器遭受多少次暴力破解,有的记录在authpriv日志里grep -o "Failed password" /var/log/secure|uniq -c//输出登录爆破的第一行和最后一行,确认爆破时间范围grep "Failed password" /var/log/secure|head -1
grep "Failed password" /var/log/secure|tail -1//定位有哪些 IP 在尝试爆破grep "Failed password" /var/log/secure|grep -E -o "(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)"|uniq -c | sort -nr//爆破用户名字典都有哪些grep "Failed password" /var/log/secure|perl -e 'while($_=<>){ /for(.*?) from/; print "$1\n";}'|uniq -c|sort -nr//登录成功的日期、用户名、IP有哪些grep "Accepted " /var/log/secure | awk '{print $1,$2,$3,$9,$11}'
grep "Accepted " /var/log/secure | awk '{print $11}' | sort | uniq -c | sort -nr | more
相关文章:

系统运维安全之病毒自检及防护
一、前言 Linux勒索病毒(Linux ransomware)是一种最令人恶心的计算机恶意病毒,它以侵入Linux系统,捆绑文件并要求支付赎金才能释放文件为主要目的,破坏用户的数据,造成数据讹诈。Linux勒索病毒它们的存在已…...

Mabatis处理异常屏蔽SQL返回前端全局异常捕获处理
文章目录 Mabatis处理异常屏蔽SQL返回前端全局异常捕获处理结论1 java异常体系2 Spring框架异常处理3 定位Spring框架转化为哪种unchecked异常3.1 捕获RuntimeException定位Spring框架转化抛出的异常类3.2 进一步查看包名判断3.3 识别MyBatisSystemException下级实现3.3 识别My…...

黑豹程序员-java发邮件,发送内容支持html,带多附件的案例
介绍 发邮件mail是常见的软件功能,下面利于spring和java的mail库实现发送内容支持html,带多附件的案例 开启SMTP邮件发送协议 谁提供的SMTP邮件服务,就找谁开启。QQ邮箱类似。 依赖 <!--Java MAil 发送邮件API--><dependency&g…...
[LeetCode] 15. 三数之和
15. 三数之和 给你一个整数数组 nums ,判断是否存在三元组 [nums[i], nums[j], nums[k]] 满足 i ! j、i ! k 且 j ! k ,同时还满足 nums[i] nums[j] nums[k] 0 。请 你返回所有和为 0 且不重复的三元组。 **注意:**答案中不可以包含重复…...

Android Chips(标签)
目录 一、流式布局标签发展历程 二、类型及使用 2.1 Chip.Action(默认值) 2.2 Chip.Entry 2.3 Chip.Filter 2.4 Chip.Choice 三、常用事件 3.1 OnClickListener 3.2 OnCheckedChangeListener 3.3 OnCloseIconClickListener 四、ChipGroup 4.1 ChipGroup Chip.Choi…...

飞行汽车开发原理(上)
前言 小节的安排是由浅入深,要按顺序读;有电路知识基础的同学可跳到“计算机电路”一节开始。因为知识点之间有网状依赖,没办法按分类来讲。 为了避免过于深入、越讲越懵,很多描述仅为方便理解、不求严谨。 半导体特性 导体&a…...

22、pytest多个参数化的组合
官方实例 # content of test_multi_parametrie.py import pytestpytest.mark.parametrize("x",[0,1]) pytest.mark.parametrize("y",[2,3]) def test_foo(x,y):print("{}-{}".format(x,y))pass解读与实操 要获得多个参数化参数的所有组合&…...

【网络奇缘】- 如何自己动手做一个五类|以太网|RJ45|网络电缆
🌈个人主页: Aileen_0v0🔥系列专栏: 一见倾心,再见倾城 --- 计算机网络~💫个人格言:"没有罗马,那就自己创造罗马~" 本篇文章关于计算机网络的动手小实验---如何自己动手做一个网线, 也是为后面的物理层学习进…...

【从零开始学习JVM | 第三篇】类的生命周期(高频面试)
前言: 在Java编程中,类的生命周期是指类从被加载到内存中开始,到被卸载出内存为止的整个过程。了解类的生命周期对于理解Java程序的运行机制以及性能优化非常重要。 在本文中,我们将深入探讨类的生命周期,从类加载到…...

详解前后端交互时PO,DTO,VO模型类的应用场景
前后端交互时的数据传输模型 前后端交互流程 前后端交互的流程: 前端与后端开发人员之间主要依据接口进行开发 前端通过Http协议请求后端服务提供的接口后端服务的控制层Controller接收前端的请求Contorller层调用Service层进行业务处理Service层调用Dao持久层对数据持久化 …...
力扣295. 数据流的中位数
优先队列 思路: 中位数是排序中间的数值:S1.M.S2可以使用两个优先队列来存放两边的数值,总是使得左侧的堆顶是最大的,右侧的堆顶是最小的,即使用大顶堆存放 S1,使用小顶堆存放S2,使得两个队列的…...
英语二笔记
完型填空 20题/0.5分 总分10, 至少拿8分 阅读理解A 20题/2分 总分40 至少拿24分 阅读理解B 5题/2分 总分10 至少拿6分 短文翻译 1题/15分 …...
【OpenSSH升级】升级后证书认证登录突然失效
上一篇“【OpenSSH升级】无论密码输入正确与否总是登录失败(error: Could not get shadow information for root)”总结了CentOS7上的openssh从7.4升级到9.4之后,密码认证失败问题,这里再总结一下证书认证失效问题。 大多数情况下…...

pytest +uiautomator2+weditor app自动化从零开始
目录结构1.0 把设备连接单独移出去了 模块操作代码,有一些流程操作和断言方法 from devices import dv from time import sleep import random from tool.jt import capture_screenshotdef initialization(func):def wrapper():sleep(1)dv.app_stop(com.visteon.…...

【计算机网络笔记】物理层——信道与信道容量
系列文章目录 什么是计算机网络? 什么是网络协议? 计算机网络的结构 数据交换之电路交换 数据交换之报文交换和分组交换 分组交换 vs 电路交换 计算机网络性能(1)——速率、带宽、延迟 计算机网络性能(2)…...

深度学习火车票识别系统 计算机竞赛
文章目录 0 前言1 课题意义课题难点: 2 实现方法2.1 图像预处理2.2 字符分割2.3 字符识别部分实现代码 3 实现效果4 最后 0 前言 🔥 优质竞赛项目系列,今天要分享的是 🚩 图像识别 火车票识别系统 该项目较为新颖,适…...
C++EasyX之井字棋
视频链接 井字棋 用EasyX和C实现井字棋小游戏 源码及注释 #include<graphics.h>char board_data[3][3] {{-,-,-},{-,-,-},{-,-,-}, };char current_piece O;//检测指定棋子的玩家是否获胜 bool CheckWin(char c) {// 检查每一行for (int i 0; i < 3; i){if (bo…...

12.5_黑马数据结构与算法Java
目录 001 二分查找 算法描述 002 二分查找 算法实现 003 二分查找 问题1 循环条件 004 二分查找 问题2 中间索引 thinking:反码补码原码? thinking:二进制转十进制? thinking:无符号右移? 005 二分…...

【PID学习笔记 5 】控制系统的性能指标之一
写在前面 PID在实际工程中最重要的工作就是调参,那么首先就要了解控制系统的性能指标。上文最后简要介绍了控制系统的基本要求,本文开始将系统学习控制系统的性能指标,内容比较多,初步计划是分三节来讲解。本文重点介绍性能指标的…...
HarmonyOS学习--TypeScript语言学习(三)
本章目录如下 一、条件语句 二、迭代器 三、循环 四、函数 五、类 一、条件语句 条件语句用于基于不同的条件来执行不同的动作。TypeScript 条件语句是通过一条或多条语句的执行结果(True 或 False)来决定执行的代码块。 在 TypeScript 中&#x…...

盘古信息PCB行业解决方案:以全域场景重构,激活智造新未来
一、破局:PCB行业的时代之问 在数字经济蓬勃发展的浪潮中,PCB(印制电路板)作为 “电子产品之母”,其重要性愈发凸显。随着 5G、人工智能等新兴技术的加速渗透,PCB行业面临着前所未有的挑战与机遇。产品迭代…...

shell脚本--常见案例
1、自动备份文件或目录 2、批量重命名文件 3、查找并删除指定名称的文件: 4、批量删除文件 5、查找并替换文件内容 6、批量创建文件 7、创建文件夹并移动文件 8、在文件夹中查找文件...

2025盘古石杯决赛【手机取证】
前言 第三届盘古石杯国际电子数据取证大赛决赛 最后一题没有解出来,实在找不到,希望有大佬教一下我。 还有就会议时间,我感觉不是图片时间,因为在电脑看到是其他时间用老会议系统开的会。 手机取证 1、分析鸿蒙手机检材&#x…...
Typeerror: cannot read properties of undefined (reading ‘XXX‘)
最近需要在离线机器上运行软件,所以得把软件用docker打包起来,大部分功能都没问题,出了一个奇怪的事情。同样的代码,在本机上用vscode可以运行起来,但是打包之后在docker里出现了问题。使用的是dialog组件,…...

C++使用 new 来创建动态数组
问题: 不能使用变量定义数组大小 原因: 这是因为数组在内存中是连续存储的,编译器需要在编译阶段就确定数组的大小,以便正确地分配内存空间。如果允许使用变量来定义数组的大小,那么编译器就无法在编译时确定数组的大…...

Mysql中select查询语句的执行过程
目录 1、介绍 1.1、组件介绍 1.2、Sql执行顺序 2、执行流程 2.1. 连接与认证 2.2. 查询缓存 2.3. 语法解析(Parser) 2.4、执行sql 1. 预处理(Preprocessor) 2. 查询优化器(Optimizer) 3. 执行器…...

springboot整合VUE之在线教育管理系统简介
可以学习到的技能 学会常用技术栈的使用 独立开发项目 学会前端的开发流程 学会后端的开发流程 学会数据库的设计 学会前后端接口调用方式 学会多模块之间的关联 学会数据的处理 适用人群 在校学生,小白用户,想学习知识的 有点基础,想要通过项…...

AirSim/Cosys-AirSim 游戏开发(四)外部固定位置监控相机
这个博客介绍了如何通过 settings.json 文件添加一个无人机外的 固定位置监控相机,因为在使用过程中发现 Airsim 对外部监控相机的描述模糊,而 Cosys-Airsim 在官方文档中没有提供外部监控相机设置,最后在源码示例中找到了,所以感…...
NPOI Excel用OLE对象的形式插入文件附件以及插入图片
static void Main(string[] args) {XlsWithObjData();Console.WriteLine("输出完成"); }static void XlsWithObjData() {// 创建工作簿和单元格,只有HSSFWorkbook,XSSFWorkbook不可以HSSFWorkbook workbook new HSSFWorkbook();HSSFSheet sheet (HSSFSheet)workboo…...
Python Einops库:深度学习中的张量操作革命
Einops(爱因斯坦操作库)就像给张量操作戴上了一副"语义眼镜"——让你用人类能理解的方式告诉计算机如何操作多维数组。这个基于爱因斯坦求和约定的库,用类似自然语言的表达式替代了晦涩的API调用,彻底改变了深度学习工程…...