10.5. 恢复资源

在事件响应过程中,CERT 小组既应该进行调查研究,也应该努力进行数据和系统恢复。不幸的是,破坏的性质会决定恢复的行动策略。这时候,若拥有了备份的或备用的冗余系统就会价值菲浅。

要恢复系统,响应组必须把所有停运的系统或程序重新联机,例如验证服务器、数据库服务器,以及其它生产资源。

强烈建议你备有生产备份硬件,如额外的硬盘驱动器、热备用服务器等等。现成系统应该载入了所有生产软件,能够被立即使用。也许,只有最近期的和最相关的数据需要被导入。这个现成系统应该从可能会受影响的网络中隔离出来。如果攻击事件发生了,而这个备份系统也是网络的一部分,那么这个备份系统就毫无意义了。

系统恢复是一项冗长而繁琐的工作。在许多情况下,你都有两种行动可选。管理员可以完整地重新安装操作系统,再恢复所有数据和应用程序。或者,管理员可以给出了问题的地方打补丁,然后再让受影响的系统重新会到生产环境中。

10.5.1. 重新安装系统

执行完整的重新安装会确保受影响的系统中的所有“特洛伊木马”、后门、和恶意进程都被清除。重新安装还能够确保所有数据(如果从可信任的备份源中恢复了)都没有被恶意篡改。它唯一的缺陷是,从零开始重建系统会花较长时间。不过,如果你有可用的备份系统,你唯一要做的事只是转储最近期的数据,然后系统停运时间就会被大大缩短。

10.5.2. 给系统打补丁

另一种恢复方法是给受影响的系统打补丁。这种方法执行起来比较危险,应该格外谨慎从事。其危险性在于决定你是否已经完全地清除了系统内的“特洛伊木马”、漏洞和破坏性数据。如果使用的是模块化内核,那么给一个受损系统打补丁就更加困难。多数 rootkits(怪客留下的能够获得你的系统上的根特权的程序或软件包)、特洛伊木马系统命令、以及 shell 环境被刻意设计用来从例行审核中隐藏恶意行为的行踪。如果使用了打补丁的方法,你只应该使用信任的二进制程序(例如,来自挂载的只读光盘的程序)。