65 votes

Le gouvernement censure le trafic HTTPS vers notre site web. Des solutions de contournement ?

J'aide à gérer un site web qui a été bloqué pour des raisons politiques par la même agence russe qui a J'ai déjà essayé de bloquer Telegram (RosKomNadzor). Ce n'est pas la première fois que cela se produit, et auparavant nous nous contentions de changer de domaine, mais cela a ses propres implications et une perte de lectorat.

Ils ne bloquent que le nom de domaine, pas l'IP (nous utilisons Cloudflare de toute façon). Nous utilisons HTTPS, mais les FAI sont toujours en mesure d'obtenir les informations DNS d'une requête provenant de leurs clients. Techniquement, nous pouvons suggérer à nos lecteurs de configurer leur /etc/hosts mais ce n'est pas une option viable.

Y a-t-il quelque chose à faire du côté de notre serveur pour crypter/obfusquer les informations DNS sans que les utilisateurs n'aient à modifier ou installer de logiciel ? Ou est-ce que notre seule option est d'attendre que le DNS sur HTTPS devienne courant ?

De Russie avec amour.

11 votes

Si l'on en croit les journaux occidentaux (éventuellement partiaux), il s'agit d'une activité dangereuse, surtout si vous êtes toujours basé en Russie. Faites attention à vous ! De France, avec amour.

1 votes

Les versions récentes de Firefox (et probablement de Chrome) prennent déjà en charge le DNS sur HTTPS. Donc si vos utilisateurs ont des versions récentes de navigateurs, ils n'ont pas besoin d'installer quoi que ce soit, juste pour activer cette option. La question est de savoir comment leur dire de le faire.

0 votes

@EricDuminil merci mais ce n'est pas si grave que ça, surtout comparé à la Biélorussie en août 2020.

61voto

Esa Jokinen Points 41064

Malheureusement, le contournement de la censure est mieux traité du côté du client, et il n'y a donc pas beaucoup de paramètres côté serveur qui pourraient être utiles à cet égard. Vous pouvez conseiller à vos utilisateurs d'utiliser un VPN, Tor et/ou DNS public avec DNS-over-HTTPS ( RFC 8484 ) ou DNS-over-TLS ( RFC 7858 ).

Vous partez du principe que la méthode de censure a quelque chose à voir avec le DNS, mais l'avez-vous réellement testé ? Savez-vous que le indication du nom du serveur (SNI, RFC 6066, 3 ) dans le ClientHello n'est pas chiffré et peut également être utilisé pour bloquer la connexion TLS ? Heureusement, Bonjour client crypté TLS ( draft-ietf-tls-esni-09 ) est en route et peut y contribuer. Plus de lecture sur le sujet :

( Nous n'avons pas l'habitude d'ajouter des salutations à nos messages de Q/A, mais votre référence à 007 est en or ! )

0 votes

Merci beaucoup, je vais vérifier cela

6 votes

Les FAI russes sont bien connus pour utiliser l'usurpation de DNS comme première ligne de censure imposée par le gouvernement.

4 votes

Ils utilisent SNI, du moins la dernière fois que j'ai vérifié. Pour les sites bloqués à cause de RKN, vous pouvez les contourner en désactivant SNI côté client (évidemment, cela ne fonctionne que pour les sites n'ayant qu'un seul hôte sur l'IP), à moins que les choses aient changé récemment. Ce n'est pas une vraie solution, mais cela montre au moins qu'ils utilisent effectivement SNI.

19voto

drookie Points 7850

La plupart des fournisseurs russes mettent en œuvre les requêtes d'Inquisition en interceptant le trafic DNS et en le modifiant à la volée (et c'est assez facile puisque ce n'est pas crypté), en utilisant effectivement le schéma de l'homme du milieu. Par exemple, tous les FAI affiliés à Ertelecom utilisent cette méthode. Dans ce cas (qui peut être facilement déterminé en comparant l'adresse IP résolue côté client à l'adresse IP réelle), rien ne peut être fait du côté serveur : même si vous implémentez DNSSEC et que les réponses signées commencent à circuler, tout ce que cette technique fera est de casser entièrement la pile de résolution de nom côté client, lorsqu'il s'agit de votre domaine (cependant, c'est purement une théorie, mais vous pouvez facilement prouver que j'ai tort ; si c'est le cas).

Malheureusement, toutes les solutions disponibles pour contourner le DNS MitM doivent être appliquées du côté du client, et non du côté du serveur.

3 votes

DoH peut aider (DNS over Https), mais c'est aussi une affaire de client.

3 votes

Si j'étais la Russie, j'intercepterais le DNS et détruirais les enregistrements DNSSEC pour tout, ce qui donnerait l'impression à n'importe quel logiciel que le DNSSEC n'existe pas sur l'internet public.

6voto

Vlad Points 967

Rendez votre contenu disponible via IPFS ! https://ipfs.io/ C'est une version décentralisée d'Internet. Où chaque client qui visite votre site, stocke des copies de votre contenu sur sa machine.

Decentralized Web

0 votes

C'est également une bonne option, car l'un des objectifs de l'IPFS est d'empêcher la censure. Pour autant que je sache, Brave est le seul navigateur qui supporte IPFS (il est basé sur Chromium, il ne devrait donc pas être trop difficile d'abandonner Chrome et ses dérivés).

1 votes

C'est assez intéressant, mais cela ne permet-il pas d'altérer facilement le contenu ? De plus, c'est incompatible avec les contenus dynamiques. Pour ces raisons, je préfère utiliser Tor.

3 votes

Avec IPFS, l'URL de votre contenu est un hachage du contenu lui-même. Les hachages empêchent la falsification car toutes les URL sont un hachage du contenu que vous obtenez. Si vous falsifiez un contenu, l'URL de ce contenu aura un hachage différent et personne ne le demandera. Voir : docs.ipfs.io/concepts/hashing "Le contenu lui-même est utilisé pour former une adresse.

5voto

fraxinus Points 524

La censure imposée par le gouvernement russe est connue pour utiliser le DNS spoofing (c'est ainsi que certains sites pornographiques sont bloqués).

Ils utilisent également des filtres de paquets basés sur l'adresse IP/la gamme (c'est ainsi qu'ils ont essayé, sans succès, de bloquer Telegram).

Une idée : un nom de domaine basé sur le temps !

RosComNadzor est une agence gouvernementale, donc ils devraient être un peu lents à répondre.

Déposez-les ! Exemple :

etc...

Vous aurez besoin d'un nouveau nom de domaine chaque semaine (10 $) et vos charmants bureaucrates du RosKomNadzor ne sont pas vraiment très actifs.

Vos utilisateurs doivent se souvenir d'ajouter la date du dernier dimanche au nom de domaine. Si les choses se dégradent, vous pouvez aussi bien aller plus vite et juste un peu plus cher (vous pouvez aussi bien négocier un meilleur prix pour autant de domaines).

À un moment donné, ils peuvent aussi bien adapter leurs procédures à votre régime. Vous ne devez le changer qu'un tout petit peu.

4 votes

C'est en quelque sorte ce que nous faisons déjà, en changeant de nom de domaine. L'idée de le faire de manière proactive plutôt que réactive semble intéressante.

6 votes

Pour compléter cette méthode, vous pouvez fournir aux utilisateurs un bookmarklet qui les dirige automatiquement vers le nom de domaine correct.

23 votes

Dans combien de temps allez-vous enregistrer des domaines ? Rien ne m'empêche, moi ou une agence, d'enregistrer l'un des domaines gratuits à venir. C'est en fait plus dangereux. Les gens croiront qu'ils accèdent à un site web légitime alors que ce n'est pas le cas. Ils peuvent recevoir de fausses informations, des informations d'identification peuvent être recueillies et/ou être tracées dans les moindres détails !

4voto

Allen Stubberud Points 41

Y a-t-il quelque chose qui puisse être fait du côté de notre serveur pour crypter/obfusquer les informations DNS sans que les utilisateurs n'aient à modifier/installer de logiciel ?

Non, car les demandes DNS sont traitées par des serveurs de noms dédiés et, en tant que telles, elles ne sont pas acheminées par votre serveur web.

Ou faut-il attendre que le DNS sur HTTPS devienne courant ?

En gros, le DNS sur HTPS a été conçu pour améliorer la confidentialité, contrecarrer la censure et prévenir les attaques telles que celles que vous avez décrites. Il est pris en charge par les versions récentes de Google Chrome et de Firefox (sur le bureau au moins), donc en théorie la plupart de vos utilisateurs devraient déjà pouvoir l'utiliser.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X