Akamai API Security 的异常检测功能旨在识别潜在的 API 滥用或攻击迹象。该功能通过建立正常流量的基线,并将传入请求与基线进行比较,来检测异常用户行为。异常检测算法基于无监督式在线学习人工智能和机器学习 (AI/ML) 模型,能够学习流量统计行为的多种特征,并在固定的学习周期后检测异常事件。
工作原理
Akamai API Security 的异常检测功能可识别出与其他用户相比产生错误过多的用户,从而识别暴力破解、路径扫描和抓取等攻击。模型在计算阈值时会考虑数据漂移,并在学习周期内避免学习异常行为。学习是流式进行的,模型需要在每个时间步进行调整,并确保告警是实时的。为了避免向用户发送垃圾邮件,模型会学习数据的统计保证阈值。
常见问题解答
- 学习周期:大多数算法需要两到七天的学习周期,具体时间受学习周期内观察到的不同用户行为数量的影响。
- 告警生成时间:在大多数情况下,算法会在收到异常流量后 30 到 60 秒内为客户端创建相关告警。
- 模型类型:算法基于无监督模型,无需事先了解客户环境的特征,并能适应环境随时间的变化。
- 异常类型:可检测出两种类型的异常——基于模式(如 Web 入侵技术和已知的恶意用户代理)和基于行为(如过度使用 API、范围违规和受损的对象级别授权)。
- 触发参数:算法基于多个特征进行统计分析,包括不同用户数、API 身份验证状态、服务器响应代码、用户提取的数据量、IP 地理位置、用户代理等。
- 灵敏度控制:用户可通过修改策略灵敏度(1-5)来控制对每种异常的检测灵敏度。
- 误报处理:用户可将相关问题标记为“误报”,算法会根据用户输入调整模型。
- 垃圾邮件避免:算法会识别针对同一用户和 API 不断触发的类似问题,并在恒定周期内忽略类似的问题。
数据处理
Akamai API Security 利用几种不同的算法来检测数据中的异常,并根据底层数据预处理和算法复杂性调整阈值。配合垃圾邮件控制,即使特定算法需要额外的周期来调整阈值,也能提供简便的界面。作为在线学习算法,Akamai API Security 需要应对新 API、新字段、值类型/范围的更改、服务器可用性问题、API 漏洞等挑战,并采取预防措施避免学习异常。