当前位置:   article > 正文

应急响应-Linux 应急响应命令总结_linux应急响应

linux应急响应

系统排查

系统基本信息

CPU 信息

CPU 信息:lscpu
在这里插入图片描述
操作系统信息

操作系统信息:uname -a在这里插入图片描述

操作系统信息:cat /proc/version在这里插入图片描述
模块信息

模块信息:lsmod在这里插入图片描述

账户信息

系统所有账户

系统所有账户:cat /etc/passwd在这里插入图片描述
超级权限账户

超级权限账户:awk -F: ‘{if($3==0)print $1}’ /etc/passwd
在这里插入图片描述
可登录账户

可登录账户:cat /etc/passwd | grep ‘/bin/bash’在这里插入图片描述
最近20条登录失败信息

最近20条登录失败信息:lastb | head -n 20在这里插入图片描述
所有账号最后登录信息

所有账号最后登录信息:lastlog在这里插入图片描述
最近20条登录信息

最近20条登录信息:last | head -n 20

在这里插入图片描述
当前登录账号信息

当前登录账号信息:who在这里插入图片描述

空口令账号

空口令账号:awk -F: ‘{if($2==0)print $1}’ /etc/shadow在这里插入图片描述

启动项

启动项:ls -lat /etc/init.d/在这里插入图片描述
启动项:cat /etc/init.d/rc.local在这里插入图片描述

启动项:cat /etc/rc.local在这里插入图片描述

计划任务

当前计划任务

当前计划任务:crontab -l在这里插入图片描述
Linux Crontab 计划任务

/var/spool/cron/ 目录下存放的是每个用户包括root的crontab任务,每个任务以创建者的名字命名

/etc/crontab 这个文件负责调度各种管理和维护任务。

/etc/cron.d/ 这个目录用来存放任何要执行的crontab文件或脚本。

我们还可以把脚本放在/etc/cron.hourly、/etc/cron.daily、/etc/cron.weekly、/etc/cron.monthly目录中,让它每小时/天/星期、月执行一次。

crontab [-u username]    //省略用户表表示操作当前用户的crontab

-e      (编辑工作表)

-l      (列出工作表里的命令)

-r      (删除工作作)
  • 1
  • 2
  • 3
  • 4
  • 5

我们用crontab -e进入当前用户的工作表编辑,是常见的vim界面。每行是一条命令。

crontab的命令构成为 时间+动作,其时间有分、时、日、月、周五种,操作符有

  • 取值范围内的所有数字

/ 每过多少个数字

  • 从X到Z

,散列数字

实例1:每1分钟执行一次myCommand

          • myCommand

实例2:每小时的第3和第15分钟执行

3,15 * * * * myCommand

实例3:在上午8点到11点的第3和第15分钟执行

3,15 8-11 * * * myCommand

实例4:每隔两天的上午8点到11点的第3和第15分钟执行

3,15 8-11 */2 * * myCommand

实例5:每周一上午8点到11点的第3和第15分钟执行

3,15 8-11 * * 1 myCommand

实例6:每晚的21:30重启smb

30 21 * * * /etc/init.d/smb restart

实例7:每月1、10、22日的4 : 45重启smb

45 4 1,10,22 * * /etc/init.d/smb restart

实例8:每周六、周日的1 : 10重启smb

10 1 * * 6,0 /etc/init.d/smb restart

实例9:每天18 : 00至23 : 00之间每隔30分钟重启smb

0,30 18-23 * * * /etc/init.d/smb restart

实例10:每星期六的晚上11 : 00 pm重启smb

0 23 * * 6 /etc/init.d/smb restart

实例11:每一小时重启smb

0 */1 * * * /etc/init.d/smb restart

实例12:晚上11点到早上7点之间,每隔一小时重启smb

0 23-7/1 * * * /etc/init.d/smb restart

创建、编辑计划任务的命令为crontab -e

查看当前计划任务的命令为crontab -l

删除某条计划任务的命令为crontab -r

另外,如果您是以管理员的身份登录的系统,还可以在crontab命令中加上-u参数来编辑他人的计划任务。

crontab命令的参数及其作用

参数 作用

-e 编辑计划任务

-u 指定用户名称

-l 列出任务列表

-r 删除计划任务

分、时、日、月、星期 命令

如果有些字段没有被设置,则需要使用星号(*)占位

使用crond设置任务的参数字段说明

字段 说明

分钟 取值为0~59的整数

小时 取值为0~23的任意整数

日期 取值为1~31的任意整数

月份 取值为1~12的任意整数

星期 取值为0~7的任意整数,其中0与7均为星期日

命令 要执行的命令或程序脚本

在crond服务的配置参数中,一般会像Shell脚本那样以#号开头写上注释信息,这样在日后回顾这段命令代码时可以快速了解其功能、需求以及编写人员等重要信息。

计划任务中的“分”字段必须有数值,绝对不能为空或是*号,而“日”和“星期”字段不能同时使用,否则就会发生冲突。

cron是Linux中默认的计划任务。使用cron,你可以安排一个计划(比如:命令或者shell脚本)周期性地运行或者在指定的分钟、小时、天、周、月等特定时间运行。cron在你安排不同的常规维护任务时是很有用的,比如周期性地备份、日志循环、检查文件系统、监测磁盘空间等等

每个cron任务的格式如下。

<分钟> <小时> <日> <月> <星期> <命令>

查看计划任务文件

查看计划任务文件:ls -lat /etc/cron*

在这里插入图片描述
/etc/crontab

/etc/cron.d/*

/etc/cron.daily/*

/etc/cron.hourly/*

/etc/cron.monthly/*

/etc/cron.weekly/*

/etc/anacrontab

进程排查

网络连接

网络连接:netstat -antlp在这里插入图片描述
查找对应运行程序

查找对应运行程序:ls -lat /proc/20583在这里插入图片描述
查看程序打开文件

查看程序打开文件:lsof -p 20583
在这里插入图片描述
结束进程

结束进程:kill -9 20583

Linux kill命令

Linux kill 命令用于删除执行中的程序或工作。

linux 的 kill 命令是向进程发送信号,kill 不是杀死的意思,-9 表示无条件退出,但由进程自行决定是否退出,这就是为什么 kill -9 终止不了系统进程和守护进程的原因。

Linux pkill 命令

Linux pkill 用于杀死一个进程,与 kill 不同的是它会杀死指定名字的所有进程,类似于 killall 命令。

kill 命令杀死指定进程 PID,需要配合 ps 使用,而 pkill 直接对进程对名字进行操作,更加方便。

pkill -9 php-fpm //结束所有的 php-fpm 进程

Linux killall 命令

Linux killall 用于杀死一个进程,与 kill 不同的是它会杀死指定名字的所有进程。

kill 命令杀死指定进程 PID,需要配合 ps 使用,而 killall 直接对进程对名字进行操作,更加方便。

killall -9 php-fpm //结束所有的 php-fpm 进程

查看文件属性

查看文件属性:lsattr filename

移除 i 属性

移除 i 属性:chattr -i filename

查看隐藏进程

ps -ef | awk ‘{print}’ | sort -n | uniq > 1

ls /proc | sort -n | uniq > 2

diff 1 2
在这里插入图片描述
查看资源占用率较高的进程

查看资源占用率较高的进程:top在这里插入图片描述

服务排查

系统运行服务

系统运行服务:chkconfig –list在这里插入图片描述
Centos7 查看自启动列表systemctl list-unit-files以及设置服务自启动

系统运行服务:systemctl list-unit-files

所有服务状态

所有服务状态:service --status-all

在这里插入图片描述

所有服务状态:

显示所有的服务状态—空格翻页 q推出

systemctl list-units --type service –all在这里插入图片描述

查看启动成功的服务列表

systemctl list-unit-files | grep enabled在这里插入图片描述

查看启动失败的服务列表

systemctl --failed

在这里插入图片描述

查看所有服务的状态—空格翻页 q推出

systemctl list-unit-files --type service

在这里插入图片描述

文件痕迹排查

敏感目录

/tmp

/usr/bin/

/usr/sbin/

~/.ssh/

/etc/ssh/

时间点查找

find:在指定目录下查找文件

-type b/d/c/p/l/f:查找块设备、目录、字符设备、管道、符号链接、普通文件

-mtime -n +n:按文件更改时间来查找文件,-n 指 n 天以内,+n 指 n 天前。

-atime -n +n:按文件访问时间来查找文件,-n 指 n 天以内,+n 指 n 天前。

-ctime -n +n:按文件创建时间来查找文件,-n 指 n 天以内,+n 指 n 天前。

查找一天内新增的 sh 文件

查找一天内新增的 sh 文件:find / -ctime 0 -name “*.sh”在这里插入图片描述
查看排序后前10行的内容

查看排序后前10行的内容:ls -lat | head -n 10在这里插入图片描述

排查文件创建、修改、访问时间

排查文件创建、修改、访问时间:stat /etc/passwd在这里插入图片描述

特殊文件

特殊权限文件

特殊权限文件:find /tmp -perm 777

WebShell

WebShell:find /var/www/ -name “*.php”

系统命令检测

系统命令检测:ls -lat /bin/ /sbin/

系统命令检测:ls -lah /bin/ /sbin/

后门检测

后门检测:chkrootkit -q | grep INFECTED

SUID 程序排查

SUID 程序排查:find / -type f -perm -04000 -ls -uid 0 2>/dev/null

在这里插入图片描述

日志分析

日志概述

/var/log/

/var/log/wtmp 登录进入、退出、数据交换、关机和重启,即last

/var/log/cron 计划任务有关的日志信息

/var/log/messages 系统启动后的信息和错误日志

/var/log/apache2/access.log Apache 访问日志

/var/log/auth.log 系统授权信息,包括账号登录和使用的权限机制

/var/log/userlog 所有等级账号信息日志

/var/log/vftpd.log FTP 日志

/var/log/lastlog 登录的账号,也可以使用命令 lastlog 查看

/var/log/secure 大多数应用输入的账号和密码,以及登录成功与否

/var/log/faillog 登录系统失败的账号信息

日志分析

grep

sed

sort

awk

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/知新_RL/article/detail/969285
推荐阅读
相关标签
  

闽ICP备14008679号