O popular navegador de internet Brave está próximo de receber o tão esperado recurso “tor over bridge”.
Resumindo, essa tecnologia te permite conectar na rede tor por meios alternativos.
Isso te dá 2 vantagens: contorno de bloqueio de acesso e o mais importante: mais privacidade.
Os links de acesso público ao tor são conhecidos por todos, incluindo governos e quem quiser te rastrar.
Porém, as bridges (pontes) servem para conectar no tor sem o uso desses links públicos, assim ninguém fica sabendo quando você acessa o tor.
O recurso é pedido desde 2018, mais de 3 anos atrás:
opened 12:24AM - 15 Sep 18 UTC
closed 01:43PM - 03 Aug 22 UTC
feature/tor
QA Pass-Win64
QA Pass-macOS
QA Pass-Linux
priority/P3
QA/Yes
release-notes/include
OS/Desktop
QA/Test-All-Platforms
We should eventually make it easy to configure advanced user-facing Tor features… like bridges and pluggable transports.
Acompanhe o desenvolvimento desse recurso aqui:
brave:master
← brave:tor_bridge
opened 11:52AM - 11 May 22 UTC
Resolves https://github.com/brave/brave-browser/issues/1138
## Sec review:
h… ttps://github.com/brave/security/issues/858
## Desc
1. Added a new component updater that handles the pluggable transport executables
2. Added support for configuring pluggable transport via Tor bridges
## Submitter Checklist:
- [x] I confirm that no security/privacy review [is needed](https://github.com/brave/brave-browser/wiki/Security-reviews), or that I have [requested](https://github.com/brave/security/issues/new/choose) one
- [x] There is a [ticket](https://github.com/brave/brave-browser/issues) for my issue
- [x] Used Github [auto-closing keywords](https://docs.github.com/en/github/managing-your-work-on-github/linking-a-pull-request-to-an-issue) in the PR description above
- [ ] Wrote a good [PR/commit description](https://google.github.io/eng-practices/review/developer/cl-descriptions.html)
- [x] Squashed any review feedback or "fixup" commits before merge, so that history is a record of what happened in the repo, not your PR
- [x] Added appropriate labels (`QA/Yes` or `QA/No`; `release-notes/include` or `release-notes/exclude`; `OS/...`) to the associated issue
- [x] Checked the PR locally: `npm run test -- brave_browser_tests`, `npm run test -- brave_unit_tests`, `npm run lint`, `npm run gn_check`, `npm run tslint`
- [x] Ran `git rebase master` (if needed)
## Reviewer Checklist:
- [ ] A security review [is not needed](https://github.com/brave/brave-browser/wiki/Security-reviews), or a link to one is included in the PR description
- [ ] New files have MPL-2.0 license header
- [ ] Adequate test coverage exists to prevent regressions
- [ ] Major classes, functions and non-trivial code blocks are well-commented
- [ ] Changes in component dependencies are properly reflected in `gn`
- [ ] Code follows the [style guide](https://chromium.googlesource.com/chromium/src/+/HEAD/styleguide/c++/c++.md)
- [ ] Test plan is specified in PR before merging
## After-merge Checklist:
- [ ] The associated issue milestone is set to the smallest version that the
changes has landed on
- [ ] All relevant documentation has been updated, for instance:
- [ ] https://github.com/brave/brave-browser/wiki/Deviations-from-Chromium-(features-we-disable-or-remove)
- [ ] https://github.com/brave/brave-browser/wiki/Proxy-redirected-URLs
- [ ] https://github.com/brave/brave-browser/wiki/Fingerprinting-Protections
- [ ] https://github.com/brave/brave-browser/wiki/Brave%E2%80%99s-Use-of-Referral-Codes
- [ ] https://github.com/brave/brave-browser/wiki/Custom-Headers
- [ ] https://github.com/brave/brave-browser/wiki/Web-Compatibility-Exceptions-in-Brave
- [ ] https://github.com/brave/brave-browser/wiki/QA-Guide
- [ ] https://github.com/brave/brave-browser/wiki/P3A
## Test Plan:
[tor_tp.txt](https://github.com/brave/brave-core/files/9250586/tor_tp.txt)
Settings
1. Open Privacy & Security
2. 'Tor Windows' should exist:
- Private window with Tor
- Automatically redirect .onion sites
- Use Bridges
3. Disabling 'Private window with Tor' should gray other settings
4. Enabling Use Bridges should expand additional settings
- Select a built-in bridge
- Request a bridge from torproject.org
- Provide a bridge
NOTE: Changing the bridge settings should show 'Apply changes' button.
5. Built-in bridges:
- snowflake
- obfs4
- meek-azure
6. Request a bridge:
- Click on 'Request a New Bridge...' button.
Request dialog with captcha should be displayed.
- 'Renew' button should renew the captcha.
- Providing wrong captcha should renew it.
- Captcha is case insensitive.
- Providing right captcha should close dialog and insert bridges credentials in the text area
7. Provide a bridge
- If text area is empty the 'Apply changes' button shouldn't appear
Checking bridges:
NOTE: It's useful to open 'brave://tor-internals' and see Logs for activities.
Enable 'Private window with Tor' and launch Tor Window (Alt + Shift + N)
Check brave://components, 'Brave Tor Client Updater' should appear.
1. Go to settings and enable bridges
Refresh & Check brave://components, 'Brave Pluggable Transports (OS)' should appear
Check OS Task manager, new process should start
'tor-snowflake-brave' for snowflake proxies
'tor-obfs4-brave' for obfs and meek-azure proxies
2. Disabling bridges should stop the corresponding process and delete component from Profile.
3. Changing the bridge settings may change your IP address for sites.
Open f.e. https://yandex.com/internet and see on IP and region fields.
After changing the bridge settings the IP may change in a few seconds. (Need to refresh page to see it)
4. Provide bad bridge (f.e. obfs4 99.124.226.90:9998 8BFDDB7D7D2D4BDD4169170C818B175C6B60F799 cert=fmp+hf7s1QH6Crg+FW39P5KTxy57NCfXs+t1vBrNuYrHGebGtbRrdkKfk+pcgZhBdbrVcw iat-mode=0)
Open Tor window.
Tor connection will get stuck and you will see 'Tor connection failed' in 30 seconds.
Check the 'contact support' link opens page in regular browser (not in the Tor as it was in previous versions)
TP component ids:
windows: dnkcahhmfcanmkjhnjejoomdihffoefm
mac os : einfndjnccmoohcngmlldpmellegjjnk
linux : apfggiafobakjahnkchiecbomjgigkkn
Tor component ids:
windows: cpoalefficncklhjfpglfiplenlpccdb
mac os : cldoidikboihgcjfkhdeidbpclkineef
linux : biahpgbdmdkfgndcmfiipgcebobojjkp
Esse github está em constante desenvolvimento.
1 curtida