Des vulnérabilités dans ImpressCMS pourraient permettre à un attaquant non authentifié de contourner les protections d’injection SQL du logiciel pour réaliser l’exécution de code à distance (RCE), a averti un chercheur en sécurité.

Les vulnérabilités, une faille d’injection SQL (CVE-2021-26599) et un bogue de contrôle d’accès, ont maintenant été corrigés dans la dernière version du populaire système de gestion de contenu (CMS) open source.

Cependant, la même technique pourrait être utilisée modifiée pour contourner d’autres outils de sécurité bien connus – ce qui signifie finalement que les fonctionnalités conçues pour se protéger contre les exploits d’injection SQL peuvent être abusées et retournées contre l’application hôte.

Attaques non authentifiées

Le chercheur Egidio « EgiX » Romano, a déclaré que cette vulnérabilité « ne devrait être exploitable que par les utilisateurs enregistrés d’ImpressCMS ». Cependant, en raison d’un contrôle d’accès incorrect, il pourrait être contourné (CVE-2021-26598) et exploités par des attaquants non authentifiés également.

Romano a dit La gorgée quotidienne: « Pour exploiter avec succès cette vulnérabilité, vous devez faire face à Protector, qui est une sorte de pare-feu d’application Web (WAF) intégré dans ImpressCMS, et c’est là qu’est venue l’idée d’utiliser cette ‘nouvelle’ technique d’injection SQL.

« La partie intéressante est que cette même technique, qui devrait avoir 20 ans, pourrait également être utilisée pour contourner les pare-feu d’applications Web de nos jours », a déclaré Romano, qui a affirmé que l’ensemble de règles de base OWASP ModSecurity et le WAF de Cloudflare sont parmi ceux à risque.

Dans un article de blogRomano a expliqué qu’une exploitation réussie de ces vulnérabilités pourrait conduire à RCE.

Il existe certaines limitations, à savoir qu’ImpressCMS doit être installé avec le pilote de base de données PDO, ce qui permet des requêtes empilées, mais « en général, il n’y a que deux exigences pour que cette technique d’injection SQL fonctionne – l’application doit être vulnérable à l’injection SQL, bien sûr, [and] l’application doit prendre en charge l’exécution de plusieurs requêtes SQL (empilées) ».

Effet d’entraînement

Le chercheur a signalé les problèmes à ImpressCMS via HackerOne en janvier 2021, et les deux bogues ont maintenant été corrigés.

Romano affirme cependant que deux technologies de sécurité majeures – ModSecurity Core Rule Set (CRS) d’OWASP et WAF de Cloudflare – peuvent être contournées grâce à cette technique.

Romano a dit La gorgée quotidienne que lorsqu’il est configuré avec ‘Paranoia Level 1’ (la configuration par défaut), les règles de détection d’injection SQL de ModSecurity peuvent être contournées avec une « version légèrement modifiée » de la technique qui a été initialement développée contre ImpressCMS Protector.

Il a ajouté : « CRS s’appuie également sur libinjection pour détecter les modèles d’injection SQL, une bibliothèque open source dans laquelle j’ai découvert un bogue qui permet de contourner ses mécanismes de détection. »

TU POURRAIS AUSSI AIMER Leçons apprises : comment une vulnérabilité grave dans l’ensemble de règles de base de l’OWASP ModSecurity a déclenché des changements indispensables

« Cela contournera les règles de détection de libinjection, mais pas toutes les règles CRS », a-t-il ajouté.

Parler à La gorgée quotidienneChristian Folini, co-responsable du projet ModSecurity, a confirmé que le CRS est vulnérable.

Il a ajouté : « Les contournements de l’installation par défaut ne sont pas les bienvenus, mais ils sont acceptés dans une certaine mesure.

« Nous conseillons aux utilisateurs ayant des besoins de sécurité plus élevés, essentiellement tous ceux qui font des affaires sur Internet, d’augmenter leur niveau de paranoïa à 2 ou plus lorsque nous détectons des contournements comme ceux en question. »

Charge utile bloquée

Parler à La gorgée quotidienneMichael Tremante, chef de produit chez Cloudflare, a déclaré que la charge utile détaillée dans le blog de Romano est bloquée par son WAF.

Tremante a commenté: «Pour autant que nous puissions en juger, le chercheur a abaissé la sensibilité du WAF (par exemple le niveau et le seuil de paranoïa OWASP) à un point où la charge utile n’était plus détectée.

« Il est probable qu’ils n’aient pas toutes les règles WAF activées. Cependant, sans informations supplémentaires, nous ne pouvons pas confirmer qu’un contournement a été trouvé.

« Nous aimerions également rappeler aux chercheurs que toute activité de test contre notre WAF doit être effectuée sur Cloudflare. domaine public du programme de primes aux bogues car très souvent, les contournements sont dus à des paramètres WAF mal ou intentionnellement configurés. Le domaine de test de Cloudflare est correctement configuré avec de bons paramètres WAF.

« S’il y a des charges utiles supplémentaires, nous invitons les chercheurs à les soumettre via le programme de primes de bogues de Cloudflare, car les commentaires nous permettent d’améliorer nos produits. »

Autres risques

Le billet de blog de Romano contient plus de détails techniques sur la vulnérabilité.

Le chercheur a déclaré qu’il avait « un bon sentiment que la plupart des produits IDS/IPS/WAF pourraient être vulnérables à cette technique d’injection SQL », ajoutant qu’il n’avait cependant pas le temps et les ressources pour tous les tester.

Les utilisateurs doivent mise à jour vers la dernière version d’ImpressCMS (1.4.4) immédiatement.

La gorgée quotidienne a contacté ImpressCMS pour un commentaire et mettra à jour cet article au fur et à mesure que nous vous répondrons.