Cara menyembunyikan nomor versi Apache dan informasi sistem operasi

Apache adalah salah satu server web paling populer, tetapi konfigurasi defaultnya menyertakan opsi yang dipertanyakan di banyak distribusi Linux. Apache cenderung menentukan versi spesifiknya dan platform tempat ia berjalan, informasi yang dapat berharga bagi penyerang.

Artikel singkat ini akan menunjukkan kepada Anda cara menonaktifkan masalah ini untuk melindungi server Anda. Biasanya tidak ada alasan untuk aktif, dan hanya perlu satu menit untuk berhenti.

Apa masalahnya?

Berikut ini adalah instalasi bersih Apache 2.4 yang menunjukkan indeks direktori:

Footer menampilkan kode versi Apache, nama sistem operasi, alamat IP internal server, dan nomor port.

Ini adalah detail yang berpotensi sensitif. Kerentanan zero-day di Apache dapat memengaruhi sejumlah kecil rilis. Dengan membiarkan output ini dihidupkan, Anda memberi tahu dunia jika perangkat Anda dalam bahaya. Ini memudahkan penyerang untuk mengidentifikasi host Anda sebagai target potensial.

Apache menyebut data ini sebagai “tanda tangan server”. Ini tidak terbatas pada halaman indeks direktori: kode versi disertakan dalam setiap respons HTTP di Server berita utama:

Itu hadir terlepas dari kode status respons. Penyerang dapat dengan mudah menemukan salinan persis Apache Anda dengan melakukan ping ke server Anda, terlepas dari apakah mereka mengetahui URL yang valid atau tidak.

Nonaktifkan tanda tangan server

Ada dua bagian untuk menonaktifkan output yang tidak diinginkan ini. Yang pertama adalah ServerSignature Nilai dalam file konfigurasi Apache Anda. Lokasi file ini bervariasi; /etc/apache2/apache2.conf Dan /usr/local/apache2/conf/httpd.conf Mereka adalah dua pilihan umum. ini ServerSignature Kemudi juga didukung secara internal .htaccess File ada di root web Anda.

Konfigurasi Perutean Off Untuk menonaktifkan tanda tangan yang muncul di halaman web yang dibuat server:

ServerSignature Off

Mulai ulang Apache agar perubahan diterapkan:

$ sudo service apache2 restart

Ini memengaruhi daftar direktori, halaman kesalahan Apache standar, dan output HTML yang dihasilkan server lainnya. Off Ini menghapus garis tanda tangan sepenuhnya. Parameter secara opsional mendukung nilai ketiga, EMailYang menyediakan tautan untuk mengirim email ke alamat yang ditentukan oleh ServerAdmin:

ServerAdmin [email protected]
ServerSignature EMail

Ini akan menggantikan informasi versi Apache dengan tautan di email.

Manajemen Kode Server

konten dari Server Header respons dikendalikan oleh parameter lain, ServerTokens. Ini hanya dapat diatur melalui file konfigurasi global server Anda. Itu tidak didukung di dalam .htaccess file.

defaultnya adalah Full Yang mewakili string versi dan nama OS yang tepat seperti yang ditunjukkan pada contoh di atas. Ini juga dapat mencakup nomor versi modul yang dimuat dan mesin konten CGI seperti PHP.

Nilai alternatif berikut didukung:

  • FullApache/2.4.2 (Ubuntu)
  • ProdApache
  • MajorApache/2
  • MinorApache/2.4
  • MinApache/2.4.2
  • OS – Seperti Full Tetapi tanpa informasi tentang unit yang dimuat

ini Prod Memilih adalah taruhan yang paling aman. Anda bisa membayangkannya seperti ini ProductionMeskipun sebenarnya pendek ProductOnly. Token server ini berarti bahwa file Server Judul hanya menunjukkan bahwa Anda menggunakan Apache, tanpa informasi tambahan tentang versinya. Penyerang perlu melakukan lebih banyak percobaan dan kesalahan untuk menemukan kerentanan yang dapat dieksploitasi dalam instalasi Anda.

Sayangnya tidak ada cara untuk menghapusnya Server Tentu saja tidak sama sekali. Apache sebenarnya mengklaim bahwa menonaktifkannya “sama sekali tidak membuat server Anda lebih aman” dan menyarankan untuk menggunakan Min Untuk membantu memperbaiki masalah interoperabilitas.

Namun, kebanyakan orang tidak pernah mengkonsumsinya Server header dan selalu lebih aman untuk mempublikasikan informasi sesedikit mungkin di sistem Anda. kerentanan tidak dicegah, ServerTokens Prod Ini dapat mencegah penyerang untuk mencoba berspekulasi. Ini juga mempersulit pengamat untuk mendapatkan detail tentang cara kerja grup teknologi Anda. Ini hanya sedikit fleksibilitas, tetapi suatu hari mungkin hanya variasi yang Anda butuhkan.

Bagaimana dengan PHP-nya?

Apache sering digunakan di depan situs web dan aplikasi berbasis PHP. Sayangnya, PHP memiliki kebiasaan sendiri untuk mengungkapkan nomor versinya di web. muncul di X-Powered-By Header respons yang dikirim dari kode PHP Anda.

Anda dapat menonaktifkan ini dengan mengubah file konfigurasi PHP Anda dengan baris berikut:

expose_php = Off

File konfigurasi biasanya terletak di /etc/php/8.1/apache2/php.ini. alternatif 8.1 Dengan versi PHP yang Anda gunakan. Server web harus dimulai ulang agar perubahan diterapkan.

Ringkasan

Konfigurasi default Apache mencantumkan nomor versi persis server Anda, serta sistem operasi dan alamat IP-nya. Informasi yang tampaknya tidak berbahaya ini dapat membantu penyerang menemukan server yang disusupi.

Menonaktifkan tanda tangan server adalah cara cepat untuk memperkuat lingkungan Anda. Ini juga merupakan ide yang baik untuk secara bersamaan menangani pengungkapan informasi serupa oleh program lain dalam grup Anda. PHP dan beberapa kerangka kerja web memiliki kerentanan yang serupa.

setTimeout (fungsi () {! function (f, b, e, v, n, t, s) { if (f.fbq) kembali; n = f.fbq = function () { n.callMethod?n.callMethod. apply(n, argument): n.queue.push(arguments)}; if (!f._fbq) f._fbq = n; n.push = n; n.loaded = !0; n.version = ‘2.0’ n.antrian = ;[]; t = b.createElement(e); t.async =! 0; t.src = v; s = b.getElementsByTagName (e)[0]; s.parentNode.insertBefore(t,s)} (window, document, “script”, “https://connect.facebook.net/en_US/fbevents.js”); fbq(‘init’, ‘335401813750447’); fbq(‘trek’, ‘Tampilan Halaman’); }, 3000);

Baca Juga!

Cara menggunakan XLOOKUP di Google Spreadsheet

XLOOKUP di Google Spreadsheet memberi Anda cara mudah untuk menemukan data yang Anda cari dengan …