假设您想创建一个指向私有位置的子域(也许是数据库的位置,或者您不希望人们尝试SSH进入的计算机的IP地址),因此您添加了一个名为something的DNS记录。像这样:
private-AGhR9xJPF4.example.com
除了知道子行程序的确切URI的人之外,这对所有人都“隐藏”吗?或者,是否可以通过某种方式“列出”特定域的所有注册子域?
假设您想创建一个指向私有位置的子域(也许是数据库的位置,或者您不希望人们尝试SSH进入的计算机的IP地址),因此您添加了一个名为something的DNS记录。像这样:
private-AGhR9xJPF4.example.com
除了知道子行程序的确切URI的人之外,这对所有人都“隐藏”吗?或者,是否可以通过某种方式“列出”特定域的所有注册子域?
Answers:
没有针对此特定目的的查询,但是有一些间接方法。
AXFR
)。大多数服务器操作员都将区域传输锁定到特定的IP地址,以防止无关的成员窥探。NSEC
则可以使用迭代请求来遍历区域。NSEC3
被实施以使区域行走更加计算密集。还有一个技巧可以让某人知道是否存在任意子域。
example.com. IN A 198.51.100.1
www.sub.example.com. IN A 198.51.100.2
在以上示例中,www
位于中sub
。查询sub.example.com IN A
将不会返回ANSWER节,但是结果代码将是NOERROR而不是NXDOMAIN,这表明该树下还有记录的存在。(只是这些记录的名字不是)
号从客户端可靠地隐藏数据的唯一方法是确保它永远不能开始与数据。假设您的DNS记录的存在将通过口口相传或通过观察数据包的方式分布在有权访问它们的任何人中。
如果您要隐藏可路由DNS客户端中的记录,则说明您做错了。确保数据仅暴露于需要它的环境中。(即,将私有路由域用于私有IP)即使您已经进行了这样的划分,也要假设对IP地址的了解仍然会分散。
安全性的重点应该放在有人获得IP地址时会发生什么,因为它将会发生。
我知道将IP地址保密作为梦being以求的原因的清单可以进一步扩展。IP扫描,社会工程学...列表不胜枚举,我主要关注此问题的DNS协议方面。归根结底,这一切都归于同一伞下:有人将获得您的IP地址。