Hace 2 años | Por mr_b a genbeta.com
Publicado hace 2 años por mr_b a genbeta.com

Windows es percibido como un sistema operativo fácil de comprometer; a veces se trata de una imagen que puede llegar a exagerarse, pero en otros casos surgen noticias que no hacen sino reforzarla. Los usuarios pueden comprender que alguien pueda aprovecharse de una vulnerabilidad de Windows cuando, por ejemplo, uno se descarga un software desde una página 'dudosa' y lo instala. Pero, ¿por el mero hecho de conectar un ratón de una marca, además, popular y reconocida? Pues es exactamente lo que ha conseguido el usuario de Twitter@jh0nh4t.

Comentarios

c

#20 gracias, majo

Fun_pub

#20 Pregunta de ignorante: partiendo de que el problema parece ser del fabricante, que crea un instalador en el que hace algo que no debería, que entiendo que es darle al usuario la posibilidad de hacer otra cosa mientras está latente algo con permisos de administrador que a su vez le permitiría ejecutar comandos, pero el software está firmado por Microsoft ¿no sería esperable que como poco Microsoft testease lo que firma? Pienso que para alguien experto, que el instalador se pare en una carpeta abierta, o un programa de chequeo que detecte esa circunstancia, no debería ser imposible ver que el instalador hace algo que no debería.

porto

#20 Bien explicado, pero creo que #2 y #47 tienen razón, en este caso la responsabilidad última es de Microsoft por permitirlo.

s

#47 bueno si, también tiene culpa MS por no comprobarlo o no haberlo detectado (aunque el ataque parece tan simple que yo creo que es lo primero)

JohnSmith_

#20 "el problema es de Razer al permitir abrir una ventana del explorador de ficheros con los mismos permisos que el proceso del instalador"

No del todo. El problema es de MS por permitir que eso pase. Tu no puedes permitirle a un fabricante que abra una ventana privilegiada y la deje ahi, comprometiendo el sistema. Si lo permites, ese fabricante podria hacer un software a proposito que permita el acceso como administrador del director de la empresa, por ejemplo, a cualquier ordenador del mundo.

s

#53 acaso no hay vulnerabilidades de seguridad en software de terceros que permiten escalada de privilegios? Es el pan de cada día, no solo en SO de Microsoft. Eso que dices que podría pasar ha pasado y seguirá pasando, y la responsabilidad es del fabricante del software. Hay mucho software de terceros corriendo con permisos privilegiados en todo tipo de sistemas.

JohnSmith_

#54 Si se puede usar un software para escalar privilegios, la culpa es de un bug del sistema operativo que hay que corregir o de una limitacion del hardware que ya no tiene remedio. Que un software necesite correr con privilegios elevados cuando no tendria por que es culpa del fabricante. Darle privilegios elevados a un software que no tendria por que necesitarlos es culpa del usuario.

Culpas hay para dar y tomar, el sistema operativo no se libra ni mucho menos.

Ovlak

#4 Pero para que un driver se ejecute con los privilegios necesarios ha de venir firmado digitalmente. Se supone que es un visto y place de Microsoft, por lo tanto, la responsabilidad última.

box3d

#7 ms no tiene acceso al código fuente.
Básicamente firma porque le has pagado, nada más.

Ovlak

#32 Si me creo que en la práctica es así, no lo discuto. En la teoría MS te vende seguridad con el tema de los controladores firmados digitalmente, así que lo suyo es que se coma su parte del marrón.

JohnSmith_

#34 El certificado lo unico que hace es decirte que el driver lo ha fabricado quien dice haberlo fabricado y que no se ha modificado despues de ponerlo en circulacion.

U

#32 Pero podrá analizar un programa aunque sea utilizando algoritmos heurísticos. Si no lo hacen es porque no quieren, no porque no puedan. Si no eres capaz de ver lo que se mueve en tu sistema operativo la firma sólo garantiza que el programa es original y no ha sido modificado. Pero no garantiza que el programa no sea originalmente malicioso o peligroso.

box3d

#44 Pero podrá analizar un programa aunque sea utilizando algoritmos heurísticos.
Entramos en territorio "es una simple cuestión de resolver el Halting Problem". Tan solo cosas muy evidentes saltan en un análisis estático de un ejecutable compilado, además simplemente usando un leguaje de scripting (el que sea que use un JIT) vas a tener que ejecutarlo para poder analizarlo, y para poder ejecutar determinados caminos de código, tienes que saber que están ahí ya de entrada si quieres analizar el programa.

No es viable.
Microsoft simplemente confía que eres una empresa "fiable" y te firma lo que le pases.

AMDK6III

#4 Y por eso, sólo hay que instalar drivers desde el gestor de paquetes del S.O. Paquetes que sí vienen firmados digitalmente. (y también usar una distro estable... y tener habilitado selinux o apparmor, p.e. (y fijate que estoy desfasado)).
Comprar Windows con GNU/Linux es un poco de risa , la verdad
PD: hay vida más allá de GNU/Linux ... hay como chorrocientos de S.O. bonitos y baratos por ahí.

D

#63 Dime más de 6 sistemas operativos "bonitos y baratos".

AMDK6III

#68 Me lo pones fácil: (todo sacado de osnews.com)
1. Ilumos (derivado de Solaris)
2. familia *BSD
3. Haiku
4. MorphOS
5. ReactOS
6. Debian Hurd

D

#69 Preciosos todos.

PD: Ridículo.
PD2: Encima se tiene que ir a una web a mirar un listado de lo mejor de la teletienda este 2021. Igual con ridículo me he quedado corto.

d

#28 Creo que no es como dices... El instalador es el que se ejecuta como admin y que abre un explorador. Que luego el driver corra en el ring 0 como todos los drivers es irrelevante en este caso.

frg

¿En serio? Tanta pollada con los "drivers verificados", y el instalador de los mismos se ejecuta como system. ¿Cuántos instaladores tendrán el mismo defecto?

D

#3 Es pagarle a Microsoft para que no lance mensajes raros cuando instalas ya sea drivers, o aplicaciones.

c

#9 FUD

alexwing

#18 iba para #_12 pero me debe tener en el ignore y no se ha referenciado, es para que no se le vaya a la pantalla de login.

dadelmo

¿En portada con 10 meneos? ¿Qué es esto?

#6 10 meneos con muchos privilegios

D

#6 menéame se rompe

Jakeukalane

#6 no es un récord ni de lejos.

woody_alien

#6 Un fallo del cabal, permite instalar noticias en portada a determinados usuarios con escalo de privilegios.

e

El problema no es que los drivers se instalen como SYSTEM, cosa que probablemente tenga que ser así. El problema es que un fabricante la ha cagado y Microsoft ha dado el visto bueno porque el driver está firmado y ha entrado dentro del repositorio de Windows Update. Error por parte del fabricante y fallo posterior por parte de Microsoft (control de calidad/ supervisión).

Ambos son culpables, y quizá en mayor medida, Microsoft. Máxime cuando el SO comprometido es suyo.

Los errores humanos pasan, pero debería haber siempre medidas y controles para que sean detectados y evitados.

D

Pues yo tengo el de la foto .... roll roll roll

D

#41 No es necesario disculparse, cualquiera tiene un malentendido. Pero muchas gracias por tu cortesía, tan escasa en tiempos de redes sociales

alexwing

deja un vídeo random de YouTube a pantalla completa, es el truco que yo uso.

Westgard

#16 a que te refieres? poner un video a pantalla completa no modifica quien ejecuta un comando o archivo de fondo...

EmuAGR

#18 Tiene pinta de que responde a #12, que probablemente lo tenga ignorado. Encima de que le ayuda...

D

#16 --> #12

s

#62 hay procesos en Linux (y otros sistemas Un*x) que tienen que sí o sí correr como root. Passwd es uno de ellos. Este ejecutable permite a usuarios normales modificar su contraseña. Para ello, se requiere modificar el fichero /etc/shadow, que incluye las contraseñas en formato hash. Y ese fichero solo puede ser leído y escrito por root. Es por ese motivo que un usuario normal cuando ejecuta passwd este debe ejecutarse como root. Para lograr esto, estos ejecutables tienen el bit setuid o setguid activados, lo que indica que esos ejecutables se ejecuta con permisos propios del propietario del ejecutable. En el caso de passwd, el propietario el root, por lo que al tener el bit setuid en 1, cualquier usuario que lo ejecute lo hace como root. Un error de seguridad en passwd (o cualquier ejecutable propiedad e root y setuid activado) que permitiera modificar su comportamiento normal (modificar el hash de la contraseña del usuario) podria permitir a un usuario normal adquirir permisos de root (lo que se llama escalada de privilegios).

AMDK6III

#64 >
estamos de acuerdo que esta ñapa debe desparecer de GNU/Linux.
Es verdad que GNU/Linux tiene muchas ñapas.
Por eso intento aprender otros S.O. también.

s

#65 No estoy de acuerdo de que tenga que desaparecer. Es algo muy útil si se utiliza bien.

AMDK6III

#66 GNU/Linux, en su diseño es demasiado monolítico, y demasiado UNIX. Es mi S.O. favorito, pero se está quedando conceptualmente obsoleto. (en mi opinión)

D

No entiendo par aque van a actualizar nada. Ese archivo sigue ahí. Tendrá que ser Windows el que le cancele el acceso y entonces si haga falta actualizar. Digo yo.

s

¡En Linux esto no pasa!

(Ya que no hay tal driver)

s

#17 en Linux muchas escaladas de privilegio se hacen aprovechando vulnerabilidades de procesos que se ejecutan como root o procesos con sudo, como el proceso passwd (por ejemplo)

AMDK6III

#22 hace muuucho que cada servicio se ejecuta con su propio usuario y no como root.
por lo menos en RedHat

Ovlak

#26 Solo se necesita ser admin para hacer instalaciones globales en %PROGRAM_FILES%

Hombre, para eso y para algunas cositas más, como escribir una clave de registro en HKLM o instalar un servicio. Escribir en program files casi es lo de menos...

D

#35 Cuando hablo de "instalaciones globales", o sea, para todos los usuarios, no me refiero a escribir en %PROGRAM_FILES%, sino al proceso de instalación al completo con todo lo que ello implica.

Ovlak

#40 Sí, vale. Te releí y te había entendido mal. Mil disculpas.

malvadoyrarito

Esto me interesa mil en el ordenador del curro. Que la pantalla se bloquea y pide contraseña si no lo uso durante 8 minutos y trabajando en casa es un coñazo.

Aokromes

#12 sabes que modificar el ordenador del curro puede ser una buena razon de despido procedente?

grodriguezgonzalez

#12 caffeine.exe

(realiza micromovimientos del mouse cada 1 min)

s

#12 como tu ordenador tenga algún tipo de EDR o similar te van a pillar bien rápido. Casi mejor que hagas un mecanismo que te mueva la ratón cada cierto tiempo o algo así.

S

¿Razer marca reconocida? Será entre los que tiene a sueldo...

Ne0

#15 tuve un ratón de esta marca allá por el 2006,me costó 5 veces lo que el Logitech de la época, pero me ha durado más de 12 años, asi que no tan desconocido ni tan malo.

Zeioth

Wtf. En Linux los drivers del mouse vienen en el kernel, no tienes que instalar nada. Y mucho menos darle permiso de administrador a algo que bien podría ser malware si lo descargas del sitio equivocado.

s

#43 los ratones gamers tienen botones y características especiales que solo funcionan con su driver. Obviamente sin instalarlos también puedas usarlo como un ratón normal, y por eso el mouse seguramente funciona antes de instalar los drivers de Razer.

D

El pan nuestro de cada día en Windows. No es ni noticia.

Me pregunto si será complicado simular la conexión de un dispositivo USB concreto, o cambiar el USB ID de cualquier otra cosa. Así no necesitas ni un ratón de esa marca ni nada, solo obligar que el SO instale esos drivers.

s

#23 si se puede. De hecho hay juguetitos que se utilizan para hacer maldades (o auditorías de seguridad) que se aprovechan de esto. Uno de ellos es un dispositivo que se parece exteriormente a un pendrive que es identificado como un teclado por Windows. Este dispositivo es programable y permite introducir lo que tú quieras de forma automática. Te permite atacar un ordenador que alguien se ha dejado sin desbloquear rápidamente sin tener que tocar el teclado, solo conectando el dispositivo este por USB.

AMDK6III

Tu argumentación es exquisita.
Me has convencido.

D

Como avanza la tecnología. Da gusto.

D

No lo entiendo. Normalmente Windows pide credenciales de admin para instalar software, y mucho más drivers. Como puede ejecutar un imstaller cómo usuario sin privilegios y este acaba usando la cuenta de system?

Ehorus

#5 ...voy a hacer el chiste fácil
todos los software y drivers son iguales ante la instalación en windows 10

D

#8 Pues no, el chiste te salió mal. Resulta que hay muchos programas que se pueden instalar en la carpeta de usuario sin requerir permisos de admin. Solo se necesita ser admin para hacer instalaciones globales en %PROGRAM_FILES%
Mañana más

D

#26 ¿Mañana más qué?

Ovlak

#5 Para eso se inventaron las firmas digitales de los controladores. Si un administrador del sistema de la empresa X tuviera que invertir su tiempo de instalar los drivers de ratones, teclados, webcams y cascos usb de todos los usuarios de la misma, hace tiempo que se habría pegado un tiro en la sien. Por eso, los drivers firmados digitalmente se supone que ya han sido verificados previamente para que un usuario sin privilegios los pueda instalar, incluso desde los propios repositorios de Windows Update.

musg0

#5 Por lo que dice el artículo el sistema plug and play de Windows ejecuta el instalador como system y al tener el instalador una forma de sacar una shell, ésta se ejecuta como system y te permite hacer lo que te venga en gana. Supongo que lo lógico sería que el sistema ese ejecutara el instalador con el usuario que esté logueado.
Salvando las distancias en Linux se puede hacer la misma cagada si como administrador das a un usuario permiso de administrador sobre vim, o cualquier otro programa que permita crear procesos

s

#14 la de veces que ha pasado lo mismo por vulnerabilidades en sudo, por ejemplo...

f

#14 me recuerda a un "fallo" bastante conocido (no sé si seguirá funcionando a día de hoy) para conseguir una shell con permisos SYSTEM desde la pantalla de login de Windows lol había que tener activo no se qué cosa de accesibilidad que se podía invocar pulsando 5 veces seguidas la tecla máyus, pues bien lo que hacía eso era abrir un ejecutable llamado sethc.exe. Si de alguna manera (desde una distro Linux, por ejemplo) cambiabas el sethc.exe por cmd.exe, luego te saltaba la shell en vez del programita de accesibilidad, desde ahí podías ejecutar cualquier cosa con permisos SYSTEM, como "control userpasswords2" para cambiar contraseñas de usuarios lol