Microsoft : les instances SQL Server ciblées par des attaques par brute force
Microsoft alerte ses utilisateurs sur le fait qu'il y a des attaques brute force en cours qui ciblent les serveurs Microsoft SQL Server exposé sur Internet et peu sécurisé, la faute notamment à un mot de passe faible.
Ce n'est pas la première attaque de ce type qui est menée, mais c'est sûrement l'occasion pour Microsoft de rappeler l'importance de bien sécuriser son instance SQL Server. Ce qui est particulier dans le cadre de cette attaque, c'est qu'elle s'appuie sur l'outil natif de SQL Server nommé "sqlps.exe". Cet outil est inclus avec toutes les versions de SQL Server, par défaut. De ce fait, "sqlps.exe" agit comme un LOLBin, dans le cas présent, un fichier légitime, car signé par Microsoft, mais qui est utilisé à des fins malveillantes, et donc, qui ne va pas nécessairement attirer l'attention des antivirus et EDR. Ainsi, il peut agir sur le serveur et effectuer différentes actions sans être perturbé.
D'après l'équipe Microsoft Security Intelligence : "Les attaquants obtiennent la persistance sans déposer de fichier en faisant apparaître l'utilitaire sqlps.exe, un wrapper PowerShell pour exécuter des cmdlets SQL, afin d'exécuter des commandes de reconnaissance et changer le mode de démarrage du service SQL en LocalSystem". En complément, les attaquants s'appuient sur "sqlps.exe" pour créer un nouveau compte avec des privilèges élevés afin d'obtenir un contrôle total sur l'instance SQL Server. Lorsque cette étape est effectuée avec succès, cela laisse la possibilité de mettre en place d'autres charges utiles sur le serveur. Lors de campagnes précédentes, les attaquants ont mis en place un logiciel malveillant de type "cryptomining" (Monero ou Vollar) sur les serveurs compromis afin de miner des cryptomonnaies.
SQL Server : quelques règles de sécurité de base
Même si cela semble logique, il est important de rappeler qu'un serveur SQL Server ne doit pas être exposé directement sur Internet. En complément, et notamment pour se protéger contre les attaques de type brute force, il est indispensable d'utiliser un mot de passe complexe, de placer le serveur SQL derrière un pare-feu et de surveiller l'activité du serveur (journaux d'événements, logs).
Le serveur où est installé SQL Server doit être maintenu à jour, tout comme l'instance SQL Server en elle-même, afin de se protéger contre les failles de sécurité les plus récentes.
Je profite de cet article pour vous rappeler que la solution CrowdSec est en cours de développement sur Windows et qu'elle permet de se protéger contre différents types d'attaques, notamment au niveau de SQL Server.