En la última semana, dos errores críticos han sido descubiertos por Dawid Golunski en PHPMailer, una biblioteca para facilitar el envío de correo electrónico en PHP.
Las notificaciones puedes leer aquí:
- CVE-2016-10033 - PHPMailer < 5.2.18 Remote Code Execution
- CVE-2016-10045 - PHPMailer < 5.2.20 Remote Code Execution (0day Patch Bypass/exploit)
La reacción de los programadores del PHPMailer puedes leer en el artículo del Wiki de PHPMailer "About the CVE 2016 10033 and CVE 2016 10045 vulnerabilities".
Para evitar que tendría que enviar un mensage a todos mis clientes para comprobar su página web y la acutalizarla y luego tener que esperar en que si realmente lo han hecho, escribió un script de shell que actualiza los archivos clave de PHPMailer (class.phpmailer.php
, class.pop3.php
, class.smtp.php
) que se encuentran en los directorios especificados.
El script se llama upgrade-phpmailer.sh
, y se puede encontrar en GitHub gist upgrade-phpmailer.sh (Descargar upgrade-phpmailer.sh [haz clic derecho y Guardar]).
El resultado de la ayuda del script upgrade-phpmailer.sh
:
phpmailer-upgrade.sh v1.0.0 - Copyright (c) 2016 Derks.IT / Jeroen Derks Upgrades PHPMailer files automatically to last version usage: upgrade-phpmailer.sh [-d] [-n] [-v] [-x] [-B branch] [-C checkout] [-D backup ] [-K] [-M extension] [-N] [-O] directory [ directory [...] ] -d Enable debug output -n Dry-run mode -v Enable verbose output -x Enable shell debug output -B PHPMailer GitHub branch name to use (default: master) -C Directory containing cloned repository with branch to use -D Backup directory to use (default: /phpmailer.backup) -K Keep temporary directory -M Rename original files using supplied extension (default: .BACKUP) -N Do not create backup directory -O Compare only, do not actually upgrade
Para cualquier mejora o otras sugerencias, por favor deja un mensaje abajo o haz un pull-request.