commit b588b6087690b2d17fd7f854a3a1b65b569fa79c
parent 9769df89fe5bd8ccd802064273cca09efddc2b02
Author: Nick Mathewson <nickm@torproject.org>
Date: Tue, 22 Oct 2019 12:51:27 -0400
Merge remote-tracking branch 'tor-github/pr/1343' into maint-0.4.1
Diffstat:
2 files changed, 9 insertions(+), 2 deletions(-)
diff --git a/changes/ticket31466 b/changes/ticket31466
@@ -0,0 +1,5 @@
+ o Minor bugfixes (logging):
+ - Rate-limit our the logging message about the obsolete .exit notation.
+ Previously, there was no limit on this warning, which could potentially
+ be triggered many times by a hostile website. Fixes bug 31466;
+ bugfix on 0.2.2.1-alpha.
diff --git a/src/core/or/connection_edge.c b/src/core/or/connection_edge.c
@@ -1611,8 +1611,10 @@ connection_ap_handshake_rewrite(entry_connection_t *conn,
* disallowed when they're coming straight from the client, but you're
* allowed to have them in MapAddress commands and so forth. */
if (!strcmpend(socks->address, ".exit")) {
- log_warn(LD_APP, "The \".exit\" notation is disabled in Tor due to "
- "security risks.");
+ static ratelim_t exit_warning_limit = RATELIM_INIT(60*15);
+ log_fn_ratelim(&exit_warning_limit, LOG_WARN, LD_APP,
+ "The \".exit\" notation is disabled in Tor due to "
+ "security risks.");
control_event_client_status(LOG_WARN, "SOCKS_BAD_HOSTNAME HOSTNAME=%s",
escaped(socks->address));
out->end_reason = END_STREAM_REASON_TORPROTOCOL;