Skip to main content
  1. Concetti/

Sudoers And Privileges

·2 mins
Alessio Barnini
Author
Alessio Barnini
Table of Contents

Cos'è
#

Il sistema sudo (SuperUser DO) permette a utenti fidati di eseguire comandi con i privilegi di sicurezza di un altro utente (normalmente root).

Come funziona
#

Il file /etc/sudoers definisce le policy. Il kernel controlla se l'utente che invoca sudo appartiene a un gruppo autorizzato o è presente nel file.

       [ UTENTE ] ───▶ Digita "sudo apt update"
    ┌─────┴─────┐
    │  SUDOERS  │ ◀─── Controlla /etc/sudoers + /etc/group
    └─────┬─────┘
   ┌──────┴──────┐
   │ AUTORIZZATO │ ───▶ Chiede password dell'utente
   └──────┬──────┘
   ┌──────┴──────┐
   │   KERNEL    │ ───▶ Esegue come UID 0 (ROOT)
   └─────────────┘

Comandi Chiave
#

  • sudo -l: Mostra quali privilegi sudo hai (molto utile per Privilege Escalation).
  • sudo visudo: Edita il file /etc/sudoers in sicurezza.
  • sudo usermod -aG sudo [user]: Promuove un utente a Sudoer.

Perché è importante per Blue/Red Team
#

  • Red Team: Cercare utenti nel gruppo sudo o con permessi NOPASSWD nel file sudoers è la via più rapida per la Privilege Escalation.
  • Blue Team (Hardening): Limitare l'uso di sudo allo stretto necessario. Usare il principio del "Least Privilege" (Minimo Privilegio).

Scenario Reale
#

Trovi un utente deploy che può eseguire sudo /usr/bin/python3 senza password. Come attaccante, puoi usare python per spawnare una shell root: sudo python3 -c 'import os; os.system("/bin/bash")'. Questo è un classico esempio di configurazione sudo errata.

Collegato a
#

Related