PHPMailer victime d'une faille de sécurité critique, un correctif est disponible

PHPMailer victime d’une faille de sécurité critique, un correctif est disponible

2016 et les failles, une histoire d'amour

Avatar de l'auteur

Sébastien Gavois

Publié dansInternet

27/12/2016
14
PHPMailer victime d'une faille de sécurité critique, un correctif est disponible

PHPMailer est victime d'une importante faille de sécurité permettant d'exécuter du code arbitraire à distance. Un correctif est disponible avec la version 5.2.18, mais il faut maintenant attendre qu'il soit déployé par les applications utilisant PHPMailer.

Comme son nom l'indique, PHPMailer est une bibliothèque PHP qui permet d'envoyer des emails et que l'on retrouve dans de nombreuses applications comme WordPress, Drupal, Joomla, etc. Cette solution est donc largement utilisée, ce qui est d'autant plus problématique quand une importante faille de sécurité est découverte. C'est justement ce que vient de trouver Dawid Golunski, sur toutes les versions de PHPMailer inférieures à la 5.2.18 (datée du 24 décembre).

Le hacker à l'origine de la découverte explique que via cette brèche, un pirate pourrait exécuter du code arbitraire à distance sur le serveur qui héberge PHPMailer : « Un attaquant pourrait cibler des composants classiques d'un site web tels que les formulaires de contact ou d'inscription, la réinitialisation d'un mot de passe et d'autres qui envoient des emails à l'aide d'une version vulnérable de la classe PHPMailer ».

Dawid Golunski ajoute qu'il a développé un prototype fonctionnel permettant d'utiliser cette faille. Il ne donne par contre pas plus de détails pour le moment afin de laisser à chacun le temps de se mettre à jour avec la version 5.2.18 (ou 5.2.19 qui ne propose que des changements mineurs) de PHPMailer.

Il faudra également attendre que les applications qui utilisent cette classe se mettent à jour (Joomla, Drupal, WordPress, etc.). Dans tous les cas, le hacker promet que tous les détails d'exploitation de cette faille et une vidéo seront publiés prochainement, sans préciser quand exactement. 

14
Avatar de l'auteur

Écrit par Sébastien Gavois

Tiens, en parlant de ça :

KDE Plasma 6

KDE Plasma 6 a sa première bêta, le tour des nouveautés

Petite révolution tranquille

17:39 Soft 4
Un homme noir regarde la caméra. Sur son visage, des traits blancs suggèrent un traitement algorithmique.

AI Act et reconnaissance faciale : la France interpelée par 45 eurodéputés

Report minoritaire

15:46 DroitSociété 4
Api

La CNIL préconise l’utilisation des API pour le partage de données personnelles entre organismes

I'm API

15:12 SécuSociété 0

Sommaire de l'article

Introduction

#LeBrief : intelligence artificielle à tous les étages, fichier biométrique EURODAC

KDE Plasma 6

KDE Plasma 6 a sa première bêta, le tour des nouveautés

Soft 4
Un homme noir regarde la caméra. Sur son visage, des traits blancs suggèrent un traitement algorithmique.

AI Act et reconnaissance faciale : la France interpelée par 45 eurodéputés

DroitSociété 4
Api

La CNIL préconise l’utilisation des API pour le partage de données personnelles entre organismes

SécuSociété 0
Fouet de l’Arcep avec de la fibre

Orange sanctionnée sur la fibre : l’argumentaire de l’opérateur démonté par l’Arcep

DroitWeb 10
Bombes

Israël – Hamas : comment l’IA intensifie les attaques contre Gaza

IA 10

#LeBrief : bande-annonce GTA VI, guerre électronique, Spotify licencie massivement

Poing Dev

Le poing Dev – Round 7

Next 60
Logo de Gaia-X sour la forme d’un arbre, avec la légende : infrastructure de données en forme de réseau

Gaia-X « vit toujours » et « arrive à des étapes très concrètes »

WebSécu 6

Trois consoles portables en quelques semaines

Hard 37
Une tasse estampillée "Keep calm and carry on teaching"

Cyberrésilience : les compromis (provisoires) du trilogue européen

DroitSécu 3

#LeBrief : fuite de tests ADN 23andMe, le milliard pour Android Messages, il y a 30 ans Hubble voyait clair

#Flock a sa propre vision de l’inclusion

Flock 25
Un Sébastien transformé en lapin par Flock pour imiter le Quoi de neuf Docteur des Looney Tunes

Quoi de neuf à la rédac’ #10 : nous contacter et résumé de la semaine

44
Autoportrait Sébastien

[Autoportrait] Sébastien Gavois : tribulations d’un pigiste devenu rédac’ chef

Next 20
Logo de StreetPress

Pourquoi le site du média StreetPress a été momentanément inaccessible

Droit 21
Amazon re:Invent

re:Invent 2023 : Amazon lance son assistant Q et plusieurs services IA, dont la génération d’images

IA 14
Un œil symbolisant l'Union européenne, et les dissensions et problèmes afférents

Le Conseil de l’UE tire un bilan du RGPD, les États membres réclament des « outils pratiques »

Droit 6

19 associations européennes de consommateurs portent plainte contre Meta

DroitSocials 16

#LeBrief : Ariane 6 l’été prochain, Nextcloud rachète Roundcube, désinformation via la pub

Chiffre et formules mathématiques sur un tableau

CVSS 4.0 : dur, dur, d’être un expert !

Sécu 16
Une tête de fusée siglée Starlink.

Starlink accessible à Gaza sous contrôle de l’administration israélienne

Web 35
Fibre optique

G-PON, XGS-PON et 50G-PON : jusqu’à 50 Gb/s en fibre optique

HardWeb 53
Photo d'un immeuble troué de part en part

Règlement sur la cyber-résilience : les instances européennes en passe de conclure un accord

DroitSécu 10
lexique IA parodie

AGI, GPAI, modèles de fondation… de quoi on parle ?

IA 11

#LeBrief : logiciels libres scientifiques, fermeture de compte Google, « fabriquer » des femmes pour l’inclusion

MIA : l’IA d’enseignement de Gabriel Attal pour faire oublier le classement PISA

IASociété 2

Une main sur laquelle est collée une étiquette où est écrit "human".

AI Act : des inquiétudes de l’impact de la position française sur les droits humains

DroitIA 0

Un tiroir montrant de nombreuses fiches voire fichiers

Une centaine d’ONG dénonce l’expansion du fichier paneuropéen biométrique EURODAC

DroitSécu 0

WhatsApp

Meta coupe le lien entre Instagram et Messenger

Soft 0

Nuage (pour le cloud) avec de la foudre

Cloud : Amazon rejoint Google dans l’enquête de la CMA sur les pratiques de Microsoft

DroitWeb 0

Des billets volent dans les airs.

Mistral AI s’apprête à lever 450 millions d’euros auprès de NVIDIA et a16z

ÉcoIA 0

Commentaires (14)


watchix
Il y a 7 ans

Ok, donc pour faire simple :
“Faites la MAJ, je vous expliquerai plus tard ce que ça implique réellement, et comment l’exploiter.”


fred42 Abonné
Il y a 7 ans

On peut aussi dire :
“Faites la MAJ et protégez-vous avant que je ne dévoile comment trouer votre site.”


boogieplayer
Il y a 7 ans

En étudiant la class avant et après le patch, ça peut donner une indication sur la faille.


bilbonsacquet Abonné
Il y a 7 ans






boogieplayer a écrit :

En étudiant la class avant et après le patch, ça peut donner une indication sur la faille.


Effectivement, l’intérêt d’un programme OpenSource.

Le commit en question :
https://github.com/PHPMailer/PHPMailer/commit/4835657cd639fbd09afd33307cef164edf…



boogieplayer
Il y a 7 ans






bilbonsacquet a écrit :

Effectivement, l’intérêt d’un programme OpenSource.

Le commit en question :
https://github.com/PHPMailer/PHPMailer/commit/4835657cd639fbd09afd33307cef164edf…


Merci. On voit bien le prob sur le test du sender&nbsp;<img data-src=" />



Jos Abonné
Il y a 7 ans

Pourtant en lisant un des commentaires un mec dit que le sender a déjà été validé dans la function preSend()
Si c’est le cas, je ne comprends pas ou est le pb…


boogieplayer
Il y a 7 ans

C’est mal, ou pas complètement testé quand c’est vide, à ce que je comprends.


bilbonsacquet Abonné
Il y a 7 ans






Jos a écrit :

Pourtant en lisant un des commentaires un mec dit que le sender a déjà été validé dans la function preSend()



Si c'est le cas, je ne comprends pas ou est le pb...




Vu que la faille est une “inclusion de fichier”, je pense que c’est plutôt l’ajout de cette partie qui est important :



if (!(is\_file($this-&gt;Sendmail) and is\_executable($this-&gt;Sendmail))) {     
throw new phpmailerException($this-&gt;lang('execute') . $this-&gt;Sendmail, self::STOP\_CRITICAL);
}



Et ça : \(params = sprintf('-f%s', escapeshellarg(\)this-&gt;Sender));
&nbsp;&nbsp;
(Edit : l’éditeur html des commentaires est bien pourri sur NXI, il ajoute plein d’espaces bizarroïdes un peu partout <img data-src=" />)



RaoulC
Il y a 7 ans
Jos Abonné
Il y a 7 ans

Oui, mais s’il vaut null, il peut pas par conséquent injecter du code dedans <img data-src=" />

&nbsp;@bilbonsacquet je pense pas que ça vienne de la puisque ce paramètre est sous contrôle de l’administrateur


boogieplayer
Il y a 7 ans






RaoulC a écrit :

Un mec fournit ce lien sur le github

&nbsp;https://www.saotn.org/exploit-phps-mail-get-remote-code-execution/


Ce lien pointe sur un news de septembre 2014…
&nbsp;

Jos a écrit :

Oui, mais s’il vaut null, il peut pas par conséquent injecter du code dedans <img data-src=" />

&nbsp;@bilbonsacquet je pense pas que ça vienne de la puisque ce paramètre est sous contrôle de l’administrateur


&nbsp;Oui c’est vrai. Je ne sais pas, j’ai pas le courage de plonger dans le code là tout de suite…&nbsp;<img data-src=" />



jackjack2
Il y a 7 ans






bilbonsacquet a écrit :

Vu que la faille est une “inclusion de fichier”, je pense que c’est plutôt l’ajout de cette partie qui est important :



if (!(is\_file($this-&gt;Sendmail) and is\_executable($this-&gt;Sendmail))) {     
throw new phpmailerException($this-&gt;lang('execute') . $this-&gt;Sendmail, self::STOP\_CRITICAL);
}



Et ça : \(params = sprintf('-f%s', escapeshellarg(\)this-&gt;Sender));
&nbsp;&nbsp;
(Edit : l’éditeur html des commentaires est bien pourri sur NXI, il ajoute plein d’espaces bizarroïdes un peu partout <img data-src=" />)



Oui c’est bien ça le problème, l’injection shell par les paramètres pour sendmail



bilbonsacquet Abonné
Il y a 7 ans

Pour ceux qui n’ont pas suivi, il y a eu des nouvelles mises à jour, car le patch n’était pas suffisant ! Tous les sites ne sont pas concernés en fonction de la mise en application de phpMailer, mais bon, vaut mieux prévenir que guérir !


33A20158-2813-4F0D-9D4A-FD05E2C42E48
Il y a 7 ans






jackjack2 a écrit :

Oui c’est bien ça le problème, l’injection shell par les paramètres pour sendmail


De fait il me semble en effet que si l’adresse de l’expéditeur est du genre “[email protected] & rm -r *” (ou … & format c: hein…) ça peut faire du dégât… d’où un EscapeShellArg qui devrait aurait dû détecter la chose.