应急响应--Linux入侵检查思路及防御
ahcoder 2025-04-26 16:21 5 浏览
1、检查系统用户
命令 | 说明 |
cat /etc/passwd | 查看是否有异常的系统用户 |
/etc/passwd 是一个文本文件,其中包含了登录 Linux 系统所必需的每个用户的信息。它保存用户的有用信息。
如<用户名:密码:用户 ID:群组 ID:用户 ID 信息:用户的家目录:Shell
命令 | 说明 |
cat /etc/shadow | 存储 Linux 系统中用户的密码信息,又称为“影子文件” |
早期的 UNIX 密码放在 /etc/passwd 文件中,由于该文件允许所有用户读取,易导致用户密码泄露,因此将密码从 /etc/passwd 文件中分离出来,并单独放到了此文件中。/etc/shadow 文件只有 root 用户拥有读权限,保证了用户密码的安全性。
如:用户名:加密密码:密码最后一次修改日期:两次密码的修改时间间隔:密码有效期:密码修改到期到的警告天数:密码过期之后的宽限天数:账号失效时间:保留
哈希密码可以使用john进行破解
入侵排查其他常用命令
命令 说明 grep "0" /etc/passwd 查看是否产生了新用户,UID和GID为0的用户 ls -l /etc/passwd 查看passwd的修改时间,判断是否在不知的情况下添加用户 awk -F: '$3==0 {print $1}' /etc/passwd 查看是否存在特权用户 awk -F: 'length($2)==0 {print $1}' /etc/shadow 查看是否存在空口令帐户 more /etc/sudoers | grep -v "^#|^#34; | grep "ALL=(ALL)" 除root帐号外,其他帐号是否存在sudo权限 usermod -L user 禁用帐号,帐号无法登录,/etc/shadow第二栏为!开头 userdel user 删除user用户 userdel -r user 将删除user用户,并且将/home目录下的user目录一并删除
2、查看历史命令
linux系统默认会记录用户输入的命令,保存到一个.bash_history隐藏文件中,ls -al命令可以查看隐藏文件
history命令可以查看root用户的历史命令
注意wget(有可能是下载木马文件),ssh(可能是异常连接内网主机),tar zip(数据打包),系统配置命令可能是修改系统相关配置
如:登录ssh
在/home各账户目录下,cat /用户/.bash_history也可以查看普通用户的历史命令。
例如,查看用户 john 的历史记录:(换成自己的家目录)
cat /home/john/.bash_history
3、检查异常端口
使用netstat 网络连接命令,分析可疑端口、IP、PID,是否有建立可疑网络连接等
命令 | 说明 |
netstat -antlp | 检查端口 |
ls -l /proc/$PID/exe | 查看pid所对应的进程文件路径 |
使用telnet 连接
4、检查异常进程
使用ps命令结合aux,grep选项查看linux系统下的进程信息,还可以使用top命令查看是否有挖矿,木马病毒占用大量的系统资源
命令 | 说明 |
ps aux | grep pid | 分析进程 |
ps -ef | 查看进程 |
lsof -p pid | 查看进程打开的端口和文件 |
5、计划任务排查
一般在linux下的任务计划文件是以cron开头的,linux系统中可以使用crontab命令进行计划任务的设置。
默认编写的crontab文件会保存在 (/var/spool/cron/用户名 例如:/var/spool/cron/root)
命令 | 说明 |
crontab -l | 列出某个用户cron服务的详细内容 |
crontab -r | 删除每个用户cront任务(谨慎:删除所有的计划任务) |
crontab -e | 使用编辑器编辑当前的crontab文件 |
cat /etc/crontab | 查看计划任务内容 |
ls /etc/cron.* | 列出以cron.开头的文件或目录 |
more /etc/cron.daily/* | 查看目录下所有文件 |
ls -l /var/spool/cron/* | 查看用户级计划任务配置。有的人喜欢用 crontab -l 命令来排查,这样做不全面,因为 crontab -l 命令只是查看当前登录用户的计划任务,无法查看其他用户的计划任务。而用左侧这个命令,可以查看所有用户设置的计划任务。 |
ls -l /etc/cron.d/ | 如果发现该目录下存在未见过的脚本要格外留意。 |
ls -l /etc/cron.hourly/ | 该目录下的脚本会每小时执行一次。 |
ls -l /etc/cron.daily/ | 该目录下的脚本会每天执行一次。 |
ls -l /etc/cron.weekly/ | 该目录下的脚本会每周执行一次。 |
ls -l /etc/cron.mouthly/ | 该目录下的脚本会每月执行一次。 |
cat /etc/crontab | 查看系统级计划任务配置。 |
6、检查开机启动文件
检查命令 | 说明 |
cat /etc/rc.d/rc.local | 由于系统会在开机时自动执行/etc/rc.d/rc.local文件里面的命令,因此也常常被黑客利用。 |
检查开机启动服务
检查命令 | 说明 |
ls -l /etc/systemd/system/ ls -l /etc/systemd/system/multi-user.target.wants/ | 黑客通常会把恶意命令做成一个开机启动服务项,让其随着系统重启自动执行。我们一定要仔细观察这两个目录下面的每个启动项。 |
ls -lA /etc/rc.d/init.d/ | 这个目录有时也会被黑客放入恶意脚本,也记得查看。 |
7、检查环境变量
检查命令 | 说明 |
cat /etc/profile cat /etc/bashrc cat ~/.bash_profile cat ~/.bash_login cat ~/.bashrc | 这些文件都是系统和用户的环境变量配置文件,黑客有时会在里面写入恶意命令,当系统加载环境变量配置文件时,恶意命令也会随之运行。 |
cat /etc/ld.so.preload | 通过配置该文件,可以让程序在运行之前,优先加载某些动态链接库。部分木马正是利用此文件的功能,修改该了文件,在里面添加恶意so文件,从而达到了隐藏挖矿进程的目的。这也就是为什么服务器中毒了,CPU使用率很高,但是却看不到占用CPU高的进程的原因。 默认该文件是空的,如果发现该文件里面有内容,则可能是黑客植入的,我们需要把该文件中列出的对应路径下的so文件全部删除掉,最后再清空ld.so.preload文件即可。 |
8、检查二进制文件
检查命令 | 说明 |
ls -Athl /usr/bin ls -Athl /usr/sbin | 根据修改时间来查看二进制命令,新文件在最前,旧文件在后。 通常黑客入侵服务器后,会植入一些二进制命令,这些命令文件的日期较新,我们可以根据这个特征,把新文件优先列出来,仔细辨别是否为恶意命令。 |
ls -AShl /usr/bin ls -AShl /usr/sbin | 根据文件大小来查看二进制命令,大文件在最前,小文件在后。 通常黑客入侵服务器后,会植入一些二进制命令,这些二进制命令的体积往往比较大,远超过系统命令的大小。我们可以根据这个特征,把大文件优先列出来,仔细辨别是否为恶意命令。 |
find /usr/bin/ -iname ".*" -ls find /usr/sbin/ -iname ".*" -ls | 列出/usr/bin/、/usr/sbin/等目录下的隐藏文件。 黑客有时会把恶意命令进行隐藏,我们可以通过左侧这两个查找命令,把隐藏文件全部列出来。 |
根据处理经验,笔者列出了一些常见的恶意命令,供大家参考:
/usr/local/bin/pnscan
/usr/bin/masscan
/usr/bin/execute
/usr/bin/where
/usr/bin/crond
/usr/bin/bioset
/usr/bin/bsd-port
9、检查内核文件
检查命令 | 说明 |
cat /etc/sysctl.conf | 黑客入侵服务器后,还会修改内核配置文件,有时会添加如下参数: vm.nr_hugepage 该参数的作用是用来设置大内存页,默认该参数的值是0。黑客有时会设置该参数来优化内存性能,来为挖矿程序的运行提供最大内存资源。也正是由于该参数的存在,会导致系统重启之后,很多服务无法正常加载运行,从而导致系统长时间卡在服务加载界面。 |
10、检查密钥登录文件
检查命令 | 说明 |
cat /root/.ssh/authorized_keys | 黑客入侵系统后,通常会在此文件中写入公钥,以便黑客可以免密登录系统。我们需要仔细辨别该文件的公钥内容,去伪留真。 |
11、检查账户信息
检查命令 | 说明 |
cat /etc/passwd |grep -i /bin/bash | 列出所有具有登录系统权限的用户名。有时黑客会创建后门登录账户,以便其持续入侵,需要我们来辨别。 |
12、检查dns设置
检查命令 | 说明 |
cat /etc/hosts cat /etc/resolv.conf | 有时黑客会修改DNS解析设置文件,以便解析某些恶意域名。 我们需要检查该文件进行确认,如果黑客确实修改了,则要进行配置还原,改回成系统默认的DNS地址,否则可能会影响我们访问网站的速度。 |
13、检查临时目录
检查命令 | 说明 |
ls -Al /tmp ls -Al /var/tmp | 有时黑客会把恶意病毒文件或恶意脚本,放置到这两个临时目录中,需要我们仔细查看加以辨别。 |
ls -Al /dev/shm | /dev/shm是Linux系统利用内存虚拟出来的一个目录,目录中的文件都保存在内存中,效率非常高。也就是往这个目录写东西,仅写在内存里,不会持久化到磁盘。系统重启后,文件消失。 有时黑客也会把病毒文件或脚本藏到这个临时目录里面。 |
相关推荐
- PC也能装MAX OS X
-
MACBOOK向来以其时尚的外观以及易用的OSX操作系统成为了时(zhuang)尚(bi)人士的最爱。但是其动不动就上万元的昂贵价格,也将一批立志时(zhuang)尚(bi)人士的拒之门外。但是最近...
- 一千多元的笔记本能买吗?英特尔11代+大屏幕,豆小谷值得选吗?
-
前言:有很多粉丝都问过本人,一千多元到底能买到什么样的笔记本?在此笔者只想说,这样的资金预算真的太低了!如果想买全新的,那大概率买的就是性能比较拉垮的上网本,比如搭载英特赛扬N系列、J系列处理器的轻薄...
- 首款配备骁龙X Elite处理器的Linux笔记本:采用KDE Plasma桌面环境
-
德国Linux硬件供应商TUXEDOComputers宣布正在开发一款配备高通骁龙XElite处理器(SnapdragonXEliteSoC)的ARM笔记本电脑,内部将该...
- System76推出Gazelle Linux笔记本:配酷睿i9-13900H处理器
-
IT之家3月30日消息,主打Linux硬件的厂商System76于今天发布了新一代Gazelle笔记本电脑,共有15英寸和17英寸两个版本,将于3月30日接受预订,...
- Kubuntu Focus Xe Gen 2笔记本发布,预装Linux系统
-
IT之家3月25日消息,KubuntuFocusXeGen2笔记本于近日发布,这是一款预装Kubuntu22.04LTSGNU/Linux发行版的轻薄本。上一代Kub...
- 这台Linux笔记本已用上英特尔12代酷睿,最高可选i7-1255U、卖1149美元起
-
Linux笔记本可能因为比较小众,一般都是拿Windows笔记本换个系统而来,硬件上也会落后同期Windows笔记本一两代,不过现在专门做Linux电脑的System76,推出了一款名为LemurP...
- 戴尔Inspiron 14 Plus骁龙笔记本迎新补丁,支持启动Linux
-
IT之家4月25日消息,科技媒体phoronix今天(4月25日)发布博文,报道称最新发布的Linux内核补丁,针对骁龙芯片的戴尔Inspiron14Plus笔记本,让其...
- TUXEDO推出InfinityFlex 14二合一Linux笔记本,配i5-1335U
-
IT之家8月12日消息,Linux硬件企业TUXEDO当地时间本月2日推出了InfinityFlex14二合一Linux笔记本。该笔记本搭载2+8核的英特尔酷睿i5-...
- 登月探测器嫦娥使用什么操作系统,是Linux还是其它自主研发?
-
这是不是国家机密啊。事实什么样的不知道,但是从美国的探测器来看,就算不是也是相似的东西。下面我来说说我知道的。龙芯已经随北斗卫星上天了.就算登月探测器嫦娥是用"龙芯+Linux"也不出奇.没必要...
- DNS分离解析实验
-
如果本文对你有帮助,欢迎关注、点赞、收藏、转发给朋友,让我有持续创作的动力目录一、分离解析概述二、实验需求三、实验步骤3.1双网卡服务器配置3.1.1添加两张网卡(内外网)3.1.2对两个网卡进...
- 一个小实验巩固下进程管理
-
先回顾下之前的三篇文章:Linux进程在内核眼中是什么样子的?Linux进程线程是如何创建的?Linux是如何调度进程的?通过这三篇文章的学习我们知道,无论内核进程还是用户进程,都是可以用task...
- VMware Kali无线WIFI密码破解
-
WIFI破解前准备工作一张支持Kali系统监听的无线网卡VMware虚拟机安装好Kali系统(本实验用的是Kali2022版本)Kali系统下载、安装官方网站:https://www.kali.or...
- python多进程编程
-
forkwindows中是没有fork函数的,一开始直接在Windows中测试,直接报错importosimporttimeret=os.fork()ifret==0:...
- 拔电源十台电脑藏后门!德国实验惊曝Windows致命漏洞
-
2025年4月15日,央视突然曝出一个超级大新闻!原来美国国家安全局通过黑龙江,往微软Windows系统里发送加密信息,激活了系统里藏着的后门程序,想破坏哈尔滨亚冬会!这消息一出来,大家才发现,竟然已...
- 深度探索RK3568嵌入式教学平台实战案例:设备驱动开发实验
-
一、产品简介TL3568-PlusTEB人工智能实验箱国产高性能处理器64位4核低功耗2.0GHz超高主频1T超高算力NPU兼容鸿蒙等国产操作系统二、实验目的1、熟悉基本字符设备的驱动程序...
- 一周热门
- 最近发表
-
- PC也能装MAX OS X
- 一千多元的笔记本能买吗?英特尔11代+大屏幕,豆小谷值得选吗?
- 首款配备骁龙X Elite处理器的Linux笔记本:采用KDE Plasma桌面环境
- System76推出Gazelle Linux笔记本:配酷睿i9-13900H处理器
- Kubuntu Focus Xe Gen 2笔记本发布,预装Linux系统
- 这台Linux笔记本已用上英特尔12代酷睿,最高可选i7-1255U、卖1149美元起
- 戴尔Inspiron 14 Plus骁龙笔记本迎新补丁,支持启动Linux
- TUXEDO推出InfinityFlex 14二合一Linux笔记本,配i5-1335U
- 登月探测器嫦娥使用什么操作系统,是Linux还是其它自主研发?
- DNS分离解析实验
- 标签列表
-
- linux 远程 (37)
- u盘 linux (32)
- linux 登录 (34)
- linux 路径 (33)
- linux 文件命令 (35)
- linux 是什么 (35)
- linux 界面 (34)
- 查看文件 linux (35)
- linux 语言 (33)
- linux代码 (32)
- linux 查看命令 (33)
- 关闭linux (34)
- root linux (33)
- 删除文件 linux (35)
- linux 主机 (34)
- linux与 (33)
- linux 函数 (35)
- linux .ssh (35)
- cpu linux (35)
- 查看linux 系统 (32)
- linux 防火墙 (33)
- linux 手机 (32)
- linux 镜像 (34)
- linux mac (32)
- linux ip地址 (34)