针对服务器操作系统的安全事件也非常多的。攻击方式主要是弱口令攻击、远程溢出攻击及其他应用漏洞攻击等。分析安全事件,找到入侵源,修复漏洞,总结经验,避免再次出现安全事件,以下是参考网络上文章,总结的安全应急响应过程中的分析方法。
一、分析原则
1.重要数据先备份再分析,尽量不要在原来的系统中分析;
2.已经被入侵的系统都不再安全,如果条件允许最好采用第三方系统进行分析;
二、分析目标
1.找到攻击来源IP(可以从SSH登陆记录,如有使用第三方平台,看从第三方平台SSH登陆记录中获取)
2.找到入侵途径(可以使用攻击IP,在WEB日志中进行反查,确定攻击IP做了哪些请求)
3.分析影响范围(分析攻击IP做了什么操作,影响数据范围)
4.量化影响级别(根据分析情况,量化影响级别)
5.判断业务影响级别(根据分析情况,量化业务影响级别,比如数据是否被篡改,如未被篡改,使用数据快速恢复目前业务,如已被篡改,使用之前备份数据快速恢复业务,如事前有预案,可先按预案恢复业务,比如使用有备用服务器恢复业务)
三、数据备份采集
痕迹数据永远是分析安全事件最重要的数据,在分析过程中,痕迹数据永远是最重要的数据资料。所以第一件事自然是备份相关痕迹数据。痕迹数据主要包含如下几点:
1.系统日志:message、secure、cron、mail等系统日志;
2.应用程序日志:Apache日志、Nginx日志、FTP日志、MySQL等日志;
3.自定义日志:很多程序开发过程中会自定义程序日志,这些日志也是很重要的数据,能够帮我们分析入侵途径等信息;
4.bash_history:这是bash执行过程中记录的bash日志信息,能够帮我们查看bash执行了哪些命令;
5.其他安全事件相关日志记录;
分析这些日志的时候一定要先备份,我们可以通过tar压缩备份好,再进行分析,如果遇到日志较大,可以尽可能通过海量日志分析工具进行分析。以下是完整备份/var/log路径下所有文件的命令,其他日志可以参照此命令:
复制代码代码如下:
#备份系统日志及默认的httpd服务日志
tar -cxvf logs.tar.gz /var/html
#备份last
last > last.log
#在线用户
w > w.log
#历史命令记录
history > history.log
2.系统状态
系统状态主要是网络、服务、端口、进程等状态信息的备份工作:
复制代码代码如下:
#系统服务备份
chkconfig --list > services.log
#进程备份
ps -ef > ps.log
#监听端口备份
netstat -utnpl > port-listen.log
#系统所有端口情况
netstat -ano > port-all.log
3.查看系统、文件异常
主要针对文件的更改时间、属组属主信息问题,新增用户等问题,其他可以类推:
复制代码代码如下:
#查看用户信息:
cat /etc/passwd
#查找最近5天内更改的文件
find -type f -mtime -5
4.最后可使用第三方扫描工具一下rootkit
Rootkit Hunter和chkrootkit都可以
四、分析方法
大胆猜测是最重要的,猜测入侵途径,然后进行分析一般都会事半功倍。
一般来说,分析日志可以找到很多东西,比如,secure日志可以查看Accept关键字;last可以查看登录信息;bash_history可以查看命令执行信息等,不同的日志有不同的查看方式,最好是系统管理员的陪同下逐步排查,因为系统管理员才最懂他的服务器系统。
五、分析影响
根据服务器的用途、文件内容、机密情况结合数据泄漏、丢失风险,对系统使用者影响等进行影响量化,并记录相关安全事件,总结分析,以便后期总结。
如果已经被进行过内网渗透,还需要及时排查内网机器的安全风险,及时处理。
六、加固方法
已经被入侵的机器,可以打上危险标签,最直接最有效的办法是迁移上面业务服务,重装系统或者系统还原。所以经常性的备份操作是必不可少的,特别是源代码和数据库数据,提前做好应急预案,避免长时间影响线上业务。
通过分析的入侵途径,可以进行进一步的加固处理,比如弱口令和应用漏洞等。