安全应急响应指南(Linux)

admin 2025年2月20日23:36:18评论21 views字数 4031阅读13分26秒阅读模式

一、概述

1、常见的安全事件分类

·web服务器异常

·服务器异常

·网络流量异常

·信息泄露

·风控异常

2、安全事件分类

·员工误操作

·即将离职员工恶意操作

·员工电脑出现异常

·等等

3、应急响应基本思想

·保护现场

·默认不可信

·靠谱的人做事

·交叉检查

4、应急响应基本思想

·自动化工具辅助

·对抗无止境、备份数据、重装系统

·全面排查、总结反思

二、应急响应基本流程(PDCERF)

1、准备:即在事件未发生时的准备工作,包括策略、计划、规范文档及具体的技术工具和平台。
2、检测:初步判断是什么类型的问题,收影响的系统及危害程度。
3、抑制:限制攻击、破坏所波及的范围,通俗的将叫止血。
4、根除:对事件发生的原因进行分析,彻底解决问题,避免再次在同一个问题上犯错。
5、恢复:把业务恢复至正常水平。
6、跟踪:针对事件的整改措施进行落实并监控是否有无异常,换句话说叫安全运行中的持续改进。

三、linux系统下的常见目录介绍

(1)/bin

    系统中有很多放置命令的目录,但/bin比较特殊。因为/bin放置的是在单人维护模式下还能够被操作的指令。在/bin底下的指令可以被root与一般账号所使用。
 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

这是系统预设的使用者家目录(home directory)。在你新增一个一般使用者账号时,新增的使用者家目录都会规范到这里来。

(6)/lib和/lib64

系统的函式库非常多,而/lib或者/lib64放置常用的函数库

(7)/sbin

Linux有非常多指令是来设定系统环境的,这些指令只有root才能够利用来设定系统,其他使用者最多只能用来查询而已。放在/sbin底下的为开机过程中所需要的,里面包括了开机、修复、还原系统所需要的命令。

(8)/tmp

任何人后可以读写的目录,重新启动目录中存放的文件会被删除。

四、用户组概念

·所有者

·所在组

·其他组

1、文件普通权限

安全应急响应指南(Linux)

r=4,w=2,x=1    /etc/passwd文件权限为0600

2、文件特殊权限

SUID:s出现在文件所有者的x权限上。

SGID:s出现在文件所属群组的x权限上。

SBIT:t出现在文件其他用户的x权限上。

(1)SUID

·SUID权限仅对二进制程序有效

·执行者对于该程序需要具有x的可执行权限

·本权限仅在执行该程序的过程中有效

·执行者将具有该拥有者的权限

安全应急响应指南(Linux)

(2)SGID

  • SGID对二进制程序有用

  • 程序执行者对该程序需具备x权限

  • 执行者在执行过程中会获得该程序用户组的支持

(3)SBIT

  • 当用户对此目录具有wx权限时,即具有写入权限时;

  • 当用户在该目录下创建新文件或目录时,仅有自己和root才有权力删除。

3、目录权限

目录

文件

(r=4)

查看目录下的文件名

打开文件

(w=2)

修改目录下的内容,删除、增加

修改文件内容

执行(x=1)

进入目录

可以执行文件

五、应急响应中的常用命令

1、Stat

安全应急响应指南(Linux)

(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

安全应急响应指南(Linux)

(2)lsof

默认是没有安装的,可以使用命令进行安装
yum install lsof -y

lsof -c sshd 显示abc进程现在打开的文件

lsof -p pid 显示进程号为pid的打开情况

lsof +d /tmp 显示目录下被进程打开的文件

lsod +D /tmp 递归显示显示目录下被进程打开的文件

(3)ps

a 显示当前终端下的进程

u 以用户为主的显示方式

x 显示所有进程

grep(egrep)

-i 忽略大小写

-v 不包含匹配字符

安全应急响应指南(Linux)

(4)tcpdump

tcpdump -i eth0#抓取网卡为eth0的流量
tcpdump tcp#抓取TCP流量
tcpdumpport 53 #抓取端口为53的流量,源端口或者目的端口
tcpdump host 1.1.1.1#抓取和主机1.1.1.1有关的流量
tcpdump -w wireshark.pcap#流量保存为图形化分析软件可以识别的数据包

(5)find

find path -name filename#在path路径下查找文件名为filename的文件。
find path -perm 777#在path路径下查找文件权限。
find path -perm -700#在path路径下查找文件权限为700以及700以上权限的文件。

六、服务器常规检查项

1、文件检查--历史执行命令

  • root用户执行过历史命令

/root/.bash_history

  • 对应username执行过的历史命令

/home/{username}/.bash_history

  • 当前用户执行过的历史命令

history

ls -Ral * 递归显示当前目录下的所有文件的详细信息

安全应急响应指南(Linux)

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

若是里面有攻击者的公钥的话,攻击者可以通过自己的私钥进行连接,而不需要密码。这个机制是默认开启的。

安全应急响应指南(Linux)

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包

rpm -qa

(2)校验系统所有rpm包

rpm -V -a

安全应急响应指南(Linux)

(3)校验特定文件或命令

rpm -V -f /etc/sysconfig/authconfig

6、Crontab

(1)计划任务:系统自带的定时执行脚本或者命令的系统服务

          systemctl status crond  #查看crond服务状态

   systemctl start 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

安全应急响应指南(Linux)

基本格式 :
*****command
分 时 日 月 周 命令
1列表示分钟159 每分钟用*或者 */1表示
2列表示小时023(0表示0) 7-9表示:8点到10点之间
3列表示日期131
4列表示月份112
5列标识号星期06(0表示星期天)
6列要运行的命令

(6)查看crontab日志(系统rsyslog已经启动)

crontab的执行日志:
cat /var/log/cron

安全应急响应指南(Linux)

    昆仑云安全实验室系列文章仅限技术研究与讨论,严禁用于非法用途,否则产生的一切后果自行承担!!!
      昆仑云安全实验室拥有对此文章的修改、删除和解释权限!!!

原文始发于微信公众号(昆仑云安全):安全应急响应指南(Linux)

免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2025年2月20日23:36:18
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   安全应急响应指南(Linux)https://cn-sec.com/archives/911242.html
                  免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉.

发表评论

匿名网友 填写信息