第 27 节
作者:
做男人挺好的 更新:2022-10-30 13:52 字数:4830
过程分析
上述攻击利用了技术和人的弱点,攻击者首先用电话骗局获得了目标信息所在服务器的位置和主机名,然后他用工具扫描出了所有的有效账户名,接着他进行了两次连续的密码攻击,其中有一次是字典攻击(使用英语字典中的单词搜索常用密码,有时还会增加包含姓名、地名和特殊爱好的单词表)。
因为任何人都能获取商业的和公共流通的黑客工具(无论出于何种目的),所以对企业计算机系统和基础网络的保护显得更加重要。
当然,这种威胁不能被夸大,《计算机世界》杂志针对奥本海默基金公司的分析得出了惊人结论。公司的网络安全与灾难恢复副主管用标准软件包进行了一次密码攻击,杂志报导说他只用了三分钟就得到了800个员工的密码!
米特尼克语录
在大富翁(Monopoly)游戏的术语中,如果你使用一个常用单词作为你的密码——就直接去了监狱,不能前进,不能收取200美金的租金(译者注:在大富翁中,如果你第三次掷出相同的点数,就会被立刻送进“监狱”)。你需要告诉你的员工怎样选择密码,真正地保护你的资产。
预防措施
当攻击者在攻击中添加了技术元素时,社会工程学攻击可以变得更加具有破坏性,抵挡这种攻击的常用方法是在人和技术两方面同时采取措施。
就说不
在这一章的第一个故事中,电话公司RCMAC的员工不应该删除掉十号电话线路的呼入拒绝状态,因为没有服务命令批准进行修改。只让员工了解安全程序和规定还不够,还应该让他们知道这些规定对于公司的安全而言有多么重要。
应当阻止重要系统中违反安全程序的行为,当然,安全规定必须结合实际,过于繁琐的规定会被员工无视的。同样,安全认知程序需要让员工们了解,因为急于完成手头上的工作而绕过必要的安全程序会伤害到公司和同事。
同样的警告也应该出现在向电话上的陌生人提供信息的时候,无论这个人怎样花言巧语地介绍自己,也不管他在公司中有何地位和资历,在确认呼叫者的身份之前,绝对不能向他提供任何非公共信息。如果严格遵守了这一规定,这个故事中的社会工程学骗局就不会成功,联邦囚犯康多尔夫也无法和他的搭档乔尼商讨新的骗局。
我在这本书中反复强调了一点:验证,验证,还是验证。在没有确认请求者的身份之前,不能响应他的任何请求——就这样。
正在清理
对于没有安全警卫昼夜值班的公司而言,如何阻止攻击者在下班以后“拜访”办公室?清洁工会像往常一样对待似乎是公司员工的任何人,毕竟,那些人可以找他们的麻烦或解雇他们。因此,不管清洁队是公司内部的还是从外部中介机构签约的,都必须接受物理安全事件培训。
清洁工作当然不会需要大学文凭,也不需要英语能力和常规训练,只要知道一些非安全的东西比如怎样使用清洁产品进行不同的作业就可以了。“如果有人想在下班时间进来,你要查看他们公司证件,然后打电话到清洁公司办公室解释情况,等待批准。”一般这些人是不会收到这样的指令的。
一家机构应该在发生这种情况之前有所防范并以此来培训员工。在我的个人经验里,我发现大多数(而不是全部)的私营商业部门在物理安全方面非常松懈。你可以用另一种方式解决问题,把责任交给你的公司员工。没有24小时警卫服务的公司应当告诉它的员工,如果要下班后进入公司,就带上他们自己的钥匙或电子访问卡,能否进入不能让清洁工来决定。然后要求清洁公司培训他们的员工,在工作的时候不放任何人进来,这是个简单的规定:不要为任何人开门。适当的话,可以把它作为条款写在与清洁公司的合约里。
同样,清洁队应当接受识别蒙混过关者(跟随合法员工通过安全入口的人)的培训,不允许其他人(就算那个人看上去是一名员工)跟随他们进入大楼。
偶尔(比如,一年三到四次)也要更进一步安排渗透测试或攻击评估,在清洁队工作的时候让某个人站在门外尝试进入大楼。你可以聘请专业公司的人员进行渗透测试,这比用你自己的员工要好。
传递它:保护你的密码
越来越多的机构更加重视通过技术手段加强安全策略了——比如,对操作系统进行配置,强化密码策略,限制非法登陆尝试(超过一定次数则锁定账户)。事实上,Microsoft Windows商业平台一般都包含有这些功能。尽管如此,繁琐的操作还是很容易给用户带来烦恼,这些产品的安全功能通常都被关闭了。真实情况是软件厂商把产品的安全功能默认设置为关闭了,正确的做法应该恰恰相反。(我猜他们很快就会明白了。)
当然,公司的安全策略应当规定系统管理员在所有可能的情况下通过技术手段强化安全策略,达到不过分依赖人为操作的目的。你可以轻易地限制特殊账户的连续无效登陆尝试次数,这样,攻击者的生活显然变得更困难了。
所有的机构都面临着高度安全和员工生产力之间的平衡问题,这导致了一些员工无视安全策略,不接受保护公司敏感信息的最基本的安全措施。
如果一家公司的策略中留有未标明的地方,员工可能会按照最低标准执行,这样会很方便并让他们的工作变得轻松,一些员工会拒绝变动并公然地漠视好的安全习惯。你可能会遇到这样的一个员工,他遵守了关于密码长度和复杂性的规定,但是又把密码写在便签上,然后贴在他的显示器上。
保护你的公司安全的至关重要的一部分是,使用高强度的密码,在技术上与合理的安全配置结合起来。
对密码策略的详细讨论,请看第16章。
第十二章 攻击新进员工
正如这里的许多故事讲述的那样,在机构中处于低层的员工常常成为熟练的社会工程师选择的目标。攻击者可以轻易地从这些人手里得到表面上无害的信息,从而进一步获取更多敏感的公司信息。
攻击者选择新进员工的原因是他们不知道公司的特殊信息的价值或某种行为可能带来的后果,同样,他们也容易受到常用的社会工程学攻击的影响——动用了权威的呼叫者,似乎很友好很可爱,认识公司里受害者也认识的某个人,攻击者声称的很紧急的请求,或者其它能获得受害者好感(或认同感)的方法。
接下来有一些针对低层员工的攻击案例。
提供帮助的安全警卫
骗子希望能找到贪婪的人,因为他们是唯一可能陷入行骗游戏中的人。社会工程师(当他们瞄准了清洁队的成员或安全警卫之类的人时)希望能找到和善、友好、信任他人的人,他们是唯一最有可能提供帮助的人。这正是攻击者在下面的故事里所寻求的。
艾里特的观点
日期/时间:1998年二月的一个星期二,凌晨3:26
地点:新罕布什尔州纳舒厄Marchand微系统公司
艾里特·斯泰雷(Elliot Staley)知道他不应该在上班时间离开岗位,但现在是半夜,我的老天爷,自从值班以来他一个人影都没看到,并且正好快到巡视的时间了,电话上的这个可怜的人似乎真的需要帮助,他们很乐意帮别人做一些事情。
比尔的故事
比尔·快乐摇摆(Bill Goodrock)有一个简单的目标,一个从他十二岁以来就没变过的目标:二十四岁就退休,不用他的信托基金里的一分钱。
他告诉他的父亲,无情的、万能的银行家,他可以靠自己一个人成功。
然后过了两年,很明显他没有在二十四个月里成为杰出的商人,并且也没有成为精明的投资者,当然也没有发财。他曾经很想知道怎样持枪抢劫银行,但那只是小说中的素材——实在是太冒险了。所以他的白日梦就成了像瑞夫金那样——对银行实施电子抢劫。上一次比尔和家人一起去欧洲的时候,他打开过一个有100法郎的摩纳哥银行帐户,尽管里面只有100法郎,但他有一个计划可以轻易地使这个数字达到七位,甚至是八位,如果运气好的话。
比尔的女朋友安玛丽在波士顿一家大银行的并购部门工作,有一天,她要参加一次漫长的会议,比尔只好在她的办公室里等她,出于好奇心,他把他的便携式电脑插入了会议室的以太网端口,是的!——他连上了他们的内部网络,从银行网络的内部……也就是说在公司防火墙的后面,这让他有了一个主意。
他的一个同班同学认识一个叫做朱莉亚的年轻女士,一个才华横溢的计算机科学博士,目前正在Marchand微系统实习。朱莉亚似乎是个不错的内部信息来源,比尔要开始施展自己的才华了。他们对她说他们正在写一个电影的剧本,她居然相信了,她认为和他们一起编故事很好玩,然后告诉他们怎样实现他们描述的那些事情,这个想法实在是太有才了,事实上,她还一直缠着他们,她也想出现在影片的致谢名单上。
他们警告说电影剧本的创意经常被偷,所以她发了誓绝不告诉任何人。
经过朱莉亚细心的指导之后,比尔要独自进入危险的部分了,他相信自己肯定能成功。
我下午打电话去的时候了解到晚上的安全主管是个叫以赛亚书·亚当斯(Isaiah Adams)的人,于是我在那天晚上9:30打去电话,和安全部门的警卫交谈起来。我的故事显得很急促,听上去我还有些惊慌失措。“我的车子出毛病了,现在不能来公司,”我说,“我居然碰到了这样的事情,现在我很需要你的帮助,我想打给安全主管以赛亚书,但是他不在家,你能不能帮我一个忙?万分感谢!”
这家大型公司的每一个房间都有一个邮寄地址编码,所以我告诉他计算机实验室的编码并询问他是否知道在哪里,他说去那里要花一些时间,然后我说我会打到实验室的,很抱歉我使用了我能用的唯一的电话线路,我要用它来拨入网络尝试解决问题。
当他到达那里的时候,我打去电话告诉他哪里可以找到我感兴趣的那个控制台,上面标着“elmer”字样的主机——朱莉亚说这台主机是用于创建对外销售的操作系统正式版的。当他说他找到了的时候,我更加确定朱莉亚给我们提供了正确的信息,我的心扑通扑通直跳,我要他按几次回车,然后他说屏幕显示#号,这说明这台计算机已经用root用户(拥有所有系统权限的超级用户)登录了。他打字的时候要看着键盘,所以当我把要输入的下一个命令告诉他时,他费了好大力气才输入完成,非常谨慎:
echo 'fix:x:0:0::/:/bin/sh' 》》 /etc/passwd
最终他输入的很正确,现在我们有了一个名为fix的帐户,然后我要他输入:
echo 'fix: :10300:0:0' 55 /etc/shadow
这是在设置密码,两个冒号之间什么都没有意味着密码为空,这两个命令把fix帐户用空密码添加到了密码文件中,这个帐户拥有和超级用户一样的权限。
下一步我让他输入了一个递归目录的命令,打印出一长串文件名列表,然后我要他把那张纸扯出来,带回警卫室,因为“等一下我可能会需要你从那上面为我读一些东西。”
最美妙的是他根本就不知道自己创建了一个新帐户,我让他把文件名的目录列表打印出来,因为我需要确认他之前输入的这些命令和他一起离开了计算机室,这样系统管理员或工作人员第二天早上就不会发现这里出现了一个安全漏洞。
现在我有了一个帐户,一个密码,和完整的权限,接近半夜的时候我拨入了主机,然后按照朱莉亚“给剧本”的指示,一眨眼的功夫我就进入了一个包含这家公司新版操作系统源代码的开发主机。
我上传了一个朱莉亚写的补丁,她说这修改了操作系统库中的一个程序,可以生成一个隐蔽的后门用于远程访问系统。
注释:
这里使用的后门并没有修改操作系统的登录程序,而是一个包含有登录程序使用的动态库的秘密入口。在常见的攻击中,电脑入侵者经常替换或修补登录程序自身,但是精明的系统管理员还是可以通过比较版本标记(就像CD一样)或其它方法察觉出来。
我小心地遵循着她写给我的指示,首先安装补丁,然后设法移除fix帐户并删去日志中的所有记录,这样就消除了我活动的痕迹,非常有效。
不久这家公司就开始把这个新的操作系统提供给他们的客户:全球的金融机构。他们送出的每一份拷贝都包含有我之前放入开发主?