Hace algunos días abordamos el tema de la seguridad en el ERP Odoo, y como es posible "hackear Odoo", aprovechando una mala implementación del sistema, así como malas practicas al momento de desarrollar nuevos módulos.
En las siguientes entradas veremos como crear nuestro propio script para automatizar las tareas de realizar una auditoria de seguridad a nuestro sistema ERP Odoo, esto debido a que no hay muchas, si es que ningún script para auditar este sistema 100% dedicado a Odoo. Este script lo trabajaremos en el repositorio de git de odoo_hacking, el cual puedes descargar para utilizarlo.
Iniciaremos con algo básico, para ello emplearemos el lenguaje de programación python, en mi caso empleare el Spyder como entorno de desarrollo.
Empezaremos solicitando un parámetro, el cual es el host donde se aloja Odoo, esto nos servirá en adelante, ya será nuestro objetivo para realizar la auditoria.
Como primer punto, debemos conocer el sistema que vamos a auditar, si bien es cierto, sabemos que es Odoo, aun debemos determinar que versión es, puesto que hay muchas versiones, y las mas vulnerables son las mas antiguas y las mas recientes. Esto es porque las versiones antiguas tienen menos soporte, la prioridad suelen ser versiones mas recientes. Por otro lado, las versiones mas recientes, en este caso la versión 15, existen muchos bugs que salen con frecuencia, debido a su reciente salida al mercado. Aunque existen versiones estables, como lo son la 13 y 14, aunque suelen ser estables, pueden ser objeto de ataque.
Además de lo anterior, debemos conocer si es Enterprise o Comunitaria, aunque la seguridad es buena en Odoo, puede lleguemos a punto, donde encontremos una vulnerabilidad en un modulo Enterprise, el cual nos será imposible auditar bajo una Comunitaria.
Para obtener esta información, debemos invocar el método versión, por medio del protocolo xmlrpc, este método puede ser llamado sin estar autenticado en el sistema de Odoo.
Imagen 1: Código para obtener la versión de Odoo.
Imagen 2: Script Odoo hacking main.
Imagen 3: Ejecución de script para obtener versión.
En las próximas entradas estaremos agregando mas funcionalidades al script, para que nos permita realizar una auditoria mas amplia de Odoo.
Saludos.