2.1.3 像社会工程人员一样思考

拥有几百兆的图片和数据固然很好,但是当你回过头来浏览这些信息时,如何能够保证最大限度地挑出有用的信息呢?

当然,你可以打开浏览器,随机输入冗长的词语进行关键词搜索,这样做可以找到某种形式的信息,其中一些甚至是有用的。然而,在肚子很饿的情况下,你才不会跑到厨房,不管三七二十一地往锅里随便扔食材,然后就开始翻炒呢。计划、准备并考虑各种会影响菜肴好坏的因素才可能烹饪出佳肴。同理,社会工程人员也要做好计划和安排,想好将要收集的信息和收集的方式才可能成功。

信息收集的关键一步是要转换自己的思维方式。在信息大爆炸的世界,我们必须改变平常的思维方式,学会质疑一切,看到信息时就按照社会工程人员的思维方式来思考。利用网络等方式进行搜索的方式要改变,对于网页上返回的信息,也要学会从社会工程的角度去思考、审视。无意中听到的谈话、论坛上看似无聊的帖子,抑或是一袋垃圾,都应该以不同的方式来对待。我的导师马蒂看到程序崩溃就异常兴奋。为什么?他是渗透测试员,同时也是漏洞编写人员,崩溃是找到软件漏洞的第一步。因此,当遇到程序崩溃时,他感到异常兴奋,而不是为数据丢失而烦躁焦虑。作为社会工程人员,也必须要对信息抱有同样的态度。每当发现目标人物使用多个社交网站时,便将它们之间的联系和信息数据收集起来综合分析,争取得到完整的目标人员档案。

举个例子来说,有一次我要去遥远的另一个州办事,便租了一辆车。我和同事将行李统统装到了后备箱。我们刚要上车,就发现后座上有一小袋垃圾。同事说:“如今的服务真差,我们付钱租车,他们至少应该将车子打扫干净吧。”

诚然,大家都希望车子里是干干净净的,同伴想把它扔到旁边的垃圾桶里,我阻止了他,说道:“让我看看那个袋子。”我打开袋子,拨开里面的快餐纸袋以后,映入眼帘的物品让我大吃一惊——里面是半张撕碎的支票。我赶紧倒空袋子,从里面找到一张银行收据还有另外半张支票。这是一张面值几千美元的支票,虽然被撕开了,但撕得不是很碎,仅撕成了四大块,然后被扔到装有快餐纸袋的垃圾袋中。将这几片拼接到一起,可以看到这张支票的所有者的姓名、公司名称、地址、电话号码、银行账号及银行流水单号。再加上这张银行收据,我可以清楚地知道他的存款数字。他应该感到庆幸,我不是心存歹念的人,要不然只要再多几步,我就可以从他的账号中窃取存款。

这个故事向我们展示了人们是如何看待自己的重要信息的。这个家伙在我之前租了这辆车,他可能以为将支票撕碎扔掉就安全了,或者说至少当时他是这样认为的。无独有偶,通过www.social-engineer.org/wiki/archives/BlogPosts/LookWhatIFound.html,你可以看到最近发生的这样的故事:有人将非常贵重的物品随意扔掉,或者在旧货市场上廉价出售。

其中包括:

  • 一幅被博物馆以120万美元收购的油画;
  • 一辆1937年生产的、仅跑了24 000英里的型号为57S Atalante的布加迪跑车1,这辆车最终以300万美元出售;
  • 《独立宣言》珍本。

1 布加迪公司在过去70多年时间里仅生产了3辆Atalante原型车,其中只有2辆存世至今,而57S型Atalante轿车在后来的限量生产试验中也仅生产了17辆。目前为止有4辆被保存在法国乡村的博物馆里,该车留存数量极少,找到的这辆57S Atalante布加迪跑车已经消失了半个世纪之久。——译者注

如果人们能把《独立宣言》珍本随同一张油画扔掉,那么丢掉账单、医疗记录、旧发票或者信用卡账单又有什么大不了的。

懂得如何在公共场所和人打交道会产生令人意想不到的效果。接下来将讲述我对一家公司进行安全审计的经历。在审查之前,需要收集一些数据。下面就让我们看看,如何利用那些看似无用的信息找到突破口。

对于被审计公司的一位高管,我仅仅跟踪其一两天,便发现了他每天早上同一时间都会去当地一家咖啡馆喝咖啡。在发现他的这一习惯后,我便计划了一场“偶遇”。他一般早上7:30到咖啡店,每次会坐半小时到35分钟的样子,看看报纸,喝一杯中杯拿铁。在他进店3~5分钟后,我也进到店里,点了相同的咖啡,坐到他旁边的位子上。我看到他放在一旁已经看完的报纸,便向他借阅。路上我已经读过了这份报纸,知道第3页上有一篇关于附近一起谋杀案的报道。我装作刚看到这则消息一样,大声说道:“在这么小的一个镇子里,怎么会有如此骇人的事情发生,太可怕了!你是不是也住在这附近啊?”

此时此刻,有两种可能:一是他根本不理我,二是我的肢体语言、说话的语调和表现会让他感到放松。事态的发展证明是第二种情况,我成功了。他答道:“是啊,几年前我因为工作搬到这里。我喜欢小城镇,但正如你所说,这种可怕的事情越来越多。”

我接着说道:“我只是途经这里。我的工作是给大公司提供高品质的咨询服务,我经常在不同的小城镇之间跑来跑去。不过最近这种事情越来越多了,就连乡下也是如此。”之后,我用一种调侃的语气问道:“你不会碰巧是一个需要咨询服务的大公司的领导吧?”

他笑了起来,感觉我刚刚的话是在质疑他的高贵身份一般,说道:“我是XYZ公司的财务副总,不过我不负责那个部门。”

“嘿,我又不是在向你推销产品,喝咖啡而已。不过,不知你明天或者周三有没有空?我可以顺便访问贵公司并为你提供一些信息。”

从这里开始,故事变得有趣了。他说:“我很想应约,但是周三我必须要出去度假。要不你给我发份邮件,我回头给你电话。”并随手递上了他的名片。

“我猜想应该是去和煦而明媚的地方吧?”我问道,心想快达到目的了,是时候结束此次谈话了。

“和我妻子一起乘游艇去南方。”我想他是不会告诉我目的地的,不过这也没关系。我们握了握手,便分道扬镳了。

他会很快忘记我吗?也许吧。不过,我已经得到一些颇有价值的信息了:

  • 他的直拨电话号码
  • 他出发去度假的日期
  • 度假的类型
  • 他住在本地
  • 他公司的名称
  • 他在公司的头衔
  • 他是近期搬过来的

当然,其中一些信息在我前期信息收集时就知道了,但是这次会面让我得到了更多信息。现在可以开始我的下一步攻击了,在他去度假的翌日,我拨通了他公司的直线电话,前台告诉我:“对不起,史密斯先生度假去了,请问需要留言吗?”

太好了。信息的真实性已被证实,我要开始计划的最后一步了。我穿上西装,带着价值9美元的名片来到他的公司。进去登记好之后,我告诉前台自己和史密斯先生约定10点钟会面。她答道:“史密斯先生在度假,你确定是今天吗?”

使用我的微表情技术(第5章会讨论到),我故作惊讶地问道:“什么?他的海上航游是在这周?我以为他下周才出发。”

刚刚的这句相当关键。为什么?

我想让前台相信我,相信这个会面是真实的。在我提到海上航游时,说明我和史密斯先生有过亲密的交谈,甚至于知道他的旅行计划。我流露出的无助和失落引发秘书想帮助我的冲动:“哦,亲爱的,真的很抱歉,要不我给他的助手打个电话吧?”

“哦,不。”我答道,“我只是想给他带来一些信息。这样吧,我把消息给你,在他回来时,你帮忙转告他。真的是太尴尬了,你可以不告诉他我来过吗?”

“我会保守秘密的。”

“谢谢你。真想快点离开这里,不过在我离开之前,可以用一下这里的洗手间吗?”通常情况下这种要求应该是不被允许的,但是借着刚才融洽的对话、我的无助以及她对我的一点同情,我还是有一些机会的——而且我确实成功了。

我把一个信封放在了洗手间的一个隔间里。信封上贴着“私人”的标签,信封里面是一个带有恶意攻击病毒的U盘。不仅是这里,我在大厅走廊旁的休息间里也放了一个,以增加成功的概率。希望有人会发现当中的一个,并好奇地将U盘插到他们的电脑里。

值得庆幸的是,这种方法百试不爽。可怕的是,如果没有那次咖啡店里看似无足轻重的对话,这次攻击不可能成功。

这个故事不仅是要说明微小的数据也会导致入侵事件,同时也展示了搜集数据的技巧。对待各种数据源必须充分理解、认真测试,直到你能熟练掌握每一种数据源及其收集方法。数据源有很多种,优秀的社会工程人员必须花费一定的时间来了解每一种的优缺点,以及利用它们的最佳方法。这也是下一节要讨论的内容。

目录