Bonjour,
Suite aux 2 topics que j’avais lancé :
- Wordpress (et autres) mesure préventive - mode PHP (FPM/Fastcgi ?)
- Utilisez vous un anti-malware / un scanner de code PHP?
J’ai bien avancé sur le sujet alors je vous partage là où j’en suis :
Scan quotidien des sites
Pour ça nous avons recourt à isp-php-scanner (fait maison) qui est taillé pour les serveur ISPconfig, il parse (via l’API ISPconfig) tout les sites utilisant PHP et on :
- On alerte|met en quarantaine|supprime de la présence de ficheirs PHP là ou il n’y a pas de raisons d’en avoir (web/stats web/error)
- Si un site Wordpress est détecté :
- On alerte|met en quarantaine|supprime tous les fichiers PHP dans wp-content/uploads (sauf liste blanche)
- On supprime les thèmes et plugins inactifs (sauf liste include/exclude par domaine)
- On crée un environnement (wordpress) similaire (même version de core, extension, thème…) (wpcli)
- On lance un scan sur le site wordpress avec PHP-Antimalware-Scanner et en fonction des détections :
- Les Malwaires détectés son comparé à l’environnement similaire installé précédaient et on remplace le fichier infecté par le fichier original. Si ce n’est pas du core wordpress, on alerte|met en quarantaine|supprime.
- Si des fichiers .php sont détecté « en trop » dans l’arboressance / ou /wp-admin ou /wp-include par rapport à l’environement similaire alors on Alerte|Met en quarantaine|Supprime
- On (re)lance un scan sur l’ensemble du document_root avec PHP-Antimalware-Scanner et en fonction Alerte|Met en quarantaine|Supprime
Les rapports/alerts sont envoyés :
- Au détenteur du site (API ISPconfig), sur son e-mail déclaré, sur son compte client
- A la fiche Dolibarr si un site lui a été attribué
- A une adresse mise en dur dans le fichier de conf
Wordpress hebdo
2 tâches hebdo sont lancés une fois par semaines pour les wordpress détectés :
- Installation et configuration du plugin w3-total-cache (plugin WpCacheDeploy d’isp-php-scanner)
- Mise à jour de Wordpress et de tout ces plugins WpUpdate d’isp-php-scanner)
Bien sûr on peut refuser ces derniers points en cochant une case dans l’outil d’hébergement (explication ci-après)
Outils hébergement
L’utilisateur a accès à des « outils d’hébergement » (projet maison hoster-tools) Il offre une interface web qui se déploie avec son plugin HosterTools.php d’isp-php-scanner. Celle-ci permet à l’utilisateur :
- La gestion des quarantaines/listes blanches/rapport isp-php-scanner
- Si un wordpress est détect on peut s’'exclure des programmes de mises à jours hebdo et installation forcé d’un plugin de cache
- La protection / verrouillage de son site : change l’attribut immuable (
chattr +i
/chattr -i
) sur des fichiers et répertoires dans un le document_root du site. Il prend en charge trois états principaux :- lock : verrouille tout sous le document_root (l’utilisateur a accès à l’interface pour déverrouiller son site en cas de mise à jour par exemple…)
- unlock : déverrouille tout sous le document_root.
- mixe : verrouille tout sauf les chemins spécifiés dans une liste blanche, en combinant la liste blanche de la configuration globale.
Par défaut le mode « mixe » est déployé. Ce mode « mixe » détecte les CMS et exclus les répertoires nécessaires en écritures.
Si vous voulez que je développe certain point n’hésitez pas. C’est jeune alors les Readme sont pas très complets mais si ça intéresse mais que c’est pas limpide je peux développer.
David