在服务器妥协之后读到这个问题之后,我开始想知道为什么人们似乎仍然认为他们可以使用检测/清理工具来恢复受感染的系统,或者只是修复用来危害系统的漏洞。
鉴于所有各种rootkit技术和黑客可以做的其他事情,大多数专家build议你应该重新安装操作系统 。
我希望能够更好地理解为什么更多的人不会把这个系统从轨道上取下来,
这里有几点,我希望看到解决。
一个安全决策最终是一个关于风险的商业决策,就像决定要把什么产品推向市场一样。 当你在这种情况下进行构build时,决定不重新安装和重新安装是有道理的。 当你从技术angular度严格考虑时,事实并非如此。
以下是通常进入该业务决策的内容:
因此,当您将这些成本加起来时,可能会认为继续使用“潜在”仍然受损的系统要比重新安装系统要好。
根据我多年前写的一篇文章,当我仍然可以困扰博客。
这个问题不断被黑客的受害者闯入他们的networking服务器。 答案很less改变,但人们不断问这个问题。 我不知道为什么。 也许人们不喜欢他们在寻求帮助时看到的答案,或者找不到他们信任的人给他们build议。 或者,也许人们阅读这个问题的答案,并过分关注为什么他们的情况是特殊的,不同于他们可以在网上find的答案的5%,错过95%的问题和答案,他们的情况是接近相同作为他们在网上阅读的一个。
这使我获得了第一个重要的信息。 我真的很感激你是一个特殊的独特的雪花。 我很欣赏你的网站,因为这反映了你和你的企业,或者至less是你代表雇主的努力。 但是对于外部的人来说,看看这个问题的计算机安全人员是否会尝试帮助你,甚至是攻击者本人,那么你的问题很可能会与其他所有情况至less有95%的相同曾经看过。
不要亲自采取攻击,也不要采取这里提出的build议,也不要采取其他人的build议。 如果您在成为网站黑客的受害者之后阅读本文,那么我真的很抱歉,我真的希望您能在这里find有用的东西,但是这不是让自我克服需要的方式的时候做。
你刚发现你的服务器被黑了。 怎么办?
不要惊慌。 绝对不要匆忙行事,绝对不要试图假装从未发生过的事情,也不要做任何事情。
首先:了解这场灾难已经发生。 这不是拒绝的时候; 现在是接受发生的事情的时候了,要现实一点,并采取措施来pipe理影响的后果。
其中一些步骤将会受到伤害,并且(除非您的网站拥有我的详细信息)我真的不在乎是否忽视所有或部分步骤,但是这样做会让事情变得更好。 药物可能会味道糟透了,但有时你必须忽略,如果你真的想要治愈的工作。
阻止问题变得比现在更糟糕:
仍然犹豫要采取这最后一步? 我明白,我知道。 但是看看这样的:
在某些地方,您可能有法律要求通知当局和/或这类隐私违规的受害者。 不过,如果你不告诉他们,让你的客户恼火,可能是你告诉他们一个问题,他们会更加恼火,他们只有在使用信用卡详细信息收取价值8,000美元的商品后才发现问题。从您的网站偷走。
还记得我之前说过的吗? 坏事已经发生了 。 现在唯一的问题是你如何处理它。
充分了解问题:
制定恢复计划并将您的网站重新上线并坚持下去:
没有人想要离线的时间超过他们必须。 这是一个给定的。 如果这个网站是一个创收机制,那么迅速恢复在线的压力将会非常激烈。 即使唯一的事情是你/公司的声誉,这仍然会产生很大的压力,使事情迅速恢复。
但是,不要太放弃回到网上的诱惑。 而是要尽可能快地了解是什么原因引发了这个问题,并在你回到网上之前解决它,否则你几乎肯定会再次成为入侵的受害者,并且记住:“一次黑客攻击可以归类为不幸;直到再次遭到黑客攻击,看起来像是粗心“(向奥斯卡·王尔德道歉)。
降低未来的风险。
首先你需要了解的是,安全是一个过程,你必须在devise,部署和维护一个面向Internet的系统的整个生命周期中应用,而不是你可以在你的代码之后挨过几层,如便宜涂料。 为了保证安全,从一开始就需要devise一个服务和一个应用程序,作为项目的主要目标之一。 我意识到这很无聊,而且你之前听说过这一切,我只是没有意识到让你的testingweb2.0(testing版)服务进入testing状态的压力的人,但事实是,这样做因为这是第一次被说出来,而且还没有成为谎言,所以重复。
你不能消除风险。 你甚至不应该这样做。 但是,您应该做的是了解哪些安全风险对您至关重要,并了解如何pipe理和降低风险的影响以及风险发生的可能性 。
你可以采取哪些措施来降低攻击成功的可能性?
例如:
你可以采取哪些措施来减less成功攻击的后果?
如果你认为你家的水浸较低楼层的“风险”很高,但是不够高,不能移动,你至less应该把不可替代的家庭传家宝搬到楼上。 对?
…最后
我可能没有留下别人认为重要的东西,但上面的步骤至less应该帮助你开始分类,如果你不幸成为黑客的受害者。
最重要的是:不要惊慌。 在行动之前思考。 一旦你做出决定,坚决行动,如果你有什么要添加到我的步骤列表,请在下面留言。
大多数系统是具有内在隐含信任的整体实体。 相信一个被泄露的系统是一个隐含的陈述,你信任谁违反了你的系统开始。 换一种说法:
实际上,大多数人不这样做,因为他们认为这会花太长的时间,或太过分的破坏性。 我已经build议无数客户可能会遇到问题,但重新安装往往被决策者击倒,原因之一。
这就是说,在我确信我知道进入方法和损害的全部范围的系统上(固定的机器外日志,通常带有IDS,也许SELinux或类似的东西限制了入侵的范围),我已经做了一个清理,不用重新安装,而不会感到内疚。
他们很可能没有经过充分testing的灾难恢复例行程序,以便他们对重build有信心,或者不清楚需要多长时间或会产生什么影响……或者备份不可靠或其风险分析师不了解受损系统的范围。 我可以想到很多原因。
我想说的是,在基本常规和政策方面大部分是不对的,这不是你想公开承认的 – 而是采取防御姿态。 至less我不能看到或捍卫,不pipe你从哪个angular度来看,都不要抹煞一个妥协的系统。
我以前没有把这个系统弄坏,所以我可以分析一下它们进来的vector,然后分析它的用途,看看它们到了哪里。
一旦你扎根 – 你有一个活蜜jar,它可以提供的不仅仅是黑客。 – 特别是警察。