Di seguito è riportato un profilo di esempio che ho creato per le app Web, in cui ho limitato i file / i comandi ai quali può accedere. Include profili a nginx, php-fpm and mysql
, nessun comando è consentito, solo poche directory / file per l'accesso in lettura / scrittura / flock e socket di rete.
(Il resto si trova in mio repository github )
/usr/bin/php-fpm {
#include <abstractions/base>
capability chown,
capability kill,
capability setgid,
capability setuid,
# Suppress the "DENY" error logs
deny /usr/bin/bash x,
/etc/php/** r,
/run/php-fpm/ r,
/run/php-fpm/php-fpm.* w,
/usr/bin/php-fpm mr,
/usr/lib/php/modules/* mr,
/var/html/{**,} r,
# logs
/var/log/ r,
/var/log/php*.log w,
# Web folders that need write access
/var/html/icy/{cache,logs,files,images,downloads}/{**,} rwk,
}
In questo momento, credo che dopo un exploit remoto riuscito, l'utente malintenzionato possa influire solo sulla cartella dell'app Web e non possa compromettere ulteriormente il sistema,
Quindi la mia domanda è, c'è ancora una possibilità che l'aggressore possa uscire da questo?
E come?