分享

黑客隐藏撞库攻击的四种方式曝光 |【微步荐读】

 hui_001 2022-02-23

图片来源于网络

撞库攻击,简单来说就是黑客利用网络上已泄露的账号密码,在市面各大平台进行大规模自动登录。再形象一点,可以理解为黑客拿着你A网站的账号密码,去登录B平台、C平台的账号密码,只要登录成功,黑客就能随心所欲地利用,甚至掏空这个账号的价值,对个人和企业都是巨大的安全隐患。

 
不过,更令人害怕的是,黑客会模仿正常合法用户进行各种请求操作,从而逃避企业检测。至于具体会用到哪些合法请求,黑客会如何进行模仿,本期的这篇《微步荐读》分享了四种黑客隐藏撞库攻击的方式,安全团队可以从中寻找一些防守思路,希望对你有帮助。

隐藏方式一:调节请求,应对速率限制控制

限制请求是黑客对撞库攻击进行伪装时,比较常见的手段。之所以黑客会采用这样的策略,是因为有速率限制与资源限制这种作为API调解机制最佳安全实践的存在。

举个例子,企业可能会基于API网关调解,将API速率限制设置为每分钟仅10个请求。如果在调用API时,黑客一分钟内尝试11个请求,请求者要是有访问权限,那么前10个请求就会正常工作,但最后一个请求会被阻止,并且在下一分钟这个阈值会重新设置。另外一些速率限制机制则会采取动态限制,只要被认为调用API过多,限制的时间则会更长。它的原理与账户锁定阈值一致。

如果攻击者决定限制API请求,他们会将自身工具或脚本配置为在接近限制阈值的情况下运行,根本不会碰到该阈值。而攻击者的这种手段通常也比较管用,因为速率限制是企业基于正常使用模式而设置,未考虑被攻击者滥用的情况。所以,基于会话的API调用行为分析的动态速率限制,是此类隐藏技术的最佳防御手段。

隐藏方式二:解决验证码问题,掩饰非人类登录行为

撞库攻击属于自动化操作,这就催生了企业阻止那些“非人类”登录行为访问控制的需求,最多的就是通过不同的验证码来实现。正常情况下,遇到用户的登录请求时,验证机制会自动生成验证码,要求用户执行一个图像验证任务,从而证明该用户不是机器人。这些测试对人类来说一般很简单,但对计算机程序却不是,它们不太可能对信息进行解读,也很难返回正确的反馈。这样一来机器人的访问,就会被拒绝。
 
这种情况下,撞库攻击者会花更多的时间和精力来寻找绕过的解决方案。比如,就存在提供验证码破解的服务出租,购买服务的人只需要花最少的钱,就能利用该服务持续接受验证码验证反馈,并发送至对应的API,成功率高达90%。借助这类反自动化的操作,攻击者能够以很小的代价规避验证码检测。
 
从这一点来看,我们就明白了撞库攻击本身的高投入产出比,以及攻击者为何会非常重视网上泄露的账号了。也就是说,如果我们能够提高这些账号被接管的成本,就降低了攻击者的ROI。

隐藏方式三:修改HTTP报头数据,规避检测

一些安全检测机制,会通过分析HTTP报头信息(比如用户代理字符串)来分析或识别API调用者,但仅对这些元数据进行分析还不可靠,因为这正是攻击者想方设法利用的东西。
 
原因在于,即便是最基本的浏览器插件,它也完全是由用户控制。而拦截代理可以让攻击者根据自己的需要改变报头,他们也可自动改变请求集,从而规避检测。如果检测仅限于报头检查,攻击者就能以网络用户、移动端用户、物联网设备或其他的方式出现。
 
所以,企业不仅要分析HTTP的报头信息,还要检查会话中用户的行为,识别滥用API的调用者。不过,这需要架构多点收集API遥测数据,并持续分析,才能识别可能为攻击的异常情况。

隐藏方式四:基于地理分布API请求,绕开允许和拒绝列表

IP地址的允许和拒绝列表,能够协调对后端API的调用。如果API调用来自已知的恶意IP地址或空间,可以配置为阻止该网络连接。为应对这一点,攻击者会使用代理进行登录,从而看上去是来自不同的位置。

通过这种方法,可以将攻击者定位到他们可能在的不同国家,因此防守方观察到的就是来自源IP地址的数据包,而该IP地址并没有产生流量。这里面,攻击者使用了网络隧道来掩盖他们的源IP地址及地理位置,防守方很难对其进行归因。

此外,攻击者还会启动云托管计算来发起及分发攻击。原因在于,云服务提供商(CSPs)的IP地址空间通常会受到企业信任,这样经过批准的云资源与集成就能正常运行。

而基于云计算的IP地址,尤其是容器形式的计算,企业由于时间太短无法跟上IP地址的允许与拒绝列表。但如果云服务提供商一旦流行,攻击者就会转移到新的计算形式或新的云计算服务商上。这也就跟限速一样,安全保护必须更加动态化,这样才能识别攻击者何时对API请求来源进行转移,何时有滥用行为。

图片 防撞库思路:检测与预防
据统计,撞库攻击的成功率通常为1%到3%,但动辄数千万甚至上亿的泄露数据,最终成功的攻击可达上万,对于企业和个人来说危害性非常大。下面这几招,可以作为防撞库攻击的参考和思路:
  • 利用工具对有效账户系统及应用登录失败身份验证日志监控,如果身份验证失败率太高,极有可能是利用已有的合法登录凭证在进行撞库攻击。另外,通过微步在线威胁感知平台TDP可识别撞库行为,实时监测撞库攻击,并进行告警
  • 采用多因素身份验证(MFA)或双因素身份验证(2FA)。这基本是目前最有效的预防方法之一。多因素身份验证相当于在密码之外,增加第二个或者更多的身份验证,比如短信验证码、人脸识别、指纹识别、安全问题的答案等等。这样一来,即便是用户的登录凭证被盗,攻击者仅知道简单的用户名与密码组合也不足以成功发起撞库攻击。
  • 采取强密码策略。建议强制使用至少8位数包含数字、字母、字符、大小写、无序的复杂密码,并且一个密码仅用于一个账号。也可以利用密码管理器创建与管理随机密码,减少账号被攻击的可能。
  • 图片验证码。许多撞库攻击以及暴力猜解都是自动脚本机器人执行,所以采取验证码(CAPTCHA)验证能够很好地阻止攻击,不过需要防止验证码被破解的问题,可以适当增加验证码生成的难度。
  • 基于IP的限制访问。针对攻击者仅在少数IP间切换的不太复杂情况,这是一种非常基本但有效的办法,最直接的就是将IP地址和一系列IP加入黑名单。不过有两个原则需注意:黑名单为临时性的,避免阻止合法用户的登录,并分别跟踪每个用户的登录失败情况;其次是存储用户IP地址并跟踪登录成功的IP地址,以免阻止合法用户。
  • 用户账户使用策略与账户管理。在账号登录失败达到一定次数后则锁定账号,防止密码猜解。同时,在检测到暴力撞库攻击或者暴力猜解后,主动重置已失陷账户。

最后,建议企业进行多层次纵深防御。对于企业来说,防御多一层,被攻击成功的风险就少一点。从基本的密码管理,到账户管理,再到安全验证,每一个层面都可能成为企业安全最关键的一道防护墙。

内容参考:csoonline.com





· END ·

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多