【讲清楚,说明白!】 Linux系统应急响应流程

目录:
(一)概述
(二)识别现象
(三)闭环兜底
(四)打上常见Web漏洞补丁



(一)概述
(1.1)Linux环境下处理应急响应事件往往更加棘手,因为相比于Windows系统,Linux没有像procexp这样的应急响应利器,也没有统一的应急响应处理流程。所以我们需要对流程进行梳理,系统化地处理Linux环境下的应急事件。
(1.2)处理Linux应急响应主要分为4个环节:识别现象->清除病毒->闭环兜底->系统加固
(1.3)首先从用户场景的主机异常现象触发,先识别出病毒的可疑现象。然后定位到具体的病毒进程以及病毒文件,进行清除。完成前2步还不够,病毒一般会通过一些自启动项及守护程序进行重复感染,所以我们要执行闭环兜底确保病毒不再被创建。将主机上的病毒项清除干净后,最后就是进行系统加固,防止病毒从Web再次invade进来。这4个环节,构成一个完整的应急响应处理流程。



(二)识别现象
(2.1)第一个环节要求我们通过系统运行状态、安全设备告警,发现主机异常现象,以及确认病毒的可疑行为。通过top命令枚举进程,使用CPU降序排序,如果CPU占用率超过70%且名字比较可疑的进程,大概率就是挖矿病毒了。
# top---枚举进程,使用CPU降序排序

(2.2)使用ps命令枚举进程,发现是否存在可疑进程,病毒一般都是携带可疑的命令行,当你发现命令行中带有url等奇怪的字符串时,就要注意了,它很可能是个病毒downloader

(2.3)注意安全网关有无报警
(2.3.1)从安全网关报警中识别出threaten是最直接,但确认主机已经感染了病毒只是第一步,接下来得定位,具体是哪个进程在与其通信。
(2.3.2)监控与目标IP通信的进程
# while true; do netstat -antp | grep 192.168.26.51; done

(2.3.3)有时安全网关检测到不全是恶意IP,还有可能是个域名,这种情况下,域名对应的IP是变化的,我们不能直接用上述方法进行监控。我们可以现在/etc/hosts文件中添加一条规则,将恶意域名重定向到一个随机的IP地址,然后对随机IP地址进行监控从而得到与之通信的恶意进程了。

(2.4)注意有无可疑历史命令
遍历主机历史命令,查找有无恶意命令

(2.5)清除病毒
从第1个环节追溯到进程信息,将会帮助我们定位到病毒进程和病毒文件,实现清除。
(2.6)结束病毒进程
清除可疑进程的进程链
# ps -elf | grep 1861---查询出可疑的进程
# kill -9 1861---将可疑进程杀死结束

(2.7)删除病毒文件
# ls -al /proc/2209/exe---查询2209进程下的exe文件的路径
# rm -rf /usr/libexec/gvfs-udisks2-volume-monitor---将链接文件指向的实际文件删除



(三)闭环兜底
Linux下的病毒持久化驻留方式相比于Windows较少,主要有以下4种方式。
(3.1)检查是否存在可疑定时任务
枚举定时任务:# crontab -l(图8-1),同时查看anacron异步定时任务:# cat /etc/anacrontab(图8-2)


(3.2)检查是否存在可疑服务
(3.2.1)枚举主机所有服务,查看是否存在恶意服务
# service --status-all---枚举主机所有服务
(3.2.2)检查系统文件是否被劫持,枚举系统文件夹的文件,按修改事件排序查看7天内被修改过的文件:
# find /usr/bin/ /usr/sbin/ /bin/ /usr/local/bin/ -type f -mtime +7 | xargs ls -la |less

(3.2.3)检查是否存在病毒守护进程,监控守护进程的行为:
# lsof -p 13570---查询PID为13570的进程的被哪些文件打开了
# strace -tt -T -etrace=all -p 658---查询PID为658的进程,其中-tt表示在输出中的每一行前加上时间信息(微秒级),-T表示显示每一调用所耗的时间,-etrace=all表示跟踪除了all以外的其他调用


(3.3)扫描是否存在恶意驱动
(3.3.1)扫描系统驱动:# lsmod

(3.3.2)安装chkrootkit进行扫描,这是一款在Linux系统下查找并检测rootkit后门的工具。(【一点一滴,成材之基!】Linux后门Trojan Horse检测工具)
(3.3.3)安装rkhunter进行扫描,这是一款专业的监测系统是否感染rootkit的工具,它通过执行一系列的脚本来确认服务器是否已经感染rootkit。(【一点一滴,成材之基!】Linux后门Trojan Horse检测工具)
(3.3.4)最后一个环节往往是大家比较容易遗忘的,Linux平台下90%的病毒是通过网络传播感染的,所以,你的主机之所以会感染病毒,大部分原因也是因为Web安全防护不够,需要检查一下:修改SSH弱密码。
(3.3.5)查询log主机登录日志:
# grep "Accepted" /var/log/secure* | awk ‘{print $1,$2,$3,$9,$11}‘

(3.3.6)定位有爆破的源IP(brute-force attack),或参考【我的Linux,我做主!】通配符和正则表达式深层解析中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
(3.3.7)爆破日志的用户名和密码:
# grep "Failed password" /var/log/secure|perl -e ‘while($_=<>){ /for(.*?) from/; print "$1\n";}‘|uniq -c|sort -nr
(3.3.8)SSH爆破是Linux病毒最常用的传播手段,若存在弱密码的主机,很容易被其他感染主机SSH爆破成功,从而再次感染病毒。
(3.4)添加命令审计
为历史的命令增加登录的IP地址、执行命令时间等信息
(3.4.1)修改/etc/profile文件,默认让系统保存1万条命令:
# sed -i ‘s/^HISTSIZE=1000/HISTSIZE=10000/g‘ /etc/profile


(3.4.2)在/etc/profile文件尾部添加如下行数的配置信息。

(3.4.3)让修改的配置生效,查看history命令的最后10行内容,已经产生了时间、登陆IP等信息
# source /etc/profile



(四)打上常见Web漏洞补丁
1.structs2系列RCE漏洞
2.thinkphp5.XRCE漏洞
3.Redis未授权访问漏洞
4.ConfluenceRCE漏洞(CVE_2019_3396)
5.DrupalRCE漏洞(CVE-2018-7600)
6.ThinkPHPRCE漏洞(CVE-2019-9082)
Linux平台下的恶意软件threaten以僵尸网络蠕虫和挖矿病毒为主,由于Linux大多作为服务器暴露在公网,且Web应用的漏洞层出不穷,所以很容易被大范围attack,常见的病毒:DDG、systemdMiner、BillGates、watchdogs、XorDDos,在很多Linux上都有,大家要养成不使用弱密码,勤打补丁的好习惯。

—————— 本文至此结束,感谢阅读 ——————

原文地址:https://blog.51cto.com/13613726/2461826

时间: 2024-10-13 08:12:13

【讲清楚,说明白!】 Linux系统应急响应流程的相关文章

Linux系统应急响应

零.绪论事件应急是指在系统出现问题的第一时间进行错误排查.入侵过程还原取证,入侵源追踪等紧急处理.知识点1.常见的分析入手点(1)文件分析(2)进程分析(3)网络分析(4)命令分析(5)日志分析一般而言:命令分析中的一部分也是文件分析的一部分,也就是说命令分析中有一点是对命令源文件进行hash校验防止替换. 一.文件分析:知识点1.敏感目录(1)/tmp 临时文件(2)/usr/bin , /usr/sbin , /bin 命令所在目录(3)/etc/init.d 开机启动目录知识点2.敏感文件

服务器安全应急响应流程

参考: https://mp.weixin.qq.com/s?__biz=MzI4NTA1MDEwNg==&mid=2650759483&idx=1&sn=c98277d4f9eb252409a177756b222b8a&chksm=f3f9d4aec48e5db85e07e998cc7052eeac3165f549e4f43dc0fa0789c3d3da006dac3c4135bb&scene=0#rd 1. 服务器安全应急响应流程 服务器安全应急响应流程分为发现

0923------APUE 学习笔记----------Linux系统的启动流程

前言: 前天在看APUE的时候突然想到了这个问题,于是给自己科普一下Linux系统的启动流程. 1.加载BIOS 接通电源后,计算机首先加载BIOS(即Basic Input-Output System,该程序被固化在主板上的一个ROM芯片中,包括最基本的输入输出程序.系统设置程序.开机硬件自检程序和系统自举程序等),进行硬件自检(即Power On Self Test)检查计算机硬件是否满足运行的基本条件(对于非严重故障,会发出一些声音,严重故障则会直接退出),硬件自检完成以后,BIOS根据C

安全等级划分依据与应急响应流程

查看等保要求及相关安全建设视频(郑歆炜cnhawk:企业安全那些事 – 应急响应http://open.freebuf.com/live/181.html)后整理,不成熟处还望指正. 安全等级划分:(是在平时对网络环境的评估) 1,  依据不同业务系统受到不同侵害时将造成的损失(即业务系统的重要性)见表一 2,  进行基于物理安全,网络安全,主机安全,应用安全,数据安全五方面评估(即在等保的基础上根据实际情况作相应修改) 见表二 综合以上两点,对整个网络进行安全评估 表一 业务系统侵害等级 受侵

一些关于Linux入侵应急响应的碎碎念

近半年做了很多应急响应项目,针对黑客入侵.但疲于没有时间来总结一些常用的东西,寄希望用这篇博文分享一些安全工程师在处理应急响应时常见的套路,因为方面众多可能有些杂碎. 个人认为入侵响应的核心无外乎四个字,顺藤摸瓜.我们常常需要找到比较关键的信息后通过一些指令查询或者分析日志,逐步分析黑客的具体步骤. 入侵后需要被关注的Linux系统日志 var/log/cron 记录crontab命令是否被正确的执行,一般会被黑客删除 var/log/lastlog 记录登录的用户,可以使用命令lastlog查

Linux系统开机启动流程介绍

一.linux系统进程启动流程图: 二.简单概括描述linux系统从开机到登陆界面的启动过程 1.开机BIOS自检 2.MBR引导 3.grub引导菜单 4.加载内核 5.启动init进程 6.读取inittab文件执行rc.sysinit.rc等脚本 7.启动mingetty进入系统登录界面 三.详细剖析linux系统启动过程 1.POST开机自检 电脑主机打开电源的时候随后会听到滴的一声响系统启动开始了开机自检POST-power on self Test自检开始这个过程中主要是检测计算机硬

LINUX系统开机启动流程全解

1,linux系统6.0系列和7.0系列系统开机启动流程:简述:1,开机BIOS自检2,MBR引导(磁盘上的一个引导扇区512K)3,grub引导菜单(可进入单用户模式或者救援模式)4,加载Kernel内核5,启动init进程(6系列的第一个进程7系列的第一个进程是systemd6,读取initab启动文件执行rc.sysinit等开机启动脚本文件7,启动mingetty,启动系统登录界面 原文地址:https://blog.51cto.com/13858002/2429553

[转] 浅谈Linux系统的启动流程

原文:http://blog.csdn.net/justdb/article/details/9621271 版权声明:本文为博主原创文章. Linux系统的启动时通过读取不同的配置文件,执行相应的Shell脚本完成的.当然本文只是简单的从文件的角度分析,更深层次的本文没涉及. 主要读取了以下文件: 1 /boot/grub/grub.conf 2 /etc/inittab 3 /etc/rc5.d(rc.d) 0-99 Seq 4 /etc/passwd (Login,input userna

Linux系统的启动流程以及做个小小的Linux

内核的作用     进程管理:进程间切换     内存管理:内存空间分割为内核空间和用户空间     IO管理:对底层硬件的使用必须由内来实现,不能由用户空间进程来实现     文件系统管理     驱动程序管理     安全管理:包括netfilter模块和selinux模块等 内核的设计模式     单内核:模块都是集成在内核内部(Linux是单内核)     微内核:模块都是独立的,随用随加载(Windows是微内核)     Ps:1.linux是单内核,但是广泛采用了微内核的设计思想