第三方API:如何防止枚举攻击

作者:安数网络 发布时间:2021-02-07 17:59:45 浏览次数:1009

当组织使用API(应用程序编程接口)与第三方互动时,必须了解所引入的相关安全隐患。以零售商为例。现在,许多零售商将信用卡作为第三方在线交易。这样,零售商可以减少持卡人的足迹,并减少支付卡行业(PCI)标准的风险。但这些数据却分流给了潜在的无担保第三方。

由此,引入了一些关键问题。转移给第三方是提供了解决方案还是引入了新的问题?零售商如何提供无缝的客户体验,同时又将如何保护客户的关键数据?

问题:API滥用和枚举攻击

想要了解这两个问题,可以参考信用卡在线购买食品的处理工作流程为例。首先将个人要购买的物品放入购物车,然后开始结账过程,输入付款和交货信息。

在此阶段,黑客都可以将交易从其网络浏览器推送到拦截代理,以进行工作流分析。最近,在研究零售商如何更好地缓解这些威胁时进行了分析。

在拦截代理中检查到的工作流程显示了应提交用于购买的付款信息。但是,它还显示了其他新的API端点。进一步研究此交易后,注意到信用卡详细信息的HTTP-POST,该信息已通过API发送给第三方。来自第三方API的响应包括该特定食品零售商将需要使用该令牌来匹配此交易并最终获得付款。

假如用逆向思维来评估风险。如果有付款信息,包括信用卡号和有效期,但没有信用验证值(CVV),是否可以使用枚举技术尝试获得令牌?

为了找到这个问题的答案,研究人员从请求中剥离了所有cookie、令牌、跟踪器等,发现仍然可以找回令牌。将API标记化服务请求加载到了拦截代理中,并进行了一系列调用,将所有可能的CVV与卡和到期日期结合在一起,从而能允许创建包含正确值的伪造标记。从这里开始,研究人员设置了一个轮换,以顺序创建从100到999的请求,而标记化脚本完美运行。

如果研究人员是黑客的身份,那么这里的最后一步是将这些生成的令牌逐个输入到结账流程中,直到成功匹配为止。

解决方案:了解阻止恶意行为的API

利用零售商的API和第三方API,黑客可以高速实施此类恶意行为。并且,如果使用代理将这些操作分布在多个IP地址上,那么零售商将很难注意到正在发生的事情。

那么,解决方案是什么?第一步是测试API功能和行为。如果可以提交多个令牌来找到正确的缺失值,那么应该设置一个事务计数器,该计数器允许用户出错,并在经过一定次数的尝试后作为结账工作流的一部分,强制重新进行认证。同样,也建议与供应商合作,要求结账流程仅来自有效订单。应该密切监视这方面的潜在滥用。

持续监视这种恶意行为,自动阻止多个可疑提交并创建欺骗性环境以混淆潜在攻击者至关重要。这些类型的攻击会持续很长时间,并且可能涉及数千个错误请求。为了保护组织,安全团队必须确定潜在的风险领域,学会发现这种活动的模式,并从具有这些领域专业知识的外部资源中寻求帮助。只有这样,组织才会采取强有力的安全措施,以帮助减轻这些风险。


本文翻译自:https://threatpost.com/third-party-apis-enumeration-attacks/162589/如若转载,请注明原文地址

及时掌握网络安全态势 尽在傻蛋网络安全监测系统

【网络安全监管部门】免费试用

本文来源:threatpost.com

如涉及侵权,请及时与我们联系,我们会在第一时间删除或处理侵权内容。
电话:400-869-9193 负责人:张明