系统基本信息
- 对于Linux系统的主机排查,可以使用相关命令查看CPU(中央处理器)信息、操作系统信息及模块信息等,初步了解主机情况。
CPU信息
- 在命令行中输入【lscpu】命令,可查看CPU相关信息,包括型号、主频、内核等信息,如图所示。
操作系统信息
- 在命令行输入【uname-a】命令,可查看当前操作系统信息,如图所示。
- 或在命令行中输入【cat /proc/version】命令,可查看当前操作系统版本信息,如图所示。
模块信息
- 在命令行中输入【lsmod】命令,可查看所以已载入系统的模块信息,如图所示。
用户信息
查看系统所有用户信息
- 查看系统所以用户信息可以在命令行中输入【cat /etc/passwd】命令,后续个项由冒号隔开,分别表示“用户名” “密码加密” “用户ID” “注释” “用户主目录” “默认登录 shell” 如图所示。查询的用户信息中,最后显示 “bin/bash” 的,表示账号状态为可登录;最后显示“sbin/nologin”的,表示账号状态为不可登录。
分析超级权限账户
- 在命令行中输入【awk -F: '{if($3==0) print $1}' /etc/passwd】命令,可查询可登录账号UID为0的账号,如图所示。root是UID为0的可登录账号,如果出现其他为0的账户,就要进行重点排查。
查看可登录的账户
- 在命令行输入【cat /etc/passwd | grep '/bin/bash' 】,可查看可登录的账户,如图所示,账户root和once是可登录的账号。
查看用户错误的登录信息
- 在命令行中输入【lastb】命令,可查看显示用户错误的登录列表,包括错误的登录方法、IP地址、时间等,如图所示
查看所有用户最后的登录信息
- 在命令行输入【lastlog】命令,可查看系统中所以用户最后的登录信息,如图所示。
查看用户最近登录信息
- 在命令行输入【last】命令,可查看用户最近登录信息(数据源为/var/log/wtmp、/var/log/btmp、/var/log/utmp),如图所示。其中,wtmp存储登录成功的信息、btmp存储登录失败的信息、utmp存储当前正在登录的信息。
查看当前用户登录系统情况
- 在命令行中输入【who】命令,可查看当前用户登录系统清理,如图所示
查看空口令账户
- 在命令行中输入【awk -F: 'length($2)==0 {print $1}' /etc/shadow】命令,查看是否存在空口令的账户,如图所示,无空口令账户。
启动项
- 启动项是恶意病毒实现持久化驻留的一种常用手段,使用以下方法可以查找启动项的相关内容。
-
- 使用【cat /etc/init.d/rc.local】命令,可查看init.d文件夹下的rc.load文件内容。(开机自启程序)
- 使用【cat /etc/rc.local】命令,可查看rc.local文件内容。
- 使用【ls -alt /etc/init.d】命令,可查看init.d文件夹下所有文件的详细信息,如图所示,框内文件是某挖矿病毒的启动项。
计划任务
- 在linux系统中,任务计划也是维持权限和远程下载恶意软件的一种手段,一般有以下两种方法可以查看任务计划。
命令行查看
- 在命令行中输入【crontab -l】命令,可查看当前的任务计划,也可以指定用户进行查看,如输入命令【crontab -u root -l】,可查看root用户的任务计划,以确认是否存在后门木马程序启动相关信息。如图所示,使用命令【crontab -l 】后,查询到一个挖矿恶意程序的任务计划设置,其每隔12分钟远程下载恶意网站上的ctrontab.sh脚本文件。
查看etc目录下的任务计划文件
- 一般在Linux系统中的任务计划文件是以cron开头的,可以利用正则表达式的*赛选出etc目录下的所有以cron开头的文件,具体表达式为/etc/cron*。如,查看etc目录下的所有任务计划就可以输入【ls /etc/cron*】 命令,如图所示。
- 通常,还要如下包含任务计划的文件夹,其中,*代表文件夹下的所有文件:
-
- /etc/crontab 包含所有用户和组的cron作业
- /etc/cron.d/* 包含所有用户和组的cron作业文件,每个文件必须以.cron结尾,并且必须具有0644权限
- /etc/cron.daily/* 包含每天运行的cron作业,这些作业通常用于执行日常维护任务,如清理日志文件或更新软件包
- /etc/cron.hourly/* 包含每个小时运行的cron作业,这些作业通常用于执行更频繁的任务,如检查邮件或更新天气预报
- /etc/cron.weekly/ 包含每周运行的cron作业,通常执行较少频繁的任务,如备份文件或安全扫描
- /etc/anacrontab 包含在系统中重新启动后的cron作业,通常用于执行启动后立即运行的任务,如发送电子邮件或更新软件包