The Tor Project issueshttps://gitlab.torproject.org/groups/tpo/-/issues2024-02-27T19:09:02Zhttps://gitlab.torproject.org/tpo/anti-censorship/pluggable-transports/webtunnel/-/issues/311 webtunnel bridge instead of two!2024-02-27T19:09:02Zcypherpunks1 webtunnel bridge instead of two!You should give at least two bridges for conflux to work.You should give at least two bridges for conflux to work.meskiomeskio@torproject.orgmeskiomeskio@torproject.orghttps://gitlab.torproject.org/tpo/anti-censorship/pluggable-transports/webtunnel/-/issues/9Fix unreliable bufio usage in HTTP Upgrade transport2024-02-27T19:08:49ZshelikhooFix unreliable bufio usage in HTTP Upgrade transportCurrently, there are a few TODO marked bufio usage that are unreliable as the buffer is not drained before original buffer is reused.Currently, there are a few TODO marked bufio usage that are unreliable as the buffer is not drained before original buffer is reused.shelikhooshelikhoohttps://gitlab.torproject.org/tpo/anti-censorship/pluggable-transports/webtunnel/-/issues/8Add Tor PT Log feedback to WebTunnel Client2024-02-27T19:08:35ZshelikhooAdd Tor PT Log feedback to WebTunnel Client[Add](https://gitlab.torproject.org/tpo/anti-censorship/pluggable-transports/webtunnel/-/merge_requests/1#note_2832380) Tor PT Log feedback will make it easier to debug issues in the pluggable transport.[Add](https://gitlab.torproject.org/tpo/anti-censorship/pluggable-transports/webtunnel/-/merge_requests/1#note_2832380) Tor PT Log feedback will make it easier to debug issues in the pluggable transport.shelikhooshelikhoohttps://gitlab.torproject.org/tpo/anti-censorship/connectivity-measurement/probeobserver/-/issues/2test meek-azure connectivity2024-02-27T19:08:20Zmeskiomeskio@torproject.orgtest meek-azure connectivityshelikhooshelikhoohttps://gitlab.torproject.org/tpo/applications/tor-browser/-/issues/41555HTTPS-only warning page (from Firefox) not suited for tor browser context2024-02-27T19:08:10ZhenryHTTPS-only warning page (from Firefox) not suited for tor browser contextCurrently, if you try and visit a HTTP website, like http.badssl.com, you get a warning page. But the text of the warning page comes from Firefox, and is not really suited for Tor Browser.
![screenshot of HTTPS-Only warning page](/uploa...Currently, if you try and visit a HTTP website, like http.badssl.com, you get a warning page. But the text of the warning page comes from Firefox, and is not really suited for Tor Browser.
![screenshot of HTTPS-Only warning page](/uploads/166669f773488064f40f4b3c3f33f151/Screenshot_from_2023-01-06_15-50-08.png)
Currently it says
> **HTTPS-Only Mode Alert**
>
> **Secure Site Not Available**
>
> You’ve enabled HTTPS-Only Mode for enhanced security, and a HTTPS version of http.badssl.com is not available.
The first part should probably be more like
> HTTPS-Only Mode is enabled in Tor Browser for enhanced security
since it is not a user choice to turn this on. Plus, the second part should probably be
> a HTTPS version of http.badssl.com was not found.
since the HTTPS version could be available on another circuit (or it may have been triggered by a timeout as in https://gitlab.torproject.org/tpo/applications/tor-browser/-/issues/41068).
In addition, the "Learn More…" link takes the user to https://support.mozilla.org/en-US/kb/https-only-prefs which includes a good explanation of HTTP vs HTTPS, but it has no Tor Browser or network context and gives instructions on how to turn on or off https-only mode.
Finally, we should probably let the user know that sometimes reloading the page with a new circuit can establish a HTTPS connection (e.g. if your current exit node is bad), and perhaps give them a button to do so.https://gitlab.torproject.org/tpo/applications/tor-browser/-/issues/41913Add validation and improve the formatting of manually added bridge lines2024-02-27T19:07:40ZdonutsAdd validation and improve the formatting of manually added bridge linesThe updated copy was added in https://gitlab.torproject.org/tpo/applications/tor-browser/-/issues/40552, but not the trickier parts relating to the fancy formatting and validation going on in the text box.
See the Figma file here: [Figm...The updated copy was added in https://gitlab.torproject.org/tpo/applications/tor-browser/-/issues/40552, but not the trickier parts relating to the fancy formatting and validation going on in the text box.
See the Figma file here: [Figma link](https://www.figma.com/file/RS584DcR4emXrw1F8g3l5x/Tor-Browser-12.5?node-id=102%3A13802&t=41hhHGHnJTkIHnmo-1)https://gitlab.torproject.org/tpo/applications/tor-browser/-/issues/42385Design dialog to share Lox invites2024-02-27T19:07:34ZJag TalonDesign dialog to share Lox invitescc @donuts @henry
**Design estimate:**
* Complexity: small (1 day)
* Copy existing modals from Firefox's design system.
* Uncertainty level: low (1.1)
* I believe there's no uncertainty here. All we need is something that's good ...cc @donuts @henry
**Design estimate:**
* Complexity: small (1 day)
* Copy existing modals from Firefox's design system.
* Uncertainty level: low (1.1)
* I believe there's no uncertainty here. All we need is something that's good enough for now.
* Total: 1-1.1 dayshttps://gitlab.torproject.org/tpo/applications/tor-browser/-/issues/42279Investigate UX impact of removing window titles2024-02-27T19:07:30ZJag TalonInvestigate UX impact of removing window titlesInvestigate UX issue of removing window titles in Tor for GNOME and KDE and possibly Windows.
Background: https://gitlab.torproject.org/tpo/applications/tor-browser/-/issues/41988
## Design estimate:
* Complexity: medium (3 days)
*...Investigate UX issue of removing window titles in Tor for GNOME and KDE and possibly Windows.
Background: https://gitlab.torproject.org/tpo/applications/tor-browser/-/issues/41988
## Design estimate:
* Complexity: medium (3 days)
* Create an option in `about:preferences#privacy` that toggles the titles from being shown on the window.
* Decide if the option should be enabled by default. [Preliminary findings show that it will have minimal impact to usability](https://gitlab.torproject.org/tpo/applications/tor-browser/-/issues/41988#note_2971226), but perhaps more research and discussion is warranted.
* Create copy for help pages.
* Uncertainty level: moderate (1.5)
* This is a small, but far reaching change especially when releasing to multiple platforms. I imagine there's some uncertainty in this task.
* Total: 3-4.5 dayshttps://gitlab.torproject.org/tpo/anti-censorship/pluggable-transports/webtunnel/-/issues/12Add Early Data support to WebTunnel2024-02-27T19:06:29ZshelikhooAdd Early Data support to WebTunnelCurrently, the early data support(send first chunk of client data together with HTTP GET Request) is not implemented in WebTunnel.
This can slightly increase performance at the cost of increased code complexity.Currently, the early data support(send first chunk of client data together with HTTP GET Request) is not implemented in WebTunnel.
This can slightly increase performance at the cost of increased code complexity.https://gitlab.torproject.org/tpo/anti-censorship/pluggable-transports/snowflake/-/issues/40100Performance modelling of Snowflake2024-02-27T18:25:37ZCecylia BocovichPerformance modelling of SnowflakeAs a followup to previous discussions on Snowflake performance, the purpose of this issue is to track work on modelling and measuring the impact of Snowflake improvements on network performance. This work will be primarily done with the ...As a followup to previous discussions on Snowflake performance, the purpose of this issue is to track work on modelling and measuring the impact of Snowflake improvements on network performance. This work will be primarily done with the [Shadow](https://shadow.github.io/) network simulation tool. This tool can measure the impact that changes to Snowflake can have on the throughput of traffic for clients, as well as resource consumption of the broker and bridge.
Snowflake shadow simulation scripts can be found at https://gitlab.torproject.org/cohosh/snowflake-simulation
There are a few tasks to complete before we are ready to conduct performance experiments:
- [ ] Help Shadow developers debug outstanding issues with go network code
- [ ] Improve the Snowflake network model to accurately reflect the network conditions faced by both snowflake clients and proxy volunteers
- [ ] Improve the output format of test results so they can be easily interpreted
Once these pieces are in place, I plan to conduct the following experiments:
- [ ] Tune turbotunnel parameters by experimenting with the space of probable configurations (#40026)
- [ ] Splitting traffic across multiple snowflake proxies (#25723)
- [ ] The impact of geographic location of proxies on client performance (#31661)
Shadow simulations do have some limitations. We have also deployed onionperf instances to measure real-world Snowflake performance. If evidence for performance improvements is compelling enough, we can measure the impact of the change in deployment from these locations.Cecylia BocovichCecylia Bocovichhttps://gitlab.torproject.org/tpo/anti-censorship/pluggable-transports/snowflake/-/issues/40335No release for version 2.9.02024-02-27T16:41:36ZPonchoNo release for version 2.9.0Hi there
Some time ago, you've tagged version 2.9.0
It's available under https://gitlab.torproject.org/tpo/anti-censorship/pluggable-transports/snowflake/-/tags
But there is no corresponding release under https://gitlab.torproject.org/...Hi there
Some time ago, you've tagged version 2.9.0
It's available under https://gitlab.torproject.org/tpo/anti-censorship/pluggable-transports/snowflake/-/tags
But there is no corresponding release under https://gitlab.torproject.org/tpo/anti-censorship/pluggable-transports/snowflake/-/releases and the release job was skipped https://gitlab.torproject.org/tpo/anti-censorship/pluggable-transports/snowflake/-/jobs/471273
Not sure whether this is all on purpose or if something went wrong. Therefore, opening this issue.Cecylia BocovichCecylia Bocovichhttps://gitlab.torproject.org/tpo/applications/tor-browser/-/issues/4228913.5 FP list [part 1: the easy stuff]2024-02-27T15:03:37ZThorin13.5 FP list [part 1: the easy stuff]details to follow
cc: @pierov @richard @cypherpunks1details to follow
cc: @pierov @richard @cypherpunks1https://gitlab.torproject.org/tpo/web/snowflake/-/issues/9unify volunteer instructions from support entry onto snowflake website2024-02-27T14:24:07ZRoger Dingledineunify volunteer instructions from support entry onto snowflake websiteWe have this support entry: <br>
https://support.torproject.org/censorship/how-to-help-running-snowflake/
which tells people to install the Firefox or Chrome extension, or load the embed in a page. It doesn't mention the Edge extension ...We have this support entry: <br>
https://support.torproject.org/censorship/how-to-help-running-snowflake/
which tells people to install the Firefox or Chrome extension, or load the embed in a page. It doesn't mention the Edge extension or the standalone proxy.
Rather than trying to keep both sets of instructions in sync, I think we should put the instructions on the snowflake.torproject.org page, and point to them from a much slimmer support entry.
To achieve this goal, there are currently two things that the support entry says that the snowflake.torproject.org website does not:
* You need to enable WebRTC in your browser, to usefully run the extension or to usefully load the embed. (If we could reliably have the extension or the embed page report that your WebRTC is missing and you need to fix that, then we could get away with not saying it on the webpage. So, feel free to do that instead if it is easier, but I am suspecting it is not easier. :)
* "Due to censorship of VPN servers in some countries, we kindly ask you to not run a snowflake proxy while connected to a VPN" as advised by @cohosh at https://forum.torproject.org/t/running-a-snowflake-proxy-behind-a-vpn-consequences-for-tor-users/2047/4 and then recorded by gus at https://gitlab.torproject.org/tpo/web/support/-/issues/296. Feel free also to change your mind about the "not on a VPN please" advice.
Once we have these two items either make their way onto the snowflake.torproject.org proxy instructions or have you tell us you don't intend to, then we should be all ready to remove the (redundant, already not as correct) text from the support entry.
Thanks!https://gitlab.torproject.org/tpo/anti-censorship/pluggable-transports/snowflake/-/issues/40327snowflake-01: Rotate snowflake-server.log2024-02-27T11:28:05ZLinus Nordberglinus@torproject.orgsnowflake-01: Rotate snowflake-server.log`/var/log/snowflake-server/snowflake-server.log` size is at 1.3G and should be rotated and compressed.
Should the process(es) writing to the file be informed somehow? Like what is done by logrotate(8) prerotate and postrotate.`/var/log/snowflake-server/snowflake-server.log` size is at 1.3G and should be rotated and compressed.
Should the process(es) writing to the file be informed somehow? Like what is done by logrotate(8) prerotate and postrotate.Linus Nordberglinus@torproject.orgLinus Nordberglinus@torproject.orghttps://gitlab.torproject.org/tpo/community/support/-/issues/40145Update support documentation for Tor Browser 13.5 release2024-02-27T03:19:59Zebanamebanam@torproject.orgUpdate support documentation for Tor Browser 13.5 releaseUpdate articles on RT and text modules on cdr.link with the Tor Browser 13.5 release.
related: https://gitlab.torproject.org/tpo/web/manual/-/issues/155
/cc @nina @gusUpdate articles on RT and text modules on cdr.link with the Tor Browser 13.5 release.
related: https://gitlab.torproject.org/tpo/web/manual/-/issues/155
/cc @nina @gusebanamebanam@torproject.orgebanamebanam@torproject.orghttps://gitlab.torproject.org/tpo/core/arti/-/issues/738Write a proxy-plus-socketpair wrapper for DataStream2024-02-24T18:32:24ZNick MathewsonWrite a proxy-plus-socketpair wrapper for DataStreamIn order to provide FFI for the most general purposes, we'll need to provide real sockets. That implies a socketpair, one side of which we give to the application, and the other side of which is backed by a `DataStream`.
This is necessa...In order to provide FFI for the most general purposes, we'll need to provide real sockets. That implies a socketpair, one side of which we give to the application, and the other side of which is backed by a `DataStream`.
This is necessary for #737
See [`ExportedApiSketch.md`](https://gitlab.torproject.org/tpo/core/arti/-/blob/main/doc/dev/ExportedApiSketch.md) for early thoughts.Arti: RPC Supporthttps://gitlab.torproject.org/tpo/core/arti/-/issues/823RPC: Make sure methods can't accidentally have wrong types of names2024-02-24T18:31:04ZNick MathewsonRPC: Make sure methods can't accidentally have wrong types of namesWe want all of our method names to be `arti:snake_case`, but we need some way to enforce that.
See https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/1092#note_2894524We want all of our method names to be `arti:snake_case`, but we need some way to enforce that.
See https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/1092#note_2894524Arti: RPC SupportNick MathewsonNick Mathewsonhttps://gitlab.torproject.org/tpo/core/arti/-/issues/868rpc: Settle on strong/weak ID semantics and their implications for capability...2024-02-24T18:30:20ZNick Mathewsonrpc: Settle on strong/weak ID semantics and their implications for capability designThis stems from a discussion in !1200.
We can't define a sensible "drop" method for a weak ID, because the weak IDs for an object are automatically deduplicated. Thus, if you remove a weak ID for a given circuit, you're actually removi...This stems from a discussion in !1200.
We can't define a sensible "drop" method for a weak ID, because the weak IDs for an object are automatically deduplicated. Thus, if you remove a weak ID for a given circuit, you're actually removing _every_ weak ID for that circuit.
@diziet has additional thoughts about the situation at https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/1200#note_2905558 .
Here are some alternatives; there may be more.
* **There are no weak IDs.** (This would make some programs hard to write without making sure that the API user manually drops everything, and would make some APIs hard to provide. Probably not a good idea)
* **Weak IDs do not get deduplicated.** (This would probably lead to OOM conditions if an API user does something that gets it a zillion weak IDs for the same object.)
* **You can't drop weak IDs.** (This is the status quo, but it means that any capability represented by a weak ID is undroppable, unless you can trust yourself to "forget" the ID.)
* **Dropping a weak ID drops _every_ weak ID for the same object.** (This leads to nonlocal behavior issues, since IDs can get invalidated by parts of the API user that don't even have the ID.)
* **As above, but this is a different operation from the regular "drop".** (This mitigates the nonlocality problem a little by making it hard to do by accident, but it does make weak-ID-dropping a risky proposition.)
* **Weak IDs are not capabilities.** (This is potentially hard to design. If we assume "every ID is a capability", then writing a secure API is as simple as "don't give out an ID to something the user shouldn't have access to" and "Don't access anything without an ID." But if we say only strong IDs are a capability, it's not clear what weak IDs can even allow you to do; it seems like we might need additional access control in the objects that do have the strong IDs.)
* **Weak IDs exist within named tables.** (@diziet suggested this in the above-linked comment.)
* **Weak IDs are namespaced relative to strong IDs.** (This may be the same as @diziet's design above. It would imply that every weak ID is somehow seen as a facet of something that you have a strong ID for, such that dropping the strong ID will expire all the weak IDs.)Arti: RPC SupportNick MathewsonNick Mathewsonhttps://gitlab.torproject.org/tpo/core/arti/-/issues/1288RPC: Safe connection method on windows2024-02-24T18:29:44ZNick MathewsonRPC: Safe connection method on windowsOn Unix, we can use AF_UNIX sockets to make sure that we've got a request from an authorized user. But on Windows, we don't have the equivalent. We shoul build some other authentication mechanism (SSL? Disk Cookie? Windows named pipes)...On Unix, we can use AF_UNIX sockets to make sure that we've got a request from an authorized user. But on Windows, we don't have the equivalent. We shoul build some other authentication mechanism (SSL? Disk Cookie? Windows named pipes) before we ship RPC.https://gitlab.torproject.org/tpo/anti-censorship/pluggable-transports/webtunnel/-/issues/30Best practices for update webtunnel in production2024-02-23T14:58:41ZJacobo NájeraBest practices for update webtunnel in productionHi,
What do you recommend to update Webtunnel when you use docker-compose setup?
From my side, it doesn't work
- docker compose pull
- docker compose up --force-recreate --build -d
I'm using "force-recreate" because the latest webt...Hi,
What do you recommend to update Webtunnel when you use docker-compose setup?
From my side, it doesn't work
- docker compose pull
- docker compose up --force-recreate --build -d
I'm using "force-recreate" because the latest webtunnel image is unchanged. But there is a new version of Tor. But it maintains Tor 0.4.7.13 version.
I also tried with it, but it doesn't work to update Tor version:
- docker compose down --volumes
- docker compose pull
- docker compose build
- docker compose up -d
Thanks, Jacoboshelikhooshelikhoo