Apakah ada alasan untuk menyimpan header respons "Server" di Apache

16

Server saya merespons Server: Apache/2.2.15 (CentOS)semua permintaan. Saya kira ini memberikan arsitektur server saya membuatnya lebih mudah untuk meretas upaya.

Apakah ini pernah berguna untuk browser web? Haruskah saya tetap menggunakannya?

Nic Cottrell
sumber
Jelas saya juga memperbarui server saya dengan yum-cron!
Nic Cottrell

Jawaban:

16

Menurut pendapat saya, yang terbaik adalah menutupi ini sebanyak mungkin. Ini adalah salah satu alat yang Anda gunakan untuk meretas situs web - temukan teknologinya, gunakan kelemahan yang diketahui dari teknologi itu. Alasan yang sama mengapa praktik terbaik keamanan beberapa waktu lalu mulai mempromosikan memiliki url dalam bentuk "/ view / page" alih-alih "/view/page.jsp" atau "/view/page.asp" ... jadi teknologi yang mendasarinya tidak akan terpapar.

Ada beberapa diskusi tentang ini seperti /programming/843917/why-does-the-server-http-header-exist dan http://www.troyhunt.com/2012/02/shhh- dont-let-your-response-headers.html dan jelas-jelas buku Peretasan Terkena.

Juga ini di Security SE /security/23256/what-is-the-http-server-response-header-field-used-for

Tetapi perlu diingat bahwa ini bukan segalanya untuk mengamankan server Anda. Hanya satu langkah lagi ke arah yang benar. Itu tidak mencegah peretasan untuk dieksekusi. Itu hanya membuatnya kurang terlihat seperti apa hack harus dilakukan.

ETL
sumber
6
Menghapus ekstensi nama file di URL tidak ada hubungannya dengan keamanan ... itu lebih mudah dibaca oleh manusia. Ada ribuan cara lain untuk mengungkapkan platform aplikasi Anda.
Brad
Jika server dikonfigurasi dengan benar, mengungkapkan platform untuk calon penyerang tidak akan membantunya.
Cthulhu
19

Anda dapat mengubah header Server jika Anda mau, tetapi jangan mengandalkan ini untuk keamanan. Hanya dengan memperbarui selalu akan melakukan itu, karena penyerang bisa mengabaikan header Server Anda dan mencoba setiap exploit yang diketahui dari awal waktu.

RFC 2616 menyatakan, sebagian:

Pelaksana server didorong untuk menjadikan bidang ini opsi yang dapat dikonfigurasi.

Dan Apache melakukannya, dengan ServerTokensarahan. Anda dapat menggunakan ini jika mau, tetapi sekali lagi, jangan berpikir itu akan secara ajaib mencegah Anda diserang.

Michael Hampton
sumber
4
+1 Log saya penuh dengan "serangan" untuk perangkat lunak yang tidak diinstal. Peretas hanya membuang semua yang mereka punya dan melihat tongkat apa. Jika ada utilitas dalam mengubah ServerTokens, itu bisa diabaikan.
Chris S
@ Chris Memang. Aku bahkan tidak peduli; Saya tetap memperbarui server web saya.
Michael Hampton
3
Saya agak tidak setuju. Meskipun kecil, keamanan tidak pernah cukup kuat, dan apa pun yang dapat membantu tanpa membawa kekurangan atau menurunkan kinerja harus ditegakkan.
mveroone
2
Mengapa informasi versi sukarela? Saya selalu mengatur "ServerSignature Off" dan "ServerTokens Prod". Juga setuju bahwa memperbarui server web Anda adalah satu-satunya perlindungan nyata. Jika Anda tidak menghapus informasi versi dan menyerahkan ke tes penetrasi pihak ketiga, mereka pasti akan menandai ini sebagai "Kebocoran Informasi".
HTTP500
@ HTTP500 Saya berurusan dengan kepatuhan PCI-DSS secara teratur. Ini bukan masalah, asalkan Anda ditambal. Di mana itu menjadi masalah adalah ketika ia membocorkan informasi tentang bagian lain dari sistem (yaitu saya dapat memberitahu OP menjalankan CentOS 5.x) atau Anda tidak tetap up to date.
Michael Hampton
2

Menampilkan string lengkap, dengan informasi versi, dapat membuat Anda berisiko lebih tinggi dari serangan 0 hari jika penyerang telah membuat daftar server mana yang menjalankan perangkat lunak apa.

Yang sedang berkata, Anda seharusnya tidak berharap bahwa menyembunyikan string server akan melindungi Anda dari upaya peretasan. Ada cara untuk sidik jari server berdasarkan cara tanggapan dan kesalahan dilaporkan.

Saya menonaktifkan string saya, sejauh yang saya bisa tapi saya tidak berkeringat tentang yang saya tidak bisa sembunyikan (misalnya OpenSSH).

Dan
sumber