Commit Graph

28312 Commits

Author SHA1 Message Date
Waldemar Zimpel
4759350b9a Fix: Use FREE_AND_NULL() for releasing workqueue resources
See issue #40989
2024-10-31 08:37:37 -04:00
Tor CI Release
200e89ee69 fallbackdir: Update list generated on October 24, 2024 2024-10-24 10:32:45 -04:00
Tor CI Release
dd9c6a4992 Update geoip files to match ipfire location db, 2024/10/24. 2024-10-24 10:30:55 -04:00
Roger Dingledine
7cca6dc1a3 don't build preemptive conflux circuits if no predicted ports
Conflux circuit building was ignoring the "predicted ports" feature,
which aims to make Tor stop building circuits if there have been
no user requests lately. This bug led to every idle Tor on the
network building and discarding circuits every 30 seconds, which
added overall load to the network, used bandwidth and battery from
clients that weren't actively using their Tor, and kept sockets open
on guards which added connection padding essentially forever.

Bug went in on commit 39c2927d when we added preemptive conflux circuit
pools.

Fixes bug 40981; bugfix on 0.4.8.1-alpha.
2024-10-15 15:59:25 -04:00
Waldemar Zimpel
6feaea8fa4 Fix: Memory leaks in cpuworker on shutdown
Resources allocated by cpuworker weren't being freed on clean shutdown.
This applies for worker threads, worker thread pool, reply queue, reply
event, ...
2024-10-10 09:55:46 -04:00
David Goulet
93df26b11a dirvote: Fix memleak when computing consensus
Fixes #40966

Signed-off-by: David Goulet <dgoulet@torproject.org>
2024-08-05 11:59:30 -04:00
David Goulet
d587ba01a7 bridge: Always put transport-info line
Signed-off-by: David Goulet <dgoulet@torproject.org>
2024-06-18 15:15:32 -04:00
Alexander Færøy
1941f25f4c Clean-up Managed Proxy state in PT tests.
This patch makes sure we clean up our version and implementation fields
in our Managed Proxy struct after each test run.

This was detected by LeakSanitizer.

See: tpo/core/tor#11101.
2024-06-18 15:15:32 -04:00
Alexander Færøy
3c8035b452 Add changes file for tpo/core/tor#11101. 2024-06-18 15:15:32 -04:00
Alexander Færøy
b4f8518f8f Add implementation and version metadata to bridge extra-info.
This patch adds two new keys to bridges' extra-info document:
"transport-version" and "transport-implementation".

These two new values always appear together (if one is missing, the
other one will be missing too) and is parsed from PT's STATUS
TYPE=version messages.

See: tpo/core/tor#11101.
2024-06-18 15:15:20 -04:00
Alexander Færøy
f459344488 Include "IMPLEMENTATION" parameter to STATUS TYPE=version PT messages. 2024-06-18 15:15:20 -04:00
Alexander Færøy
d27ce6b8f0 Drop requirement for TRANSPORT being present in STATUS messages. 2024-06-18 15:15:20 -04:00
Alexander Færøy
b6e260e699 Add support for PT STATUS TYPE=version messages.
This patch adds support for handling the version status message. Once we
receive such message, we add the given version string to the
managed_proxy_t instance. Note this value can be NULL and the value can
change throughout the lifetime of the PT as multiple status version
messages are handled.

See: tpo/core/tor#11101
2024-06-18 15:15:20 -04:00
Tor CI Release
31f8b43e2d fallbackdir: Update list generated on June 06, 2024 2024-06-06 08:45:09 -04:00
Tor CI Release
9b69c25d3a Update geoip files to match ipfire location db, 2024/06/06. 2024-06-06 08:44:54 -04:00
David Goulet
39ba9ce0d7 dirauth: Add new faravahar
Brand new address, brand new keys, brand new day.

Closes #40689

Signed-off-by: David Goulet <dgoulet@torproject.org>
2024-05-30 09:49:27 -04:00
hiro
7708f9a4ea Fix typo in tor-relays list address 2024-04-30 15:34:07 -04:00
David Goulet
bedc6a90d2 circuit: Remove log_warn triggered by a proto violation
Fixes #40932

Signed-off-by: David Goulet <dgoulet@torproject.org>
2024-04-16 13:49:42 -04:00
David Goulet
29e3601c42 Merge branch 'tor-gitlab/mr/808' into maint-0.4.8 2024-04-15 15:11:16 -04:00
David Goulet
612b801ea5 conflux: Don't process a closed circuit on get packaged window
Signed-off-by: David Goulet <dgoulet@torproject.org>
2024-04-15 14:45:29 -04:00
David Goulet
269b4561a1 conflux: Avoid noting a cell was sent on a closed circuit
It turns out that circuit_package_relay_cell() returns 0 in order to drop a
cell but there is a code path, if the circuit queue is full, that also silently
closes the circuit and returns 0.

This lead to Conflux thinking a cell was sent but actually the cell was not and
the circuit was closed leading to the hard assert.

And so this function makes sure that circuit_package_relay_cell() and
append_cell_to_circuit_queue() returns a value that indicate what happened with
the cell and circuit so the caller can make an informed decision with it.

This change makes it that we do NOT enter the Conflux subsystem if the cell is
not queued on the circuit.

Fixes #40921

Signed-off-by: David Goulet <dgoulet@torproject.org>
2024-04-15 14:24:45 -04:00
Tor CI Release
461679e8c0 fallbackdir: Update list generated on April 10, 2024 2024-04-10 12:58:56 -04:00
Tor CI Release
3064d57712 Update geoip files to match ipfire location db, 2024/04/10. 2024-04-10 12:58:51 -04:00
David Goulet
e3e4fa35e8 dirauth: New keys and address for tor26
Signed-off-by: David Goulet <dgoulet@torproject.org>
2024-04-08 10:57:29 -04:00
Sebastian Hahn
4db6ab5c18 Update test strings 2024-02-01 17:16:17 +01:00
Sebastian Hahn
1abc9a3bd3 dirauth: Warn when failing to post during a vote
The only way to figure out that posting a vote or signatures to another
dirauth failed is by counting how many success messages there are on
notice level, and noticing that it is fewer than the number of
configured dirauths.

Closes #40910.
2024-02-01 10:34:30 +01:00
David Goulet
fbca1df9dd dirauth: Reject 0.4.7.x series at the authority level
Signed-off-by: David Goulet <dgoulet@torproject.org>
2024-01-30 10:56:16 -05:00
juga
56819b0a50 bwauth: Allow "node_id" KeyValue without "$"
Allow "node_id" KeyValue without the dollar sign at the start of the
hexdigit in the BandwidthFiles, in order to easier database queries
combining Tor documents in which the relays fingerprint doesn't
include it.
Bugfix on all supported versions of Tor.

Closes #40891
2024-01-30 10:47:13 -05:00
Tor CI Release
4c97dc1626 fallbackdir: Update list generated on December 08, 2023 2023-12-08 13:45:00 -05:00
Tor CI Release
ad22b60ff1 Update geoip files to match ipfire location db, 2023/12/08. 2023-12-08 13:44:45 -05:00
David Goulet
6fbbcdde35 Merge remote-tracking branch 'mikeperry-private/bug40897' into maint-0.4.8 2023-12-08 13:19:40 -05:00
Alexander Færøy
1b1f6e8574 Merge remote-tracking branch 'origin/merge-requests/776' into maint-0.4.8 2023-12-07 21:38:03 +00:00
Mike Perry
cc52f7e5b7 Bug 40897 Bug Bounty: Double the number of max conflux circs
We strongly suspect that bug 40897 was caused by a custom Tor client that
tried to use more than the default number of conflux circuits, for either
performance or traffic analysis defense gains, or both.

This entity hit a safety check on the exit side, which caused a UAF. Our
"belt and suspenders" snapped off, and hit us in the face... again...

Since there are good reasons to try more than 2 conflux legs, and research has
found some traffic analysis benefits with as many as 5, we're going to raise
and parameterize this limit as a form of bug bounty for finding this UAF, so
that this entity can try out a little more confluxing.

This should also make it easier for researchers to try things like gathering
traces with larger amounts of confluxing than normal, to measure real-world
traffic analysis impacts of conflux.

Shine on, you yoloing anonymous diamond. Let us know if you find out anything
interesting!
2023-12-07 18:37:30 +00:00
Mike Perry
03778a0f34 Bug 40897: Add more checks to free paths
Similar double-frees would be caught earlier by these, so long as the pointers
remain nulled out.
2023-12-07 18:37:30 +00:00
Mike Perry
d02eb4502a Bug 40897: Move safety check to proper location and give it error handling. 2023-12-07 18:37:26 +00:00
Tor CI Release
825aa705b1 fallbackdir: Update list generated on November 09, 2023 2023-11-09 09:23:59 -05:00
Tor CI Release
f822f24599 Update geoip files to match ipfire location db, 2023/11/09. 2023-11-09 09:23:54 -05:00
David Goulet
be751a46e3 Merge branch 'ticket40883_048_01' into maint-0.4.8 2023-11-09 09:14:19 -05:00
David Goulet
6df27ae953 Merge branch 'tor-gitlab/mr/778' into maint-0.4.8 2023-11-09 09:10:52 -05:00
David Goulet
83aecca561 hs: Always check if the hs_ident is available when processing a cell
Signed-off-by: David Goulet <dgoulet@torproject.org>
2023-11-08 11:17:48 -05:00
David Goulet
e62b8bce5a hs: Fix assert in hs_metrics_update_by_ident()
The hs_metrics_failed_rdv() macro could pass a NULL value for the identity key
when a building circuit would end up in a failure path *before* the "hs_ident"
was able to be set which leading to this assert.

This was introduced in 0.4.8.1-alpha with the addition of rendezvous circuit
failure metrics for the MetricsPort.

This fixes TROVE-2023-006 for which its severity is considered high.

Signed-off-by: David Goulet <dgoulet@torproject.org>
2023-11-07 13:50:28 -05:00
Tor CI Release
f1df34193b Update geoip files to match ipfire location db, 2023/11/03. 2023-11-03 09:38:29 -04:00
Tor CI Release
ea6d6568e7 fallbackdir: Update list generated on November 03, 2023 2023-11-03 09:38:21 -04:00
David Goulet
24dc829b9a Merge branch 'maint-0.4.7' into maint-0.4.8 2023-11-03 09:04:27 -04:00
Alexander Færøy
7aa496a2e0 Fix TROVE-2023-004: Remote crash when compiled against OpenSSL
Fixes #40874

Signed-off-by: David Goulet <dgoulet@torproject.org>
2023-11-03 08:52:38 -04:00
Mike Perry
6bfadc7a5d Bug 40876: Extra logging 2023-11-01 19:57:08 +00:00
Mike Perry
d7f14a54fb Bug 40876: Don't reduce primary list for temporary restrictions 2023-11-01 19:57:07 +00:00
Mike Perry
d9e7759088 Bug 40878: Count a valid conflux linked cell as valid data
For vanguards addon.
2023-10-30 16:54:49 +00:00
trinity-1686a
efc7159e08
fix bridge transport statistics 2023-10-12 18:44:54 +02:00
Nick Mathewson
8c22fd4a4d Fix the spelling of maxunmeasur(e)dbw.
This has been misspelled when using consensus method 31 or later
since 0.4.6.1-alpha.  Fixes bug 40869.

This commit is a backport of b9b0abd6c2 to 0.4.8.
2023-10-11 10:08:53 -04:00