Мосты WebTunnel в Tor Browser

Вроде среагировали наконец разработчики. Надеюсь решат проблемму. Не хотелось бы терять тор

Так лет 7 назад опсосы уже умели блочить тор по паттерну SNI входной ноды ([a-z0-9]*\.com), а по HTTPS происходит всего лишь загрузка информации о мосте (которая может кэшироватся и при следующем запуске webtunnel вовсе не используется).

Клиент может указать чужой servername только в связке с cert (задуман для раздачи мостов без использования УЦ, строчку генерит владелец моста). Для пользователя, которому уже заблокировали мост, эти костыли неюзабельны.

Там же где РКН

Увы, но тор начали щемить по всем направлениям одним из первых. Лучше найти другие решения, я считаю.

Статистика до сих пор кстати показывает 40 000 пользователей obsf4 из РФ стабильно.

И я оттуда брал. Вы ведь тестировали возможность использование этого моста для выхода в интернет? Или же операторы мостов блокировали ип датацентров и варпов, с которых я тестировал.

С чего вы это взяли?
Как и с obfs4, WebTunnel (HTTPS) используется не только для бутстрапа, а для передачи всего трафика между клиентом и входной нодой.

Вообще когда я в последний раз изучал документацию на ТСПУ EcoDPI, там было сказано, что оно умеет анализировать сертификат сервера и применять блокировки основываясь на нем, то есть такая штука мало поможет - но могу предположить, что РКН сейчас такое не делает для экономии ресурсов, либо не все его ТСПУ такое умеют.

А вообще, жаль, что в torrc нельзя указать отдельно значения Host и SNI, чтобы они оба попали к юзеру в bridge line при запросе бриджей - тогда можно было бы использовать fronting там где он разрешен.

Посмотрел трафик в снифере и сетевую активность процессов. У меня весь трафик идёт по ванильному протоколу.

Host задаётся через url, я вообще себе пропатчил клиент, чтобы не заниматся cert pinning и использовать insecure повсеместно.

Вы что-то делаете не так. Я сделал ровно то же самое, и вижу что весь трафик идет на 443 порт бриджа по HTTPS.

То что указано в URL, используется сразу и как Host, и как SNI. Речь о том, что неплохо бы иметь возможность задавать их отдельно (разные значения).

Для SNI есть servername:

	if urlStr, ok := args.Get("url"); ok {
		…

		config.TLSServerName = url.Hostname()
	}

	if tlsServerName, ok := args.Get("servername"); ok {
		config.TLSServerName = tlsServerName
	}

Я знаю, что в bridge line может быть такое аргумент. Вопрос, как и где его указать в torrc, чтобы он прилетел в bridge line клиентам, которые запрашивают новые бриджи.

Там же, где указываются url:

Bridge webtunnel […]:443 … url=https://… ver=0.0.2 servername=…

интересная теория, попробую.

в tls 1.3? там же ответ сервера шифрованый

Кстати да, точно. Они это смогут сделать только с TLS1.2, а с TLS1.3 в пролете.
Впрочем, рано или поздно РКН додумается и до active probing’а…

в общем, не заработало.
bridge line генерится правильный, но подключение от клиента не фурычит.
у CDN фронтинг разрешен и без проблем работает через cURL и даже XRay с VLESS+Websocket-транспортом, но Tor Browser подключиться не может. Судя по всему, при добавлении servername= он его зачем-то пихает и в хедер “Host” тоже: main/client/transport.go · main · The Tor Project / Anti-censorship / Pluggable Transports / WebTunnel · GitLab

Что напрочь гробит всю идею использования этого “servername” для фронтинга. А жаль, это могло бы быть хорошей штукой для более простого обхода блокировок по SNI и IP.

Попробуй пропатченную мною версию:
webtunnel-client-bin.7z (2.0 MB)
webtunnel-client-src.7z (28.4 KB)

Отличия от оригинала и lyrebird:

  • используется глобальный флаг -client с возможными параметрами как тут (+ chrome_133)
  • Включение allowInsecure без пиннинга сертификата при указании servername
  • Отправка Host из url при HttpUpgrade, servername используется только для SNI.

У меня работает.

Я в той локации, где проблема блокировок не стоит, мне важнее чтобы юзеры, которым выпали мои бриджи, могли бы подключаться без проблем. Будет надеяться что в апстриме это когда-нибудь поправят.

Сверим часы

Небольшой список живых, но блокируемых
webtunnel [2001:db8:9c9c:7cfb:92c0:f2a9:63be:7c7b]:443 25E15F4A7E69AAF062B8353C4C37DD35D5417837 url=https://pod04.oneclickhost.eu/kexPCxCaw8IOKORxllJEmTf9
webtunnel [2001:db8:d356:23c3:ee0d:5a35:271a:30e]:443 40254C3F76F126C8D30C5FCEEAF9CE88C335FE0C url=https://1-cvt.sports-streams.org/4amFA6F3SRQ1HU47U5jSrLPU
webtunnel [2001:db8:e5d9:591:6336:3b49:2de2:2035]:443 98CD2E1BE64F08D24668D7076E68C82CF7F37C50 url=https://rayneau.fr/algVwCMkMS2FDKE6VHHcLz7T
webtunnel [2001:db8:63b4:6bd7:a357:7858:898e:718c]:443 059AEB126918A33B8246E8136D565FF57753D5CF url=https://alwaysnewbie.eu.org/homesweethome
webtunnel [2001:db8:df97:f51:d643:6c67:848a:60a7]:443 2C9FF2DE2E07A722BCF233E607947241887FF295 url=https://pod03.oneclickhost.eu/ZfIEm13F3FSDuV227jCPK0rc
webtunnel [2001:db8:102a:2660:d56a:f8c4:2970:1434]:443 A633EAF9A7DC0E715183359C38E4DAE4515D1EF7 url=https://tunnel-1.linuxenby.is/srgV09L4fn4kdkoE0vP92nvK
webtunnel [2001:db8:3099:ba43:4140:4d47:439f:9e46]:443 6108EC343554D32AA249A923B063DF53E8F542A7 url=https://gotland.digital/O9uoLJE6S1vADGAgA2QC9WOx
webtunnel [2001:db8:6d91:1d3e:230b:9d98:8e29:eefc]:443 C762244C9E351B4A63EF1EF4585A38535C3023D8 url=https://anastasia.anondns.net/atkzL9N85rspiiRudpeCh9gq
webtunnel [2001:db8:fece:dfb4:e415:b140:621:caf4]:443 ACBB486B9D60979A05E623D11CC8181A16A81E51 url=https://us.g3wip.uk/7gBqm1jbTOpU0jLV91IZHN0f
webtunnel [2001:db8:dfeb:8189:b107:7be4:65a0:3f64]:443 D35BF743719A3110FD895C8356056337D7D93FD8 url=https://pink.coyp.us/ScayDKFxVp1WUV47Sf1Mtm57
webtunnel [2001:db8:8e11:37cf:5167:5fce:4650:c2f8]:443 5AE50E81167318FE0A152D4F050C839DB42AB9B8 url=https://signaling.privacy-vbox.de/s6CjTuyWZOWe9Fbhl7ThQ5Lb
webtunnel [2001:db8:1fc0:eebe:5e6e:d6ee:f53e:6889]:443 4A3859C089DF40A4FFADC10A79DFEBE4F8272535 url=https://verry.org/K2A2utQIMou4Ia2WjVseyDjV
webtunnel [2001:db8:afc8:4fe0:c021:5377:36bf:e9b7]:443 3BDD7036FAC9CC81ADBA39E88637D5EF87350F1C url=https://speedtest.qs.ee/dI6HDfnDLSUiFV0MaLMEtcmv
webtunnel [2001:db8:6c93:f13b:2c4a:c23a:6e2:bdff]:443 E4535812FC6456C0B5C8CC6C2CF9337D87A98B3D url=https://1-fra.sports-streams.org/9DAwZ4fqTh6vJWSj0j376God
webtunnel [2001:db8:a634:bf27:a89e:4:2de:cb6]:443 8943BF53C9561C75A7302ED59575EF71E2B26562 url=https://fast.heelsn.eu/MsCfO3oc0rCsRkzDbZw8G8bT
webtunnel [2001:db8:77cb:5ce6:9995:7466:7ffa:b3f8]:443 770EA6412C8D3997ABFFF7173A3E53F1D3660167 url=https://shallotfarm.org/jcHgyp7m90iQr9QaVSprq1wP
webtunnel [2001:db8:603c:2434:873c:4d58:9fd0:91e0]:443 56626E4B996EB1C9F4C0B573888E8EE3C4E28472 url=https://kriptohomyaki.org/4USXwPrEoemgJOXPmgjxPOAkQa1UG7To
webtunnel [2001:db8:28ff:ae4f:c:9ef6:1722:ac46]:443 1098B4E153AB1666B4F63F48325A103FB005940F url=https://pod04.oneclickhost.eu/FeTyRXzPPAzwIjuxzWxwl09N
webtunnel [2001:db8:a01a:cd94:dcfd:cbbc:8a57:9f04]:443 8ADF1761FA735FDD763781BB94A16EAB64A1CF6C url=https://pod01.oneclickhost.eu/mIIcQOVPdecV1gF8DjkVjAlx
webtunnel [2001:db8:a8b5:9d82:9ae6:354f:671:e5da]:443 E3AE862BBB49EA5FACF4FDF09C8F1FE0D6F3CE4B url=https://d.img-cdn.net/mExFXMqeh1PcoDRRyz/
webtunnel [2001:db8:345b:f823:7fe0:dec9:ee74:7525]:443 98A44ED60781F69A41B3CB4DCBA5ECE70D0AF247 url=https://b.img-cdn.net/3DV2SZvE8CrQ/
webtunnel [2001:db8:4c9a:ffe8:70f8:d5af:a8f1:cf56]:443 DA1ECF055635C1A6ED7F5B5F36296A5E3015CE57 url=https://1axfa6xb.xoomlia.com/6qtxxkjw/
webtunnel [2001:db8:259c:faa6:24a9:cce0:c60f:4642]:443 23958FC105E58061AFD2DECC61D363F28AB36490 url=https://pod02.oneclickhost.eu/lzcHh4sbo8bOTwkc4IwkSxNS
webtunnel [2001:db8:5985:711a:a60e:61a0:1260:b42e]:443 58DA67BD879E9239FCD4A590E25118BB2118CB3C url=https://fdmf.ch/QCjqMFJumKjWgB7BFaOc04dN
webtunnel [2001:db8:4214:3f1:32a8:7914:4181:1321]:443 1CADB5C035EAA3D9D194413BE7E43884D1BFF780 url=https://tor.qinsbro.com/KPS0undKs3dFa7KFpWrunOuT
webtunnel [2001:db8:a436:6460:fa7b:318:4e8e:9de3]:443 F76C85011FD8C113AA00960BD9FC7F5B66F726A2 url=https://disobey.net/vM8i19mU4gvHOzRm33DaBNuM
webtunnel [2001:db8:e569:2f63:fc9:6d12:1572:bedd]:443 291666C8F9E8736771E046DAC04FA4DA35F89467 url=https://deimos.fedfe1.xyz/k2deAz76zzWAwtSOusXE
webtunnel [2001:db8:a4e4:733d:a3a3:bf1f:99b6:8d95]:443 DBF2F5088B7DBB44562A0D7495B83DDCE5BCEB10 url=https://nits.readthefinemanual.net/LTi1BwOcMQmZ2kCGl1CK9plm
webtunnel [2001:db8:aa16:aa07:b3:b4f0:a667:3f08]:443 775A648318DA1E1240EF0DEC038154B60696DE5B url=https://pod01.oneclickhost.eu/jLoIafiPpOBkJRJBN5mm6GPe
webtunnel [2001:db8:8cb3:dda9:1342:2bd:42e2:dc87]:443 1E73114F347162059AC3B4068CDE020CB9002EB6 url=https://pod02.oneclickhost.eu/IJyZVrefG6KJphpwEGMbU1eK
webtunnel [2001:db8:4153:2734:a5fd:324a:77fe:7d3b]:443 91DE3D9DBAFB8A583CEE02448BBA8CADDE54735E url=https://5-ams.sports-streams.org/jdyLcFWUBl1jEjIkL2Bo2LCT
webtunnel [2001:db8:8334:d3bf:4a0b:86b1:e2b6:a59c]:443 98455BF447EE853891921A5179B23C748F5DFCC7 url=https://e.img-cdn.net/BjUJxiqz5vi8E6WvDE/
webtunnel [2001:db8:c525:22a6:6b6a:e916:9ef7:8152]:443 8A1EE5824071CA39E7D76BD579FB2AEF2B52E524 url=https://c.img-cdn.net/yE4s7KehTFyj/
webtunnel [2001:db8:cb0d:478a:6b61:1514:9757:53c1]:443 1FE8C81ED04C5F1707ED0761A32D3B1E27F64B6C url=https://blog.gus.computer/U7a5bfqOUsCsH4i4yue1744l
webtunnel [2001:db8:4b0:feea:81d8:72b9:95c1:cd62]:443 A6A5AF5E8410EB76647925F66AB2B5810A2C3791 url=https://wolkewolkewolke.zip/xrCyxOQH6HOe952fVtzKMGDN
webtunnel [2001:db8:bd88:ba8c:31d5:5bfc:e398:e22a]:443 5C416460CA3D1C72F89EAA654B668CE58943F1E0 url=https://www.readthefinemanual.net/LTi1BwOcMQmZ2kCGl1CK9plm
webtunnel [2001:db8:9682:54ae:e207:1128:e065:2e9b]:443 C05C827E5A85ACAE4CD73A8A5C0FA1E8EDFA4FAD url=https://arinalee.2cat.nl/apache
webtunnel [2001:db8:f7d3:5976:5f99:663b:3ba1:4e3a]:443 05D0531304F2DB161921D6D03CE38DB1CA2332D6 url=https://pod03.oneclickhost.eu/d0NbsV36v0Q4MDdDTs3ZhCCJ
webtunnel [2001:db8:976:3d4a:a211:b114:a8e2:5b2d]:443 4F4571C3E0FD8D23C0C0AF76D63F7A5B08199A86 url=https://talnett.com/RLzWM1yDLRjlDiNxzdBQr8DR
webtunnel [2001:db8:77dc:4180:2d73:7fda:59f4:5284]:443 6F6C8E0069880AC253704507119464CE4BD1BA65 url=https://dev-test.catcat.pictures/Fj7VnJi1mjigUKBb2rJ1TeWJ
webtunnel [2001:db8:4fe2:49d2:2b7d:8576:5ede:e177]:443 C9AB6F207432161589F1B994F44FFE28FBF211E2 url=https://www.jarlaxle.de/wzZhcKoNURYF5JUssKhC25Cg
webtunnel [2001:db8:cfe7:edf6:3a09:e2a3:668d:4e73]:443 F86E5FA2FD7FD0B358919C5396C22705F7911AE0 url=https://fastdeliverynetwork.website/Hai1aeJaipooliz
webtunnel [2001:db8:6281:baa0:afc0:9579:b303:59a7]:443 377CF6FCBFD2E57D0775EA6F2E8D3EF0D8CDD02F url=https://cryptomeanscryptography.club/TfDS3X50Rf3dR5x3Q3vLS25o
webtunnel [2001:db8:8817:e47a:aa18:70a3:5cc5:fd21]:443 47D47DCB7336D552FC4EEE20AF8946F11AA2F3EB url=https://send.mni.li/dw00bl8OqcKxIOzgKyF5LyGJ
webtunnel [2001:db8:8a96:b122:e199:d511:c55e:6bcb]:443 F5038BA595B75BD87A295CA6060214CCD4280F2F url=https://bridges.lovethosetrains.com/iwCXEhbdY7ErwP8J4MRavyAj