网站被黑了,寻找安全build议

可能重复:
我的服务器被黑了应急

上周末我公司的网站遭到黑客入侵。

他们在星期五晚上做了最好的事情,所以我们只注意到星期一早上的攻击..有趣的是,我们最近从Windows切换到Linux,因为它应该是更稳定和安全的。 去搞清楚。 是的,我们把我们列入了Firefox和Chrome的黑名单。

由于我不是Linux专家,因此我正在寻求有关如何避免将来出现这种问题的build议。 你采取什么措施来保护你的系统? 看来我们的密码很弱,但是在login几次失败之后,Linux不应该阻止这个帐号? 他们尝试了20多种组合

除此之外,我正在寻找一种类似于pingdom但适用于安全性的工具(或服务)。 如果我的网站遭到黑客入侵,请提醒我。 是这样的事情吗? 黑客监视器? 🙂

另一件事,你如何通知你的客户这样的问题? 你是否忽略并希望没有人注意到? 解释发生了什么?

*张贴匿名,以避免更多的不良曝光给我的公司,这已经不好了…

至于一个类似pingdom的服务,但是应用到安全性上,我会build议Sucuri的免费的networking完整性监视器。

它能做什么? 它会实时监控您的网站(和域名),并提醒您是否曾被污损,被列入黑名单,被黑名单等。链接: http : //sucuri.net

顾名思义,它监控您的“互联网”存在的完整性。

*免责声明:我开发了它。

操作系统不“稳定和安全”。 一个正确configuration和pipe理良好的基础设施可以比不是一个更安全,但安全性不是布尔值。 您不能通过使用特定的产品/技术来“购买安全性”或“安装安全性”。

你不是一个“Linux专家”,所以从安全的angular度来看,你需要雇用能够很好地configuration你的服务器的人。 这不是你可以做的一件事,“做”。 因为新发现的漏洞和错误,修补程序一直在发布。 如果你没有一个雇员来保持你的工作,你真的需要考虑订阅某种types的“托pipe”服务来维护你的服务器计算机。 这是一个持续的问题,需要考虑整个系统的预算/总体拥有成本。

有一些“黑客监视器”。 入侵检测系统(IDS),入侵防御系统(IPS)等,填补了这个空白。 不过这是一场军备竞赛。 你不能只购买一个现成的IDS / IPS产品,付钱给人,然后坐下来,感到自得其乐。 就像保持操作系统软件和应用程序软件一样,“黑客监控”基础架构也必须保持最新。

你需要和律师谈谈。 您可能有客户位于您必须根据法律披露此类事件的地方。 即使你不是,我也不会让你的客户知道他们的数据是否处于危险之中。 现在披露黑客就有了“你的好名字”的损害,但是如果后来出现了这种损害,那么你就试图掩盖这种损害 – 尤其是如果你这样做是违法的话。

实用的东西:

你被黑的机器是垃圾。 他们需要从已知好的备份中重新加载,或者更好的是从干净的操作系统二进制文件中重新加载并重新填充数据。 这就像“恶意软件清理”,除非更糟,因为你的对手更可能是一个思维而不是一个软件(尽pipe你可能已经被一个“机器人”黑客攻击)。 你的服务器有“后门”的可能性是真实的。

服务器计算机上的数据应该被认为是向公众公开的。 即使现在不是,也可能是。

存储在黑客计算机上的其他计算机的任何凭据都是公开的。 开始获得这些密码到其他计算机现在改变,并确保其他计算机完好无损。 (有人使用Tripwire吗?在这种情况下肯定会很好…)

你有一团糟。 处理好,你会更好。 处理得不好,下一次你可能没有公司。

将来,您应该使用强身份validation和encryptionpipe理协议(SSH,基于公钥的身份validation)。 我已经build议,即使只是合同,你也得到一个“Linux专家”,让你开始正确的轨道。 我无法鼓励这一点。 你会看到,这个违反,如何将“自己付出”。

所有常见的东西都适用:

  • 不要运行你不需要的服务。
  • 禁用默认凭据。
  • 遵循最小特权的原则。
  • 已经过testing,脱机和异地备份。
  • 知道你的法律要求重新:违反披露。
  • 保持您的系统/应用程序更新。

看来我们有弱密码…

我们最近从Windows切换到Linux,因为它应该是更稳定和安全的。 去搞清楚。

弱密码与平台无关。

在许多情况下,Linux比Windows更加灵活,因此在出现某些情况时可以使其更加安全。 没有真正的原因,从Windows切换到Linux,特别是当你不熟悉环境时,是一个不好的调用。 如果你运行一个面向互联网的服务器,而不了解该服务器上的服务是如何工作的,无论是Windows,Solaris,RHEL还是BSD,你都会遇到麻烦。

至于如何告诉你的客户,如果他们的任何数据被暴露,甚至可能被暴露,AT ALL,尽快打电话给他们。 没有电子邮件,没有希望它消失。 用你的手机坐在你的桌子上。

除了法律上的影响之外,你们正在向他们提供一些他们无疑用某种方式为他人提供服务的服务。 您应该向他们透露任何潜在的数据泄露情况,以便他们能够相应地调整其工作stream程,并通知其下游的任何其他人可能会受到影响。

像任何平台一样,Linux只和pipe理系统的人一样安全。 如果你对Windows更有经验,那么迁移到Linux可能不是最好的主意。 您可以将Windows设置为与Linux一样安全,只要您采取正确的步骤来保护在公共Internet和您的内部networking之间包含防火墙的环境,并保护从您家连接到内部networking的VPN。

根据违规程度将决定你告诉你的客户。 如果没有客户数据被采纳,那么你可以给你的客户一些关于发生了什么的基本信息。 但是,如果访问客户数据,则现在有一些州通知法律来处理,具体取决于贵公司所在的州和客户所在的州。

有趣的是,我们最近从Windows切换到Linux,因为它应该更稳定和安全。 去搞清楚。

去图,的确如此。 你切换到一个你几乎没有经验的系统,而你被困在屁股里。 如果你一辈子骑着自行车买了一辆高功率的跑车,也会发生同样的事情 – 这可能会更强大,但在错误的手中也是危险的。

看起来我们的密码很弱,但是在login几次失败之后,Linux不应该阻止帐户? 他们尝试了20多种组合

可以通过denyhosts等附加组件轻松进行configuration。 知道安装这样的东西是在你使用的系统的专家是有用的那些位之一。

除此之外,我正在寻找一种类似于pingdom但适用于安全性的工具(或服务)。 如果我的网站遭到黑客入侵,请提醒我。 是这样的事情吗? 黑客监视器? 🙂

有一些入侵检测应用程序,但是破解服务器的新方法一直出现。 在检测成功的入侵方面,没有任何东西可靠。

另一件事,你如何通知你的客户这样的问题? 你是否忽略并希望没有人注意到? 解释发生了什么?

从长远来看,诚实将会更好地为您服务。 那些诚实,主动,沟通的公司比那些把东西从顾客身上隐藏起来的公司更加天真。 中断可以幸存下来,但是如果付钱的人感到受到了欺骗,那么就不会这样。

网站的黑客攻击可能与底层操作系统很less有关,更多与您网站上运行的代码有关。 所需要的只是一个SQL注入,而你是历史。

既然你被Google列入黑名单,我会假设有人设法在你的服务器上build立一个恶意脚本,在这种情况下,你可能会尝试类似mod_security ,这不是一个小菜一碟,但值得一试。 但是,确保您的代码没有这些types的漏洞是非常重要的。

另一方面,如果你的操作系统是一个漏洞,你可能需要尝试将分发转换为Web服务,比如FreeBSD,CentOS或者RHEL,假设你还没有使用它。 您可能要考虑加强SELinux,或者添加某种入侵检测/预防系统。

在许多地方,如果个人信息可能被泄露,通知您的客户安全违规是法定的要求,您可能需要查看。

一些更多的细节将有助于更多地回答你的问题到你的具体情况。

Ehtyar。

其他人已经涵盖了大部分重要的观点。 但要补充他们所说的安全性,就像链条中最薄弱的环节一样强大。 这几乎总是涉及到的人的因素。

假设这是一个蛮力的ssh攻击,如果只花了20次尝试,那么你的密码几乎不存在。 这些攻击几乎总是自动化的攻击,并且很容易通过以下的iptable规则来阻止。

sudo iptables -A INPUT -i eth0 -p tcp --dport 22 -m state --state NEW -m recent --set --name SSH sudo iptables -A INPUT -i eth0 -p tcp --dport 22 -m state --state NEW -m recent --update --seconds 60 --hitcount 3 --rttl --name SSH -j DROP 

这些规则将允许在60秒内从eth0上的IP地址连接3个ssh连接,然后阻塞该ip地址60秒。 这通常足以导致自动攻击转移到另一台主机。

您将需要确保这些iptable规则在重新启动时被恢复。 不同的分布有不同的方式做这个谷歌,或让我们知道你正在运行的发行版,有人可以为您提供的信息。

作为使用Linux进行某些工作的Windowspipe理员,我只想补充一点,你犯了一个非常根本的错误。 由于Linux在稳定性和可靠性方面的良好声誉,您将切换操作系统,并期望它能够接pipe您的责任。 在我的testing机器上,需要将近12个小时来破解我当前的Windows密码。 我还没有testing过我的Linux密码,但它同样复杂(但不一样)。 关键是我不会仅仅因为操作系统更安全就采取较小的措施。 如果有的话,我对Linux更加小心, 因为我对它的使用经验不足,因此更容易忽略一些东西。

我一直喜欢这个build议:closures所有的港口,不要让任何交通,无论如何,任何方式。 然后,根据需要,逐渐打开所需的端口,仅此而已。

虽然这不一定会保证你的安全,但它会让你熟悉你的系统,并确保只有最低限度的开放。

既然你没有具体说明是什么types的“黑客”,我想我可以认为你通过SSH暴力破解了。 这里有一些一般的提示:

  • 使用SELinux或AppArmor来限制每个进程的访问,尤其是apache和mysql
  • 在Apache上使用mod_evasive和mod_security
  • 不要在默认端口上运行SSH
  • 通过ssh禁用rootlogin,并使用非常强大的root密码(如:6uF3ceDa7u,bRusteth6F,breGUfE4aT,7Ub8R9)
  • 不要让密码login( 使用密钥 ) – 或者 – 使用ssh-guard,黑名单和iptable规则来停止重复访问

我已经发表了一些评论,提供了一些具体的build议,以避免未来的攻击。 在一年前,我发现自己处于类似的情况,当然,分析攻击以改善您的设置非常重要,但现在您应该担心您正在运行的服务器。 你怎么知道你可以信任他们? 如果你不能,那么你需要擦拭他们。