El 14 de septiembre, Huntress descubrió una amenaza emergente relacionada con FOUNDATION Accounting Software, un software comúnmente usado por contratistas en la industria de la construcción. Se ha observado a los atacantes realizando ataques de fuerza bruta contra el software a gran escala, y obteniendo acceso simplemente usando las credenciales predeterminadas del producto. Estamos viendo intrusiones activas en las subindustrias de plomería, climatización, concreto y similares.
Cómo funciona
El software FOUNDATION incluye una instancia de Microsoft SQL Server (MSSQL) para manejar sus operaciones de base de datos. Si bien es común mantener un servidor de base de datos interno y protegido por un firewall o VPN, el software FOUNDATION cuenta con conectividad y acceso mediante una aplicación móvil.
Por esa razón, el puerto TCP 4243 puede estar expuesto públicamente para uso de la aplicación móvil. Este puerto 4243 ofrece acceso directo a MSSQL.
Microsoft SQL Server incluye una cuenta de administrador del sistema predeterminada llamada sa, que tiene privilegios administrativos completos sobre todo el servidor. Además, el software FOUNDATION parece haber creado una cuenta dba, que no es un usuario integrado, pero Huntress ha observado múltiples casos donde estas cuentas de alto privilegio quedan con credenciales predeterminadas sin cambiar.
Debido a que estas cuentas tienen un privilegio tan alto, estas cuentas de administrador pueden habilitar y aprovechar fácilmente una función conocida como xp_cmdshell dentro de MSSQL. Este es un procedimiento almacenado extendido que permite la ejecución de comandos del sistema operativo directamente desde SQL, lo que permite a los usuarios ejecutar comandos y scripts de shell como si tuvieran acceso directo desde la línea de comandos del sistema.
-- Enable advanced options
EXEC sp_configure 'show advanced options', 1;
RECONFIGURE;
-- Enable xp_cmdshell
EXEC sp_configure 'xp_cmdshell', 1;
RECONFIGURE;
-- Run a shell command as an example
EXEC xp_cmdshell 'ipconfig';
Cómo mantenerse protegido
Dado que estamos viendo a los atacantes explotar versiones expuestas públicamente del software usando credenciales predeterminadas, recomendamos lo siguiente para mitigar esta amenaza:
- Rota todas las credenciales de las cuentas conectadas a la base de datos de FOUNDATION, incluyendo dba y sa.
- Esto se puede hacer dentro de MSSQL con un comando:
ALTER LOGIN sa WITH PASSWORD = 'NewStrongPassword';
ALTER LOGIN dba WITH PASSWORD = 'AnotherNewPassword';
- Esto se puede hacer dentro de MSSQL con un comando:
- Cuando sea posible, deja de exponer la aplicación Foundation al Internet público.
- Deshabilita xp_cmdshell cuando sea apropiado.
Cómo descubrimos la amenaza
El Huntress SOC detectó inicialmente actividad que comenzó el 14 de septiembre a las 15:38:35 UTC. Lo que nos alertó fueron comandos de enumeración de hosts/dominios que se originaban desde un proceso principal de sqlservr.exe.
Al analizar los puntos en común entre los equipos afectados, quedó claro que el ataque fue programado mediante un script, ya que los mismos comandos se propagaron en varias empresas no relacionadas en un lapso de pocos minutos.
Para tus propias investigaciones, el software FOUNDATION normalmente se instala en:
C:\Program Files (x86)\Foundation
con un subdirectorio, ServerConsole3000, que contiene su componente de servidor.
Para examinar el acceso a la base de datos SQL, vimos los intentos de fuerza bruta en
C:\Program Files\microsoft sql
server\MSSQL12.FOUNDATION\MSSQL\Log\ERRORLOG
donde la versión MSSQL12 puede variar entre MSSQL11, MSSQL13, MSSQL15, etc.
En un equipo observamos alrededor de 35.000 intentos de inicio de sesión por fuerza bruta contra el servidor MSSQL, que terminaron apenas una hora antes de una autenticación exitosa y de habilitar xp_cmdshell para ejecutar comandos. Esto se evidencia en los registros:
2024-09-14 11:24:45.79 spid51 Configuration option 'show advanced options' changed from 0 to 1. Run the RECONFIGURE statement to install.
2024-09-14 11:24:45.81 spid51 Configuration option 'xp_cmdshell' changed from 0 to 1. Run the RECONFIGURE statement to install.
Si bien los intentos de fuerza bruta pueden provenir de cualquier escáner en internet, el acceso a xp_cmdshell a partir de simples credenciales predeterminadas es un problema mucho más grave.
Al analizar los más de 3 millones de endpoints que Huntress protege, descubrimos alrededor de 500 equipos que ejecutaban el software FOUNDATION. De ese grupo, confirmamos que una muestra de 33 equipos estaban expuestos públicamente con credenciales predeterminadas sin modificar.
Cómo ha respondido Huntress
Como solemos hacer, aislamos de inmediato cualquier máquina donde detectamos actividad sospechosa mientras investigamos. En ese punto, nos propusimos identificar la causa subyacente de las actividades sospechosas. También tomamos medidas para identificar posibles capacidades de detección.
Además de notificar a quienes presentaron actividad sospechosa, también enviamos una notificación de advertencia preventiva a todos nuestros clientes y partners que tienen el software FOUNDATION en su entorno. Si bien no vimos actividad sospechosa en esas cuentas, queríamos asegurarnos de que tomaran las medidas preventivas que sugerimos anteriormente para reducir el riesgo de que se vean comprometidos en el futuro.
Agradecimiento especial a Tanner Filip, Michael Tigges, John Hammond, Jamie Levy, Alden Schmidt, Craig Sweeney, Dray Agha, y a otros por su incansable esfuerzo y sus contribuciones a esta investigación y a este artículo.