Mozilla Foundation a un "navigateur de confidentialité" appelé Firefox Focus qui est disponible par exemple pour iPhone ( ici ). Ce navigateur a une fonction de blocage des publicités toujours active.
Je vérifiais les licences tierces utilisées par cette version de l'iPhone (image ci-dessous) et j'ai remarqué que cela inclut l'utilisation de GCDWebServer.
La page GitHub pour GCDWebServer dit que:
GCDWebServer est un serveur HTTP 1.1 moderne et léger basé sur GCD conçu pour être intégré dans les applications iOS, macOS et tvOS.
Il existe des informations de support pour ce navigateur ici mais la documentation ne mentionne pas l'utilisation d'un serveur Web interne.
Ce problème est pertinent pour évaluer les risques liés à d'éventuels ports ouverts en ce qui concerne la décision d'autoriser ou non ce navigateur dans la configuration de votre propre appareil.
Question: Quelle serait l'utilité d'un navigateur Web pour appareil mobile pour exécuter un serveur Web intégré?
Firefox Focus utilise ce serveur Web intégré pour détecter si les règles de blocage de contenu Safari ont bien été activées. Il semble d'après cette réponse et le code source Focus qu'iOS 10 fournit une API pour déterminer si une extension Safari Content Blocking est activée, mais que dans iOS 9 il n'y en avait pas une telle API. Au lieu de cela, il était nécessaire d'essayer de faire une demande pour détecter si cette demande était bloquée; s'il est bloqué, vous supposez alors que le bloqueur fonctionne. Je suppose qu'une décision a été prise de faire tourner un serveur Web local comme cible pour le test de détection des bloqueurs afin de ne pas compter sur un service distant, ce qui aurait introduit des problèmes de fiabilité et de confidentialité.
Je ne sais pas si Firefox Focus le fait réellement, mais certains adblockers mobiles ont un serveur Web interne intégré qui répond aux demandes en fournissant du contenu vide (fichiers texte zéro octet, GIF 1x1, etc.). L'adblocker redirige les requêtes bloquées vers ce serveur interne. Cela se traduit généralement par des pages Web rendues ne montrant rien à la place de l'annonce, alors que sans le serveur Web interne, un message d'erreur peut apparaître à la place de l'annonce.