Ben Asked: 2010-03-10 09:45:05 +0800 CST2010-03-10 09:45:05 +0800 CST 2010-03-10 09:45:05 +0800 CST 我应该警惕的Linux后门 772 我是服务器管理领域的新手,我确信我的服务器非常不安全。我已经通过了 WHM CPanel 安全检查,但我确信真正的大师,该检查是愚蠢的,远不及它需要的。我应该注意哪些事项? linux security forensics 4 个回答 Voted Best Answer Warner 2010-03-10T09:48:20+08:002010-03-10T09:48:20+08:00 前几天我在这里回答了一个类似的问题: 用于生产的安全 LAMP 服务器 检查妥协.. /tmp 中的可疑文件。Web 树中的文件意外。 加载的内核模块看起来很可疑。( lsmod) 不应该运行的进程。( ps aufx) 活动网络连接。( netstat) 当前打开的文件描述符。( lsof) 最终,如果服务器受到攻击,正确的做法是隔离、映像和重建。 编辑 1 巴特提出了很好的观点;特别是如果您认为本地系统受到了损害,您将根本无法信任本地系统。 映像后,您可以使用已知的受信任实用程序来操作映像(和文件系统)以进行进一步的取证。 在交换机上转储流量或tcpdump在本地系统上运行流量也可能很有用。 编辑 2 我实际上已经从一个已知良好的系统中复制了实用程序,并以前在远程服务器上使用过。不理想,但总比没有好。 Bart Silverstrim 2010-03-10T10:37:57+08:002010-03-10T10:37:57+08:00 我已经在评论中提出了一些观点,但是为了巩固一些想法...... 您在问什么,潜在的攻击媒介? 开箱即用,在当今的 Linux 安装中,您通常需要立即担心的并不多。大多数人通过安装新程序和更改配置在他们的 Linux 系统中引入漏洞。 为了给你更好的建议,你需要澄清你在做什么。家用服务器?数据库服务器?网络服务器?工作站? 如果您运行的数据库服务器不清理输入并设法对后端数据库进行 SQL 注入攻击,那么具有所有补丁和更新的系统仍将公开信息。 通常,您可以在任何其他系统上执行您需要执行的操作。定期更新。使用做某事所需的最低权限(不要一直以 root 身份运行)。不要使用明文密码登录(使用 SSH 远程管理系统)。不要运行不必要的服务(如果您不使用远程桌面/VNC,请关闭它,如果您不使用它,请不要运行 Web 服务器等)使用强密码。定期检查日志是否有异常行为。了解您的系统是如何运作的,这样您就知道什么是“奇怪的”。监控日志以查找异常访问尝试。安装拒绝主机并将其配置为锁定尝试敲击 SSH 以进行登录访问的 IP,或者将其移动几个端口,使其不会受到机器人攻击。使用 NMAP 检查您打开了哪些端口(来自另一台机器)。使用 SAINT(google 漏洞审计工具)之类的工具来审计你的机器。离开时不要让工作站保持登录状态。 chkrootkit 和 rkhunter 之类的东西可以提供一些指导,让您安心,就像tripwire 之类的散列实用程序一样,但它们会增加您的维护。您需要坐下来平衡可用性与安全需求,并根据需要应用它们(每次更改一组文件或运行系统更新时是否值得额外的哈希生成和存储,而不是您必须及时丢失的内容如果服务器丢失了还有钱?) 确保您有一个良好的备份程序。如果有人破坏了服务器并且您最旧的备份包含该破坏,则实时数据的副本是不好的。 如果您认为系统已被入侵,请不要相信它。我喜欢将devil linux用于设备用途,因为在数据暂存区域(如代理服务器之类的东西)之外无法破解;它从 CD 启动和运行,因此没有人可以替换二进制文件。我想他们可以在内存中修补它们,但重新启动会清除它。 如果您正在处理更重的安全需求,请将您的日志回显到另一台服务器。不要对所有内容使用相同的密码。如果您的服务器遭到入侵,他们可以访问所有密码(我曾经读到有人建立色情网站,然后查看登录名和电子邮件地址等进入日志......他们认为他们可以转身使用相同的破解其他网站的密码,因为大多数人在工作场所和家中使用与商业网站相同的密码方案)。 那些是大的。同样,这完全是平衡可用性与安全性的问题,以及如果丢失服务器会损失多少,还有网络上的东西。如果有人接管了一个不起眼的小型文件服务器或几乎不使用的内部 Web 服务器,Linux 可以很容易地用于重定向 ARP 请求并充当路由器来嗅探流量,因此它可以看到您网络上的其他内容,因此即使是微不足道的服务器可能成为重大威胁。由于您没有说服务器和角色是什么或位置是什么,因此很难告诉您具体信息(例如,“哇!如果您必须询问它,您不想触摸信用卡信息存储!那东西受到严格监管!”或者,“永远不要存储未经哈希处理的密码。永远不要存储为纯文本。”) ptman 2010-03-10T10:18:04+08:002010-03-10T10:18:04+08:00 chkrootkit和rkhunter artifex 2010-03-10T10:44:10+08:002010-03-10T10:44:10+08:00 虽然这非常复杂(不要说我没有警告你)。NeXpose 有一个社区版[rapid7.com],您可以使用它来扫描漏洞。您还可以将它与Metasploit [www.metaploit.com] 集成。准备做一些繁重的阅读。但如果你涉水而过,你会变得更聪明。这些甚至是一些安全专业人员使用的工具。 参与社区和学习!妥协(和妥协)可能非常复杂。 如果您是或怀疑您已被入侵,最好从备份重新安装或进行全新安装。使用提供校验和的资源[en.wikipedia.com] 进行下载 如果他们知道自己在做什么,他们甚至可以修改您系统上的编译器,以便在新编译时在“恶意软件”中编译。 编辑:这些是检查您是否可以被利用的工具。他们不会检查您是否受到威胁。
前几天我在这里回答了一个类似的问题:
用于生产的安全 LAMP 服务器
检查妥协..
/tmp 中的可疑文件。Web 树中的文件意外。
加载的内核模块看起来很可疑。(
lsmod
)不应该运行的进程。(
ps aufx
)活动网络连接。(
netstat
)当前打开的文件描述符。(
lsof
)最终,如果服务器受到攻击,正确的做法是隔离、映像和重建。
编辑 1
巴特提出了很好的观点;特别是如果您认为本地系统受到了损害,您将根本无法信任本地系统。
映像后,您可以使用已知的受信任实用程序来操作映像(和文件系统)以进行进一步的取证。
在交换机上转储流量或
tcpdump
在本地系统上运行流量也可能很有用。编辑 2
我实际上已经从一个已知良好的系统中复制了实用程序,并以前在远程服务器上使用过。不理想,但总比没有好。
我已经在评论中提出了一些观点,但是为了巩固一些想法......
您在问什么,潜在的攻击媒介?
开箱即用,在当今的 Linux 安装中,您通常需要立即担心的并不多。大多数人通过安装新程序和更改配置在他们的 Linux 系统中引入漏洞。
为了给你更好的建议,你需要澄清你在做什么。家用服务器?数据库服务器?网络服务器?工作站?
如果您运行的数据库服务器不清理输入并设法对后端数据库进行 SQL 注入攻击,那么具有所有补丁和更新的系统仍将公开信息。
通常,您可以在任何其他系统上执行您需要执行的操作。定期更新。使用做某事所需的最低权限(不要一直以 root 身份运行)。不要使用明文密码登录(使用 SSH 远程管理系统)。不要运行不必要的服务(如果您不使用远程桌面/VNC,请关闭它,如果您不使用它,请不要运行 Web 服务器等)使用强密码。定期检查日志是否有异常行为。了解您的系统是如何运作的,这样您就知道什么是“奇怪的”。监控日志以查找异常访问尝试。安装拒绝主机并将其配置为锁定尝试敲击 SSH 以进行登录访问的 IP,或者将其移动几个端口,使其不会受到机器人攻击。使用 NMAP 检查您打开了哪些端口(来自另一台机器)。使用 SAINT(google 漏洞审计工具)之类的工具来审计你的机器。离开时不要让工作站保持登录状态。
chkrootkit 和 rkhunter 之类的东西可以提供一些指导,让您安心,就像tripwire 之类的散列实用程序一样,但它们会增加您的维护。您需要坐下来平衡可用性与安全需求,并根据需要应用它们(每次更改一组文件或运行系统更新时是否值得额外的哈希生成和存储,而不是您必须及时丢失的内容如果服务器丢失了还有钱?)
确保您有一个良好的备份程序。如果有人破坏了服务器并且您最旧的备份包含该破坏,则实时数据的副本是不好的。
如果您认为系统已被入侵,请不要相信它。我喜欢将devil linux用于设备用途,因为在数据暂存区域(如代理服务器之类的东西)之外无法破解;它从 CD 启动和运行,因此没有人可以替换二进制文件。我想他们可以在内存中修补它们,但重新启动会清除它。
如果您正在处理更重的安全需求,请将您的日志回显到另一台服务器。不要对所有内容使用相同的密码。如果您的服务器遭到入侵,他们可以访问所有密码(我曾经读到有人建立色情网站,然后查看登录名和电子邮件地址等进入日志......他们认为他们可以转身使用相同的破解其他网站的密码,因为大多数人在工作场所和家中使用与商业网站相同的密码方案)。
那些是大的。同样,这完全是平衡可用性与安全性的问题,以及如果丢失服务器会损失多少,还有网络上的东西。如果有人接管了一个不起眼的小型文件服务器或几乎不使用的内部 Web 服务器,Linux 可以很容易地用于重定向 ARP 请求并充当路由器来嗅探流量,因此它可以看到您网络上的其他内容,因此即使是微不足道的服务器可能成为重大威胁。由于您没有说服务器和角色是什么或位置是什么,因此很难告诉您具体信息(例如,“哇!如果您必须询问它,您不想触摸信用卡信息存储!那东西受到严格监管!”或者,“永远不要存储未经哈希处理的密码。永远不要存储为纯文本。”)
chkrootkit和rkhunter
虽然这非常复杂(不要说我没有警告你)。NeXpose 有一个社区版[rapid7.com],您可以使用它来扫描漏洞。您还可以将它与Metasploit [www.metaploit.com] 集成。准备做一些繁重的阅读。但如果你涉水而过,你会变得更聪明。这些甚至是一些安全专业人员使用的工具。
参与社区和学习!妥协(和妥协)可能非常复杂。
如果您是或怀疑您已被入侵,最好从备份重新安装或进行全新安装。使用提供校验和的资源[en.wikipedia.com] 进行下载
如果他们知道自己在做什么,他们甚至可以修改您系统上的编译器,以便在新编译时在“恶意软件”中编译。
编辑:这些是检查您是否可以被利用的工具。他们不会检查您是否受到威胁。