首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在NodeJS中识别提供的主机名/URL是私有的

问如何在NodeJS中识别提供的主机名/URL是私有的
EN

Stack Overflow用户
提问于 2022-03-10 05:01:32
回答 1查看 165关注 0票数 0

我正在寻找一种方法/NPM包来验证私有/本地/坏地址,输入主机名作为我的REST端点的输入,然后将其存储在DB中。为了避免SSRF攻击,这是必需的。到目前为止,我只是根据regex过滤出主机名。如果我发现主机名以IP开头,我会阻止它,但在某些情况下,此修补程序不会像环回地址那样工作。我找不到任何NPM库来做所有这些验证。有一些包,但他们期望IP作为输入,我已经在过滤。我甚至从regex转到了ipaddr.js包,因为regex变得越来越复杂,难以理解。

有人能在这里指出正确的方向吗?如何验证私密/回送地址的URL?

EN

回答 1

Stack Overflow用户

发布于 2022-03-10 05:06:46

如果您的机器要对用户定义的URL进行请求,并且您希望避免用户在您的专用网络中输入地址,您需要首先解析主机名并确定目标ip。

您不能通过查看主机名就知道主机名是否以私有地址为目标,因为我可以注册'blabla.com‘并将其解析为10.0.0.1。

这方面的最佳实践是制作一个与您的专用网络完全隔离的专用盒来执行所有请求。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/71419065

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档