社会工程渗透测试教程(一)(4)

简介: 社会工程渗透测试教程(一)

社会工程渗透测试教程(一)(3)https://developer.aliyun.com/article/1508471

社会工程的业务需求

对社会工程学的业务需求可能源于多种不同的动力。有一件事是肯定的;当涉及到分配安全预算时,大多数企业都会完全忽视社会工程学。相反,他们会选择将精力集中在传统的安全服务和产品上,比如防火墙、IPS 和防病毒软件。虽然每种技术在任何现代环境中都有一席之地,但它们都可能被一个积极而狡猾的社会工程师完全排除在外。如果可以绕过山,为什么还要过山呢?

不幸的是,这意味着绝大多数企业和个人都没有准备好应对恶意社会工程师,最终可能意味着数据丢失、尴尬,或者在合规的情况下,巨额罚款和所有相关人员工作量的增加。

任何在安全领域工作过一段时间的人都会知道,往往很难获得大笔安全支出的批准,特别是与基础设施和软件预算相比。安全一直被视为一种永远不会有任何回报的保险政策,因此被置于忽视状态。

幸运的是,过去 5-10 年情况发生了非常大的变化。备受关注的妥协和合规规定推动了这个领域的支出大幅增加。不幸的是,这种情况通常并不适用于社会工程学。

通常情况下,社会工程学被视为一种真正的奢侈品;那种在需要解决的事情清单中排在最后的服务。令人遗憾的现实是,一位专注的社会工程师造成的损害往往远远超过病毒或黑客所能造成的任何事情,而且很可能完全不被注意到。组织可能永远不会知道发生了什么事情。

企业如何向预算持有者证明社会工程服务的必要性?如何向决策者强调这项工作的重要性?让我们来看看一些更常见的业务动力,也许它们也适合您的业务需求!

合规和安全标准

最终,所有合规标准都旨在提供一个基准,用以衡量组织的信息安全状态。一个组织越符合这些“最佳实践”,他们就越能减轻各种立法侵权的风险,即使这些标准中没有直接提到。

最近的一个例子突显了此类违法行为的后果。在 2011 年 4 月,索尼电脑娱乐欧洲遭受了对其 PlayStation 网络的攻击。攻击期间获取了用户名、密码和个人数据。加密的信用卡数据也被获取,尽管在此后没有提及加密的强度。

索尼随后在 2013 年 1 月被信息专员办公室(ICO)罚款 25 万英镑。索尼原本打算上诉这一决定,但最近已接受了罚款。

对于索尼来说,25 万英镑可能只是小钱,但对于绝大多数组织来说绝对不是。财务罚款绝对无法与由于这次丑闻而遭受的尴尬和声誉受损相匹配。

索尼并不是唯一一个因信息安全疏漏而陷入法律后果的组织,所以不要被认为这种情况不会发生在你的组织身上所蒙蔽。

欧盟提议的《通用数据保护条例》(GDPR)明确表示,未来不会变得更容易。GDPR 的理念是通过提供一个单一的机构来处理针对公司作出的具有法律约束力的决定,从而使欧洲的数据保护法律变得更加一致,而不是像我们目前拥有的那样多种多样。随之而来的是可能根据组织的年销售额直接确定的巨额财务罚款。对于索尼来说,这个数字将是远远超过 25 万英镑的数量级。

GDPR 仍然可能无法通过批准,但很明显,对信息泄露的更加明确的法律和更严格的处罚已经在望了。

社会工程学如何帮助改善信息安全状态并避免诉讼?任何值得重视的信息保障行业标准都会考虑到社会工程学可以直接帮助解决的问题。这些标准所确定的常见问题和问题如下:

• 教育和意识

• 安全的人为因素

• 积极测试物理安全

• 积极测试事件响应

• 积极测试流程——电话处理或访客接待。

这些标准如何解决其中一些要素?

支付卡行业数据安全标准

PCI 安全标准理事会提供了强大而全面的标准和支持材料,以增强支付卡数据安全性。这些材料包括一系列规范、工具、测量和支持资源的框架,帮助组织在每一步确保持卡人信息的安全处理。其中的核心是 PCI 数据安全标准(PCI DSS),它提供了一个可操作的框架,用于开发一个健全的支付卡数据安全流程,包括对安全事件的预防、检测和适当反应。

www.pcisecuritystandards.org/security_standards/

在撰写本文时,我们处于 PCI DSS 的第 3 版,正如上文所述,这是一个致力于保护持卡人数据的标准。如果一个企业存储、传输或处理信用卡信息,那么它们就受 PCI DSS 的约束。

社会工程测试如何帮助确保企业充分保护付款卡数据并确保符合 PCI DSS(版本 1)要求的精神?

PCI DSS 的要求 9 包括限制持卡人数据的物理访问。虽然测试程序可以由 PCI DSS 合格的安全评估师(QSA)进行,但可以说,将社会工程顾问作为一个副项目进行接触可能会提供更相关和准确的结果。例如,几乎总是会出现这样的情况,即 QSA 对特定企业的任何访问都将被技术人员知道。评估不太可能解决的是日常运营中发生的情况。诚然,他们可能会在特定日期通过 PCI 评估,但这并不意味着该组织在该年的其余时间内将受到付款卡安全违规行为的保护。QSA 评估很像是交通部的测试。

即使是小商家,如果发现其在违规后仍未达到合规标准,也可能被处以数万美元的罚款。虽然合规性为安全设定了一个标杆,但仅仅达到这个标准并期望最好并不明智。持续和主动地测试政策和程序是确保尽一切可能减少违规风险的唯一方法。定期聘请一组社会工程师尝试物理访问不仅有助于确保安全工作如宣传的那样运行,而且在员工意识和教育方面也非常有用。

PCI DSS 的要求 12 关注安全策略和程序,包括员工培训和安全意识计划。对社会工程师最相关的子项是 12.6。要求 12.6 包括开发和提供有效的员工意识培训,并在第十五章中进行了广泛讨论。

将社会工程作为员工意识培训的一部分的真正好处是影响!坦率地说,当第二个 PowerPoint 被启动时,可能有 30% 的听众已经迷失了。不幸的是,由于 PCI DSS 尝试解决信息安全的三个方面 - 技术、人员和流程 - 拥有一种无效的安全意识计划可能会满足于强制的年度意识培训,但它并不能提供最有效的方法来解决人员因素。因此,确保培训“合乎目的”的最佳方法是使其对受众相关。如果一个人被问及他们是否可能在电话中被欺骗出敏感信息,他们不会相信这是可能的。对他们来说,这个原则是愚蠢的,不影响他们,因此不相关。

当然,社会工程师知道得不一样。想象一下,宣布未经授权的个人通过几通巧妙的电话获得了进入场所的物理访问权,或者同一人跟随员工进入了安全区域会带来的影响。立即就会有人开始思考。是的,这种事情确实可能发生,而且可能一直在发生,但此时房间里的人们很可能会增加对幻灯片的密切关注,提出问题,并且可能会看到房间里人们脸上的担忧表情增多。每个人现在都在想,是不是他们允许了一个跟随者进入建筑物,或者是不是他们安排了通过电话获得访问权限。

有效的意识培训必须尽快打破“永远不会发生”的心态,如果你真的想让你的员工真正参与进来,并使培训更有价值。恐惧和偏执不一定总是负面的,当涉及到安全时,它们也可以是促成积极变化的催化剂。

PCI DSS 的第 12.9 节涵盖了测试事件响应计划。有什么比制造一个事件来测试它们更好的方法呢?更好的是,这个事件将会受到控制,按照特定参数执行,并且可以随时停止。真正的事件却不能这样说!

在许多社会工程项目中,只有少数几个人知道这些事件模拟的情况是一个常见做法。告诉事件响应人员即将发生的事情没有太多价值。

ISO/IEC 27000 信息安全系列

ISO 27000 系列标准的范围广泛。随着企业提高信息安全实践的压力越来越大,它们通常选择采用这些标准的实施。因此,几乎可以肯定,人员在某个时候会接触到它们,并且随着标准的发展,这种情况会越来越多。事实上,在超过八年后,最新版本(ISO/IEC 27001:2013)已经发布,使其与现代实践保持一致,并更好地为我们准备应对现代攻击的复杂性。

同样,ISO/IEC 27001:2005 中的关键点涉及通过意识计划教育员工以及控制物理安全范围。

ISO/IEC 27001:2005 的绝大部分相关部分位于第 8 域——人力资源安全和第 9 域——物理和环境安全。

人力资源安全,第 8 域

这一部分确定了信息安全意识、教育和培训的需求。讨论安全威胁和关注点时,不可能不提及社会工程。正如在其他章节中所讨论的,社会工程是信息安全面临的最大威胁之一。快速浏览各种主流新闻网站很快就能突显当前威胁的性质。当像 RSA 这样的大型安全组织被成功地针对社会工程攻击时,我们肯定需要改变我们的思维方式了。

社会工程专业服务可以直接反映到政策和教育中,正如之前提到的那样,确实为否则缺乏的程序增加了影响力。幸运的话,它们将帮助我们避免成为下一个 RSA。

物理和环境安全,域 9

本节涵盖了防止未经授权访问组织场所的过程。它涵盖了以下一些问题:

• 确保安全边界在物理上是完整的。

• 确保所有外部门受到未经授权的访问限制。

• 在离开时确保门窗关闭并上锁。

• 设置物理屏障以防止未经授权的访问。

• 应安装和监控入侵检测系统。

• 防火门应设置警报、监控和测试。

• 确保员工和访客佩戴可见的身份证明。

• 任何未经陪同的访客应立即报告给安全人员。

• 仅在必要时,确保第三方仅被授予对安全区域的有限访问权限。

• 媒体的保护。

这正是社会工程的核心领域!这些是经常被测试并且在许多情况下被规避的类型的控制。

那些真正重视物理安全的组织将通过引入社会工程师定期且主动地测试这些控制措施。很可能这些练习会发现甚至自己都不知道存在的弱点。

对于这种类型的测试,一个很好的想法,也经常被采用的是基本上是一个低成本的社会工程评估。客户联系人将在接待处见到团队,并签到进入大楼。他们将被提供典型的访客通行证和受限的门禁卡,以及一个会议室供他们使用。将给出几个目标,他们可以升级其身体权限级别。目标可能是进入服务器房间或受限区域的文件柜。在当天,其他员工将不会被告知组织正在接受测试。

就像它本身是一个很好的全方位安全测试一样,但与合规标准相比,测试的控制数量之多使其作为一个意识练习具有很高的价值。

这个测试实际上可以在几天内完成,在 ISO/IEC 27001:2005 方面,将测试 Domain 9 的相当大部分。从某人离开会议室的那一刻起,他们已经在测试 Domain 9.1.2 的几个部分。例如,他们作为未陪同访客受到挑战了吗?他们能否进入存储或处理敏感信息的区域?如果他们取下访客徽章,员工会对此提出质疑吗?需要多长时间?这也是对员工安全教育和他们被授予挑战访客的权限的伟大测试。

这种练习通过与客户进行总结会议来增强,或者更好的是,在员工意识培训会议前进行这种测试,以便社会工程师可以在场提供建议并讨论他们的发现。这个想法不是为了让员工感到内疚或羞愧,而是向他们展示威胁有多真实,违规有多容易发生。

在练习结束时,一份书面报告表明他们的控制措施得力,以及支持证据只会增加认证过程的权重,更不用说增加安心感了。

只看了两个标准,就很明显社会工程在提高任何组织的安全状态方面起到了作用。由此产生的与合规标准的联系是显而易见的。意识到需要社会工程服务后,让我们看看参与如何运作,挑战是什么样的,项目结束时提供了什么。

社会工程操作考虑和挑战

社会工程方面的工作带来了一系列独特的挑战;这是非常有保证的。社会工程师经常出现到一个现场,却意识到每个员工都被告知他们当天会到来。谈论最快的测试!同样,有时社会工程师被安全人员拘留并被长时间审讯,尽管承认了“出狱免责信”!

你可以在本章后面了解更多关于“出狱免责信”的内容。

这样的问题通常可以通过确保社会工程团队在测试前定期与客户进行磋商来避免。

让我们来看看一些挑战,既从社会工程师的角度,也从寻求与他们合作的客户的角度。

社会工程师面临的挑战

不是不可能的任务,而是不太可能的任务

与客户合作的一个更大的挑战是了解他们的安全关注点的根源并制定一个切实可行的范围。如果客户期望看到社交工程师仅仅使用一双吸盘粘在第 16 层窗户上,那么他们可能需要一些帮助来塑造他们的期望。理想情况下,客户应该进行咨询过程,让他们谈论他们最大的恐惧和最可怕的可能性。从这里,可以建立一个切实可行的威胁模型,以及一个切实可行的范围。参与这个过程的越早,越能够解决可能会在后续评估中阻碍的任何问题。关于这个主题的更多内容,请参阅第六章,这一章完全致力于威胁建模。

处理不切实际的时间范围

有时,无论客户被引导朝着现实目标前进多少,他们都没有足够的预算来进行彻底的评估。现在的挑战是在允许的短时间内尽可能多地识别潜在问题。在这些情况下,真正难以不牺牲提供有价值服务的能力,有时最好的选择只是离开并保持诚信。经常发生的情况是,有新项目提出,给予半天时间来测试一个场地的物理安全性。这些项目通常是客户想要知道是否有人可以从街上随便走进来的打勾练习。不幸的是,对所有参与者来说,这些项目几乎没有任何价值,所以尽量避免被卷入这条路。客户的时间最好用于让团队成员到现场进行半天的培训。在那段时间里,他们可以涵盖一些更常见的攻击类型,给出一些真实世界的例子,最后以一些防御策略结束。

如何坐在笔记本电脑旁,向客户展示使用常见工具在几个小时内可以收集到多少关于他们的信息?从文件中剥离元数据几乎总会在房间里引起一些人的注意,这纯粹是因为大多数组织通常会忽视它。

这种方法很可能会产生积极影响。他们不仅会因为指导他们朝着更适合时间范围的方向前进而赢得他们的尊重和信任,而且他们更有可能在日后的业务中再次召回团队来进行适当的评估。

处理不切实际的时间框架

经常情况下,社会工程团队参与了很多测试,完成的时间非常紧迫。通常情况下,由于各种原因,他们无法掌握这些测试的时间。不幸的是,这可能导致他们不得不在几天内连续测试几个地理位置不同的站点。有几个实例表明,他们发现一个站点的安全性已经告诉其他站点的安全性,包括前一天如此肆意违反他们的社会工程师的描述。建议始终努力说服客户避免连续测试,而是将它们分散在较长的时间范围内进行。如果不可能的话,尽量确保为每个站点使用不同的测试者和借口。不要忘记,仅仅因为团队在第一天没有被发现,这并不意味着他们没有引起怀疑。安全团队可能已经审查了闭路电视录像,并决定他们有着不良动机。因此,整个业务的安全性处于 DEFCON 1 级,任何尝试都不会成功。

在这些情况下,最好的折中办法是,有足够大的团队,同时部署所有操作员。某种程度的中央协调必须进行才能实现这一点,但整个团队因连续测试而被烧毁的机会要小得多。各个站点协调安全性的机会相当渺茫。等到一个站点弄清楚发生了什么事情时,其他评估要么已经在进行中,要么已经完成。

承担团队责任

这个挑战完全取决于社会工程师。事实上,社会工程是任何人都希望从事的最激动人心的工作之一。

这种激动的原因很简单,那就是参与其中的风险使得社会工程变得对那些以此为生的人们非常艰难。

首先,特别是在开始阶段,假设社会工程师不是个骗子,他们将要与一生中的社会规范进行斗争。毫无疑问,他们的父母无疑是教导他们要听从权威人士的指示,不要擅闯他人领地或偷窃,并且最重要的是不要与警方惹麻烦。毫无疑问,他们从未具体提及撬锁、冒充他人或通过电话欺诈他人,但这提供了一个想法。正是这些顾虑和焦虑使得社会工程变得具有挑战性。

在社会工程项目中,会发生团队成员被保安和警察拦下、审问、包围,甚至在任务进行中被扑倒在地的事件。为了达到目标,有时需要攀爬、爬行和跳跃。还会有许多时候需要在垃圾堆里搜寻。因此,团队成员必须愿意为团队承担一次甚至两次的风险。这是这个行业的职业风险!

点名批评

我们与客户讨论的最常见的话题之一是不公开点名批评个人的政策,尽管这经常被要求。当向客户解释情况时,他们通常会发现他们自己可能也会被同样的伎俩所困扰。如果员工没有接受如何识别和防御社会工程攻击的教育,他们如何能够预防呢?有些情况下间接识别某人是不可避免的。客户将有一个完整的事件时间线,因此很容易找到当天值班的保安。始终试图将对话引向教育和培训,而不是惩罚的方向。刚刚被愚弄的保安不太可能很快再次发生类似事件!

项目管理

从项目管理的角度看,社会工程项目呈现出与大多数人可能会忽视的独特之处。这就是客户不应总是被告知团队将在哪些日子到场的概念。对于日常工作是确保向客户提供顺畅服务并保持无缝沟通的项目经理来说,这将是一个陌生的概念。与其指定一个(或多个)访问日,不如选择给客户一个窗口,窗口可以持续几周甚至几个月,在此期间将尝试进行突破。如果团队成员没有解释社会工程项目的微妙之处,往往会导致被揭穿的不可避免。始终确保社会工程的教育不仅在社会工程师的企业内进行,而且在您的客户中也进行。

客户面临的挑战

一个普遍的信念是所有的艰苦工作都在社会工程师身上,但在参与之前和之中有一些重要的问题需要解决,就像任何其他类型的项目一样。对于客户来说,最大的挑战之一就是找到可以信任的人来做好这项工作。这包括始终保持诚信。

找到合适的人员

这可能被归类为整个评估中最困难的任务。找到好的人来修理锅炉已经够困难了,那么某人如何开始寻找这样一个小众领域的人呢?

推荐是一个很好的起点。行业中的其他组织与社会工程师有过接触吗?口碑推荐总是一个不错的开始。最好尝试从个人那里获取一些细节,比如评估类型以及测试人员在整个过程中的表现。口碑和推荐的唯一问题是,社会工程评估的结果很可能对大多数组织来说是一个严密保密的秘密。因此,很难达到提供安心的详细程度。

认证和资质也可以增加组织的可信度,但这些不太可能直接与社会工程有关。它们很可能与信息安全相关的认证有关,很可能与渗透测试和其他技术类型有关。一些值得关注的好认证包括 CESG 的 CHECK 资格;团队成员、团队领导(基础设施)和团队领导(Web App)。ISO 认证或与其他信息安全机构的关联也可以是一个很好的指标。不幸的是,由于这些都不直接与社会工程有关,它们可以帮助提供安心,即您正在与那些处理高度敏感信息和情景的人打交道。

重要的是要记住,任何认证都应该由一个经过认可的机构进行(在英国,这些由英国认证服务(UKAS)覆盖),并且认证仅限于范围和适用性声明(SOA)。

与现有的安全服务提供商交谈也是值得的。渗透测试机构通常也提供社会工程服务,纯粹是因为技术和技能有很大的重叠。值得设立一个电话或会议与团队成员之一,让他们演示一些示例评估。这应该相对容易地提供他们的经验水平的味道。

最后,看看在这个领域发表过作品的人。也许他们在行业活动中发表过演讲或发布过支持社会工程或信息收集工作的工具。

如果到这一点仍然存在一些不确定性,与选择的供应商进行短期评估可能是个好主意。侦察演习或夺旗比赛通常会带来深刻的见解。当面对社会工程时,一些客户表示他们认为社会工程对他们并不构成风险,因为他们的员工绝不会泄露敏感信息。这通常会导致他们被要求完成一个小挑战,如果挑战成功,那么也许他们会考虑进一步的合作。作为客户,他们有权利反过来挑战供应商,看看他们的能耐。要求他们找出一些不应该是公开知识的关键信息,看看他们能走多远。结果可能会让人大吃一惊。

立法考虑

在社会工程和有时甚至整个渗透测试方面,遵守法律尤为棘手。了解适用于该行业的法律至关重要,以确保避免任何问题。

渗透测试实际上属于社会工程,几乎可以看作是一个子技能,这就是为什么经常发现渗透测试提供商也提供社会工程服务。有时会有一个目标,要求物理访问某个场所,然后插入网络并尝试外泄数据。可能会有一个任务,要求进入服务器房间,并使用 KVM(键盘、视频、鼠标)执行此任务。在任何情况下,都需要了解几项法律,接下来将简要涉及每一项。

1990 年《计算机滥用法》(英国)—www.legislation.gov.uk/ukpga/1990/18

《计算机滥用法》(CMA)分为三个主要部分。

第 1 节—未经授权访问计算机资料

本节涵盖未经事先授权访问系统的行为。根据定罪最高刑罚是两年监禁和罚款。两年监禁!现在开始明显地看出为什么由相关人员签署范围是如此重要了。在渗透测试期间,保持在范围内相对来说是一件相对简单的事情。在社会工程项目中,工程师不一定会被他们的联系人引导到网络节点。因此,被插入的基础设施可能属于管理客户所在建筑物的人员,更糟糕的是,这可能在完全错误的楼层,并且插入到另一个企业网络中!这就是为什么花时间进行侦察至关重要,以确保工程师始终遵守规定。在做任何可能导致违法行为的事情之前,尽量确保客户的楼层已经确定,并寻找业务标识。

第 2 条—未经授权访问,带有意图实施或者促进进一步犯罪行为。

一旦攻击者已经获取了对服务器的访问权,检索了一些信用卡数据,然后使用这些信用卡详细信息购买商品,那么攻击者很可能受到这项法律的约束。很明显,这类犯罪的严重性体现在其判刑上。可以说,这项法律绝不应该适用于合法评估,但是关于第 1 条的错误标识主机情况呢?如果工程师错误地将插头插入他人的网络点并侵入服务器,然后使用该服务器的信息(例如哈希凭据)进一步访问网络中的其他系统,这可能被视为对本部分的违反,正如前面提到的那样,这带来了非常严厉的处罚。

第 3 条—未经授权,带有损害或者对损害的鲁莽行为,操纵计算机等。

拒绝服务可能是本节中涵盖的最大领域,然而它也涵盖了数据的操纵或破坏。这可能包括更改数据库中的值,例如价格或破坏公司的网络存在。这一部分的最高刑期为 10 年。

《2006 年警察和司法法》(英国)—www.legislation.gov.uk/ukpga/2006/48/contents

警察和司法法对《计算机滥用法》进行了几项重要的修正,这些修正对于安全测试人员来说是相关的。首先,已经在《计算机滥用法》部分注意到了加大的处罚。

还有以下违法行为。

制作、供应或获取用于计算机滥用罪的物品

这对于当前的安全测试人员来说是一个真正的灰色地带。它基本上禁止了我们使用的几乎每一个工具、脚本或应用的使用、分发或拥有。值得注意的是,关于漏洞的负责任披露应当特别小心。利用代码不应该在未遵循向受影响系统供应商披露并与之合作的适当程序之前就被释放到野外。

在 CMA(《计算机滥用法》)的规定下,我们还没有看到合法渗透测试人员的起诉。

openrightsgroup.org 对这一特定方面有进一步的评论。

当前内政部的立场似乎是一个概率平衡论,即法庭决定每一篇文章的每个个体实例是否更可能被用于犯罪行为,即只有当它被用于犯罪行为的可能性大于合法使用时才构成犯罪。

www.openrightsgroup.org/blog/2006/computer-misuse-act-potential-disaster-avoided

对这段话的解释是,任何出现的案例都将应用常识。换句话说,作为合法的渗透测试人员,你不应该遇到任何问题。在任何情况下寻求专业法律建议是明智的。

2000 年调查权法案(英国)-www.legislation.gov.uk/ukpga/2000/23/introduction

一项法案,旨在规定和关于拦截通信、获取和披露与通信相关的数据、进行监视、使用秘密人类情报来源以及获取解密或访问受加密或密码保护的电子数据手段;为与这些事项相关的专员和法庭提供职能和管辖权,以及关于对财产或无线电通信的进入和干扰以及由安全局、秘密情报局和政府通信总部执行其职能的事项;以及有关目的。

www.legislation.gov.uk

尽管调查权法案(RIPA)在其他与渗透测试和社会工程相关的材料中经常被提及,但值得注意的是,其范围仅限于公共机构,www.gov.uk提供了一些见解。

RIPA 是规范公共机构使用秘密技术的法律。它要求当警察或政府部门等公共机构需要使用秘密技术获取某人的私人信息时,他们必须以必要、成比例和符合人权的方式进行。

RIPA 的准则和规范适用于行为,如

• 拦截通信,如电话呼叫、电子邮件或信件的内容;

• 获取通信数据:通信的“谁、何时、何地”,如电话账单或用户详细信息;

• 进行秘密监视,无论是在私人场所或车辆(侵入性监视)还是在公共场所(定向监视);

• 使用秘密人类情报来源,如通报人或卧底警员;

• 访问受加密或密码保护的电子数据。

RIPA 适用于可能获取私人信息的各种调查。适用情况包括:

• 恐怖主义

• 犯罪

• 公共安全

• 紧急服务

鉴于这种情况,任何人需要关注 RIPA 的唯一现实原因如下:

• 你正在为上述公共机构提供咨询。

• 你被要求放弃你的加密密钥,从而危及客户数据。

更多信息请访问www.gov.uk/surveillance-and-counter-terrorism

《1998 年英国人权法》—www.legislation.gov.uk/ukpga/1998/42/contents

《1998 年英国人权法》于 2000 年在英国生效。其与渗透测试和社会工程有关的范围主要涉及个人数据的隐私。第 8 条是我们唯一真正关注的领域。

尊重私人和家庭生活的权利
  1. 每个人都有权享有对其私人和家庭生活、其住宅以及通信的尊重。
  2. 除非根据法律并且符合民主社会的国家安全、公共安全或国家经济福祉、预防混乱或犯罪、保护健康或道德或保护他人的权利和自由的情况下,否则公共当局不得干涉这项权利。

《1998 年英国人权法》旨在在英国法律中进一步落实《欧洲人权公约》。

我曾在几次场合中看到第 8 条被提及与渗透测试和社会工程有关,但我必须说,确定其相关性相当困难。例如,在私人组织中,雇主实际上有权通过各种方式监控员工的活动,只要在员工合同或员工手册中说明即可。这可以包括闭路电视监控、阅读员工的电子邮件,甚至包裹检查。员工几乎在所有情况下都必须被告知正在发生这种情况,雇主必须有适当的理由进行监控。就社会工程参与的渗透测试部分而言,存在有限的风险区域。这些区域几乎总是涉及个人通信的意外拦截。例如,如果你进行 ARP 毒化攻击的话,就可能发生这种情况。在我看来,这是一个很大的伸展,我之所以这样说是因为我绝对不会在需要进入设施然后插上并“入侵”的物理参与中进行 ARP 毒化或 MITM。最好的方法始终是尽量避免在物理渗透测试中进行 ARP 毒化。这可能会带来极大的干扰。社会工程参与可能需要迅速行动,从连接的任何网络点中断开,而不是优雅地结束正在进行的工作。在 ARP 毒化或其他 MITM 攻击的情况下,这将意味着客户的停机时间将持续多长时间,取决于交换机配置了多长时间超时 ARP 条目。

ARP 欺骗的替代方法是执行 Karma 无线攻击。 Karma 攻击是指攻击者/渗透测试人员监听正在寻找已知无线网络的客户端。攻击者回应客户端,声称自己是该接入点,此时客户端连接。典型情况是坐在这个会话的中间,捕获密码和其他数据,并将任何流量转发到互联网上。这给客户端提供了无缝的体验,客户端甚至没有怀疑发生了攻击。

这种攻击在组织部署用于访客访问的开放无线网络时特别有效。公司笔记本电脑和设备很可能可以连接到开放网络,这意味着在社会工程过程中可能提供一些特别有用的信息。回到《人权法案》的话题上,工程师很可能在整个攻击过程中捕获其他用户的数据,其中一些用户甚至可能不是客户公司的雇员。

欲了解更多关于 Karma 攻击的信息,请查看 Robin Wood A.K.A. Digininja 创建和维护的 Jasager 项目,网址为www.digininja.org/jasager/

另一个很棒的资源和技术是无线菠萝(Wireless Pineapple),可以在hakshop.myshopify.com/products/wifi-pineapple上获取。

有几种用于社会工程和无线测试的设备,最新版本配备了出色的文档,以光滑的快速入门指南的形式呈现。因此,新手工程师真的不会出错!

总的来说,在《人权法案》中被卷入的可能性很小,通常是通过不加选择的 MITM 攻击捕获或者超出范围时才会发生。

计算机欺诈和滥用法案—美国

计算机欺诈和滥用法案(CFAA)本质上相当于之前描述的 CMA。有一些关键区别,最明显的是它仅适用于“受保护计算机”。

通过law.cornell.edu查看美国法律,定义了“受保护计算机”的含义。

“受保护计算机”一词指的是一台计算机—

(A)专门供金融机构或美国政府使用,或者,在不专门供此类使用的计算机的情况下,由金融机构或美国政府使用,构成犯罪行为的行为影响了金融机构或政府的使用,或

(B)用于或影响跨州或国际商业或通信的计算机,包括位于美国以外的计算机,以一种影响美国跨州或国际商业或通信的方式使用的计算机。

www.law.cornell.edu/uscode/text/18/1030

CFAA 涵盖的犯罪行为在law.cornell.edu上有详细记录,但我们在这里简要提及它们以供参考。

• 未经授权访问计算机或超出授权访问。

• 未经授权访问计算机并获取财务记录、来自美国政府各部门的信息或来自任何受保护计算机的信息。

• 访问受保护计算机并进行进一步的欺诈。

• 传输恶意代码或命令,对受保护计算机造成损害。

• 传播受保护计算机的密码。

根据 CFAA 涵盖的犯罪行为,最高刑期为 20 年监禁。虽然我们有可能重复这一点,但准确定义适当的范围并了解将要进行的工作应该确保正确的路径被遵循。运用一定程度的常识总是有帮助的。确保有一位有权威的人签署的范围,然后再访问计算机,这样“未经授权”就不成问题了。CFAA 的其余部分不应适用于测试人员,因为它涵盖了真正恶意的行为、破坏性行为等。

总结立法关注部分,获得一个签署的范围!本章涵盖了可能适用于这个行业的大部分法律,这些法律都严重依赖于未经授权访问的方面。确保任务得到有权签署的人的批准,然后严格遵守范围。最好提前提出任何潜在风险,以便客户意识到可能存在的法律后果。

社会工程框架

社会工程学像渗透测试一样,在任何参与中都遵循一个生命周期。与渗透测试不同的是,目前并没有很多已发布的框架,这可能是因为社会工程学是一个尚未像渗透测试那样大行其道的小众业务。

幸运的是,在这两个领域的一般概念在大多数方面都相当契合,这可以帮助您在参与过程中定义自己的遵循流程。

更多信息可以在渗透测试执行标准或 PTES 中找到—www.pentest-standard.org/index.php/Main_Page

PTES 旨在提供可在整个测试生命周期中实施的指导方针。它确实在一定程度上涵盖了社会工程技术,但主要面向渗透测试人员。

以下是主要部分的见解,以及如何调整它们以构建特定的测试框架;

• 预先交互

• 情报收集

• 威胁建模

• 漏洞分析

• 利用

• 后渗透

• 报告。

很明显,通过适当的修改,以上框架可以修改以适应更多或更少的任何工作类型,而不仅仅是社会工程。事实上,本章的许多部分可以直接映射到其中一个标题。这些部分应用的顺序可能会改变,一些部分可能会合并到其他部分,但是这些概念是直接适用的。

当然,PTES 更详细地涉及了每个要点,因此以下是每个步骤如何与社会工程对应的映射。

预先互动

本节涵盖了评估开始前面临的所有问题和挑战。

关键点如下:

• 范围

• 目标

• 建立沟通渠道

• 参与规则

• 保护自己

我们在本章已经涵盖了很多这些话题,但有趣的是这是多么适用。在许多情况下,确保范围正确也可以合并包含评估目标。建立沟通渠道将有助于确保在评估期间提供足够的保护,并将信息传递给正确的人,毕竟,这通常是非常敏感的。

在这项工作中,参与规则部分也是关键的,并且可以作为范围练习的一部分包含进来。

情报收集

本节实际上提到了社会工程,尽管更多是从支持渗透测试的情报收集的角度来看。

虽然一些技术和技巧可能会变化,但在社会工程参与期间进行情报收集可能是最重要的阶段,并且它将为测试的其余部分建立基础。

在测试的这个阶段,示例练习包括从搜索引擎和社交网络中收集公司电子邮件地址,从公开可用的公司文档中解析文档元数据,以及建立诸如总机和接待处的电话号码等联系方式。

这些主题在第八章中将更详细地讨论。

威胁建模

本节涵盖了在组织内识别关键资产,并且妥协这些资产会产生什么影响。对于社会工程,资产可以是一个人,一个系统,或者关键数据,如信用卡号码或密码。

在社会工程中的威胁建模更有可能是与客户进行的互动过程,在已经在参与部分中讨论过的范围练习期间进行的。对于本节来说,漏洞分析将折叠在同一个标题下。第六章将介绍有效的威胁建模。

利用

在社会工程方面,利用阶段也可以轻易地称为执行阶段。在这里,所有收集到的侦察信息和先前构建的假设都将被执行以实现目标。

预定义计划的执行或利用可以采取几种形式。这可能涉及从垃圾箱中检索敏感数据,获得进入建筑物的物理访问权限,或仅通过进行有针对性的电话呼叫来确定警报代码。一切都指向这个阶段,并且为随后的一切提供支持。这些主题将在本书中更详细地讨论。

后期利用

后期利用/执行涵盖了在成功利用后应执行的一切。例如,成功利用可能是通过尾随获得进入建筑物。后续执行任务可能是收集敏感信息并在不被发现或注意的情况下外泄。也可能是连接到网络并从公司主机中尽可能枚举尽可能多的信息。执行和后期执行阶段通常会在大多数项目中合并在一起,但通常会有主要和次要目标。

主要目标(利用)

• 获得进入建筑物的物理访问权限。

次要目标(后期利用)

• 拿走公司财产,如笔记本电脑或 iPad。

• 获得进入建筑物的受限区域。

• 将一个 dropbox 插入网络以充当特洛伊木马。

• 拿走员工的门禁卡并尝试克隆它。

主要关注的区域被视为主要目标,在这种情况下是获得进入建筑物的权限。次要目标被视为奖励,但通常有助于识别运营上的不足。例如,如果端口得到适当保护,工程师就不应该能够将 dropbox 插入网络。

Dropboxes 是可以插入网络并回传到您选择的系统的设备。它们在长时间的努力或将测试的道德黑客部分转移到远程团队成员时非常有用,后者不像在现场那样承受同样的压力。Dropboxes 在第十二章中有更详细的介绍。

报告

报告将涵盖书面报告以及与客户的口头总结。本章中简要介绍了这些内容,但在第十三章中将进行详细介绍。

本节的目的不是详细介绍每个单独的主题,因为它们已经在整本书中涵盖了。目的是建立一个社会工程评估框架,可应用于每个项目。没有深入研究 PTES 的细节,其概念可以应用于构建我们的框架,这将有望提高社会工程项目的运营效率和效果。

如需了解更多关于框架的信息,请查看本书的目录。许多已经涵盖的内容都可以相对容易地转移。目录实际上是社会工程的一个框架。

另一个出色的社会工程框架可以在www.social-engineer.org/framework/Social_Engineering_Framework找到。该网站总体上是一个很棒的资源,播客也是!那些漫长的车程将消逝不见!

评估前提条件

无论正在进行的工作类型如何,确保满足一致的前提条件集合对项目的成功至关重要。然而,社会工程具有一两个独特的要求,我们将在本节中介绍。例如,在标准的 IT 项目中,安装防火墙,对前提条件的不当处理可能会给正在进行工作的工程师带来严重不便。而在进行社会工程项目时,对前提条件的不当处理可能会导致安全问题甚至警察介入。请查看一些更常见的前提条件,这些前提条件将有助于在过程中避免入狱。

范围文件

对于任何社会工程项目,由客户签署范围文件至关重要,并且同样重要的是在项目开始之前由社会工程师进行验证。

尽管范围文件显然需要根据需要进行定制,但以下是应该包括的一些示例。

联系方式

应当确定一个主要和一个次要联系人。这一点的重要性不可低估,因为他们是在物理评估过程中被抓时要联系的人。至关重要的是,测试日期时这两个联系人都要可用。建议这些联系人是唯一知道评估的人。让更多人了解,评估失败的可能性就越大。

如果包括更多的人员,那么应该在文档中列出所有已被告知即将进行测试的人员名单。这可以帮助避免在试图从已知正在进行测试的人员那里获取信息时出现尴尬的情况。

测试类型

也许会提供模板测试类型,以及更定制的作为社会工程师的提供。然而,提供两者可能是个好主意。这不仅会帮助支持销售部门,还可以作为一个菜单,为客户提供选择,让他们选择或选择他们认为对业务有益的内容。这并不是说顾客不应该被引导选择对他们更有利的内容,毕竟,社会工程师在这个领域有丰富的经验。关于这个话题将在第六章中详细讨论,该章节涉及有效的威胁建模。无论如何,本节将记录所需的内容,包括任何特殊或定制的要求。这可能包括特定的部门或资源目标。一个经常使用的很好的例子是尝试“借用”一台公司笔记本电脑并离开办公室。这种任务肯定会导致工程师急忙寻找那张免于监禁的信,这在本节的最后部分有涵盖。

范围限制

本节为客户提供了识别完全禁止的项目的能力。撬锁就是一个很好的例子。

通常在这一部分有一些勾选框,列出了在典型测试中可能会做的事情。这样一来,流程对客户来说会简单一些,但并不是在确定范围前与客户咨询的替代品。

范围文件将包含一些非常关键的信息,并希望能帮助工程师在评估过程中避免麻烦。但是如果工程师被抓了怎么办?工程师经常发现自己在测试中被安保人员包围,并且在警察审讯室里坐了很长时间。这就是这个游戏的规则。是什么阻止了工程师被逮捕?

答案在于“免于监禁的信”。

获得免于监禁的机会

与《大富翁》不同,这并不是一项允许无罪犯罪的许可,仅仅是在工程师在评估过程中被抓或挑战时的一封授权信。这是一封给挑战者的信,要求他们致电指定联系人,并解释这是一项合法审核的一部分。

通常这会包括一节关于礼貌尊重信函持有人的部分。不幸的是,不能保证这一点会被遵循。再次强调,这只是某些情况下游戏的本质。

关键交付物

任何项目的交付物都可能因项目而异,但有些项目在任何工作中都是不变的。

经常发现,任何活动的结果可以以不同的方式传达,而这些方法必须对业务各层级的员工都是可接受和可理解的。任何社会工程师的目标应该是以能够产生持久影响的方式传达结果。任何项目结束时的目标都是帮助组织防范此类未来攻击。

因此,结果可以分为两个明确的类别:书面报告和口头解密,彼此相辅相成。两者之间可能会有重叠,但这并不会减少该方法对客户的实用性。

解密

解密通常是与客户进行座谈,审查评估结果以及对您收集的任何证据或相关资料进行讨论。在社会工程活动期间,工程师已经多次获得了对客户站点的物理访问权限,并在解密期间仅仅出现在他们的办公室,或者从他们的会议室电话中打电话给他们的情况并不少见。虽然这种做法确实给程序增添了影响力,但在尝试之前确实需要了解受众。最不需要的是引起冒犯或显得炫耀。

在解密过程中,带上在评估过程中收集到的任何证据都是有用的。照片和视频对客户总是很有趣,可以真正强调所表达的观点。详细的时间表对解密至关重要。值得指出的是,尽管在进行评估时收集这些证据可能非常困难,但某些类型的技术,如隐藏摄像头和麦克风,可以使其变得更加容易。

有许多方法可以实现这一点,可以通过 PowerPoint 幻灯片的分解或作为非正式的交流来实现。无论哪种方式,后续的书面报告都可以涵盖正式事项。

了解被解密人的情绪状态至关重要。人们对自己被侵犯感到震惊甚至愤怒,立即开始责备互相责备。在整个过程中,必须以圆滑的方式传达信息。避免点名指责或指责个人。即使无意中让人尴尬或贬低也对过程没有帮助,反而可能引起抵抗和对你及你的发现的不满。这就是为什么将可交付成果分为解密和报告两部分效果如此出色的原因。解密让客户能够接受发生的事情,并解释所识别的问题是程序性的,而不是个人的错误,这几乎总是真实的。在书面报告送达的时候,往往是一周后,事情已经稍微平静下来,报告可以更加建设性地看待。

总结不仅仅是结果的交付,也是作为专业人士的责任,确保客户在过程中不会过于激动。唯一的方法是教育他们了解他们的流程和程序中的漏洞,并且不要将这些问题视为个别的错误,因为它们几乎总是不是。

除了审查测试期间识别出的各个问题,还应该专注于解决问题。在绝大多数情况下,解决措施纯粹是教育性质的。建议最好能够进入下一轮员工意识培训,以确保取得重大改进。将安全作为生命周期的理念在此处效果良好,不断的再教育和再测试有助于形成更健康的姿态。

同样,在总结时,我们将归还在评估期间夺取的任何东西。在测试期间删除数据、记录甚至设备并不罕见。显然,这仅在事前征得联系人的明确同意的情况下进行,并且仅限于公司财产。

总结要点

• 在尝试任何可能被误解的增强影响之前,了解受众。

• 带领客户审视已收集到的证据,包括时间线。

• 清楚说明导致违规的原因——通常是程序上的缺陷。

• 不要点名道姓。不要羞辱人。不要使人尴尬。

• 尽可能使过程互动化,鼓励客户参与。

• 在违规阶段评估完成后立即进行总结。

• 就如何最好地解决已识别出的问题提供明确的指导。

• 归还在测试期间拿走的任何设备。

• 交出你的免责卡。这些卡不想落入错误的手中。

报告

正如之前提到的,书面报告与总结将有一些内容重叠,但在许多方面会有更详细的介绍。书面报告很可能会传到组织内各个层面的人员手中。这意味着报告必须满足每个人的需求。报告应该包括针对管理层的高层摘要以及深入的技术信息,以确保结果在业务各个层面获得必要的支持。毕竟,如果结果没有得到采取行动,这一过程有何意义?对于社会工程师和客户来说,徒劳的练习同样令人沮丧,每个人都需要能够看到他们所做的事情的价值!

报告的最初部分将在很大程度上是标准化的,并来自存货模板。这些部分将包括关于社会工程师作为企业和个人的背景信息。它将包括企业内的相关资格和经验,以及有关测试所应用方法的信息。在规划阶段获取的信息和规划文件中的信息也将反映在这些最初部分中。应该提及测试的目标声明以及范围的任何限制。

现在报告的布局主要取决于个人偏好。按照遵循的方法编排报告的最合乎逻辑的方式。这种布局也应该自然地以侦察/信息收集阶段开始的时间顺序结束。

每个部分都应该有发现的摘要,包括任何额外的细节,以及任何支持证据,如照片、视频或声音录音。最后,应提供可帮助客户解决缺陷的纠正建议。

包括了在测试期间从侦察工作中获得的一个例子。

在信息收集过程中,顾问们能够从公开可用的文档元数据中收集企业信息。元数据包括在文档创建时,但在过程中往往对最终用户隐藏。在这种情况下,恢复的数据包括用户名、电子邮件地址和本地安装的软件包。这种类型的信息落入错误的手中可能会造成极大的损害。例如,收集到的电子邮件地址可用于所谓的钓鱼式攻击。钓鱼式攻击的最基本形式是针对组织内的个人,希望他们会在电子邮件中点击恶意链接,或者打开恶意附件。在这种情况下,用户的计算机可能会完全被入侵,这可能导致敏感企业数据的丢失。然后该系统可能成为对网络内其他系统进行进一步攻击的平台。本地安装的软件包信息也可用于使攻击者能够针对已知存在漏洞的软件包。

建议在发布文档之前清除所有元数据,除了通用信息以外,并且所有现有文档都要接受相同的处理。

这个例子清楚地列出了问题、相关风险以及解决问题的清晰路径。然而,在清理元数据的个别产品方面没有具体建议,但如果合适的话,这可以深入到那个层面,因为有很多可用的工具。它还避免了在这个阶段过于技术化或使用过多的技术术语。进一步报告中将提供每次成功攻击的更多详细信息。如果钓鱼攻击成功,可以将元数据问题作为攻击的起点参考。然后包括一些钓鱼邮件的截图,以及显示该用户群体点击量的截图,这部分报告的影响将大大增加。在报告中使用视觉辅助工具对大多数读者来说意义重大,它真正突出了概念的可行性,并打破了报告可能出现的大段文本。

第十三章将详细介绍书面报告,因此在继续之前我们将总结本节的一些关键点。

书面报告的关键点

• 了解受众并迎合他们。应包括管理和技术部分。

• 包括事件的时间线。 提示—使用照片的 EXIF 数据跟踪确切时间!

• 包括有关事件、暴露和如何解决问题的信息。

• 确保包含所有证据—视频、照片和音频。

• 与总结会一样,避免包含个人姓名。

• 包括有关团队及其经验或资格的信息。

社会工程团队成员和技能集

社会工程团队可以由许多个人组成,每个人具有不同的优势、劣势和经验水平。你可能参与的项目是一个单打独斗,或者作为一个更大团队的一部分来覆盖评估的所有方面。无论哪种情况,将工程师的技能集与手头工作相匹配是合理的。

以下是可能被部署以完成工作的不同类型的个人。

通才

通才是一位全能型、能做所有事情的团队成员。他们可能是团队中经验较少的成员,技能集和经验水平最不发达,但你可能需要更有经验的工程师来担任这个角色以补充人数。

关键属性:

• 积极的态度—他们必须愿意尝试任何要求的事情。在社会工程任务中,这可以从翻找垃圾到尾随吸烟者进入后门等各种行为。

• 通用技能集—此时,个人应该对一些常见的社会工程概念有一定了解,并且肯定掌握所有常见术语。通常通才会被负责工作的工程师指定执行具体任务。

道德黑客

当你已经获得进入建筑物并需要从网络中检索数据时,道德黑客是你的王牌。这个角色将由一名渗透测试员担任,最好是能在压力下保持冷静的人。当有安保人员在寻找工程师,或者在非常受限的时间窗口内进行数据外泄时,获取系统访问权限就完全是另一回事了。

关键特征:

• 经验丰富的渗透测试员

• 至少具备社会工程学的通才级知识

• 在压力下极其冷静。

燃烧器

“燃烧器”是指用于不正当业务且无法通过任何方式追踪到实际所有者的手机的常用术语。因此,可以毫不犹豫地或内疚地处理掉它。燃烧器是牺牲品。这是一个团队成员,被派去执行高风险任务,明白一旦被抓到现行可能会暂时失去个人。通常需要实施这个计划是因为情势所迫,没有其他方式可以获取所需的情报。

如果采用分散注意力的技术,燃烧器也将参与这项任务。分散一组警卫和常常是前台的注意力,确实可以为团队其余成员打开大门!

社会工程师

团队中的社会工程师是一位擅长操纵、说服和欺骗的人。有些人很幸运,这些技能自然而然地就掌握在他们手中。其他人则是在其他角色的职业生涯中逐渐学会了这些技能。例如,销售人员已经在不自觉地应用社会工程学的行业技巧!听一个销售人员试图让前台或呼叫中心接通他们的电话到首席技术官或类似职位的过程可能是一次开眼界的经历。通常销售团队会被要求扮演这个角色,并在我们的合作中拨打电话。

除了支持销售人员外,团队中可能至少有一名专门的社会工程师。他很可能会花大部分时间打电话,试图操纵个人为通才们开门。尽管如此,永远不要低估面对面社会工程的力量。人们经常接到他们不想处理或看起来可疑的电话,但亲自接触这种情况要少得多,因此更有可能成功。

关键特征:

• 极度自信。这适用于面对面对话以及使用电话

• 熟练的操纵者

• 精通社会工程的人类要素。理解本书涵盖的所有概念。第一章–第三章是一个很好的起点

• 思维敏捷

• 在准备工作方面非常详细,比如建立强大的借口。

侦察员

侦察员负责在部署和执行任务期间进行所有侦察工作的各个方面。这可能包括收集建筑物及其安全设置的照片证据,确定巡逻时间表等。侦察员将查看入口和出口点,尝试确定使用的门控机制,并查看是否有特定的时间更适合执行任务。例如,如果计划在外围门处溜门,那么最好的时间是大多数人开始上班的时候。通过那扇门的人越多,跟随而不显得太可疑的机会就越多。在那里站着,看起来不合适地等待有人跟随是再糟糕不过的事情了。

侦察员也会在办公室的舒适环境中进行大量的初步侦察工作。令人惊讶的是,使用这种技术可以找到多少有用的信息,例如在 images.google.commaps.google.com 上。实际上,通过这种技术常常可以找到带有 ID 徽章的高分辨率图片。谷歌地图可以用来对物理位置进行一定程度的准确度评估,但不应完全依赖它。街景是一个特别有用的工具,可以帮助识别入口和出口、吸烟区和安全门等。

侦察员角色通常由团队内的通才填补。可以说,由于这些信息的重要性,整个团队将参与到执行任务的侦察阶段中。

将所有信息汇总并围坐在一张桌子旁讨论潜在的攻击向量总是一个有用的练习。

关键属性:

• 注重细节—在侦察中,每一点信息都至关重要。知识就是力量

• 精通技术—不仅从设备的角度来看,还要从操作合法服务的角度来看,比如利用谷歌地图进行有用的侦察。

• 了解安全系统和社会工程学的一般知识

• 能够识别执行任务的机会,比如吸烟区,或者员工可能有的开放攻击向量。

盗贼

好吧,这个人其实并不是一个盗贼,但是可以在两种角色类型之间画出一些相似之处,更浪漫的概念上的大盗。

这个团队内的角色通常由一个很可能拥有所有上述类别技能的人填补。除此之外,盗贼将具有撬锁和物理安全技能,了解安全系统以及如何绕过或避开它们的能力,以及即使在特别敏感或安全性很高的区域也能够不被察觉的能力。

这个角色需要铁一般的神经。如果手不受控制地颤抖,那么撬锁可不是一件容易的事情。

关键属性:

• 天才撬锁者

• 意识到其他物理安全技术以及如何绕过或规避它们。

• 通常在其他社会工程领域有技能。

• 钢铁般的神经。

摘要

本章介绍了社会工程的必要性,以及为什么行业正逐渐开始增长并被更加认真地对待。像 RSA 这样的高调妥协促使了对社会工程的态度变化。合规性被简要提及,以及社会工程活动如何用于辅助合规性。

接下来是社会工程活动的话题。审视运营条件、挑战和考虑因素,这些都不容忽视。这包括简要介绍威胁建模、时间管理困难、项目管理以及伦理考量。这些话题是从客户的角度出发的,以帮助他们确定合适的人员执行您的评估。还包括了立法方面的考虑,如 CMA、人权法案和 CFAA。

随后,讨论了如何通过调整 PTES 来构建社会工程框架,以便简化操作。

评估先决条件是一个关键话题,有助于确保项目不会因初步咨询不当或缺乏支持信息而偏离正轨。

最后,确定任何参与活动的关键交付内容,以及确定将交付这些内容的团队成员。

第六章 将讨论威胁建模以及如何在社会工程活动中有效应用它。本章将涵盖当前的威胁以及真实案例。它还将通过实际方法指导客户进行威胁建模。

此外,需要解决为何需要威胁建模以及我们企业面临的实际威胁。


¹ 对老旧机动车进行安全性和尾气排放的年度强制测试。

关键属性:

• 积极的态度—他们必须愿意尝试任何要求的事情。在社会工程任务中,这可以从翻找垃圾到尾随吸烟者进入后门等各种行为。

• 通用技能集—此时,个人应该对一些常见的社会工程概念有一定了解,并且肯定掌握所有常见术语。通常通才会被负责工作的工程师指定执行具体任务。

道德黑客

当你已经获得进入建筑物并需要从网络中检索数据时,道德黑客是你的王牌。这个角色将由一名渗透测试员担任,最好是能在压力下保持冷静的人。当有安保人员在寻找工程师,或者在非常受限的时间窗口内进行数据外泄时,获取系统访问权限就完全是另一回事了。

关键特征:

• 经验丰富的渗透测试员

• 至少具备社会工程学的通才级知识

• 在压力下极其冷静。

燃烧器

“燃烧器”是指用于不正当业务且无法通过任何方式追踪到实际所有者的手机的常用术语。因此,可以毫不犹豫地或内疚地处理掉它。燃烧器是牺牲品。这是一个团队成员,被派去执行高风险任务,明白一旦被抓到现行可能会暂时失去个人。通常需要实施这个计划是因为情势所迫,没有其他方式可以获取所需的情报。

如果采用分散注意力的技术,燃烧器也将参与这项任务。分散一组警卫和常常是前台的注意力,确实可以为团队其余成员打开大门!

社会工程师

团队中的社会工程师是一位擅长操纵、说服和欺骗的人。有些人很幸运,这些技能自然而然地就掌握在他们手中。其他人则是在其他角色的职业生涯中逐渐学会了这些技能。例如,销售人员已经在不自觉地应用社会工程学的行业技巧!听一个销售人员试图让前台或呼叫中心接通他们的电话到首席技术官或类似职位的过程可能是一次开眼界的经历。通常销售团队会被要求扮演这个角色,并在我们的合作中拨打电话。

除了支持销售人员外,团队中可能至少有一名专门的社会工程师。他很可能会花大部分时间打电话,试图操纵个人为通才们开门。尽管如此,永远不要低估面对面社会工程的力量。人们经常接到他们不想处理或看起来可疑的电话,但亲自接触这种情况要少得多,因此更有可能成功。

关键特征:

• 极度自信。这适用于面对面对话以及使用电话

• 熟练的操纵者

• 精通社会工程的人类要素。理解本书涵盖的所有概念。第一章–第三章是一个很好的起点

• 思维敏捷

• 在准备工作方面非常详细,比如建立强大的借口。

侦察员

侦察员负责在部署和执行任务期间进行所有侦察工作的各个方面。这可能包括收集建筑物及其安全设置的照片证据,确定巡逻时间表等。侦察员将查看入口和出口点,尝试确定使用的门控机制,并查看是否有特定的时间更适合执行任务。例如,如果计划在外围门处溜门,那么最好的时间是大多数人开始上班的时候。通过那扇门的人越多,跟随而不显得太可疑的机会就越多。在那里站着,看起来不合适地等待有人跟随是再糟糕不过的事情了。

侦察员也会在办公室的舒适环境中进行大量的初步侦察工作。令人惊讶的是,使用这种技术可以找到多少有用的信息,例如在 images.google.commaps.google.com 上。实际上,通过这种技术常常可以找到带有 ID 徽章的高分辨率图片。谷歌地图可以用来对物理位置进行一定程度的准确度评估,但不应完全依赖它。街景是一个特别有用的工具,可以帮助识别入口和出口、吸烟区和安全门等。

侦察员角色通常由团队内的通才填补。可以说,由于这些信息的重要性,整个团队将参与到执行任务的侦察阶段中。

将所有信息汇总并围坐在一张桌子旁讨论潜在的攻击向量总是一个有用的练习。

关键属性:

• 注重细节—在侦察中,每一点信息都至关重要。知识就是力量

• 精通技术—不仅从设备的角度来看,还要从操作合法服务的角度来看,比如利用谷歌地图进行有用的侦察。

• 了解安全系统和社会工程学的一般知识

• 能够识别执行任务的机会,比如吸烟区,或者员工可能有的开放攻击向量。

盗贼

好吧,这个人其实并不是一个盗贼,但是可以在两种角色类型之间画出一些相似之处,更浪漫的概念上的大盗。

这个团队内的角色通常由一个很可能拥有所有上述类别技能的人填补。除此之外,盗贼将具有撬锁和物理安全技能,了解安全系统以及如何绕过或避开它们的能力,以及即使在特别敏感或安全性很高的区域也能够不被察觉的能力。

这个角色需要铁一般的神经。如果手不受控制地颤抖,那么撬锁可不是一件容易的事情。

关键属性:

• 天才撬锁者

• 意识到其他物理安全技术以及如何绕过或规避它们。

• 通常在其他社会工程领域有技能。

• 钢铁般的神经。

摘要

本章介绍了社会工程的必要性,以及为什么行业正逐渐开始增长并被更加认真地对待。像 RSA 这样的高调妥协促使了对社会工程的态度变化。合规性被简要提及,以及社会工程活动如何用于辅助合规性。

接下来是社会工程活动的话题。审视运营条件、挑战和考虑因素,这些都不容忽视。这包括简要介绍威胁建模、时间管理困难、项目管理以及伦理考量。这些话题是从客户的角度出发的,以帮助他们确定合适的人员执行您的评估。还包括了立法方面的考虑,如 CMA、人权法案和 CFAA。

随后,讨论了如何通过调整 PTES 来构建社会工程框架,以便简化操作。

评估先决条件是一个关键话题,有助于确保项目不会因初步咨询不当或缺乏支持信息而偏离正轨。

最后,确定任何参与活动的关键交付内容,以及确定将交付这些内容的团队成员。

第六章 将讨论威胁建模以及如何在社会工程活动中有效应用它。本章将涵盖当前的威胁以及真实案例。它还将通过实际方法指导客户进行威胁建模。

此外,需要解决为何需要威胁建模以及我们企业面临的实际威胁。


¹ 对老旧机动车进行安全性和尾气排放的年度强制测试。

相关文章
|
6天前
|
Web App开发 Java 测试技术
《手把手教你》系列技巧篇(五十六)-java+ selenium自动化测试-下载文件-上篇(详细教程)
【5月更文挑战第20天】本文介绍了自动化测试中如何实现无弹窗下载文件,主要针对Firefox浏览器。作者指出,通常的下载操作包括点击下载按钮,但这里讨论的是避免下载弹窗直接保存文件的方法。文章详细讲解了通过设置Firefox参数(如`browser.download.dir`、`browser.helperApps.neverAsk.saveToDisk`等)来实现这一功能,并给出了Java Selenium的示例代码,展示了如何创建FirefoxProfile并进行相关设置,以及如何启动浏览器和执行下载操作。
23 0
《手把手教你》系列技巧篇(五十六)-java+ selenium自动化测试-下载文件-上篇(详细教程)
|
11天前
|
机器学习/深度学习 移动开发 测试技术
《手把手教你》系列技巧篇(五十一)-java+ selenium自动化测试-字符串操作-下篇(详解教程)
【5月更文挑战第15天】自动化测试中进行断言的时候,我们可能经常遇到的场景。从一个字符串中找出一组数字或者其中的某些关键字,而不是将这一串字符串作为结果进行断言。这个时候就需要我们对字符串进行操作,宏哥这里介绍两种方法:正则和字符串切片函数split()。
29 2
|
3天前
|
Java 测试技术 Python
《手把手教你》系列技巧篇(五十九)-java+ selenium自动化测试 - 截图三剑客 -上篇(详细教程)
【5月更文挑战第23天】本文介绍了使用Java和Selenium进行自动化测试时如何实现截图操作。原本计划讲解远程测试内容,但因服务器网络问题无法进行,因此转而分享Selenium的截图方法。文章分为三部分,首先简述背景,然后重点介绍了TakeScreenshout类,这是一个用于获取浏览器窗口内容的截图工具,不包含浏览器菜单和任务栏。接着,列举了一个测试场景:访问百度首页并截图保存。最后,提供了代码示例,展示了如何设计自动化测试代码以及截图保存到指定目录,并附有代码运行效果展示。
17 2
|
4天前
|
Java 测试技术 Python
《手把手教你》系列技巧篇(五十八)-java+ selenium自动化测试-分页测试(详细教程)
【5月更文挑战第22天】本文介绍了自动化测试分页的实现方法。首先,文章提出了测试分页时关注的三个关键点:总页数、当前页数和页码导航的可用性。接着,作者分享了一个实用网站([https://www.jq22.com/](https://www.jq22.com/))以找到示例进行实践。在代码部分,展示了使用Java和Selenium进行自动化测试的示例代码,包括获取总页数、遍历所有页面及判断当前页面等操作。最后,简要总结了分页自动化测试的实现过程。
18 1
|
5天前
|
Web App开发 Java 测试技术
《手把手教你》系列技巧篇(五十七)-java+ selenium自动化测试-下载文件-下篇(详细教程)
【5月更文挑战第21天】本文介绍了自动化测试中如何实现无弹窗下载文件,特别针对Chrome浏览器。通过设置`download.default_directory`和`profile.default_content_settings.popups`,可以避免下载弹窗并指定下载路径。示例代码展示了如何使用Java和Selenium实现这一功能,包括导入相关库、设置ChromeOptions和执行下载操作。最后,文章提到虽然没有介绍IE浏览器的下载方法,但已有Chrome和Firefox的方法已足够应对大多数需求。
23 0
|
7天前
|
Java 测试技术 API
《手把手教你》系列技巧篇(五十五)-java+ selenium自动化测试-上传文件-下篇(详细教程)
【5月更文挑战第19天】本文介绍了在Web自动化中处理文件上传的挑战,由于Selenium WebDriver不直接支持文件上传,因此需要借助外部工具。文章提到了两种主要的上传方式:基于input框的上传和非input控件的上传。对于非input控件的上传,推荐使用AutoIt,这是一个支持Windows GUI自动化的工具。
38 9
|
8天前
|
Web App开发 机器人 Java
《手把手教你》系列技巧篇(五十四)-java+ selenium自动化测试-上传文件-中篇(详细教程)
【5月更文挑战第18天】本文介绍了在Web自动化测试中处理文件上传的几种方法,特别是针对非`input`控件上传的场景。由于Selenium WebDriver无法操作系统级窗口,因此不能直接支持文件上传。作者提到了四种解决策略:AutoIT、Python的pywin32库、SendKeys库和keybd_event。文章以Java为例,详细阐述了使用Robot类模拟键盘操作来实现非`input`控件的文件上传,包括代码示例和实际项目中的应用。最后,作者分享了一个使用Python和Robot类处理百度图片搜索上传图片的实战案例,并指出有时Chrome浏览器可能需要特定条件才能成功模拟上传。
15 2
|
9天前
|
前端开发 JavaScript 测试技术
《手把手教你》系列技巧篇(五十三)-java+ selenium自动化测试-上传文件-上篇(详细教程)
【5月更文挑战第17天】本文介绍了在Web自动化测试中处理文件上传操作的方法。Selenium的WebDriver未提供直接的API来处理文件上传,因为这涉及到操作系统级别的窗口交互,而WebDriver无法识别非Web元素。文件上传主要分为两类:基于input控件的上传和非input控件的上传。对于input控件,可以直接使用sendKeys()方法输入文件的绝对路径来模拟选择文件。在项目实战中,给出了一个简单的HTML页面和对应的Java代码示例,展示了如何使用Selenium选取并上传文件。
22 0
|
10天前
|
JavaScript 前端开发 Java
《手把手教你》系列技巧篇(五十二)-java+ selenium自动化测试-处理面包屑(详细教程)
【5月更文挑战第16天】本文介绍了网页面包屑导航的概念、作用及其实现方式。面包屑导航是一种用户界面元素,帮助用户理解他们在网站中的位置并方便返回。通常形式为“首页>分类>子分类>内容页”,最多三层结构。在自动化测试中,处理面包屑涉及获取层级关系和当前层级,可以通过查找包含面包屑的div或ul元素,再提取其中的链接来实现。文中还提供了一个基于HTML和JavaScript的简单示例,并展示了相应的自动化测试代码设计和运行结果。
19 0
|
12天前
|
搜索推荐 Java 测试技术
《手把手教你》系列技巧篇(五十)-java+ selenium自动化测试-字符串操作-上篇(详解教程)
【5月更文挑战第14天】本文介绍了自动化测试中如何从字符串中提取特定信息,主要讲解了两种方法:正则表达式和字符串切片操作。文章提供了一个测试场景,即在搜索引擎中搜索“北京宏哥”并比较百度和必应的搜索结果数量。通过字符串切片函数`split()`,可以从搜索结果的描述中提取出数字。代码示例展示了如何使用Java实现这个功能,包括在百度和必应的搜索页面获取结果数量,并进行比较。文章最后还简单提到了其他字符串截取的方法,如`substring()`和`StringUtils`类中的方法。
28 2