commit 80360ed9fa86c22ee3f9cf7e14076ef64466918a
parent 90046a09dd95c789e28f63c320c1c16e58ecf57a
Author: Nick Mathewson <nickm@torproject.org>
Date: Fri, 23 Jun 2017 09:28:27 -0400
Merge branch 'bug3056_squashed'
Diffstat:
2 files changed, 15 insertions(+), 0 deletions(-)
diff --git a/changes/bug3056 b/changes/bug3056
@@ -0,0 +1,3 @@
+ o Minor features (exit relay, DNS):
+ - Improve the clarity and safety of the log message from evdns when
+ receiving an apparent spoofed DNS reply. Closes ticket 3056.
diff --git a/src/or/dns.c b/src/or/dns.c
@@ -182,6 +182,18 @@ evdns_log_cb(int warn, const char *msg)
} else if (!strcmp(msg, "All nameservers have failed")) {
control_event_server_status(LOG_WARN, "NAMESERVER_ALL_DOWN");
all_down = 1;
+ } else if (!strcmpstart(msg, "Address mismatch on received DNS")) {
+ static ratelim_t mismatch_limit = RATELIM_INIT(3600);
+ const char *src = strstr(msg, " Apparent source");
+ if (!src || get_options()->SafeLogging) {
+ src = "";
+ }
+ log_fn_ratelim(&mismatch_limit, severity, LD_EXIT,
+ "eventdns: Received a DNS packet from "
+ "an IP address to which we did not send a request. This "
+ "could be a DNS spoofing attempt, or some kind of "
+ "misconfiguration.%s", src);
+ return;
}
tor_log(severity, LD_EXIT, "eventdns: %s", msg);
}