Kerentanan HTTPOXY yang ditemukan baru-baru ini adalah kerentanan yang mempengaruhi aplikasi yang berjalan di lingkungan cgi atau mirip cgi. Artinya, masalah tersebut memengaruhi hampir semua server web termasuk Apache dan Nginx, serta sebagian besar aplikasi PHP. Bahkan mode mod_php di Apache pun terpengaruh.
Tutorial ini akan menunjukkan cara melindungi server web Anda dari HTTPOXY. Ini berisi bagian untuk Distribusi Linux yang paling banyak digunakan CentOS + RHEL, Debian, dan Ubuntu. Langkah-langkahnya juga dapat diterapkan ke distribusi Linux lainnya, tetapi jalur ke file konfigurasi mungkin berbeda.
Penjelasan rinci tentang kerentanan HTTPOXY dapat ditemukan di situs web ini https://httpoxy.org/.
Langkah-langkah yang dijelaskan dalam tutorial ini kompatibel dengan tutorial server sempurna ISPConfig.
1 Bagaimana HTTPOXY memengaruhi server saya?
HTTPOXY mempengaruhi klien yang menghormati variabel HTTP_PROXY dan menggunakannya untuk konfigurasi proxy mereka dan aplikasi sisi server yang menggunakan HTTP_PROXY sebagai variabel nyata atau yang ditiru di lingkungan mereka. Hasil serangan dapat berupa lalu lintas yang diproksi oleh aplikasi web ke sistem target yang dipilih oleh penyerang atau aplikasi membuka koneksi keluar ke sistem lain. Kerentanan ini mudah dieksploitasi dari jarak jauh dan server dapat dipindai untuk mendeteksinya, jadi sangat disarankan untuk mengambil tindakan untuk menutupnya di server Anda.
1.1 Solusi umum
Solusi yang direkomendasikan saat ini adalah menghapus atau memfilter variabel header HTTP_PROXY. Ini dilakukan di Apache dengan modul mod_headers dan pernyataan konfigurasi ini:
RequestHeader unset Proxy early
Di Nginx, Anda dapat menggunakan baris ini untuk menghapus variabel HTTP_PROXY.
fastcgi_param HTTP_PROXY "";
Bab berikutnya menjelaskan prosedur rinci untuk Distribusi Linux yang berbeda.
2 Debian
Bab ini menjelaskan konfigurasi untuk melindungi Apache dan Nginx pada server Debian 8 (Jessie) dan Debian 7 (Wheezy) terhadap HTTPOXY. Langkah selanjutnya mengasumsikan bahwa Anda masuk sebagai pengguna root di shell. Jika Anda login dengan pengguna yang berbeda, gunakan perintah su (atau sudo jika Anda mengonfigurasi sudo) untuk menjadi pengguna root.
2.2 Debian 8 (Jessie) dengan Apache
Aktifkan modul header Apache
a2enmod headers
Tambahkan file konfigurasi global /etc/Apache2/conf-available/httpoxy.conf. Saya akan menggunakan editor nano di sini:
nano /etc/apache2/conf-available/httpoxy.conf
dan rekatkan konten berikut ke file itu:
<IfModule mod_headers.c> RequestHeader unset Proxy early </IfModule>
Simpan file. Kemudian aktifkan di konfigurasi dengan perintah a2enconf dan restart apache.
a2enconf httpoxy
service apache2 restart
2.2 Debian 7 (Mengi) dengan Apache
Aktifkan modul header Apache:
a2enmod headers
Tambahkan file konfigurasi global /etc/Apache2/conf.d/httpoxy.conf. Saya akan menggunakan editor nano di sini:
nano /etc/apache2/conf.d/httpoxy.conf
dan rekatkan konten berikut ke file itu:
<IfModule mod_headers.c> RequestHeader unset Proxy early </IfModule>
Simpan file. Kemudian restart apache.
service apache2 restart
2.3 Debian dengan Nginx
Perintah berikut akan menambahkan fastcgi_param yang menyetel variabel HTTP_PROXY ke string kosong ke file /etc/nginx/fastcgi_params.
echo 'fastcgi_param HTTP_PROXY "";' >> /etc/nginx/fastcgi_params
Kemudian mulai ulang nginx untuk menerapkan perubahan konfigurasi.
service nginx restart
3 Ubuntu
Bab ini menjelaskan konfigurasi untuk melindungi Apache dan Nginx pada server Ubuntu 14.04 - 16.04 terhadap HTTPOXY.
3.1 Ubuntu dengan Apache
Aktifkan modul header Apache.
sudo a2enmod headers
Tambahkan file konfigurasi global /etc/Apache2/conf-available/httpoxy.conf. Saya akan menggunakan editor nano di sini:
sudo nano /etc/apache2/conf-available/httpoxy.conf
dan rekatkan konten berikut ke file itu:
<IfModule mod_headers.c> RequestHeader unset Proxy early </IfModule>
Simpan file. Kemudian aktifkan di konfigurasi dengan perintah a2enconf dan restart apache.
sudo a2enconf httpoxy
sudo service apache2 restart
3.2 Ubuntu dengan Nginx
Langkah-langkah untuk melindungi Ubuntu dari HTTPOXY mirip dengan langkah-langkah untuk Debian. Kami hanya perlu memastikan untuk menjalankan perintah dengan sudo. Perintah echo ini akan menambahkan baris fastcgi_param yang menetapkan variabel HTTP_PROXY sebagai string kosong. File /etc/nginx/fastcgi_params disertakan ke dalam bagian @PHP dan cgi-bin default dari file nginx vhost dan juga di vhost yang dibuat oleh ISPConfig. Jika Anda menambahkan vhost khusus, periksa apakah vhost tersebut berisi "include /etc/nginx/fastcgi_params;" di bagian konfigurasi untuk php dan konektor cgi atau fastcgi lainnya.
Jalankan perintah berikut untuk menambahkan variabel HTTP_PROXY kosong.
sudo echo 'fastcgi_param HTTP_PROXY "";' >> /etc/nginx/fastcgi_params
Kemudian mulai ulang Nginx untuk menerapkan perubahan konfigurasi.
sudo service nginx restart
4 CentOS, RHEL dan Fedora
Bab ini menjelaskan konfigurasi untuk melindungi Apache dan Nginx di server CentOS dari HTTPOXY. Langkah yang sama juga berlaku untuk server Fedora. Login sebagai pengguna root pada shell sebelum Anda melanjutkan dengan perintah di bawah ini.
4.1 Apache
File konfigurasi Apache (httpd) pada CentOS adalah /etc/httpd/conf/httpd.conf. Saya akan menambahkan aturan header Apache di akhir file httpd.conf dengan perintah ini:
echo "RequestHeader unset Proxy early" >> /etc/httpd/conf/httpd.conf
Kemudian restart httpd untuk menerapkan perubahan konfigurasi.
service httpd restart
4.2 Nginx
Server web Nginx di CentOS menyertakan fastcgi_params ke dalam bagian PHP dan CGI dari vhost default, sehingga kita dapat menambahkan aturan untuk mengatur variabel HTTP_PROXY kosong di sana. Jalankan perintah ini untuk menambahkan variabel HTTP_PROXY kosong.
echo 'fastcgi_param HTTP_PROXY "";' >> /etc/nginx/fastcgi_params
Kemudian mulai ulang nginx untuk menerapkan perubahan konfigurasi.
service nginx restart
5 Tes
Terakhir, Anda harus menguji apakah server Anda aman sekarang. Luke Rehman telah mengembangkan alat pengujian online yang bagus yang dapat ditemukan di sini: https://httpoxy.rehmann.co/
Masukkan URL ke server atau situs web Anda di alat dan klik tombol "uji".
Berikut adalah hasil untuk howtoforge.com. Seperti yang Anda lihat, situs web kami aman.
6 Tautan
- Situs Web HTTPOXY https://httpoxy.org/
- Terima kasih kepada Jesse untuk resep Debian 8.