
Analyse approfondie : Naviguer dans la vulnérabilité critique de CUPS dans les systèmes GNU-Linux
Les utilisateurs de Linux n'ont pas eu la vie facile ces derniers temps, plusieurs vulnérabilités de haute gravité ayant apparemment affecté le système de différentes manières au cours des dernières années. Les chercheurs en sécurité ont maintenant un autre groupe de vulnérabilités à analyser, toutes liées à la fonction CUPS (Common UNIX Printing System) ciblant les systèmes GNU/Linux et présentant une voie potentielle pour une puissante exécution de code à distance (RCE).
Le 27 septembre 2024, Simone Margaritelli d'evilsocket.net informations critiques publiées sur plusieurs vulnérabilités exploitables dans CUPS, et des CVE ont ensuite été attribués à quatre d'entre elles. Ce chiffre pourrait augmenter, mais au moment de la rédaction de cet article, la communauté de la sécurité débat de la gravité réelle de ces découvertes. Alors que l'un des CVE, CVE-2024-47177, a actuellement une cote de gravité critique de 9,1 selon MITRE. La réussite de la manipulation de cette faille d'injection de commandes dépend des serveurs sur lesquels le service CUPS est activé et nécessite en outre l'accès au port UDP 631 ou au DNS-SD. Chapeau rouge note toutefois qu'il est possible de remapper CUPS vers un autre port.
La description complète de l'incident par Margaritelli révèle une chaîne d'attaques insidieuse et complexe qui, malgré les désaccords communautaires, ne doit pas être ignorée. Cela nous donne une leçon sur les dépendances apparemment inoffensives qui peuvent être largement exploitées si l'acteur de la menace est suffisamment déterminé et si de petites opportunités ont été laissées ouvertes en raison de modèles de codage médiocres.
Le scénario CUPS est légèrement différent de ce que de nombreux développeurs et professionnels de l'AppSec ont pu expérimenter auparavant. Jetons-y un coup d'œil et testons vos compétences en cours de route.
La vulnérabilité : exécution de code à distance (RCE) via CUPS
Le Le blog d'Evilsocket fournit un historique complet et inégalé de ces exploits, et c'est une ressource que nous continuerons de suivre de près. Margaritelli cite également une source anonyme dans son article, qui ne semble pas optimiste quant à la robustesse générale de la sécurité de Linux :
»Du point de vue de la sécurité générique, tout un système Linux tel qu'il est aujourd'hui n'est qu'un fouillis infini et désespéré de failles de sécurité qui attendent d'être exploitées.»
Il s'agit d'un rappel inquiétant des risques de sécurité inhérents aux environnements open source, sans parler de la nécessité impérieuse d'une sensibilisation accrue à la sécurité et de compétences en matière de codage sécurisé au sein de la communauté mondiale du développement.
Jetons un coup d'œil aux CVE :
La chaîne de vulnérabilités est très étendue et affecte actuellement toutes les versions actuelles et précédentes des packages suivants :
- distrotech/becher-filter
- OpenPrinting/CUPS - Filtres
- Gobelets feuilletés
- filtres libcupsfilters
- libppd
CUPS est un composant traditionnel des systèmes d'exploitation UNIX et Linux depuis plus de 20 ans. Sa fonction de dépendance aux services d'impression l'incite à effectuer des requêtes réseau, ce qui en fait une cible de choix pour les vulnérabilités de classe RCE.
Dans ce cas, cependant, il y a une certaine ingéniosité dans la façon dont les attaques se combinent pour aboutir à un résultat positif. Il s'agit essentiellement de la capacité d'un attaquant non authentifié et non détecté à remplacer les URL du protocole IPP (Internet Printing Protocol) par des URL malveillantes, en plus de modifier les directives qui peuvent provoquer l'injection de commandes dans le fichier « PPD (PostScript Printer Description) », qui est un fichier utilisé pour décrire les fonctionnalités de l'imprimante nouvellement ajoutée. Cela entraîne une attaque d'exécution de commande une fois qu'une tâche d'impression est activée, et repose sur un manque de validation des entrées dans les composants CUPS.
De plus, la correction de cette vulnérabilité particulière crée une sorte d'arme à double tranchant, comme Evilsocket souligne. CUPS inclut le filtre foomatic-rip, un exécutable qui a toujours été considéré comme un composant exploitable à haut risque. Les CVE relatifs à ce composant remontent à 2011, et bien qu'il ait été établi que foomatic-rip peut être utilisé pour exécuter des commandes du système d'exploitation, sa résolution entraîne des problèmes de stabilité et la perte de support pour de nombreuses imprimantes plus anciennes. Il s'agit d'un problème complexe à surmonter.

- L'acteur de la menace est à l'origine de l'attaque
- CVE-2024-47176: cups-browsed <= 2.0.1 est vulnérable car il se lie au port UDP 631 à l'aide de INADDR_ANY, ce qui signifie qu'il fait confiance à tout paquet reçu de n'importe quelle source. Cela permet à un attaquant distant non authentifié d'envoyer un paquet UDP malveillant avec une URL IPP manipulée (pointant vers le serveur IPP contrôlé par l'attaquant), déclenchant ainsi la vulnérabilité. La machine de la victime pense maintenant qu'elle est connectée à une nouvelle imprimante et envoie une demande demandant les attributs de l'imprimante.
- Le système victime traite les attributs de l'imprimante
- CVE-2024-47076: libcupsfilters <= 2.1b1 présente une vulnérabilité dans CFGetPrinterAttributes5, qui ne valide ni ne nettoie correctement les attributs IPP renvoyés par un serveur IPP. Lorsque cups-browsed traite le paquet, il peut être amené à lire les attributs malveillants envoyés par l'attaquant.
- Le système victime se connecte au serveur IPP du contrôleur de l'attaquant
- CVE-2024-47175: libppd <= 2.1b1 de la fonction PPDCreatePPDFromIPP2 ne valide ni ne nettoie correctement les attributs IPP lors de leur enregistrement dans un fichier PPD (PostScript Printer Description) temporaire. Cela permet à l'attaquant d'injecter des données arbitraires dans un fichier PPD, y compris la directive FoomaticripCommandLine, que le système d'impression peut exécuter ultérieurement.
- Le système victime lance la tâche d'impression et le code de l'attaquant est exécuté
CVE-2024-47177: cups-filters <= 2.0.1 est vulnérable car le filtre foomatic-rip exécute des commandes arbitraires via la directive FoomaticripCommandLine, permettant à l'attaquant d'exécuter des commandes en tant que processus parcouru par cups-browsed. L'attaquant attend que la machine de la victime lance une tâche d'impression. Au moment où cela se produit, le code malveillant de l'attaquant sera exécuté (exécution de code à distance).
Comment pouvez-vous atténuer les risques liés au RCE ?
Les entreprises qui utilisent CUPS dans le cadre de leurs activités commerciales doivent suivre les conseils de remédiation recommandés par Prise maléfique et Chapeau rouge. Cela inclut, mais sans s'y limiter, l'application de correctifs de sécurité en tant que priorité en cas d'urgence.
Pour l'injection de commandes en général, consultez notre guide complet.
Si vous souhaitez obtenir plus de directives de codage gratuites, consultez Coach de code sécurisé pour vous aider à rester au fait des meilleures pratiques en matière de codage sécurisé.


Découvrez les derniers défis de sécurité auxquels sont confrontés les utilisateurs de Linux en explorant les récentes vulnérabilités de haute gravité du Common UNIX Printing System (CUPS). Découvrez comment ces problèmes peuvent entraîner l'exécution de code à distance (RCE) et ce que vous pouvez faire pour protéger vos systèmes.

Secure Code Warrior Ihr Unternehmen dabei, den Code während des gesamten Softwareentwicklungszyklus zu sichern und eine Kultur zu schaffen, in der Cybersicherheit oberste Priorität hat. Ganz gleich, ob Sie für die Anwendungssicherheit verantwortlich sind, Entwickler, IT-Sicherheitsbeauftragter oder in einer anderen Funktion im Bereich Sicherheit tätig sind – wir können Ihrem Unternehmen dabei helfen, die mit unsicherem Code verbundenen Risiken zu reduzieren.
Demo buchenLaura Verheyde est une développeuse de logiciels chez Secure Code Warrior qui se concentre sur la recherche de vulnérabilités et la création de contenu pour les missions et les laboratoires de codage.


Les utilisateurs de Linux n'ont pas eu la vie facile ces derniers temps, plusieurs vulnérabilités de haute gravité ayant apparemment affecté le système de différentes manières au cours des dernières années. Les chercheurs en sécurité ont maintenant un autre groupe de vulnérabilités à analyser, toutes liées à la fonction CUPS (Common UNIX Printing System) ciblant les systèmes GNU/Linux et présentant une voie potentielle pour une puissante exécution de code à distance (RCE).
Le 27 septembre 2024, Simone Margaritelli d'evilsocket.net informations critiques publiées sur plusieurs vulnérabilités exploitables dans CUPS, et des CVE ont ensuite été attribués à quatre d'entre elles. Ce chiffre pourrait augmenter, mais au moment de la rédaction de cet article, la communauté de la sécurité débat de la gravité réelle de ces découvertes. Alors que l'un des CVE, CVE-2024-47177, a actuellement une cote de gravité critique de 9,1 selon MITRE. La réussite de la manipulation de cette faille d'injection de commandes dépend des serveurs sur lesquels le service CUPS est activé et nécessite en outre l'accès au port UDP 631 ou au DNS-SD. Chapeau rouge note toutefois qu'il est possible de remapper CUPS vers un autre port.
La description complète de l'incident par Margaritelli révèle une chaîne d'attaques insidieuse et complexe qui, malgré les désaccords communautaires, ne doit pas être ignorée. Cela nous donne une leçon sur les dépendances apparemment inoffensives qui peuvent être largement exploitées si l'acteur de la menace est suffisamment déterminé et si de petites opportunités ont été laissées ouvertes en raison de modèles de codage médiocres.
Le scénario CUPS est légèrement différent de ce que de nombreux développeurs et professionnels de l'AppSec ont pu expérimenter auparavant. Jetons-y un coup d'œil et testons vos compétences en cours de route.
La vulnérabilité : exécution de code à distance (RCE) via CUPS
Le Le blog d'Evilsocket fournit un historique complet et inégalé de ces exploits, et c'est une ressource que nous continuerons de suivre de près. Margaritelli cite également une source anonyme dans son article, qui ne semble pas optimiste quant à la robustesse générale de la sécurité de Linux :
»Du point de vue de la sécurité générique, tout un système Linux tel qu'il est aujourd'hui n'est qu'un fouillis infini et désespéré de failles de sécurité qui attendent d'être exploitées.»
Il s'agit d'un rappel inquiétant des risques de sécurité inhérents aux environnements open source, sans parler de la nécessité impérieuse d'une sensibilisation accrue à la sécurité et de compétences en matière de codage sécurisé au sein de la communauté mondiale du développement.
Jetons un coup d'œil aux CVE :
La chaîne de vulnérabilités est très étendue et affecte actuellement toutes les versions actuelles et précédentes des packages suivants :
- distrotech/becher-filter
- OpenPrinting/CUPS - Filtres
- Gobelets feuilletés
- filtres libcupsfilters
- libppd
CUPS est un composant traditionnel des systèmes d'exploitation UNIX et Linux depuis plus de 20 ans. Sa fonction de dépendance aux services d'impression l'incite à effectuer des requêtes réseau, ce qui en fait une cible de choix pour les vulnérabilités de classe RCE.
Dans ce cas, cependant, il y a une certaine ingéniosité dans la façon dont les attaques se combinent pour aboutir à un résultat positif. Il s'agit essentiellement de la capacité d'un attaquant non authentifié et non détecté à remplacer les URL du protocole IPP (Internet Printing Protocol) par des URL malveillantes, en plus de modifier les directives qui peuvent provoquer l'injection de commandes dans le fichier « PPD (PostScript Printer Description) », qui est un fichier utilisé pour décrire les fonctionnalités de l'imprimante nouvellement ajoutée. Cela entraîne une attaque d'exécution de commande une fois qu'une tâche d'impression est activée, et repose sur un manque de validation des entrées dans les composants CUPS.
De plus, la correction de cette vulnérabilité particulière crée une sorte d'arme à double tranchant, comme Evilsocket souligne. CUPS inclut le filtre foomatic-rip, un exécutable qui a toujours été considéré comme un composant exploitable à haut risque. Les CVE relatifs à ce composant remontent à 2011, et bien qu'il ait été établi que foomatic-rip peut être utilisé pour exécuter des commandes du système d'exploitation, sa résolution entraîne des problèmes de stabilité et la perte de support pour de nombreuses imprimantes plus anciennes. Il s'agit d'un problème complexe à surmonter.

- L'acteur de la menace est à l'origine de l'attaque
- CVE-2024-47176: cups-browsed <= 2.0.1 est vulnérable car il se lie au port UDP 631 à l'aide de INADDR_ANY, ce qui signifie qu'il fait confiance à tout paquet reçu de n'importe quelle source. Cela permet à un attaquant distant non authentifié d'envoyer un paquet UDP malveillant avec une URL IPP manipulée (pointant vers le serveur IPP contrôlé par l'attaquant), déclenchant ainsi la vulnérabilité. La machine de la victime pense maintenant qu'elle est connectée à une nouvelle imprimante et envoie une demande demandant les attributs de l'imprimante.
- Le système victime traite les attributs de l'imprimante
- CVE-2024-47076: libcupsfilters <= 2.1b1 présente une vulnérabilité dans CFGetPrinterAttributes5, qui ne valide ni ne nettoie correctement les attributs IPP renvoyés par un serveur IPP. Lorsque cups-browsed traite le paquet, il peut être amené à lire les attributs malveillants envoyés par l'attaquant.
- Le système victime se connecte au serveur IPP du contrôleur de l'attaquant
- CVE-2024-47175: libppd <= 2.1b1 de la fonction PPDCreatePPDFromIPP2 ne valide ni ne nettoie correctement les attributs IPP lors de leur enregistrement dans un fichier PPD (PostScript Printer Description) temporaire. Cela permet à l'attaquant d'injecter des données arbitraires dans un fichier PPD, y compris la directive FoomaticripCommandLine, que le système d'impression peut exécuter ultérieurement.
- Le système victime lance la tâche d'impression et le code de l'attaquant est exécuté
CVE-2024-47177: cups-filters <= 2.0.1 est vulnérable car le filtre foomatic-rip exécute des commandes arbitraires via la directive FoomaticripCommandLine, permettant à l'attaquant d'exécuter des commandes en tant que processus parcouru par cups-browsed. L'attaquant attend que la machine de la victime lance une tâche d'impression. Au moment où cela se produit, le code malveillant de l'attaquant sera exécuté (exécution de code à distance).
Comment pouvez-vous atténuer les risques liés au RCE ?
Les entreprises qui utilisent CUPS dans le cadre de leurs activités commerciales doivent suivre les conseils de remédiation recommandés par Prise maléfique et Chapeau rouge. Cela inclut, mais sans s'y limiter, l'application de correctifs de sécurité en tant que priorité en cas d'urgence.
Pour l'injection de commandes en général, consultez notre guide complet.
Si vous souhaitez obtenir plus de directives de codage gratuites, consultez Coach de code sécurisé pour vous aider à rester au fait des meilleures pratiques en matière de codage sécurisé.

Les utilisateurs de Linux n'ont pas eu la vie facile ces derniers temps, plusieurs vulnérabilités de haute gravité ayant apparemment affecté le système de différentes manières au cours des dernières années. Les chercheurs en sécurité ont maintenant un autre groupe de vulnérabilités à analyser, toutes liées à la fonction CUPS (Common UNIX Printing System) ciblant les systèmes GNU/Linux et présentant une voie potentielle pour une puissante exécution de code à distance (RCE).
Le 27 septembre 2024, Simone Margaritelli d'evilsocket.net informations critiques publiées sur plusieurs vulnérabilités exploitables dans CUPS, et des CVE ont ensuite été attribués à quatre d'entre elles. Ce chiffre pourrait augmenter, mais au moment de la rédaction de cet article, la communauté de la sécurité débat de la gravité réelle de ces découvertes. Alors que l'un des CVE, CVE-2024-47177, a actuellement une cote de gravité critique de 9,1 selon MITRE. La réussite de la manipulation de cette faille d'injection de commandes dépend des serveurs sur lesquels le service CUPS est activé et nécessite en outre l'accès au port UDP 631 ou au DNS-SD. Chapeau rouge note toutefois qu'il est possible de remapper CUPS vers un autre port.
La description complète de l'incident par Margaritelli révèle une chaîne d'attaques insidieuse et complexe qui, malgré les désaccords communautaires, ne doit pas être ignorée. Cela nous donne une leçon sur les dépendances apparemment inoffensives qui peuvent être largement exploitées si l'acteur de la menace est suffisamment déterminé et si de petites opportunités ont été laissées ouvertes en raison de modèles de codage médiocres.
Le scénario CUPS est légèrement différent de ce que de nombreux développeurs et professionnels de l'AppSec ont pu expérimenter auparavant. Jetons-y un coup d'œil et testons vos compétences en cours de route.
La vulnérabilité : exécution de code à distance (RCE) via CUPS
Le Le blog d'Evilsocket fournit un historique complet et inégalé de ces exploits, et c'est une ressource que nous continuerons de suivre de près. Margaritelli cite également une source anonyme dans son article, qui ne semble pas optimiste quant à la robustesse générale de la sécurité de Linux :
»Du point de vue de la sécurité générique, tout un système Linux tel qu'il est aujourd'hui n'est qu'un fouillis infini et désespéré de failles de sécurité qui attendent d'être exploitées.»
Il s'agit d'un rappel inquiétant des risques de sécurité inhérents aux environnements open source, sans parler de la nécessité impérieuse d'une sensibilisation accrue à la sécurité et de compétences en matière de codage sécurisé au sein de la communauté mondiale du développement.
Jetons un coup d'œil aux CVE :
La chaîne de vulnérabilités est très étendue et affecte actuellement toutes les versions actuelles et précédentes des packages suivants :
- distrotech/becher-filter
- OpenPrinting/CUPS - Filtres
- Gobelets feuilletés
- filtres libcupsfilters
- libppd
CUPS est un composant traditionnel des systèmes d'exploitation UNIX et Linux depuis plus de 20 ans. Sa fonction de dépendance aux services d'impression l'incite à effectuer des requêtes réseau, ce qui en fait une cible de choix pour les vulnérabilités de classe RCE.
Dans ce cas, cependant, il y a une certaine ingéniosité dans la façon dont les attaques se combinent pour aboutir à un résultat positif. Il s'agit essentiellement de la capacité d'un attaquant non authentifié et non détecté à remplacer les URL du protocole IPP (Internet Printing Protocol) par des URL malveillantes, en plus de modifier les directives qui peuvent provoquer l'injection de commandes dans le fichier « PPD (PostScript Printer Description) », qui est un fichier utilisé pour décrire les fonctionnalités de l'imprimante nouvellement ajoutée. Cela entraîne une attaque d'exécution de commande une fois qu'une tâche d'impression est activée, et repose sur un manque de validation des entrées dans les composants CUPS.
De plus, la correction de cette vulnérabilité particulière crée une sorte d'arme à double tranchant, comme Evilsocket souligne. CUPS inclut le filtre foomatic-rip, un exécutable qui a toujours été considéré comme un composant exploitable à haut risque. Les CVE relatifs à ce composant remontent à 2011, et bien qu'il ait été établi que foomatic-rip peut être utilisé pour exécuter des commandes du système d'exploitation, sa résolution entraîne des problèmes de stabilité et la perte de support pour de nombreuses imprimantes plus anciennes. Il s'agit d'un problème complexe à surmonter.

- L'acteur de la menace est à l'origine de l'attaque
- CVE-2024-47176: cups-browsed <= 2.0.1 est vulnérable car il se lie au port UDP 631 à l'aide de INADDR_ANY, ce qui signifie qu'il fait confiance à tout paquet reçu de n'importe quelle source. Cela permet à un attaquant distant non authentifié d'envoyer un paquet UDP malveillant avec une URL IPP manipulée (pointant vers le serveur IPP contrôlé par l'attaquant), déclenchant ainsi la vulnérabilité. La machine de la victime pense maintenant qu'elle est connectée à une nouvelle imprimante et envoie une demande demandant les attributs de l'imprimante.
- Le système victime traite les attributs de l'imprimante
- CVE-2024-47076: libcupsfilters <= 2.1b1 présente une vulnérabilité dans CFGetPrinterAttributes5, qui ne valide ni ne nettoie correctement les attributs IPP renvoyés par un serveur IPP. Lorsque cups-browsed traite le paquet, il peut être amené à lire les attributs malveillants envoyés par l'attaquant.
- Le système victime se connecte au serveur IPP du contrôleur de l'attaquant
- CVE-2024-47175: libppd <= 2.1b1 de la fonction PPDCreatePPDFromIPP2 ne valide ni ne nettoie correctement les attributs IPP lors de leur enregistrement dans un fichier PPD (PostScript Printer Description) temporaire. Cela permet à l'attaquant d'injecter des données arbitraires dans un fichier PPD, y compris la directive FoomaticripCommandLine, que le système d'impression peut exécuter ultérieurement.
- Le système victime lance la tâche d'impression et le code de l'attaquant est exécuté
CVE-2024-47177: cups-filters <= 2.0.1 est vulnérable car le filtre foomatic-rip exécute des commandes arbitraires via la directive FoomaticripCommandLine, permettant à l'attaquant d'exécuter des commandes en tant que processus parcouru par cups-browsed. L'attaquant attend que la machine de la victime lance une tâche d'impression. Au moment où cela se produit, le code malveillant de l'attaquant sera exécuté (exécution de code à distance).
Comment pouvez-vous atténuer les risques liés au RCE ?
Les entreprises qui utilisent CUPS dans le cadre de leurs activités commerciales doivent suivre les conseils de remédiation recommandés par Prise maléfique et Chapeau rouge. Cela inclut, mais sans s'y limiter, l'application de correctifs de sécurité en tant que priorité en cas d'urgence.
Pour l'injection de commandes en général, consultez notre guide complet.
Si vous souhaitez obtenir plus de directives de codage gratuites, consultez Coach de code sécurisé pour vous aider à rester au fait des meilleures pratiques en matière de codage sécurisé.

Klicken Sie auf den untenstehenden Link und laden Sie das PDF dieser Ressource herunter.
Secure Code Warrior Ihr Unternehmen dabei, den Code während des gesamten Softwareentwicklungszyklus zu sichern und eine Kultur zu schaffen, in der Cybersicherheit oberste Priorität hat. Ganz gleich, ob Sie für die Anwendungssicherheit verantwortlich sind, Entwickler, IT-Sicherheitsbeauftragter oder in einer anderen Funktion im Bereich Sicherheit tätig sind – wir können Ihrem Unternehmen dabei helfen, die mit unsicherem Code verbundenen Risiken zu reduzieren.
Bericht anzeigenDemo buchenLaura Verheyde est une développeuse de logiciels chez Secure Code Warrior qui se concentre sur la recherche de vulnérabilités et la création de contenu pour les missions et les laboratoires de codage.
Les utilisateurs de Linux n'ont pas eu la vie facile ces derniers temps, plusieurs vulnérabilités de haute gravité ayant apparemment affecté le système de différentes manières au cours des dernières années. Les chercheurs en sécurité ont maintenant un autre groupe de vulnérabilités à analyser, toutes liées à la fonction CUPS (Common UNIX Printing System) ciblant les systèmes GNU/Linux et présentant une voie potentielle pour une puissante exécution de code à distance (RCE).
Le 27 septembre 2024, Simone Margaritelli d'evilsocket.net informations critiques publiées sur plusieurs vulnérabilités exploitables dans CUPS, et des CVE ont ensuite été attribués à quatre d'entre elles. Ce chiffre pourrait augmenter, mais au moment de la rédaction de cet article, la communauté de la sécurité débat de la gravité réelle de ces découvertes. Alors que l'un des CVE, CVE-2024-47177, a actuellement une cote de gravité critique de 9,1 selon MITRE. La réussite de la manipulation de cette faille d'injection de commandes dépend des serveurs sur lesquels le service CUPS est activé et nécessite en outre l'accès au port UDP 631 ou au DNS-SD. Chapeau rouge note toutefois qu'il est possible de remapper CUPS vers un autre port.
La description complète de l'incident par Margaritelli révèle une chaîne d'attaques insidieuse et complexe qui, malgré les désaccords communautaires, ne doit pas être ignorée. Cela nous donne une leçon sur les dépendances apparemment inoffensives qui peuvent être largement exploitées si l'acteur de la menace est suffisamment déterminé et si de petites opportunités ont été laissées ouvertes en raison de modèles de codage médiocres.
Le scénario CUPS est légèrement différent de ce que de nombreux développeurs et professionnels de l'AppSec ont pu expérimenter auparavant. Jetons-y un coup d'œil et testons vos compétences en cours de route.
La vulnérabilité : exécution de code à distance (RCE) via CUPS
Le Le blog d'Evilsocket fournit un historique complet et inégalé de ces exploits, et c'est une ressource que nous continuerons de suivre de près. Margaritelli cite également une source anonyme dans son article, qui ne semble pas optimiste quant à la robustesse générale de la sécurité de Linux :
»Du point de vue de la sécurité générique, tout un système Linux tel qu'il est aujourd'hui n'est qu'un fouillis infini et désespéré de failles de sécurité qui attendent d'être exploitées.»
Il s'agit d'un rappel inquiétant des risques de sécurité inhérents aux environnements open source, sans parler de la nécessité impérieuse d'une sensibilisation accrue à la sécurité et de compétences en matière de codage sécurisé au sein de la communauté mondiale du développement.
Jetons un coup d'œil aux CVE :
La chaîne de vulnérabilités est très étendue et affecte actuellement toutes les versions actuelles et précédentes des packages suivants :
- distrotech/becher-filter
- OpenPrinting/CUPS - Filtres
- Gobelets feuilletés
- filtres libcupsfilters
- libppd
CUPS est un composant traditionnel des systèmes d'exploitation UNIX et Linux depuis plus de 20 ans. Sa fonction de dépendance aux services d'impression l'incite à effectuer des requêtes réseau, ce qui en fait une cible de choix pour les vulnérabilités de classe RCE.
Dans ce cas, cependant, il y a une certaine ingéniosité dans la façon dont les attaques se combinent pour aboutir à un résultat positif. Il s'agit essentiellement de la capacité d'un attaquant non authentifié et non détecté à remplacer les URL du protocole IPP (Internet Printing Protocol) par des URL malveillantes, en plus de modifier les directives qui peuvent provoquer l'injection de commandes dans le fichier « PPD (PostScript Printer Description) », qui est un fichier utilisé pour décrire les fonctionnalités de l'imprimante nouvellement ajoutée. Cela entraîne une attaque d'exécution de commande une fois qu'une tâche d'impression est activée, et repose sur un manque de validation des entrées dans les composants CUPS.
De plus, la correction de cette vulnérabilité particulière crée une sorte d'arme à double tranchant, comme Evilsocket souligne. CUPS inclut le filtre foomatic-rip, un exécutable qui a toujours été considéré comme un composant exploitable à haut risque. Les CVE relatifs à ce composant remontent à 2011, et bien qu'il ait été établi que foomatic-rip peut être utilisé pour exécuter des commandes du système d'exploitation, sa résolution entraîne des problèmes de stabilité et la perte de support pour de nombreuses imprimantes plus anciennes. Il s'agit d'un problème complexe à surmonter.

- L'acteur de la menace est à l'origine de l'attaque
- CVE-2024-47176: cups-browsed <= 2.0.1 est vulnérable car il se lie au port UDP 631 à l'aide de INADDR_ANY, ce qui signifie qu'il fait confiance à tout paquet reçu de n'importe quelle source. Cela permet à un attaquant distant non authentifié d'envoyer un paquet UDP malveillant avec une URL IPP manipulée (pointant vers le serveur IPP contrôlé par l'attaquant), déclenchant ainsi la vulnérabilité. La machine de la victime pense maintenant qu'elle est connectée à une nouvelle imprimante et envoie une demande demandant les attributs de l'imprimante.
- Le système victime traite les attributs de l'imprimante
- CVE-2024-47076: libcupsfilters <= 2.1b1 présente une vulnérabilité dans CFGetPrinterAttributes5, qui ne valide ni ne nettoie correctement les attributs IPP renvoyés par un serveur IPP. Lorsque cups-browsed traite le paquet, il peut être amené à lire les attributs malveillants envoyés par l'attaquant.
- Le système victime se connecte au serveur IPP du contrôleur de l'attaquant
- CVE-2024-47175: libppd <= 2.1b1 de la fonction PPDCreatePPDFromIPP2 ne valide ni ne nettoie correctement les attributs IPP lors de leur enregistrement dans un fichier PPD (PostScript Printer Description) temporaire. Cela permet à l'attaquant d'injecter des données arbitraires dans un fichier PPD, y compris la directive FoomaticripCommandLine, que le système d'impression peut exécuter ultérieurement.
- Le système victime lance la tâche d'impression et le code de l'attaquant est exécuté
CVE-2024-47177: cups-filters <= 2.0.1 est vulnérable car le filtre foomatic-rip exécute des commandes arbitraires via la directive FoomaticripCommandLine, permettant à l'attaquant d'exécuter des commandes en tant que processus parcouru par cups-browsed. L'attaquant attend que la machine de la victime lance une tâche d'impression. Au moment où cela se produit, le code malveillant de l'attaquant sera exécuté (exécution de code à distance).
Comment pouvez-vous atténuer les risques liés au RCE ?
Les entreprises qui utilisent CUPS dans le cadre de leurs activités commerciales doivent suivre les conseils de remédiation recommandés par Prise maléfique et Chapeau rouge. Cela inclut, mais sans s'y limiter, l'application de correctifs de sécurité en tant que priorité en cas d'urgence.
Pour l'injection de commandes en général, consultez notre guide complet.
Si vous souhaitez obtenir plus de directives de codage gratuites, consultez Coach de code sécurisé pour vous aider à rester au fait des meilleures pratiques en matière de codage sécurisé.
Inhaltsverzeichnis

Secure Code Warrior Ihr Unternehmen dabei, den Code während des gesamten Softwareentwicklungszyklus zu sichern und eine Kultur zu schaffen, in der Cybersicherheit oberste Priorität hat. Ganz gleich, ob Sie für die Anwendungssicherheit verantwortlich sind, Entwickler, IT-Sicherheitsbeauftragter oder in einer anderen Funktion im Bereich Sicherheit tätig sind – wir können Ihrem Unternehmen dabei helfen, die mit unsicherem Code verbundenen Risiken zu reduzieren.
Demo buchenHerunterladenRessourcen, die Ihnen den Einstieg erleichtern
Themen und Inhalte der Schulung zum sicheren Code
Unsere hochmodernen Inhalte werden ständig weiterentwickelt, um mit den ständigen Veränderungen in der Softwareentwicklungslandschaft Schritt zu halten und gleichzeitig Ihre Rolle zu berücksichtigen. Die Themen reichen von KI bis hin zu XQuery-Injection und sind für eine Vielzahl von Positionen konzipiert, von Architekten über Ingenieure bis hin zu Produktmanagern und Qualitätssicherungsmitarbeitern. Verschaffen Sie sich einen Überblick über die Inhalte unseres Katalogs, sortiert nach Themen und Rollen.
Die Kamer van Koophandel setzt Maßstäbe für entwicklergesteuerte Sicherheit in großem Maßstab
Die Kamer van Koophandel berichtet, wie sie sicheres Codieren durch rollenbasierte Zertifizierungen, Trust Score-Benchmarking und eine Kultur der gemeinsamen Verantwortung für Sicherheit in die tägliche Entwicklungsarbeit integriert hat.
Bedrohungsmodellierung mit KI: So wird jeder Entwickler zum Bedrohungsmodellierer
Sie werden besser gerüstet sein, um Entwicklern dabei zu helfen, Ideen und Techniken zur Bedrohungsmodellierung mit den KI-Tools zu kombinieren, die sie bereits verwenden, um die Sicherheit zu erhöhen, die Zusammenarbeit zu verbessern und von Anfang an widerstandsfähigere Software zu entwickeln.
Ressourcen, die Ihnen den Einstieg erleichtern
Cybermon ist zurück: Die missions „Beat the Boss“ sind jetzt auf Abruf verfügbar.
Cybermon 2025 Beat the Boss ist jetzt das ganze Jahr über in SCW verfügbar. Setzen Sie fortschrittliche Sicherheitsherausforderungen im Zusammenhang mit KI und LLM ein, um die sichere Entwicklung von KI in großem Maßstab zu stärken.
Erläuterung des Gesetzes zur Cyberresilienz: Was bedeutet das für die Entwicklung sicherer Software bereits ab der Konzeption?
Entdecken Sie, was das europäische Gesetz zur Cyberresilienz (CRA) verlangt, für wen es gilt und wie sich Ingenieurteams durch Sicherheitsmaßnahmen bereits in der Entwurfsphase, durch die Vermeidung von Schwachstellen und durch die Stärkung der Fähigkeiten der Entwickler darauf vorbereiten können.
Moderator 1: Definierte und messbare Erfolgskriterien
Enabler 1 gibt den Startschuss für unsere 10-teilige Serie mit dem Titel „Enablers of Success“ und zeigt, wie sichere Codierung mit geschäftlichen Ergebnissen wie Risikominderung und Schnelligkeit kombiniert werden kann, um die langfristige Reife von Programmen sicherzustellen.




%20(1).avif)
.avif)
