Saludos, esta info la copie de los foros de Elastix.org, es muy importante, lean.
Desde ya algunas semanas atrás quería publicar en este blog este artículo de mi estimado amigo Fernando Villares, como verán al leerlo es una falla grave de seguridad que expone los equipos a un ataque, es como cerrar la puerta con seguro pero dejar la llave pegada por fuera,
A continuación les dejo el articulo intacto tal como Fernando lo publico en el Blog de Sinologic.
A continuación les dejo el articulo intacto tal como Fernando lo publico en el Blog de Sinologic.
Durante el movidísimo día de ayer en las listas de Elastix(r) recibimos un dato desconcertante que nos alarmó sobremanera. Ante todo….FreePBX para quien no conoce, es un front end que conecta las configuraciones que creamos en una interfaz web, que son guardadas en una base de datos de MySQL y luego transformadas en los archivos de texto que asterisk utiliza para tomar sus configuraciones.
Ahora la cuestión es la siguiente, en todas las versiones de FreePBX, utilizamos normalmente el user admin o similar para crear, modificar o ver datos del mismo sistema de front end de Asterisk(r)….pero resulta ser que si tenemos en FreePBX definido el método de autenticación de ingreso al sistema como database…(o sea que no toma los users autorizados de los users del server web apache, sino que los toma de una lista de users en las bases de datos MySQL) el usuario y clave definidos para acceder a las bases de datos también pueden acceder a la interfaz Web…y con permisos de ADMIN!!!!!!
Ahora la cuestión es la siguiente, en todas las versiones de FreePBX, utilizamos normalmente el user admin o similar para crear, modificar o ver datos del mismo sistema de front end de Asterisk(r)….pero resulta ser que si tenemos en FreePBX definido el método de autenticación de ingreso al sistema como database…(o sea que no toma los users autorizados de los users del server web apache, sino que los toma de una lista de users en las bases de datos MySQL) el usuario y clave definidos para acceder a las bases de datos también pueden acceder a la interfaz Web…y con permisos de ADMIN!!!!!!
Esto no es tan grave podrán pensan muchas personas…porque si puse un user x y una clave secreta solo para mi sistema, si el atacante no sabe la clave no podría acceder ….y aquí viene lo interesante….las distros que traen FreePBX integrado desde 0, como AsteriskNow(r), Trixbox CE,Elastix(r), PBX in A flash, etc….todas traen un user por default de su db, normalmente llamado asteriskuser con permisos solo en el localhost y claves conocidas y ESTÁNDARES!!!!!
Por lo tanto todos esos sistemas son pasibles de que cualquier atacante solo con saber que en X ip hay un sistema de este tipo instalado, simplemente intentando loguearse via web en http://mi-ip/admin o sea al FreePBX con user asteriskuser y la clave por default de esa distro, ya tendría acceso completo a nuestra interfaz de configuración, pudiendo desde ese momemto crear extensiones y usar ilegalmente nuestro sistema, eliminar configuraciones, etc, etc….
Ahora, antes de hacer esta noticia de público conocimiento en la comunidad, en el proyecto Elastix(r) inmediatamente nos pusimos manos a la obra y gracias a los excelentes desarrolladores de Palosanto, en unas pocas horas ya teníamos el paquete RPM de FreePBX corregido listo para download en los repositorios de nuestra distro…
Formas de corregir esta gravísima falla:
En Elastix(r), ejecutar el comando yum upgrade freePBX* o yum upgrade -y
En las demás distros,
1) desde mysql cambiar la clave del usuario asteriskuser por una nueva, para eso podemos usar webmin, phpMyadmin o mysql por consola….
2) Ejecutar ésta sentencia en las carpetas /etc y /var/www/ para reemplazar las líneas de código que apuntan a dicha clave
grep -rlZ ‘clave-a-cambiar’ /etc/ | xargs -r0 perl -pi -e ‘s/clave-a-cambiar/nuevaclave/g’
Ejecutar service mysqld restart y service httpd restart para que el sistema acepte los nuevos cambios y probar que nuestro usuario y clave por default de la db no queden mas abiertos tratando de entrar nuevamente con ellos….
También ya que estamos no es mala idea ver si tenemos por default el usuario admin de la interfaz Asterisk Recording Interface que también trae el FreePBX…
Como lo cambiamos…
vi /etc/amportal.conf y agregamos al final del archivo estas 2 líneas….
ARI_ADMIN_USERNAME=admin
ARI_ADMIN_PASSWORD=mi-nueva-clave
Luego restarteamos con:
amportal restart
Con esto ya tenemos esta grave vulnerabilidad solucionada….
Recalco nuevamente la necesidad y la importancia de la seguridad física y lógica de las centrales IP publicadas en Internet y la importancia del acceso seguro a las mismas….ya sea por VPN´s de cualquier tipo, eliminación de accesos web para usuarios de la WAN, etc, etc…
Saludos a todos, espero que esta información les sea de utilidad y agradezco a toda la gente que brindó información y soluciones durante todo el día en los foros de Elastix.
No hay comentarios:
Publicar un comentario