Akankah proxy terbalik di depan server web meningkatkan keamanan?

14

Profesional keamanan pihak ketiga merekomendasikan agar kami menjalankan proxy terbalik di depan server web (semua dihosting di DMZ) sebagai tindakan keamanan praktik terbaik.

Saya tahu ini adalah arsitektur yang disarankan karena menyediakan tingkat keamanan lain di depan aplikasi web untuk mencegah peretas.

Namun, karena proksi terbalik membalikkan HTTP dengan riang antara pengguna dan server web internal, ia tidak akan memberikan ukuran pencegahan peretasan di server web itu sendiri. Dengan kata lain, jika aplikasi web Anda memiliki lubang keamanan, proksi tidak akan memberikan jumlah keamanan yang berarti.

Dan mengingat bahwa risiko serangan terhadap aplikasi web jauh lebih tinggi daripada serangan terhadap proxy, apakah benar-benar banyak yang diperoleh dengan menambahkan kotak tambahan di tengah? Kami tidak akan menggunakan kemampuan caching dari proxy terbalik - hanya alat bodoh untuk mengangkut paket bolak-balik.

Apakah ada hal lain yang saya lewatkan di sini? Apakah reverse proxy paket inspeksi HTTP menjadi sangat bagus sehingga dapat mendeteksi serangan yang berarti tanpa hambatan kinerja utama, atau apakah ini hanya contoh lain dari Teater Keamanan?

Reverse proxy adalah MS ISA fwiw.

Darren
sumber

Jawaban:

9

Apache memiliki mod_security, yang akan mendeteksi serangan keamanan umum. Ada juga mod_cband, yang bisa membatasi bandwidth yang digunakan. Saya tidak akan terkejut jika ISA memiliki sesuatu yang serupa. Tanpa sesuatu yang benar-benar melakukan pengecekan pada lalu lintas HTTP saat melewati proxy, semuanya sedikit sia-sia dari sudut pandang keamanan.

Apa yang akan diberikan proksi terbalik kepada Anda adalah penyeimbangan muatan, kegagalan, caching, SSL, dan pengakhiran pemuatan, meninggalkan server web Anda untuk melakukan apa yang mereka kuasai: melayani HTML.

David Pashley
sumber
8

ISA Server dapat mencari dan mencegah berbagai eksploitasi HTTP dan mencegah mereka dari masuk ke server web. Sementara sebagian besar server HTTP modern tidak lagi dapat dieksploitasi dengan ini, ia memang memiliki manfaat tambahan yaitu tidak mengirimkan lalu lintas ini ke server web.

Selain itu ISA dapat membuatnya lebih mudah untuk melakukan hal-hal seperti menambahkan akselerasi SSL dan pra-otorisasi pengguna ke berbagai URL. Ia bahkan dapat bertindak sebagai penyeimbang beban untuk Anda sehingga Anda dapat dengan mudah menambahkan lebih banyak server web tanpa menggunakan penyeimbang beban perangkat keras yang terpisah.

Pastikan untuk mengambil pro yang diberikan orang ini pada ISA dan bobotnya terhadap berapa banyak biaya tambahan yang diperlukan untuk mengelola dan menjalankan ISA dibandingkan dengan manfaatnya.

Aaron Weiker
sumber
8

Akankah proxy terbalik di depan server web meningkatkan keamanan?

Proxy terbalik memberi Anda beberapa hal yang dapat membuat server Anda lebih aman.

  • Tempat untuk memantau dan mencatat apa yang terjadi terpisah dari server web
  • Tempat untuk menyaring atau firewall terpisah dari server web Anda jika Anda tahu bahwa beberapa area sistem Anda rentan. Bergantung pada proksi, Anda mungkin dapat memfilter di tingkat aplikasi.
  • Tempat lain untuk menerapkan ACL dan aturan jika Anda tidak bisa cukup ekspresif untuk beberapa alasan di server web Anda.
  • Tumpukan jaringan terpisah yang tidak akan rentan dengan cara yang sama seperti server web Anda. Ini terutama benar jika proxy Anda berasal dari vendor yang berbeda.
    • Menggunakan pengaturan Apache sebagai proxy di depan server Apache mungkin tidak membantu seperti Squid di depan Apache.

Proxy terbalik tanpa pemfilteran tidak secara otomatis melindungi Anda dari segalanya, tetapi jika sistem yang Anda perlu lindungi bernilai tinggi, maka menambahkan proxy terbalik mungkin sepadan dengan dukungan biaya dan biaya kinerja.

Sakit kepala
sumber
6

Ini bisa melindungi server aplikasi Anda dari serangan berdasarkan permintaan HTTP yang buruk ... Terutama jika memungkinkan pada proxy terbalik (dan bukan pada server aplikasi) untuk mengonfigurasi dengan tepat seperti apa permintaan yang baik itu terlihat dan tidak membiarkan permintaan yang buruk masuk. Jika Anda harus mengatakan seperti apa permintaan yang buruk itu, hampir pasti itu tidak akan berguna. Dengan kata lain, itu mungkin melindungi dari serangan buffer overflow, tetapi tidak dari injeksi SQL.

Sebagian besar, itu terdengar seperti teater keamanan. Anda menyewa konsultan keamanan, dan mereka harus memberi tahu Anda sesuatu yang harus dilakukan untuk meningkatkan keamanan Anda. Sangat tidak mungkin seorang penyerang akan membobol proxy terbalik dan jika mereka memintasinya, mereka selalu bisa menyalahkan Anda; jadi ini adalah rekomendasi yang aman.

freiheit
sumber
3

Pada dasarnya, proksi terbalik akan menyembunyikan infrastruktur Anda dari dunia. Jadi ini terutama merupakan kasus keamanan oleh ketidakjelasan, kecuali server web Anda benar-benar tidak dapat dikelola dan tidak aman.

Itu juga dapat melindungi server web Anda dari beberapa jenis DOS (distribusi penolakan layanan), terutama jika situs web Anda "berat", bertindak sebagai lapisan caching.

Ini juga memiliki beberapa gotchas dengannya: ia akan menyembunyikan IP nyata dari pelanggan Anda dari aplikasi Anda. Ini akan membuat Anda mengkonsumsi lebih banyak daya server, dan menambahkan lapisan hal-hal yang dapat merusak. Ingatlah bahwa proxy terbalik Anda harus menangani lebih banyak koneksi (biasanya dua kali lebih banyak: koneksi ke pelanggan dan koneksi ke server web Anda).

Pada akhirnya, proksi terbalik tidak akan membiarkan Anda memiliki situs web yang aman.

Xavier Nicollet
sumber
0

Saya pikir Zoredache telah memberikan jawaban yang sangat baik mengenai manfaat yang dapat diberikan oleh proxy terbalik. Saya telah menggunakan Pound yang merupakan proxy terbalik, load-balancer, dan frontend HTTPS.

http://www.apsis.ch/pound/

ChrisNZ
sumber
0

Satu keuntungan yang menurut saya tidak dibicarakan orang lain adalah kenyataan bahwa Anda tidak harus membuka IP / port eksternal melalui firewall eksternal Anda. Sistem proxy terbalik yang baik akan memulai komunikasi dari dalam jaringan Anda ke server di DMZ yang melindungi jaringan terhadap serangan langsung. Namun, ini & seperti yang orang lain katakan, tidak akan melindungi Anda terhadap aplikasi yang ditulis dengan buruk.

pengguna2259963
sumber