我正在尝试编写一个程序,用于在怀疑服务器可能受到攻击时(可能是从 netflow 数据或类似数据中发现的)执行此操作。其逻辑是,在事情真正发生之前,你应该冷静地思考这些事情,否则压力就会增加,肾上腺素就会激增。
谁能推荐一些我应该熟悉的好资源来帮助我起草合理的程序?
我正在寻找有关如何确认可疑情况以及发现黑客攻击时该怎么做的有用信息。
答案1
您可以按照计划运行 chkrootkit 之类的程序。http://www.chkrootkit.org/ rkhunter 也一样。
查找可疑进程并关闭不必要的守护进程。
如果这是一个基于 rpm 的系统,您可以查看 rpm verify () 的输出rpm -vVa
来查找已安装软件包的变化。
总是有 Tripwire……http://tripwire.org/
答案2
假设您明确没有解决防止妥协的问题,也没有解决从妥协中恢复的问题......
发生之前
您需要有安全的日志记录 - 例如,日志数据应立即发布到单独的框中进行记录。
你应该有一个基于主机的 IDS 来检测未经授权的更改 - 再次使用现成的数据存储 - 例如 tripwire / LIDS
您还需要计划在怀疑受到威胁时立即采取的措施 - 您是否有一个可以替换的单独单元?如果它是直接复制的,那么它将具有与它要替换的盒子相同的漏洞。是否可以将其配置为提供更安全但更简化的服务(例如,具有只读文件系统和基本内容的 Web 服务器)。
确定让执法人员参与的标准。如果你可能让他们参与进来——而且他们可能感兴趣——提前和他们谈谈,问问你如何能让他们的生活更轻松。
获得所有利益相关者对计划响应的同意。
检测
除了基本的异常检测外,您还应该检查入侵检测系统的输出,并定期运行 rootkit 检查,同时还要对机器频繁运行端口扫描。您的常规异常检查应包括日志分析。
虽然上述方法在系统被攻击者修改时很有用,但它们无法解决信息泄露的问题。据我所知,解决这个问题的唯一合理方法是通过蜜罐数据(例如电子邮件地址、用户帐户)。
当它发生时
拔掉电源插头。说真的。系统关闭可能会对系统造成重大改变。您希望尽快将其与网络上的任何其他设备断开连接 - 但您需要尽可能多地保留系统状态。
如果您要让执法部门介入——请在采取任何其他行动之前告知他们。
如果您想自己调查,请从 USB/CD 启动系统 - 而不是从已安装的操作系统启动。
答案3
您无法仅通过查看 netflow 输出来确定这一点,因为这还不够详细。
相反,我建议使用 netflow 怀疑作为起点:观察一段时间,尝试查看它是上升还是下降趋势,如果您怀疑它可能导致服务中断,请拔掉受影响的机器的插头。
您永远不会对实时盒子进行取证;如果怀疑变得足够强烈,您就将盒子从网络上拉下来,然后在闲暇时检查后果。