1 points par GN⁺ 2025-12-02 | 1 commentaires | Partager sur WhatsApp
  • Pour une méthode de requête simple afin de vérifier si un site hébergé sur un serveur interne iranien se trouve derrière un CDN, utilisez la requête curl -i https://domain/boobs.jpg
  • Si le résultat de la requête est 403 Forbidden et que le corps contient une IP dans la plage 10.10.34.x, cela signifie que le trafic a été répondu via le système de filtrage interne iranien
  • Ce comportement est décrit comme un modèle de réponse typique qui se produit quand le filtrage de censure de base de l'Iran est appliqué
  • Même avec un CDN, ce motif apparaît avec une forte probabilité si le site cible est physiquement situé à l'intérieur de l'Iran

1 commentaires

 
GN⁺ 2025-12-02
Commentaire sur Hacker News
  • Cela ne fonctionne que si le reverse proxy ou le CDN est configuré ainsi
    Proxy/CDN : HTTPS(443) → serveur d’origine : HTTP(80)
    Par exemple, le mode Flexible de Cloudflare fonctionne de cette façon
    Si le serveur d’origine utilise une configuration TLS correcte, même avec un certificat auto-signé, cette méthode ne marche pas
    Autrement dit, elle ne réussit que lorsque la connexion amont n’est pas chiffrée
    Pour tester, on peut vérifier avec la commande suivante
    curl [http://www.digiboy.ir/boobs.jpg](http://www.digiboy.ir/boobs.jpg) -v

    • Ah, Cloudflare. On dirait le déchiffreur le plus largement déployé au monde
    • Comme dans l’affaire DigiNotar, cela fonctionne aussi lorsqu’on utilise la seule autorité de certification racine approuvée par le National Information Network iranien
    • Cela ne semble pas exact. Le reverse proxy ou le CDN peut voir l’URL complète de la requête même si le serveur d’origine utilise TLS (sauf en mTLS)
      On ne sait pas clairement si le filtrage a lieu au niveau du proxy/CDN ou à l’origine. Les deux sont possibles
    • J’ai moi aussi mis en place une configuration similaire
      client → LB(nginx) → terminaison TLS sur le LB → transfert vers le backend nginx avec proxy_pass
      La configuration était étonnamment simple. Je me demande pourquoi on utilise encore HTTP
      Chez moi aussi, j’ai mis des certificats Let's Encrypt sur tous les domaines locaux
      Au passage, nginx ne prend pas en charge HTTP/2 pour le load balancing HTTPS, donc je suis en train de passer à haproxy
    • Digiboy est un véritable trésor de logiciels d’entreprise. C’est là que j’ai trouvé une licence HPE iLO piratée
  • Je me demande comment cela fonctionne avec HTTPS
    Les sauts intermédiaires ne sont pas censés voir le chemin d’accès, donc est-ce que cela veut dire que TLS est terminé puis proxyfié à la frontière iranienne ?
    Si c’est le cas, cela voudrait dire que tous les sites en Iran sont hébergés uniquement en HTTP, ce qui aurait des implications bien plus importantes
    Est-ce que les autorités de certification n’auraient pas le droit d’émettre des certificats privés à des organisations iraniennes ? Y compris Let's Encrypt ?

    • On parle ici d’autre chose. Il s’agit de détecter si le serveur backend est à l’intérieur ou à l’extérieur de l’Iran
      TLS n’empêche pas le réseau backend de lire l’URL
    • Une grande partie des liaisons amont de Cloudflare étaient autrefois en clair (plaintext)
      Cloudflare a donc été critiqué parce que seul le segment client–CF était protégé par TLS, tandis que le segment CF–serveur restait en clair
    • Oui. Dans le National Information Network (NIN) iranien, les sites légaux utilisent I.R.Iran CA ou bien simplement HTTP
      Comme l’enregistrement au NIN offre très peu d’anonymat, xkcd 538 est une analogie assez appropriée
  • Je me demande pour quelle raison quelqu’un voudrait savoir si un site est hébergé en Iran

    • Probablement pour identifier des sites de propagande étrangère
      Beaucoup de sites d’actualité peu connus qui circulent sur les réseaux sociaux sont en réalité des sites d’opérations psychologiques étrangères
      La méthode décrite dans l’article permettrait de mettre sur liste noire les sites basés en Iran
    • Pour les entreprises américaines, toute transaction avec l’Iran est illégale
    • Personnellement, je n’aimerais pas non plus faire des affaires avec eux
    • C’est peut-être lié à des actions de protestation, mais je n’en sais rien exactement
  • Je me demande s’il existe un site d’exemple qui renvoie ce type de réponse

    • Moi aussi, je serais curieux de voir un site d’exemple où la requête est traitée avec succès ;)
    • Par exemple, il y a tehranpich.com. Il est derrière Cloudflare
    • Tu demandes s’il y a des photos de boobs sur Internet ? (réponse sur le ton de la plaisanterie)
  • Donc l’Iran mettrait un reverse proxy devant l’ensemble du trafic HTTP ?
    Je me demande aussi ce qu’il y a sur la page web à l’intérieur de l’iframe

    • Avec un pare-feu DPI standard, c’est tout à fait possible. Aucun problème
  • Il y a longtemps, avec des amis, on était tombés sur une image « d’avertissement » mêlant anglais et arabe
    Cela ressemblait à un avertissement du service de censure du gouvernement iranien, et pour s’amuser on avait configuré l’image pour qu’elle s’affiche sur 1 % des requêtes du forum :)

  • J’ai lu l’article, mais je ne comprends pas bien ce qui s’est passé. Quelqu’un peut m’expliquer ?

    • Cela doit être quelque chose comme ça
      Quand on envoie une requête GET [https://somedomain.com/boobs.jpg](https://somedomain.com/boobs.jpg)
      le serveur situé hors d’Iran renvoie 404 (Not Found),
      tandis que sur le serveur situé en Iran, le pare-feu détecte le mot « boobs » et bloque la requête en renvoyant 403 (Forbidden)
      Autrement dit, la requête est filtrée par le pare-feu avant même d’atteindre le serveur web
  • Est-ce qu’on ne risque pas un problème de Scunthorpe ?
    Je me demande si des ornithologues qui chercheraient des ‘boobies’ ne se feraient pas bloquer comme avec ‘boobs.jpg’

  • Donc la plage 10.x.x.x serait routée publiquement à l’intérieur de l’Iran ?
    Je me demande aussi pourquoi le gouvernement n’utilise pas son propre espace IP

    • Les adresses IP coûtent cher, sauf si on est les États-Unis.
      Il se peut qu’ils réutilisent simplement un produit de filtrage d’entreprise standard.
      Au final, l’Internet iranien fonctionne un peu comme un immense réseau privé
    • J’ai moi aussi testé quelques sites iraniens, mais je n’ai vu ni 403 ni iframe
  • Je me demande s’il ne serait pas possible d’étendre cette idée en créant une liste de liens Wikipédia vers du contenu humanitaire susceptible d’être bloqué par des régimes de censure
    Par exemple : massacre et manifestations de Tian'anmen, affaire de corruption de Wen Jiabao, emails d’Epstein, etc.
    Comme Fast.com de Netflix, un tel projet reviendrait à retourner les systèmes de censure contre eux-mêmes