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

    我们用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

    应 急 响 应 溯 源 反 制 记 录 单

    应用系统名称

    主管单位

    主要负责人

    运维单位

    直接负责人

    应用系统url

    所属网络

    外网IP

    内网IP

    攻击IP

    攻击时间

    发现时间

    阻断时间

    应用系统漏洞存在位置

    事件类型

    后门位置

    处置措施

    青藤扫描结果

    涉及主机情况

    系统排查

    异常任务

    异常驱动

    异常模块

    异常程序

    异常账号

    异常登录

    异常启动项

    异常任务计划

    进程排查

    异常进程

    异常连接

    服务排查

    异常服务

    文件痕迹排查

    敏感目录

    时间点查找

    特殊文件

    系统命令

    内存后门检测

    历史命令

    WebShell

    日志分析

    系统日志

    应用日志

    影响危害

    结论

  • 相关阅读:
    汉明距离00
    接口管理工具YApi怎么用?颜值高、易管理、超好用
    MATLAB非均匀网格梯度计算
    java 企业工程管理系统软件源码+Spring Cloud + Spring Boot +二次开发+ MybatisPlus + Redis
    [MySQL]实训七
    [ Linux 长征路第二篇] 基本指令head,tail,date,cal,find,grep,zip,tar,bc,unname
    Docker容器的5个实用案例
    MySQL数据库——权限控制及日志管理
    高效使用浏览器的5个小技巧,第1个技巧最实用
    当BIM遇上VR。让你体会一把什么是win win~
  • 原文地址:https://blog.csdn.net/m0_60571990/article/details/128071454