Encore un sujet de paramètrage antivirus (Debian 11)

Hello et meilleurs vœux à tous,

Comme beaucoup de gens je galère pour la mise en place de l’antivirus sur le téléchargement de fichiers. Le wiki anglais m’a appris que le processus pouvait être killed en cas de mémoire insuffisante donnant donc l’erreur :

clamav-daemon.service: Failed with result 'oom-kill'.

Ce point étant résolu en passant de 2 à 4 go sur mon public cloud, je n’arrive pourtant toujours pas à faire une analyse de fichier sans erreur :

L’antivirus n’a pas pu valider ce fichier (il est probablement infecté par un virus) !

J’ai les paramètres suivants dans ma config dolibarr :

chemin : /usr/bin/clamdscan
Paramètres supplémentaires : --fdpass

Bref, ce qui est recommandé par défaut quoi et le processus n’est plus « killed » pour défaut de mémoire ce qui enlève déjà une épine dans le pied.

Aux dernières nouvelle du log j’ai :

Thu Jan 4 18:02:58 2024 → ^File path check failure on: /var/www/mondolibarr

Le filepath (chemin) n’est pas /usr/bin/clamdscan comme renseigné par défaut y compris dans le conf.php.example?

Bonjour,

merci pour le message, je n’avais jamais vu qu’on pouvait scanner les fichiers avec clamav.
Du coup j’ai testé l’install rapidement en local et ça fonctionne bien.

Pour votre problème, activez la barre de debug de Dolibarr pour voir les logs et comprendre ce qui se passe.

J’obtiens ceci en faisant un test

Hello @hop, merci pour la piste!

Mes logs donnent ceci

Screenshot_20240104_210157

Je peux supposer, sans en être sur, que cela à un lien avec ce qu’indique la ligne dans le menu outils d’administration/infos sécurité qui dit :

À des fins de shell (comme la sauvegarde de tâches planifiées ou l’exécution d’un programme antivirus), vous devez conserver les fonctions PHP: exec

je viens commenter la ligne php_disable_fonction, et fait une recherche dans le php.ini d’une fonction exec seule, sans succès… Je n’ai pas de fonction exec seule, j’ai shell_exec, et pcntl_exec mais rien d’autre d’approchant.

sudo systemctl restart apache2… et même problème.

Vous avez une valeur de retour retval d’après vos log qui est renvoyée par exec comme vous pouvez le voir dans le code source de la fonction executeCLI donc logiquement vous avez bien la fonction exec de disponible

C’est un code erreur 2 qui est renvoyé donc visiblement un accès impossible au fichier (fichier inexistant ou peut être un problème de droits).

Avez-vous SElinux actif ? Si oui il faut autoriser clamav à accéder aux fichiers que vous souhaitez scanner.