From d231a9bc8083d98e61c46a6141d48921dbec5c01 Mon Sep 17 00:00:00 2001 From: Hypolite Petovan Date: Tue, 13 Nov 2018 21:51:58 -0500 Subject: [PATCH] Improve Network::isPublicHost --- src/classes/Utils/Network.php | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/src/classes/Utils/Network.php b/src/classes/Utils/Network.php index 67e0084..5b6d972 100644 --- a/src/classes/Utils/Network.php +++ b/src/classes/Utils/Network.php @@ -82,6 +82,13 @@ class Network return false; } + // RFC 2606 -continued + $tld = substr($host, strrpos($host, '.')); + if ($tld === '.test' || $tld === '.example' || $tld === '.invalid' || $tld === '.localhost') { + return false; + } + + // Private/Reserved IP ranges if (filter_var($host, FILTER_VALIDATE_IP) && !filter_var($host, FILTER_VALIDATE_IP, FILTER_FLAG_IPV4 | FILTER_FLAG_NO_PRIV_RANGE | FILTER_FLAG_NO_RES_RANGE)) { return false; }