Tareas Cron y PATH
Abuso de tareas programadas
Tareas Cron y PATH es una lección gratuita de Ethical Hacking Academy en CoddyKit. Esta es la lección 3 de 4. Puedes leer la lección completa abajo gratuitamente — luego la practicas en el navegador con un editor de código integrado y un tutor de IA 24/7. Forma parte de la ruta de aprendizaje de Ethical Hacking Academy, y tu progreso se sincroniza en la web y la app de CoddyKit. El curso de Ethical Hacking Academy incluye 4 lecciones en total.
Los trabajos de cron como vía de escalada
El demonio cron ejecuta tareas programadas, con frecuencia como root. Si puede influir en lo que ejecuta un trabajo de cron de root —su script, sus entradas o la forma en que resuelve los comandos—, puede ejecutar código como root.
Enumerar cron
Lea la tabla de crontab del sistema y los directorios de cron. Anote quién ejecuta cada trabajo y qué scripts invoca.
cat /etc/crontab
ls -la /etc/cron.d /etc/cron.daily /etc/cron.hourly
cat /var/spool/cron/crontabs/* 2>/dev/nullBuscar trabajos ocultos
Algunos trabajos no aparecen en archivos evidentes. pspy supervisa la creación de procesos sin necesidad de root y revela los comandos de cron cuando se ejecutan, incluidos aquellos cuya configuración no puede leer.
./pspy64
# watch for periodic root processesScripts de Cron modificables
El abuso más sencillo: un trabajo de Cron ejecutado como root ejecuta un script en el que usted puede escribir. Añada un payload y espere a la siguiente ejecución.
ls -la /opt/backup.sh # -rwxrwxrwx root
echo "cp /bin/bash /tmp/rootbash; chmod +s /tmp/rootbash" >> /opt/backup.shInyección mediante comodines
Si un trabajo de Cron ejecutado como root usa un comodín como tar -czf backup.tar.gz * en un directorio que usted controla, puede crear archivos cuyos nombres actúen como opciones de línea de comandos (inyección de argumentos), lo que obliga a tar a ejecutar su comando.
touch -- "--checkpoint=1"
touch -- "--checkpoint-action=exec=sh shell.sh"
echo "cp /bin/bash /tmp/rb; chmod +s /tmp/rb" > shell.sh¿Qué es PATH?
PATH es la lista de directorios en los que el shell busca comandos. Cuando un script llama a un comando solo por su nombre (por ejemplo, backup en lugar de /usr/bin/backup), gana el primer archivo coincidente en PATH.
echo $PATH
# /usr/local/bin:/usr/bin:/binSecuestro de PATH
Si un script ejecutado como root llama a un comando sin una ruta absoluta y usted puede anteponer un directorio modificable a su PATH, coloque allí un binario malicioso con ese nombre. Root ejecutará su versión.
echo -e "#!/bin/bash\ncp /bin/bash /tmp/rb; chmod +s /tmp/rb" > /tmp/backup
chmod +x /tmp/backup
export PATH=/tmp:$PATHRuta relativa en binarios SUID
El mismo fallo aparece en binarios SUID personalizados que llaman a system("service ...") sin una ruta completa. Al secuestrar PATH se ejecuta su código como root — combinando el abuso de PATH con el concepto de SUID.
Explotación de un directorio modificable de PATH
Incluso sin cambiar PATH, si un directorio existente de PATH (como /usr/local/bin) es modificable y un trabajo ejecutado como root llama a un comando que se encuentra allí, solo tiene que colocar su binario en ese directorio.
ls -ld /usr/local/bin # check for write permissionSincronización del ataque
La escalada basada en Cron requiere paciencia — debe esperar a que se cumpla el horario. Anote el intervalo, coloque su payload y compruebe el resultado (por ejemplo, su shell SUID) después de que se ejecute el trabajo.
watch -n 5 ls -la /tmp/rootbashDefensas y ética
Los defensores deben usar rutas absolutas en los scripts, restringir los permisos de los scripts de Cron y sus directorios, evitar comodines en rutas controlables por un atacante y establecer un PATH seguro dentro de Cron. Pruebe estas técnicas únicamente donde tenga autorización.
Comprobación rápida
Compruebe sus conocimientos sobre Cron y PATH.
Resumen
Ha aprendido sobre la escalada mediante Cron y PATH:
- Los trabajos de Cron ejecutados como root que llaman a scripts modificables o usan comodines son explotables
- pspy revela procesos programados ocultos
- El secuestro de PATH abusa de los comandos llamados sin una ruta absoluta
- Coloque el payload, espere al horario y obtenga privilegios de root
Siguiente: exploits del kernel.
Preguntas frecuentes
¿La lección «Tareas Cron y PATH» es gratis?
Sí — el texto completo de «Tareas Cron y PATH» es gratis para leer aquí en la web. Para practicarla de forma interactiva (editor de código integrado y tutor de IA 24/7) y desbloquear el resto del curso de Ethical Hacking Academy, actualiza a CoddyKit PRO. El curso de Ethical Hacking Academy incluye 4 lecciones en total.
¿Qué aprenderé en «Tareas Cron y PATH»?
Abuso de tareas programadas Practicas Ethical Hacking Academy con código real que ejecutas directamente en el navegador, y un tutor de IA 24/7 responde tus preguntas mientras trabajas en la lección.
¿Necesito experiencia previa para empezar Ethical Hacking Academy?
No se requiere experiencia previa. Ethical Hacking Academy en CoddyKit está estructurado para principiantes hasta estudiantes avanzados, así que puedes empezar aquí o desde el inicio y avanzar a tu ritmo. Esta es la lección 3 de 4.
¿Cuánto tiempo toma la lección «Tareas Cron y PATH»?
La mayoría de las lecciones de CoddyKit toman alrededor de 5–10 minutos. Cada una es compacta e interactiva, así que avanzas constantemente y retomas exactamente por donde dejaste en la web y la app.
¿Puedo escribir y ejecutar código en esta lección de Ethical Hacking Academy?
Sí. Cada lección de Ethical Hacking Academy incluye un editor de código integrado, así que escribes y ejecutas código real directamente en tu navegador y obtienes retroalimentación instantánea de IA — sin configuración local necesaria.
Todas las lecciones de este curso
- Enumeración
- Abuso de SUID y Sudo
- Tareas Cron y PATH
- Exploits del kernel