Thursday, November 24, 2016

Setuid Binary Options

Mount Opciones para los sistemas de archivos NFS El texto siguiente enumera algunas de las opciones que pueden seguir el indicador - o cuando está montando un sistema de archivos NFS. Para obtener una lista completa de opciones, consulte la página de manual mountnfs (1M). Estas opciones se pueden utilizar para seleccionar el comportamiento de reintento si falla un montaje. La opción bg hace que los intentos de montaje se ejecuten en segundo plano. La opción fg hace que el intento de montaje se ejecute en primer plano. El valor predeterminado es fg. Que es la mejor selección para sistemas de archivos que deben estar disponibles. Esta opción impide el procesamiento posterior hasta que se complete el montaje. Bg es una buena selección para sistemas de archivos no críticos porque el cliente puede realizar otro procesamiento mientras espera que se complete la solicitud de montaje. Esta opción mejora el rendimiento de grandes transferencias secuenciales de datos. Los datos se copian directamente en un búfer de usuario. No se realiza almacenamiento en caché en el núcleo del cliente. Esta opción está desactivada de forma predeterminada. Anteriormente, todas las solicitudes de escritura fueron serializadas tanto por el cliente NFS como por el servidor NFS. El cliente NFS se ha modificado para permitir que una aplicación emita escrituras simultáneas, así como lecturas y escrituras simultáneas, en un solo archivo. Puede habilitar esta funcionalidad en el cliente mediante la opción de montaje forzado. Cuando utiliza esta opción, está habilitando esta funcionalidad para todos los archivos dentro del sistema de archivos montado. También puede habilitar esta funcionalidad en un solo archivo en el cliente mediante la interfaz directio (). A menos que esta funcionalidad haya sido habilitada, las escrituras a los archivos serán serializadas. Además, si se están produciendo escrituras simultáneas o lecturas y escrituras simultáneas, la semántica de POSIX ya no se admite para ese archivo. Para obtener un ejemplo de cómo utilizar esta opción, consulte Uso del comando mount. Con esta opción, puede acceder a archivos de más de 2 Gbytes en un servidor que ejecuta la versión de Solaris 2.6. Si se puede acceder a un archivo grande sólo se puede controlar en el servidor, por lo que esta opción se omite silenciosamente en NFS versión 3 montajes. A partir de la versión 2.6, por defecto, todos los sistemas de archivos UFS se montan con archivos grandes. Para montajes que utilizan el protocolo NFS versión 2, la opción largefiles hace que el montaje falle con un error. Esta opción para montajes UFS garantiza que no pueden existir archivos grandes en el sistema de archivos. Consulte la página de manual de mountufs (1M). Dado que la existencia de archivos grandes sólo puede controlarse en el servidor NFS, no existe ninguna opción para nolargefiles cuando se utilizan montajes NFS. Los intentos de montar NFS en un sistema de archivos mediante esta opción se rechazan con un error. A partir de la versión de Solaris 10, la opción nosuid es equivalente a especificar la opción nodevices con la opción nosetuid. Cuando se especifica la opción nodevices, no se permite la apertura de archivos especiales del dispositivo en el sistema de archivos montado. Cuando se especifica la opción nosetuid, el bit setuid y bit setgid en archivos binarios que se encuentran en el sistema de archivos se ignoran. Los procesos se ejecutan con los privilegios del usuario que ejecuta el archivo binario. La opción suid es el equivalente a especificar la opción devices con la opción setuid. Cuando se especifica la opción devices, se permite la apertura de archivos especiales del dispositivo en el sistema de archivos montado. Cuando se especifica la opción setuid, el bit setuid y el bit setgid en los archivos binarios que se encuentran en el sistema de archivos son honrados por el kernel. Si no se especifica ninguna opción, la opción predeterminada es suid. Que proporciona el comportamiento predeterminado de especificar la opción devices con la opción setuid. La tabla siguiente describe el efecto de combinar nosuid o suid con dispositivos o dispositivos de nodo. Y setuid o nosetuid. Tenga en cuenta que en cada combinación de opciones, la opción más restrictiva determina el comportamiento. Comportamiento de las opciones combinadas La opción nosuid proporciona seguridad adicional para los clientes NFS que acceden a servidores potencialmente no fiables. El montaje de sistemas de archivos remotos con esta opción reduce las posibilidades de aumento de privilegios mediante la importación de dispositivos no confiables o la importación de archivos binarios setuid no confiables. Todas estas opciones están disponibles en todos los sistemas de archivos Solaris. Esta opción fuerza el uso del identificador de archivo público al ponerse en contacto con el servidor NFS. Si el servidor admite el identificador de archivo público, la operación de montaje es más rápida porque no se utiliza el protocolo MOUNT. Además, como no se utiliza el protocolo MOUNT, la opción pública permite que el montaje se produzca a través de un cortafuegos. Las opciones - rw y - ro indican si un sistema de archivos se debe montar de lectura-escritura o de sólo lectura. El valor predeterminado es lectura-escritura, que es la opción adecuada para directorios remotos, directorios de cola de correo u otros sistemas de archivos que necesitan ser cambiados por los usuarios. La opción de sólo lectura es apropiada para los directorios que los usuarios no deben cambiar. Por ejemplo, las copias compartidas de las páginas de manual no deben ser escritas por los usuarios. Puede utilizar esta opción para especificar el mecanismo de autenticación que se utilizará durante la transacción de montaje. El valor para el modo puede ser uno de los siguientes. Utilice krb5 para el servicio de autenticación de Kerberos versión 5. Utilice krb5i para Kerberos versión 5 con integridad. Utilice krb5p para Kerberos versión 5 con privacidad. Utilice ninguno para ninguna autenticación. Utilice dh para la autenticación Diffie-Hellman (DH). Utilice sys para la autenticación UNIX estándar. Los modos también se definen en /etc/nfssec. conf. Un sistema de archivos NFS que se monta con la opción soft devuelve un error si el servidor no responde. La opción hard hace que el montaje continúe reintentando hasta que el servidor responda. El valor predeterminado es difícil. Que debe utilizarse para la mayoría de los sistemas de archivos. Las aplicaciones frecuentemente no comprueban los valores devueltos de los sistemas de archivos montados en soft, lo que puede hacer que la aplicación falla o puede dar lugar a archivos dañados. Si la aplicación comprueba los valores devueltos, los problemas de enrutamiento y otras condiciones aún pueden confundir la aplicación o provocar daños en el archivo si se utiliza la opción suave. En la mayoría de las situaciones, la opción suave no debe usarse. Si un sistema de archivos se monta utilizando la opción hard y no está disponible, una aplicación que utiliza este sistema de archivos se bloquea hasta que el sistema de archivos esté disponible. Comando de ejecución de Linux como otro usuario M. Pasha 22 de octubre de 2015, 1:30 pm Su realmente Un buen artículo, estoy tratando de ejecutar comandos múltiples en otheruser. Como por ejemplo, avanzar un poco de texto. He intentado su y runuser, pero no. Cualquier sugerencia please8230 runuser - l usuario - c 8216df - h8217 ampamp 8216grep Filesystem8217 Respuesta cpss454 25 de septiembre de 2013, 5:16 pmCuidado sobre el uso de runuser: Cualquier comando ejecutado con runuser se coloca en segundo plano por defecto. Esto significa que varios comandos de runuser se ejecutarán uno tras otro y se ejecutarán en paralelo. Utilice la opción - l (menos el) para forzar a runuser a ejecutar el comando dentro de un shel, y así esperar a que finalice. Respuesta de cpss454 24 de septiembre de 2013, 9:45 pm Sólo un consejo: Al emitir el comando runuser usualmente uso la opción - c, y siempre uso comillas dobles en lugar de comillas simples alrededor del comando para ser ejecutado. Esto me permite usar comillas simples dentro del comando de comillas dobles para pasar un argumento entre comillas. Por ejemplo, lo siguiente no funcionará debido a las comillas simples anidadas: runuser - l fred - c 8216find / foo / foobar - name 8216.txt8221 (dos comillas simples al final de la línea) Este ejemplo utiliza comillas dobles y funciona bien : Runuser - l fred - c 8220find / foo / foobar - name 8216.txt8221 (una comilla doble antes de 8220find8221, comillas simples alrededor de 8216.txt8217 y una comilla doble al final de la línea) Si quieres saber por qué funciona , El shell procesa las líneas de comando con comillas dobles dos veces. El primer paso permite al intérprete saber que cualquier cosa dentro de comillas dobles es un argumento y que cualquier comillas simples dentro de las dobles quetes deben tomarse literalmente. Dios doc :) runuser es bueno 8230 podemos usarlo en script / sbin / runuser nombre de usuario Responder Prasad 4 de septiembre 2012, 7:25 amI personnaly utilizar el su 8211 - c como administrador, pero el sudo es una herramienta muy útil para Cuando se configuran correctamente. A menudo utilizo sudo - u USERNAME - i o sudo - u USERNAME - s para cambiar de usuario y luego ejecutar mis comandos como ese usuario. Gracias, eso me ayudó mucho, necesitaba el switch - i que instruye a shell para cargar el archivo. profile. Me ayudó a iniciar una instancia de docker y ejecutar un comando como un usuario diferente, nada funcionó excepto 8220sudo - u USERNAME - i8221 rpm - qf / sbin / runuser coreutils-8.4-19.el6.x8664 ¿De dónde proviene runuser? No aparece ninguno de mis cuadros Para tenerlo. UNIX / Linux: Explica setuid File Permiso ¿Qué significa que un archivo sea 8220setuid8221? ¿Cómo hacer un seguimiento de todos los setuid habilitado? Setuid significa establecer el ID del usuario en la ejecución. Si el bit setuid activó un archivo, el usuario que ejecuta ese archivo ejecutable obtiene los permisos del individuo o grupo que posee el archivo. Necesita utilizar el comando ls - l o find para ver los programas setuid. Todos los programas setuid muestran S o s en el bit de permiso (owner-execute) del comando ls. Escriba el comando siguiente: Cómo enumerar todos los archivos habilitados para setuid El comando siguiente descubre e imprime los archivos setuid en el sistema local: find / - xdev (-perm -4000) - type f - print0 xargs -0 ls - l El bit s Puede quitarse con el siguiente comando: chmod - s / path / to / file Setuid Programas Riesgo Un atacante puede explotar binarios setuid usando un script de shell o proporcionando datos falsos. Normalmente, los usuarios no deberían tener instalados programas setuid, especialmente setuid para usuarios que no sean ellos mismos. Por ejemplo, no debería encontrar setuid habilitado binario para root en / home / vivek / crack. Estos son por lo general Trojan Horses tipo de programas. Ejemplo En este ejemplo, el usuario vivek ejecuta el comando 8220 / usr / bin / vi /shared/financialdata. txt8221 y el permiso en el comando vi y el archivo /shared/financialdata. txt son los siguientes: Vivek tiene permiso para ejecutar / Usr / bin / vi, pero no el permiso para leer /shared/financialdata. txt. Así que cuando vi intenta leer el archivo se mostrará un mensaje de error 8220permission denied8221 a vivek. Sin embargo, si establece el bit SUID en la vi: Ahora, cuando vivek ejecuta este programa SUID, se concede el acceso a /shared/financialdata. txt. ¿Cómo funciona? El sistema UNIX doesn8217t creo que vivek está leyendo el archivo via vi, piensa 8220root8221 es el usuario y por lo tanto el acceso se concede. Cómo puedo auditar y registrar la llamada del sistema setuid bajo Linux para cada setuid El auditd binario se puede utilizar para la auditoría del sistema bajo Linux. Puede registrar y auditar la llamada del sistema setuid. Edite /etc/audit/audit. rules: vi /etc/audit/audit. rules Ejecute el siguiente comando para obtener binario de setuid habilitado / bin y agregue como se indica arriba: find / bin - type f - perm -04000 Guardar y cerrar el archivo. Reiniciar auditd: service auditd restart Utilizar el comando aureport para ver los informes de auditoría: aureport --key --summary ausearch --acceso a la clave --raw aureport --archivo --summary ausearch --acceso a la clave --raw aureport - x --summary Ausearch --key access --file / bin / mount --raw aureport --user --summary - i Consulte los archivos de auditoría de Linux para ver quién realizó cambios en un archivo. Referencias:


No comments:

Post a Comment