DEV Community · Indie Hackers9/8 09:0348 分
产品发布四小时后遭Webhook重放攻击
I Launched on Product Hunt. Four Hours Later, Someone Was Replaying My Checkout Webhook.
作者在Product Hunt发布产品后四小时,监控发现同一webhook事件被从9个不同IP地址重放了61次。攻击者捕获了一个真实的checkout.completed事件,试图重放以欺骗服务器。作者承认,在发布前两天,服务器仅验证了签名,未检查时间戳、幂等性或速率限制。幸运的是,攻击者重放时使用了猜测的密钥重新签名,HMAC验证失败,未造成实际损害。作者当晚审计了所有未认证入口,并分享了修复经验:必须使用原始请求体验证HMAC签名,而非解析后的JSON,同时应添加时间戳检查、幂等性和速率限制。