对定时攻击的一个防御是,如果呼叫未能通过挑战,则根本不响应请求,因为这可以证明没有关于比较的定时信息。
Google App Engine / Flask中有没有办法不回复请求?
我认为可以使用例如sleep(TIMEOUT)
其中TIMEOUT
大于App Engine响应的最长时间,但我担心这会导致拒绝服务,因为它会让线程悬空。
答案 0 :(得分:2)
不幸的是没有。
它击中路线的事实意味着您的网络服务已经“处理”了该连接并且损坏已经完成。
最好的办法是abort(404)
。
如果您真的想要添加额外的防御,则需要使用其他服务,但您无法在应用程序级别执行任何操作。正如你所说,睡觉只会保持连接打开。你最好的办法就是尽可能低地处理它。