草庐IT

防御Azure AD攻击:采用身份保护替代防火墙

Susan Bradley 2023-03-28 原文

不久以前,保护网络访问是企业安全团队防御的重点。强大的防火墙可以确保在外部阻止网络攻击者,从而允许用户在内部控制。这些防火墙通常是企业的终极防御措施,没有得到许可的任何人都不能进入。

随着云计算的出现,网络的边缘不再受到防火墙的保护。事实上,网络不再具有优势:在人们的“随时随地”的工作环境中,如今任何数据中心都是边界,人们不能再依赖传统的安全保护机制。网络安全已经变得更注重保护身份,而不是网络本身。

微软公司在最近发表的一篇博客文章中讨论了保护Azure Active Directory(Azure AD)身份安全的一些趋势。这篇文章指出,现在许多网络攻击序列都是从个人开始的,目的是在企业内部获得立足点,然后发起勒索软件攻击或其他网络攻击。

密码仍然是安全的致命弱点

正如微软公司主管身份安全的副总裁Alex Weinert在这篇文章中指出的那样,密码仍然是网络安全的致命弱点,主要有三种类型的攻击序列:

  • 密码喷洒:针对多个账户猜测通用密码。
  • 网络钓鱼:诱使某人在虚假网站上或在回复短信或电子邮件时输入他们的凭据。
  • 重用泄露密码:依靠普遍的密码重复使用,将在一个网站上泄露的密码用于其他网站。
网络攻击者在过去通常攻击网络中的薄弱环节,现在他们会攻击身份验证和保护方面的薄弱环节。人们经常重复使用密码,网络攻击者也知道这一点,所以他们会从以前被黑客攻击的数据库中获取密码,并试图在其他地方使用它。虽然大多数密码攻击都是针对那些没有多因素身份验证(MFA)的帐户,但更复杂的网络攻击是针对多因素身份验证(MFA)进行攻击。当他们这样做时,网络攻击者会采取以下行动:

  • SIM卡劫持和利用其他电话漏洞。
  • MFA疲劳攻击或网格攻击。
  • 中间对手攻击,诱使用户进行多因素身份验证(MFA)交互。

微软:放弃多因素身份验证(MFA),增加密码保护方式

为了防御这三种攻击,微软公司建议用户放弃多因素身份验证(MFA),增加密码保护方式。网络攻击者知道人们经常因为身份验证疲劳而导致密码泄露,他们会模仿人们正常身份验证平台的网站,在上面输入密码。密码疲劳是微软公司将其身份验证应用程序的默认值更改为数字匹配而不仅仅是用户必须批准的身份验证的原因之一。

最近发布的一篇博客文章讨论了不同类型攻击的优秀资源,以及补救技术。正如微软所指出的,其中一种“传递cookie”攻击类似于在Azure AD中传递哈希或传递票证攻击。通过浏览器对Azure AD进行身份验证之后,将为该会话创建并存储一个cookie。如果网络攻击者能够侵入设备并提取浏览器cookie,他们就可以将该cookie传递到另一个系统上的单独Web浏览器中,从而绕过安全检查点。在个人设备上访问企业资源的用户尤其面临风险,因为这些设备的安全控制通常比企业管理的设备还要弱,而且IT人员缺乏对这些设备的可见性,无法确定是否会泄露。

审查可以访问系统的人员

企业在设计多因素身份验证(MFA)保护审查时,重要的是要考虑谁可以访问哪些系统,并对用户的帐户进行分级审查。首先审查用户,并根据风险和他们可以访问的内容对他们进行细分;网络攻击者通常会将目标锁定在其工作区域中的特定用户或某人。例如,LinkedIn通常用于识别企业员工之间的关系,因此应该意识到这些关系,并确定采用适当的资源来保护关键人员。

企业通常部署计算机来满足工作的需要,而不是基于角色固有的风险根据预算部署工作站。但是,如果企业根据网络攻击者的看法返回并检查自己的网络呢?众所周知,Windows 11现在要求采用额外的硬件以更好地保护基于云的登录。可信平台模块用于更好地保护和加强机器上使用的凭据。但是,如果企业没有部署支持Windows 11的硬件,或者同样重要的是,没有确保获得了适当的许可以获得这些关键角色的Windows 11好处,那么可能没有适当地保护好其网络。

如何保护Azure AD免受攻击

保护企业的网络免受Azure AD类型的攻击,首先要确保已经正确设置。最近一篇文章列出了一份详细的配置列表,从许多人长期以来一直在努力解决的一个问题开始:停止部署具有本地管理员权限的工作站。人们通常首先为构建分配一个本地管理员工作站,然后使用本地管理员密码工具包为每个本地管理员分配一个随机密码。企业应该考虑根本不分配本地管理员,而是直接加入Azure AD。

正如研究人员Sami Lamppu和Thomas Naunheim所指出的那样,大多数已知的网络攻击都是从工作站具有本地管理员访问权限开始的。其应对方法是,应该不断审查和分析保护身份所需的额外步骤,因为它是进入企业现代网络的新入口。

以下是这篇博客文章的作者推荐的一些缓解措施:

  • 在Microsoft Intune中创建攻击面减少(ASR)规则,以保护LSAAS进程。
  • 为端点部署Microsoft Defender,以便在检测到可疑活动或工具时获得自动警报。
  • 启用篡改保护功能,以保护客户端的安全设置(例如威胁保护和实时反病毒)。
  • 创建设备合规性策略,要求Microsoft Defender反恶意软件和Defender实时保护,并立即执行合规性检查。
  • 在设备合规政策中要求最低的机器风险评分,而没有很长的宽限期。
  • 在设备对象上使用唯一属性,一旦端点打开或关闭,该属性将立即更新。这可以用作动态组筛选器,以建立设备符合性策略的分配,以要求机器进行风险评分。否则,设备合规性将失败。
  • 特权访问设备场景中的考虑事项,如安全管理工作站(SAW)或特权访问工作站(PAW):要求设备处于“明确”的机器风险评分之下。如果立即执行合规政策的更改,则更改在5分钟内有效(基于测试)。
  • 积极监控端点,以检测恶意凭据窃取工具(如Mimikatz和AAD Internals)。
  • 如果检测到可疑活动,运行Microsoft Sentinel行动手册“隔离设备”。
  • 通过调用Microsoft 365 Defender API,可以接收受影响设备上已登录用户的列表。这应该作为Microsoft Sentinel行动手册的一部分执行,以在端点上检测到攻击性身份盗窃工具时初始化SOAR操作。

有关防御Azure AD攻击:采用身份保护替代防火墙的更多相关文章

  1. ruby - 具有身份验证的私有(private) Ruby Gem 服务器 - 2

    我想安装一个带有一些身份验证的私有(private)Rubygem服务器。我希望能够使用公共(public)Ubuntu服务器托管内部gem。我读到了http://docs.rubygems.org/read/chapter/18.但是那个没有身份验证-如我所见。然后我读到了https://github.com/cwninja/geminabox.但是当我使用基本身份验证(他们在他们的Wiki中有)时,它会提示从我的服务器获取源。所以。如何制作带有身份验证的私有(private)Rubygem服务器?这是不可能的吗?谢谢。编辑:Geminabox问题。我尝试“捆绑”以安装新的gem..

  2. ruby - 在 jRuby 中使用 'fork' 生成进程的替代方案? - 2

    在MRIRuby中我可以这样做:deftransferinternal_server=self.init_serverpid=forkdointernal_server.runend#Maketheserverprocessrunindependently.Process.detach(pid)internal_client=self.init_client#Dootherstuffwithconnectingtointernal_server...internal_client.post('somedata')ensure#KillserverProcess.kill('KILL',

  3. ruby-on-rails - 更好的替代方法 try( :output). try( :data). try( :name)? - 2

    “输出”是一个序列化的OpenStruct。定义标题try(:output).try(:data).try(:title)结束什么会更好?:) 最佳答案 或者只是这样:deftitleoutput.data.titlerescuenilend 关于ruby-on-rails-更好的替代方法try(:output).try(:data).try(:name)?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.c

  4. ruby - 允许主机名包含下划线的 URI.parse 的替代方法 - 2

    我正在使用DMOZ的listofurltopics,其中包含一些具有包含下划线的主机名的url。例如:608609TheOuterHeaven610InformationandimagegalleryofMcFarlane'sactionfiguresforTrigun,Akira,TenchiMuyoandotherJapaneseSci-Fianimations.611Top/Arts/Animation/Anime/Collectibles/Models_and_Figures/Action_Figures612虽然此url可以在网络浏览器中使用(或者至少在我的浏览器中可以使用:

  5. ruby-on-rails - Rails 基本 Base64 身份验证 - 2

    我正在尝试复制此GETcurl请求:curl-D--XGET-H"Authorization:BasicdGVzdEB0YXByZXNlYXJjaC5jb206NGMzMTg2Mjg4YWUyM2ZkOTY2MWNiNWRmY2NlMTkzMGU="-H"Content-Type:application/json"http://staging.example.com/api/v1/campaigns在Ruby中,通过电子邮件+apikey生成身份验证:auth="Basic"+Base64::encode64("test@example.com:4c3186288ae23fd9661c

  6. ruby-on-rails - (Ruby,Rails) 基于角色的身份验证和用户管理...? - 2

    我正在寻找用于Rails的优质管理插件。似乎大多数现有的插件/gem(例如“restful_authentication”、“acts_as_authenticated”)都围绕着self注册等展开。但是,我正在寻找一种功能齐全的基于管理/管理角色的解决方案——但不是简单地附加到另一个非基于角色的解决方案。如果我找不到,我想我会自己动手......只是不想重新发明轮子。 最佳答案 RyanBates最近做了两个关于授权的railscast(注意身份验证和授权之间的区别;身份验证检查用户是否如她所说的那样,授权检查用户是否有权访问资源

  7. ruby-on-rails - 在 Rails 3 中进行身份验证最常用的方法是什么? - 2

    我需要在rail3中使用标准注册/登录/忘记密码功能进行身份验证。是否有大多数人为此使用的插件或其他东西? 最佳答案 我不确定最常用的方法是什么-但可以肯定的是,Plataformatec的“Devise”是一个非常流行的方法:http://github.com/plataformatec/devise我已经尝试了一些authgem,对我来说,它是最简单的设置和修改以满足我的需要。它内置了密码恢复、帐户确认(如果需要)和其他一些非常方便的功能。 关于ruby-on-rails-在Rail

  8. 什么是0day漏洞?如何预防0day攻击? - 2

    什么是0day漏洞?0day漏洞,是指已经被发现,但是还未被公开,同时官方还没有相关补丁的漏洞;通俗的讲,就是除了黑客,没人知道他的存在,其往往具有很大的突发性、破坏性、致命性。0day漏洞之所以称为0day,正是因为其补丁永远晚于攻击。所以攻击者利用0day漏洞攻击的成功率极高,往往可以达到目的并全身而退,而防守方却一无所知,只有在漏洞公布之后,才后知后觉,却为时已晚。“后知后觉、反应迟钝”就是当前安全防护面对0day攻击的真实写照!为了方便大家理解,中科三方为大家梳理当前安全防护模式下,一个漏洞从发现到解决的三个时间节点:T0:此时漏洞即0day漏洞,是已经被发现,还未被公开,官方还没有相

  9. ruby - 如何在 Ruby 中进行防御性编程? - 2

    这是问题的一个完美示例:ClassifiergembreaksRails.**原始问题:**作为一名安全专家,让我担心的一件事是Ruby没有与Java的包隐私平行的东西。也就是说,这不是有效的Ruby:publicmoduleFoopublicmoduleBar#factorymethodfornewBarimplementationsdefself.new(...)SimpleBarImplementation.new(...)enddefbazraiseNotImplementedError.new('ImplementingClassesMUSTredefine#baz')end

  10. ruby-on-rails - jRails 替代品 - 2

    你知道jrails的替代品吗?它或多或少已经过时(使用jQuery1.5-现在1.7是当前版本)。有人知道替代方案吗?谢谢编辑:我知道如何使用jqueryallone构建rails助手-但我喜欢rails助手,所以我不想单独使用jquery(没有jrails) 最佳答案 我一直在Rails中使用Prototype助手,最近我决定转而使用JQuery。起初我查看了JRails,因为它是一个直接替代品,因此需要最少的工作。但是!在阅读了更多关于JQuery的信息并尝试使用它之后,我逐渐明白,结合使用Rails和JQuery的最佳方式就是

随机推荐