[tor-project] Anti-censorship team meeting notes, 2024-12-19

Hey everyone!

Here are our meeting logs:
http://meetbot.debian.net/tor-meeting/2024/tor-meeting.2024-12-19-16.00.html

And our meeting pad:

Anti-censorship

···

--------------------------------

Next meeting: Thursday,January 9 16:00 UTC
Facilitator: onyinyang
^^^(See Facilitator Queue at tail)

Weekly meetings, every Thursday at 16:00 UTC, in #tor-meeting at OFTC
(channel is logged while meetings are in progress)

This week's Facilitator: meskio

== Goal of this meeting ==

Weekly check-in about the status of anti-censorship work at Tor.
Coordinate collaboration between people/teams on anti-censorship at the Tor Project and Tor community.

== Links to Useful documents ==
  * Our anti-censorship roadmap:
    * Roadmap:Development · Boards · Anti-censorship · GitLab
  * The anti-censorship team's wiki page:
    * Home · Wiki · The Tor Project / Anti-censorship / Team · GitLab
  * Past meeting notes can be found at:
    * The tor-project Archives
  * Tickets that need reviews: from projects, we are working on:
    * All needs review tickets:
      * Merge requests · Anti-censorship · GitLab
    * Project 158 <-- meskio working on it
      * Issues · Anti-censorship · GitLab

== Announcements ==

  * Azure CDN from Edgio (azureedge.net) is due to be shut down as early as 2025-01-15: Deprecation of Azure CDN from Edgio (azureedge.net), replaced by Azure Front Door (azurefd.net), affects snowflake-broker.azureedge.net - anti-censorship-team - lists.torproject.org
    * We stopped using snowflake-broker.azureedge.net in 2021: Bug 40263: Update domain front for Snowflake (!252) · Merge requests · The Tor Project / Applications / tor-browser-build · GitLab
    * But it still receives traffic somehow: Snowflake costs · Wiki · The Tor Project / Anti-censorship / Team · GitLab
    * onionwrapper still uses snowflake-broker.azureedge.net: [anti-censorship-team] Re: Deprecation of Azure CDN from Edgio (azureedge.net), replaced by Azure Front Door (azurefd.net), affects snowflake-broker.azureedge.net - anti-censorship-team - lists.torproject.org
    * (also, anything still using snowflake-broker.azureedge.net is using the old broker not working right now, see discussion below)
  * No meetings during the next two weeks. Next meeting: January 9th

== Discussion ==

  * Azure CDN from Edgio shutdown
    * Might make our meek builtin bridge stop working, requiring a change or removal as a default option
    * cohosh will follow up with micah
    * added a CDN77 meek bridge to the builtin bridges
    * going to change azure to ampcache, or sqs for China
      * Replace snowflake azure fronts by ampcache (!35) · Merge requests · The Tor Project / Anti-censorship / rdsys-admin · GitLab
  * alternative domain names for CDN77 domain front
    * we are using phpmyadmin.net as domian front for snowflake, meek and moat
    * should we diversify?
    * Tor and Hetzner block in Russia - #3 by Protium_serratum
    * tiktok domains?
      * in China there is a domestic version called douyin, tiktok itself may not be accessible?
    * shelikhoo will add support for testing domainfronts in vantage points to see what works where
  * snowflake-broker.azureedge.net (Edgio) became broken after being changed to point to snowflake-broker.torproject.net (the newly set up broker), because of some TLS certificate verification error between the CDN server and the broker origin.
    * Set snowflake-broker.torproject.net as origin for Azure CDN configuration (#40427) · Issues · The Tor Project / Anti-censorship / Pluggable Transports / Snowflake · GitLab
    * The suspicion is that the Edgio CDN server is, for some reason, sending a incorrect SNI ("snowflake-broker.bamsoftware.com"; i.e., the old broker, which is how it was initially set up), even though all visible configuration options have been changed to say "snowflake-broker.torproject.net" instead.
    * Sample SNIs reaching the broker to see if snowflake-broker.bamsoftware.com is among them?
      * tshark -i eth0 -f 'dst port 443' -Y 'ssl.handshake.extension.type == "server_name"' -T fields -e tls.handshake.extensions_server_name
      * If so, then we could point the DNS record for snowflake-broker.bamsoftware.com at the new broker, and let the new broker generate certificates for that name, for as long as the Edgio CDN still holds out.
    * dcf will run the tshark command and report in #40427
  * covert-dtls in snowflake client and standalone proxy -- is there a plan for volunteer testing before merging?
    * Add covert-dtls to proxy and client (!448) · Merge requests · The Tor Project / Anti-censorship / Pluggable Transports / Snowflake · GitLab
    * the recent partial blocking in Russia has ended, so asking for user testing there won't reveal whether the changed fingerprint makes a difference
    * but it still could be valuable to have users run with the patch as a kind of integration and interoperability test
    * need to test both standalone proxy and client
    * meskio can try running the patch on a standalone proxy
      * (but there's no way to get per-country statistics)
    * covert-dtls should be tested in both modes: randomize and mimic
    * theodorsm will produce instructions on how to compile and test the client with the help of cohosh
    * and nina will translate to post it in ntc.party

== Actions ==

== Interesting links ==

  * Discovering and Measuring CDNs Prone to Domain Fronting | Proceedings of the ACM Web Conference 2024
    * Discovering and Measuring CDNs Prone to Domain Fronting (2024, open access)
  * Assessing and Exploiting Domain Name Misinformation | IEEE Conference Publication | IEEE Xplore
    * Assessing and Exploiting Domain Name Misinformation (2023, not open access)

== Reading group ==

  * We will discuss "Discovering and Measuring CDNs Prone to Domain Fronting" on January 16th
    * Discovering and Measuring CDNs Prone to Domain Fronting | Proceedings of the ACM Web Conference 2024
    * Questions to ask and goals to have:
      * What aspects of the paper are questionable?
      * Are there immediate actions we can take based on this work?
      * Are there long-term actions we can take based on this work?
      * Is there future work that we want to call out in hopes that others will pick it up?

== Updates ==
Name:
    This week:
      - What you worked on this week.
    Next week:
      - What you are planning to work on next week.
    Help with:
      - Something you need help with.

cecylia (cohosh): 2024-12-19
  Last week:
      - gitlab reviews and todos
      - more work on snowflake broker metrics improvements
      - handled meek builtin bridge update and azure edge shutdown
  This week:
      - afk for a few weeks
  
dcf: 2024-12-19
  Last week:
    - worked on making the Edgio CDN snowflake-broker.azureedge.net point to the new broker, but ran into problems with TLS certificate verification Set snowflake-broker.torproject.net as origin for Azure CDN configuration (#40427) · Issues · The Tor Project / Anti-censorship / Pluggable Transports / Snowflake · GitLab [anti-censorship-team] Re: Deprecation of Azure CDN from Edgio (azureedge.net), replaced by Azure Front Door (azurefd.net), affects snowflake-broker.azureedge.net - anti-censorship-team - lists.torproject.org
    - opened an issue for an error in the Snowflake Broker Survival Guide: the documented way to read the broker logs doesn't work Snowflake broker survival guide journalctl command for logs doesn't work (#40428) · Issues · The Tor Project / Anti-censorship / Pluggable Transports / Snowflake · GitLab
    - opened an issue to clean up the way multiple server names are handled on the snowflake broker Unify torproject.net and freehaven.net Nginx configs on Snowflake broker (#40430) · Issues · The Tor Project / Anti-censorship / Pluggable Transports / Snowflake · GitLab
    - archived snowflake-webextension 0.9.0 and 0.9.2 [anti-censorship-team] Re: Anyone have a copy of the v0.9.0 Snowflake WebExtension CRX file? - anti-censorship-team - lists.torproject.org Snowflake WebExtension 0.9.0 : The Tor Project : Free Download, Borrow, and Streaming : Internet Archive Snowflake WebExtension 0.9.2 : The Tor Project : Free Download, Borrow, and Streaming : Internet Archive
    - answered questions from a student interested in experimenting with media streams in snowflake
  Next week:
    - open issue to have snowflake-client log whenever KCPInErrors is nonzero Deploy snowflake-server for QueuePacketConn buffer reuse fix (#40260) (#40262) · Issues · The Tor Project / Anti-censorship / Pluggable Transports / Snowflake · GitLab
      - parent: Improve bug discovery process (#40267) · Issues · The Tor Project / Anti-censorship / Pluggable Transports / Snowflake · GitLab
    - open issue to disable /debug endpoint on snowflake broker
Help with:

meskio: 2024-12-19
    Last week:
        - grant writting world
        - catching up with things from and after SplinterCon
    Next week:
        - winter break

Shelikhoo: 2024-12-19
    Last Week:
         - [Pending] snowflake broker update/reinstall(cont.):

         - [Awaiting Review] Unreliable+unordered WebRTC data channel transport for Snowflake rev2 (cont.)( Draft: Unreliable+unordered WebRTC data channel transport for Snowflake rev2 (!315) · Merge requests · The Tor Project / Anti-censorship / Pluggable Transports / Snowflake · GitLab ) improvements
        - Merge request reviews
        - Analysis Iran vantage point result
    Next Week/TODO:
        - Merge request reviews
        - [Resume] Unreliable+unordered WebRTC data channel transport for Snowflake rev2 (cont.)( Draft: Unreliable+unordered WebRTC data channel transport for Snowflake rev2 (!315) · Merge requests · The Tor Project / Anti-censorship / Pluggable Transports / Snowflake · GitLab ) improvements
        - Analysis Iran vantage point result

onyinyang: 2024-12-19
  Last week(s):
    - Deployed test distributor
      - endpoints are available @ lox-test.torproject.org
    - Updated lox protocols to return duplicate responses for an already seen request
      
  Next week:
    - Break
    - Continue work on implementing issuer efficiency for check-blockage and trust-promotion protocols
    - Work on outstanding milestone issues:
      - key rotation automation
    
    Later:
    pending decision on abandoning lox wasm in favour of some kind of FFI? Consider dropping Lox's WASM (#43096) · Issues · The Tor Project / Applications / Tor Browser · GitLab):
      - add pref to handle timing for pubkey checks in Tor browser
      - add trusted invitation logic to tor browser integration:
      Lox module doesn't include trusted invitation redemption (#42974) · Issues · The Tor Project / Applications / Tor Browser · GitLab
    - improve metrics collection/think about how to show Lox is working/valuable
    - sketch out Lox blog post/usage notes for forum
    
  (long term things were discussed at the meeting!):
    - brainstorming grouping strategies for Lox buckets (of bridges) and gathering context on how types of bridges are distributed/use in practice
      Question: What makes a bridge usable for a given user, and how can we encode that to best ensure we're getting the most appropriate resources to people?
        1. Are there some obvious grouping strategies that we can already consider?
          e.g., by PT, by bandwidth (lower bandwidth bridges sacrificed to open-invitation buckets?), by locale (to be matched with a requesting user's geoip or something?)
        2. Does it make sense to group 3 bridges/bucket, so trusted users have access to 3 bridges (and untrusted users have access to 1)? More? Less?
    
theodorsm: 2024-12-19
    Last weeks:
      - WIP MR: Add covert-dtls to proxy and client
        - Add covert-dtls to proxy and client (!448) · Merge requests · The Tor Project / Anti-censorship / Pluggable Transports / Snowflake · GitLab
    Next weeks:
      - Fix merge conflicts in MR.
      - Write instructions on how to configure covert-dtls with snowflake client
      - Condensing thesis into paper (on hold)
    Help with:
      - Test stability of covert-dtls in snowflake MR
      
Facilitator Queue:
     meskio onyinyang shelikhoo
1. First available staff in the Facilitator Queue will be the facilitator for the meeting
2. After facilitating the meeting, the facilitator will be moved to the tail of the queue

--
meskio | https://meskio.net/
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
My contact info: https://meskio.net/crypto.txt
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
Nos vamos a Croatan.