⚔ Empêcher des scripts malveillants de s'exécuter à chaque tentative d'accès à Internet sur Linux
Introduction
Ce tutoriel explique comment sécuriser un système Linux contre les scripts malveillants qui tentent de s'exécuter automatiquement lors d'un accès à Internet. Nous utiliserons trois approches : bloquer les scripts avec des règles de pare-feu, désactiver ou surveiller les tâches planifiées (cron jobs), et configurer des outils de confinement comme AppArmor ou SELinux.
Prérequis
• Accès au terminal avec des droits root ou SUDO.
• Installation de iptables, ufw, ou un autre outil de gestion des pare-feu.
• Outils de surveillance des tâches comme crontab et at.
• Installation d'outils de sécurité comme AppArmor ou SELinux, si nécessaire.
Méthodologie
Introduction
• Nous utiliserons trois approches :
• Méthode 1 : Bloquer l’exécution des scripts malveillants avec un pare-feu.
• Méthode 2 : Désactiver ou surveiller les tâches planifiées suspectes.
• Méthode 3 : Renforcer la sécurité des scripts avec des outils comme AppArmor ou SELinux.
Avantages
Avantage de la méthode 1 : Bloque les scripts avant qu'ils n’accèdent à Internet.
Avantage de la méthode 2 : Élimine les tâches automatisées qui déclenchent les scripts.
Avantage de la méthode 3 : Ajoute une couche de sécurité au niveau de l'exécution des scripts.
Inconvénients
Inconvénient de la méthode 1 : Requiert une surveillance régulière des connexions réseau pour détecter les anomalies.
Inconvénient de la méthode 2 : Les scripts malveillants peuvent utiliser d'autres mécanismes pour se lancer.
Inconvénient de la méthode 3 : Peut nécessiter une configuration avancée pour éviter des restrictions inutiles.
⚙ Étapes à suivre pour la méthode 1
• Bloquez les connexions sortantes utilisées par les scripts avec iptables :
• Bloquez une adresse IP suspecte à laquelle un script tente de se connecter :
• Pour bloquer des plages d’adresses IP utilisées par des scripts malveillants :
• Si vous utilisez ufw, ajoutez une règle pour bloquer toutes les connexions sortantes d'un utilisateur suspect :
• Rendez les règles iptables persistantes :
Pour de plus amples informations
• Documentation sur iptables et ufw
⚙ Étapes à suivre pour la méthode 2
• Listez les tâches cron configurées pour tous les utilisateurs :
• Recherchez et supprimez une tâche suspecte :
• Surveillez les tâches planifiées avec at :
• Supprimez une tâche planifiée spécifique :
• Inspectez les fichiers cron dans les répertoires système pour trouver des scripts malveillants :
Pour de plus amples informations
• Documentation sur cron et at
⚙ Étapes à suivre pour la méthode 3
• Activez AppArmor sur votre système :
• Générez un profil pour restreindre un script suspect :
• Appliquez le profil en mode contraignant :
• Si vous utilisez SELinux, assurez-vous que votre système est en mode Enforcing :
• Pour vérifier les scripts bloqués par SELinux :
Pour de plus amples informations
• Documentation AppArmor et SELinux
Astuce
Installez Auditd pour surveiller en temps réel les scripts exécutés et détecter des activités suspectes :
Pour de plus amples informations
• Utilisation d’Auditd sur Linux
Mise en garde
La désactivation incorrecte de tâches ou de scripts système peut perturber le fonctionnement du système. Faites des sauvegardes avant toute modification.
Conseil
Gardez votre système et vos bases de données à jour pour garantir une protection contre les malwares exploitant des vulnérabilités connues.
Pour de plus amples informations
• Mises à jour Linux
Solution alternative
Utilisez Fail2Ban pour détecter et bloquer automatiquement les connexions réseau suspectes déclenchées par des scripts.
Pour de plus amples informations
• Documentation Fail2Ban
Conclusion
En appliquant ces méthodes, vous sécuriserez votre système Linux contre les scripts malveillants tentant de s'exécuter lors d’accès à Internet. Une surveillance régulière et des outils appropriés renforcent considérablement la sécurité.
Source : Tutoriaux-Excalibur, merci de partager.

Ce tutoriel explique comment sécuriser un système Linux contre les scripts malveillants qui tentent de s'exécuter automatiquement lors d'un accès à Internet. Nous utiliserons trois approches : bloquer les scripts avec des règles de pare-feu, désactiver ou surveiller les tâches planifiées (cron jobs), et configurer des outils de confinement comme AppArmor ou SELinux.

• Accès au terminal avec des droits root ou SUDO.
• Installation de iptables, ufw, ou un autre outil de gestion des pare-feu.
• Outils de surveillance des tâches comme crontab et at.
• Installation d'outils de sécurité comme AppArmor ou SELinux, si nécessaire.


• Nous utiliserons trois approches :
• Méthode 1 : Bloquer l’exécution des scripts malveillants avec un pare-feu.
• Méthode 2 : Désactiver ou surveiller les tâches planifiées suspectes.
• Méthode 3 : Renforcer la sécurité des scripts avec des outils comme AppArmor ou SELinux.








⚙ Étapes à suivre pour la méthode 1
• Bloquez les connexions sortantes utilisées par les scripts avec iptables :
Code:
sudo iptables -A OUTPUT -m owner --uid-owner NomUtilisateur -j DROP
• Bloquez une adresse IP suspecte à laquelle un script tente de se connecter :
Code:
sudo iptables -A OUTPUT -d IP_Suspecte -j DROP
• Pour bloquer des plages d’adresses IP utilisées par des scripts malveillants :
Code:
sudo iptables -A OUTPUT -d 192.168.1.0/24 -j DROP
• Si vous utilisez ufw, ajoutez une règle pour bloquer toutes les connexions sortantes d'un utilisateur suspect :
Code:
sudo ufw deny out from any to any app NomApplication
• Rendez les règles iptables persistantes :
Code:
sudo netfilter-persistent save

• Documentation sur iptables et ufw
⚙ Étapes à suivre pour la méthode 2
• Listez les tâches cron configurées pour tous les utilisateurs :
Code:
sudo crontab -l
• Recherchez et supprimez une tâche suspecte :
Code:
sudo crontab -r -u NomUtilisateur
• Surveillez les tâches planifiées avec at :
Code:
atq
• Supprimez une tâche planifiée spécifique :
Code:
atrm NuméroTâche
• Inspectez les fichiers cron dans les répertoires système pour trouver des scripts malveillants :
Code:
sudo grep -r "bash" /etc/cron*

• Documentation sur cron et at
⚙ Étapes à suivre pour la méthode 3
• Activez AppArmor sur votre système :
Code:
sudo systemctl enable apparmor
Code:
sudo systemctl start apparmor
• Générez un profil pour restreindre un script suspect :
Code:
sudo aa-genprof /chemin/vers/script.sh
• Appliquez le profil en mode contraignant :
Code:
sudo aa-enforce /chemin/vers/script.sh
• Si vous utilisez SELinux, assurez-vous que votre système est en mode Enforcing :
Code:
sudo setenforce 1
• Pour vérifier les scripts bloqués par SELinux :
Code:
sudo ausearch -m avc -ts recent

• Documentation AppArmor et SELinux

Installez Auditd pour surveiller en temps réel les scripts exécutés et détecter des activités suspectes :
Code:
sudo apt install auditd

• Utilisation d’Auditd sur Linux

La désactivation incorrecte de tâches ou de scripts système peut perturber le fonctionnement du système. Faites des sauvegardes avant toute modification.

Gardez votre système et vos bases de données à jour pour garantir une protection contre les malwares exploitant des vulnérabilités connues.

• Mises à jour Linux

Utilisez Fail2Ban pour détecter et bloquer automatiquement les connexions réseau suspectes déclenchées par des scripts.

• Documentation Fail2Ban

En appliquant ces méthodes, vous sécuriserez votre système Linux contre les scripts malveillants tentant de s'exécuter lors d’accès à Internet. Une surveillance régulière et des outils appropriés renforcent considérablement la sécurité.
Source : Tutoriaux-Excalibur, merci de partager.