26 febrero, 2015

Asignar o modificar permisos (ACLs) en los servicios de Windows

Me sorprende que de forma nativa Windows XP/7/8.1 no incorporen la característica de modificar permisos sobre servicios de Windows (services.msc) o algo similar para ello (o que yo hasta hoy desconozco...) y se tenga que recurrir a aplicaciones externas para ello.

Una herramienta de linea de comandos para editar permisos de servicios entre otras cosas es la que nos proporciona MS Windows pero que debemos descargarla a parte al sistema es: Subinacl.exe, la cual podemos descargar desde la propia web de Microsoft.
Aquí tendremos más ayuda sobre Subinacl.exe: http://www.ponx.org/download/CD/Outils-Win/subinacl.htm

Service Security Editor, es un pequeño software gratuito y portable desarrollado por Coretechnologies.com el cual nos permitirá modificar a ciertos usuarios/grupos que permisos tienen o no, en determinados servicios de Windows.

Una vez abrimos el software seleccionamos el servicio que queramos modificar sus permisos y a continuación le daremos en "Open...".

Selección de servicios para la posterior modificación de permisos
Figura 1: Selección de servicios para la posterior modificación de permisos.

Se nos abrirá la típica ventana de administración de ACLs de Windows para usuarios/grupos. Aquí simplemente procederemos a realizar los cambios oportunos dependiendo nuestras necesidades, como la haríamos de forma normal sobre una carpeta de Windows, por ejemplo.

Ventana de ACLs de Windows predeterminada para agregar o quitar usuarios y permisos
Figura 2: Ventana de ACLs de Windows predeterminada para agregar o quitar usuarios y permisos.

Descargar Service Security Editor

Para complementar un poco más este artículo comentaré otra herramienta en linea de comandos: SetACL de los desarrolladores helgeklein.com (disponible para versiones de Windows x86 o x64). Esta nos permite, entre otras cosas, dar permisos de START y STOP  sobre el servicio a un usuario de dominio en concreto o un grupo de ellos.

La sintaxis sería algo como esto.
setacl -on \\[NombreDelServidor]\[NombreDelServicio] -ot srv -actn ace -ace "n:[DOMINIO/USUARIO];p:start_stop"
En este caso, especificamos el Nombre FQDN o IP del Servidor remoto, el nombre del servicio en cuestión y el usuario de dominio en el que queramos otorgar permisos de iniciar y parar un servicio de un servidor Windows.

Después podremos ver los permisos asignados al servicio de Windows en cuestión.
setacl -on \\[NombreDelServidor]\[NombreDelServicio] -ot srv -actn list
En mi caso como ejemplo, el usuario "adrian" (no hace falta especificar el nombre del servidor remoto si se trata de un usuario local del equipo, ya que no tendría sentido) tiene permisos de control total sobre el "Servicio de actualizaciones de Adobe" (AdobeARMservice).

Comprobando los permisos del servicio de actualizaciones de Adobe con SetACL
Figura 3: Comprobando los permisos del servicio de actualizaciones de Adobe con SetACL.

Permisos de servicios en el registro de Windows (Regedit):

También podremos observar que cada vez que agregamos permisos a un usuario/grupo en el registro de Windows se crea una subclave llamada "Security" que contiene un nuevo valor binario (REG_BINARY) el cual almacena la información que otorga permisos a dicho usuario.

Esta subclave es creada en las dos ramas del registro donde se ubican los servicios, que son:
HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services

Dejo un enlace para aquellos que quieran profundizar más sobre esta herramienta.
Más información sobre SetACL (command line): https://helgeklein.com/setacl/documentation/command-line-version-setacl-exe

Los mismos desarrolladores proporcionan también la misma herramienta pero con una GUI intuitiva, llamada SetACL Studio. De forma más avanzada y sencilla, nos permite administrar los permisos no solo de los servicios de Windows, si no también de impresoras, claves de registro de Windows, etc.

SetACL Studio herramienta para la administración de permisos en servicios
Figura 4: SetACL Studio herramienta para la administración de permisos en servicios.

Esta herramienta NO es gratuita, pasado el tiempo de prueba de 30 días dejará de funcionar. Pero en su periodo de prueba está 100% funcional con todas sus opciones disponibles.

Descargar SetACL (Command Line)
Descargar SetACL Studio

Saludos!

22 febrero, 2015

Ver fotos de perfiles privados de Facebook

Esta entrada ya la había publicado hace tiempo pero por ciertos motivos tuve que eliminarla, hoy por otros motivos y petición de ciertos usuarios decidí reabrirla.

Aclaro que: Realmente con este método NO se visualizan las fotos o publicaciones de perfiles privados de Facebook, sino que es una forma de ver las fotos etiquetadas, que le gustaron, comentarios en fotos, etc. de dichos perfiles privados.

Esto tampoco se puede considerar un fallo de seguridad de Facebook, pero si a mi modo de ver una invasión de la privacidad de los usuarios que forman parte de esta red social.

Antes de nada comentar que, necesitamos estar registrados en la plataforma de Facebook.

Ahora simplemenete buscamos el perfil del usuario:
https://www.facebook.com/nombreDelUsuario
Donde "nombreDelUsuario", es el nombre del perfil que nos interesa.

Ahora tendremos que conocer el ID que identifica a este usuario, este ID Facebook lo interpreta como una secuencia numérica que apunta al nombre de usuario.

Para poder saber que ID es el del usuario en cuestión tenemos dos opciones:

Sobre cualquier espacio en blanco de la página de Facebook del usuario en cuestión hacemos clic derecho > "Ver código fuente de la página".
Se nos abrirá una ventana en la que pulsaremos las teclas: Ctrl+F, para a continuación buscar "profile_id" (sin comillas) y pulsaremos la tecla Enter.

El primero que encontremos nos servirá, el cual se mostrará similar a lo siguiente:
"profile_id":0000000000000000
Donde la secuencia de "0" (ceros) es el número ID que identifica al nombre de usuario.

La otra opción de conocer este ID es haciendo uso de la propia web oficial de Facebook, en la que cuenta con un API para ello. (https://developers.facebook.com/docs/graph-api)

Entramos en la web: https://graph.facebook.com/nombreDelUsuario
En una vez pulsemos Enter, veremos algo como esto.
{
"id": "0000000000000000",
"first_name": "Nombre",
"gender": "Sexo",
"last_name": "Apellido",
"link": "https://www.facebook.com/nombreDelUsuario",
"locale": "Localidad",
"name": "Nombre del Perfil",
"username": "nombreDelUsuario"
}
Una vez ya sepamos cual es el ID que identifica a dicho usuario, copiaremos y colocaremos este ID en la siguiente URL:
https://www.facebook.com/search/0000000000000000
Donde la secuencia de "0" sería el ID en cuestión.

Por último tendremos que colocar después del ID el tipo de búsqueda que queramos hacer, estes son algunas referencias y los que yo en su día había encontrado.

/photos-tagged = Fotos etiquetadas
/photos-of = Fotos de...
/photos-by = Fotos por...
/photos-liked = Fotos a las que hizo Like
/photos-of/intersect = Más fotos
/photos-commented = Comentarios en fotos
/pages-liked = Páginas que le gusta
/groups = Grupos

Un ejemplo final sería:
https://www.facebook.com/search/IDdelUsuario/photos-tagged
Donde IDdelUsuario sería lógicamente la secuencia numérica respectiva y a continuación, en este caso, se mostrarían los resultados de las fotos en las que a ese usuario otros usuarios le etiquetaron o aparece etiquetado.

Esto no tiene gran misterio, ya que lo que se está haciendo es realizar una búsqueda interna de las bases de datos de Facebook hacía ese ID, ya que la referencia más habitual para las bases de datos es que sea un identificador unívoco "ID" y no un "nombreDeUsuario".
Dentro de esa búsqueda solo nos queda referenciar que tipo o hacia donde queremos buscar: fotos etiquetas, fotos de..., comentarios en fotos, etc. Y que finalmente se muestren estos resultados.

Saludos!

19 febrero, 2015

Recuperar la pestaña de "Seguridad" en las propiedades de carpetas

Por cualquier motivo inesperado nos puede ocurrir que nos desaparezca la pestaña/ficha de "Seguridad" de las propiedades de nuestras carpetas, dejándonos así sin poder configurar de forma controlada y segura los permisos NTFS de cualquier carpeta o unidad.

Para volver a restablecer la pestaña de seguridad podemos comprobar varias opciones:

Mediante Políticas de grupo (GPO).

Este método solo lo podremos llevar a cabo si disponemos de la versión “Professional” o superior de Windows XP/Vista/7/8.
Nos vamos a: Inicio > Ejecutar > escribimos gpedit.msc. Y la GPO que buscamos está en:
Configuración de usuario > Plantillas Administrativas > Componentes de Windows > Explorador de Windows > Quitar la ficha seguridad.
Si habilitamos esta política la ficha de seguridad desparecerá por lo que los usuarios no podrán cambiar configuración de seguridad ni ver la lista de usuarios que tienen acceso al recurso en cuestión.

Mediante el registro de Windows.

Este método es funcional en todas las versiones de Windows y es el único disponible si disponemos de la versión Home Premium de Windows XP/Vista/7, ya que no dispondremos de la herramienta gpedit.msc.
Para iniciar el editor del registro:
Nos vamos a: Inicio > Ejecutar > escribimos regedit. Una vez abierto buscamos la siguiente clave:
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer
Añadimos un nuevo valor DWORD (edición/nuevo) al que llamaremos NoSecurityTab, y al que le daremos el valor 1 para habilitar dicha política o valor 0 o eliminar dicho valor para recuperar la pestaña seguridad.

Por último decir otra forma de deshabilitar o habilitar la ficha de seguridad en opciones de carpeta mediante una opción menos conocida del registro Windows, si navegamos hasta la rama.
HKEY_CLASSES_ROOT\Directory\ShellEx\PropertySheetHandlers
Veremos que cuelga una serie de carpetas sólo tenemos que verificar si entre las que se nos muestran aparece una carpeta denominada
{1f2e5c40-9550-11ce-99d2-00aa006e086c}
Sino fuera así la tendríamos que agregar. Es decir que si agregamos esta clave se mostrará la pestaña seguridad y sino eliminamos dicha carpeta se eliminará dicha pestaña al reiniciar nuestra máquina.

Saludos!
Entradas Relacionadas