imunify-response

Utiliser lors d'incidents de sécurité ou de faux positifs d'Imunify360 sur un serveur cPanel/WHM avec CloudLinux. Déclencheurs : « Imunify a bloqué un client », « faux positif de ModSecurity/WAF », « je ne peux pas accéder à mon WordPress / il me demande un captcha », « a détecté un malware dans un compte », « IP légitime bloquée », « je veux whitelister une IP », « un fichier légitime est marqué comme malveillant », « attaque par force brute ». Guide de diagnostic d'abord ; la désactivation des protections ou le nettoyage des fichiers est confirmé avec l'opérateur avant exécution.

Qu'est-ce que imunify-response ?

Imunify-response est un skill conçu pour répondre aux incidents de sécurité et aux faux positifs liés à Imunify360 sur des serveurs cPanel/WHM exécutant CloudLinux. Son objectif principal est de guider le diagnostic avant toute action, en identifiant la cause réelle du blocage (WAF, force brute, graylist, malware) plutôt que de désactiver aveuglément les protections. Le skill propose des commandes CLI concrètes pour interroger l'agent Imunify360, gérer les listes blanches et noires, analyser les malwares, soumettre des faux positifs, et ajuster les configurations. Il insiste sur la règle de ne jamais désactiver les modules de sécurité globaux pour un cas client, mais de privilégier des exceptions ciblées (IP, fichier, utilisateur). Toute action modifiant l'état du serveur (nettoyage, restauration, désactivation) doit être confirmée explicitement par l'opérateur avant exécution. Ce skill est destiné aux administrateurs système gérant des serveurs cPanel/WHM avec Imunify360, et fonctionne via l'interface en ligne de commande de l'agent.

Compatible avec~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/leoarayas/agent-skills/tree/main/imunify-response

Installed? Explore more Développement et programmation skills: steipete/bluebubbles, steipete/eightctl, steipete/blucli · View all 6 →

Demander à votre IA préférée

Ouvre une nouvelle conversation avec cette compétence d'agent déjà préchargée.

Documentation

Imunify360 — réponse aux incidents et faux positifs

Serveur cPanel/WHM + CloudLinux. La réaction appropriée face à « Imunify me bloque » est de comprendre CE QUI a déclenché le blocage avant de désactiver quoi que ce soit. Presque jamais la solution n'est de désactiver la protection ; il s'agit de whitelister ce qui est légitime et de documenter l'exception.

Règles de sécurité

  1. Confirmer l'hôte (hostname -f) avant d'agir.
  2. Ne pas désactiver les modules de sécurité globaux pour résoudre le cas d'un client. Résoudre avec l'exception la plus restreinte possible (IP, fichier, utilisateur).
  3. Nettoyage de malware, restauration et désactivation de protections : CONFIRMER avant.
  4. Toute exception (whitelist, règle désactivée) est documentée avec motif et date.

0. État de l'agent

imunify360-agent version
systemctl status imunify360            # service imunify360 status sur CL6
imunify360-agent doctor                # diagnostic interne de l'agent
tail -100 /var/log/imunify360/console.log

1. Lire l'incident (qu'est-ce qui a bloqué le client ?)

Le détail se trouve dans l'onglet Incidents de l'interface utilisateur ; le champ Sensor indique l'origine. Les blocages d'Active Response et PAM apparaissent comme OSSEC. Avant de toucher aux règles, identifier : était-ce WAF (ModSecurity), force brute (OSSEC/PAM), graylist, ou malware ?

# L'IP du client est-elle dans une liste ?
imunify360-agent ip-list local list --purpose white --by-ip 1.2.3.4
imunify360-agent ip-list local list --purpose black --by-ip 1.2.3.4

2. IP légitime bloquée → whitelist

ip-list est la commande en vigueur ; whitelist/blacklist fonctionnent toujours comme alias dans de nombreuses versions mais sont dépréciés.

# Ajouter/supprimer (forme pratique qui continue de fonctionner) :
imunify360-agent whitelist ip add 1.2.3.4 --comment "IP bureau client X - 2026-06"
imunify360-agent whitelist ip delete 1.2.3.4
imunify360-agent blacklist ip add 9.9.9.9 --comment "scanner abusif"

# Consulter les listes (forme en vigueur) :
imunify360-agent ip-list local list --purpose white

3. Faux positif de WAF / ModSecurity

D'abord localiser la règle qui a déclenché (champ de l'incident). Si l'IP est légitime, la whitelister (section 2) suffit généralement. Pour ajuster les seuils ou les règles :

Config principale : /etc/sysconfig/imunify360/imunify360.config
Seuil PAM (BFM) : /etc/pam_imunify/i360.ini

Ne pas désactiver un ensemble de règles complet pour un cas ponctuel ; whitelister l'IP ou créer l'exception minimale. Tout changement dans ces fichiers : CONFIRMER et sauvegarder avant.

4. Malware dans un compte

# Scanner un compte (exclure maildir accélère et évite le bruit) :
imunify360-agent malware on-demand start --path=/home/UTILISATEUR --ignore-mask=/home*/*/mail

# Scanner tous les comptes :
imunify360-agent malware on-demand start --path=/home*/*/ --ignore-mask=/home*/*/mail

# Lister les fichiers malveillants (limite par défaut 50) :
imunify360-agent malware malicious list --limit 100

Nettoyage (CONFIRMER avant) : examiner la liste des malveillants et nettoyer depuis l'action d'Imunify (interface utilisateur/cleanup) ou, si le compte est très compromis, restaurer depuis une sauvegarde saine antérieure à l'infection. Vérifier la syntaxe de cleanup en vigueur sur le serveur avant de l'appliquer à l'aveugle. Après nettoyage : changer les mots de passe, mettre à jour le CMS/plugins et rescanner.

5. Fichier légitime marqué comme malveillant → faux positif

imunify360-agent submit false-positive --reason "thème propre, code interne" /home/UTILISATEUR/public_html/fichier.php
# Cas inverse (quelque chose de malveillant passé pour sain) :
imunify360-agent submit false-negative /chemin/complet/vers/le/fichier

Pour que le scanner ignore un fichier/dossier de façon stable, on utilise la whitelist du scanner (JSON avec path/reason/md5/recursive). Documenter le motif.

6. « Il me demande un captcha / je ne peux pas entrer »

Il s'agit généralement de graylist (l'IP du client est devenue grise en raison d'un comportement suspect) ou d'Active Response. Confirmer avec la section 1 et, si l'IP est celle du client, whitelister. Le captcha invisible et les timeouts d'OSSEC (défaut 600s) se gèrent par configuration.

Quand NE PAS désactiver les protections

  • Si le doute est « je désactive le WAF pour que ça marche » → presque toujours c'est un whitelist d'IP ou une exception de fichier, pas la désactivation du module.
  • Désactiver HardenedPHP ou désinstaller Imunify peut casser les mises à jour d'Apache/PHP : jamais comme raccourci de support.

Les actions qui changent l'état (nettoyer, restaurer, éditer la config, désactiver des modules) sont proposées et exécutées uniquement avec l'accord explicite de l'opérateur.

Individual skills in this repo

This repo contains 2 individual skills — each has its own dedicated page.

Skills associés