StealthBrowser est un navigateur basé sur Electron.js conçu pour isoler la navigation web et contourner certains mécanismes de détection d’activité ou de restriction d’affichage implémentés par les sites.
Le navigateur injecte un script qui surcharge les API de visibilité de Chromium.
document.hiddenest forcé àfalsedocument.visibilityStateest forcé à"visible"
Effet :
Le site considère que l’onglet est actif en permanence, même si la fenêtre est minimisée ou si l’utilisateur change d’application.
Trois niveaux de protection sont mis en place :
- Rejet des requêtes :
fullscreenpointerLock
- Neutralisation des fonctions :
requestFullscreenwebkitRequestFullscreen- autres variantes
- Injection de styles empêchant tout élément de dépasser le cadre de la fenêtre
Simulation d’activité utilisateur pour contourner les systèmes d’inactivité.
- Génération d’événements
mousemovealéatoires à intervalles réguliers
- Envoi périodique de signaux de touches neutres (ex :
Shift)
Le navigateur intercepte et bloque les événements :
blur
Effet :
Le site ne détecte pas lorsque l’utilisateur quitte la fenêtre ou interagit avec une autre application.
- Node.js (version LTS recommandée)
git clone https://github.com/THEgrison/StealthBrowser
cd StealthBrowsernpm init -y
npm install electron --save-dev-Dans le fichier package.json, ajouter
"scripts": {
"start": "electron ."
}npm start