4 votos

Mac OSX: Cómo a contraseña proteger una aplicación u otra carpeta de borrar/mover por usuario/admin/root

Estoy trabajando en un agente de seguridad. En la que no quiero permitir que cualquier usuario/administrador/root borrar mi solicitud de agente de seguridad normalmente.

Si root de usuario de administrador intenta eliminar el archivo .app OS debe Mostrar cuadro de diálogo contraseña. Si el usuario conoce la contraseña entonces sólo se deben eliminar.

Cualquier indicador en esto sería útil.

10voto

Eilon Puntos 273

Descargo de responsabilidad

Esta respuesta no es la intención como consejos de seguridad para los usuarios regulares. La configuración de tu Mac del nivel de seguridad a 1 podría potencialmente causar cierto tipo de software o los controladores de hardware de un mal funcionamiento, por lo que te recomiendo hacer su propia diligencia debida y la investigación independiente y pruebas para determinar si hay algún consecuencias indeseables para la realización de estos pasos.

La sección 5.4.2 de la siguiente artículo relacionado sobre BSD las características relacionadas con las restricciones de seguridad en el super-usuario es un buen lugar para empezar. http://docstore.mik.ua/orelly/other/puis3rd/0596003234_puis3-chp-5-sect-4.html

En caso de que el enlace se rompe en el futuro, la sección más importante de este artículo se enumeran los efectos de la configuración de la kern.securelevel=1:

El acceso de escritura para el raw de las particiones del disco está prohibido. (Esto obliga a todos los cambios en el disco para ir a través de el sistema de archivos.)

Raw de acceso al bus SCSI controlador está prohibido.

Los archivos que tienen el indicador inmutable conjunto no puede ser cambiado. Los archivos que tienen sólo anexar un conjunto de bits sólo puede ser añadido, y no de lo contrario, modificados o eliminados.

El contenido de los paquetes IP no pueden ser registrados.

Primas de e/S para el sistema de la consola está prohibido.

Raw escribe a la memoria del sistema de e/S o de los controladores de dispositivo de usuario los programas están prohibidos.

Algunos se denegó el acceso a la Linux sistema de archivos /proc.

Módulos adicionales del kernel no se puede cargar.

El reloj del sistema no se puede ajustar hacia atrás. Además, no se puede adelantó más de un máximo de un segundo, y se puede configurar sólo una vez por segundo (efectivamente, el reloj puede ser empujado en más el doble de tiempo).

Esta lista no es exhaustiva.

TLDR: configuración kern.securelevel=1 podría tener más consecuencias de lo que se describe en los pasos siguientes. Tener cuidado.

Dicho esto, he probado a cabo estos pasos en un regular iMac con OS X 10.10.2 y no noté ningún problema como resultado de ello. En el pasado, securelevel 1 fue el ajuste por defecto en OS X, y páginas de manual en OS X 10.10 aún indirectamente indican que 1 es la configuración predeterminada (dicen que debe reiniciar el sistema en modo de usuario único para eliminar schg, que exige securelevel 0).

Sin embargo, en realidad, securelevel 0 ha sido la configuración predeterminada desde OS X 10.5. Cuando la comunidad en línea enteró de que Apple tranquilamente cambiado el valor predeterminado de 0, algunos administradores de sistemas en las Discusiones de Apple hilos calificó de "inconcebible" de Apple para hacer esto. También he encontrado algunas guías de seguridad en línea que dicen configuración kern.securelevel=1 es un paso importante a tomar para proteger tu Mac. YMMV.

Resumen De La Respuesta

Como establece una contraseña de firmware en un Mac, puede convertir cualquier archivo en Mac no puede ser eliminada por nadie, sólo por el uso de este simple comando de Terminal:

sudo chflags schg /path/to/file

Asegúrate de que tu Mac se iniciará siempre a nivel de seguridad 1 haciendo:

sudo vi /etc/sysctl.conf

Una vez en el editor vi, escriba i para entrar en el modo insertar, a continuación, escriba kern.securelevel=1. Siguiente presione enter, luego de colon, a continuación, escriba wq y pulse enter.

Por último, en el tipo de Terminal:

sudo chflags schg /etc/sysctl.conf
sudo sysctl kern.securelevel=1

Ahora que el nivel de seguridad es 1 y el schg bandera, el archivo no puede ser eliminado, a menos que se reinicie el sistema en modo de usuario único.

Si el firmware se ha establecido contraseña, se necesita que la contraseña para entrar en modo de usuario único. Más que usted necesita para entrar en modo de disco de destino o cambiar el disco de inicio.

Con el schg indicador establecido, incluso de la root no se puede eliminar el archivo. Nadie puede modificar desde el Finder o el Terminal. Aparecerá bloqueado en el Buscador, pero la casilla de verificación bloqueado permanecerá para siempre en gris, no importa qué, incluso con una contraseña de administrador. En la Terminal, sudo rm /path/to/file producirá un error, diciendo: "Operación no permitida". También, sudo SetFile -a l /path/to/file , se producirá un error, "ERROR: error Inesperado. (-5000)". :D

Para eliminar este archivo, alguien tendrá que usar el firmware contraseña para reiniciar el equipo en modo de usuario único, a continuación, desmontar el schg bandera con este comando:

sudo chflags noschg /path/to/file

Después de que se puede ser borrado.

ACTUALIZACIÓN: Crítica Pasos Adicionales Necesarios para Responder a Trabajar

Actualización añadido Mier. 18 Mar. 2015 ~1:20 PM PDT: vino a mi atención en los comentarios a esta respuesta que alguien con sudo acceso en el sistema podría eliminar el archivo protegido por el cambio de nombre de la /private/etc directorio, a continuación, copiar todo su contenido, excepto el sysctl.conf archivo en una nueva privadas /directorio/etc, y reiniciar. Esto podría causar un nivel seguro para volver a cero.

Para evitar esto, después de realizar los pasos anteriores, usted también debe realizar los siguientes comandos:

sudo chflags schg /private
sudo chflags -h schg /etc

El primer comando hace que el /privado directorio y sus subdirectorios no puede ser cambiado de nombre. El segundo comando hace que la root de nivel de enlace simbólico a /private/etc imposible cambiar el nombre o eliminar. ( -h Argumento hace chflags actuar sobre el enlace simbólico en sí mismo, en lugar de actuar sobre el destino de vínculo simbólico.)

Advertencias Principales

  1. Si estás en un Hackintosh o Mac Pro con carácter oficial, los gráficos de la PC de la tarjeta que no ha sido flasheado con el firmware oficial de Apple o algo funcionalmente idéntica a la que, este truco no funcionará. No estoy seguro de si se puede arrancar en modo de usuario único, así que si usted establecer el sysctl.conf archivo, y configurarlo para que schg, puede ser así para siempre. Lo que significa que cualquier conjunto de archivos a schg nunca puede ser eliminado.

  2. Puede haber algunas formas físicas para restablecer la contraseña de firmware mediante la eliminación de RAM o eliminar el archivo mediante la eliminación de los SSD/HDD y conectando a otro equipo.

Explicación de la Respuesta

Para establecer una contraseña de firmware para tu Mac mediante los pasos que se muestran cuando se busca en google, "cómo establecer una contraseña de firmware en un mac". Brevemente los pasos a seguir son:

  • Reiniciar en modo de recuperación

  • Seleccione el Firmware de la Utilidad de Contraseña desde el menú Utilidades y establecer la contraseña

  • ...

  • La GANANCIA!

Explicación de las Salvedades

Tenga en cuenta que en Macs con extraíble de memoria RAM, un hacker puede ser capaz de restablecer su contraseña de firmware mediante el cambio de la cantidad de memoria RAM, la limpieza de su COCHECITO de niño un montón de veces. Así que en Mac así, tomar las medidas de seguridad física para evitar el manual de acceso a los componentes internos del equipo.

Baste decir que usted debe conseguir a nivel de seguridad 0 de chflags noschg a de trabajo, y, normalmente, la única forma de volver al nivel de seguridad 0 es para reiniciar el equipo en modo de usuario único. Nuevamente, esto podría ser imposible si tu Mac carece de Apple firmware. Si usted es paranoico/no está seguro, puede ver el actual nivel de seguridad escribiendo sysctl kern.securelevel en la Terminal; debe ser siempre 1 después de los pasos que se han seguido a menos que esté en modo de usuario único!

Más notas

Por lo que yo sé, y que me corrija si estoy equivocado, pero la única manera de evitar un firmware contraseña de restablecimiento a través de la eliminación de RAM truco) es quitar el disco duro principal o SSD desde el equipo en cuestión, y acceder a ella desde otro equipo con un disco SATA a USB adaptador o algo similar. (Agencias gubernamentales y/o Apple podría tener un secreto, clasificados puerta trasera... pero si están después de usted, entonces usted probablemente desea eliminar los archivos, pero no evitar su eliminación :D.)

Así que, técnicamente hablando, la configuración de schg sólo que realmente resuelve el problema con el 100% de la infalibilidad si estás en un caso de los nuevos Macs sin reemplazable de RAM y sin reemplazables de la unidad de disco duro (es decir, una Retina MacBook Pro, MacBook Air, etc.) y se establece su EFI contraseña, porque esos son los únicos Macs sin extraíble de memoria RAM o una protectora SSD. (Por supuesto, si alguien se lleva a cabo la unidad sólo para eliminar un archivo, de nuevo, usted probablemente tiene peores problemas, como, amigo ¿dónde está mi disco duro?)

El 21.5" iMac falta de "reemplazable por el usuario" RAM hace que sea mucho más difícil de eludir el EFI contraseña y robar la memoria RAM, que es probablemente por qué Apple lo hizo de esa manera, como se pretende en gran medida para su uso en las escuelas donde los niños pueden y van a burlar las medidas de seguridad que :D (lo sé porque en mi día a día hemos utilizado para hackear la derecha más allá de AtEase en el Sistema 7 para jugar Maratón...)

En la no-21.5" iMacs puede evitar que la memoria RAM-eliminación/firmware-restablecimiento de contraseña truco, mediante la inversión de $40 y $ 50 en un Maclocks de la marca de bloqueo para el iMac. Entra en la seguridad del puerto y tiene una placa de metal que cubre hasta la toma de corriente donde la liberación de la memoria RAM de la escotilla. Con ese físico de bloqueo en su lugar, alguien tendría una sierra de diamante o similar para eliminar su schg-archivo protegido... y si la gente está tomando diamante sierras a sus ordenadores, a continuación, usted tiene un montón peores problemas de los que preocuparse que un archivo eliminado, como, colega, ¿dónde está mi equipo?

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X