Runtime Security (Falco)

Objectifs

Utiliser Falco pour détecter des comportements suspects à l’intérieur des conteneurs en temps réel.

Prerequisites

# Vérifier que le service Falco est actif
systemctl status falco

Détecter une intrusion

Utilisez kubectl exec pour entrer dans un pod et tentez de lire un fichier sensible.

Solution
# Dans un terminal
kubectl exec -it <pod_name> -- sh
cat /etc/shadow

# Dans un autre terminal, observez les logs Falco
tail -f /var/log/syslog | grep "Notice"

Créer une règle personnalisée

Modifiez /etc/falco/falco_rules.local.yaml pour créer une alerte spécifique.

Solution
- rule: Shell au sein d'un conteneur
  desc: Détecter toute ouverture de shell
  condition: container.id != host and proc.name = sh
  output: "Shell ouvert dans le conteneur (user=%user.name container=%container.id)"
  priority: WARNING