Linux主机安全检查应急响应系统

发布者:上海IT外包来源:http://www.lanmon.net点击数:949

当我们主持安全检查或安全事件时,我们无法避免检查系统的安全性。在Linux安全检查中,您需要使用相关脚本来全面分析系统的安全性。一方面,您需要尽可能多地收集系统的相关信息,另一方面,当数量很大时,尽可能地提高效率。由于在安全检查中遇到多次检查时有数十台服务器要进行全面检查,如果使用手动脚本,一方面效率低,另一方面,安全检查员需要熟悉要检查的项目。在这种情况下,我编写了一个Linux安全检查脚本,主要用于以下场景:
Linux主机安全检查
在Linux主机上发生安全事件时,需要进行全面分析。
该脚本已经完成了一段时间,最近在应急响应小组中进行了讨论。结果发现,这种安全检查是每个人的强烈要求。因此,检查脚本与每个人共享。共享的目的主要是两个:。 Linux安全检查的效率,释放每个人的精力;另一方面,我希望每个人都可以在使用过程中继续发现问题,并不断总结缺失的安全检查项目,以帮助改进检查脚本。因此,如果您在使用过程中有任何问题或建议,请随时与我同步。
Linux主机安全检查
检查内容
总体框架
关于Linux安全检查,这里我总结了检查以下内容的主要需求:
系统安全检查(进程,打开端口,连接,日志等):此块是当前个人脚本实现的功能。
Rootkit:建议使用rootkit kill工具进行检查,例如rkhunter
Webshell:这种查杀技术相对困难,而不是该脚本需要实现的功能。对于此检查,您可以使用D shield进行检查(可以在Windows下安装Linux进行检查)
网络日志:
流量:本文重点介绍主机的长期流量分析。目前,个人使用tshark实现基本的流量分析,并在以后进行相应的改进。此流量可以从威胁情报中提取流量五元组,DNS流量,HTTP流量和数据,以进行深入分析。在后期阶段,个人将进行相关尝试,并在可能的情况下共享内容。2.系统安全检查框架
3.功能实现
特色设计:
V1.0主要功能用于收集信息
V1.1主要功能分析原始数据并查找可疑或危险物品
V1.2增加了基线检查功能
V1.3可以自动处理相关的危险物品或可疑物品
目前在V1.2中,V1.3相关功能在后期得到了改进。
此外,可以对操作执行单击安全检查,并将检查结果保存到机器。只需在主机文本中输入相应的IP,帐户和密码即可。在操作中最小化人工干预。
4.每个脚本函数的描述
下载后整个脚本的目录结构如下:
Checkrulues:部分判断逻辑。目前,只有端口的判断逻辑。在后期阶段,可以将进程和应用程序的逻辑放在安全检查中。简单判断逻辑可以直接在purchase_linuxcheck.sh中实现。
Buying_linuxcheck.sh:核心检查逻辑
Del.exp:删除脚本并检查远程服务器上的结果
Get.exp:获取远程服务器上的安全检查结果
Hosts.txt:要检查的服务器列表
Login.sh:一键登录检查,只需要在安全检查期间运行脚本
Put.exp:将安全检查脚本上传到远程服务器
Readme.txt:使用相关文档
Sh.exp:在远程服务器上执行安全检查脚本
以下是一些介绍的脚本。
(1)检查规则
判断逻辑主要放在两个文件中:一个是checkrules,格式是dat,建议在这里放置更复杂的判断逻辑,如下面的TCP危险端口,因为更多,如果放在buy_linuxcheck中。 sh中的代码有点冗长。以下是TCP高风险端口的判断逻辑。它主要基于特洛伊木马使用的端口号。这种判断的逻辑相对简单,可能存在误报。因此,需要进行人工干预分析。
(2)buy_linuxcheck.sh
核心功能集合和判断逻辑,更简单的判断逻辑可以放在里面来判断。
5.使用
它使用起来相对简单。将此脚本复制到您自己的Linux主机。您可以使用虚拟机将要检查的服务器的IP,帐户和密码放入hosts.txt目录并直接运行以实现一键式安全检查。
相关操作如下:(1)将要检查的服务器IP,帐户和密码写入hosts.txt文件,格式为
IP:端口:用户: userpassword: rootpassword
用户是普通用户的帐户,端口是ssh登录端口,uesrpassword是普通帐户的密码,rootpassword是root用户的密码。仅添加普通用户,因为某些系统具有安全策略并且不允许root用户直接登录。正在检查的服务器允许root直接登录。您可以直接以root用户身份和root用户密码编写用户和用户密码。
这里检查的服务器允许root直接登录,所以直接写root帐号和密码。
(2)运行安全检查脚本,
Sh login.sh
安全检查脚本在后台运行,等一下......
(3)在远程服务器上看到删除检查脚本和检查结果时,检查结束。
(4)检查结束后,远程服务器上的结果将保存到本地主机。
6.检查结果说明
检查完成后,解压缩相应的结果,目录结构如下::
(1)Check_file
保存的是检查的最终结果。看起来像这样......
(2)记录
Linux系统日志保存在目录中。当前脚本未实现自动打包。原因是Web日志通常太大,保存的日志可能是从日志到当前日志。许多日志不需要检查。并进行分析,以便相关人员在检查过程中根据具体情况打包相应的日志。
(3)danger_file.txt
保存的是安全检查期间发现的问题
(4)sysfile_md5.txt
系统密钥文件或系统文件的MD5值已保存。记录这些密钥文件的MD5。有两个主要功能。:一个是定期检查,可以与第一个结果进行比较。你会被提示;另一种方法是将这些关键文件的MD5值运行到威胁情报库或virustotal,以找出可能的系统文件被替换。
IT外包
>
400-635-8089
立即
咨询
电话咨询
服务热线
400-635-8089
微信咨询
微信咨询
微信咨询
公众号
公众号
公众号
返回顶部