Halo semuanya,
lama sekali gw ga nulis disini
gw kali ini mau share masalah how to detect and prevent serangan yang sedang rame di jagat maya yaitu CVE-2024-4577
sebelum membahas ke how to prevent itu sendiri, kita harus tau gimana serangan ini bekerja dan konsep serangan tersebut
CVE-2024-4577 merupakan serangan website yang menggunakan web server PHP dengan engine PHP-CGI, serangan ini ditemukan pertama kali sebenarnya pada tanggal 3 Mei 2012, namun ditemukan kembali pada tanggal 6 Mei 2024
kurang lebih serangannya seperti ini:
POST /cgi-bin/php-cgi.exe?%ADd+allow_url_include%3d1+%ADd+auto_prepend_file%3dphp://input HTTP/1.1
Host: {{Hostname}}
Content-Type: application/x-www-form-urlencoded
Content-Length: 31
<?php echo "CVE-2024-4577"; ?>
kita coba bedah satu persatu untuk payload dan urlnya
POST /cgi-bin/php-cgi.exe?%ADd+allow_url_include%3d1+%ADd+auto_prepend_file%3dphp://input HTTP/1.1
disini POST merupakan method yang digunakan
/cgi-bin/php-cgi.exe -> untuk path ini cukup opsional bisa menggunakan apapun, hanya sekedar pelengkap dari payload url yang digunakan
%ADd+allow_url_include%3d1+%ADd+auto_prepend_file%3dphp://input -> main payload yang digunakan untuk melakukan exploitasi, dimana dari payload tersebut melakukan add beberapa fungsi plugin yaitu allow_url_include dan auto_prepend_file, berikut referensi untuk kedua fungsi tersebut
allow_url_include : https://www.php.net/manual/en/filesystem.configuration.php
auto_prepend_file : https://www.php.net/manual/en/ini.core.php
php://input disini untuk melakukan local file inclusion karena fungsi dari allow_url_include telah di enable melalui fungsi yang ada
Q: bang setelah tau gimana cara kerja exploitnya, lalu next gimana bang?
A: untuk menjawab pertanyaan mu berikut
Detect
disini untuk melakukan deteksi pada serangan tersebut bisa dengan berbagai macam
- bisa menggunakan SIEM yang sudah ter integrasi dengan log kamu, berikut contoh paling sederhana payload siem yang bisa kamu gunakan untuk SIEM ELK Stack :
Filter : http.response.status_code: 200
url.query: %ADd+allow_url_include%3d1+%ADd+auto_prepend_file%3d
- gunakan snort atau waf lainnya yang bisa kamu gunakan untuk melakukan deteksi pada serangan tersebut, pada intinya detect pada payload url berikut: %ADd+allow_url_include%3d1+%ADd+auto_prepend_file%3d
Prevent
untuk preventif dari serangan tersebut, kamu bisa melakukan beberapa cara yaitu
- melakukan upgrade PHP version ke 8.3.8, 8.2.20, and 8.1.29
- melakukan config pada .htaccess dengan config berikut :
RewriteEngine On
RewriteCond %{QUERY_STRING} ^%ad [NC]
RewriteRule .? - [F,L]
- jika menggunakan XAMPP, edit pada C:/xampp/apache/conf/extra/httpd-xampp.conf, lalu edit line berikut:
ScriptAlias /php-cgi/ "C:/xampp/php/"
comment line tersebut menjadi seperti ini
#ScriptAlias /php-cgi/ "C:/xampp/php/"
jika nemu untuk nginx bisa dishare juga di thread ini, nanti gw bakal update
terima kasih
salam hangat dari member Surabaya Hacker Link cabang Parung Panjang, Bogor
Mr_k0py0r
hanya seorang pegawai yang jadi anak kereta pp 61km