Hack x Crack - Comunidad de Seguridad informática

Hack x Crack => Off-Topic => Noticias Informáticas => Mensaje iniciado por: animanegra en Marzo 08, 2017, 07:24:07 pm

Título: NAS de WD vulnerables
Publicado por: animanegra en Marzo 08, 2017, 07:24:07 pm
Un error muy guai de los NAS de WD:

https://blog.exploitee.rs/2017/hacking_wd_mycloud/ (https://blog.exploitee.rs/2017/hacking_wd_mycloud/)

Los muy fieras intentaron arreglar una chapuza de codigo:
Código: [Seleccionar]
{
        $ret = 0;
        if (isset($_SESSION['username']))
        {
                if (isset($_SESSION['username']) && $_SESSION['username'] != "")
                $ret = 2; //login, normal user

                if ($_SESSION['isAdmin'] == 1)
                        $ret = 1; //login, admin
        }
        else if (isset($_COOKIE['username']))
        {
                if (isset($_COOKIE['username']) && $_COOKIE['username'] != "")
                $ret = 2; //login, normal user

                if ($_COOKIE['isAdmin'] == 1)
                        $ret = 1; //login, admin
        }
        return $ret;
}

Con una llamada a un comando exec, y si el primero te daba entrada a la interfaz con privilegios de administrados metiendo las cookies correctas (las que se ven en el codigo) en tu navegador, en la segunda version permitieron una pasar argumentos al binario:

Código: [Seleccionar]
exec(sprintf("wto -n \"%s\" -i '%s' -c", escapeshellcmd($username), $_SERVER["REMOTE_ADDR"]), $login_status);

doblando el uso de comillas el escapeshellcmd no las escapa por lo que puedes pasar argumentos al binario pudiendo hacer que acepte tu usuario como logeado.

Ademas metieron una ejecución remota de codigo:

Código: [Seleccionar]
$username = $_COOKIE['username'];
exec("wto -n \"$username\" -g", $ret);

Bastante sorprendente, pero normal cuando piden a los programadores que arreglen los fallos para ayer.
Título: Re:NAS de WD vulnerables
Publicado por: ravenheart en Marzo 08, 2017, 09:42:33 pm
Bastante sorprendente, pero normal cuando piden a los programadores que arreglen los fallos para ayer.

¿Sorprendente?
Mi experiencia es que el programador medio no tiene ni puñetera idea de seguridad, y si escapa el SQL es porque ya se ha encontrado con que le han metido una comilla simple y le ha petado.

Al margen de eso, es complicado. La seguridad no es un fin en sí mismo y hay que encontrar el delicado equilibrio entre tener un producto razonablemente seguro, y mantener los costes por debajo del objetivo. Sobre todo en productos de bajo coste (y este tiene pinta de serlo) se tiende a escatimar en sueldos de programadores y en horas de pruebas.
Lo que es razonable depende del coste de la seguridad y del coste (y la probabilidad) de que la revienten. En este caso, una pequeña NAS doméstica, el coste de que la revienten parece asumible (depende de lo que guarde cada uno, claro, pero en general...)
Título: Re:NAS de WD vulnerables
Publicado por: animanegra en Marzo 08, 2017, 10:31:46 pm
Bueno, entrando en costes de 550 euros por NAS, yo no diria que esta restringido al entorno domestico. :) Los mycloud van desde entorno domestico hasta entornos de pequeñas empresas. No es una cabina de discos de las enracables pero tampoco es un NAS baratuno de los de mediamark de 100 pavos. :)
La cloud EX2 va por 750 dolares (la version 12 teras) y el PR410 esta por los 1600 dolares.

Eso si, despues de ver el nivel de seguridad igual si que los castigaria al entorno home :D