安全应急响应指南(Linux)
一、概述
1、常见的安全事件分类
· web服务器异常
· 服务器异常
· 网络流量异常
· 信息泄露
· 风控异常
2、安全事件分类
· 员工误操作
· 即将离职员工恶意操作
· 员工电脑出现异常
· 等等
3、应急响应基本思想
· 保护现场
· 默认不可信
· 靠谱的人做事
· 交叉检查
4、应急响应基本思想
· 自动化工具辅助
· 对抗无止境、备份数据、重装系统
· 全面排查、总结反思
二、应急响应基本流程(PDCERF)
三、linux系统下的常见目录介绍
(1)/bin
bin为binary的简写,主要放置系统的必备执行文件,例如:cat、cp、chmod、df、dmesg、gzip、kill、ls、mkdir、more、mount、rm、su、tar等。
(2)/boot
主要放置开机会使用到的文件,包括Linux核心文件以及开机选单与开机所需设定文件等等。
(3)/dev
在linux系统上,任何装置与周边设备都是以文件的形态存在于这个目录中、主要通过存取这个目录下的某个文件,就等于存取某个装置。
(4)/etc
(5)/home
(6)/lib和/lib64
(7)/sbin
(8)/tmp
四、用户组概念
· 所有者
· 所在组
· 其他组
1、文件普通权限
r=4,w=2,x=1 /etc/passwd文件权限为0600
2、文件特殊权限
SUID:s出现在文件所有者的x权限上。
SGID:s出现在文件所属群组的x权限上。
SBIT:t出现在文件其他用户的x权限上。
(1)SUID
· SUID权限仅对二进制程序有效
· 执行者对于该程序需要具有x的可执行权限
· 本权限仅在执行该程序的过程中有效
· 执行者将具有该拥有者的权限
(2)SGID
SGID对二进制程序有用
程序执行者对该程序需具备x权限
执行者在执行过程中会获得该程序用户组的支持
(3)SBIT
当用户对此目录具有w和x权限时,即具有写入权限时;
当用户在该目录下创建新文件或目录时,仅有自己和root才有权力删除。
3、目录权限
目录 |
文件 |
|
读(r=4) |
查看目录下的文件名 |
打开文件 |
写(w=2) |
修改目录下的内容,删除、增加 |
修改文件内容 |
执行(x=1) |
进入目录 |
可以执行文件 |
五、应急响应中的常用命令
1、Stat
(1)atime
Access time(访问时间):文件中的内容最后被访问的最后时间
(2)mtime
Modified time(修改时间):文件内容被修改的最后时间
(3)ctime
Change time(变化时间):文件的元数据发生变化,写入文件、更改所有者、权限修改。
2、文件常用命令
(1)ls
详细参数
-a 显示隐藏文件
-i 详细显示
-R 递归显示
netstat
-a 显示所有连接中的socket
-n 使用IP,而不是域名显示
-t 显示TCP连接
-p 显示每个网络连接对应的进程和用户
-I 显示处于监听中的socket
-e 显示扩展信息,inode等信息
-u 显示UDP连接
组合使用
netstat -antpleu
(2)lsof
lsof -c sshd 显示abc进程现在打开的文件
lsof -p pid 显示进程号为pid的打开情况
lsof +d /tmp 显示目录下被进程打开的文件
lsod +D /tmp 递归显示显示目录下被进程打开的文件
(3)ps
a 显示当前终端下的进程
u 以用户为主的显示方式
x 显示所有进程
grep(egrep)
-i 忽略大小写
-v 不包含匹配字符
(4)tcpdump
(5)find
六、服务器常规检查项
1、文件检查--历史执行命令
root用户执行过历史命令
/root/.bash_history
对应username执行过的历史命令
/home/{username}/.bash_history
当前用户执行过的历史命令
history
ls -Ral * 递归显示当前目录下的所有文件的详细信息
2、文件检查---系统关键文件
· /etc/passwd
· /etc/shadow
· /etc/group
· /etc/profile/
· /root/.bash_profile
· /home/{username}/.bash_profile
· /root/.bashrc
· /home/{username}/.bashrc
· /root/.bash_logout
· /home/{username}/.bash_logout
· /root/.ssh/authorized_keys
· /home/{username}/.ssh/authrized_keys
· /test/.bash_profile
3、文件检查---系统关键目录
· /root/
· /home/{username}
· /tmp/
· /var/tmp/
· /dev/shm/
4、很多恶意脚本会在以下三个目录中写入恶意代码
· /tmp/
· /var/tmp/
· /dev/shm/
· 命令检查
· /usr/bin/ps
· /usr/bin/netstat
· /usr/bin/ps
· /usr/sbin/lsof
· /usr/bin/md5sum
· /usr/sbin/ss
· /usr/bin/stat
5、系统安装包检查
(1)列出系统所有安装的rpm包
(2)校验系统所有rpm包
(3)校验特定文件或命令
6、Crontab
(1)计划任务:系统自带的定时执行脚本或者命令的系统服务
systemctl status crond #查看crond服务状态
systemctl stop crond #停止crond服务
systemctl enable crond #开机启动crond服务
systemctl disable crond #关闭开机启动crond服务。
(2)crontab
· -l 列出crontab
· -u 指定用户用户
· -e 编辑crontab
· /etc/cron.deny /etc/cron.allow
· crontab的限制文件,用户名存在cron.deny,且cron.allow文件不存在、或者用户名不存在cron,allow的时候,不允许此用户执行crontab。
· cron.allow优先级高于cron.deny
· 系统默认不存在cron.allow
(3)系统默认crontab相关配置文件和目录
· /etc/cron.d
· /etc/cron.hourly/
· /etc/cron.daily/
· /etc/cron.monthly/
· /etc/cron.weekly/
· /etc/croutab
· /var/spool/cron/
· /var/log/cron
· /etc/systemd/system/system/multi-user.target.wants/crond.service
(5)cat /etc/crontab
(6)查看crontab日志(系统rsyslog已经启动)
昆仑云安全实验室拥有对此文章的修改、删除和解释权限!!!