Neuigkeiten:

Privates MODX und LINUX BLOG, User Registrierung ist deaktiviert!

Hauptmenü

PHP warning: escapeshellcmd()

Begonnen von Jo, 2017-02-05 | 13:39:58

« vorheriges - nächstes »

Jo

Im Error-Log steht beim Versenden per phpmailer:
PHP warning: escapeshellcmd() has been disabled for security reasons ?

Wahrscheinlich benutzt ihr einen Sharehoster und dieser hat aus "Sicherheitsgründen" die Funktion escapeshellcmd() deaktiviert  :confused:

Laut dem PHP-Referenzhandbuch maskiert escapeshellcmd() alle Zeichen in einem String, der verwendet werden könnte um einen Shell-Befehl Ausführung zu können um beliebige Befehle zu übergehen. Das Blockieren dieser Funktion würde doch diesen Zweck zunichte machen?  :p

Weiterhin steht dort: Um einzelne Argumente zu maskieren, sollte statt dessen escapeshellarg() verwendet werden.
Anscheinend sehen die PHPMailer Entwickler das auch so, denn im Quellcode findet sich dieser Hinweis dazu:
Zitat// TODO: If possible, this should be changed to escapeshellarg. Needs thorough testing

Sollte euer Sharehoster also diese Funktion nicht aktiveren wollen, habt ihr nur noch folgende Möglichkeiten:

  • sucht euch einen anderen CMS-tauglichen Hoster
  • verwendet in der Datei *class.phpmailer.php anstatt escapeshellcmd() die Funktion escapeshellarg()
  • oder stellt den Mailversand auf die Option SMTP um




*Ort: ~/core/model/modx/mail/phpmailer/class.phpmailer.php