Linux 应急响应命令总结,收藏版

该文详细列举了Linux系统的基本信息检查,包括CPU、操作系统、模块、账户、登录记录、计划任务、进程状态和服务状态。还介绍了如何排查登录失败信息、空口令账户、启动项以及系统日志,强调了计划任务的设置与管理,并提供了进程和文件权限的检查方法,以及日志分析在系统安全中的重要性。
摘要由CSDN通过智能技术生成

 

系统基本信息

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      (删除工作作)

我们用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重启smb30 21 * * * /etc/init.d/smb restart实例7:每月1、10、22日的4 : 45重启smb45 4 1,10,22 * * /etc/init.d/smb restart实例8:每周六、周日的1 : 10重启smb10 1 * * 6,0 /etc/init.d/smb restart实例9:每天18 : 00至23 : 00之间每隔30分钟重启smb0,30 18-23 * * * /etc/init.d/smb restart实例10:每星期六的晚上11 : 00 pm重启smb0 23 * * 6 /etc/init.d/smb restart实例11:每一小时重启smb0 */1 * * * /etc/init.d/smb restart实例12:晚上11点到早上7点之间,每隔一小时重启smb0 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 > 1ls /proc | sort -n | uniq > 2diff 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 777WebShellWebShell:find /var/www/ -name "*.php"系统命令检测系统命令检测:ls -lat /bin/ /sbin/系统命令检测:ls -lah /bin/ /sbin/后门检测后门检测:chkrootkit -q | grep INFECTEDSUID 程序排查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 登录系统失败的账号信息日志分析grepsedsortawk

PS:转载自公众号《菜鸟学信安》

欢迎关注公众号获取更多信息

 

  • 3
    点赞
  • 29
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
Linux安全应急响应是指在发生安全事件或遭受攻击时,对Linux系统进行紧急处置和响应的过程。以下是一些常见的Linux安全应急响应步骤: 1. 确认安全事件:首先要确定是否发生了安全事件,包括检查系统日志、网络流量分析和异常行为检测等。 2. 隔离受影响的系统:如发现受到攻击的系统,应立即将其隔离,以防止攻击扩散或进一步损害其他系统。 3. 收集证据:在处理安全事件之前,应收集相关证据,包括攻击日志、恶意文件和异常配置等。这些证据对于后续调查和分析非常重要。 4. 分析攻击:对收集到的证据进行深入分析以确定攻击类型、攻击者的目的和方法。这有助于加强安全防御和预防类似攻击再次发生。 5. 恢复系统:在确保已经理解并清除了安全威胁之后,可以开始恢复受损系统的正常运行。这可能包括修复被攻击的漏洞、移除恶意软件和重新配置受损的系统。 6. 安全加固:在响应安全事件后,应加强系统的安全防御机制,包括更新补丁、加强访问控制、安装防火墙以及加强账户和密码管理等措施。 7. 审查和改进:对安全事件的响应过程进行审查和改进,以提高安全性和应急响应的效率。这包括分析事件的原因和教训,制定更好的安全策略和流程。 请注意,这只是一个基本的安全应急响应框架,实际情况可能因事件类型和具体环境而有所不同。在面临安全事件时,建议寻求专业的安全团队或专家的帮助来进行处理和恢复。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

張童學

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值