词条 | 社会工程学 |
释义 | § 简介 总体上来说,社会工程学就是使人们顺从你的意愿、满足你的欲望的一门艺术与学问。它并不单纯是一种控制意志的途径,但它不能帮助你掌握人们在非正常意识以外的行为,且学习与运用这门学问一点也不容易。 它同样也蕴涵了各式各样的灵活的构思与变化着的因素。无论任何时候,在需要套取到所需要的信息之前,社会工程学的实施者都必须:掌握大量的相关知识基础、花时间去从事资料的收集与进行必要的如交谈性质的沟通行为。与以往的的入侵行为相类似,社会工程学在实施以前都是要完成很多相关的准备工作的,这些工作甚至要比其本身还要更为繁重。 你也许会认为我们现在的论点只是集中在证明“怎样利用这种技术也能进行入侵行为”的一个突破口上。好了,其实这样够公平的了。无论怎么说,“知道这些方法是如何运用的”也是唯一能防范和抵御这类型的入侵攻击的手段了。从这些技术中提取而得出的知识可以帮助你或者你的机构预防这类型的攻击。在出现社会工程学攻击这类型攻击的情况下,像CERT发放的、略带少量相关信息的警告是毫无意义的。它们通常都将简单地归结于:“有的人通过‘假装某些东西是真的’的方式去尝试访问你的系统。不要让他们得逞。”然而,这样的现象却常有发生。 那又如何呢? 社会工程学定位在计算机信息安全工作链路的一个最脆弱的环节上。我们经常讲:最安全的计算机就是已经拔去了插头(注释:网络接口)的那一台(注释:“物理隔离”)。真实上,你可以去说服某人(注释:使用者)把这台非正常工作状态下的、容易受到攻击的(注释:有漏洞的)机器接上插头(注释:连上网络)并启动(注释:提供日常的服务)。 也可以看出,“人”这个环节在整个安全体系中是非常重要的。这不像地球上的计算机系统,不依赖他人手动干预(注释:人有自己的主观思维)。由此意味着这一点信息安全的脆弱性是普遍存在的,它不会因为系统平台、软件、网络又或者是设备的年龄等因素不相同而有所差异。 无论是在物理上还是在虚拟的电子信息上,任何一个可以访问系统某个部分(注释:某种服务)的人都有可能构成潜在的安全风险与威胁。任何细微的信息都可能会被社会工程学使用者用着“补给资料”来运用,使其得到其它的信息。这意味着没有把“人”(注释:这里指的是使用者/管理人员等的参与者)这个因素放进企业安全管理策略中去的话将会构成一个很大的安全“裂缝”。 一个大问题? 安全专家常常会不经意地把安全的观念讲得非常的含糊,这样会导致信息安全上的不牢固性。在这样的情况下社会工程学就是导致不安全的根本之一了。我们不应该模糊人类使用计算机或者影响计算机系统运作这个事实,原因我在之前已经声明过了,地球上的计算机系统不可能没有“人”这个因素的。几乎每个人都有途径去尝试进行社会工程学“攻击”的,唯一的不同之处在于使用这些途径时的技巧高低而已。 方法 试图驱使某人遵循你的意愿去完成你想要完成的任务是可以有很多种方法的。第一种方法也是最简单明了的方法,就是目标个体被问到要完成你的目的时给予其一个直接的“指引”了。毫无疑问这是最容易成功的,也是最简单与最直观的方法了。当然,被指引的个体也会清楚地知道你想他们干些什么。 第二种就是为某个个体度身订造一个人为的(注释:通过捏造的手段)特定情形/环境。这种方法比你仅仅需要考虑到了某个个体的相关信息状况附带更多的因素,例如如何说服你的对象,你可以设定(注释:刻意安排)某个理由/动机去迫使其为你完成某个非其本身意愿的行为结果。这包括了远至于为某个特定的个体创造一个有说服力的企图而进行的工作,与大量你想得到的“目标”的相关知识。这意味着那些特定的情况/环境必须建立在客观事实的基础上。少量的谎言会使效果更好一些。 社会工程学中最精炼的手段之一就是针对现实事物的良好记忆能力。在这个问题上黑客与系统管理员会更为侧重一点,特别是在某种事物与他们的领域有所关联的情况下。为了说明上述的方法,我准备列举一个小型的范例....... [范例如下,当你把某个个体“置于”群体/社会压力(注释:其类型如舆论压力等)下的处境/形势时,个体很有可能会做出符合群体决定的行为,尽管这个决定很明显是错误的。] 一致性 若在某些情况下有人坚信他们群体的决定是对的话,那么这将有可能导致他们做出不同于往常的判断/行为。比方说如果我曾发表过某个结论,论点的理由非常充分(注释:这里指的是符合群体中多数人的意愿),那么往后无论我花多大的精力去尝试说服他们,都不可能令他们再改变自己的决定了。 另外,一个群体是由不同位置/层次的成员组成的。这个位置/层次问题被心理学者称之为“demand charac-teristics”(注释:“意愿的特征性”),这个位置/层次问题在参与者的行为上受其浓厚的社会约束性所影响。不希望得罪其他的成员的、不想被其他人看出自己在会议中想睡觉的、不想破坏与自身关系良好的伙伴的观点等的心态最终都会成为“随波逐流”现象的形成因素。这种运用到特征的处理方式是引导人们行为的一种有效途径。 情形 无论怎么说,大多数的社会工程学行为都是被一些单独的个体所运用的,因此诸如社会压力与其它的一些影响因素都必须建立在和目标有一定的可信关系的情况下进行的。 如果处于这样的情形下,当有了真实或者虚构出来的固有特征时目标个体就很可能会遵循你的意愿而工作了。这些固有特征包括: ·目标个体以外的压力问题。如让个体相信某个行为的后果并不是他一个人的责任。 ·借助机会去迎合某人。这些行为更多取决于此个体是否认为某个决定能为某人带来“好处”。这样的行为可以使你与老板的关系更为融洽。 ·道德上的责任。个体会遵从你是因为他们觉得自己(注释:在道德上)有义务这么做。这就是利用了内疚感。人们比较愿意逃避内疚感,因此如果有一个“可能”会让他们觉得有内疚感的话他们都会尽可能地去避免这个“可能”。 个人的说服力 个人的声望/说服能力是一种常被用于促使某人配合/顺从你的有利手段。使用个人说服力的目的并不是要别人强行接受你所指派的“任务”,而是增强他们对完成你所指派的任务的主动顺从意识。 其实这是有些矛盾的。基本上,目标只是被我们简单地引导到一个已经设置好的、特定的(注释:故意安排的)思维模式上去。目标会认为他们可以控制住局面,在此同时他们也通过他们的力量帮助了你。 事实上,目标所得到的利益与他间接帮助你得到的利益此两者是没有冲突的。社会工程学使用者的目的是说服目标,使其有充分的理由去相信只需花费小量的时间与精力就可以“换取”得到利益了。 合作 存在着多个因素可以促使一个社会工程学使用者增加与目标“合作”的机会。 尽量少与目标发生冲突。使用平和的态度去面对对方可以提高达成目的成功几率。拉拢关系或者发展新的关系,共同的烦恼又或者是一些比较特殊的任务都可以有效地迫使目标与你合作。 在这里‘走向成功’的因素往往集中在你是否有能力去掌握与处理好你的说服力。这是非常重要的,这一点常被“骗子”(注释:常常使用欺骗手段的人)认为是万试万灵的手段。心理学研究指出如果人们先前曾经遵照过某个极小的指引而工作(注释:并获得成功)时现在他/她就更可能会去遵照一个更大的(注释:指引)了。在这里如果曾有过合作的前科的话,那么这次再合作,达成的机会就很大了。 更好的方法是让社会工程学者给予合作对象一些比较敏感的信息。尤其是一些非常逼真的视听感观,目标能够现场看到或听到你给他们的信息要比他们仅仅可以通过电话听到你的声音更能??或电子方式进行交流的信息是很难让人信服的。这就如同拒绝某人进行某个IRC风格的通信一样。 关联 不管怎么说,社会工程学运用是否能成功也有取决于目标个体与你的目的有多大关联的因素的。我们可以说系统管理员、计算机安全执行官、技术研究人员、那些依靠计算机/网络进行工作又或者通过其进行通信的人与大多数黑客使用社会工程学进行攻击的目标都是有莫大的关联的。 有高度关联性的个体大多会被强而有利的论据所说服。事实上你可以给予他们更多强而有利的论据来支持你的观点。当然,那些观点也有薄弱的一面。你是否将论点薄弱的一面展现给有高度关联的人知道将极大可能地决定你是否能说服此人。当某人有可能直接被社会工程学攻击所影响,若此时出现薄弱的论据将有可能会导致其思想上产生“相反”的意识。所以面对与你的目的有关联的人时你必须给予强而有力的论据,而避免出现理由薄弱的论据。 相对于对你的指引或你想得到的结果并不敢兴趣的人,你可以把他们列入“低关联的人”这个类别中去。相关的例子如:一个网络系统机构中的保安人员、清洁工人、又或者是前台接待小姐等。因为低关联类别的个体并不会直接对你的目的/结果造成影响,而且他们往往不会去分析你用来说服他们的论点的双面性问题。他们的决策往往会遵循你的意愿又或者是完全不受其它的“意识”所影响。这些的“意识”如:社会工程学所提供的理由、表面形势上的迫急性又或者是在某人强烈的说服下。凭经验而论,在这样的情况下我们只能尽可能地给予其更多的论据与理由了,估计这样的效果会更好一些。基本上,对于那些与你的意识不一致的人,试图用大量的论据和指引去说服他们更胜于他们与你的目的的关联程度。 有一点是需要注意的:在进行某些工作的时候,能力低的个体更多会去仿效能力高的个体的行为模式。在计算机系统管理方面,“能力低的个体”大多是指上文所提到的“低关联的人”。站在上述的观点上考虑,不要试图对系统管理员这类别的个体进行社会工程学攻击,除非其能力不及你,不过这样的可能性非常的低。 防御他人的攻击 综合上述的资料能否让读者更好地保障他们整个计算机系统的安全呢?其实踏出“美好的”第一步就是要视乎员工们能否在自己的工作岗位上保障自己的计算机系统的信息安全。这不但需要你无条件地增强他们的安全防范意识,而且你自身也必须具备更高的警惕性。打个比方,如果你让某人专门负责保护你的计算机系统安全的话,那么就有便利于那个人在没有正常许可的情况下访问你系统的可能了。 无论如何,对付与防御这类型攻击的最有效手段,也作为最常见的手段,就是“教育/培训”了。第一步是教育你的雇员与那些有可能被利用作为社会工程学实施目标的人关于计算机/信息安全的重要性。直接给予容易攻击的人们一些预先的警告已经足以让他们去辨认社会工程攻击了。不过要记着,在教育他们计算机信息安全的时候可以使用一些故事及其“双面性”来作为例子。这并不是我自己的个人喜好哦。当个体明白了这个焦点的“双面性”以后他们基本上就不会动摇他们所处的立场了。而且如果他们是专注于计算机安全技术的话,那么他们更有可能会站在维护你的数据安全的立场上。 也有不会遵从人们的说服力倾向而作出行动的思维因素的。在这里你必须有清晰的思维、高度的创造力、可以应付和处理压力的能力与适当的自信。压力的处理能力与自信可以通过后天培养。至于自身的主张和见解常常被用于对员工的管理方面,训练它可以减少某些个体被施行社会工程学攻击的机会,也有助于其他方面的工作。 了解各种使人们的信息安全意识降低与威胁你的安全策略的因素。其实这方面只需要投入小量的精力就可以在降低安全风险方面产生很大的成效了。 结论 与普遍的思想观念相反,运用社会工程学捕捉人们的心理状态的技巧要比入侵一个sendmail容易得多。但如果你想让你的员工去预防与检测社会工程学攻击的话,其效果绝对不会比你让他们去维护UNIX系统安全的效果明显。 站在系统管理员的立场上,不要让“人之间的关系”问题介入你的信息安全链路之中,以至于让你的努力前功尽弃。站在黑客的立场上呢,当系统管理员的“工作链”上存放有你所需要的数据时,千万不要让他“摆脱”自身的脆弱环节。 § 社会工程学入侵三部曲 大家一定知道超级黑客凯文·米特尼克吧,深为他的社会工程学所折服,美国国防部、五角大楼、中央情报局、北美防空系统……都是他闲庭信步的地方,没有人怀疑他的真实身份,对于他所想获得的信息如鱼得水,这便是社会工程学的魅力。当然,社会工程学不是那么困难难以撑握,本文分为社会工程学—信息刺探、社会工程学—心理学的应用、社会工程学—反查技术等三部曲使大家走入社会工程学的神秘世界。 社会工程学师一般都干了什么呢?恐怕小菜们一定很想知道,是的,他们的目标或许是你的银行账户、私人信息、或是对企业拿取一份商业秘密。不管如何,他们总会设法找到一个切入点,哪怕只需要你的一个名字,他就能越过你所装的最好的防火墙或是杀毒软件,听上去有点恐怖,但事实如此,如果他们开始精心设计一个的陷阱,一切皆有可能。 前言 在前几期的>有介绍过一些社会工程学的技巧,但是,那是狭义的社会工程学,有的是与社会工程学没有关系,比如利用dirshell扫描出大量的数据库,一旦其中存在Email与QQ,便利用其密码尝试,运气好便可成功获得真实密码,事实上这与心理学有关系,一般而言,18岁以下的人所拥有的密码为1~2个,其它为1~3个。为什么会出现这样的呢?大部分人凡事讲究方便自已,自信自已的信息一直处于安全状态。小菜们一定看到,狭义的社会工程学给人的是不可信的。广义的社会工程学是怎样的呢?说白了便是空手套白狼。它要求的是你不仅知道目标的计算机信息,且必须通过信息收集了解目标弱点,即规则弱点、人为弱点,然后开始构造精心的陷阱让目标交出攻击者所想要的信息。 这里说明一些社会工程学的误区,有的并不能称之为社会工程学,有的小菜别被误导了。比如为了使用findpass找在线管理员的密码,而shutdown掉服务器,迫使管理员登录。请记着,这并不能称之为社会工程学,而是一种蠢方法,虽然shutdown了服务器,你能知晓管理员在线?明天或是后天,你有精力不停的等待么?菜鸟要知晓的是,社会工程学前提是离不开信息刺探,我们更好的方法是便是从筛选的信息将目标一步步引导入自已的控制范围。 不可否认,社会工程学与生活的相关事物存在共通性,比如社交、商业、交易等都能看到社会工程学部分的影子,然而人们无法感觉。即使计算机与Internet相隔,配备高级入侵监测系统,而且也是专家人物维护,但不可忽视的是:每个人,都有弱点!而社会工程学师不但能善用这种弱点为他们服务,更危险的是,这种稍闪即逝的入侵难以察觉。这一部分简而言之使小菜明白狭义的社会工程学与广义的社会工程学的区别。下面将走进的第一部分便是信息刺探…… 第一部分:社会工程学—信息刺探 一、善用你身边的信息 尽量利用现有所知道的信息,这些信息将能处理好突发事件,此类信息指的是规章、制度、方法、约定。规章,指的是一个行业的规章,我们可以认为是行规,或是内部约定,比如,货摊A为了抢掉货摊B的生意,故意低压低价格来龚断是不对,违反了不正当经营法了。 所以我们要尽量了解各行各业的之间的此类信息,比如校园,只有领导层内的人员才会拥有一份全校的师生的联系名单,服务行业通常有这样和那样的内部约定,了解此类信息对我们非常有利。 除了我们必须知道那些方法外,还需要的是业内术语。看到这儿,小菜一定会问什么是术语了,它主要有什么用?嗯,业内术语即不同行业之间的”黑话”,比如,我们黑客界的网络钓鱼术语,一般人会认为是到网上去钓鱼。当然,业内术语用处大着了,社会工程学的身份都是经常变换的,假设我们要冒充银行业务员,就必须知道一些压缩贷款、反担保、关联企业……等等一些术语,否则当我们试图拨通一个分行经理的电话,他们就会出现激警,即经理发现你的攻击行为,由此可见术语的重要性。 所以在一个攻击的起始,我们得做一些准备,假设我们的目标是一个数据恢复的企业,我们可以去买一本关于数据恢复的书,熟悉一些术语的概念。顺便伪装成一个访客看看一些员工办室墙上或是桌上的规章制度,如果去他们的垃圾处理场所,总会有一堆废纸什么的,但这里面包含了重要的信息,我们可以称之为垃圾的价值,比如会有一些客户书,员工身份号联系等。现在,小菜们一定明白,任何的信息都有利用的价值。 二、学习侦探的伪装 假设我们获取了目标部分信息,但必须通过对话得到更加敏感的信息,我们不可能直接让对方发现吧,所以我们得先完成身份的伪装。假设一个小菜的目标是某电器分行的销售部,那么我们最好伪装成另一分行的销售人员,而且我们知晓他们公司内部的销售术语,或我们再带一份分行销售报告书,我想对方一定不会怀疑你不是内部人员的。 任何的社会工程学师都会使人认为他是可信任的,友好的,有礼貌的,然而,这都是他们伪装出来的假象。如果要表现出文质彬彬,这会要求我们行为与语气上伪装。社会工程学师有一点比侦探更妙的地方是不需要去往自已嘴上贴胡子,哈哈。所以说,如果小菜想让MM喜欢的话,不妨去模仿她心目中的男孩。 再谈一下伪装的要点,任何情况不不要泄露自身的真实信息。或许我们会碰到一些意外事件,所以,在开始准备的时候,带上一张没有多少余额的手机,用完后就别再用了,这样可免遭怀疑。还有比如通讯账号QQ,永别使用自已的QQ,最好为自已准备一个信封,目标信息拿到后,将对方拖入黑名单。 三、人性的弱点 每个人都有心理弱点,没有人永远没有心理弱点。可以说,此部分是社会工程学重要的部分,他们能够利用人们的信任、乐于助人的愿望和同情心使你上当。那么,我们应该怎样去发现这类弱点呢?很简单,我们只要构造一个精心的问题,冒称他们的同事,设计一个帮助他们解决一个问题,那么,对方便会信任我们了,我们会更轻松获得想要的信息,而且更不容被发现。菜鸟们一定经常有很多问题吧,但他们总是茫目的去找一个人帮助,或是想认一个师父,我有个这样的经验,一个晚上我收了50个徒弟,然而只是开了一个玩笑,我的方法很简单,直接在Google搜索:本人找师父,或在qihoo搜索:找师父。然后帮助他们解决一个问题,两三句话便获取了他们的信任,有的还打算花钱请我,但我告诉他,只是开了一个玩笑,这个实例利用了他们对帮助的人信任。此部分最具危害性,所以我进行分开来讲,请参照社会工程学--心理学应用。 四、组织信息 构造陷阱 假设现在我们通过目标的同事撑握了信息,比如目标的真实姓名、联系方式、作休时间…等等。这还不够的,高明的社会工程学师会把前前后后的信息进行组织、归类、筛选。以构造精心准备的陷阱,这样,可使目标自行走入。我打个比方吧,声明哦,这是我朋友的一个案例, A:你现在打不开论坛对吗? B:是的,打开是一片空白 A:那是由于身份认证错误,我是XX论坛管理员,你要把论坛的用户名与密码发送到XX@263.com,以免系统稍后会恢复你的访问。 B:现在吗? A:是的,我得马上给你恢复,不然我作废账户了。 不一会儿,朋友很顺利得到他在某论论的VIP账户,论坛为什么打不开了,被DDOS了,从这个例子我们可以看出组织信息的重要性,如果B能正确回答第一个问题,A可能会考虑换种方式,这个案例非常的简单,那就是B对计算机方面不了解,害怕账户丢失,一点也不怀疑A就给了密码,而这个密码已乎通用了,所以现在小菜明白前辈们总告诉你不要使用同一个密码,永别把密码告诉第三者。 第二部分:社会工程学—心理学的应用 从前面所说,我们知道人性的弱点在社会工程学中是重要的一部分,实际上,这是一种心理学的应用,是社会工程学的一个分支,本文从心理学角度分析社会工程学师凯文.米特尼克所著《欺骗的艺术》三个典型攻击案例,为大家揭开心理学在社会工程学中的应用。为节省篇幅,我不打算将案例拷贝过来,所以请参照光盘附带的《欺骗的艺术》文档进行阅读。 信誉支票 攻击者需要从国家银行查询一个用户的交易记录,然而,银行不可能答应这样的要求,所以攻击者开始他的动作。第一个电话,攻击者拨通了国家银行的电话,以私人问题顺利从吉姆.安德鲁斯获知内部专业术语。第二个电话,攻击者以信誉支票的客服代表拨通银行开户处,以调查方式获取了他想要的信息。第三个电话,攻击者以国家银行职员拨通信誉支票处,最终知道目标的用户的账户交易记录。以下标有双引号的文字,均为引用凯文.米特尼克的分析与总结。 "我给银行打电话时,第一位年轻的小姐,吉姆,在我询问他们如何向信誉支票确定自己身份时就有所迟疑,她犹豫着,不知道是否应该告诉我"。犹豫给我们传递了一个有效的信号,可以说此时的心理想法完全在于她左脑的判断。左脑主管言语活动(听、说、读、写)、数学运算、逻辑推理等具有连续性、有序性、分析等功能,是进行抽象思维的中枢,所以这个时候我们需要给对方一个可信的理由。我想你一定有过在外借钱的经验,当你试图询问一个陌生的小姐时,她会有点儿犹豫,而如果你告诉她,你是一名导演,在外迷路了,并给她一张导演名片,我想陌生的小姐都不会拒绝,因为小姐确信他是一名导演,名片使她无从怀疑。 "你必须依靠自己的感觉,仔细的倾听马克[受骗者]的说话内容和说话方式"。我们每个人的人生是奠基于两种形式的信息传送上。第一种是内在的传送,那是在内心里的描绘、细语和感受;第二种是外在的传送、包括言词、语气、表情、举止、行为等来与外界接触,这决定了社会工程学是否成功。社会工程学师必须通过外在的传送来筛选最有用的信息,来判断对方的性格,感觉类型,心理特点。各种情绪的反应过程和导演的工作很像。不错,他们为了确实达到戏剧效果,就得掌握住观众的视觉及听觉。如果他要你害怕,就会提高音调,并出奇不意地在银幕上跳出意想不到的画面;如果他要你兴奋,他会利用音乐、灯光,以及会有那种效果的的画面。即使是一个素材,导演也可以弄出一部喜剧或悲剧来,全看他是打算如何在银幕上呈现。如果我们要控制一个人的心智活动,产生生理的行动,我们完全可以模仿斯皮尔博格导演一样灵巧。 "获得公司职员认为无关紧要的信息(实际上它是有用的)"。人人都有一种心理,那就是自已无关紧要的信息随处放着,或许,他们认为很方便。我曾住在校外时,总有一些人让我帮他们去取钱,然而,他们总把密码写在存拆卡上,他们似乎认为别人没有卡就不能取钱,便如果我拿着他的身份证去挂失呢?你经常一定看到QQ上某人的个人资料吧,通常是站点、一段数字、手机、邮件、个性签名,QQ-Zone,这给攻击者很大便利,他们会很快判断你的事业,心理弱点。某天一个陌生人说,我与你是同一个学校(公司),我知道你的名字,请别怀疑,快去更改你的资料吧,最好不要泄露你真实的联系方式,社会工程学师都精于此道。 一美分的手机 无线通讯公司发起了一个大规模的促销活动,只要你登记接受一种资费方式,便可以得到一部全新的手机,只收一美分,然而精明的人知道有很多问题要问清楚。然而攻击者讨厌捆绑资费方式,他开始行动......第一个电话拨往西吉拉德电器连锁店的泰德,谎称是顾客很顺利套取到另一职员姓名威廉.哈德利。第二个电话拨往北广街连锁店的凯蒂,冒称威廉.哈德利使凯蒂信任他是连锁店内部人员,并遵从他的要求将一美分的手机售给泰得.岩西(攻击者)。 "人们会很自然地相信熟悉公司内部的业务流程和专业用语,并声称自己是公司同事的人"。在这一部分,我试图以心理学中的NLP神经语言学来解释,简单说NLP就是研究语言,不论是有声或是无声,对神经的影响。我们的能力是奠基于自我控制神经系统的能力,凯文.米特尼克就是透过神经系统传送特别的信息。你知道社会工程学经常使用的技法便是冒称身份,使对方认可为内部人员。然而以NLP来说,这种技法称之为模仿,NLP的三种形式:信念系统、心智序列、生理状态,这三种形式你并不用花过多时间理解。事实上,NLP是强调行为、内心储忆、生理状态模仿,而社会工程学师冒称身份以及使用专业术语,那是行为上的模仿。如果在行为的模仿无误,别人便不会对你产生丝毫怀疑,由于公司强调的是团队与协作精神,这成为每个职员左右铭,对于同事的请求与帮助都不会怀疑其可信,否则便与公司的团队精神背道而驰,除非对方细心确认。 有必要单独介绍一下NLP内心储记作用,它经由五类感觉器官而测得的,换句话说,我们对周遭的认识,是透过视觉、听觉、触觉、嗅觉、味觉而传送的讯息。所传至脑子的信息就称之为感元,其中以视、听、触感元为主。不同的人感元不同,有些人觉得图画对他们会有较大诱力,另外一些人都具种感觉倾向,内心储记很少在社会工程学中利用,因为这种攻击来去匆匆以保证免遭发现,若想一个星期使人信任你,未为失一个很好的方法。很多人一定有过追女生的经验,你们一定会问她:你喜欢看电影还是听歌?或是喜欢小饰物?假设她说喜欢看电影(视觉型),你可以夜晚放烟花,或是在一堆气球写上我爱你,那么,对方会开始对你产生信任感。你现在一定明白一些家庭不合,假设男的是听觉型,女的视觉型,女的若是问,你爱我吗?若男的说我爱你,女的说我无法感觉你爱我,很显然,他们存在信任的危机,如果男的开着车去她公司送一束鲜花,结果显而易见。 网络故障 鲍比的任务:对斯达伯德造船长办公室电脑进后木马植入。第一个电话,鲍比冒称服务中心艾迪.马丁,谎称网络问题的出现,并套取到计算机端口号。第二个电话,鲍比冒称鲍勃请求厂技术支持封掉端口号。第三个电话,汤姆.狄雷的求助掉入艾迪的陷阱,第四个电话,汤姆完全信任艾迪了,运行了鲍比的木马程序。 "这一次由于帮他解决了问题,令对方心存感激,于是汤姆同意下载一个软件到他的计算机上"。这种心理很多人都存在,因为我们无法质疑对方诚意的帮助,而松懈对攻击者的信任,若不能识别这种伪造的帮助的话。正如凯文.米特尼克所说:那很令人惊讶,基于那些精心构造的请求社会工程师可以轻易地让人们帮他做事。前提是引起基于心理作用的自动回应,依赖于当他们觉得这个打电话的人是盟友时人们心理的捷径。人们建立信任有多种途径,然而他们都是无恶意的有意或是无意地通过交谈与帮助建立信任关系。可社会工程师才不这样想,他可以调查你暂时遇到哪些问题?如果你不经意在论坛或Google讨论组进行求助,他会很轻松帮你解决,否则他可以自行给你制造问题,以期建立信任关系。对于伪帮助式的攻击,我们中国人或是大部人心理都存在这样的弱点,人是善良的,不可能时刻对攻击者保持警惕性,除非个人进行细心验证。 第三部分:社会工程学—反查技术 什么是反查技术?即反侦查技术。在黑客攻击中,最重要的一部分不是成功侵入主机,而是清除痕迹,不要让管理者发现被侵入及数据被伪造。同理,社会工程学也有这样的概念,那么,我们得清除哪些痕迹以免遭网络0察(以下称之为网警)的发现?这一部分我们从网警角度来看问题,看看他们如何来能否找到社会工程师的蛛丝马迹。或者一句玩笑话:他们无法那么轻松找到一点痕迹。这里我们以案例来讲解,请注意,这是虚拟案例,不当之处,敬请指正。 现场 > 数据存储服务部 小张 小张正忙着登记取出数据的客户,这时内线突然响起。 小张:你好,数据存储服务部。 小王:我是数据存储后期服务部小王,我们前台计算机出现故障,呃,我需要你们的需助。 小张:我可以知道你的员工ID吗? 小王:嗯,ID是97845。 小张:我能帮助你什么? 小王:我们网络出现故障,我需要你把XX企业数据复印一份,然后放在二楼客户接待柜台,我们的人会取的。 小张:好的,现在身旁还有一大批的事,我马上给你送去。 一如攻击者所想,他很如愿拿到某企业内部数据,并将其公布到网上。这使该企业受到严重经济损失,他们开始向网警报案。然而,没有一切线索,电话是企业的内线,而那个所谓的小王根本不存在,数据存储服务器更是完好无损,迫不得已,他们开始设法从网上流传的企业数据追查IP来源,然而数据是经过多重路由传输,且经过了加密,案件陷入了绝境。相信小菜们一定有三个疑点:1.攻击者如何知道内线号码?2.攻击者为何有某员工ID?3.攻击者使用什么方法隐藏了IP?这很简单,如果你去医院看过病,一定会注意墙上的主治医师名单,上面标有ID,联系方式,及所在楼层房号,医院的目的在于更佳完善为患者提供服务。同样,数据存储公司也设了这样的名单。然而,这个案例里的小王没有进入数据存储服务公司,而是付了一部分费用给垃圾处理公司,允许他从中寻找一些东西,而攻击者寻找的是一份旧的员工联系名单,旁边也附了内线号码。 IP如何隐藏的呢?我们看看四种方式传输日志:1.直接IP,2.ADSL拨号,3.代理,4,随机路由传输。这里给小菜讲解下,直接IP即拥有公网IP,发表的日志也显示真实的IP,我不推荐这种做法。ADSL上网,ISP会记录下这个IP地址是在哪个特定时间由哪个电话号码上线,你认为这仍然安全吗?代理上网安全么?如果提供代理的主人或是代理服务商与网警妥协,关键是在于网警们有耐心与代理服务商协商。随机路由传输,每次请求传输信息都会透过随机路由进行的每一连串步骤都是经过加密的。此外,在这一连串传输线上的每部电脑都只会知道最邻近的的几台电脑地址,换言之,路由器B只知道路由器A经过它传输网页,而这个传输请求可能又经过路由器C代转。所以,你认为网警能从中找到一丝头绪么? 接下来我们来了解网警的在干什么?他们的技术能否对抗社会工程学师。如果读者寻找一些关于计算机取证技术方法及工具研究,我想你会找到最主要的信息,那就是他们重心在于入侵监测系统、数据恢复、加密破解、反向工程技术以及计算机取证软件工具的使用。然而,他们忽略了人为的因素,社会工程学师的奇妙之处在于从人、规章寻找致命的漏洞。且现在面对社会工程学师的攻击防护仍然是网络安全课程的一片空白,当这种攻击趋入严重的状态,这成了网络安全专家首要考虑的问题。然而更令人吃惊的是,网警偶而会发现攻击源来自于他们内部。现在有一些媒体神化了网警,比如一次行动网警现场在网吧抓获攻击者,这并没有什么特别之处,而在于那位攻击者没有隐藏IP,使用的是公用电脑,这对于网警来说更容易确定IP源。 行为 你相信测谎仪么?不,我拒绝相信!说出这类话的只有两类人,一类是心理学家,另一类便是社会工程学师。 这里,我们开始从典型案例说起,那就是广为人知的警'察抓小偷的故事。我们比较关注的是,警,察依靠什么条件来分析谁最像小偷呢?人群中的小偷如何让自已化为一缕空气?这很简单,一旦监控器里的人符合两个明显特征:贼眉贼眼、东张西望,他们以此来判断。小菜们一定碰到过所谓的算命师,他们有种不凡的能力便是,从你的衣着、行为、言语判断你从事何种工作,遇到哪种烦恼。不错,小菜们一定能猜到我想说的:行为能反映人的状态。 OK,现在我们来谈谈现实与网络里的人的行为。从前面说知,行为能反映人,一旦我们将行为改变呢?北方人操起南方人的口气,不仅衣着举止投足都是一个活生生的南方人,你认为可能吗?当然能,小菜们一定也会列举一些刘德华、张学友等等N多演员,社会工程学里的“伪装”在明星的眼中是“演技”的说法,“演技”人人都会,一旦经过简单的培训,所表现的行为能躲过人的眼睛,小菜们一定认为不可思议,下面给你们一个作业,很简单,和家里人开一个玩笑。模仿你父亲的说话方式给你的妈妈打一个电话,至于目的是什么便自已想了。是的,这稍微会有些难度,那就是口音伪装,社会工程学师才不会在意,随便在网上下载一种变声软件,将所说的话经过变声软件转换输出。嗯?社会工程学师常用的软件或是道具是什么呢?小菜一定这样问,这很简单,只要社会工程学师手上有某物体,他们便会设法利用。 最后一个要求便是心理素质,测谎议依据你的说话声音音调以及生理状态作为判断条件,当我们以测谎仪程序的漏洞来测试时,便会出现错误的结果,为什么杀人犯偶尔无法通过测谎仪呢?他们的心情处于极度紧张状态,每一次的回答绝对会打乱他们的心境。社会工程学师在这一方面具有较强的心理素质,若网警找不到一丝证据,主动权仍在于他的手上。 网络世界的人又是什么样的呢?小菜肯定为想找一位技术高超的师父来学习,可是只能看见他们在网络里表现非凡的才能,却无法找到他们的联系方式,幸运的一点可能还会被拒之门外,看完本部分开始和高手们开一个小小的玩笑吧。关于“高手”一词,我们得从金庸的武侠名著说起,大师级以上的高手一般会有独门功夫,中级的都设法争夺武林盟主,低纸以下的都是配角了(菜鸟们千万别丢砖头给大菜鸟了),简单的举例大家都明白高手是什么概念了,中级的一般都会留下名号,不然江湖里的人不知道那就太枉了,大师级的呢一般都是经过N年后故事来传播的,至于菜鸟级的嘛,先买<<黑客X档案>>真经的话3年后就能达到中级,再N年就能达到大师级了,然后....呵,扯远了。 武侠里的生活与现实相关,而现实的生活又与网络相关,或说他们有所区别,那只是因为所处的环境不同,但决定性的因素还是人。接下来我们通过几步简单的手法,来一个高手与菜鸟的游戏。准备工作:IM(QQ、MSN、Gtalk)、火狐浏览器(防止一些放马的站点) 第一步:寻找目标。这可不能瞎找哦,说话牛头不对马嘴的很快就会被对方踢进黑名单的。小菜可以从这里入手:比如黑X里的作者、论坛、博客,或者一些以原创类性质的站点。 第二步:行为分析。这很简单,从目标的作品与言论看出技术水平,以及心理状态,这决定了虽然不能谈论技术但可以成为朋友。 第三步:直捣黄龙。直接去加为好友,小菜认为有点难度,不是的哦,非常的简单。如果你以杂志上作者名放到QQ寻找好友的一个以昵称寻找好友的功能,比如我们拿"旭方"来寻找,接下来估计哥们得揍我了(小菜问:旭方是什么?嘿嘿,翻翻后面的几期杂志就明白了)。接下来是论坛,这更简单了,符合金庸的中级侠士定义了,一般他们作品都会留下邮箱、博客,如果点击论坛个人资料,也会看到QQ的,没有?那打开博客来看东西吧,咦?只有几篇看不懂的文章与友情链接嘛,骗人!小菜大骂。如果我们仔细一点,QQ联系仍躲在暗处哦,友情链接打开看看吧,正巧有他的一个哥们留下联系方式了,于是我们一个简单的冒称便弄到目标Q号了。 第四步:复制身份:这里是关键了,有的可是设置了身份验证的,首先利用QQ寻找好友的功能把号码填入,查看个人资料。留心他们的个性签名与说明,如果有正在找工作,小菜就把身份改成大企业,如果有的是专于技术,小菜就把身份改成xx工程师....以此类推,成功率满高啦,被拒绝了估计人品有问题了。^-^ 好啦,行为分析虽小,但五脏俱全。而且偶的Q号可以用上面的方法找到,透露下,菜鸟们也能直接在书上找到黑X编辑的Q号,至于怎么找嘛....(sagi:你敢说出来,这次稿费别想拿了,哈哈。。。)说了这么多,反侦查技术也包含在其中了,攻击者的行为该如何进行伪装。 痕迹 网络里,能泄露你的隐私主要是:论坛、博客、IM(即QQ、MSN、Gtalk),当然,社会工程学师的一切注册信息都是伪造的,因为任何一丝敏感信息都会给网警一个切入点。至于侵入服务器之类的,他们有时宁愿打一个电话套取密码,也不愿用侵入的动作在主机留下太多的日志,这增加了取证的难度。对这种稍闪即逝的攻击,能留下的痕迹少之又少,在未来的几年,调查取证仍是一个难以解决的问题。 反侦查,后门问题。既然侵入主机会留下后门,社会工程学师的攻击不会留有后门吗?答案是确定的。那些后门偶尔会是很简单,他们会在暗处看事态的发展,偶尔会介入制造动作打乱方案。 § 社会工程学在信息安全中的重要性 总体上来说,社会工程学就是使人们顺从你的意愿、满足你的欲望的一门艺术与学问。它并不单纯是一种控制意志的途径,但它不能帮助你掌握人们在非正常意识以外的行为,且学习与运用这门学问一点也不容易。 它同样也蕴涵了各式各样的灵活的构思与变化着的因素。无论任何时候,在需要套取到所需要的信息之前,社会工程学的实施者都必须:掌握大量的相关知识基础、花时间去从事资料的收集与进行必要的如交谈性质的沟通行为。与以往的的入侵行为相类似,社会工程学在实施以前都是要完成很多相关的准备工作的,这些工作甚至要比其本身还要更为繁重。 你也许会认为我们现在的论点只是集中在证明“怎样利用这种技术也能进行入侵行为”的一个突破口上。好了,其实这样够公平的了。无论怎么说,“知道这些方法是如何运用的”也是唯一能防范和抵御这类型的入侵攻击的手段了。从这些技术中提取而得出的知识可以帮助你或者你的机构预防这类型的攻击。在出现社会工程学攻击这类型攻击的情况下,像CERT发放的、略带少量相关信息的警告是毫无意义的。它们通常都将简单地归结于:“有的人通过‘假装某些东西是真的’的方式去尝试访问你的系统。不要让他们得逞。”然而,这样的现象却常有发生。 那又如何呢? 社会工程学定位在计算机信息安全工作链路的一个最脆弱的环节上。我们经常讲:最安全的计算机就是已经拔去了插头(注释:网络接口)的那一台(注释:“物理隔离”)。真实上,你可以去说服某人(注释:使用者)把这台非正常工作状态下的、容易受到攻击的(注释:有漏洞的)机器接上插头(注释:连上网络)并启动(注释:提供日常的服务)。 也可以看出,“人”这个环节在整个安全体系中是非常重要的。这不像地球上的计算机系统,不依赖他人手动干预(注释:人有自己的主观思维)。由此意味着这一点信息安全的脆弱性是普遍存在的,它不会因为系统平台、软件、网络又或者是设备的年龄等因素不相同而有所差异。 无论是在物理上还是在虚拟的电子信息上,任何一个可以访问系统某个部分(注释:某种服务)的人都有可能构成潜在的安全风险与威胁。任何细微的信息都可能会被社会工程学使用者用着“补给资料”来运用,使其得到其它的信息。这意味着没有把“人”(注释:这里指的是使用者/管理人员等的参与者)这个因素放进企业安全管理策略中去的话将会构成一个很大的安全“裂缝”。 一个大问题? 安全专家常常会不经意地把安全的观念讲得非常的含糊,这样会导致信息安全上的不牢固性。在这样的情况下社会工程学就是导致不安全的根本之一了。我们不应该模糊人类使用计算机或者影响计算机系统运作这个事实,原因我在之前已经声明过了,地球上的计算机系统不可能没有“人”这个因素的。几乎每个人都有途径去尝试进行社会工程学“攻击”的,唯一的不同之处在于使用这些途径时的技巧高低而已。 方法 试图驱使某人遵循你的意愿去完成你想要完成的任务是可以有很多种方法的。第一种方法也是最简单明了的方法,就是目标个体被问到要完成你的目的时给予其一个直接的“指引”了。毫无疑问这是最容易成功的,也是最简单与最直观的方法了。当然,被指引的个体也会清楚地知道你想他们干些什么。 第二种就是为某个个体度身订造一个人为的(注释:通过捏造的手段)特定情形/环境。这种方法比你仅仅需要考虑到了某个个体的相关信息状况附带更多的因素,例如如何说服你的对象,你可以设定(注释:刻意安排)某个理由/动机去迫使其为你完成某个非其本身意愿的行为结果。这包括了远至于为某个特定的个体创造一个有说服力的企图而进行的工作,与大量你想得到的“目标”的相关知识。这意味着那些特定的情况/环境必须建立在客观事实的基础上。少量的谎言会使效果更好一些。 社会工程学中最精炼的手段之一就是针对现实事物的良好记忆能力。在这个问题上黑客与系统管理员会更为侧重一点,特别是在某种事物与他们的领域有所关联的情况下。为了说明上述的方法,我准备列举一个小型的范例....... [范例如下,当你把某个个体“置于”群体/社会压力(注释:其类型如舆论压力等)下的处境/形势时,个体很有可能会做出符合群体决定的行为,尽管这个决定很明显是错误的。] 一致性 若在某些情况下有人坚信他们群体的决定是对的话,那么这将有可能导致他们做出不同于往常的判断/行为。比方说如果我曾发表过某个结论,论点的理由非常充分(注释:这里指的是符合群体中多数人的意愿),那么往后无论我花多大的精力去尝试说服他们,都不可能令他们再改变自己的决定了。 另外,一个群体是由不同位置/层次的成员组成的。这个位置/层次问题被心理学者称之为“demand charac-teristics”(注释:“意愿的特征性”),这个位置/层次问题在参与者的行为上受其浓厚的社会约束性所影响。不希望得罪其他的成员的、不想被其他人看出自己在会议中想睡觉的、不想破坏与自身关系良好的伙伴的观点等的心态最终都会成为“随波逐流”现象的形成因素。这种运用到特征的处理方式是引导人们行为的一种有效途径。 情形 无论怎么说,大多数的社会工程学行为都是被一些单独的个体所运用的,因此诸如社会压力与其它的一些影响因素都必须建立在和目标有一定的可信关系的情况下进行的。 如果处于这样的情形下,当有了真实或者虚构出来的固有特征时目标个体就很可能会遵循你的意愿而工作了。这些固有特征包括: ·目标个体以外的压力问题。如让个体相信某个行为的后果并不是他一个人的责任。 ·借助机会去迎合某人。这些行为更多取决于此个体是否认为某个决定能为某人带来“好处”。这样的行为可以使你与老板的关系更为融洽。 ·道德上的责任。个体会遵从你是因为他们觉得自己(注释:在道德上)有义务这么做。这就是利用了内疚感。人们比较愿意逃避内疚感,因此如果有一个“可能”会让他们觉得有内疚感的话他们都会尽可能地去避免这个“可能”。 个人的说服力 个人的声望/说服能力是一种常被用于促使某人配合/顺从你的有利手段。使用个人说服力的目的并不是要别人强行接受你所指派的“任务”,而是增强他们对完成你所指派的任务的主动顺从意识。 其实这是有些矛盾的。基本上,目标只是被我们简单地引导到一个已经设置好的、特定的(注释:故意安排的)思维模式上去。目标会认为他们可以控制住局面,在此同时他们也通过他们的力量帮助了你。 事实上,目标所得到的利益与他间接帮助你得到的利益此两者是没有冲突的。社会工程学使用者的目的是说服目标,使其有充分的理由去相信只需花费小量的时间与精力就可以“换取”得到利益了。 合作 存在着多个因素可以促使一个社会工程学使用者增加与目标“合作”的机会。 尽量少与目标发生冲突。使用平和的态度去面对对方可以提高达成目的成功几率。拉拢关系或者发展新的关系,共同的烦恼又或者是一些比较特殊的任务都可以有效地迫使目标与你合作。 在这里‘走向成功’的因素往往集中在你是否有能力去掌握与处理好你的说服力。这是非常重要的,这一点常被“骗子”(注释:常常使用欺骗手段的人)认为是万试万灵的手段。心理学研究指出如果人们先前曾经遵照过某个极小的指引而工作(注释:并获得成功)时现在他/她就更可能会去遵照一个更大的(注释:指引)了。在这里如果曾有过合作的前科的话,那么这次再合作,达成的机会就很大了。 更好的方法是让社会工程学者给予合作对象一些比较敏感的信息。尤其是一些非常逼真的视听感观,目标能够现场看到或听到你给他们的信息要比他们仅仅可以通过电话听到你的声音更能令他们信服。这个观点一点也不稀奇,以书写形式或电子方式进行交流的信息是很难让人信服的。这就如同拒绝某人进行某个IRC风格的通信一样。 关联 不管怎么说,社会工程学运用是否能成功也有取决于目标个体与你的目的有多大关联的因素的。我们可以说系统管理员、计算机安全执行官、技术研究人员、那些依靠计算机/网络进行工作又或者通过其进行通信的人与大多数黑客使用社会工程学进行攻击的目标都是有莫大的关联的。 有高度关联性的个体大多会被强而有利的论据所说服。事实上你可以给予他们更多强而有利的论据来支持你的观点。当然,那些观点也有薄弱的一面。你是否将论点薄弱的一面展现给有高度关联的人知道将极大可能地决定你是否能说服此人。当某人有可能直接被社会工程学攻击所影响,若此时出现薄弱的论据将有可能会导致其思想上产生“相反”的意识。所以面对与你的目的有关联的人时你必须给予强而有力的论据,而避免出现理由薄弱的论据。 相对于对你的指引或你想得到的结果并不敢兴趣的人,你可以把他们列入“低关联的人”这个类别中去。相关的例子如:一个网络系统机构中的保安人员、清洁工人、又或者是前台接待小姐等。因为低关联类别的个体并不会直接对你的目的/结果造成影响,而且他们往往不会去分析你用来说服他们的论点的双面性问题。他们的决策往往会遵循你的意愿又或者是完全不受其它的“意识”所影响。这些的“意识”如:社会工程学所提供的理由、表面形势上的迫急性又或者是在某人强烈的说服下。凭经验而论,在这样的情况下我们只能尽可能地给予其更多的论据与理由了,估计这样的效果会更好一些。基本上,对于那些与你的意识不一致的人,试图用大量的论据和指引去说服他们更胜于他们与你的目的的关联程度。 有一点是需要注意的:在进行某些工作的时候,能力低的个体更多会去仿效能力高的个体的行为模式。在计算机系统管理方面,“能力低的个体”大多是指上文所提到的“低关联的人”。站在上述的观点上考虑,不要试图对系统管理员这类别的个体进行社会工程学攻击,除非其能力不及你,不过这样的可能性非常的低。 防御他人的攻击 综合上述的资料能否让读者更好地保障他们整个计算机系统的安全呢?其实踏出“美好的”第一步就是要视乎员工们能否在自己的工作岗位上保障自己的计算机系统的信息安全。这不但需要你无条件地增强他们的安全防范意识,而且你自身也必须具备更高的警惕性。打个比方,如果你让某人专门负责保护你的计算机系统安全的话,那么就有便利于那个人在没有正常许可的情况下访问你系统的可能了。 无论如何,对付与防御这类型攻击的最有效手段,也作为最常见的手段,就是“教育/培训”了。第一步是教育你的雇员与那些有可能被利用作为社会工程学实施目标的人关于计算机/信息安全的重要性。直接给予容易攻击的人们一些预先的警告已经足以让他们去辨认社会工程攻击了。不过要记着,在教育他们计算机信息安全的时候可以使用一些故事及其“双面性”来作为例子。这并不是我自己的个人喜好哦。当个体明白了这个焦点的“双面性”以后他们基本上就不会动摇他们所处的立场了。而且如果他们是专注于计算机安全技术的话,那么他们更有可能会站在维护你的数据安全的立场上。 也有不会遵从人们的说服力倾向而作出行动的思维因素的。在这里你必须有清晰的思维、高度的创造力、可以应付和处理压力的能力与适当的自信。压力的处理能力与自信可以通过后天培养。至于自身的主张和见解常常被用于对员工的管理方面,训练它可以减少某些个体被施行社会工程学攻击的机会,也有助于其他方面的工作。 了解各种使人们的信息安全意识降低与威胁你的安全策略的因素。其实这方面只需要投入小量的精力就可以在降低安全风险方面产生很大的成效了。 结论 与普遍的思想观念相反,运用社会工程学捕捉人们的心理状态的技巧要比入侵一个sendmail容易得多。但如果你想让你的员工去预防与检测社会工程学攻击的话,其效果绝对不会比你让他们去维护UNIX系统安全的效果明显。 站在系统管理员的立场上,不要让“人之间的关系”问题介入你的信息安全链路之中,以至于让你的努力前功尽弃。站在黑客的立场上呢,当系统管理员的“工作链”上存放有你所需要的数据时,千万不要让他“摆脱”自身的脆弱环节。 |
随便看 |
百科全书收录594082条中文百科知识,基本涵盖了大多数领域的百科知识,是一部内容开放、自由的电子版百科全书。