[Dnsmasq-discuss] CNAME filtering
Geert Stappers
stappers at stappers.nl
Mon Mar 22 06:25:30 UTC 2021
On Mon, Mar 22, 2021 at 03:19:00AM +0000, dnsmasqlist2021 at rscubed.com wrote:
>
> Hi,
>
> I am trying to do some CNAME filtering but it is not working for me...
>
> I'm picking a random domain that has cascading CNAMEs I am going to try to
> filter for an example here.
>
> /etc/hosts
> 127.0.0.1 blackhole.inv
>
> For my DNSMasq config I add (some of this may be redundant) the lines below
> to kill dnsdelegation.io as an example :
>
> cname=*.dnsdelegation.io,blackhole.inv
> cname=dnsdelegation.io,blackhole.inv
> local=/.dnsdelegation.io/
>
> In theory one of the above should set dnsdelegation.io to 127.0.0.1
>
> a domain with cascading CNAMEs :
>
> jwxbwt.theaffordableartcompany.com.au
>
> ---
>
> When I do host I get :
>
> $ host jwxbwt.theaffordableartcompany.com.au
> jwxbwt.theaffordableartcompany.com.au is an alias for dnsdelegation.io.
> dnsdelegation.io is an alias for gum.criteo.com.
> gum.criteo.com is an alias for gum.va1.vip.prod.criteo.com.
> gum.va1.vip.prod.criteo.com has address 74.119.119.139
>
> ---
>
> In DNSMasq Logs I see :
>
> 1 - 192.168.1.3 == DNSMasq request
> 2 - 192.168.1.7 == forwarded to Upstream DNS
> 3 - Returned reponse containing 4 Replies in one DNS packet
>
> 1 - dnsmasq[26607]: 11 192.168.1.3/57917 query[A] jwxbwt.theaffordableartcompany.com.au from 192.168.1.3
> 2 - dnsmasq[26607]: 11 192.168.1.3/57917 forwarded jwxbwt.theaffordableartcompany.com.au to 192.168.1.7
> 3 - dnsmasq[26607]: 11 192.168.1.3/57917 reply jwxbwt.theaffordableartcompany.com.au is <CNAME>
> dnsmasq[26607]: 11 192.168.1.3/57917 reply dnsdelegation.io is <CNAME>
> dnsmasq[26607]: 11 192.168.1.3/57917 reply gum.criteo.com is <CNAME>
> dnsmasq[26607]: 11 192.168.1.3/57917 reply gum.va1.vip.prod.criteo.com is 74.119.119.139
>
> ---
>
> TCPDump shows upstream DNS returns all replies in 3 above in a single packet
>
> IP x.x.x.x.42759 > 192.168.1.7.53: 29157+ A? jwxbwt.theaffordableartcompany.com.au. (55)
> IP 192.168.1.7.53 > x.x.x.x.42759: 29157 4/0/0 CNAME dnsdelegation.io., CNAME gum.criteo.com., CNAME gum.va1.vip.prod.criteo.com., A 74.119.119.139 (160)
>
> ---
>
> It looks like the filtering is being bypassed because multiple replies are
> all within a response from the upstream server so dnsdelegation.io is not
> seen and filtered ???
>
> Do I need to do something to get DNSMasq to apply the filters to the
> responses from the upstream to filter them or is this not currently possible
> ?
>
> I expect if regular companies are doing what we see above the next
> generation of malicious domains will be using this technique also so we want
> to get the jump on them and have methods to defend against them in place.
>
> thanks
>
> Matt
>
I wonder if option
-h, --no-hosts
Don't read the hostnames in /etc/hosts.
is maybe active.
And the
> cname=*.dnsdelegation.io,blackhole.inv
> cname=dnsdelegation.io,blackhole.inv
> local=/.dnsdelegation.io/
looks odd. Expiriment with removing the `local=` line.
Karma points for reporting back.
Groeten
Geert Stappers
P.S.
I would have "CNAME filtering" named "CNAME intercepting"
--
Silence is hard to parse
More information about the Dnsmasq-discuss
mailing list