Professional Documents
Culture Documents
Marco Terico
Autorizacin.- La autorizacin refiere a las capacidades de un sujeto de poder
modificar un objeto, en Sistemas operativos, la autorizacin es la parte del sistema
que protege los objetos o recursos del sistema (archivos, carpetas, dispositivos,
etc.) de ser modificados por un usuario que no tiene los permisos suficientes, es
decir que no est autorizado para ello; la cantidad de objetos que el usuario pueda
modificar depende del nivel de autorizacin que tenga.
StickyKeys.- Es una caracterstica de accesibilidad para usuarios con problemas
para mantener pulsadas dos o ms teclas al mismo tiempo. Cuando se necesita
una combinacin de varias teclas para lograr un acceso directo, como por ejemplo
CTRL+P, gracias a StickyKeys se podrn pulsar dichas teclas de una en una en
lugar de tener que pulsarlas de manera simultnea. Para activar esta
caracterstica se debe de oprimir la tecla shift 5 veces seguidas, esta accin har
que se ejecute una ventana que contiene un mensaje el cual pregunta si se
quieren habilitar las StickyKeys, una vez que se respondi de manera afirmativa a
este mensaje, las StickyKeys estarn activadas. Las StickyKeys se ejecutan desde
que Windows arranca, lo que permite acceder a ellas incluso antes de seleccionar
un usuario para iniciar sesin.
El archivo de Windows el cual se encarga de dar este tipo de accesibilidad se
nombra sethc.exe, cabe resaltar que el sistema no verifica la integridad de este
archivo al ejecutarlo, por lo cual es posible modificarlo y el sistema no detectar
arbitrariedad alguna.
Desarrollo
En esta prctica se mostrar paso a paso como explotar la vulnerabilidad (o los
privilegios de accesibilidad, segn Microsoft), que permite ingresar a una cuenta
de cualquier sistema operativo Windows (XP a 8) que tiene una contrasea de
usuario activa y que adems permite escalar privilegios a un usuario normal para
que tenga permisos de administrador, esto se llevar a cabo a travs de la
modificacin del archivo sethc.exe y la copia del archivo cmd.exe, es importante
aclarar que esto solo funciona si ingresamos al sistema con permisos de System,
lo cual es posible si se utilizan las herramientas de reparacin de sistema de
Windows como se muestra a continuacin.
Paso 1.- Se enciende el equipo de cmputo con sistema operativo Windows y se
corta la corriente del mismo antes de que este entre a la pantalla de autenticacin,
esto con el fin de que al volver a encender el equipo y antes de cargar los archivos
de sistema, el S.O ejecute una pantalla de recuperacin de errores, la cual
pregunta si se quieren verificar errores y reparar fallos, esto se debe a que se
cort la alimentacin del equipo durante el proceso de carga de archivos de
Windows lo que podra provocar errores en el sistema y por ello el sistema brinda
esta opcin. Una vez que esta pantalla se ejecuta, se dar enter en la opcin de
Launch Startup Repair (El idioma puede variar segn la configuracin del S.O). A
continuacin la figura 1, muestra la pantalla que se describi anteriormente.
Paso 2.- Una vez que se eligi la opcin de Launch Startup Repair aparecer una
pantalla (figura 2) la cual indica que la reparacin de inicio est buscando errores
en el sistema, posterior a esto se abrir una ventana la cual pregunta si se desea
restaurar el sistema, a lo cual se responde que no, esta ventana se muestra en la
figura 3, despus de haber respondido de manera negativa se cerrar dicha
ventana y continuar buscando errores.
Paso 3.- Una vez que termina la bsqueda de errores, aparecer una ventana la cual
informa que no se pudo restaurar el sistema automticamente, esta ventana contiene una
opcin para ver detalles ms especficos del problema detectado, seleccionaremos dicha
opcin la cual se muestra en la figura 4.
Paso 4.- Una vez seleccionada la opcin anterior se mostrarn los detalles del
problema, bajaremos la barra de desplazamiento hasta el final de dicha seccin y
seleccionaremos la ruta de acceso X:\windows\system32\en-US\eroffpls.txt (puede
cambiar dependiendo del idioma). La ruta dentro de la seccin de detalles de
problema se muestra en la figura 5.
Figura 5 Ruta erofflps
Paso 5.- La seleccin de dicha ruta ejecutar un archivo desde el editor de textos
(Notepad) abrimos el men File y seleccionamos la opcin open.
Paso 6.-Una vez seleccionada la opcin open se abrir una ventana la cual nos
mostrar los archivos existentes en el equipo que se est llevando a cabo esta
prctica como discos duros, documentos y lugares recientes, se proceder a
buscar la unidad de disco duro D: que en este caso especfico es la unidad en la
cual est grabado el S.O y se seleccionar dicha unidad, una vez hecho esto se
acceder a la carpeta Windows/system32/ una vez situados en esta ruta, se
seleccionar la opcin de ver todos los archivos como se muestra en la siguiente
figura.
Figura 6.- Ventana system32 mostrando todos los tipos de archivos que contiene la carpeta
system32
Paso 7.- Se lleva a cabo la bsqueda del archivo cmd.exe y se genera una copia
del mismo como se muestra en la figura 7.
Figura 7.- Copia de archivo cmd
Paso 10.- Una vez realizados los cambios mencionados se procede a cerrar todas
las ventanas que se tienen abiertas y se reinicia el equipo.
Paso 11.- El equipo se reiniciar normalmente, una vez situados en la pantalla de
autenticacin se presionar la tecla shift 5 veces y en lugar de ejecutarse el
mensaje que pregunta si se quieren activar las StickyKeys, se ejecuta una ventana
de comandos con permisos System como la que se muestra a continuacin en la
figura 10.
Paso 12.- De este paso en adelante se realizarn las acciones necesarias para
demostrar que los pasos que hemos hecho hasta ahora permitirn que se hagan
cambios tanto en usuarios administradores como usuarios no administradores (a
los cuales se les asignaran privilegios de administrador), lo que representa una
escalacin de privilegios, gracias a esto quedar demostrada la vulnerabilidad que
representan las StickyKeys dentro de un sistema Windows.
En este paso veremos los usuarios que existen en el sistema con privilegios de
administrador y los usuarios normales, esto mediante el uso del comando net
localgroup Administrators y net localgroup Users como se muestra en las figuras
11 y 12 respectivamente.
Como se puede ver en las figuras el resultado de listar los tipos de usuarios nos
indica que, servicio social es un usuario de tipo administrador y el usuario poncho
es un usuario de tipo normal.
Paso 13.- En este paso se muestra cmo se puede vulnerar la parte de
autenticacin desde esta consola de comandos, es un proceso muy sencillo como
todos los que se han hecho hasta el momento, slo basta con teclear el comando
net user nombre de usuario *, este comando lo que indica es que se quiere
asignar una contrasea nueva al usuario que se escribe en la parte de nombre de
usuario lo que nos permitir cambiar la contrasea actual de ese usuario y poder
acceder a su cuenta con los mismo privilegios que tiene; el comando en ejecucin
se muestra en la figura 13.
Paso 14.- Una vez que se demostr la facilidad con la cual se puede cambiar una
contrasea en el sistema, mostraremos como escalar privilegios, que es el objetivo
principal de esta prctica, para ello slo es necesario ejecutar un comando en la
consola y listo, se obtendrn los privilegios de administrador. El comando es el
siguiente: net localgroups Administrators nombre de usuario /add nombre de
usuario; la ejecucin de dicho comando se muestra en la figura 14.
Figura 14.- Comando net localgroup Administrators /add para asignar privilegios a un usuario.
Una vez que se ejecut el comando se procede a verificar que se realiz la accin
deseada, esto utilizando nuevamente el comando net localgroup Administrators.
Como se muestra en la figura en la figura 15.
Figura 15.- Verificacin del comando net localgroups Administrators
Conclusiones y Soluciones.
Una vez que se realizaron las modificaciones correspondientes para poder llevar a
cabo la escalacin de privilegios, nuevamente se ve que es demasiado fcil hacer
este tipo de acciones, y se ratifica que a las compaas desarrolladoras les
importa ms el que el usuario tenga comodidad o facilidad para hacer las cosas,
en este caso con el uso de las StickyKeys, a que el usuario de un sistema este
seguro.
De igual manera es difcil entender porque acciones que permiten los sistemas
que son para fines de ayuda, permiten que tambin se pueda a hacer mal uso de
ellas y que a pesar del tiempo que tienen vulneradas estas siguen sin ser
modificadas con el fin de que estos malos usos sean erradicados.
Un mtodo sencillo para evitar ser vctimas del cambio de contraseas mediante el
uso de las StickyKeys es presionar cinco veces la tecla shift dentro del entorno de
Windows y una vez que aparece la ventana de StickyKeys, se selecciona Abrir el
centro de accesibilidad para desactivar el mtodo abreviado del teclado, seguido
a esto se deselecciona la opcin Activar teclas especiales cuando la tecla mayus
se presione cinco veces, una vez concluido esto se cierra la ventana y el uso de
StickyKeys estar deshabilitado.
Bibliografa Electrnica
https://rafavg77.wordpress.com/2014/05/10/cambiar-contrasena-de-usuario-y-
elevar-privilegios-de-una-cuenta-de-usuario-en-windows-7/
http://geekazos.com/deshabilitar-stickykeys/
https://www.microsoft.com/spain/accesibilidad/training/windowsxp/stickykeys.aspx
http://superuser.com/questions/732605/how-to-prevent-the-sethc-exe-hack