我正在开发一个PHP应用程序。有一个要求找到IP的主机名,我不得不求助于gethostbynamel。看来没有别的办法了。
我想知道是否与此相关的安全问题。我正在使用正则表达式验证作为最终用户输入的主机名。
我有两个选择:
gethostbynamel
上述方法是否有不同之处?
安全性是应用程序的首要任务。
发布于 2013-09-20 21:31:58
php函数gethostbynamel是本机OS gethostbyname函数的包装器。
gethostbyname
实现可以看到这里。
因此,应用于gethostbyname syscall的相同漏洞将应用于您的代码。我没有看到任何现有的gethostbyname漏洞会困扰我。
因此,基本上只要您正在准确地验证主机名,您就应该没事。
有关regex的帮助,请参阅此所以回答和本课文。
在您发布的两个选项中,它们对安全性影响没有任何影响。gethostbyname是一个网络呼叫,因此与它相关的时间是不可忽略的.这可能是为什么你会选择使用一种而另一种的区别。
https://security.stackexchange.com/questions/42696
相似问题