zhanxuechao
作者zhanxuechao·2022-10-10 15:42
咨询专家·数字研究院

Linux系统是否被植入木马的排查流程梳理

字数 2526阅读 1350评论 0赞 0

1 用户登录情况统计

查看系统登录日志:last

查看系统登录失败日志:lastb

查看系统当前登录用户:who

查看系统安全日志:cat /var/log/secure

2 查看是否有异常的系统用户

cat /etc/passwd

查看是否产生了新用户,UID和GID为0的用户:grep "0" /etc/passwd

查看passwd的修改时间,判断是否在不知的情况下添加用户:ls -l /etc/passwd

查看是否存在特权用户 awk -F: '$3==0 {print $1}' /etc/passwd

查看是否存在空口令帐户 awk -F: 'length($2)==0 {print $1}' /etc/shadow

3 检查异常进程 ps -ef命令查看进程,注意UID为0的进程

查看该进程所打开的端口和文件 lsof -p pid命令查看

检查隐藏进程

[ root@localhost ~]# ps -ef | awk '{print }' | sort -n | uniq >1

[ root@localhost ~]# ls /porc |sort -n|uniq >2

[ root@localhost ~]# diff 1 2

4 检查异常系统文件

find / -uid 0 -perm -4000 -print

find / -size +10000k -print

find / -name "..." -print

find / -name "…" -print

find / -name ".." -print

find / -name "." -print

find / -name " " -print

5 检查系统文件完整性

rpm -qf /bin/ls

rpm -qf /bin/login

md5sum -b 文件名(可与相同版本的正常机器进行比较,判断是否被篡改过文件)

md5sum -t 文件名(可与相同版本的正常机器进行比较,判断是否被篡改过文件)

6 检查RPM的完整性

rpm -Va #注意相关的/sbin,/bin,/usr/sbin,/usr/bin

输出格式说明:

S – File size differs

M – Mode differs (permissions)

5 – MD5 sum differs

D – Device number mismatch

L – readLink path mismatch

U – user ownership differs

G – group ownership differs

T – modification time differs

7 检查网络

ip link | grep PROMISC (正常网卡不该在promisc模式,可能存在sniffer)

lsof -i

netstat -nap(查看不正常打开的TCP/UDP端口)

arp -a

8 检查系统计划任务

crontab -u root -l

cat /etc/crontab

ls /etc/cron.*

9 检查系统后门

cat /etc/crontab

ls /var/spool/cron/

cat /etc/rc.d/rc.local

ls /etc/rc.d

ls /etc/rc3.d

10 检查系统服务

chkconfig --list

rpcinfo -p(查看RPC服务)

11 检查rootkit

rkhunter -c

chkrootkit -q

12 导出现场关键信息:

1 查看用户,看是否有可以账号

cat /etc/passwd > /sbin/ifconfig -a|grep inet|grep -v 127.0.0.1|grep -v inet6|awk '{print $2}'|tr -d "addr:"_etc_passwd.txt

2 查看tcp连接,看是否有可疑连接

netstat -atpn|grep "ESTABLISHED">/sbin/ifconfig -a|grep inet|grep -v 127.0.0.1|grep -v inet6|awk '{print $2}'|tr -d "addr:"_net_established.txt

3 查看history命令,看是否有可疑命令执行

cat ~/.bash_history >/sbin/ifconfig -a|grep inet|grep -v 127.0.0.1|grep -v inet6|awk '{print $2}'|tr -d "addr:"_his.txt

4 查看登录信息,看是否有可疑账号登录

last > /sbin/ifconfig -a|grep inet|grep -v 127.0.0.1|grep -v inet6|awk '{print $2}'|tr -d "addr:"_last.txt

5 查看进程信息,看是否有可疑进程

ps -ef > /sbin/ifconfig -a|grep inet|grep -v 127.0.0.1|grep -v inet6|awk '{print $2}'|tr -d "addr:"_ps.txt

参考: https://www.cnblogs.com/kevingrace/p/5895116.html

禁用/锁定用户登录系统的方法

1 usermod -L username 锁定用户

usermod -U username 解锁

2 passwd -l username 锁定用户

passwd -u username 解锁

3 修改用户的shell类型为/sbin/nologin(/etc/passwd文件里修改)

4 在/etc/下创建空文件nologin,这样就锁定了除root之外的全部用户

看到最后,在来一个调皮的前置提醒:

服务器在怀疑入侵之后,所做的一切操作,一定要留有记录,不管是通过堡垒机亦或是通过ssh工具,留下处理的记录,以备后查。

如果觉得我的文章对您有用,请点赞。您的支持将鼓励我继续创作!

0

添加新评论0 条评论

Ctrl+Enter 发表

本文隶属于专栏

最佳实践
不同的领域,都有先行者,实践者,用他们的最佳实践来加速更多企业的建设项目落地。

作者其他文章

相关文章

相关问题

相关资料

X社区推广