2025-11-20 05:52:08
有些接口得防重放主要是为了防止别人把之前发过的请求重新发一遍。比如登录接口和支付接口这种涉及钱或者账号的接口,如果被别人截获了密码或者支付信息,他们可以像放旧电影一样反复发送,导致你被重复扣钱或者别人冒用账号。像去年有个数据说,有38%的金融类APP被检测到存在重放漏洞,导致用户损失超2个亿。
为什么选这些接口呢?因为防重放主要是针对需要会话保持的接口,像登录后保持的Token、支付时的交易流水号这种。攻击者一般会先获取正常请求的报文,等系统处理完再重新发送。比如前年某安全公司统计,有47%的重放攻击发生在支付接口,因为支付金额高且系统响应快,容易被利用。像登录接口如果没防重放,攻击者用你之前正确的登录请求,就能绕过验证直接登录。还有像下单接口,如果没做随机数或者时间戳,攻击者可以反复发送相同订单,导致你被重复发货。这些接口就像银行柜台和ATM机,必须防止别人用旧凭证反复操作。
本题链接: