Isu Keamanan SwiftMailer dan PHPMailer terhadap Yii2 di Akhir Tahun 2016

Ridwan Fajar 16 Januari 2017

Isu Keamanan SwiftMailer dan PHPMailer terhadap Yii2 di Akhir Tahun 2016

Yii2 memiliki celah keamanan yang cukup krusial di dalam PHP Mailer dan SwiftMailer sebagai berikut sebagaimana yang dilaporkan oleh Dawid Golunski:

  • 25.12.2016, CVE-2016-10033 Remote Code Execution vulnerability in PHPMailer
  • 27.12.2016, CVE-2016-10045 Remote Code Execution vulnerability in PHPMailer
  • 28.12.2016, CVE-2016-10074 Remote Code Execution vulnerability in SwiftMailer

Tentang PHPMailer, Yii tidak pernah secara resmi menyediakan komponen untuk PHPMailer, ataupun membungkus kode PHPMailer secara resmi oleh tim pengembang Yii. Laporan error ini hanya disediakan bahwa Yii dapat menggunakan PHPMailer dengan catatan beberapa error tersebut. Kamu harus meng-upgrade ke v5.2.20 untuk PHPMailer.

Berbeda halnya dengan SwiftMailer, dimana Yii2 menyediakan ekstensi khusus yaitu yii2-swiftmailer. Kamu harus memperbaharui hingga versi 5.4.5 karena terdapat error pada class Swift_MailTransport. Kamu harus siaga terhadap penyerang yang mengirimkan kode berbahaya yang dapat dikirimkan melalui Sender/From pada suatu email.

Beberapa hal yang dapat kamu lakukan adalah menambahkan Yii EmailValidator atau PHP Native Filter filter_var() untuk menghalau alamat email yang tidak sah. Masalah ini disebabgkan oleh parameter ketiga yang tidak ditangani dengan baik oleh escaping character, sehingga penyerang dapat dengan mudah merusak sistem melalui celah tersebut. Dan masalahnya ini menjadi bagian dari perintah sendmail.

-f"attacker\" -oQ/tmp/ -X/var/www/cache/phpcode.php some"@email.com

// Results in call
/usr/sbin/sendmail -t -i -f"attacker" -oQ/tmp/ -X/var/www/cache/phpcode.php some@email.com

Selengkapnya Anda dapat mengunjungi halaman celah keamanan PHPMaler dan SwiftMailer di Yii2 di tautan berikut http://www.yiiframework.com/news/122/recent-security-issues-with-phpmailer-and-swiftmailer/.

(rfs/yiiframework)