Menu Fermer

Le Browser Port Scan : comment le bloquer et s’en protéger

Dans un article précédent, je présentais le port scan ou balayage de ports réseaux.
Mais savez-vous qu’il est possible d’effectuer un port scan de votre PC ou réseau depuis votre navigateur WEB ?
Il s’agit d’un Browser TCP Port Scan depuis votre navigateur internet pour énumérer les ports ouverts ou les machines de votre réseau.

Cet article vous explique en détails ce type de port scan.
Comment le bloquer et se protéger du Le Browser Port Scan.

Le Browser Port Scan : comment le bloquer et s'en protéger
Le Browser Port Scan : comment le bloquer et s’en protéger

Le Browser port scan : comment ça marche ?

Il existe plusieurs approches pour effectuer du balayage de port depuis votre navigateur internet.
Certains proposent des PoC, d’autres sont déjà appliquées et utilisées.

Un port scan en WebRTC

Le WebRTC (Web Real-Time Communication), une collection de protocoles et d’interfaces de programmation dans les navigateurs modernes. Les protocoles nommés STUN (Session Traversal Utilities for NAT) et TURN (Traversal Using Relays around NAT) sont particulièrement intéressants dans ces cas là.

Cela aide le navigateur à configurer un canal de navigateur à navigateur pour la communication en temps réel.
Cette fonctionnalité a également été utilisée dans une faille de sécurité nommée fuite DNS.
TURN est une extension de STUN, permettant par exemple au navigateur de proxy des communications en temps réel via un serveur TURN compatible. STUN est généralement utilisé sur le protocole UDP et TURN sur le protocole TCP.

Les utilisateurs de VPN connaissent déjà WebRTC à travers la fuite d’adresse IP.

Les éditeurs de navigateurs mettent en place des restrictions sur le protocole WebRTC. Par exemple chez Chrome, il existe une liste de ports bloqués : restricted ports WebRTC sur Chrome.
Les requêtes vers ces ports sont interdites.

Toutefois sur Google Chrome, il est possible d’effectuer un port scan via un serveur WebRTC ICE.
Cela permet de contourner ces restrictions de ports.

Le script et le site de démo :

Browser Port scan sur Chrome via un serveur WebRTC ICE

Timing Side Channel “Port Scanner” in the Browser

Le site defuse.ca propose un autre type d’approche qui permet de connaître l’existence d’une machine sur un réseau LAN depuis une page WEB.

Il fonctionne depuis votre navigateur et peut balayer votre réseau local LAN.

  • Le port est ouvert ou le port est fermé et répond immédiatement avec un paquet TCP RST ou ICMP Destination inaccessible.
  • Le port est “furtif” ou le port est ouvert et se bloque lorsqu’il reçoit une demande HTTP ou qu’il n’y a pas d’hôte à cette adresse IP du tout.

Il est donc plus correct de dire qu’il recherche la présence d’un hôte à une adresse IP, mais il peut être utilisé comme analyseur de ports si tous les ports d’un hôte connu sont “furtifs”.

Le scanner fonctionne en chronométrant le temps qu’il faut à votre navigateur pour renoncer à charger un fichier image inexistant.

  • Si elle échoue rapidement, c’est le cas 1.
  • Si elle échoue lentement, c’est le cas 2.

Par exemple ci-dessous, 192.168.1.1 répond en cas numéro 1, car c’est la box internet.
Les autres sont en cas 2 car les machines n’existent pas.

Local Network Scan via le navigateur WEB

Pourquoi est-ce dangereux ?

Si vous visitez un site Web d’un attaquant, il peut utiliser votre connexion pour scanner un autre hôte sur Internet dans le cadre d’une attaque.
Étant donné que l’analyse provient de votre connexion, vous pourriez être blâmé.
Les sites Web que vous visitez peuvent obtenir un peu d’informations sur ce que vous utilisez sur votre réseau local, ce qui pourrait les aider s’ils veulent vous attaquer plus tard.

Si vous avez un réseau local très unique, il peut être utilisé comme une sorte de “supercookie” pour vous suivre en ligne. Ceci n’est probablement pas pratique car la numérisation prend beaucoup de temps.

Par exemple, si vous avez une imprimante avec une page d’administration Web ouverte sur votre réseau local, un site Web que vous visitez peut rechercher des imprimantes sur votre réseau, puis les empreintes digitales (par exemple en demandant des URL d’images connues pour des marques d’imprimantes courantes), en apprenant potentiellement la marque, modèle et version du micrologiciel de votre imprimante.

Le port scan d’eBay

En Mai 2020, des chercheurs découvrent qu’Ebay effectue un scan de port à la connexion.

Ce dernier vérifie si des ports VNC, RDP, TeamViewer, etc sont ouverts.
La société se défend en indiquant qu’il s’agit d’un scan de sécurité pour détecter les machines compromises ou botnet.

Le scan de port se base essentiellement sur du JavaScript.

Le port scan a la connexion sur eBay
source blog.nem.ec

Le site blog.nem.ec propose un article assez complet sur le port scan utilisé par Ebay : Ebay is port scanning visitors to their website – and they aren’t the only ones

Le browser port scan : comment le bloquer et s’en protéger

Des extensions de sécurité aident à bloquer et se protéger des browser port Scan.

uBlock Origin

Suite a la découverte d’Ebay, uBlock bloque le JavaScript a l’origine du balayage de port.
uBlock Origin bloque aussi le port scan de jacob-baines.github.io grâce à la désactivation de la prédiction des actions sur le réseau.
On peut aller plus loin en bloquant la fuite des adresses IP locales via WebRTC.

Comment le bloquer et se protéger du Browser Port Scan avec uBlock Origin

Par contre, uBlock n’aide pas contre celui de defuse.ca.
Par contre le filtrage dynamique d’uBlock Origin fait le boulot.

Comment le bloquer et se protéger du Browser Port Scan avec uBlock Origin

uBlock reste une extension utile pour protéger son PC des attaques, malwares et bloquer les publicités et traqueurs.

Behave!

Cette autre extension de sécurité pour bloquer et protéger des Browser port scan.
Voici les protections proposées :

  • Scan de Port depuis le Navigateur
  • Accès à des IPs Privées
  • Attaque par DNS Rebinding vers des IPs Privées

Behave bloque sans problème le port scan de defuse.ca

Comment le bloquer et se protéger du Browser Port Scan avec behave!

Par contre le balayage de port par le site jacob-baines n’est pas bloqué.

Comment le bloquer et se protéger du Browser Port Scan avec behave!

A noter qu’il bloque les requêtes WebSocks des sites WEB.

Comment le bloquer et se protéger du Browser Port Scan avec behave!