该 OWASP 项目旨在识别针对 Web 应用的自动化威胁,并推荐安全控制措施和最佳实践,以降低风险。

OWASP(开放式 Web 应用程序安全项目)Web 应用自动化威胁项目的目标是为人们提供对网络应用程序通常所面临的各种自动化威胁的全面和标准化的理解。这些自动化攻击已越来越多的,逐渐将目标转向移动应用和 API。该项目汇集了在真实对抗中针对 Web 应用自动化攻击的方式,研究和分析,并编制了文档,以帮助操作人员抵御这些威胁。

自动化威胁是什么?

自动化威胁是直接通过 Bot、脚本或黑客工具包发起的恶意攻击。此类攻击无需人类与 Web 应用进行人工交互。此类威胁可以利用 Web 应用和 API 中的固有漏洞,引发安全侵害、数据盗窃、帐户接管和欺诈行为等有害后果。

尽管在应用中设置购物车并非漏洞,但允许将商品添加至购物车的业务逻辑却可以成为自动化攻击的目标,若被操纵,将导致库存囤积

该项目创建了一个目录(或分类),收录了针对 Web 应用的各种自动化威胁。通过辨别这些威胁并分类整理,该项目使开发人员、安全专业人员,以及组织可以更深入地了解其所面临的风险,以及这些风险可能对其系统造成的影响。该项目还针对每种自动化威胁推荐了有效的应对措施和最佳实践,可帮助降低风险。通过提高人们对这些威胁的警觉性,OWASP 将实现其目标:推动积极主动的安全措施,改善 Web 应用的整体安全态势。

由于多种自动化威胁都依赖于 Bot,因此,有必要分辨 Bot 管理和 Bot 抑制之间的区别。Bot 管理是指为了管理与 Web 应用交互的 Bot 而采用的策略和做法。Bot 管理的目标不是单纯地阻止或抑制 Bot,还必须区分合法 Bot(如搜索引擎爬虫)的流量和恶意 Bot 的流量。Bot抑制则特别关注采用何种过程降低或消除恶意 Bot 对 Web 应用的影响。这涉及实行防御措施,阻止 Bot 成功执行将造成危害的操作或攻击,以避免引发帐户接管 (ATO) 或欺诈行为等后果。

OWASP Web 应用自动化威胁列表

以下是 OWASP Web 应用自动化威胁项目识别和编译的自动化威胁列表。

  1. 恶意帐户组合(Account Aggregation)。此类攻击的目标是从多个站点或平台收集用户帐户凭据,通常用于身份盗窃、金融欺诈或不经授权访问敏感信息等恶意目的。帐户聚合攻击的过程是使用自动化 Bot 或脚本,模仿人类与各种 Web 服务或应用的交互。
  2. 帐户创建滥用(Account Creation)。在此类攻击中,恶意行为者会使用自动化脚本或 Bot 在平台或网站创建大量虚假用户帐户。攻击者可以使用这些虚假帐户,向平台滥发垃圾内容、广告或恶意链接,对合法用户造成干扰和困扰。虚假帐户还可用于操纵网站或应用上的公众情绪、评价/评分,或冒充真实的用户或公众人物,传播错误信息或做出有损本人声誉的行为。此类威胁还可能导致新帐户开设欺诈(也称为第一方欺诈),其恶劣影响已波及整个数字世界
  3. 广告欺诈(Ad fraud)。此类威胁也称为点击欺诈,涉及通过欺骗性活动伪造与在线广告的互动次数(如点击次数或展示次数)。此类欺诈行为通常通过自动化 Bot 或脚本执行,其目的是为欺诈者创造收入或操纵广告绩效指标。
  4. 验证码破解(CAPTCHA defeat)。此类威胁使用自动化技术绕过或规避验证码挑战,严重影响了 Web 应用的安全性,因为它允许恶意行为者绕过针对 Bot 的常用防线。验证码(区分计算机和人类的全自动公共图灵测试)是一种安全控制措施,可用于区分人类用户和自动化 Bot 或脚本。攻击者可以使用图像识别软件来处理视觉验证码问题,并可以使用机器学习算法来解决听觉验证码拼图码证码问题。在某些情况下,攻击者还会使用人工验证码解码器实时手动解码验证码。虽然验证码是一种常用的安全控制手段,但它可以被绕过,也会在合法用户的客户体验中造成不便,从而导致交易取消和收入流失。
  5. 卡片破解(Card cracking)。这是一种自动化类型的网络犯罪,涉及对卡号、到期日和安全码 (CVV/CVC) 等付款卡安全功能的猜测或破解。卡片破解通常采用暴力破解攻击,即通过自动化 Bot 或脚本,系统地尝试多种卡片资料的组合,直到找到与有效卡片相符的信息组合为止。有效的卡片信息一经确定,就可以被用于各种非法活动,例如未经授权的购买行为或金融欺诈。攻击者可能会从实体店拿走一些未充值的实体礼品卡,检查礼品卡的发卡机构是否依赖使用连续编号模式。
  6. 被盗卡确认(Carding)。此类自动化网络犯罪形式涉及未经授权使用被盗的支付卡信息,进行欺诈性交易或购买。犯罪分子使用自动化 Bot 或脚本在各种网站或应用上测试被盗的信用卡或借记卡资料,找出接受这些被盗信息的网站或应用。一旦自动化 Bot 找出了易受攻击的目标,就会使用被盗的卡信息进行欺诈性购买,通常是购买高价值商品或数字服务,或将可用资金转移到其他帐户。
  7. 盗用帐户牟利(Cashing out)。这是指将非流动性资产或虚拟货币转换为现实世界的资金或有形商品。此类攻击常见于成功发动攻击,并窃取了在线平台或帐户的宝贵资产之后。如果攻击者控制了 Web 应用或在线平台的用户帐户,就可能会使用这些帐户将帐户所有者的资产(例如礼品卡、会员积分或虚拟货币)兑换成现金。Bot 通常用于协助兑现,因为它们使网络犯罪分子能够大规模、高效地展开此类欺诈活动。
  8. 凭证破解(Credential cracking)。此类威胁是针对 Web 应用登录机制(例如登录页面、用户帐户门户或身份验证 API)的一种暴力破解攻击。攻击者将使用自动化方式,系统地尝试用户名和密码的常见组合,直到找出有效的组合,从而在未经授权的情况下访问用户帐户。这使攻击者得以开展各种恶意活动,例如身份盗窃、金融欺诈或其他未经授权的操作。
  9. 凭证收割确认(Credential Stuffing)。对 Web 应用而言,这是一种最常见的威胁形式。当网络犯罪分子取得用户名/密码列表(通常购于暗网)后,会尝试使用一套凭据访问其他地方受登录保护的帐户,此过程即为撞库攻击。由于许多人会重复使用用户名和密码,此类攻击(也称为帐户接管)将非常奏效,使犯罪分子得以控制用户帐户,窃取其资产或实施第三方欺诈。
  10. 拒绝库存(Denial of inventory)。此类攻击是指攻击者通过使用 Bot 将大量商品添加到购物车中,但不继续结帐购买,导致该电商货品无法流通。这种情况阻止了其他购物者购买该货品,因为系统在登记缺货状态的同时,由于购买过程并未完成,也会拒绝供应商的销售。此类自动化威胁的一种变化形式是,使用 Bot 预订或预留酒店房间、餐厅桌位或航班座位,但不完成支付。
  11. 拒绝服务 (DoS) 分布式拒绝服务 (DDoS)。此类攻击将恶意尝试破坏目标系统或网络的正常运作,使其无法为合法用户提供服务。在 DDoS 攻击中,攻击者向目标发送其无法处理的巨大流量或大规模资源请求,致使服务器过载,服务无法访问。此类攻击的实现方法有多种,例如使用数据包淹没目标,或发送特制请求。DoS 与 DDoS 攻击相似,但 DDoS 涉及多个攻击源,通常通过僵尸网络进行协调。僵尸网络由遭到入侵的计算机或设备组成,全部受攻击者控制。攻击者协调多个攻击源,同时对目标发起攻击。通过利用僵尸网络的联合资源,攻击者可以制造大量流量或请求,远远超出目标系统的处理能力,最终导致拒绝服务。此类攻击可以填满防火墙的状态表,耗尽 CPU 资源和基础设施带宽。攻击者可以通过向 Web 应用发送精心设计的单个请求,以执行 DoS 攻击,例如,复杂的 SQL 查询会导致 CPU 使用率上升,性能下降。
  12. 加速执行(Expediting)。此类威胁涉及使用自动化 Bot 或脚本快速完成一系列应用流程,绕过正常的限制或检查。通过自动执行这些流程,攻击者或恶意用户可以获得对其他合法用户而言不公平的优势。此类活动通常与欺诈行为相关联,并且可能会导致其他方遭受损失。
  13. 特征获取(Fingerprinting)。特征获取是威胁行为者使用的一种信息采集技术,即通过收集和分析用户网络浏览器或设备的独特特征或属性,创建用户独有的 “特征”。这使威胁行为者能够在不同的网站和在线平台上识别和跟踪个人用户,或对应用进行剖析,以便展开后续攻击。
  14. 信息获取(Footprinting)。从本质上讲,这不是一种自动化威胁,而是侵入流程或侦察工作的预备阶段。踩点涉及使用 Bot 或脚本采集关于目标 Web 应用的信息,包括其结构、配置和安全机制,以便攻击者更顺利地为后续攻击制定计划,例如发起针对目标隐患的攻击,实现未经授权的访问,或利用特定的漏洞实施攻击。
  15. 库存囤积(Scalping or inventory hoarding)。表现形式为自动化购买,具体是指在限量商品或服务(比如音乐会门票和限量版运动鞋)上线销售那一刻,攻击者利用 Bot 大量买入。通过瞬间完成结账过程,犯罪分子可以大规模控制有价值的库存。通常,在二级市场,这些库存商品可以大幅加价转售,这导致了人为的稀缺性、库存剥夺和消费者的沮丧情绪。
  16. 信息爬取(Scraping)。爬取是指从网站或 Web 应用提取数据的自动化过程,虽然其本身并不一定具有恶意,然而,如果用其实现未经授权或怀有恶意的用途,例如,使用 Bot 从目标网站收集内容,进行分析和重复使用,或者利用它进行价格操控(在竞争激烈的市场中尤其普遍),此时,爬取就会变成一种自动化威胁。爬取还可能影响站点性能,阻止合法用户访问站点。
  17. 重放(Skewing)。恶意行为者在 Web 应用上重复点击、请求或提交内容,故意影响基于应用的度量数据(如计数、点赞数、展示次数、投票结果、频率或速率),此时就会产生数据倾斜。数据倾斜的实施过程是使用模拟人类行为的自动化 Bot,生成与 Web 应用的人造交互。数据倾斜的目的是操纵和扭曲基于应用度量指标生成的数据,导致不准确或有误导性的结果。
  18. 交易狙击(Sniping)。这是一种恶意活动,涉及使用自动化 Bot 或脚本在网络拍卖、销售或预订系统中获得竞争优势。“狙击” 一词通常用于与限时活动或限量商品相关的情境,指的是让其他用户没有足够时间竞标或出价的行为,此时速度和精准把控时机将至关重要。Bot 可以更快、更准确地执行操作,因此,比起手动参与活动的人类用户,狙击将使攻击者获得更大的竞争优势。
  19. 垃圾信息(Spamming)。这是指由 Bot 分发的恶意内容或可疑信息,在 Web 应用的公共内容、私人内容、数据库或用户消息中都可能出现。这些恶意内容可能包含恶意软件、IFRAME 弹窗、照片、视频、广告以及追踪/监控代码。攻击者也会通过发送垃圾信息在论坛和其他消息应用中添加虚假评论,从而篡改资讯或者传播恶意软件。
  20. 凭据破解(Token Cracking)。此类自动化攻击是指犯罪分子对优惠券号码、代金券码和折扣代币进行大规模枚举。他们获得的好处可能是折扣、代金券、信用额度或特别优惠。
  21. 漏洞扫描(Vulnerability Scanning)。此类威胁是指使用自动化工具或脚本识别并利用 Web 应用中的漏洞。不同于旨在识别弱点以提高安全性的合法漏洞扫描,被归类为自动化威胁的漏洞扫描带有恶意,意在破坏应用的安全性。犯罪分子会使用自动化扫描工具或脚本,系统地扫描暴露在互联网上的应用,他们通常会在漏洞公开后立即执行此类行为。一旦发现漏洞,犯罪分子会试图利用它们,实现对应用、敏感数据或底层服务器基础设施的未经授权访问。

集成安全控制案例

F5 如何应对 OWASP 提出的安全风险

OWASP 基金会致力于提高软件安全性,并在多个层面提升人们对 Web 应用安全风险和漏洞的警觉性,F5 对 OWASP 及其行动表示支持。实际上,Web 应用和 API 存在一些共同的安全风险,在实施安全解决方案时需要加以考虑。例如:

  • 身份验证/授权控制薄弱
  • 配置错误
  • 业务逻辑滥用(撞库攻击或帐户接管)
  • 服务端请求伪造 (SSRF)。

F5 提供的解决方案可应对 OWASP Web 应用自动化威胁项目中概述的风险。F5 分布式云 Bot 防御可阻止有能力绕过现有 Bot 管理解决方案的欺诈和滥用行为,并提供实时监控和情报,以及基于机器学习的回溯分析,将在不造成任何用户不便或客户体验中断的前提下,保护组织免受自动化攻击。不管攻击者是将攻击目标从 Web 应用转向 API,还是试图通过欺骗遥测或使用人类 CAPTCHA 处理者绕过反自动化防御机制,无论其如何变更手段,分布式云 Bot 防御都能保持有效性。F5 Bot 管理解决方案通过应用代理、平台和内容分发网络 (CDN) 提供了灵活的插入点。

F5 Web 应用防火墙 (WAF) 解决方案还可阻止和缓解 OWASP Top 10(一份广受认可的最关键 Web 应用程序安全风险列表)确定的各种风险。F5 WAF 解决方案结合了规则和行为保护,内置了来自 F5 Labs 的威胁情报和基于机器学习的安全性,以跟上新威胁的步伐。它减轻了跨云、本地和边缘环境持续保护应用的负担和复杂性,同时通过集中式 SaaS 基础设施简化了管理。为了简化对应用安全性的管理,F5 WAF 还将保护集成到了开发框架和 CI/CD 流水线中,并通过单一仪表盘提供核心安全功能、集中化协调以及监督。该仪表盘具有全方位视图,可查看所有分布式应用的应用性能和安全事件。集成了专业 Bot 防御措施的 WAF 提供了一套强大的解决方案,可缓解漏洞利用和自动化威胁等首要安全风险。

F5 通过解决方案对 “OWASP API 安全十大风险” 列表中确定的风险提出了应对方法。随着应用的发展,API 部署的增加,这些解决方案将在不断扩大的攻击面和新型威胁中保护应用和 API 的安全。F5 Web 应用和 API 防护 (WAAP) 解决方案针对现代应用的整个攻击面提供了全方位防护措施,其中包括 WAF、API 安全、L3-L7 DDoS 缓解,以及用于抵抗自动化威胁和相关欺诈行为的 Bot 防御。无论您所有的应用和 API 资产托管于何处,该分布式平台都可以在其中轻松部署一致的策略,扩展安全性,并将保护集成到 API 生命周期和更广泛的安全生态系统中。

F5 还可以针对高级的线上安全提供多层 DDoS 防护,作为一种云交付型托管式缓解服务,可实时检测并缓解大规模网络、协议和以应用为目标的攻击;同样的防护也可以作为本地硬件、软件和混合解决方案的形式进行使用。F5 分布式云 DDoS 缓解可在容量耗尽攻击和特定于应用第 3 到第 4 层及高级的第 7 层攻击到达网络基础设施和应用之前,便对其进行防御。