SpamAssassin 4.0.3 appears to incorrectly promote a URL query parameter value into a standalone URI hostname and then performs URIDNSBL lookups against the generated domain.
Observed behavior: Input message contains only the following URI: https://substack.com/signup?r=to8ex Debug output shows SpamAssassin correctly parsing the original URI: Jun 20 17:04:48.788 dbg: uri: canonicalizing parsed uri: https://substack.com/signup?r=to8ex Jun 20 17:04:48.788 dbg: uri: cleaned uri: https://substack.com/signup?r=to8ex Jun 20 17:04:48.788 dbg: uri: added host: substack.com domain: substack.com Immediately afterward, SpamAssassin creates a second URI which does not exist in the message: Jun 20 17:04:48.821 dbg: uri: canonicalizing parsed uri: http://to8ex Jun 20 17:04:48.822 dbg: uri: cleaned uri: http://to8ex Jun 20 17:04:48.822 dbg: uri: cleaned uri: http://www.to8ex.com Jun 20 17:04:48.822 dbg: uri: added host: www.to8ex.com domain: to8ex.com SpamAssassin then performs URIDNSBL lookups against the generated domain: Jun 20 17:04:48.836 dbg: uridnsbl: considering host=www.to8ex.com, domain=to8ex.com Expected behavior: The query parameter value "to8ex" should remain data associated with the URI: https://substack.com/signup?r=to8ex No standalone hostname or domain should be generated from the parameter value.
