Todas las lecciones Read in English

Seguridad a fondo · Unidad 22 · Lección 1 de 44

Escalada de privilegios en Linux

Comprende quién puede hacer qué: identidades, permisos, delegación y dependencias que sostienen los límites de privilegio en Linux.

9 minlista

ATT&CK TA0004 Privilege Escalation

Para prepararteEscalada de privilegios

Después de esta lección puedes

  • explicar cómo identidad del proceso y políticas determinan el acceso en Linux
  • distinguir permisos ordinarios de delegación privilegiada explícita
  • describir el límite de un servicio y una forma práctica de verificar su protección

Lecciones de esta unidad

Explorar 21 lecciones de este tema
  1. Identidad de procesos LinuxUsa una instantánea de credenciales para explicar una decisión de acceso a archivos.4 min
  2. Propietario, grupo y otrosElige la clase aplicable antes de evaluar una operación.3 min
  3. Los directorios controlan nombresDistingue listar un directorio de resolver un archivo dentro de él.3 min
  4. ACL: permisos para identidades concretasCalcula derechos efectivos a partir de una entrada y su máscara.3 min
  5. Permisos especiales con propósitoSepara la protección sticky de un directorio de los permisos sobre contenido.4 min
  6. Capacidades: dividir la autoridadDistingue una configuración de límites de la autoridad que se posee actualmente.4 min
  7. Delegar exige mirar más que un nombreRevisa tarea, identidad de destino y entradas de confianza de una delegación.4 min
  8. Una identidad para cada servicioComprueba si identidades de servicio separadas tienen acceso a datos realmente separado.3 min
  9. Las tareas programadas tienen dependenciasSepara la activación de un temporizador del éxito del trabajo y de su resultado verificado.4 min
  10. Las rutas de búsqueda expresan confianzaExplica qué demuestra una ubicación explícita y qué deja pendiente sobre una dependencia.4 min
  11. Las bibliotecas comparten autoridadRevisa un complemento nativo aparte del programa de confianza que lo carga.4 min
  12. Secretos locales y ciclo de vidaDistingue borrar un secreto local de terminar el acceso que permite.3 min
  13. El aislamiento tiene varias dimensionesEvalúa el contenedor por sus accesos reales, no por su etiqueta de aislamiento.3 min
  14. La política obligatoria añade un límiteComprueba si la política obligatoria limita realmente al proceso del registro.3 min
  15. Actualizar el núcleo necesita evidenciaRelaciona la corrección del proveedor con el núcleo que realmente se ejecuta.3 min
  16. Revisa el límite Linux completoInterpreta la puntuación de refuerzo junto con las comprobaciones y cuentas que cubre.3 min
  17. Los archivos nacen con una decisión de accesoCalcula permisos iniciales y reconoce qué deja intacto un cambio de valores predeterminados.3 min
  18. Un socket local también necesita límitesSepara contactar con un servicio local de tener permiso para cambiar su política.3 min
  19. Un grupo de gestión puede otorgar mucho poderTrata los grupos de gestión como autoridad delegada, incluidas las sesiones existentes.4 min
  20. Cada opción de montaje tiene un propósitoRelaciona cada restricción de montaje con la ruta y operación exactas.3 min
  21. Caso: revisa los permisos de un archivo LinuxInterpreta una ACL, separa archivos antiguos de valores iniciales y propone una corrección limitada y justificada.10 min

Un museo ficticio utiliza un servicio Linux para copiar cada noche el catálogo de su colección. El servicio necesita leer el catálogo y escribir copias. No necesita administrar todas las cuentas de la máquina. Comprender esa diferencia es la base de proteger privilegios: dar al trabajo útil autoridad suficiente y proteger los lugares donde esa autoridad se asigna o modifica.

Factores de una decisión de acceso Linux Credenciales del proceso y recurso solicitado alimentan la evaluación de acceso. Autoridad adicional y restricciones también influyen en permitir o denegar la operación. ProcesoID de usuarioGrupos RecursoArchivo / dir.Leer / escribir Evaluación de accesoPolítica aplicable Autoridad extraCapacidadesSegún contexto RestriccionesMontajesPolítica extra Permitir o denegar operación
El acceso depende de credenciales, recurso solicitado, autoridad y restricciones aplicables. Las ramas muestran factores de la decisión, no una secuencia universal de comprobaciones del núcleo.

Empieza por el proceso, no por su nombre

Un proceso lleva credenciales de usuario y grupo. Su ID de usuario efectivo ayuda a determinar autoridad; Linux también tiene identificadores de sistema de archivos que normalmente siguen a los efectivos. Un nombre amigable de servicio no revela esos valores. Los grupos adicionales pueden dar acceso importante aunque la cuenta no sea root.

Para un archivo ordinario sin controles adicionales, la clase aplicable de propietario, grupo u otros aporta sus permisos. Las clases no se suman. Sigue identidad de procesos y permisos de archivos antes de explorar las ACL.

Separa el archivo de su ubicación

Leer contenido, escribirlo y cambiar su entrada de directorio son operaciones diferentes. Un directorio gobierna nombres y recorrido; un archivo gobierna contenido. Proteger la configuración del museo incluye revisar sus directorios contenedores y el proceso que crea archivos de sustitución.

Los permisos predeterminados influyen en objetos nuevos; los archivos existentes conservan sus propios ajustes. Continúa con permisos de directorios y máscaras de creación.

EXPLORA EL CONCEPTO

Prueba una decisión de permisos Linux

Explora los casos y cambia identidad y permisos. Este modelo cubre lectura y escritura de un archivo ordinario sin ACL, capacidades adicionales ni otras políticas.

El propietario no toma prestado el permiso del grupo

En el modelo ordinario de bits, el propietario usa su clase. Si no tiene escritura, el permiso de escritura del grupo no ofrece un segundo intento, aunque también pertenezca a ese grupo.

Un directorio es otro tipo de objeto

Leer directorios lista nombres; buscar permite recorrerlos. Cambiar entradas normalmente requiere escritura y búsqueda. Este simulador de archivos no decide eliminación, renombrado ni recorrido de directorios.

Los sistemas reales incluyen más controles

ACL, capacidades del proceso, restricciones de montaje y políticas obligatorias pueden afectar el acceso real. Usa el simulador para comprender un mecanismo y examina el contexto completo al revisar un sistema.

Modelo simplificado para aprender. No se conecta a sistemas ni usa datos reales.

Comprende cambios deliberados de autoridad

SUID en un ejecutable compatible puede cambiar el ID efectivo al ID del propietario. No hace que todo programa use incondicionalmente todos los privilegios de ese propietario. Linux ignora esos bits en scripts interpretados; restricciones como no_new_privs o un montaje nosuid pueden impedir la transición. Pregunta qué propósito cumple un programa auxiliar privilegiado y cómo se limita su autoridad.

sudo aplica políticas a tareas delegadas: quién realiza qué trabajo, con qué identidad y bajo qué condiciones. Revisa argumentos, entorno, configuración y dependencias junto con la tarea. Una Capacidad separa operaciones privilegiadas concretas, pero una lista corta puede conceder poder considerable. Explora permisos especiales, políticas de delegación y límites de capacidades.

Sigue las dependencias de confianza del servicio

La identidad de copias del museo es solo parte de su Límite de confianza. Horario, programa, configuración, bibliotecas, interfaz de gestión y destino también influyen en su trabajo. Cambiar una dependencia de confianza puede alterar el comportamiento de un servicio poderoso. Asigna responsable a cada componente y limita quién puede mantenerlo.

Los sockets locales también necesitan autorización. Los grupos de gestión de contenedores pueden tener autoridad considerable sobre el anfitrión. Restricciones de montaje y políticas obligatorias responden a operaciones concretas, con límites definidos. Las lecciones sobre tareas programadas, sockets locales y controles obligatorios explican esos límites.

Verifica un límite útil

Expresa el requisito claramente: «El servicio puede leer el catálogo y crear copias; solo mantenimiento cambia su configuración». Retira permisos innecesarios, verifica que el trabajo ordinario funciona y confirma que se rechazan acciones no permitidas. Revisa la configuración activa tras actualizar. Software con soporte, mantenimiento oportuno, registros de cambios y recuperación probada complementan el diseño de permisos; ninguno vuelve innecesarios los demás.

Aplica estas ideas en el caso de revisión de permisos Linux. Utiliza los registros proporcionados, distingue los archivos existentes de la política de creación y justifica una corrección con evidencias de aceptación claras.

Términos que viste

ID de usuario efectivoSUIDsudoCapacidadLímite de confianza

Compruébate

Sin reloj ni penalizaciones. Lee cada explicación y vuelve a intentarlo cuando quieras.

  1. ¿Qué puede cambiar SUID en una ejecución Linux compatible?

    Ver la respuesta

    Respuesta correcta: El ID de usuario efectivo, sujeto a restricciones de ejecución. El ID del propietario puede convertirse en el efectivo cuando las restricciones aplicables no impiden el cambio.

  2. ¿Qué hace completa una revisión de delegación con sudo?

    Ver la respuesta

    Respuesta correcta: Revisar tarea permitida, identidad de destino, entradas y dependencias. La autoridad efectiva depende del contexto completo de ejecución.

  3. ¿Puede un servicio sin root conservar autoridad sensible?

    Ver la respuesta

    Respuesta correcta: Sí; grupos, acceso a datos y derechos delegados pueden ser poderosos. Root no es la única identidad capaz de leer datos valiosos o cambiar conductas importantes.

  4. ¿Qué sigue a retirar un permiso innecesario de un servicio?

    Ver la respuesta

    Respuesta correcta: Verificar que funciona el trabajo previsto y se rechaza la operación no deseada. Un límite útil conserva la conducta necesaria y aplica la restricción prevista.

Pruébalo

  • EscribeDibuja un servicio ficticio de copias. Nombra su identidad, datos que lee, resultados que escribe y quién cambia su configuración. Elige un permiso innecesario para retirar y describe una comprobación inocua de que el trabajo útil sigue funcionando.
Referencias