5、共享管理员账户
管理员账户——诸如访问数据库和管理页面的,常常会在网络内共享。不通过设置环境以便管理员能在需要的时候请求特权,而是乱七八糟地共享管理员账户,那根本就是在自找麻烦。
理想状态下,应该是采用独立账户:一个root账户,然后每个管理员分发一个单独的账户。管理员账户不应该一开始就分配最高级别的访问权限——可以在执行特殊任务时请求特别访问权。Intermedia的报告发现32%的IT专业人员将自己的登录和密码凭证给了其他员工。
不清楚到底是谁在用管理员账户就已经够糟的了,更糟的是:这些密码在管理员离任后竟然还不带改的。由于密码没有经常更换,前同事大模大样地杀回来,造成破坏后从容离去无迹可寻的场景也不是不可能发生。Intermedia的调查发现,1/5的IT专业人士承认自己会在离职后还去访问原公司的信息。密码修改策略不仅仅针对终端用户。要定期修改密码,尤其是管理员和服务账户密码。而且,无论何时,只要管理员离任,请务必重置密码。
6、故障诊断完后甩手不管
故障诊断的时候,你执行各种花招和试验来找寻并修复问题。在进行这些尝试的时候,你很可能会绕过那些常规的处理过程。问题往往出现在你修复了已发现的问题而进行到下一个任务的时候。管理员总是很匆忙,有可能忘了恢复现场而令事情陷入混乱——给潜在的滥用以可乘之机。
比如说,在试图找出为什么一个应用程序没有响应的时候,你有可能在防火墙中开启了一些端口。当问题修复,你得在这些被临时开启的端口被攻击者利用之前关上它们。同样地,如果你由于SELinux干扰了故障诊断而暂时关闭了它,记得在你完工之后重新启动它。
故障诊断之时,记录下你所做的改动,这样便能在之后将各种设置恢复到原始的状态——除了你真的需要做出的那些修改。
7、未能跟踪日志文件
日志文件很有用,尤其是在故障诊断的时候,因为它们能让你看到最细粒度层次上发生的事情。当你不再需要这些日志文件,请停止产生它们的进程。相信我,你最不想看到的事情之一,就是调试进程一直开启,不停产生那些包含了可能对攻击者也有用的信息的日志文件。
作为最佳实践,要记得总是记录下有哪些日志被创建了,做到对其中的信息类型心中有数。
8、在文本文件中存储密码
要记的密码太多时,很容易就会把它们都记在文本文件中。对四处窥探的攻击者而言,这简直就是叩开各种系统的天赐神物。这种做法的后果十分明显,但大家基本都听说过那么一两个将所有重要密码记录到文本文件中的例子。
如果密码必须以明文保存到某个文件中(比如某个应用程序的数据库凭证),设置文件权限以限制能查看该文件内容的用户。另外,确保数据库账户是一个只有最低权限的服务账户。
9、留下闲置账户
过期的,限制的账户就是些碍事的东西。可能有软件仅仅是评测了一下就卸载了,但作为安装进程的一部分而添加的账户却一直留在系统中。别那么干。攻击者很可能利用这类被遗忘的账户,尤其是它们还保留有默认密码的时候。
对那些需要留存在系统中但未来不会被使用的账户,可以通过修改密码文件,用一串字符串替换掉账户密码来禁用该账户。显然,当员工离职,必然要进行的一步就是立即撤销他们的账户。
10、疏于打补丁
金科玉律:安全更新一出,即刻安装(当然,备份好受影响的系统先)。太多太多的服务器不是因为零日漏洞利用被攻陷,而是因为经年的补丁从未打上。
即使是关键服务器,一小段计划维护的停机时间也远比被攻击者成功入侵后的数小时乃至数天的宕机时间要好得多。补丁发布就应立即测试并创建推出更新的计划任务。
然而,不幸的是,在立即打补丁这件事上你很可能会感到挫败——通常是由于该补丁会让某个遗留应用崩溃。这种情况下,不要简单地耸耸肩,甩一句“太糟了”了事。应及时将情况上报恰当的利益相关者。升级该问题。或许就有方法将服务器隔离至最小风险或者采用新技术降低对遗留产品的依赖呢。
在实际生活中,打补丁有可能就跟政治泥潭一样恐怖。如果有级别比你高的经理级人物下令不对系统进行更新,要确保每个人都知道不打补丁的风险。
不要吝惜您的安全技术
一般情况下,安全技术能帮助阻挡已知惯犯,并在事情变得不正常时帮助将问题暴露出来。或许会有在某个特别的工作站或服务器上不宜运行反病毒或防火墙的情况,但这种情况相当罕见。
考虑到当下有多种DDoS恶意软件肆虐,就因为Linux Web服务器没有工具阻拦坏东西的入侵而感染这些服务器,安全技术应该被部署到所有终端以保护所有用户——高层管理人员、一线工人、系统管理员和其他有着特殊权限的个人,不受攻击的侵害。
尽量保持机器的干净清洁。卸载那些你用不着的应用程序以便在机器上不留下被遗忘的账户或工具。我们的目标是让系统尽可能地干净以最小化攻击界面。仅仅需要一个小错,一瞬间的疏忽大意,所有努力都可能付诸东流。
安全工具能帮你看清网络中正在发生的事件。可以使用Nmap扫描那些可能在故障诊断会话中被打开的端口。检查哪些机器缺失了哪些补丁,制订出修复计划。
有工具可以告诉你哪儿出了问题,给你在攻击者乘虚而入之前修复问题的机会。但世界上所有的安全技术都帮不了你——如果系统管理员不以身作则遵守那些他们为大家制定的规则的话。
(责任编辑:安博涛)