我有一个next.js静态网站,有一些形式,如联系,工作申请等。我们的后端是.NET 4.6。由于这些表单是公开的,API端点(Web服务)基本上没有身份验证,任何人都可以使用Postman这样的工具进行请求。如何确保这些端点的安全?我想到了我能做的几件事:
使这些端点安全的最佳方法是什么?是否有一种方法,我可以限制我的网站,以便能够要求它?或者有一种方法可以在客户端隐藏加密密钥?对于我如何处理这个问题,还有其他的建议吗?
发布于 2022-03-19 22:42:41
由于您的API是公共的,而生成有效负载的HTML是公共的,所以实际上无法保证安全性。但是,您可以通过使用以下步骤来增加难度
期间发送的令牌
- When this token is requested, log the requestor's IP
- Limit how many requests per IP can be allowed per hour (may be 5?)中从#1获得的令牌
- When the form is submitted, verify that the token's requestor IP and current request IP Match
- Check if there are other form submissions from the same IP in a given timeframe, if so, reject the request.或
您只需限制每个IP每小时提交多少次。虽然这不会阻止攻击,但它会减慢他们的速度,使他们移动到更容易的目标。
https://stackoverflow.com/questions/71519348
复制相似问题