HTTPS, HSTS, XSS, and SSRF

Cross Site Scripting (XSS)

Tidak seperti banyak sistem serupa, dasbor OpenStack memungkinkan seluruh karakter Unicode diatur di sebagian besar bidang. Ini berarti pengembang memiliki garis lintang (latitude) yang lebih sedikit untuk membuat kesalahan melarikan diri (escaping mistake) yang membuka vektor serangan untuk cross-site scripting (XSS).

Dasbor menyediakan alat bagi pengembang untuk menghindari kerentanan XSS, namun hanya berfungsi jika pengembang menggunakannya dengan benar. Mengaudit setiap dasbor kustom, memperhatikan penggunaan fungsi mark_safe, penggunaan is_safe dengan tag template khusus, tag template safe, di mana saja pelarian otomatis (auto escape) dimatikan, dan JavaScript apa pun yang bisa mengevaluasi data lolos (escaped data) dengan tidak semestinya.

Cross Site Request Forgery (CSRF)

Django telah mendedikasikan middleware untuk cross-site request forgery (CSRF). Untuk keterangan lebih lanjut, lihat Django documentation.

Dasbor OpenStack dirancang untuk mencegah pengembang mengenalkan kerentanan skrip lintas situs dengan dasbor kustom sebagai thread dapat diperkenalkan. Dasbor yang menggunakan beberapa instance JavaScript harus diaudit untuk kerentanan seperti penggunaan dekorator ``@csrf_exempt yang tidak tepat. Setiap dasbor yang tidak mengikuti pengaturan keamanan yang disarankan ini harus dievaluasi secara hati-hati sebelum batasan rileks.

Cross-Frame Scripting (XFS)

Browser lawas masih rentan terhadap kerentanan Cross-Frame Scripting (XFS), jadi dasbor OpenStack memberikan opsi DISALLOW_IFRAME_EMBED yang memungkinkan pengerasan keamanan ekstra dimana iframe tidak digunakan dalam penempatan.

HTTPS

Terapkan dasbor di belakang yang aman HTTPS server dengan menggunakan sertifikat terpercaya dan valid dari certificate authority (CA) yang dikenali. Sertifikat yang diterbitkan oleh organisasi private hanya sesuai bila akar kepercayaan telah terinstal di semua browser pengguna.

Konfigurasikan permintaan HTTP ke domain dasbor untuk mengalihkan ke URL HTTPS yang memenuhi syarat.

HTTP Strict Transport Security (HSTS)

Hal ini sangat dianjurkan untuk digunakan HTTP Strict Transport Security (HSTS).

Catatan

Jika Anda menggunakan proxy HTTPS di depan server web Anda, daripada menggunakan server HTTP dengan fungsionalitas HTTPS, ubah variabel SECURE_PROXY_SSL_HEADER. Lihat Django documentation <https://docs.djangoproject.com/> `_ untuk informasi tentang memodifikasi variabel ``SECURE_PROXY_SSL_HEADER`.

Lihat bab di Komunikasi yang aman untuk rekomendasi lebih spesifik dan konfigurasi server untuk konfigurasi HTTPS, termasuk konfigurasi HSTS.