Discussion:
Response Policy Zone: disabling "leaking" of lookups
(too old to reply)
Fred Morris
2020-09-03 00:47:09 UTC
Permalink
It comes to my attention that when an unresolvable query occurs, it gets
forwarded to the authoritative zone regardless of anything I can set in
named.conf. Closest I can come is qname-wait-recurse which has the
/opposite/ effect sort of, namely waiting for recursion to complete. If
I have something in an RPZ, I want it to accept that; period, full stop,
no outwardly visible effects.

Ironically the text surrounding this option in the ARM is to the effect
that "... not resolving the requested name can leak the fact that
response policy rewriting is in use..." and leaking the fact that it is
in use by not leaking the query in the first place is what I'm trying to
achieve: how do I disable the (useless) resolution directed at upstream
servers?

Here is a use case:

1. A search list is in place for example.com. This means that if
"foo.bar" fails to resolve then "foo.bar.example.com" will be tried,
followed by "foo.bar.com".
2. In addition to the foregoing a rule is placed in the RPZ that
"com.example.com" and "*.com.example.com" are NXDOMAIN.
3. An additional rule is present in the RPZ that
"my-outhouse-example.com" is NXDOMAIN.

In this case:

* "my-outhouse-example.com.example.com" will return NXDOMAIN (it does!)
* There should be /no/ upstream (pointless) query for
my-outhouse-example.com.example.com. (oops!)

Let's stop the leaks.

--

Fred Morris
Carl Byington
2020-09-03 03:23:27 UTC
Permalink
Post by Fred Morris
how do I disable the (useless) resolution directed at upstream
servers?
Isn't that just "qname-wait-recurse no;"
pvm_job
2020-09-03 16:34:35 UTC
Permalink
It is a well known behaviour.  This is the way how your DNS client works (not DNS server). Get rid of the search list or block requests to the domains in the search lists by RPZ (e.g. if it is pushed by ISP).
 
BR,
Vadim
 
It comes to my attention that when an unresolvable query occurs, it gets forwarded to the authoritative zone regardless of anything I can set in named.conf. Closest I can come is qname-wait-recurse which has the opposite effect sort of, namely waiting for recursion to complete. If I have something in an RPZ, I want it to accept that; period, full stop, no outwardly visible effects.
Ironically the text surrounding this option in the ARM is to the effect that "... not resolving the requested name can leak the fact that response policy rewriting is in use..." and leaking the fact that it is in use by not leaking the query in the first place is what I'm trying to achieve: how do I disable the (useless) resolution directed at upstream servers?
* A search list is in place for example.com. This means that if "foo.bar" fails to resolve then "foo.bar.example.com" will be tried, followed by "foo.bar.com".
* In addition to the foregoing a rule is placed in the RPZ that "com.example.com" and "*.com.example.com" are NXDOMAIN.
* An additional rule is present in the RPZ that "my-outhouse-example.com" is NXDOMAIN.
* "my-outhouse-example.com.example.com" will return NXDOMAIN (it does!)
* There should be no upstream (pointless) query for my-outhouse-example.com.example.com. (oops!)
Let's stop the leaks.
--
Fred Morris
 
_______________________________________________
DNSfirewalls mailing list
http://lists.redbarn.org/mailman/listinfo/dnsfirewalls
 
 
 
 
 
Fred Morris
2020-09-03 18:44:56 UTC
Permalink
Post by Carl Byington
Post by Fred Morris
how do I disable the (useless) resolution directed at upstream
servers?
Isn't that just "qname-wait-recurse no;"
You are correct! I got confused and the doc didn't help. The logic is
tri-state:

*Default* (not present): The lookup is performed, but isn't waited for.

*Yes*: Resolution waits for the lookup to complete.

*No*: Resolution is not performed.


Verified by testing. :-) Thanks for the sanity check.

--

Fred Morris

Loading...