[tor-commits] [snowflake/master] Modified broker /debug page to display counts only
cohosh at torproject.org
cohosh at torproject.org
Tue Aug 27 14:01:15 UTC 2019
commit 00eb4aadf57b66bc4d53801d4113e8402f31cd6f
Author: Cecylia Bocovich <cohosh at torproject.org>
Date: Fri Aug 23 10:58:20 2019 -0400
Modified broker /debug page to display counts only
The broker /debug page was displaying proxy IDs and roundtrip times. As
serna pointed out in bug #31460, the proxy IDs can be used to launch a
denial of service attack. As the metrics team pointed out on #21315, the
round trip time average can be potentially sensitive.
This change displays only proxy counts and uses ID lengths to
distinguish between standalone proxy-go instances and browser-based
snowflake proxies.
---
broker/broker.go | 11 +++++++++--
1 file changed, 9 insertions(+), 2 deletions(-)
diff --git a/broker/broker.go b/broker/broker.go
index 259b75a..4a88b94 100644
--- a/broker/broker.go
+++ b/broker/broker.go
@@ -255,10 +255,17 @@ func proxyAnswers(ctx *BrokerContext, w http.ResponseWriter, r *http.Request) {
func debugHandler(ctx *BrokerContext, w http.ResponseWriter, r *http.Request) {
s := fmt.Sprintf("current snowflakes available: %d\n", ctx.snowflakes.Len())
+
+ var browsers, standalones int
for _, snowflake := range ctx.idToSnowflake {
- s += fmt.Sprintf("\nsnowflake %d: %s", snowflake.index, snowflake.id)
+ if len(snowflake.id) < 16 {
+ browsers++
+ } else {
+ standalones++
+ }
}
- s += fmt.Sprintf("\n\nroundtrip avg: %d", ctx.metrics.clientRoundtripEstimate)
+ s += fmt.Sprintf("\tstandalone proxies: %d", standalones)
+ s += fmt.Sprintf("\n\tbrowser proxies: %d", browsers)
w.Write([]byte(s))
}
More information about the tor-commits
mailing list