Module Magento 2 – Scanner de sécurité et de détection de code malveillant

Module Magento 2 pour l’analyse automatique de la base de données à la recherche de code malveillant, de scripts et de liens dangereux.
Compatibilité
2.4.9, 2.4.8, 2.4.7, 2.4.6, 2.4.5, 2.4.4, 2.4.3, 2.4.2, 2.4.1, 2.4.0, 2.3.7, 2.3.6, 2.3.5, 2.3.4
30,75 €
Envoyer à un ami

Demander des informations sur ce produit

Description / Module Magento 2 – Scanner de sécurité et de détection de code malveillant

MAGENTO 2 · SURVEILLANCE · DÉTECTION · RAPPORTS

Détectez les changements suspects et évaluez les incidents plus rapidement.

Kowal Security Scan

Contrôlez les fichiers et certains contenus de la base de données Magento. Combinez des règles de détection locales avec le reporting, une analyse AI optionnelle et l’évaluation de la réputation des URL via Google Safe Browsing.

Fichiers et base de données · Cron et CLI · Règles et allowlists

COMMENT CELA FONCTIONNE EN PRATIQUE

01 · Vous configurez l’analyse
Vous activez le module, les rapports et les intégrations sélectionnées.

02 · Le scanner contrôle la boutique
Vous lancez les analyses manuellement ou via cron.

03 · L’équipe évalue le rapport
Elle vérifie les détections et prend les mesures suivantes.

Qu’apporte-t-il à votre boutique ?

Découvrez les fonctionnalités, les usages et les paramètres du module.

Découvrez le module

Kowal Security Scan est un module de sécurité avancé pour Magento 2 qui aide à détecter plus rapidement les changements suspects dans les fichiers, le code malveillant, les URL dangereuses et les injections dans les contenus de la base de données. Il a été conçu pour fonctionner de manière légère, sans agents supplémentaires et sans déploiement complexe.

Fonctionnalités clés du module

  • Analyse des changements dans les fichiers - détecte les fichiers nouveaux, modifiés et supprimés au sein de l’application Magento.
  • Analyse heuristique du malware - analyse les fichiers php, phtml, js, html, svg, htaccess et d’autres supports de payloads.
  • Analyse des tokens PHP - détecte les chaînes decode -> execute, les callbacks dynamiques, les variable function calls et les include/require suspects.
  • Analyse de la base de données - contrôle certaines tables Magento à la recherche de HTML malveillant, JavaScript, SVG, URI data: et liens dangereux.
  • Intégration avec Google Safe Browsing - évalue la réputation des URL présentes dans les contenus de la boutique.
  • Analyse OpenAI optionnelle - enrichit le rapport avec une évaluation du risque et des recommandations d’actions.
  • Allowlists avancées - permettent de limiter les false positives au niveau des domaines, fichiers, contenus et règles spécifiques.
  • Rapports avec configuration prête à l’emploi - le module suggère des candidats pour les allowlists et génère un export JSON normalisé prêt à être utilisé.

Qu’est-ce qui distingue ce module ?

  • Identifiants de règles stables - les règles de fichiers et de base disposent de leur propre rule_id, ce qui évite que la configuration des allowlists dépende de la description textuelle complète.
  • Rapports conçus pour la gestion des incidents - le rapport présente non seulement les détections, mais aussi le niveau de risque, les recommandations et les entrées de configuration prêtes à l’emploi.
  • Contrôle des false positives sans désactiver le scanner - vous pouvez neutraliser une règle unique pour un chemin ou une table donné au lieu de désactiver tout le module.
  • Automatisation complète - le module fonctionne via cron, mais chaque analyse peut aussi être lancée manuellement via CLI.

Quelles menaces aide-t-il à détecter ?

  • code PHP obfusqué basé sur eval, base64_decode, gzinflate et des techniques similaires,
  • insertions JavaScript malveillantes dans les contenus CMS,
  • iframes externes et redirections suspectes,
  • payloads SVG et contenus dissimulés dans des URI data:,
  • liens dangereux menant à du malware, du phishing ou des logiciels indésirables,
  • modifications non autorisées des fichiers de l’application.

Où le module recherche-t-il les menaces ?

Le module analyse les zones clés de la boutique où les incidents apparaissent le plus souvent :

  • fichiers de l’application Magento et des modules,
  • blocs CMS,
  • pages CMS,
  • core_config_data,
  • templates d’e-mails Magento et de newsletter,
  • contenus produit et avis clients.

Rapports et réaction opérationnelle

  • Les résultats sont enregistrés dans une table de rapports dédiée du module.
  • Le rapport peut être envoyé par e-mail à l’opérateur.
  • Chaque détection peut contenir un niveau de risque, des consignes opérationnelles et le rule_id associé.
  • Le rapport peut préparer des suggestions prêtes à l’emploi pour les allowlists ainsi qu’une configuration normalisée en JSON.

Exemples d’utilisation

  • détection de code malveillant ajouté après une intrusion dans la boutique,
  • surveillance des modifications non autorisées dans les fichiers de déploiement,
  • détection de blocs CMS infectés ou de contenus infectés dans la base de données,
  • évaluation visant à déterminer si une URL suspecte doit être ajoutée à l’allowlist ou supprimée du système.

Pourquoi l’adopter ?

  • Déploiement rapide - fonctionne comme un module Magento 2 sans infrastructure supplémentaire.
  • Reporting pratique - le module ne s’arrête pas à la détection, il aide à passer à une décision opérationnelle.
  • Meilleur contrôle de la qualité des alertes - les allowlists et les rule_id facilitent le maintien d’une efficacité élevée sans avalanche de faux positifs.
  • Bonne adaptation aux environnements de production - analyses automatiques, rapports par e-mail et commandes CLI manuelles accompagnent le travail quotidien de l’équipe technique.

Compatibilité

  • Magento Open Source 2.3.x - 2.4.x
  • Adobe Commerce / Magento Commerce

Que contient le package ?

  • module Magento 2 avec tâches cron et commandes CLI,
  • configuration d’administration du module,
  • mécanisme de reporting vers la base et par e-mail,
  • règles de détection avancées et système d’allowlists.

Documentation et support

Une documentation de déploiement et de configuration est disponible pour le module, et son architecture prend en charge l’ajustement ultérieur des règles et des processus de sécurité dans la boutique Magento 2.

Favorisez la détection plus précoce des incidents dans Magento 2 avec Kowal Security Scan.

Première analyse et périmètre de surveillance

La description existante mentionne Magento Open Source 2.3.x–2.4.x ainsi qu’Adobe Commerce / Magento Commerce. La compatibilité d’une version précise de Magento et de PHP doit être vérifiée avec la version fournie du package. Le premier lancement de filecheck crée un snapshot de référence. Ce n’est qu’à partir des analyses suivantes que l’état est comparé et que les éléments ADDED, MODIFIED et REMOVED sont signalés. Les zones telles que var, generated, vendor, pub/static et node_modules sont ignorées dans l’analyse des changements.

Database Scan couvre les tables sélectionnées : cms_block, cms_page, core_config_data, email_template, newsletter_template, review_detail et catalog_product_entity_text. Le module ne garantit pas la détection de toutes les menaces et ne supprime pas automatiquement les infections.

Planification et configuration

Dans Stores → Configuration → Kowal → Security Scan, vous définissez l’activation, le destinataire et l’expéditeur des rapports ainsi que la rétention. Le cron par défaut lance l’analyse des changements à 00:00, l’analyse malware à 01:00, la base à 02:00 et le nettoyage des rapports à 02:30.

L’automatisation nécessite un cron Magento fonctionnel et l’envoi des e-mails. Les commandes manuelles sont kowal_securityscan:filecheck, kowal_securityscan:malwarecheck et kowal_securityscan:dbcheck.

API optionnelles et exceptions précises

Sans OpenAI ni Google Safe Browsing, les analyses locales de base fonctionnent. Les API activées nécessitent vos propres clés et l’accès aux services. L’analyse AI transmet les fragments suspects à OpenAI ; vous configurez le modèle et le contexte maximal. Safe Browsing contrôle les URL détectées ainsi que l’adresse de base de la boutique.

La neutralisation d’une règle unique pour un fichier ou une table est plus ciblée que l’exclusion de tout le fichier ou de tout l’enregistrement. Validez les candidats d’allowlist issus du rapport et de l’export JSON après vérification — le rapport aide l’opérateur à décider, il ne le remplace pas.

Installation via Composer

Package kowal/module-securityscan, module Kowal_SecurityScan. Après avoir configuré l’accès au dépôt Kowal, installez le package, activez le module, mettez Magento à jour et videz le cache. En production, prévoyez la compilation et le déploiement des contenus statiques conformément au processus de la boutique.

De la configuration au résultat

1. Vous configurez l’analyse
Vous activez le module, les rapports et les intégrations sélectionnées.

2. Le scanner contrôle la boutique
Vous lancez les analyses manuellement ou via cron.

3. L’équipe évalue le rapport
Elle vérifie les détections et prend les mesures suivantes.

Script suspect dans un bloc CMS

L’analyse de la base détecte un fragment JavaScript dans un contenu CMS. Le rapport indique l’enregistrement et la règle, tandis que l’analyse AI optionnelle aide à évaluer le risque.

L’opérateur vérifie s’il s’agit d’un incident ou d’une intégration légitime. Un faux positif vérifié peut être neutralisé avec une règle d’allowlist précise.

Activez la surveillance régulière de Magento

Vous souhaitez adapter le module à votre boutique ? Demandez le déploiement de Kowal Security Scan et discutez de la configuration ou des extensions nécessaires.

Caractéristiques

Compatibilité avec le modèle Luma / Blank, KOWAL

Change Log

Version : 1.0.27

31.03.2026

Nous avons enrichi le module Kowal_SecurityScan avec de nouvelles fonctionnalités liées à l’analyse des menaces et à l’administration des rapports.

Nouveautés

  • Ajout d’une intégration avec OpenAI pour analyser les fichiers modifiés et les enregistrements suspects dans la base de données.
  • Les rapports et les e-mails incluent désormais une évaluation du risque ainsi que les actions recommandées dans les domaines suivants :
    • Magento
    • serveur
    • firewall
  • Ajout de la configuration OpenAI dans le panneau Magento, notamment :
    • activation/désactivation de l’analyse AI
    • clé API
    • choix du modèle
    • limite du contexte transmis à l’analyse

Améliorations

  • La liste des modèles OpenAI est désormais récupérée dynamiquement depuis l’API et présentée dans la configuration sous forme de dropdown.
  • Le contenu des e-mails a été enrichi avec l’identification de la boutique Magento :
    • domaine de la boutique
    • URL de la boutique
  • Le domaine de la boutique est également ajouté à l’objet du message, ce qui facilite la gestion de plusieurs instances.

Automatisation et maintenance

  • Ajout d’un nouveau cron nettoyant les anciennes entrées de la table des rapports.
  • La durée de rétention des rapports est configurable depuis system.xml sous forme de nombre de jours.

Correctifs techniques

  • La logique d’analyse des fichiers et des enregistrements suspects a été réorganisée.
  • La gestion du contexte des données transmises à l’analyse AI a été améliorée.
  • Correction du problème de compilation DI lié à l’implémentation précédente du client OpenAI.

Notice d'installation du module

Guide du module Kowal_SecurityScan

Vue d’ensemble

Le module ajoute à Magento 2 une couche de surveillance de sécurité pour les fichiers de l’application, certaines tables de base de données, les URL suspectes et l’analyse optionnelle des incidents via OpenAI.

Les rapports sont enregistrés dans la table kowal_securityscan_report et peuvent être envoyés par e-mail.

Fonctionnalités principales

  • analyse des changements dans les fichiers Magento avec comparaison au snapshot,
  • analyse heuristique des fichiers php, phtml, php5, inc, phar, js, html, htm, svg, htaccess,
  • analyse des tokens PHP via token_get_all(),
  • analyse de certaines tables de base de données à la recherche de HTML malveillant, JavaScript, SVG, URI data: et URL suspectes,
  • intégration avec Google Safe Browsing API,
  • analyse OpenAI optionnelle pour les détections,
  • allowlists configurables de domaines, fichiers, modèles de contenu et règles,
  • rapports avec suggestions prêtes pour les allowlists et export d’une configuration JSON normalisée.

Prérequis

  • Magento 2,
  • module kowal/base disponible,
  • cron Magento fonctionnel,
  • envoi d’e-mails correctement configuré,
  • optionnellement : clé OpenAI API et clé Google Safe Browsing API.

Installation

1. Ajout du dépôt du package

Ajoutez le dépôt Composer Kowal :

Les identifiants d’accès au dépôt Composer, c’est-à-dire l’adresse e-mail du client et le token de licence, vous seront envoyés par e-mail après l’achat. Ils sont également disponibles dans l’espace client après connexion sur kowal.store. Remplacez TWOJ_EMAIL_KLIENTA par l’adresse e-mail de votre compte et TWOJ_TOKEN par le token reçu. Exécutez les commandes dans le répertoire racine de Magento.

composer config repositories.kowal composer https://repo.kowal.store

Si le dépôt nécessite une autorisation :

composer config http-basic.repo.kowal.store 'TWOJ_EMAIL_KLIENTA' 'TWOJ_TOKEN'

2. Installation du package

composer require kowal/module-securityscan

3. Activation du module

php bin/magento module:enable Kowal_SecurityScan
php bin/magento setup:upgrade
php bin/magento cache:flush

En environnement de production, effectuez les étapes standard de déploiement Magento, conformément à votre processus de mise en production.

Cron et planning des analyses

Le module enregistre son propre groupe cron securityscan.

  • kowal_securityscan_filecheck - tous les jours à 00:00,
  • kowal_securityscan_malwarecheck - tous les jours à 01:00,
  • kowal_securityscan_dbcheck - tous les jours à 02:00,
  • kowal_securityscan_cleanup_reports - tous les jours à 02:30.

Sans cron Magento fonctionnel, les analyses automatiques ne seront pas exécutées.

Lancement manuel des analyses

Pour lancer les analyses manuellement, utilisez :

php bin/magento kowal_securityscan:filecheck
php bin/magento kowal_securityscan:malwarecheck
php bin/magento kowal_securityscan:dbcheck

C’est la méthode recommandée pour tester après l’installation et après les changements de configuration.

Configuration

Chemin de configuration :

Stores -> Configuration -> kowal -> kowal_security

Paramètres généraux

  • Włącz moduł
  • Adres e-mail do raportów
  • Adres e-mail nadawcy
  • Retencja raportow w dniach
  • Google Safe Browsing API Key
  • Allowlista domen
  • Allowlista plikow
  • Allowlista wzorcow bazy
  • Allowlista reguł plikow
  • Allowlista reguł bazy

Configuration minimale

  1. activez le module,
  2. définissez l’adresse du destinataire des rapports,
  3. définissez l’adresse de l’expéditeur des rapports,
  4. assurez-vous que l’envoi d’e-mails Magento fonctionne,
  5. assurez-vous que le cron Magento fonctionne.

Analyse OpenAI

La section Analiza OpenAI permet d’enrichir les rapports avec une évaluation du risque et des recommandations d’actions.

Champs disponibles :

  • Włącz analizę AI,
  • OpenAI API Key,
  • Model OpenAI,
  • Maksymalny kontekst dla AI.

Comment l’activer

  1. activez Włącz analizę AI,
  2. renseignez OpenAI API Key,
  3. enregistrez la configuration,
  4. actualisez le formulaire de configuration,
  5. choisissez le modèle.

Comportement par défaut

  • modèle par défaut : gpt-4.1-mini,
  • limite de contexte par défaut : 12000,
  • les valeurs inférieures à 2000 sont relevées à 12000,
  • la limite maximale de contexte est 50000.

Si OpenAI est désactivé ou si la clé est absente, le module continue de fonctionner et applique les heuristiques locales.

Google Safe Browsing

Si vous renseignez Google Safe Browsing API Key, le module :

  • contrôlera les URL détectées dans les fichiers et la base,
  • contrôlera l’adresse de base de la boutique.

L’absence de clé ne bloque pas les analyses de base, elle désactive seulement cette étape.

Analyse des changements dans les fichiers

filecheck fonctionne à partir d’un snapshot enregistré dans :

var/security_scan_hashes.json

Lors du premier lancement :

  • un snapshot est créé,
  • il n’y a pas encore de comparaison des changements,
  • le rapport informe de la création de la base de référence.

Les lancements suivants signalent les changements de type ADDED, MODIFIED et REMOVED.

Sont notamment ignorés :

  • var/,
  • generated/,
  • vendor/,
  • pub/static/,
  • node_modules/.

Analyse malware dans les fichiers

malwarecheck analyse les fichiers de l’application sur la base :

  • des règles regex avec rule_id,
  • des heuristiques de tokens PHP,
  • des contrôles d’URL via Safe Browsing.

Exemples de types de détection :

  • file.obfuscated_eval_chain,
  • file.command_execution_from_request,
  • file.encoded_payload_blob,
  • file.token.decode_execute_chain,
  • file.token.include_from_request,
  • file.inline_svg_or_event_handler.

Dans les rapports, les motifs sont présentés au format :

[file.encoded_payload_blob] Encoded payload blob detected

Analyse de la base de données

dbcheck analyse certaines tables Magento :

  • cms_block,
  • cms_page,
  • core_config_data,
  • email_template,
  • newsletter_template,
  • review_detail,
  • catalog_product_entity_text.

Exemples de règles :

  • db.inline_script_tag,
  • db.html_event_handler,
  • db.external_iframe,
  • db.javascript_uri,
  • db.data_uri_executable,
  • db.embedded_svg_payload,
  • db.javascript_dom_redirect.

Le contenu est d’abord normalisé par :

  • html_entity_decode,
  • rawurldecode,
  • normalisation du whitespace,
  • analyse de plusieurs variantes du même contenu.

Configuration avancée : allowlists

Les allowlists servent à limiter les false positives sans désactiver tout le module.

1. Allowlist des domaines

Champ : kowal_security/general/allowlisted_domains

Format :

  • un domaine par ligne, ou
  • liste séparée par des virgules.
cdn.example.comstatic.example.org

Effet :

  • les URL de ces domaines ne seront pas considérées comme suspectes,
  • Safe Browsing ne les contrôlera pas.

2. Allowlist des fichiers

Champ : kowal_security/general/allowlisted_file_patterns

Format :

  • chemins relatifs,
  • prise en charge des globs.
app/code/Vendor/Module/Test/*pub/media/custom.js

Effet : les fichiers correspondant au modèle sont entièrement ignorés par l’analyse malware. Ce paramètre a une portée large.

3. Allowlist des modèles de base

Champ : kowal_security/general/allowlisted_db_patterns

Format :

  • phrases,
  • fragments HTML ou JS,
  • entrées séparées par une nouvelle ligne ou par des virgules.
trusted-inline-widgetdata:image/svg+xml,<svg

Effet : un enregistrement de base contenant ce fragment est ignoré par l’analyse DB. Ce paramètre a également une portée large.

4. Allowlist des règles de fichiers

Champ : kowal_security/general/allowlisted_file_rules

Format recommandé :

sciezka_lub_glob | rule_id

Exemple :

app/code/Vendor/Module/* | file.encoded_payload_blobpub/media/custom.js | file.javascript_redirect_or_rewrite

Compatibilité ascendante :

  • les anciennes entrées basées sur l’étiquette complète de la règle continuent de fonctionner,
  • les nouvelles entrées doivent utiliser rule_id.

Effet : seule la règle indiquée est neutralisée pour le chemin indiqué, tandis que le reste de l’analyse de ce fichier continue de fonctionner.

5. Allowlist des règles de base

Champ : kowal_security/general/allowlisted_db_rules

Format recommandé :

tabela_lub_* | rule_id

Exemple :

cms_block | db.inline_script_tag* | db.fetch_or_xhr_loader

Effet : seule la règle indiquée est neutralisée, tandis que les autres continuent de fonctionner pour cet enregistrement ou cette table.

Rapports

Les rapports peuvent contenir :

  • la liste des détections,
  • l’évaluation du risque,
  • des indicateurs et recommandations,
  • des candidats pour allowlist après vérification manuelle,
  • une configuration d’allowlists normalisée en JSON.

Suggestions d’allowlist dans les rapports

La section du rapport peut contenir des entrées de type :

- cms_block | db.inline_script_tag | pewnosc=MEDIUM | zasieg=LOW- app/code/Vendor/Module/* | file.encoded_payload_blob | pewnosc=MEDIUM | zasieg=LOW- data:image/svg+xml,<svg... | pewnosc=LOW | zasieg=HIGH

Interprétation :

  • zasieg=LOW - candidat plus sûr,
  • zasieg=HIGH - neutralisation large, uniquement après vérification stricte,
  • pewnosc=MEDIUM/HIGH - candidat à la configuration plus prévisible,
  • pewnosc=LOW - nécessite de la prudence.

Export JSON

Le rapport contient aussi la section Znormalizowana konfiguracja allowlist (JSON). Il s’agit d’un ensemble prêt à l’emploi, dédupliqué, de valeurs à reporter dans la configuration.

Mode d’utilisation recommandé

  1. lancez manuellement les trois analyses après l’installation,
  2. considérez le premier filecheck comme la construction du snapshot,
  3. analysez les rapports et confirmez quelles détections sont réelles,
  4. pour les false positives, utilisez d’abord allowlisted_file_rules et allowlisted_db_rules,
  5. n’utilisez allowlisted_domains, allowlisted_file_patterns et allowlisted_db_patterns que lorsque c’est nécessaire,
  6. après un changement de configuration, relancez l’analyse CLI appropriée et vérifiez le résultat.

Remarques opérationnelles

  • filecheck ne signale pas encore les changements comme incident lors du premier lancement,
  • le module fonctionne sans OpenAI et sans Safe Browsing, mais avec une profondeur d’analyse moindre,
  • allowlisted_file_patterns et allowlisted_db_patterns ont un impact large et doivent être utilisés avec parcimonie,
  • le format préféré pour les allowlists de règles est rule_id, et non l’étiquette textuelle complète.
Cliquer pour passer le carrousel

Nous avons trouvé d'autres produits qui pourraient vous plaire !

Kowal MCP Server pour Magento 2
92,25 €
Kowal Purge Varnish Cache
15,38 €
Rédigez votre propre commentaire
Vous commentez : Module Magento 2 – Scanner de sécurité et de détection de code malveillant
Votre notation:
Prix
Qualité
Assistance
loader
Chargement...

Votre évaluation est enrégistrée avec succès. Merci.

Questions et réponses

Question
Le module permet-il d’analyser une boutique Magento 2 à la recherche de code malveillant et de menaces de sécurité ?
Réponse
Oui. Le module compare les fichiers à une référence enregistrée et signale les ajouts, modifications ou suppressions. Des analyses distinctes recherchent des motifs suspects dans certains fichiers et tables. Il s'agit de surveillance et de diagnostic, sans suppression automatique d'infection ni garantie de détecter toutes les menaces.
Question
L’installation du module nécessite-t-elle d’écraser les fichiers du noyau Magento ou du thème ?
Réponse
Non — les modules proposés par Kowal sont généralement des extensions conformes à l’architecture Magento 2 et ne nécessitent pas de modifier les fichiers core. (Aucune information sur la nécessité d’une modification)
Question
Le module prend-il en charge les boutiques Magento 2 dans des installations multi-boutiques (multi-store) et multi-vues ?
Réponse
Les analyses de fichiers couvrent l'installation Magento plutôt qu'un répertoire distinct par vue boutique. Adaptez les tables et paramètres d'analyse au déploiement. Cela ne constitue pas un audit de sécurité distinct de chaque site et intégration.
Question
Le module aide-t-il à respecter les recommandations de sécurité de la plateforme Magento ou de l’outil Magento Security Scan Tool ?
Réponse
Kowal Security Scan surveille les modifications de fichiers et certains motifs suspects. Il ne remplace pas les mises à jour de sécurité Magento, les contrôles de droits, les audits d'infrastructure ou le scanner externe Adobe. Son rapport constitue un élément supplémentaire plutôt qu'une confirmation que toutes les recommandations sont respectées.
Question
Le module affecte-t-il de manière significative les performances de la boutique, par exemple lors de l’analyse de grands catalogues de fichiers ?
Réponse
Les analyses de fichiers et de base utilisent les ressources serveur. Le module propose une programmation CRON, avec des tâches individuelles nocturnes par défaut. La charge dépend de la taille de l'installation et du périmètre analysé. Vérifiez le temps d'exécution et les ressources avant d'activer tout le périmètre.
Question
Après l’achat du module, vais-je bénéficier d’une assistance technique et de mises à jour ?
Réponse
Oui — le fabricant déclare proposer des mises à jour gratuites et une assistance technique pour ses extensions.
Modifier les préférences de cookies