程序中采用DNS 名称进行安全认证,但 DNS 名称是容易被攻击者进行欺骗的。
对避免使用DNS 名称作为安全性的依据的情况,示例给出了不规范用法(Java 语言)示例。
示例:
String ip = request.getRemoteAddr();
InetAddressinetAddress = InetAddress.getByName(ip);
if (inetAddress.getCanonicalHostName(),endsWith("demo.com")){
//Verification passed
以上代码片段中,如果发生 DNS 欺骗,会绕过安全验证。
不要依赖 DNS 名称进行安全认证。