Saltar al contenido
Breachfolio
Ilustración principal de: Fundamentos de Linux para seguridad.
NIVEL 2 CIBERSEGURIDAD

Fundamentos de Linux para seguridad, el subconjunto que de verdad usas.

Los 25 comandos que teclearás cada día, los cinco que teclearás con prisas y los permisos de archivo que deciden quién manda en la máquina.

13 min de lectura Breachfolio Research

La mayoría del material de «introducción a Linux» te enseña Linux como sistema Unix. Nosotros vamos a enseñarte Linux como estación de trabajo de seguridad: lo que de verdad haces frente al teclado durante el reconocimiento, el triaje y la post-explotación.

La shell, en un párrafo

La shell es un programa que lee una línea, la ejecuta e imprime la salida. Tres caracteres especiales hacen casi todo el trabajo: | envía la salida a otro programa, > la envía a un archivo y && encadena dos comandos de forma que el segundo solo se ejecuta si el primero tiene éxito. A partir de ahí puedes construir cualquier cosa.

Los 25 comandos

Si sabes usar estos sin pensar, puedes leer el 80 % de los flujos de trabajo de seguridad del mundo real.

ComandoQué hacePara qué se usa
ls -laListar archivos con detalleReconocimiento, auditoría de permisos
cd / pwdMoverse / dónde estoySiempre
cat / lessLeer un archivoConfiguraciones, logs
grep -rBuscar texto de forma recursivaEncontrar secretos, errores
findBuscar por nombre / tamaño / fechaLocalizar archivos soltados
chmod / chownCambiar permisos / propietarioFortificación, movimiento lateral
ps -efListar procesosQué se está ejecutando
top / htopVista de procesos en vivoTriaje
netstat -tulpnPuertos abiertos + procesoQué está escuchando
ss -tulpnReemplazo modernoLo mismo
curl -vHTTP desde la CLIPruebas de API
wgetDescargar archivosTraer herramientas
ssh / scpShell remota / copiaMovimiento lateral
tarEmpaquetar / desempaquetar archivosExfiltración, despliegue
systemctlControl de serviciosPersistencia, auditoría
journalctlLeer logs de systemdTriaje
tail -fSeguir un logMonitorización en vivo
historyQué se tecleóAnálisis forense
sudoEjecutar como rootUso / auditoría de privilegios
id / whoamiQuién soy, en qué grupos estoyReconocimiento sobre ti mismo
uname -aInformación del kernelSelección de exploits
iptables -LReglas del firewallMapeo de salida
dig / hostConsulta DNSReconocimiento
scp / rsyncMover archivos de forma fiableCopias de seguridad, exfiltración
tmux / screenSesiones persistentesTrabajos largos

Permisos en cinco minutos

Cada archivo tiene tres tripletes de permisos: propietario, grupo y todos. Cada triplete tiene tres bits: lectura, escritura y ejecución.

$ ls -l /etc/shadow
-rw-r----- 1 root shadow 1832 May  6 14:01 /etc/shadow
   ^ propietario=root  grupo=shadow
   rw- = lectura+escritura para el propietario
   r-- = lectura para el grupo shadow
   --- = sin acceso para todos los demás

Forma numérica: cada triplete es un dígito de 0 a 7. chmod 750 file significa propietario=rwx, grupo=r-x, mundo=nada. Los números son lectura=4, escritura=2, ejecución=1.

SUID, la única nota al pie que importa

Un archivo con el bit SUID activado se ejecuta como su propietario, no como tú. find / -perm -4000 -type f 2>/dev/null los lista todos. En una máquina comprometida, este es el primer sitio donde miras.

Los cinco comandos «con prisas»

Cuando la alerta acaba de saltar y el ingeniero sénior está en una reunión, estos son los que echas mano.

  1. last -a | head -20 — quién ha iniciado sesión hace poco y desde dónde.
  2. w — quién está en la máquina ahora mismo y qué está ejecutando.
  3. ss -tunap — sockets activos y el proceso detrás de cada uno.
  4. ls -lat /tmp /var/tmp /dev/shm | head — archivos recientes en los vertederos habituales.
  5. journalctl --since "1 hour ago" -p warning — avisos recientes en el log del sistema.

Tuberías: la jugada que duplica tu vocabulario efectivo

Dos comandos que ya conoces se pueden combinar en un tercero. Algunos ejemplos que merece la pena memorizar:

# Los 10 procesos que más memoria RSS consumen
ps -eo pid,rss,cmd --sort=-rss | head -11

# Encontrar todos los archivos escribibles por cualquiera bajo /etc
find /etc -type f -perm -o=w 2>/dev/null

# Inicios de sesión SSH fallidos recientes, agrupados por IP de origen
journalctl -u ssh | grep "Failed" | awk '{print $NF}' | sort | uniq -c | sort -rn

Memorizarlos no es lo importante. Lo importante es interiorizar la forma: listarfiltraragruparcontar. Una vez que la ves, escribirás las tuyas propias.

Preguntas frecuentes

¿Cuáles son los comandos de Linux más importantes para ciberseguridad?
Un conjunto de 25 comandos cubre el 80% de los flujos de trabajo reales: ls -la, grep -r, find, chmod/chown, ps -ef, netstat/ss -tulpn, curl -v, ssh/scp, systemctl, journalctl, sudo, id/whoami, uname -a e iptables -L, entre otros.
¿Qué es el bit SUID y por qué importa en seguridad?
Un archivo con el bit SUID activado se ejecuta como su propietario, no como el usuario que lo lanza. El comando find / -perm -4000 -type f 2>/dev/null los lista todos, y en una máquina comprometida es el primer sitio donde se busca una vía de escalada de privilegios.
¿Qué comandos ejecutar primero cuando salta una alerta de seguridad?
Los cinco comandos «con prisas»: last -a | head -20 (quién ha iniciado sesión), w (quién está conectado ahora), ss -tunap (sockets activos y su proceso), ls -lat /tmp /var/tmp /dev/shm | head (archivos recientes en vertederos habituales) y journalctl --since "1 hour ago" -p warning.
¿Cómo se leen los permisos de archivo en Linux?
Cada archivo tiene tres tripletes de permisos (propietario, grupo, todos), cada uno con tres bits: lectura, escritura y ejecución. En forma numérica cada triplete es un dígito de 0 a 7, donde lectura=4, escritura=2 y ejecución=1; por ejemplo chmod 750 significa propietario=rwx, grupo=r-x, resto=nada.