Analyse de sécurité : installation et aide

Démarrage rapide

  1. Importez le ZIP de Security Scan dans "Modules" > "Module Manager" > "Upload a module" et installez-le.
  2. Ouvrez "Security Scan" > "Settings" > "Configuration".
  3. Vérifiez "Confirm exposure by self-checking public URLs" et "Deep scan (code & malware heuristics)", tous deux activés initialement, puis cliquez sur "Save settings".
  4. Ouvrez "Security Scan" > "Scan & Report" et cliquez sur "Run scan now".
  5. Lisez les résultats "Critical" et "High", inspectez les éléments concernés et suivez les étapes de correction manuelle appropriées.
  6. Cliquez sur "Re-scan now" après les corrections et confirmez la nouvelle date, le rapport et le résumé dans "History".

Nécessite PrestaShop 1.7 ou ultérieur et PHP 7.1 ou ultérieur.

AFL-3.0.

Manuel de configuration

Installer Security Scan

Prérequis

Nécessite PrestaShop 1.7 ou ultérieur et PHP 7.1 ou ultérieur.

Security Scan est sous licence AFL-3.0. Installez le ZIP de publication via "Modules" > "Module Manager" > "Upload a module". Ouvrez "Security Scan" > "Scan & Report". Le module ajoute "History" et "Settings", comprenant "Configuration" et "System Check".

Le scanner détecte des problèmes et fournit des étapes de correction manuelle. Il ne bloque pas les requêtes, ne corrige pas les fichiers de la boutique, ne modifie pas les paramètres de sécurité et ne supprime pas les logiciels malveillants. L'exécution d'une analyse enregistre son rapport et son résumé dans la table de base de données du module.

Configurer l'analyse

Ouvrez "Security Scan" > "Settings" > "Configuration".

Paramètre Valeur par défaut Quand le modifier
"Confirm exposure by self-checking public URLs" "On" Laissez-le activé pour permettre aux contrôles d'exposition d'interroger les URLs publiques de votre boutique. Désactivez-le si vous avez besoin d'une analyse uniquement locale ou si votre hébergement bloque les requêtes vers lui-même.
"Deep scan (code & malware heuristics)" "On" Laissez-le activé pour le plus grand échantillon de fichiers. Désactivez-le pour réduire le travail d'analyse. Le moteur actuel exécute toujours les contrôles de code et de logiciels malveillants avec des limites de fichiers plus basses.

Cliquez sur "Save settings", puis sur "Back to scan".

La limite de l'échantillon de code statique est de 1 200 fichiers PHP lorsque l'analyse approfondie est activée et de 300 lorsqu'elle est désactivée. La limite de l'échantillon pour les logiciels malveillants est de 2 500 fichiers avec l'analyse approfondie activée et de 600 lorsqu'elle est désactivée. Ces analyses sont limitées et ne constituent pas une inspection complète de chaque fichier.

Lancer l'analyse et lire un rapport

Première analyse

  1. Ouvrez "Security Scan" > "Scan & Report".
  2. Cliquez sur "Run scan now".
  3. Examinez le score, la date, la durée de l'analyse et les résultats.
  4. Lisez d'abord les résultats "Critical" et "High", puis "Medium" et "Low".
  5. Inspectez chaque élément concerné et suivez les étapes de correction manuelle applicables.
  6. Cliquez sur "Re-scan now" après avoir effectué les corrections.

Le rapport est organisé comme suit :

Groupe Éléments à examiner
"Version & known vulnerabilities" Versions de PrestaShop et de PHP, ainsi que les modules installés couverts par les données d'alertes de sécurité fournies.
"Exposed files & endpoints" Fichiers de gestion de versions, sauvegardes, dossiers d'installation, fichiers de diagnostic, listes de répertoires, exposition de la configuration, permissions et indicateurs associés de protection du serveur.
"Code-level static scan" Contrôles de motifs limités pour les entrées SQL potentiellement dangereuses dans les fichiers PHP des modules. Inspectez le code environnant avant de considérer une correspondance comme une vulnérabilité.
"Malware & file integrity" PHP dans les emplacements d'images ou de téléversement et signature de chargeur obscurci fournie. Le rapport précise aussi que la comparaison des empreintes du cœur nécessite un manifeste de version officiel.
"Hardening & configuration" SSL, attributs des cookies, protection du dossier d'administration, indicateurs de jetons et de verrouillage des connexions, modules abandonnés et indicateurs de comptes administrateur récents.

Le scanner ne compare pas tous les fichiers du cœur aux empreintes des versions officielles. Ses motifs de logiciels malveillants et ses contrôles de code peuvent manquer des problèmes et signaler du code légitime. Un résultat sans alerte signifie que ces contrôles n'ont trouvé aucun problème du type qu'ils recherchent.

Score et historique

Le score commence à 100. Le poids attribué à chaque problème détecté est déduit du score, qui reste compris entre 0 et 100.

Note Score
A 90 à 100
B 75 à 89
C 60 à 74
D 40 à 59
F Moins de 40

Ouvrez "Security Scan" > "History" pour comparer les 30 derniers résumés enregistrés. Chaque ligne affiche la date, le score, la note, le nombre de problèmes et le déclencheur. "History" est une liste de résumés ; la page d'analyse affiche le dernier rapport.

Utilisez le score pour décider quoi examiner en premier. Il n'atteste pas que la boutique est sûre et ne constitue ni un test d'intrusion ni un rapport de réponse à incident. Si vous suspectez une compromission active, préservez les preuves et organisez une investigation de l'incident avant de supprimer des fichiers.

Confidentialité et connexion facultative à un parc

Fonctionnement local

L'analyse normale lit les fichiers locaux, la configuration et les données de base de données via une protection limitant les requêtes à la lecture seule. Elle stocke ses résultats localement. Lorsque les contrôles d'URLs publiques sont activés, elle effectue aussi des requêtes protégées vers la boutique elle-même. Le processus d'analyse local ne téléverse pas son rapport vers mypresta.rocks.

Parc géré

L'inscription au parc est facultative et n'est pas nécessaire aux analyses locales. Le contrôleur "Fleet Connector" existe mais est masqué dans le menu latéral. Ouvrez-le via le lien de connexion fourni par votre processus de gestion de parc.

Sur cet écran, saisissez "Hub URL" et "Enrollment token" provenant de votre hub Security Revolution, puis cliquez sur "Connect this shop". Après l'inscription, utilisez "Poll hub now" pour vérifier la connexion et consultez "Connector status", "Last poll" et "Last error".

L'inscription connecte la boutique à un processus de rapport distant et autorise les demandes d'analyse signées et consenties. Les résultats partagés via ce processus sortent du fonctionnement uniquement local décrit ci-dessus. Protégez les jetons d'inscription et d'interrogation.

Exécuter via une automatisation

Le module ne fournit ni commande CLI de scanner ni planification automatique des analyses. Si vous gérez le serveur, vous pouvez initialiser la boutique souhaitée et appeler le service depuis votre propre script PHP :

require '/var/www/html/config/config.inc.php';
require _PS_MODULE_DIR_ . 'mprsecurityscan/vendor/autoload.php';

$run = \MPRSecurityScan\Service\ScanRunner::runAndStore('cron', null, [
    'allow_network' => false,
    'deep_scan' => true,
]);

echo 'Scan #' . (int) $run['id_scan'] . ' stored' . PHP_EOL;

Remplacez le chemin d'initialisation par le chemin réel de votre boutique. Exécutez le script avec un compte pouvant lire les fichiers de la boutique et accéder à sa base de données. L'argument cron étiquette le déclencheur enregistré ; il ne crée pas de tâche planifiée.

Vérifier et dépanner

Confirmer la première exécution

Vérifiez que la date du rapport change, qu'un score apparaît et que "History" gagne une ligne. Examinez les erreurs de contrôle signalées ainsi que les résultats. Après une correction manuelle, lancez une autre analyse et comparez le contrôle concerné.

Problèmes courants

  • Les contrôles d'exposition ne donnent aucun résultat. Vérifiez l'interrupteur "Confirm exposure by self-checking public URLs", le domaine de la boutique et la capacité du serveur à joindre sa propre adresse publique. Lorsque cet interrupteur est désactivé, l'analyse ne peut pas savoir si un fichier est accessible de l'extérieur.
  • L'analyse prend trop de temps. Désactivez "Deep scan (code & malware heuristics)" et réessayez. Vérifiez la limite d'exécution de l'hébergement et l'accès aux fichiers si l'échec persiste.
  • Une alerte de code ou de logiciel malveillant semble incorrecte. Comparez le fichier indiqué à une source connue comme saine. Une correspondance de motif ne justifie pas à elle seule sa suppression.
  • Aucun historique ou erreur de table du module. Ouvrez "Security Scan" > "Settings" > "System Check" et inspectez le résultat de l'infrastructure du module.

Désinstaller

Enregistrez les rapports dont vous avez besoin avant de désinstaller via "Module Manager". La désinstallation supprime le menu du module, ses tables déclarées, dont l'historique des analyses et les enregistrements du connecteur, ainsi que sa configuration. La réinstallation ne restaure pas cet historique.

Questions

1

Quelle est la différence entre Security Scan et Security Revolution ?

Security Scan sert uniquement à la détection : il affiche les problèmes détectés, un score de 0 à 100 et les étapes de correction manuelle. Security Revolution ajoute une protection active et une surveillance, avec un pare-feu, la sécurité de l’administration, des contrôles d’intégrité des fichiers et la gestion d’un parc de boutiques.

Problèmes connus

5

Dernière analyse impossible à afficher

RésoluMis à jour :
Corrigé dans : 1.1.10
Le tableau de bord pouvait ne pas charger la dernière analyse car sa recherche échouait.

Contrôles de vulnérabilité manquant des problèmes ou signalant des versions non touchées

RésoluMis à jour :
Corrigé dans : 1.1.7
Certains contrôles d’avis de sécurité pouvaient manquer des versions de PrestaShop touchées ou signaler à tort des versions non touchées.

Paramètres sûrs et versions corrigées signalés

RésoluMis à jour :
Corrigé dans : 1.1.3
Les analyses de sécurité pouvaient émettre de fausses alertes pour la protection des cookies, des modules de commande corrigés et des versions de PrestaShop hors de la plage d’un avis de sécurité.

Renforcement de la sécurité

RésoluMis à jour :
Corrigé dans : 1.1.3
Renforcement de la sécurité.

Nombre de commandes distantes incorrect

RésoluMis à jour :
Corrigé dans : 1.1.2
La vérification des demandes d’analyse distantes pouvait afficher un nombre de commandes incorrect.

Demandes de fonctionnalités

3

Implémenté

Analyse de sécurité locale

Implémenté
Analysez la boutique localement et consultez le score de sécurité, les résultats, les conseils de correction manuelle et l'historique des analyses.

Connexion à la sécurité centralisée

Implémenté
Inscrivez la boutique dans une vue d'ensemble centralisée de la sécurité et acceptez les demandes d'analyse à distance.

Aide sur les contrôles de sécurité

Implémenté
Consultez dans le module les explications sur les groupes de contrôles de sécurité, la notation et les limites des analyses.

Journal des modifications

v1.1.1

  • Addedthe signed Security Fleet connector used by explicit, consent-based fleet workflows.
  • Hardened the scan runner's read-only database guard so local checks cannot execute write SQL.
  • ImprovedBack Office report persistence and history data for repeated scan comparisons.
  • Refreshed package metadata, documentation links and release content for the free mypresta.rocks product page.
Versions précédentes

v1.1.0

  • Addedthe Back Office Scan & Report dashboard with a clear 0-100 score and A-F grade.
  • Addedscan history so merchants can compare scores after manual fixes.
  • Addedoptional deep-scan mode for slower static code and malware heuristics.
  • Addedpublic-URL exposure confirmation for shops that allow same-domain self-check requests.
  • Addedstandard MPR admin pages for configuration, support, update, license and integrity checks.

v1.0.0

  • Initialfree Security Scan release for PrestaShop.
  • Addedlocal detection for PrestaShop/PHP/module version risk and curated CVE indicators.
  • Addedexposed file and endpoint checks for git folders, backups, install remnants, phpinfo files and readable configuration paths.
  • Addedhardening checks for SSL, cookie flags, debug mode and common production-safety settings.
  • Addedheuristic code and malware indicators with manual fix guidance for every finding.

Demo

Testez le module complet

  • Boutique de démo prête Découvrez une boutique de démo prête dans votre navigateur.
  • Sans inscription Ni compte, ni e-mail, ni domaine de boutique requis.

En ouvrant cette démo, vous acceptez les conditions de la démo et la politique de confidentialité.

Chargement...
Retour en haut