> For the complete documentation index, see [llms.txt](https://hacking-notes.jord4n.pro/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://hacking-notes.jord4n.pro/es/privesc.md).

# Escalada de privilegios en Linux

La escalada de privilegios en Linux es la fase de postexplotación centrada en pasar de una shell con pocos privilegios a root. El objetivo es enumerar el sistema local, identificar malas configuraciones, abusar de rutas de ejecución de confianza y convertir permisos débiles en una shell de root confiable.

Esta sección cubre técnicas prácticas de escalada de privilegios en Linux utilizadas durante pruebas de penetración, máquinas CTF, entornos de laboratorio y revisiones locales de postexplotación.

## Flujo de trabajo de escalada de privilegios

1. Estabiliza la shell e identifica el usuario actual, los grupos, el nombre del host, el kernel y la distribución.
2. Enumera los privilegios sudo, los binarios SUID, las capacidades, los archivos escribibles, los trabajos cron, las exportaciones NFS y los servicios locales.
3. Revisa membresías de grupos como docker, lxd, adm y proxy para rutas de abuso directas.
4. Revisa el uso de PATH, la carga de bibliotecas compartidas, las importaciones de Python y los contextos de ejecución escribibles.
5. Valida las versiones del kernel y de los paquetes frente a CVE conocidas de escalada local de privilegios.
6. Exploita la ruta confirmada más segura y conserva la secuencia de comandos para el informe.

## Lista de verificación de enumeración manual

Úsalo cuando llegues a un host Linux y necesites un mapa local rápido antes de elegir una ruta de escalada de privilegios.

### Información básica del sistema

```bash
uname -a
cat /proc/version
cat /etc/issue
cat /etc/*-release
lsb_release -a 2>/dev/null
lscpu
uptime
```

Contexto de hardware y sistema de archivos:

```bash
cat /proc/cpuinfo
free -h
df -h
```

### Variables de entorno

```bash
env
set
echo $PATH
echo $HOME
echo $USER
```

### Enumeración de usuarios

```bash
whoami
id
groups
cat /etc/passwd
cut -d: -f1 /etc/passwd
grep -v '/nologin\|/false' /etc/passwd
cat /etc/shadow 2>/dev/null
cat /etc/group
```

Actividad e historial del usuario:

```bash
last
lastlog
history
cat ~/.bash_history 2>/dev/null
```

Acceso sudo:

```bash
sudo -l
cat /etc/sudoers 2>/dev/null
```

### Enumeración de red

Interfaces y rutas:

```bash
ifconfig -a 2>/dev/null
ip a
route 2>/dev/null
ip route
netstat -r 2>/dev/null
arp -a 2>/dev/null
ip neigh
```

Puertos y conexiones:

```bash
netstat -tuln 2>/dev/null
ss -tuln
netstat -tunap 2>/dev/null
ss -tunap
```

DNS, hosts y firewall:

```bash
cat /etc/resolv.conf
cat /etc/hosts
iptables -L 2>/dev/null
```

### Servicios en ejecución

```bash
service --status-all 2>/dev/null
ps aux
ps -ef
pstree 2>/dev/null
systemctl list-units --type=service 2>/dev/null
service service_name status 2>/dev/null
```

Scripts de inicio:

```bash
ls -la /etc/init.d/ 2>/dev/null
ls -la /etc/rc*.d/ 2>/dev/null
```

### Enumeración del sistema de archivos

Archivos ocultos y de configuración sensible:

```bash
find / -name "*.conf" -o -name "*.config" 2>/dev/null
find /home -name ".*" -type f 2>/dev/null
```

Contraseñas y artefactos sensibles:

```bash
grep -r "password" /etc/ 2>/dev/null
find /etc \( -name "*.conf" -o -name "*.config" \) -exec grep -l "password" {} \; 2>/dev/null
cat /var/apache2/config.inc 2>/dev/null
cat /var/lib/mysql/mysql/user.MYD 2>/dev/null
cat /root/anaconda-ks.cfg 2>/dev/null
cat ~/.bash_history 2>/dev/null
cat ~/.mysql_history 2>/dev/null
cat ~/.ssh/id_rsa 2>/dev/null
cat ~/.ssh/id_rsa.pub 2>/dev/null
```

Búsqueda de archivos interesantes:

```bash
find / -name "*.txt" 2>/dev/null
find / -name "*flag*" 2>/dev/null
find / -name "*.txt" 2>/dev/null | grep -i flag
grep -r "password" /home 2>/dev/null
grep -r "flag" /home 2>/dev/null
```

Permisos:

```bash
find / -type f -perm -o+w -not -path "/proc/*" 2>/dev/null
find / -type f -perm -o+w -not -path "/proc/*" -not -path "/sys/*" 2>/dev/null
find / -type d -perm -o+w -not -path "/proc/*" 2>/dev/null
find / -type f -perm -u=s 2>/dev/null
find / -type f -perm -g=s 2>/dev/null
find / -perm -o+x -type f 2>/dev/null
find / -type f -mtime -1 2>/dev/null
```

### Tareas programadas

```bash
cat /etc/crontab
ls -la /etc/cron.d/
ls -la /etc/cron.daily/
ls -la /etc/cron.hourly/
ls -la /etc/cron.monthly/
ls -la /etc/cron.weekly/
crontab -l
```

### Software instalado

```bash
dpkg -l 2>/dev/null
rpm -qa 2>/dev/null
which command_name 2>/dev/null
```

Rutas del servidor web:

```bash
cat /etc/apache2/apache2.conf 2>/dev/null
cat /etc/httpd/conf/httpd.conf 2>/dev/null
ls -la /var/www/ 2>/dev/null
ls -la /srv/www/ 2>/dev/null
```

### Comprobaciones rápidas de privilegios

```bash
find / -perm -4000 -type f -exec ls -la {} \; 2>/dev/null
ls -la /etc/passwd
sudo -l
echo $PATH | tr ':' '\n' | xargs -I {} ls -ld {} 2>/dev/null
find /etc/cron* -type f -perm -o+w 2>/dev/null
getcap -r / 2>/dev/null
```

### Herramientas de enumeración automatizada

Usa las herramientas automatizadas como ayuda, no como prueba. Conserva su salida y valida manualmente cada hallazgo antes de explotarlo.

```bash
curl -L https://github.com/carlospolop/PEASS-ng/releases/latest/download/linpeas.sh | sh
wget https://raw.githubusercontent.com/rebootuser/LinEnum/master/LinEnum.sh
chmod +x LinEnum.sh
./LinEnum.sh
wget https://raw.githubusercontent.com/diego-treitos/linux-smart-enumeration/master/lse.sh
chmod +x lse.sh
./lse.sh -l1
wget https://raw.githubusercontent.com/mzet-/linux-exploit-suggester/master/linux-exploit-suggester.sh
chmod +x linux-exploit-suggester.sh
./linux-exploit-suggester.sh
```

### Triage paso a paso

1. Recopila SO, kernel, distribución, CPU, almacenamiento y tiempo de actividad.
2. Confirma el usuario actual, los grupos, la shell, el acceso sudo y los archivos de cuenta legibles.
3. Enumera binarios SUID/SGID, reglas sudo, capacidades, trabajos cron, PATH, NFS y servicios.
4. Busca archivos escribibles, directorios escribibles, credenciales, claves, historiales y cambios recientes.
5. Ejecuta la enumeración automatizada si está permitido y luego verifica manualmente los hallazgos interesantes.
6. Trata los exploits del kernel como último recurso después de descartar rutas más seguras de mala configuración.

## Técnicas de escalada de privilegios en Linux

<table data-view="cards" data-full-width="false" data-search="false"><thead><tr><th></th><th></th><th></th><th data-hidden data-card-target data-type="content-ref"></th></tr></thead><tbody><tr><td><h3><i class="fa-terminal" style="color:$primary;">:terminal:</i></h3></td><td><h4>sudoers</h4></td><td>Técnicas de escalada de privilegios en sudoers de Linux, abuso de sudo -l, binarios permitidos, abuso de enlaces simbólicos y vulnerabilidades de la versión de sudo.</td><td><a href="/pages/3c30bbca512636466afe868110e42bf5df4db283">/pages/3c30bbca512636466afe868110e42bf5df4db283</a></td></tr><tr><td><h3><i class="fa-id-card" style="color:$primary;">:id-card:</i></h3></td><td><h4>Binarios SUID</h4></td><td>Notas de escalada de privilegios SUID en Linux para binarios vulnerables, flujos de trabajo de GTFOBins, PwnKit, Nmap, PHP, screen y binarios SUID personalizados.</td><td><a href="/pages/4e1e5ca228c9c9cd193cc11e0c3dbee317fcffd5">/pages/4e1e5ca228c9c9cd193cc11e0c3dbee317fcffd5</a></td></tr><tr><td><h3><i class="fa-clock" style="color:$primary;">:clock:</i></h3></td><td><h4>Trabajos cron</h4></td><td>Notas de escalada de privilegios de trabajos cron para scripts escribibles, tareas recurrentes de root, pspy64, trabajos de Logstash y abuso de ImageMagick.</td><td><a href="/pages/b5e14dd6264aef9ec0374e3b26b2f830f3aac7c2">/pages/b5e14dd6264aef9ec0374e3b26b2f830f3aac7c2</a></td></tr><tr><td><h3><i class="fa-linux" style="color:$primary;">:linux:</i></h3></td><td><h4>Dirty Pipe</h4></td><td>Notas sobre técnicas de escalada de privilegios en Linux con enumeración práctica, ejemplos de explotación y validación.</td><td><a href="/pages/bc3eaedac3ff91cffc6d3cb49fe83780c5fc23c3">/pages/bc3eaedac3ff91cffc6d3cb49fe83780c5fc23c3</a></td></tr><tr><td><h3><i class="fa-shield-halved" style="color:$primary;">:shield-halved:</i></h3></td><td><h4>Permisos</h4></td><td>Notas sobre malas configuraciones de permisos en Linux para archivos escribibles, abuso de /etc/passwd, Smart Enumeration y comprobaciones de menor privilegio.</td><td><a href="/pages/3069f2b5a532cbb072da387d568ec2cef3834634">/pages/3069f2b5a532cbb072da387d568ec2cef3834634</a></td></tr><tr><td><h3><i class="fa-spinner" style="color:$primary;">:spinner:</i></h3></td><td><h4>Capacidades</h4></td><td>Notas de escalada de privilegios por capacidades en Linux para cap_setuid, cap_dac_read_search, GTFOBins, abuso de Python, Perl, Vim, tac y tar.</td><td><a href="/pages/c9aca56ebaabbdb8dd453540d43f0a9af122fe10">/pages/c9aca56ebaabbdb8dd453540d43f0a9af122fe10</a></td></tr><tr><td><h3><i class="fa-route" style="color:$primary;">:route:</i></h3></td><td><h4>Secuestro de PATH</h4></td><td>Notas de escalada de privilegios por secuestro de PATH para llamadas a binarios relativas, precedencia de PATH escribible y reemplazo malicioso de comandos.</td><td><a href="/pages/42d79adfdd6cff7a84c279e4d6168da3c53a0da8">/pages/42d79adfdd6cff7a84c279e4d6168da3c53a0da8</a></td></tr><tr><td><h3><i class="fa-microchip" style="color:$primary;">:microchip:</i></h3></td><td><h4>Explotación del kernel</h4></td><td>Notas de exploits del kernel de Linux para escalada local de privilegios, Linux Exploit Suggester, Dirty COW, OverlayFS y CVE del kernel de Ubuntu.</td><td><a href="/pages/c46016cc0e53b63e449ac729ee98d31315179e94">/pages/c46016cc0e53b63e449ac729ee98d31315179e94</a></td></tr><tr><td><h3><i class="fa-network-wired" style="color:$primary;">:network-wired:</i></h3></td><td><h4>Comparticiones NFS</h4></td><td>Notas de escalada de privilegios en comparticiones NFS para no_root_squash, exportaciones escribibles, comparticiones montadas por el atacante y validación de payload SUID.</td><td><a href="/pages/512b78c25f1b52d524ce0e75af1b2177e89f4fa1">/pages/512b78c25f1b52d524ce0e75af1b2177e89f4fa1</a></td></tr><tr><td><h3><i class="fa-server" style="color:$primary;">:server:</i></h3></td><td><h4>Servicios y Systemd</h4></td><td>Notas de escalada de privilegios por servicios en Linux para archivos de servicio escribibles, binarios de servicio, unidades systemd y configuración insegura de demonios.</td><td><a href="/pages/3752d0719c1080ab1ee70d777f2e0cf3e5ecf9e8">/pages/3752d0719c1080ab1ee70d777f2e0cf3e5ecf9e8</a></td></tr><tr><td><h3><i class="fa-python" style="color:$primary;">:python:</i></h3></td><td><h4>Secuestro de bibliotecas de Python</h4></td><td>Notas de secuestro de bibliotecas de Python para abusar del orden de resolución de importaciones y de directorios de trabajo escribibles durante scripts de Python ejecutados con sudo.</td><td><a href="/pages/7eb34756be6fac8b17140a0046ddcf68337be33a">/pages/7eb34756be6fac8b17140a0046ddcf68337be33a</a></td></tr><tr><td><h3><i class="fa-users" style="color:$primary;">:users:</i></h3></td><td><h4>Grupos de usuarios</h4></td><td>Notas de escalada de privilegios por grupos locales en Linux para docker, lxd, adm, proxy, registros, reglas del host y abuso de contenedores.</td><td><a href="/pages/b0c5707c67e4eb1aaaaf9a70532cae92333091b1">/pages/b0c5707c67e4eb1aaaaf9a70532cae92333091b1</a></td></tr><tr><td><h3><i class="fa-docker" style="color:$primary;">:docker:</i></h3></td><td><h4>Escape de Docker</h4></td><td>Notas de escalada de privilegios por escape de Docker para credenciales predeterminadas de Docker Toolbox, manipulación de SUID, reutilización de contraseñas y pivotaje con claves SSH.</td><td><a href="/pages/9f0054ce5023b092cf763411748809de79c7f1be">/pages/9f0054ce5023b092cf763411748809de79c7f1be</a></td></tr><tr><td><h3><i class="fa-link" style="color:$primary;">:link:</i></h3></td><td><h4>Secuestro de bibliotecas compartidas</h4></td><td>Notas de secuestro de bibliotecas compartidas para abusar de objetos compartidos faltantes o escribibles cargados por binarios privilegiados de Linux.</td><td><a href="/pages/88b563c2198d55c24c4463da76591ba43dcceec5">/pages/88b563c2198d55c24c4463da76591ba43dcceec5</a></td></tr></tbody></table>

## Herramientas recomendadas

* [LinPEAS](https://github.com/carlospolop/PEASS-ng/tree/master/linPEAS) para la enumeración automatizada de escalada de privilegios en Linux.
* [pspy64](/es/privesc/cron-jobs/pspy64-cron-enumeration-linux-privilege-escalation.md) para detectar trabajos cron y procesos sin root.
* [Linux Exploit Suggester](/es/privesc/kernel-exploitation/linux-exploit-suggester-linux-privilege-escalation.md) para candidatos a exploits del kernel.
* [GTFOBins](https://gtfobins.github.io/) para sudo, SUID, capacidades y payloads de escape de shell.
* [Enumeración inteligente](/es/privesc/permissions/smart-enumeration-linux-privilege-escalation.md) para comprobaciones estructuradas de malas configuraciones locales.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://hacking-notes.jord4n.pro/es/privesc.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
