Linux应急响应技巧

目录

 

前言

1.发现进程

1.1 系统资源信息

 1.2 确认可疑进程

1.3 检查历史命令

1.4 结束恶意进程

1.5 检查是否存在持久化利用手段

2. 系统加固


前言

由于本人已及时的处理了恶意进程,故本文所有截图都只为了说明命令用法和应急思路。

在某里云上买了一台VPS做渗透,问基友要了一个cobaltsotrike4.1终极版,当时搞完渗透也没在管它,突然又要用一下80端口发现被占用了,(netstat -anpt)发现有几个恶意的"ESTABLISHED"占用着80端口,并且有大约10个的样纸。溯源IP都在国外,于是怀疑有后门,对这个CS也不熟,就只好对自己的服务器做一次应急。

1.发现进程

通尝发现主机被入侵后的操作都是检查是由那个应用导致的弱点被利用,确认恶意进程是否是后门或者病毒程序。确认该恶意进程在我们的主机上做什么?

netstat -anpt

1.1 系统资源信息

查询进程,CPU降序排序

常使用top命令

[jietewang@liliz NetworkSecurityTools]$ top
top - 10:12:24 up 26 days, 20:55,  1 user,  load average: 0.00, 0.00, 0.00
Tasks:  89 total,   2 running,  87 sleeping,   0 stopped,   0 zombie
%Cpu(s):  0.0 us,  0.3 sy,  0.0 ni, 99.7 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
MiB Mem :   1829.5 total,    542.6 free,    261.2 used,   1025.7 buff/cache
MiB Swap:      0.0 total,      0.0 free,      0.0 used.   1385.2 avail Mem 

  PID USER      PR  NI    VIRT    RES    SHR S  %CPU  %MEM     TIME+ COMMAND                                                                                                                  
29068 root      10 -10  211000  79732  15760 S   0.3   4.3  98:37.11 AliYunDun                                                                                                                
    1 root      20   0  176284  10664   8148 S   0.0   0.6   0:19.34 systemd    

上面的信息识别度还是很高的,可能在详细的进程信息的上会有一点迷糊。

 PID USER      PR  NI    VIRT    RES    SHR S  %CPU  %MEM     TIME+ COMMAND                                                                                                                  
29068 root      10 -10  211000  79732  15760 S   0.3   4.3  98:37.11 AliYunDun                                                                                                                
 从左至右

PID:进程ID

USER:进程所有者的用户名。

PR:进程的调度优先级。

NI:进程的nice值(优先级)。越小的值意味着越高的优先级。负值表示高优先级,正值表示低优先级

VIRT:进程使用的虚拟内存总量,单位kb。VIRT=SWAP+RES

RES:驻留内存大小。驻留内存是任务使用的非交换物理内存大小。进程使用的、未被换出的物理内存大小,单位kb。RES=CODE+DATA

SHR:SHR是进程使用的共享内存。共享内存大小,单位kb

S:这个是进程的状态。它有以下不同的值:

  • D - 不可中断的睡眠态。
  • R – 运行态
  • S – 睡眠态
  • T – 被跟踪或已停止
  • Z – 僵尸态

%CPU:自从上一次更新时到现在任务所使用的CPU时间百分比。

%MEM:进程使用的可用物理内存百分比。

TIME+:任务启动后到现在所使用的全部CPU时间,精确到百分之一秒。

COMMAND:运行进程所使用的命令。进程名称(命令名/命令行)

当然如果你是多核还可以使用命令mpstat -P ALL

通过上面的信息检查那些进程在占用主机的资源,如果百分比过高,那就要注意了,类似一般的VPS应该不会超过50%,除非你要搞事情,如果太吃资源并且COMMAND字段比较可疑的话那大概率是个什么病毒了。

 1.2 确认可疑进程

查看进程使用的命令行

ps -aux

一般的病毒都携带恶意的命令行,并且有域名或者IP信息,很可能是个远控。

监控主机与目标IP的通信进程:

while true; do netstat -antp | grep [ip]; done

如果是域名的话,需要我们在/etc/host文件下添加一条规则,将恶意域名重定向到一个随机的IP地址,在对其进行监控。

1.3 检查历史命令

history

1.4 结束恶意进程

在前面的过程中已经发现了恶意的进程和pid,使用以下命令行清除相关进程

ps -elf | grep [pid]

kill -9 [pid]

定位相关的进程的对应文件

ls -al /proc/[pid]

rm -f [exe_path]

1.5 检查是否存在持久化利用手段

定时任务

crontab -l

查看anacron异步定时任务:

cat /etc/anacrontab

枚举主机服务

service --status-all

检查系统文件是否被劫持

find /usr/bin/ /usr/sbin/ /bin/ /usr/local/bin/ -type f -mtime +7 | xargs ls -la

检查守护进程

lsof -p [pid]

如果是搭建了网站,建议打包源码在windows系统下使用安全工具进行后门木马扫描。

2. 系统加固

检查ssh弱口令,是否存在弱口令用户。

查询log主机登陆日志:

grep "Accepted " /var/log/secure* | awk '{print $1,$2,$3,$9,$11}'

定位有爆破的源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

爆破日志的用户名密码:
grep "Failed password" /var/log/secure|perl -e 'while($_=<>){ /for(.*?) from/; print "$1\n";}'|uniq -c|sort -nr

llast #登录或重启日志

lastb #登录失败日志 或者是

/var/log/faillog who /var/log/wtmp #登录日志 另外可以 last -f /var/run/utmp

cat /var/log/lastlog #最后的登录日志

cat /var/log/secure #安全日志

cat /var/log/cron #计划任务日志

cat ~/.bash_history | more #历史操作

grep "Failed password for root" /var/log/auth.log | awk '{print $11}' | sort | uniq -nr | more #查看root账户登录爆破尝试

grep "Accepted" /var/log/auth.log | awk '{print $11}' | sort |uniq -c | sort -nr | more #查看登录成功日志信息

strings /usr/bin/.sshd | egrep '[1-9]{1,3}.[1-9]{1,3}.' #查看sshd的信息

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值