Après le détournement d’applications d’octobre 2026, les marchands se sont légitimement posé une question difficile sur chaque application de leur pile : si cet éditeur était attaqué, qu’est-ce qui pourrait atteindre mes clients ?
C’est la bonne question. Voici la réponse directe pour Navi+, fondée sur la façon dont l’application est réellement construite et configurée, y compris les limites qu’aucune application ne peut promettre de supprimer.
- Permissions en lecture seule. Navi+ ne demande à Shopify que quatre droits de lecture : thèmes, produits, navigation de la boutique en ligne et contenus. Aucune commande, aucun client, aucun droit d'écriture sur les thèmes.
- Aucun accès au paiement. Navi+ n'a ni extension de paiement ni pixel web. Il ne s'exécute jamais sur les pages de paiement.
- Aucune modification du thème. Le menu de la vitrine se charge via un bloc d'intégration d'application Shopify, et non en modifiant les fichiers du thème ni via ScriptTag.
- Les acheteurs ne parlent jamais à nos serveurs. Les menus sont publiés sous forme de fichiers statiques sur un CDN.
Illustration conceptuelle : une couche de navigation qui lit la boutique sans jamais atteindre le paiement ni les données clients.
Schéma : ce que Navi+ peut atteindre (vert) et ce qu’il ne touche jamais (gris).
Fait partie du pôle thématiqueExplorer le pôle Sécurité Shopify →
1. Permissions : uniquement ce dont un menu a besoin
Une application de navigation doit connaître la structure de votre thème, vos produits, vos menus et vos pages. C’est tout ce que Navi+ demande à Shopify :
read_themesread_productsread_online_store_navigationread_content
Il n’existe ni write_themes, ni write_script_tags, ni périmètre pour les commandes ou les clients. Même si un attaquant compromettait l’accès de l’application à Shopify, ces permissions ne permettraient ni de modifier vos fichiers de thème ni de lire l’historique de vos commandes.
2. Installation et sessions d’administration : signées par Shopify
Navi+ gère l’authentification via l’installation gérée par Shopify et l’échange de jetons. Lorsque vous ouvrez Navi+ dans votre administration Shopify, Shopify fournit un jeton d’identité signé. Avant de l’échanger contre un jeton d’accès, Navi+ vérifie quatre conditions :
- La signature cryptographique est valide.
- Le jeton a été émis pour Navi+.
- Il appartient à votre boutique
myshopify.comprécise. - Il n’a pas expiré.
Le jeton d’accès obtenu est un jeton hors ligne à durée limitée, jamais une clé permanente.
Pour empêcher le détournement de clic (clickjacking), la page d’administration de Navi+ indique aussi aux navigateurs de n’afficher la page que dans l’administration de votre boutique et dans le domaine d’administration de Shopify.
Chaque fois que Shopify envoie des événements en arrière-plan à Navi+ (comme les webhooks de désinstallation), l’application vérifie la signature de Shopify et rejette toute charge utile qui ne correspond pas.
3. Vitrine : un bloc d’intégration, pas une intervention sur le thème
Sur votre vitrine, Navi+ fonctionne entièrement comme une extension de thème (un bloc d’intégration d’application). Vous l’activez ou la désactivez avec un simple interrupteur dans l’éditeur de thème Shopify. Comme Navi+ n’écrit jamais dans vos fichiers de thème, notre code ne bloque jamais vos mises à jour de thème, et il ne reste aucun code à nettoyer dans theme.liquid si vous désinstallez l’application.
4. Fichiers de menu statiques : aucun appel en direct depuis les acheteurs
Lorsque vous publiez un menu, Navi+ le compile en fichier statique sur un CDN. Le script de la vitrine se charge de façon asynchrone et lit ce fichier. Les navigateurs des acheteurs n’appellent jamais le serveur d’application ni la base de données de Navi+. Cela apporte deux avantages distincts :
- Performance et résilience. Si nos serveurs d’application ralentissent ou tombent en panne, vos menus publiés continuent de fonctionner.
- Confinement des pannes. Le script de la vitrine est correctement encapsulé. S’il échoue, le menu n’apparaît pas, l’erreur est journalisée, et votre boutique, votre panier et votre paiement continuent de fonctionner. Un CDN de secours est essayé si le principal échoue.
5. Données des acheteurs : conservées dans le navigateur
Navi+ ne touche pas au paiement et ne lit que le nombre d’articles du panier pour le badge du panier. Lorsqu’un client se connecte, le menu peut vérifier ses étiquettes client ou son entreprise B2B pour afficher ou masquer certains éléments, comme un lien grossiste. Cette vérification se fait dans le navigateur de l’acheteur ; nous n’avons trouvé aucun chemin qui envoie ces informations à Navi+.
Deux détails opérationnels pour vos revues de confidentialité :
- Navi+ inclut une analyse facultative de l’usage de la vitrine (Google Analytics), que les marchands peuvent désactiver.
- Un petit échantillon de performance (environ 5 % des pages vues de Shopify) enregistre les temps de chargement avec un nom de boutique haché ; il ne stocke ni adresse IP, ni user agent, ni URL de page.
6. Les limites honnêtes
Aucun éditeur d’application ne peut promettre « inviolable ». Voici ce qu’un marchand prudent doit savoir sur Navi+ en particulier :
- Les menus peuvent contenir du HTML personnalisé. Navi+ permet aux marchands d’ajouter des blocs HTML personnalisés et des liens dans les menus. Cette souplesse est puissante, mais elle signifie aussi que quiconque peut modifier vos menus Navi+ peut changer ce qui apparaît sur votre vitrine. Limitez les permissions du personnel Shopify en conséquence.
- Les fichiers de menu sont servis par l’éditeur. Comme les applications de l’incident d’octobre, Navi+ diffuse la configuration depuis sa propre infrastructure. Nos protections sont les permissions en lecture seule, l’absence d’accès au paiement et la publication de fichiers statiques plutôt que l’exécution de code de réglages en direct. Elles réduisent le risque ; elles ne le rendent pas nul.
- Nous progressons. Le travail de sécurité sur l’application est continu, et nous mettrons cette page à jour lorsque cela changera.
7. Comment vérifier vous-même n’importe quelle application de menu (y compris Navi+)
- Ouvrez Paramètres → Applications et canaux de vente, choisissez l’application et lisez sa liste d’accès.
- Dans l’éditeur de thème, regardez sous Intégrations d’applications pour voir quelles applications s’exécutent sur votre vitrine.
- Ouvrez votre boutique dans une fenêtre privée, ouvrez les outils de développement du navigateur, et vérifiez quels domaines chargent des scripts.
- Cliquez sur chaque lien de menu qui mène au paiement ou au panier, et vérifiez que vous restez sur votre propre domaine.
- Supprimez les applications de menu que vous n’utilisez plus ; désactiver le bloc d’intégration arrête immédiatement leur code.
Pour une vue d’ensemble, lisez les menaces qui visent les marchands Shopify en 2026, ce que Shopify fait déjà pour protéger les boutiques et les technologies de sécurité qu’il vaut la peine de comprendre.
Sources
- Configuration de l’application Navi+ (périmètres, bloc d’intégration, chargeur de la vitrine), vérifiée le 4 novembre 2026.
- Shopify.dev, Token exchange : https://shopify.dev/docs/apps/build/authentication-authorization/access-tokens/token-exchange
- Shopify.dev, Set up iframe protection : https://shopify.dev/docs/apps/build/security/set-up-iframe-protection
- Shopify.dev, Privacy law compliance (webhooks) : https://shopify.dev/docs/apps/build/privacy-law-compliance
- Roman Zipp, Shopify shops hit with ongoing Checkout Hijack attack : https://romanzipp.com/blog/shopify-hit-with-phishing-attack