93 Commits

Author SHA1 Message Date
Peter Müller
20e608a8f8 Tor: Update to 0.4.8.10
Changes in version 0.4.8.10 - 2023-12-08
  This is a security release fixing a high severity bug (TROVE-2023-007)
  affecting Exit relays supporting Conflux. We strongly recommend to update as
  soon as possible.

  o Major bugfixes (TROVE-2023-007, exit):
    - Improper error propagation from a safety check in conflux leg
      linking lead to a desynchronization of which legs were part of a
      conflux set, ultimately causing a UAF and NULL pointer dereference
      crash on Exit relays. Fixes bug 40897; bugfix on 0.4.8.1-alpha.

  o Minor features (fallbackdir):
    - Regenerate fallback directories generated on December 08, 2023.

  o Minor features (geoip data):
    - Update the geoip files to match the IPFire Location Database, as
      retrieved on 2023/12/08.

  o Minor bugfixes (bridges, statistics):
    - Correctly report statistics for client count over Pluggable
      transport. Fixes bug 40871; bugfix on 0.4.8.4

Signed-off-by: Peter Müller <peter.mueller@ipfire.org>
2024-01-03 21:27:41 +00:00
Peter Müller
9446956679 Tor: Update to 0.4.8.9
Changes in version 0.4.8.9 - 2023-11-09
  This is another security release fixing a high severity bug affecting onion
  services which is tracked by TROVE-2023-006. We are also releasing a guard
  major bugfix as well. If you are an onion service operator, we strongly
  recommend to update as soon as possible.

  o Major bugfixes (guard usage):
    - When Tor excluded a guard due to temporary circuit restrictions,
      it considered *additional* primary guards for potential usage by
      that circuit. This could result in more than the specified number
      of guards (currently 2) being used, long-term, by the tor client.
      This could happen when a Guard was also selected as an Exit node,
      but it was exacerbated by the Conflux guard restrictions. Both
      instances have been fixed. Fixes bug 40876; bugfix
      on 0.3.0.1-alpha.

  o Major bugfixes (onion service, TROVE-2023-006):
    - Fix a possible hard assert on a NULL pointer when recording a
      failed rendezvous circuit on the service side for the MetricsPort.
      Fixes bug 40883; bugfix on 0.4.8.1-alpha

  o Minor features (fallbackdir):
    - Regenerate fallback directories generated on November 09, 2023.

  o Minor features (geoip data):
    - Update the geoip files to match the IPFire Location Database, as
      retrieved on 2023/11/09.

Changes in version 0.4.8.8 - 2023-11-03
  We are releasing today a fix for a high security issue, TROVE-2023-004, that
  is affecting relays. Also a few minor bugfixes detailed below. Please upgrade
  as soon as posssible.

  o Major bugfixes (TROVE-2023-004, relay):
    - Mitigate an issue when Tor compiled with OpenSSL can crash during
      handshake with a remote relay. Fixes bug 40874; bugfix
      on 0.2.7.2-alpha.

  o Minor features (fallbackdir):
    - Regenerate fallback directories generated on November 03, 2023.

  o Minor features (geoip data):
    - Update the geoip files to match the IPFire Location Database, as
      retrieved on 2023/11/03.

  o Minor bugfixes (directory authority):
    - Look at the network parameter "maxunmeasuredbw" with the correct
      spelling. Fixes bug 40869; bugfix on 0.4.6.1-alpha.

  o Minor bugfixes (vanguards addon support):
    - Count the conflux linked cell as valid when it is successfully
      processed. This will quiet a spurious warn in the vanguards addon.
      Fixes bug 40878; bugfix on 0.4.8.1-alpha.

Signed-off-by: Peter Müller <peter.mueller@ipfire.org>
Reviewed-by: Michael Tremer <michael.tremer@ipfire.org>
2023-11-22 16:14:54 +00:00
Peter Müller
41ac2cd531 Tor: Update to 0.4.8.7
Changes in version 0.4.8.7 - 2023-09-25
  This version fixes a single major bug in the Conflux subsystem on the client
  side. See below for more information. The upcoming Tor Browser 13 stable will
  pick this up.

  o Major bugfixes (conflux):
    - Fix an issue that prevented us from pre-building more conflux sets
      after existing sets had been used. Fixes bug 40862; bugfix
      on 0.4.8.1-alpha.

  o Minor features (fallbackdir):
    - Regenerate fallback directories generated on September 25, 2023.

  o Minor features (geoip data):
    - Update the geoip files to match the IPFire Location Database, as
      retrieved on 2023/09/25.

Changes in version 0.4.8.6 - 2023-09-18
  This version contains an important fix for onion service regarding congestion
  control and its reliability. Apart from that, uneeded BUG warnings have been
  suppressed especially about a compression bomb seen on relays. We strongly
  recommend, in particular onion service operators, to upgrade as soon as
  possible to this latest stable.

  o Major bugfixes (onion service):
    - Fix a reliability issue where services were expiring their
      introduction points every consensus update. This caused
      connectivity issues for clients caching the old descriptor and
      intro points. Bug reported and fixed by gitlab user
      @hyunsoo.kim676. Fixes bug 40858; bugfix on 0.4.7.5-alpha.

  o Minor features (debugging, compression):
    - Log the input and output buffer sizes when we detect a potential
      compression bomb. Diagnostic for ticket 40739.

  o Minor features (fallbackdir):
    - Regenerate fallback directories generated on September 18, 2023.

  o Minor features (geoip data):
    - Update the geoip files to match the IPFire Location Database, as
      retrieved on 2023/09/18.

  o Minor bugfix (defensive programming):
    - Disable multiple BUG warnings of a missing relay identity key when
      starting an instance of Tor compiled without relay support. Fixes
      bug 40848; bugfix on 0.4.3.1-alpha.

  o Minor bugfixes (bridge authority):
    - When reporting a pseudo-networkstatus as a bridge authority, or
      answering "ns/purpose/*" controller requests, include accurate
      published-on dates from our list of router descriptors. Fixes bug
      40855; bugfix on 0.4.8.1-alpha.

  o Minor bugfixes (compression, zstd):
    - Use less frightening language and lower the log-level of our run-
      time ABI compatibility check message in our Zstd compression
      subsystem. Fixes bug 40815; bugfix on 0.4.3.1-alpha.

Signed-off-by: Peter Müller <peter.mueller@ipfire.org>
Reviewed-by: Adolf Belka <adolf.belka@ipfire.org>
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2023-10-13 08:12:54 +00:00
Peter Müller
55f19d7eb1 Tor: Update to 0.4.8.5
Changes in version 0.4.8.5 - 2023-08-30
  Quick second release after the first stable few days ago fixing minor
  annoying bugfixes creating log BUG stacktrace. We also fix BSD compilation
  failures and PoW unit test.

  o Minor features (fallbackdir):
    - Regenerate fallback directories generated on August 30, 2023.

  o Minor features (geoip data):
    - Update the geoip files to match the IPFire Location Database, as
      retrieved on 2023/08/30.

  o Minor bugfix (NetBSD, compilation):
    - Fix compilation issue on NetBSD by avoiding an unnecessary
      dependency on "huge" page mappings in Equi-X. Fixes bug 40843;
      bugfix on 0.4.8.1-alpha.

  o Minor bugfix (NetBSD, testing):
    - Fix test failures in "crypto/hashx" and "slow/crypto/equix" on
      x86_64 and aarch64 NetBSD hosts, by adding support for
      PROT_MPROTECT() flags. Fixes bug 40844; bugfix on 0.4.8.1-alpha.

  o Minor bugfixes (conflux):
    - Demote a relay-side warn about too many legs to ProtocolWarn, as
      there are conditions that it can briefly happen during set
      construction. Also add additional set logging details for all
      error cases. Fixes bug 40841; bugfix on 0.4.8.1-alpha.
    - Prevent non-fatal assert stacktrace caused by using conflux sets
      during their teardown process. Fixes bug 40842; bugfix
      on 0.4.8.1-alpha.

Signed-off-by: Peter Müller <peter.mueller@ipfire.org>
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2023-09-15 06:56:21 +00:00
Adolf Belka
d3166fd83d tor: Update to version 0.4.8.4
- Update from version 0.4.7.14 to 0.4.8.4
- Update of rootfile not required.
- Changelog
Changes in version 0.4.8.4 - 2023-08-23
  Finally, this is the very first stable release of the 0.4.8.x series making,
  among other features, Proof-of-Work (prop#327) and Conflux (prop#329)
  available to the entire network. Several new features and a lot of bugfixes
  detailed below.
  o Major feature (denial of service):
    - Extend DoS protection to partially opened channels and known relays.
      Because re-entry is not allowed anymore, we can apply DoS protections
      onto known IP namely relays. Fixes bug 40821; bugfix on 0.3.5.1-alpha.
  o Major features (onion service, proof-of-work):
    - Implement proposal 327 (Proof-Of-Work). This is aimed at thwarting
      introduction flooding DoS attacks by introducing a dynamic Proof-Of-Work
      protocol that occurs over introduction circuits. This introduces several
      torrc options prefixed with "HiddenServicePoW" in order to control this
      feature. By default, this is disabled. Closes ticket 40634.
  o Major features (conflux):
    - Implement Proposal 329 (conflux traffic splitting). Conflux splits
      traffic across two circuits to Exits that support the protocol. These
      circuits are pre-built only, which means that if the pre- built conflux
      pool runs out, regular circuits will then be used. When using conflux
      circuit pairs, clients choose the lower-latency circuit to send data to
      the Exit. When the Exit sends data to the client, it maximizes
      throughput, by fully utilizing both circuits in a multiplexed fashion.
      Alternatively, clients can request that the Exit optimize for latency
      when transmitting to them, by setting the torrc option 'ConfluxClientUX
      latency'. Onion services are not currently supported, but will be in
      arti. Many other future optimizations will also be possible using this
      protocol. Closes ticket 40593.
  o Major features (dirauth):
    - Directory authorities and relays now interact properly with directory
      authorities if they change addresses. In the past, they would continue to
      upload votes, signatures, descriptors, etc to the hard-coded address in
      the configuration. Now, if the directory authority is listed in the
      consensus at a different address, they will direct queries to this new
      address. Implements ticket 40705.
  o Major bugfixes (conflux):
    - Fix a relay-side crash caused by side effects of the fix for bug
      40827. Reverts part of that fix that caused the crash and adds additional
      log messages to help find the root cause. Fixes bug 40834; bugfix on
      0.4.8.3-rc.
  o Major bugfixes (conflux):
    - Fix a relay-side assert crash caused by attempts to use a conflux circuit
      between circuit close and free, such that no legs were on the conflux
      set. Fixed by nulling out the stream's circuit back- pointer when the
      last leg is removed. Additional checks and log messages have been added
      to detect other cases. Fixes bug 40827; bugfix on 0.4.8.1-alpha.
  o Major bugfixes (proof of work, onion service, hashx):
    - Fix a very rare buffer overflow in hashx, specific to the dynamic
      compiler on aarch64 platforms. Fixes bug 40833; bugfix on 0.4.8.2-alpha.
  o Major bugfixes (vanguards):
    - Rotate to a new L2 vanguard whenever an existing one loses the Stable or
      Fast flag. Previously, we would leave these relays in the L2 vanguard
      list but never use them, and if all of our vanguards end up like this we
      wouldn't have any middle nodes left to choose from so we would fail to
      make onion-related circuits. Fixes bug 40805; bugfix on 0.4.7.1-alpha.
  o Minor features (geoip data):
    - Update the geoip files to match the IPFire Location Database, as
      retrieved on 2023/08/23.
  o Minor features (fallbackdir):
    - Regenerate fallback directories generated on August 23, 2023.
  o Minor features (testing):
    - All Rust code is now linted (cargo clippy) as part of GitLab CI, and
      existing warnings have been fixed. - Any unit tests written in Rust now
      run as part of GitLab CI.
  o Minor feature (CI):
    - Update CI to use Debian Bullseye for runners.
  o Minor feature (client, IPv6):
    - Make client able to pick IPv6 relays by default now meaning
      ClientUseIPv6 option now defaults to 1. Closes ticket 40785.
  o Minor feature (compilation):
    - Fix returning something other than "Unknown N/A" as libc version
      if we build tor on an O.S. like DragonFlyBSD, FreeBSD, OpenBSD
      or NetBSD.
  o Minor feature (cpuworker):
    - Always use the number of threads for our CPU worker pool to the
      number of core available but cap it to a minimum of 2 in case of a
      single core. Fixes bug 40713; bugfix on 0.3.5.1-alpha.
  o Minor feature (lzma):
    - Fix compiler warnings for liblzma >= 5.3.1. Closes ticket 40741.
  o Minor feature (MetricsPort, relay):
    - Expose time until online keys expires on the MetricsPort. Closes
      ticket 40546.
  o Minor feature (MetricsPort, relay, onion service):
    - Add metrics for the relay side onion service interactions counting
      seen cells. Closes ticket 40797. Patch by "friendly73".
  o Minor features (directory authorities):
    - Directory authorities now include their AuthDirMaxServersPerAddr
      config option in the consensus parameter section of their vote.
      Now external tools can better predict how they will behave.
      Implements ticket 40753.
  o Minor features (directory authority):
    - Add a new consensus method in which the "published" times on
      router entries in a microdesc consensus are all set to a
      meaningless fixed date. Doing this will make the download size for
      compressed microdesc consensus diffs much smaller. Part of ticket
      40130; implements proposal 275.
  o Minor features (network documents):
    - Clients and relays no longer track the "published on" time
      declared for relays in any consensus documents. When reporting
      this time on the control port, they instead report a fixed date in
      the future. Part of ticket 40130.
  o Minor features (fallbackdir):
    - Regenerate fallback directories generated on June 01, 2023.
  o Minor features (geoip data):
    - Update the geoip files to match the IPFire Location Database, as
      retrieved on 2023/06/01.
  o Minor features (hs, metrics):
    - Add tor_hs_rend_circ_build_time and tor_hs_intro_circ_build_time
      histograms to measure hidden service rend/intro circuit build time
      durations. Part of ticket 40757.
  o Minor features (metrics):
    - Add a `reason` label to the HS error metrics. Closes ticket 40758.
    - Add service side metrics for REND and introduction request
      failures. Closes ticket 40755.
    - Add support for histograms. Part of ticket 40757.
  o Minor features (pluggable transports):
    - Automatically restart managed Pluggable Transport processes when
      their process terminate. Resolves ticket 33669.
  o Minor features (portability, compilation):
    - Use OpenSSL 1.1 APIs for LibreSSL, fixing LibreSSL 3.5
      compatibility. Fixes issue 40630; patch by Alex Xu (Hello71).
  o Minor features (relay):
    - Do not warn about configuration options that may expose a non-
      anonymous onion service. Closes ticket 40691.
  o Minor features (relays):
    - Trigger OOS when bind fails with EADDRINUSE. This improves
      fairness when a large number of exit connections are requested,
      and properly signals exhaustion to the network. Fixes issue 40597;
      patch by Alex Xu (Hello71).
  o Minor features (tests):
    - Avoid needless key reinitialization with OpenSSL during unit
      tests, saving significant time. Patch from Alex Xu.
  o Minor bugfix (hs):
    - Fix compiler warnings in equix and hashx when building with clang.
      Closes ticket 40800.
  o Minor bugfix (FreeBSD, compilation):
    - Fix compilation issue on FreeBSD by properly importing
      sys/param.h. Fixes bug 40825; bugfix on 0.4.8.1-alpha.
  o Minor bugfixes (compression):
    - Right after compression/decompression work is done, check for
      errors. Before this, we would consider compression bomb before
      that and then looking for errors leading to false positive on that
      log warning. Fixes bug 40739; bugfix on 0.3.5.1-alpha. Patch
      by "cypherpunks".
  o Minor bugfixes (compilation):
    - Fix all -Werror=enum-int-mismatch warnings. No behavior change.
      Fixes bug 40824; bugfix on 0.3.5.1-alpha.
  o Minor bugfixes (protocol warn):
    - Wrap a handful of cases where ProtocolWarning logs could emit IP
      addresses. Fixes bug 40828; bugfix on 0.3.5.1-alpha.
  o Minor bugfix (congestion control):
    - Reduce the accepted range of a circuit's negotiated 'cc_sendme_inc'
      to be +/- 1 from the consensus parameter value. Fixes bug 40569;
      bugfix on 0.4.7.4-alpha.
    - Remove unused congestion control algorithms and BDP calculation
      code, now that we have settled on and fully tuned Vegas. Fixes bug
      40566; bugfix on 0.4.7.4-alpha.
    - Update default congestion control parameters to match consensus.
      Fixes bug 40709; bugfix on 0.4.7.4-alpha.
  o Minor bugfixes (compilation):
    - Fix "initializer is not a constant" compilation error that
      manifests itself on gcc versions < 8.1 and MSVC. Fixes bug 40773;
      bugfix on 0.4.8.1-alpha
  o Minor bugfixes (conflux):
    - Count leg launch attempts prior to attempting to launch them. This
      avoids inifinite launch attempts due to internal circuit building
      failures. Additionally, double-check that we have enough exits in
      our consensus overall, before attempting to launch conflux sets.
      Fixes bug 40811; bugfix on 0.4.8.1-alpha.
    - Fix a case where we were resuming reading on edge connections that
      were already marked for close. Fixes bug 40801; bugfix
      on 0.4.8.1-alpha.
    - Fix stream attachment order when creating conflux circuits, so
      that stream attachment happens after finishing the full link
      handshake, rather than upon set finalization. Fixes bug 40801;
      bugfix on 0.4.8.1-alpha.
    - Handle legs being closed or destroyed before computing an RTT
      (resulting in warns about too many legs). Fixes bug 40810; bugfix
      on 0.4.8.1-alpha.
    - Remove a "BUG" warning from conflux_pick_first_leg that can be
      triggered by broken or malicious clients. Fixes bug 40801; bugfix
      on 0.4.8.1-alpha.
  o Minor bugfixes (KIST):
    - Prevent KISTSchedRunInterval from having values of 0 or 1, neither
      of which work properly. Additionally, make a separate
      KISTSchedRunIntervalClient parameter, so that the client and relay
      KIST values can be set separately. Set the default of both to 2ms.
      Fixes bug 40808; bugfix on 0.3.2.1-alpha.
  o Minor bugfix (relay, logging):
    - The wrong max queue cell size was used in a protocol warning
      logging statement. Fixes bug 40745; bugfix on 0.4.7.1-alpha.
  o Minor bugfixes (logging):
    - Avoid ""double-quoting"" strings in several log messages. Fixes
      bug 22723; bugfix on 0.1.2.2-alpha.
    - Correct a log message when cleaning microdescriptors. Fixes bug
      40619; bugfix on 0.2.5.4-alpha.
  o Minor bugfixes (metrics):
    - Decrement hs_intro_established_count on introduction circuit
      close. Fixes bug 40751; bugfix on 0.4.7.12.
  o Minor bugfixes (pluggable transports, windows):
    - Remove a warning `BUG()` that could occur when attempting to
      execute a non-existing pluggable transport on Windows. Fixes bug
      40596; bugfix on 0.4.0.1-alpha.
  o Minor bugfixes (relay):
    - Remove a "BUG" warning for an acceptable race between a circuit
      close and considering that circuit active. Fixes bug 40647; bugfix
      on 0.3.5.1-alpha.
    - Remove a harmless "Bug" log message that can happen in
      relay_addr_learn_from_dirauth() on relays during startup. Finishes
      fixing bug 40231. Fixes bug 40523; bugfix on 0.4.5.4-rc.
  o Minor bugfixes (sandbox):
    - Allow membarrier for the sandbox. And allow rt_sigprocmask when
      compiled with LTTng. Fixes bug 40799; bugfix on 0.3.5.1-alpha.
    - Fix sandbox support on AArch64 systems. More "*at" variants of
      syscalls are now supported. Signed 32 bit syscall parameters are
      checked more precisely, which should lead to lower likelihood of
      breakages with future compiler and libc releases. Fixes bug 40599;
      bugfix on 0.4.4.3-alpha.
  o Minor bugfixes (state file):
    - Avoid a segfault if the state file doesn't contains TotalBuildTimes
      along CircuitBuildAbandonedCount being above 0. Fixes bug 40437;
      bugfix on 0.3.5.1-alpha.
  o Removed features:
    - Remove the RendPostPeriod option. This was primarily used in
      Version 2 Onion Services and after its deprecation isn't needed
      anymore. Closes ticket 40431. Patch by Neel Chauhan.

Signed-off-by: Adolf Belka <adolf.belka@ipfire.org>
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2023-08-30 16:17:09 +00:00
Peter Müller
33d4586cb8 Tor: Update to 0.4.7.14
Full changelog:

Changes in version 0.4.7.14 - 2023-07-26
  This version contains several minor fixes and one major bugfix affecting
  vanguards (onion service). As usual, we recommend upgrading to this version
  as soon as possible.

  o Major bugfixes (vanguards):
    - Rotate to a new L2 vanguard whenever an existing one loses the
      Stable or Fast flag. Previously, we would leave these relays in
      the L2 vanguard list but never use them, and if all of our
      vanguards end up like this we wouldn't have any middle nodes left
      to choose from so we would fail to make onion-related circuits.
      Fixes bug 40805; bugfix on 0.4.7.1-alpha.

  o Minor feature (CI):
    - Update CI to use Debian Bullseye for runners.

  o Minor feature (lzma):
    - Fix compiler warnings for liblzma >= 5.3.1. Closes ticket 40741.

  o Minor features (directory authorities):
    - Directory authorities now include their AuthDirMaxServersPerAddr
      config option in the consensus parameter section of their vote.
      Now external tools can better predict how they will behave.
      Implements ticket 40753.

  o Minor features (fallbackdir):
    - Regenerate fallback directories generated on July 26, 2023.

  o Minor features (geoip data):
    - Update the geoip files to match the IPFire Location Database, as
      retrieved on 2023/07/26.

  o Minor bugfix (relay, logging):
    - The wrong max queue cell size was used in a protocol warning
      logging statement. Fixes bug 40745; bugfix on 0.4.7.1-alpha.

  o Minor bugfixes (compilation):
    - Fix all -Werror=enum-int-mismatch warnings. No behavior change.
      Fixes bug 40824; bugfix on 0.3.5.1-alpha.

  o Minor bugfixes (metrics):
    - Decrement hs_intro_established_count on introduction circuit
      close. Fixes bug 40751; bugfix on 0.4.7.12.

  o Minor bugfixes (sandbox):
    - Allow membarrier for the sandbox. And allow rt_sigprocmask when
      compiled with LTTng. Fixes bug 40799; bugfix on 0.3.5.1-alpha.

Signed-off-by: Peter Müller <peter.mueller@ipfire.org>
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2023-08-15 09:27:09 +00:00
Michael Tremer
87d0d07bbc core176: Re-ship lots of stuff that is still linked against OpenSSL 1.1.1
There are no functional changes in these files, but they are however
linked against OpenSSL 1.1.1 and need to be re-shipped before we remove
the legacy library.

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2023-06-27 10:06:45 +00:00
Peter Müller
4f83b8c452 Tor: Bump package version
Signed-off-by: Peter Müller <peter.mueller@ipfire.org>
2023-04-24 18:23:24 +00:00
Peter Müller
1756190eab Tor: Update to 0.4.7.13
Changes in version 0.4.7.13 - 2023-01-12
  This version contains three major bugfixes, two for relays and one for
  client being a security fix, TROVE-2022-002. We have added, for Linux, the
  support for IP_BIND_ADDRESS_NO_PORT for relays using OutboundBindAddress.
  We strongly recommend to upgrade to this version considering the important
  congestion control fix detailed below.

  o Major bugfixes (congestion control):
    - Avoid incrementing the congestion window when the window is not
      fully in use. Thia prevents overshoot in cases where long periods
      of low activity would allow our congestion window to grow, and
      then get followed by a burst, which would cause queue overload.
      Also improve the increment checks for RFC3742. Fixes bug 40732;
      bugfix on 0.4.7.5-alpha.

  o Major bugfixes (relay):
    - When opening a channel because of a circuit request that did not
      include an Ed25519 identity, record the Ed25519 identity that we
      actually received, so that we can use the channel for other
      circuit requests that _do_ list an Ed25519 identity. (Previously
      we had code to record this identity, but a logic bug caused it to
      be disabled.) Fixes bug 40563; bugfix on 0.3.0.1-alpha. Patch
      from "cypherpunks".

  o Major bugfixes (TROVE-2022-002, client):
    - The SafeSocks option had its logic inverted for SOCKS4 and
      SOCKS4a. It would let the unsafe SOCKS4 pass but not the safe
      SOCKS4a one. This is TROVE-2022-002 which was reported on
      Hackerone by "cojabo". Fixes bug 40730; bugfix on 0.3.5.1-alpha.

  o Minor feature (authority):
    - Reject 0.4.6.x series at the authority level. Closes ticket 40664.

  o Minor features (fallbackdir):
    - Regenerate fallback directories generated on January 12, 2023.

  o Minor features (geoip data):
    - Update the geoip files to match the IPFire Location Database, as
      retrieved on 2023/01/12.

  o Minor features (relays):
    - Set the Linux-specific IP_BIND_ADDRESS_NO_PORT option on outgoing
      sockets, allowing relays using OutboundBindAddress to make more
      outgoing connections than ephemeral ports, as long as they are to
      separate destinations. Related to issue 40597; patch by Alex
      Xu (Hello71).

  o Minor bugfixes (relay, metrics):
    - Fix typo in a congestion control label on the MetricsPort. Fixes
      bug 40727; bugfix on 0.4.7.12.

  o Minor bugfixes (sandbox, authority):
    - With the sandbox enabled, allow to write "my-consensus-
      {ns|microdesc}" and to rename them as well. Fixes bug 40729;
      bugfix on 0.3.5.1-alpha.

  o Code simplifications and refactoring:
    - Rely on actual error returned by the kernel when choosing what
      resource exhaustion to log. Fixes issue 40613; Fix
      on tor-0.4.6.1-alpha.

Signed-off-by: Peter Müller <peter.mueller@ipfire.org>
2023-01-27 00:21:13 +00:00
Peter Müller
4acb701b84 Tor: Update to 0.4.7.12
Full changelog:

Changes in version 0.4.7.12 - 2022-12-06
  This version contains a major change that is a new key for moria1. Also, new
  metrics are exported on the MetricsPort for the congestion control
  subsystem.

  o Directory authority changes (moria1):
    - Rotate the relay identity key and v3 identity key for moria1. They
      have been online for more than a decade and refreshing keys
      periodically is good practice. Advertise new ports too, to avoid
      confusion. Closes ticket 40722.

  o Minor feature (Congestion control metrics):
    - Add additional metricsport relay metrics for congestion control.
      Closes ticket 40724.

  o Minor features (fallbackdir):
    - Regenerate fallback directories generated on December 06, 2022.

  o Minor features (geoip data):
    - Update the geoip files to match the IPFire Location Database, as
      retrieved on 2022/12/06.

  o Minor bugfixes (cpuworker, relay):
    - Fix an off by one overload calculation on the number of CPUs being
      used by our thread pool. Fixes bug 40719; bugfix on 0.3.5.1-alpha.

Signed-off-by: Peter Müller <peter.mueller@ipfire.org>
2022-12-11 11:57:34 +00:00
Peter Müller
a26967c4b7 Tor: Update to 0.4.7.11
Please refer to https://gitlab.torproject.org/tpo/core/tor/-/raw/release-0.4.7/ReleaseNotes
for this versions' release notes.

Signed-off-by: Peter Müller <peter.mueller@ipfire.org>
2022-11-18 12:31:56 +00:00
Peter Müller
311d609d74 Tor: Bump package version
Signed-off-by: Peter Müller <peter.mueller@ipfire.org>
2022-09-17 09:44:40 +00:00
Peter Müller
6c0022149b Tor: Update to 0.4.7.10
Changes in version 0.4.7.10 - 2022-08-12
  This version updates the geoip cache that we generate from IPFire location
  database to use the August 9th, 2022 one. Everyone MUST update to this
  latest release else circuit path selection and relay metrics are badly
  affected.

  o Major bugfixes (geoip data):
    - IPFire informed us on August 12th that databases generated after
      (including) August 10th did not have proper ARIN network allocations. We
      are updating the database to use the one generated on August 9th, 2022.
      Fixes bug 40658; bugfix on 0.4.7.9.

Changes in version 0.4.7.9 - 2022-08-11
  This version contains several major fixes aimed at reducing memory pressure on
  relays and possible side-channel. It also contains a major bugfix related to
  congestion control also aimed at reducing memory pressure on relays.
  Finally, there is last one major bugfix related to Vanguard L2 layer node
  selection.

  We strongly recommend to upgrade to this version especially for Exit relays
  in order to help the network defend against this ongoing DDoS.

  o Major bugfixes (congestion control):
    - Implement RFC3742 Limited Slow Start. Congestion control was
      overshooting the congestion window during slow start, particularly
      for onion service activity. With this fix, we now update the
      congestion window more often during slow start, as well as dampen
      the exponential growth when the congestion window grows above a
      capping parameter. This should reduce the memory increases guard
      relays were seeing, as well as allow us to set lower queue limits
      to defend against ongoing DoS attacks. Fixes bug 40642; bugfix
      on 0.4.7.5-alpha.

  o Major bugfixes (relay):
    - Remove OR connections btrack subsystem entries when the connections
      close normally. Before this, we would only remove the entry on error and
      thus leaking memory for each normal OR connections. Fixes bug 40604;
      bugfix on 0.4.0.1-alpha.
    - Stop sending TRUNCATED cell and instead close the circuit from which we
      received a DESTROY cell. This makes every relay in the circuit path to
      stop queuing cells. Fixes bug 40623; bugfix on 0.1.0.2-rc.

  o Major bugfixes (vanguards):
    - We had omitted some checks for whether our vanguards (second layer
      guards from proposal 333) overlapped. Now make sure to pick each
      of them to be independent. Also, change the design to allow them
      to come from the same family. Fixes bug 40639; bugfix
      on 0.4.7.1-alpha.

  o Minor features (dirauth):
    - Add a torrc option to control the Guard flag bandwidth threshold
      percentile. Closes ticket 40652.
    - Add an AuthDirVoteGuard torrc option that can allow authorities to
      assign the Guard flag to the given fingerprints/country code/IPs.
      This is a needed feature mostly for defense purposes in case a DoS
      hits the network and relay start losing the Guard flags too fast.
    - Make UPTIME_TO_GUARANTEE_STABLE, MTBF_TO_GUARANTEE_STABLE,
      TIME_KNOWN_TO_GUARANTEE_FAMILIAR WFU_TO_GUARANTEE_GUARD tunable
      from torrc.

  o Minor features (fallbackdir):
    - Regenerate fallback directories generated on August 11, 2022.

  o Minor features (geoip data):
    - Update the geoip files to match the IPFire Location Database, as
      retrieved on 2022/08/11.

  o Minor bugfixes (congestion control):
    - Add a check for an integer underflow condition that might happen
      in cases where the system clock is stopped, the ORconn is blocked,
      and the endpoint sends more than a congestion window worth of non-
      data control cells at once. This would cause a large congestion
      window to be calculated instead of a small one. No security
      impact. Fixes bug 40644; bugfix on 0.4.7.5-alpha.

  o Minor bugfixes (defense in depth):
    - Change a test in the netflow padding code to make it more
      _obviously_ safe against remotely triggered crashes. (It was safe
      against these before, but not obviously so.) Fixes bug 40645;
      bugfix on 0.3.1.1-alpha.

  o Minor bugfixes (relay):
    - Do not propagate either forward or backward a DESTROY remote reason when
      closing a circuit in order to avoid a possible side channel. Fixes bug
      40649; bugfix on 0.1.2.4-alpha.

Signed-off-by: Peter Müller <peter.mueller@ipfire.org>
2022-09-17 09:44:24 +00:00
Michael Tremer
c183124f58 Bump PAK_VER for all packages that use SERVICES
Since we have extended services.cgi that it reads the Services field
from the Pakfire metadata, we will need to make sure that that metadata
is going to be on those systems.

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2022-09-15 10:43:54 +00:00
Peter Müller
1452738c2e Tor: Update to 0.4.7.8
Changes in version 0.4.7.8 - 2022-06-17
  This version fixes several bugfixes including a High severity security issue
  categorized as a Denial of Service. Everyone running an earlier version
  should upgrade to this version.

  o Major bugfixes (congestion control, TROVE-2022-001):
    - Fix a scenario where RTT estimation can become wedged, seriously
      degrading congestion control performance on all circuits. This
      impacts clients, onion services, and relays, and can be triggered
      remotely by a malicious endpoint. Tracked as CVE-2022-33903. Fixes
      bug 40626; bugfix on 0.4.7.5-alpha.

  o Minor features (fallbackdir):
    - Regenerate fallback directories generated on June 17, 2022.

  o Minor features (geoip data):
    - Update the geoip files to match the IPFire Location Database, as
      retrieved on 2022/06/17.

  o Minor bugfixes (linux seccomp2 sandbox):
    - Allow the rseq system call in the sandbox. This solves a crash
      issue with glibc 2.35 on Linux. Patch from pmu-ipf. Fixes bug
      40601; bugfix on 0.3.5.11.

  o Minor bugfixes (logging):
    - Demote a harmless warn log message about finding a second hop to
      from warn level to info level, if we do not have enough
      descriptors yet. Leave it at notice level for other cases. Fixes
      bug 40603; bugfix on 0.4.7.1-alpha.
    - Demote a notice log message about "Unexpected path length" to info
      level. These cases seem to happen arbitrarily, and we likely will
      never find all of them before the switch to arti. Fixes bug 40612;
      bugfix on 0.4.7.5-alpha.

  o Minor bugfixes (relay, logging):
    - Demote a harmless XOFF log message to from notice level to info
      level. Fixes bug 40620; bugfix on 0.4.7.5-alpha.

Signed-off-by: Peter Müller <peter.mueller@ipfire.org>
Reviewed-by: Adolf Belka <adolf.belka@ipfire.org>
2022-06-19 12:18:17 +00:00
Peter Müller
01eb9debf3 Tor: Update to 0.4.7.7
Please refer to https://gitweb.torproject.org/tor.git/plain/ChangeLog?h=tor-0.4.7.7
for the changelog of this version.

Signed-off-by: Peter Müller <peter.mueller@ipfire.org>
Reviewed-by: Adolf Belka <adolf.belka@ipfire.org>
2022-05-02 05:27:54 +00:00
Peter Müller
9a7e4d8506 Switch checksums from MD5 to BLAKE2
Historically, the MD5 checksums in our LFS files serve as a protection
against broken downloads, or accidentally corrupted source files.

While the sources are nowadays downloaded via HTTPS, it make sense to
beef up integrity protection for them, since transparently intercepting
TLS is believed to be feasible for more powerful actors, and the state
of the public PKI ecosystem is clearly not helping.

Therefore, this patch switches from MD5 to BLAKE2, updating all LFS
files as well as make.sh to deal with this checksum algorithm. BLAKE2 is
notably faster (and more secure) than SHA2, so the performance penalty
introduced by this patch is negligible, if noticeable at all.

In preparation of this patch, the toolchain files currently used have
been supplied with BLAKE2 checksums as well on
https://source.ipfire.org/.

Cc: Michael Tremer <michael.tremer@ipfire.org>
Signed-off-by: Peter Müller <peter.mueller@ipfire.org>
Acked-by: Michael Tremer <michael.tremeripfire.org>
2022-04-02 14:19:25 +00:00
Peter Müller
65c6336aa3 Tor: Pick up upstream patch for fixing sandbox with glibc >= 2.34
Fixes: #12807

Signed-off-by: Peter Müller <peter.mueller@ipfire.org>
2022-03-31 07:58:55 +00:00
Peter Müller
975a000753 Tor: Update to 0.4.6.10
Full changelog as per https://gitweb.torproject.org/tor.git/plain/ChangeLog?h=tor-0.4.6.10 :

Changes in version 0.4.6.10 - 2022-02-04
  This version contains minor bugfixes but one in particular is that relays
  don't advertise onion service v2 support at the protocol version level.

  o Minor features (fallbackdir):
    - Regenerate fallback directories generated on February 04, 2022.

  o Minor features (geoip data):
    - Update the geoip files to match the IPFire Location Database, as
      retrieved on 2022/02/04.

  o Minor bugfix (logging):
    - Update a log notice dead URL to a working one. Fixes bug 40544;
      bugfix on 0.3.5.1-alpha.

  o Minor bugfix (relay):
    - Remove the HSDir and HSIntro onion service v2 protocol versions so
      relay stop advertising that they support them. Fixes bug 40509;
      bugfix on 0.3.5.17.

  o Minor bugfixes (MetricsPort, Prometheus):
    - Add double quotes to the label values of the onion service
      metrics. Fixes bug 40552; bugfix on 0.4.5.1-alpha.

Signed-off-by: Peter Müller <peter.mueller@ipfire.org>
2022-03-05 14:30:52 +00:00
Robin Roevens
f15707c78c buildprocess: Add extra metadata to pak lfs files
* Add a Summary and Services field to all pak lfs files
* Replace occurances of INSTALL_INITSCRIPT with new INSTALL_INITSCRIPTS
  macro in all pak lfs files.

Signed-off-by: Robin Roevens <robin.roevens@disroot.org>
Reviewed-by: Peter Müller <peter.mueller@ipfire.org>
2022-02-11 15:13:15 +00:00
Peter Müller
48834bfa07 Tor: update to 0.4.6.9
Full changelog as per https://gitweb.torproject.org/tor.git/plain/ChangeLog:

Changes in version 0.4.6.9 - 2021-12-15
  This version fixes several bugs from earlier versions of Tor. One important
  piece is the removal of DNS timeout metric from the overload general signal.
  See below for more details.

  o Major bugfixes (relay, overload):
    - Don't make Tor DNS timeout trigger an overload general state.
      These timeouts are different from DNS server timeout. They have to
      be seen as timeout related to UX and not because of a network
      problem. Fixes bug 40527; bugfix on 0.4.6.1-alpha.

  o Minor feature (reproducible build):
    - The repository can now build reproducible tarballs which adds the
      build command "make dist-reprod" for that purpose. Closes
      ticket 26299.

  o Minor features (compilation):
    - Give an error message if trying to build with a version of
      LibreSSL known not to work with Tor. (There's an incompatibility
      with LibreSSL versions 3.2.1 through 3.4.0 inclusive because of
      their incompatibility with OpenSSL 1.1.1's TLSv1.3 APIs.) Closes
      ticket 40511.

  o Minor features (fallbackdir):
    - Regenerate fallback directories generated on December 15, 2021.

  o Minor features (geoip data):
    - Update the geoip files to match the IPFire Location Database, as
      retrieved on 2021/12/15.

  o Minor bugfixes (compilation):
    - Fix our configuration logic to detect whether we had OpenSSL 3:
      previously, our logic was reversed. This has no other effect than
      to change whether we suppress deprecated API warnings. Fixes bug
      40429; bugfix on 0.3.5.13.

  o Minor bugfixes (relay):
    - Reject IPv6-only DirPorts. Our reachability self-test forces
      DirPorts to be IPv4, but our configuration parser allowed them to
      be IPv6-only, which led to an assertion failure. Fixes bug 40494;
      bugfix on 0.4.5.1-alpha.

  o Documentation (man, relay):
    - Missing "OverloadStatistics" in tor.1 manpage. Fixes bug 40504;
      bugfix on 0.4.6.1-alpha.

Signed-off-by: Peter Müller <peter.mueller@ipfire.org>
Reviewed-by: Michael Tremer <michael.tremer@ipfire.org>
2021-12-19 11:39:27 +01:00
Peter Müller
063906ebc2 Tor: update to 0.4.6.8
Full changelog as per https://gitweb.torproject.org/tor.git/plain/ChangeLog?h=tor-0.4.6.8:

Changes in version 0.4.6.8 - 2021-10-26
  This version fixes several bugs from earlier versions of Tor. One
  highlight is a fix on how we track DNS timeouts to report general
  relay overload.

  o Major bugfixes (relay, overload state):
    - Relays report the general overload state for DNS timeout errors
      only if X% of all DNS queries over Y seconds are errors. Before
      that, it only took 1 timeout to report the overload state which
      was just too low of a threshold. The X and Y values are 1% and 10
      minutes respectively but they are also controlled by consensus
      parameters. Fixes bug 40491; bugfix on 0.4.6.1-alpha.

  o Minor features (fallbackdir):
    - Regenerate fallback directories for October 2021. Closes
      ticket 40493.

  o Minor features (testing):
    - On a testing network, relays can now use the
      TestingMinTimeToReportBandwidth option to change the smallest
      amount of time over which they're willing to report their observed
      maximum bandwidth. Previously, this was fixed at 1 day. For
      safety, values under 2 hours are only supported on testing
      networks. Part of a fix for ticket 40337.
    - Relays on testing networks no longer rate-limit how frequently
      they are willing to report new bandwidth measurements. Part of a
      fix for ticket 40337.
    - Relays on testing networks now report their observed bandwidths
      immediately from startup. Previously, they waited until they had
      been running for a full day. Closes ticket 40337.

  o Minor bugfix (onion service):
    - Do not flag an HSDir as non-running in case the descriptor upload
      or fetch fails. An onion service closes pending directory
      connections before uploading a new descriptor which can thus lead
      to wrongly flagging many relays and thus affecting circuit building
      path selection. Fixes bug 40434; bugfix on 0.2.0.13-alpha.
    - Improve logging when a bad HS version is given. Fixes bug 40476;
      bugfix on 0.4.6.1-alpha.

  o Minor bugfix (CI, onion service):
    - Exclude onion service version 2 Stem tests in our CI. Fixes bug 40500;
      bugfix on 0.3.2.1-alpha.

  o Minor bugfixes (compatibility):
    - Fix compatibility with the most recent Libevent versions, which no
      longer have an evdns_set_random_bytes() function. Because this
      function has been a no-op since Libevent 2.0.4-alpha, it is safe
      for us to just stop calling it. Fixes bug 40371; bugfix
      on 0.2.1.7-alpha.

  o Minor bugfixes (onion service, TROVE-2021-008):
    - Only log v2 access attempts once total, in order to not pollute
      the logs with warnings and to avoid recording the times on disk
      when v2 access was attempted. Note that the onion address was
      _never_ logged. This counts as a Low-severity security issue.
      Fixes bug 40474; bugfix on 0.4.5.8.

Since we configure Tor to use libseccomp, the latter has been updated
for kernel 5.15 as well, hence we need to ship Tor either way.

Signed-off-by: Peter Müller <peter.mueller@ipfire.org>
2021-11-24 14:06:17 +00:00
Peter Müller
76f36a621d Tor: Bump package version
Signed-off-by: Peter Müller <peter.mueller@ipfire.org>
Signed-off-by: Arne Fitzenreiter <arne_f@ipfire.org>
2021-10-22 10:21:19 +00:00
Peter Müller
8885bc7672 Tor: update to 0.4.6.7
Full changelog as per https://gitweb.torproject.org/tor.git/plain/ChangeLog?h=tor-0.4.6.7:

Changes in version 0.4.6.7 - 2021-08-16
  This version fixes several bugs from earlier versions of Tor,
  including one that could lead to a denial-of-service attack. Everyone
  running an earlier version, whether as a client, a relay, or an onion
  service, should upgrade to Tor 0.3.5.16, 0.4.5.10, or 0.4.6.7.

  o Major bugfixes (cryptography, security):
    - Resolve an assertion failure caused by a behavior mismatch between
      our batch-signature verification code and our single-signature
      verification code. This assertion failure could be triggered
      remotely, leading to a denial of service attack. We fix this issue
      by disabling batch verification. Fixes bug 40078; bugfix on
      0.2.6.1-alpha. This issue is also tracked as TROVE-2021-007 and
      CVE-2021-38385. Found by Henry de Valence.

  o Minor feature (fallbackdir):
    - Regenerate fallback directories list. Close ticket 40447.

  o Minor features (geoip data):
    - Update the geoip files to match the IPFire Location Database, as
      retrieved on 2021/08/12.

  o Minor bugfix (crypto):
    - Disable the unused batch verification feature of ed25519-donna.
      Fixes bug 40078; bugfix on 0.2.6.1-alpha. Found by Henry
      de Valence.

  o Minor bugfixes (onion service):
    - Send back the extended SOCKS error 0xF6 (Onion Service Invalid
      Address) for a v2 onion address. Fixes bug 40421; bugfix
      on 0.4.6.2-alpha.

  o Minor bugfixes (relay):
    - Reduce the compression level for data streaming from HIGH to LOW
      in order to reduce CPU load on the directory relays. Fixes bug
      40301; bugfix on 0.3.5.1-alpha.

  o Minor bugfixes (timekeeping):
    - Calculate the time of day correctly on systems where the time_t
      type includes leap seconds. (This is not the case on most
      operating systems, but on those where it occurs, our tor_timegm
      function did not correctly invert the system's gmtime function,
      which could result in assertion failures when calculating voting
      schedules.) Fixes bug 40383; bugfix on 0.2.0.3-alpha.

Signed-off-by: Peter Müller <peter.mueller@ipfire.org>
Signed-off-by: Arne Fitzenreiter <arne_f@ipfire.org>
2021-09-10 16:57:06 +00:00
Peter Müller
d3d2261c65 Tor: update to 0.4.6.5
Please refer to the .tar.gz's ReleaseNote file for the full changelog
since version 0.4.5.8; it is too large to include it here.

Signed-off-by: Peter Müller <peter.mueller@ipfire.org>
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2021-06-20 12:37:42 +00:00
Michael Tremer
f1fc2193a7 Bump release of all packages with CGI files
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2021-06-18 15:08:57 +00:00
Peter Müller
bab8ae1157 Tor: update to 0.4.5.8
Full changelog as per https://gitweb.torproject.org/tor.git/plain/ChangeLog?h=tor-0.4.5.8:

Changes in version 0.4.5.8 - 2021-05-10
  Tor 0.4.5.8 fixes several bugs in earlier version, backporting fixes
  from the 0.4.6.x series.

  o Minor features (compatibility, Linux seccomp sandbox, backport from 0.4.6.3-rc):
    - Add a workaround to enable the Linux sandbox to work correctly
      with Glibc 2.33. This version of Glibc has started using the
      fstatat() system call, which previously our sandbox did not allow.
      Closes ticket 40382; see the ticket for a discussion of trade-offs.

  o Minor features (compilation, backport from 0.4.6.3-rc):
    - Make the autoconf script build correctly with autoconf versions
      2.70 and later. Closes part of ticket 40335.

  o Minor features (fallback directory list, backport from 0.4.6.2-alpha):
    - Regenerate the list of fallback directories to contain a new set
      of 200 relays. Closes ticket 40265.

  o Minor features (geoip data):
    - Update the geoip files to match the IPFire Location Database, as
      retrieved on 2021/05/07.

  o Minor features (onion services):
    - Add warning message when connecting to now deprecated v2 onion
      services. As announced, Tor 0.4.5.x is the last series that will
      support v2 onions. Closes ticket 40373.

  o Minor bugfixes (bridge, pluggable transport, backport from 0.4.6.2-alpha):
    - Fix a regression that made it impossible start Tor using a bridge
      line with a transport name and no fingerprint. Fixes bug 40360;
      bugfix on 0.4.5.4-rc.

  o Minor bugfixes (build, cross-compilation, backport from 0.4.6.3-rc):
    - Allow a custom "ar" for cross-compilation. Our previous build
      script had used the $AR environment variable in most places, but
      it missed one. Fixes bug 40369; bugfix on 0.4.5.1-alpha.

  o Minor bugfixes (channel, DoS, backport from 0.4.6.2-alpha):
    - Fix a non-fatal BUG() message due to a too-early free of a string,
      when listing a client connection from the DoS defenses subsystem.
      Fixes bug 40345; bugfix on 0.4.3.4-rc.

  o Minor bugfixes (compiler warnings, backport from 0.4.6.3-rc):
    - Fix an indentation problem that led to a warning from GCC 11.1.1.
      Fixes bug 40380; bugfix on 0.3.0.1-alpha.

  o Minor bugfixes (controller, backport from 0.4.6.1-alpha):
    - Fix a "BUG" warning that would appear when a controller chooses
      the first hop for a circuit, and that circuit completes. Fixes bug
      40285; bugfix on 0.3.2.1-alpha.

  o Minor bugfixes (onion service, client, memory leak, backport from 0.4.6.3-rc):
    - Fix a bug where an expired cached descriptor could get overwritten
      with a new one without freeing it, leading to a memory leak. Fixes
      bug 40356; bugfix on 0.3.5.1-alpha.

  o Minor bugfixes (testing, BSD, backport from 0.4.6.2-alpha):
    - Fix pattern-matching errors when patterns expand to invalid paths
      on BSD systems. Fixes bug 40318; bugfix on 0.4.5.1-alpha. Patch by
      Daniel Pinto.

Signed-off-by: Peter Müller <peter.mueller@ipfire.org>
Reviewed-by: Adolf Belka <adolf.belka@ipfire.org>
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2021-05-16 11:59:33 +00:00
Peter Müller
4e24418705 Tor: update to 0.4.5.7
Full changelog as per https://gitweb.torproject.org/tor.git/plain/ChangeLog?h=tor-0.4.5.7:

Changes in version 0.4.5.7 - 2021-03-16
  Tor 0.4.5.7 fixes two important denial-of-service bugs in earlier
  versions of Tor.

  One of these vulnerabilities (TROVE-2021-001) would allow an attacker
  who can send directory data to a Tor instance to force that Tor
  instance to consume huge amounts of CPU. This is easiest to exploit
  against authorities, since anybody can upload to them, but directory
  caches could also exploit this vulnerability against relays or clients
  when they download. The other vulnerability (TROVE-2021-002) only
  affects directory authorities, and would allow an attacker to remotely
  crash the authority with an assertion failure. Patches have already
  been provided to the authority operators, to help ensure
  network stability.

  We recommend that everybody upgrade to one of the releases that fixes
  these issues (0.3.5.14, 0.4.4.8, or 0.4.5.7) as they become available
  to you.

  This release also updates our GeoIP data source, and fixes a few
  smaller bugs in earlier releases.

  o Major bugfixes (security, denial of service):
    - Disable the dump_desc() function that we used to dump unparseable
      information to disk. It was called incorrectly in several places,
      in a way that could lead to excessive CPU usage. Fixes bug 40286;
      bugfix on 0.2.2.1-alpha. This bug is also tracked as TROVE-2021-
      001 and CVE-2021-28089.
    - Fix a bug in appending detached signatures to a pending consensus
      document that could be used to crash a directory authority. Fixes
      bug 40316; bugfix on 0.2.2.6-alpha. Tracked as TROVE-2021-002
      and CVE-2021-28090.

  o Minor features (geoip data):
    - We have switched geoip data sources. Previously we shipped IP-to-
      country mappings from Maxmind's GeoLite2, but in 2019 they changed
      their licensing terms, so we were unable to update them after that
      point. We now ship geoip files based on the IPFire Location
      Database instead. (See https://location.ipfire.org/ for more
      information). This release updates our geoip files to match the
      IPFire Location Database as retrieved on 2021/03/12. Closes
      ticket 40224.

  o Minor bugfixes (directory authority):
    - Now that exit relays don't allow exit connections to directory
      authority DirPorts (to prevent network reentry), disable
      authorities' reachability self test on the DirPort. Fixes bug
      40287; bugfix on 0.4.5.5-rc.

  o Minor bugfixes (documentation):
    - Fix a formatting error in the documentation for
      VirtualAddrNetworkIPv6. Fixes bug 40256; bugfix on 0.2.9.4-alpha.

  o Minor bugfixes (Linux, relay):
    - Fix a bug in determining total available system memory that would
      have been triggered if the format of Linux's /proc/meminfo file
      had ever changed to include "MemTotal:" in the middle of a line.
      Fixes bug 40315; bugfix on 0.2.5.4-alpha.

  o Minor bugfixes (metrics port):
    - Fix a BUG() warning on the MetricsPort for an internal missing
      handler. Fixes bug 40295; bugfix on 0.4.5.1-alpha.

  o Minor bugfixes (onion service):
    - Remove a harmless BUG() warning when reloading tor configured with
      onion services. Fixes bug 40334; bugfix on 0.4.5.1-alpha.

  o Minor bugfixes (portability):
    - Fix a non-portable usage of "==" with "test" in the configure
      script. Fixes bug 40298; bugfix on 0.4.5.1-alpha.

  o Minor bugfixes (relay):
    - Remove a spammy log notice falsely claiming that the IPv4/v6
      address was missing. Fixes bug 40300; bugfix on 0.4.5.1-alpha.
    - Do not query the address cache early in the boot process when
      deciding if a relay needs to fetch early directory information
      from an authority. This bug resulted in a relay falsely believing
      it didn't have an address and thus triggering an authority fetch
      at each boot. Related to our fix for 40300.

  o Removed features (mallinfo deprecated):
    - Remove mallinfo() usage entirely. Libc 2.33+ now deprecates it.
      Closes ticket 40309.

Signed-off-by: Peter Müller <peter.mueller@ipfire.org>
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2021-03-29 10:31:48 +00:00
Peter Müller
591d4789b1 Tor: update to 0.4.5.6
Please refer to
https://gitweb.torproject.org/tor.git/plain/ChangeLog?h=tor-0.4.5.6 for
the full changelog of this release.

Signed-off-by: Peter Müller <peter.mueller@ipfire.org>
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2021-03-04 10:49:53 +00:00
Peter Müller
8474dc4a77 Tor: update to 0.4.4.7
Full changelog of this version as per
https://gitweb.torproject.org/tor.git/plain/ChangeLog?h=tor-0.4.4.7:

Changes in version 0.4.4.7 - 2021-02-03
  Tor 0.4.4.7 backports numerous bugfixes from later releases,
  including one that made v3 onion services more susceptible to
  denial-of-service attacks, and a feature that makes some kinds of
  DoS attacks harder to perform.

  o Major bugfixes (onion service v3, backport from 0.4.5.3-rc):
    - Stop requiring a live consensus for v3 clients and services, and
      allow a "reasonably live" consensus instead. This allows v3 onion
      services to work even if the authorities fail to generate a
      consensus for more than 2 hours in a row. Fixes bug 40237; bugfix
      on 0.3.5.1-alpha.

  o Major feature (exit, backport from 0.4.5.5-rc):
    - Re-entry into the network is now denied at the Exit level to all
      relays' ORPorts and authorities' ORPorts and DirPorts. This change
      should help mitgate a set of denial-of-service attacks. Closes
      ticket 2667.

  o Minor feature (build system, backport from 0.4.5.4-rc):
    - New "make lsp" command to generate the compile_commands.json file
      used by the ccls language server. The "bear" program is needed for
      this. Closes ticket 40227.

  o Minor features (compilation, backport from 0.4.5.2-rc):
    - Disable deprecation warnings when building with OpenSSL 3.0.0 or
      later. There are a number of APIs newly deprecated in OpenSSL
      3.0.0 that Tor still requires. (A later version of Tor will try to
      stop depending on these APIs.) Closes ticket 40165.

  o Minor features (crypto, backport from 0.4.5.3-rc):
    - Fix undefined behavior on our Keccak library. The bug only
      appeared on platforms with 32-byte CPU cache lines (e.g. armv5tel)
      and would result in wrong digests. Fixes bug 40210; bugfix on
      0.2.8.1-alpha. Thanks to Bernhard Übelacker, Arnd Bergmann and
      weasel for diagnosing this.

  o Minor bugfixes (compatibility, backport from 0.4.5.1-rc):
    - Strip '\r' characters when reading text files on Unix platforms.
      This should resolve an issue where a relay operator migrates a
      relay from Windows to Unix, but does not change the line ending of
      Tor's various state files to match the platform, and the CRLF line
      endings from Windows end up leaking into other files such as the
      extra-info document. Fixes bug 33781; bugfix on 0.0.9pre5.

  o Minor bugfixes (compilation, backport from 0.4.5.3-rc):
    - Fix a compilation warning about unreachable fallthrough
      annotations when building with "--enable-all-bugs-are-fatal" on
      some compilers. Fixes bug 40241; bugfix on 0.3.5.4-alpha.

  o Minor bugfixes (SOCKS5, backport from 0.4.5.3-rc):
    - Handle partial SOCKS5 messages correctly. Previously, our code
      would send an incorrect error message if it got a SOCKS5 request
      that wasn't complete. Fixes bug 40190; bugfix on 0.3.5.1-alpha.

  o Minor bugfixes (testing, backport from 0.4.5.2-alpha):
    - Fix the `config/parse_tcp_proxy_line` test so that it works
      correctly on systems where the DNS provider hijacks invalid
      queries. Fixes part of bug 40179; bugfix on 0.4.3.1-alpha.
    - Fix our Python reference-implementation for the v3 onion service
      handshake so that it works correctly with the version of hashlib
      provided by Python 3.9. Fixes part of bug 40179; bugfix
      on 0.3.1.6-rc.
    - Fix the `tortls/openssl/log_one_error` test to work with OpenSSL
      3.0.0. Fixes bug 40170; bugfix on 0.2.8.1-alpha.

Signed-off-by: Peter Müller <peter.mueller@ipfire.org>
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2021-02-05 11:21:39 +00:00
Peter Müller
ef99991370 Tor: update to 0.4.4.6
Full changelog can be obtained from https://gitweb.torproject.org/tor.git/plain/ChangeLog?h=tor-0.4.4.6 .

Signed-off-by: Peter Müller <peter.mueller@ipfire.org>
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2020-11-25 17:17:35 +00:00
Michael Tremer
7b97337afb core153: Ship location changes
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2020-11-09 14:11:16 +00:00
Michael Tremer
60985e75c8 tor: Bump package version
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2020-11-05 23:31:26 +00:00
Peter Müller
ffad9c5560 Tor: update to 0.4.4.5
Please refer to
https://gitweb.torproject.org/tor.git/plain/ChangeLog?h=tor-0.4.4.5 for
the changelog of this release.

Signed-off-by: Peter Müller <peter.mueller@ipfire.org>
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2020-10-23 17:20:11 +00:00
Michael Tremer
796aa6b303 tor: Bump release
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2020-10-12 10:15:59 +00:00
Michael Tremer
45d2235224 tor: Bump package version
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2020-09-24 17:36:38 +00:00
Peter Müller
4591f94bc5 Tor: update to 0.4.3.6
Please refer to https://blog.torproject.org/new-release-tor-03511-0428-0436-security-fixes
for release announcements.

Signed-off-by: Peter Müller <peter.mueller@ipfire.org>
Reviewed-by: Michael Tremer <michael.tremer@ipfire.org>
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2020-08-17 17:53:03 +00:00
Peter Müller
2bd5209d49 Tor: update to 0.4.3.5
Please refer to https://blog.torproject.org/node/1872 for release notes.

Signed-off-by: Peter Müller <peter.mueller@ipfire.org>
Signed-off-by: Arne Fitzenreiter <arne_f@ipfire.org>
2020-05-19 19:36:02 +00:00
Peter Müller
9f88095278 Tor: bump package version
This is required in order to ship Tor compiled against libevent
2.1.11-stable.

Signed-off-by: Peter Müller <peter.mueller@ipfire.org>
Signed-off-by: Arne Fitzenreiter <arne_f@ipfire.org>
2020-05-09 11:51:07 +00:00
Michael Tremer
2dc2a27803 lfs: Drop quotes in DEPS variable
Not sure why this has ever been there. This simply makes it
nicer to read and edit because we can have line-breaks now.

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Signed-off-by: Arne Fitzenreiter <arne_f@ipfire.org>
2020-03-24 08:57:27 +00:00
Peter Müller
0c92ef9ba5 Tor: update to 0.4.2.7
Please refer to https://blog.torproject.org/new-releases-03510-0419-0427
for release announcement.

Signed-off-by: Peter Müller <peter.mueller@ipfire.org>
Reviewed-by: Michael Tremer <michael.tremer@ipfire.org>
Signed-off-by: Arne Fitzenreiter <arne_f@ipfire.org>
2020-03-21 15:55:19 +00:00
Peter Müller
1eef496d47 Tor: update to 0.4.2.6
Please refer to https://blog.torproject.org/new-releases-tor-0426-0418
for release notes.

Signed-off-by: Peter Müller <peter.mueller@ipfire.org>
Reviewed-by: Michael Tremer <michael.tremer@ipfire.org>
Signed-off-by: Arne Fitzenreiter <arne_f@ipfire.org>
2020-02-20 11:35:58 +00:00
Peter Müller
96ac98a568 Tor: update to 0.4.2.5
Please refer to https://blog.torproject.org/new-release-0425-also-0417-0406-and-0359
for release notes.

Signed-off-by: Peter Müller <peter.mueller@ipfire.org>
Reviewed-by: Michael Tremer <michael.tremer@ipfire.org>
Signed-off-by: Arne Fitzenreiter <arne_f@ipfire.org>
2020-01-04 18:25:00 +00:00
peter.mueller@ipfire.org
e603fd28b9 Tor: fix permissions of /var/ipfire/tor/torrc after installation
Fixes #12220

Reported-by: Michael Tremer <michael.tremer@ipfire.org>
Signed-off-by: Peter Müller <peter.mueller@ipfire.org>
Signed-off-by: Arne Fitzenreiter <arne_f@ipfire.org>
2019-10-29 19:51:45 +00:00
peter.mueller@ipfire.org
65c295e923 Tor: update to 0.4.1.6
Please refer to https://blog.torproject.org/new-release-tor-0416 for
release notes. This patch has to be applied after applying 9fb607ef6
(https://patchwork.ipfire.org/patch/2407/), which was not merged at
the time of writing.

Signed-off-by: Peter Müller <peter.mueller@ipfire.org>
Reviewed-by: Michael Tremer <michael.tremer@ipfire.org>
Signed-off-by: Arne Fitzenreiter <arne_f@ipfire.org>
2019-10-08 18:31:31 +00:00
peter.mueller@ipfire.org
a4ec2a4e4f Tor: update to 0.4.1.5
Signed-off-by: Peter Müller <peter.mueller@ipfire.org>
Signed-off-by: Arne Fitzenreiter <arne_f@ipfire.org>
2019-10-08 18:03:26 +00:00
peter.mueller@ipfire.org
9a0454cea2 Tor: fix permission of /var/ipfire/tor/settings
The settings file must be writeable for group "nobody" so
users can change their Tor settings via WebUI. Since other
files in /var/ipfire/tor/ does not need this workaround, only
the settings file permissions are changed.

Sorry for the late fix; this was reported by various people
in the forum, too (I was unaware of so many Tor users in our
community).

Fixes #12117

Reported-by: Erik Kapfer <erik.kapfer@ipfire.org>
Signed-off-by: Peter Müller <peter.mueller@ipfire.org>
Signed-off-by: Arne Fitzenreiter <arne_f@ipfire.org>
2019-09-11 16:54:11 +00:00
Peter Müller
fa7de475fe Tor: fix permissions after updating, too
Fixes #12088

Signed-off-by: Peter Müller <peter.mueller@ipfire.org>
Reported-by: Erik Kapfer <ummeegge@ipfire.org>
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2019-06-12 05:45:42 +01:00
Michael Tremer
21f2107697 tor: Ship updated CGI
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2019-05-27 15:47:02 +01:00
Michael Tremer
f8c23b43b7 tor: Depend on libseccomp
Suggested-by: Erik Kapfer <erik.kapfer@ipfire.org>
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2019-05-23 01:50:29 +01:00