⚔ Empêcher les cracks d'utiliser des scripts Shell sur Linux
Introduction
Ce tutoriel explique comment sécuriser un système Linux contre l'exécution de scripts Shell malveillants, souvent utilisés par des cracks pour contourner les protections de sécurité. Nous utiliserons trois approches : restreindre l'exécution des scripts par des permissions utilisateur, activer des profils de sécurité avancés avec AppArmor ou SELinux, et configurer un pare-feu pour limiter les accès réseau utilisés par des scripts malveillants.
Prérequis
• Accès au terminal avec des droits root ou SUDO.
• Outils AppArmor ou SELinux installés sur le système.
• Connaissance de base des commandes Shell et de la gestion des fichiers Linux.
• iptables ou ufw installés pour la gestion des pare-feu.
Méthodologie
Introduction
• Nous utiliserons trois approches :
• Méthode 1 : Restreindre les permissions utilisateur pour l'exécution des scripts.
• Méthode 2 : Activer et configurer des profils de sécurité avec AppArmor ou SELinux.
• Méthode 3 : Configurer le pare-feu pour limiter les connexions réseau suspectes.
Avantages
Avantage de la méthode 1 : Simplicité et efficacité pour limiter les permissions d’exécution.
Avantage de la méthode 2 : Sécurité renforcée grâce à des profils personnalisés avec AppArmor ou SELinux.
Avantage de la méthode 3 : Bloque les connexions sortantes ou entrantes utilisées par des scripts malveillants.
Inconvénients
Inconvénient de la méthode 1 : Nécessite une gestion rigoureuse des utilisateurs et des permissions.
Inconvénient de la méthode 2 : Peut entraîner des conflits ou des restrictions involontaires si mal configurée.
Inconvénient de la méthode 3 : Des règles mal configurées peuvent bloquer des services légitimes.
⚙ Étapes à suivre pour la méthode 1
• Identifiez les scripts exécutables par les utilisateurs non privilégiés :
• Révoquez les permissions d'exécution sur un script particulier :
• Limitez l'accès à des répertoires sensibles pour les utilisateurs non privilégiés :
• Créez un utilisateur sans permissions Shell pour exécuter des tâches spécifiques :
Pour de plus amples informations
• Gestion des permissions utilisateur Linux
⚙ Étapes à suivre pour la méthode 2
• Activez AppArmor ou SELinux sur votre système. Exemple pour AppArmor :
• Listez les profils actifs et vérifiez leur statut :
• Créez un profil personnalisé pour restreindre un script :
• Appliquez le profil généré et assurez-vous qu’il est en mode appliqué :
• Si vous utilisez SELinux, assurez-vous que votre système est en mode Enforcing :
Pour de plus amples informations
• Documentation sur AppArmor et SELinux
⚙ Étapes à suivre pour la méthode 3
• Bloquez l’accès réseau pour des scripts suspects avec iptables :
• Limitez l’accès réseau à des ports spécifiques avec ufw :
• Surveillez les connexions réseau suspectes avec la commande netstat :
• Rendez les règles iptables persistantes :
Pour de plus amples informations
• Documentation sur iptables et ufw
Astuce
Surveillez les journaux système pour identifier les tentatives d’exécution de scripts non autorisés. Utilisez journalctl pour afficher les événements en temps réel :
Pour de plus amples informations
• Surveillance des journaux Linux
Mise en garde
Un blocage excessif peut entraîner l’interruption de services critiques. Testez vos configurations dans un environnement de test avant de les appliquer en production.
Conseil
Maintenez votre système à jour et installez des outils de détection d’intrusion comme Fail2Ban ou Tripwire pour renforcer la sécurité contre les scripts malveillants.
Pour de plus amples informations
• Fail2Ban et Tripwire pour Linux
Solution alternative
Utilisez Auditd pour surveiller les activités liées à l’exécution de scripts Shell et détecter les comportements suspects en temps réel.
Pour de plus amples informations
• Documentation sur Auditd
Conclusion
En appliquant ces méthodes, vous renforcerez la sécurité de votre système Linux contre les scripts Shell malveillants. Assurez-vous de surveiller régulièrement vos journaux et d’ajuster vos configurations en fonction des nouvelles menaces.
Source : Tutoriaux-Excalibur, merci de partager.

Ce tutoriel explique comment sécuriser un système Linux contre l'exécution de scripts Shell malveillants, souvent utilisés par des cracks pour contourner les protections de sécurité. Nous utiliserons trois approches : restreindre l'exécution des scripts par des permissions utilisateur, activer des profils de sécurité avancés avec AppArmor ou SELinux, et configurer un pare-feu pour limiter les accès réseau utilisés par des scripts malveillants.

• Accès au terminal avec des droits root ou SUDO.
• Outils AppArmor ou SELinux installés sur le système.
• Connaissance de base des commandes Shell et de la gestion des fichiers Linux.
• iptables ou ufw installés pour la gestion des pare-feu.


• Nous utiliserons trois approches :
• Méthode 1 : Restreindre les permissions utilisateur pour l'exécution des scripts.
• Méthode 2 : Activer et configurer des profils de sécurité avec AppArmor ou SELinux.
• Méthode 3 : Configurer le pare-feu pour limiter les connexions réseau suspectes.








⚙ Étapes à suivre pour la méthode 1
• Identifiez les scripts exécutables par les utilisateurs non privilégiés :
Code:
find / -perm -u+x -type f 2>/dev/null
• Révoquez les permissions d'exécution sur un script particulier :
Code:
sudo chmod -x /chemin/vers/script.sh
• Limitez l'accès à des répertoires sensibles pour les utilisateurs non privilégiés :
Code:
sudo chmod -R 700 /chemin/vers/répertoire
• Créez un utilisateur sans permissions Shell pour exécuter des tâches spécifiques :
Code:
sudo useradd -s /usr/sbin/nologin NomUtilisateur

• Gestion des permissions utilisateur Linux
⚙ Étapes à suivre pour la méthode 2
• Activez AppArmor ou SELinux sur votre système. Exemple pour AppArmor :
Code:
sudo systemctl enable apparmor
Code:
sudo systemctl start apparmor
• Listez les profils actifs et vérifiez leur statut :
Code:
sudo aa-status
• Créez un profil personnalisé pour restreindre un script :
Code:
sudo aa-genprof /chemin/vers/script.sh
• Appliquez le profil généré et assurez-vous qu’il est en mode appliqué :
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

• Documentation sur AppArmor et SELinux
⚙ Étapes à suivre pour la méthode 3
• Bloquez l’accès réseau pour des scripts suspects avec iptables :
Code:
sudo iptables -A OUTPUT -m owner --uid-owner NomUtilisateur -j DROP
• Limitez l’accès réseau à des ports spécifiques avec ufw :
Code:
sudo ufw deny out 80
• Surveillez les connexions réseau suspectes avec la commande netstat :
Code:
sudo netstat -tulpn | grep NomProcessus
• Rendez les règles iptables persistantes :
Code:
sudo netfilter-persistent save

• Documentation sur iptables et ufw

Surveillez les journaux système pour identifier les tentatives d’exécution de scripts non autorisés. Utilisez journalctl pour afficher les événements en temps réel :
Code:
sudo journalctl -f

• Surveillance des journaux Linux

Un blocage excessif peut entraîner l’interruption de services critiques. Testez vos configurations dans un environnement de test avant de les appliquer en production.

Maintenez votre système à jour et installez des outils de détection d’intrusion comme Fail2Ban ou Tripwire pour renforcer la sécurité contre les scripts malveillants.

• Fail2Ban et Tripwire pour Linux

Utilisez Auditd pour surveiller les activités liées à l’exécution de scripts Shell et détecter les comportements suspects en temps réel.

• Documentation sur Auditd

En appliquant ces méthodes, vous renforcerez la sécurité de votre système Linux contre les scripts Shell malveillants. Assurez-vous de surveiller régulièrement vos journaux et d’ajuster vos configurations en fonction des nouvelles menaces.
Source : Tutoriaux-Excalibur, merci de partager.