查看日志中每个IP地址或用户在单位时间内的API请求次数。例如,正常情况下某个用户每小时对某API的请求可能在10 - 20次之间,如果日志显示该用户在某一小时内请求次数达到数百次,这可能是异常流量。
分析API请求在一天、一周或一个月内的时间分布规律。比如,一个面向办公场景的API,正常工作日的白天请求量较大,夜晚和节假日请求量很小。若日志显示在凌晨时段突然出现大量请求,这可能是异常流量的信号。
检查日志中的IP地址信息,确定请求的来源。识别出频繁发起请求的单一IP地址或某一网段的IP地址。如果发现某个IP地址在短时间内对API发起大量请求,且请求内容无实际业务意义,可能是恶意攻击流量。
有些日志可以提供请求的地理位置信息。若发现来自某个特定地区的大量请求,而该地区与API的正常业务覆盖区域不符,或者该地区突然出现异常集中的请求,这可能是异常流量的来源。
分析API请求中的参数。正常请求的参数通常符合一定的业务逻辑和格式要求。如果日志中存在大量参数格式错误、参数值超出正常范围或者包含恶意代码(如SQL注入语句)的请求,这表明可能存在异常流量。
查看请求的API路径。如果发现大量对不存在的API路径或者敏感路径(如管理员接口路径,但请求来源并非管理员相关)的请求,这可能是异常流量在试图探测API的漏洞或进行恶意访问。
将API日志与企业其他相关系统(如用户认证系统、防火墙系统等)的日志进行关联分析。例如,若防火墙日志显示有大量来自某IP的异常连接尝试,同时API日志也显示该IP对API有大量异常请求,就可以更确定这是异常流量。
对于有用户认证的API,关联用户的历史行为日志。如果某个用户平时的操作都是简单查询,突然在短时间内发起大量复杂且资源消耗大的API请求,这可能是异常流量,也许是账号被盗用或者被恶意利用。
利用日志中的历史数据构建流量预测模型。例如,采用时间序列分析方法,根据过去一段时间(如过去一周或一个月)的流量数据预测未来短时间(如未来几个小时或一天)的正常流量范围。如果实际流量超出预测范围,则可能是异常流量。
实时分析日志中的流量数据趋势。如果流量呈现突然的、不合理的上升或下降趋势,如每分钟请求量从正常的100次突然跃升至1000次且持续上升,这表明可能存在异常流量情况。