Merge pull request #6687 from pixelfed/shleeable-patch-21

Improve validation
pull/6697/head
dansup 1 month ago committed by GitHub
commit 4748f66a02
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

@ -740,7 +740,19 @@ class Helpers
$idDomain = parse_url($id, PHP_URL_HOST);
$urlDomain = parse_url($url, PHP_URL_HOST);
return $idDomain && $urlDomain;
if (! $idDomain || ! $urlDomain) {
return false;
}
$attributedTo = $activity['attributedTo'] ?? $activity['object']['attributedTo'] ?? null;
if ($attributedTo) {
$authorDomain = parse_url(self::pluckval($attributedTo), PHP_URL_HOST);
if ($authorDomain && strtolower($idDomain) !== strtolower($authorDomain)) {
return false;
}
}
return true;
}
/**
@ -835,7 +847,14 @@ class Helpers
*/
public static function validateStatusDomains(string $id, string $url): bool
{
return self::validateUrl($id) && self::validateUrl($url);
if (! self::validateUrl($id) || ! self::validateUrl($url)) {
return false;
}
$idDomain = parse_url($id, PHP_URL_HOST);
$urlDomain = parse_url($url, PHP_URL_HOST);
return $idDomain && $urlDomain && strtolower($idDomain) === strtolower($urlDomain);
}
/**

Loading…
Cancel
Save