Usare il meek reflector (domain fronting) #10

Open
opened 2017-01-18 12:12:44 +01:00 by torn · 0 comments
Owner

Signal usa la tecnica del domain fronting per funzionare nei paesi dove i server vengono bloccati:

https://whispersystems.org/blog/doodles-stickers-censorship/

la tecnica è questa

https://trac.torproject.org/projects/tor/wiki/doc/meek

e probabilmente su appspot usano il codice di Tor:

https://gitweb.torproject.org/pluggable-transports/meek.git/

in particolare la webapp:

https://gitweb.torproject.org/pluggable-transports/meek.git/tree/appengine.

Il tutto non sembra difficile da configurare. Ci sono però diversi problemi:

  • Oltre un certo traffico appspot si paga (poco, credo, https://cloud.google.com/appengine/docs/quotas).
  • Con l'idea di fare una rete federata, ogni server si farà il suo reflector? In realtà non è per forza necessario.
  • Se non ho capito male il meccanismo c'è un momento in cui il traffico è in chiaro, mentre passa su appspot. È corretto? Sono state fatte le dovute considerazioni sul male minore?

Al momento la tecnica è disabilitata in SignalServiceNetworkAccess.java:

// *** XXX FIXME TODO ***
// Here we disable the domain fronting technique, as we stil don't have a reflector.
/*
    for (String censoredRegion : this.censoredCountries) {
      if (localNumber.startsWith(censoredRegion)) {
        return this.censorshipConfiguration.get(censoredRegion);
      }
    }
*/

    return this.uncensoredConfiguration;

Sempre nello stesso file è impostato l'indirizzo del reflector:

APPSPOT_REFLECTOR_HOST = "signal-reflector-meek.appspot.com";
Signal usa la tecnica del domain fronting per funzionare nei paesi dove i server vengono bloccati: https://whispersystems.org/blog/doodles-stickers-censorship/ la tecnica è questa https://trac.torproject.org/projects/tor/wiki/doc/meek e probabilmente su appspot usano il codice di Tor: https://gitweb.torproject.org/pluggable-transports/meek.git/ in particolare la webapp: https://gitweb.torproject.org/pluggable-transports/meek.git/tree/appengine. Il tutto non sembra difficile da configurare. Ci sono però diversi problemi: - Oltre un certo traffico appspot si paga (poco, credo, https://cloud.google.com/appengine/docs/quotas). - Con l'idea di fare una rete federata, ogni server si farà il suo reflector? In realtà non è per forza necessario. - Se non ho capito male il meccanismo c'è un momento in cui il traffico è in chiaro, mentre passa su appspot. È corretto? Sono state fatte le dovute considerazioni sul male minore? Al momento la tecnica è disabilitata in `SignalServiceNetworkAccess.java`: ``` // *** XXX FIXME TODO *** // Here we disable the domain fronting technique, as we stil don't have a reflector. /* for (String censoredRegion : this.censoredCountries) { if (localNumber.startsWith(censoredRegion)) { return this.censorshipConfiguration.get(censoredRegion); } } */ return this.uncensoredConfiguration; ``` Sempre nello stesso file è impostato l'indirizzo del reflector: ``` APPSPOT_REFLECTOR_HOST = "signal-reflector-meek.appspot.com"; ```
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference: torn/cable-service#10
No description provided.