Вы находитесь на странице: 1из 6

Datos iniciales e instalacin

El programa es un ERP enfocado a PYMES, la verdad est bastante completo


tiene gestin de stocks, tpv, facturacin y un pequeo CRM incorporado.
Este enlace es al FTP de clientes de la empresa:
http://descargas.landin.es:8080/landin/
El usuario es: descargas
Y la contrasea: landin2015
Dentro del servidor FTP tienes una seccin de Distribuidores con una gua de
cmo se instala el programa, no tiene mucha ciencia, hay que instalar el
gestor de bases de datos Firebird, el Sentinel Protection (en caso de que
uses un dongle con la licencia), luego en la seccin de Actualizaciones
tienes el programa en s, la ltima versin es GesLan ERP 4.9.0.2.msi
El programa utiliza como base de datos Firebird que se pueden abrir con el
progama Flamerobin http://www.flamerobin.org/ para analizar la estructura
de la base de datos.
Una vez instalis el programa la base de datos se guarda en la ruta
C:\ProgramData\Landin Informatica\GesLan ERP\data con extensin .FDB, si
os fijis tambin hay un archivo que se llama GESLANERP.SISTEMA.FDB que
ya comentar ms adelante.
El ejecutable del programa se guarda en la ruta C:\Program Files
(x86)\Landin Informatica\GesLan ERP con nombre GesLan_ERP.exe y un
tamao aproximado de 50mb, ms adelanta tambin comentar otro dato
sobre esto.
Al instalar el programa se ejecutan los servicios de Sentinel, Firebird y
LandinAppServices
Para activar el programa es necesario una Key o un Dongle:

Key: al introducir la key se conecta con el servidor de Landin, verifica


que exista, que no est activada y valida el programa.
Dongle: te dan un pendrive con la licencia, lo insertas en el ordenador
que quieras ejecutar el programa y listo.

Ellos venden licencias para ordenadores, es decir con una misma Key, se
pueden usar X usuarios, si empiezas con 1 usuario, cuando pagas otra
licencia adicional, necesitas sincronizar la clave de nuevo para que te
activen otro usuario ms.
Si se instala el programa en un servidor con terminal service, los usuarios
que se conecten a travs de VPN para ejecutar la aplicacin en sesiones
remotas pueden utilizar el programa libremente, el sistema no detecta
cuantos programas hay abiertos. Este fue el mtodo que descubr.

A donde quiero llegar es a ser capaz de descifrar el intercambio de


informacin entre la activacin del programa y los servidores de Landin,
haciendo un Man In The Middle.
Anlisis de la base de datos
Lo primero que hice fue analizar la base de datos con Flamerobin, cog la
base de datos de la empresa para ver si haba alguna tabla donde guardase
informacin de la licencia, y al abrirla me peda un usuario y una
contrasea, lo primero que se me ocurri es ir a la pgina de Firebird y ver
que usuario y contrasea creaba para las bases de datos por defecto, y
bingo.
Usuario: SYSDBA y contrasea: masterkey (muy original la verdad)

En la captura podis ver donde se introducen los datos para abrir la base de
datos.
Me encontr varias cosas curiosas. La primera es que el usuario admin, que
se supone que es el que puede modificar todos los parmetros del
programa, borrar cosas, modificar facturas, eliminar tickets, crear usuarios
etc en resumen que si eres un empleado maligno puedes liarla parda. Pues
guarda la contrasea en texto plano como se puede ver en la siguiente
captura:

Y la segunda cosa curiosa es que que todos los usuarios creados en la


aplicacin tambin guardan la contrasea en texto plano.
Despus de echar un vistazo por toda la base de datos no encontr nada
ms relevante que pudiera asociar el programa a la licencia.
Por lo que el siguiente paso fue abrir la base de datos
GESLANERP.SISTEMA.FDB que casualmente tambin usa usuario y
contrasea por defecto, y aqu es dnde encontr almacenada la licencia.

Al ver eso fui corriendo a copiarme esa base de datos en mi ordenador local
para ver si funcionaba pero no funcion (no poda ser tan fcil)
Esta es la licencia (Tipo de datos BLOB):
79 39 5A 6D 58 45 33 37 72 52 46 79 75 6D 6F 59
48 35 31 63 36 6D 72 75 76 59 45 66 2F 39 36 66
49 56 35 56 4B 41 61 64 64 47 4F 65 31 68 71 56
69 32 65 72 32 45 46 74 4C 6E 55 78 78 6E 44 6C
4A 31 79 58 67 77 6B 69 50 62 69 41 5A 47 38 39
7A 6E 72 68 4E 6C 67 33 33 34 4F 41 37 47 64 31
74 55 48 49 56 69 61 30 33 43 42 62 70 62 4D 50
45 63 37 52 44 78 56 4C 55 67 7A 59 50 30 56 48
65 43 6F 52 6F 31 46 48 4E 56 55 69 55 67 2B 5A
6D 56 52 78 73 43 68 64 56 70 62 74 59 68 4C 50
6B 67 41 6E 4E 76 69 32 46 57 58 77 6D 2F 36 35
51 34 34 39 35 4B 49 7A 38 64 6B 57 43 59 65 37
58 66 52 30 64 53 57 46 31 31 74 2B 53 67 4B 57
50 72 6C 75 7A 4D 74 6C 69 6A 72 43 67 64 67 39
49 32 79 6D 46 67 57 31 59 4F 4D 5A 7A 7A 6F 36
56 38 7A 6A 6D 52 78 56 44 46 6B 59 38 41 39 68
46 54 36 67 59 6E 76 34 38 30 63 6F 45 45 39 63
79 31 4C 65 75 50 74 79 53 64 47 76 77 33 49 46
65 52 43 74 77 42 50 78 31 70 74 5A 74 6B 2F 55
56 38 65 76 68 41 54 72 55 43 51 51 43 34 65 76
4C 64 52 43 79 4A 65 6A 5A 70 4E 51 65 2F 36
Y al pasarla a texto plano obtienes:
y9ZmXE37rRFyumoYH51c6mruvYEf/96fIV5VKAaddGOe1hqVi2er2EFtLnUxxn
DlJ1yXgwkiPbiAZG89znrhNlg334OA7Gd1tUHIVia03CBbpbMPEc7RDxVLUgzYP
0VHeCoRo1FHNVUiUg+ZmVRxsChdVpbtYhLPkgAnNvi2FWXwm/65Q4495KIz8
dkWCYe7XfR0dSWF11t+SgKWPrluzMtlijrCgdg9I2ymFgW1YOMZzzo6V8zjmRx
VDFkY8A9hFT6gYnv480coEE9cy1LeuPtySdGvw3IFeRCtwBPx1ptZtk/UV8evhA
TrUCQQC4evLdRCyJejZpNQe/6

Una cadena de 335 caracteres. No saco nada relevante de esto pero lo dejo
como dato.
Actualizaciones del programa
Siempre que haba una actualizacin parcial del programa haba que
descargar un archivo GesLan_ERP.exe que haba que sobrescribir en la ruta
donde estaba instalado el programa. Al sobrescribirlo perda la asociacin a
la licencia y tenas que ponerla de nuevo para arrancar el programa por
primera vez despus de la actualizacin.
Por lo que dentro del GesLan_ERP.exe se debe guardar informacin
relevante de la licencia.
Tambin prob a cotejar la licencia de la base de datos anterior cuando la
introduces despus de una actualizacin, y sigue siendo la misma.
Por si lo estis pensando tambin prob a pasarme el archivo
GesLan_ERP.exe y la base de datos con la licencia a mi ordenador para ver si
me dejaba abrirlo sin pedir la licencia, pero tampoco funcion.
Anlisis de trfico con WireShark
He analizado el trfico existente en 3 situaciones diferentes:

Licencia no vlida: en este supuesto he introducido una licencia


cualquiera para ver el trfico que genera entre el ordenador y el
servidor
Licencia vlida: aqu lo mismo que el anterior pero con una licencia
vlida
Licencia ya registrada: aqu tras haber registrado la licencia en un
ordenador, prob a introducir la misma clave en otro ordenador y me
salta un error de que la clave ya est registrada, sin embargo, si en el
ordenador que ya la has registrado, en caso de actualizacin si te
deja volver a registrarla. Como comentario para poder registrar la
licencia en otro ordenador ellos tienen que tocar algo en su base de
datos, ya que una vez me sala que ya estaba registrada y tuvieron
que resetear algo en su registro de licencias.

En los tres supuestos se inicia siempre una comunicacin entre la IP de tu


ordenador y la IP 213.60.227.132 en diferentes puertos el 8081 y el 2112
que corresponde al dominio descargas.landin.es (el dominio landin.es tiene
otra IP diferente) hay bastantes paquetes en comn y se inicia
comunicacin cifrada con RSA Public Key y a partir de ah vienen los
paquetes encriptados.
Os dejo los 3 archivos con la monitorizacin de paquetes para que le echis
un vistazo.
Hiptesis, pruebas pendientes y otros datos

El archivo GesLan_ERP.exe debe contener algn dato adicional de la licencia


Si detienes el servicio LandinAppServices no funciona el programa
Tengo pendiente probar a desviar el trfico a un servidor remoto para ver
las diferencias del trfico
Tengo pendiente tambin utilizar algn programa tipo OllyDbg para analizar
el archivo GesLan_ERP.exe y el archivo LandinAppServices pero mis
conocimientos en lenguaje ensamblador son bastante nulos
Os puedo dar acceso mediante VPN al servidor de la empresa por si queris
hacer alguna prueba con el programa ya activado, pero tiene que ser fuera
del horario comercial, a partir de las 9 de la noche.

Вам также может понравиться