Apakah masih praktik terbaik untuk menghindari menggunakan port default untuk SQL Server?

21

Secara historis, disarankan untuk tidak menggunakan port default untuk koneksi ke SQL Server, sebagai bagian dari praktik terbaik keamanan. Pada server dengan instance tunggal standar, port berikut akan digunakan secara default:

  • Layanan SQL Server - Port 1433 (TCP)
  • Layanan Browser SQL Server - Port 1434 (UDP)
  • Koneksi Admin Khusus - Port 1434 (TCP)

PERTANYAAN:

  • Apakah saran ini masih relevan?
  • Haruskah SEMUA port di atas diubah?
James D
sumber
1
Mungkin posting ini dapat membantu Anda dba.stackexchange.com/questions/213810/…
igelr

Jawaban:

68

Secara historis, disarankan untuk tidak menggunakan port default untuk koneksi ke SQL Server, sebagai bagian dari praktik terbaik keamanan.

Yang dulu asinine dan masih asinine sekarang. Keamanan melalui ketidakjelasan bisa dibilang bukan keamanan sama sekali.

Apakah saran ini masih relevan

IMHO itu tidak pernah relevan. Itu diperlukan untuk beberapa tujuan kepatuhan karena orang-orang yang menyusun kepatuhan itu tidak mengerti apa yang mereka lakukan, sekali lagi, IMHO.

Haruskah SEMUA port di atas diubah?

Saya tidak akan mengubah apa pun.

Sean berkata Hapus Sara Chipps
sumber
11

Meskipun keamanan melalui ketidakjelasan bukanlah keamanan yang sebenarnya, saya tidak akan mengatakan tidak ada kasus di mana itu membantu.

Jika seorang penyerang ingin tahu di mana layanan Anda mendengarkan mereka dapat dengan mudah mengetahuinya, tetapi jika terjadi serangan otomatis bodoh Anda bisa beruntung jika Anda mengubah port.

Satu-satunya waktu saya dapat mengingat di mana itu benar-benar membantu adalah selama masa SQL Slammer di mana SQL Server 2000 rentan dan worm menyebar dengan menghasilkan ip acak dan menghubungkan ke port browser SQL Server default.

Jika saya ingat dengan benar itu adalah saran resmi pada saat itu untuk mengubah port sampai Anda dapat menambal server Anda (baik karena tidak ada patch segera tersedia atau karena Anda tidak memiliki jendela)

Agar worm dapat memasuki jaringan Anda pada saat Anda perlu memiliki SQL Server yang terhubung ke internet alih-alih di belakang firewall, yang seharusnya tidak Anda lakukan, tetapi bagaimanapun, nomor port non-default dapat membantu dalam kasus tertentu.

Namun saya setuju bahwa jika Anda memiliki keamanan yang tepat di tempat kompleksitas yang Anda tambahkan mungkin tidak lebih besar daripada kemungkinan mencegah insiden.

Tom V - Tim Monica
sumber
9

Secara historis, disarankan untuk tidak menggunakan port default untuk koneksi ke SQL Server, sebagai bagian dari praktik terbaik keamanan

Tidak, bukan itu. Beberapa orang yang salah arah mungkin telah menyajikannya seperti itu, tetapi saya telah melakukan keamanan selama 20+ tahun dan mengubah port default selalu menjadi semacam "di sini adalah sesuatu yang dapat Anda lakukan jika Anda inginkan yang mungkin kadang-kadang dalam keadaan yang sangat spesifik menyediakan sedikit keamanan tambahan terhadap beberapa ancaman yang sangat spesifik ".

Apakah saran ini masih relevan?

Dalam keadaan yang sangat spesifik, tergantung pada model ancaman Anda dan analisis risiko, mungkin ada beberapa contoh di mana ini adalah saran yang masuk akal. Dalam sebagian besar kasus, tidak, itu tidak relevan juga tidak pernah.

Tom
sumber
7

YA , masih bermanfaat.

Mengubah port default hanya memiliki satu tujuan nyata: bertahan terhadap pemindaian / serangan otomatis, jika server database Anda terbuka terhadap host yang mungkin dikompromikan.

Meskipun itu mungkin tidak terdengar seperti masalah besar, ingat bahwa:

  • host mana pun dapat dikompromikan (atau server database Anda mungkin terpapar ke Internet pada umumnya karena beberapa kesalahan)
  • sebagian besar serangan hari-hari itu adalah serangan otomatis , dan banyak dari mereka hanya akan mencoba port default (karena membidik buah yang tergantung rendah adalah yang paling efisien).

Jadi, ya, sementara itu dengan sendirinya tidak akan banyak membantu Anda jika berada di bawah serangan yang ditargetkan , menggunakan port acak (dan / atau membuatnya mendengarkan pada alamat IPv6 acak saja) akan membuatnya jauh kurang terlihat, sehingga setidaknya memberi Anda lebih banyak waktu untuk tingkatkan sebelum pindaian eksploitasi 0day otomatis menghantam Anda (dan bahkan mungkin melindungi Anda sepenuhnya terhadap pemindaian otomatis semacam itu dengan sendirinya!)

Selain itu (ini akan membantu tidak hanya terhadap semua serangan otomatis terhadap, tetapi juga terhadap beberapa serangan yang ditargetkan juga) ketika penyerang mencoba menemukan port basis data Anda untuk mengeksploitasinya dengan portcans bruteforce, ia dapat dideteksi dan dipertahankan terhadap (dengan memasukkan rentang IP penyerang daftar hitam) , dan memberi tahu admin jika beberapa host internal telah terdeteksi sebagai sumber serangan)

Juga perhatikan bahwa mengubah port default untuk server dan klien (terutama jika mereka digunakan secara otomatis) adalah pekerjaan sepele, dan mendeteksi pemindaian bruteforce juga mudah; jadi Anda benar-benar harus melakukannya (tidak hanya untuk server basis data; tetapi untuk semua layanan di mana pengaturannya tidak dihalang-halangi karena masalah kegunaan: seperti mengubah port default untuk web dari 80tidak disarankan, karena beberapa orang (dan bot) akan mengacaukannya, dan firewall acak di seluruh dunia mungkin tidak memungkinkan koneksi dibuat. Tetapi RDP adalah target yang bagus misalnya untuk port non-default)

Matija Nalis
sumber
1

Saya tidak akan mengubah port, tetapi bagaimanapun tidak pernah mengekspos layanan database secara langsung melalui internet. Hanya melalui terowongan yang aman seperti SSH. Mengubah port SSH mungkin merupakan ide bagus untuk meminimalkan lalu lintas oleh pemindai.

Thomas
sumber