การเปลี่ยนพอร์ต SQL Server นั้นปลอดภัยกว่าหรือไม่?


12

พอร์ตเริ่มต้นของ SQL Server คือ 1433 ฉันได้รับแจ้งจากผู้ดูแลระบบของเราว่าพอร์ตนั้นต้องเปลี่ยน "เพื่อเหตุผลด้านความปลอดภัย"

ปลอดภัยกว่าที่จะเปลี่ยนพอร์ตจริงหรือ หากเซิร์ฟเวอร์อยู่หลังไฟร์วอลล์และอนุญาตเฉพาะการเชื่อมต่อกับเซิร์ฟเวอร์ในช่วง IP ที่ระบุเท่านั้นนั่นไม่ดีพอใช่ไหม


ที่เกี่ยวข้อง: dba.stackexchange.com/q/1813/630
gbn

คำตอบ:


18

ช่วยต่อต้านการสแกนพอร์ตทั่วไปที่สามารถเริ่มต้นผ่านเว็บไซต์การสแกนพอร์ต แต่มันจะไม่ช่วยต่อต้านผู้โจมตีที่มุ่งมั่น มันเป็นเพียงเลเยอร์อื่น แต่ไม่เพิ่มเกินไฟร์วอลล์ตามที่คุณกล่าวถึง


11

หากเซิร์ฟเวอร์ SQL ของคุณเชื่อมต่อโดยตรงกับอินเทอร์เน็ต (ซึ่งไม่ควรมี) ก็สามารถให้การป้องกันบางอย่างแก่คุณเนื่องจากสคริปต์โจมตีทั่วไปส่วนใหญ่ใช้หมายเลขพอร์ตเริ่มต้นเท่านั้น

หากเซิร์ฟเวอร์ SQL ของคุณไม่สามารถเข้าถึงได้โดยตรงจากอินเทอร์เน็ตนี่จะไม่มีจุดหมายเลย ไฟร์วอลล์ใด ๆ จะต้องอนุญาตการเชื่อมต่อกับพอร์ตระยะไกล ทันทีที่ฉันรันซอฟต์แวร์ไคลเอนต์บนเครื่องฉันสามารถเห็นพอร์ตใดที่ SQL Server ใช้ผ่านคำสั่ง NET STAT ณ จุดนี้คุณทำให้ฉันช้าลง 2-3 วินาที


10

มันจะหยุดแอพพลิเคชั่นที่คาดว่าพอร์ต 1433
แอพบางตัวสามารถกำหนดค่าให้จัดการกับสิ่งนี้ได้ แต่ต้องมีการปรับใช้

ฉันแค่ทิ้งไว้ หากพวกเขา "แฮ็ค" อินสแตนซ์เริ่มต้นของคุณที่พอร์ต 1433 แสดงว่าคุณถูกกระแทกแล้ว

คุณสามารถระบุพอร์ตสำหรับอินสแตนซ์ที่มีชื่อ แต่พอร์ต 1434 จำเป็นต้องเปิดเพื่อแก้ไขอินสแตนซ์ไปยังพอร์ต ...


1
หากคุณเชื่อมต่อด้วยพอร์ตเสมอ SQL Server Browser (และพอร์ต 1434) ก็สามารถปิดได้เช่นกัน
Nick Chammas

7

แฮกเกอร์มักจะสแกนที่อยู่ IP สำหรับพอร์ตที่ใช้บ่อยดังนั้นจึงไม่ใช่เรื่องแปลกที่จะใช้พอร์ตอื่นเพื่อ "บินใต้เรดาร์" นี่เป็นเพียงเพื่อหลีกเลี่ยงการตรวจจับนอกเหนือจากนั้นไม่มีความปลอดภัยเพิ่มเติมโดยใช้พอร์ตอื่น

หากมีเพียงช่วง IP ที่ จำกัด เท่านั้นที่สามารถเข้าถึงพอร์ตได้แสดงว่าคุณอยู่ภายใต้เรดาร์แล้วดังนั้นฉันจึงไม่เห็นเหตุผลที่ดีที่จะใช้พอร์ตอื่น


6

จริง ๆ แล้วใช่ หากต้องการใช้ตัวอย่างอื่นผู้ดูแลระบบห้องปฏิบัติการ Linux ของมหาวิทยาลัยของฉันเปลี่ยนพอร์ต SSH จาก 22 เป็นค่าที่ไม่ชัดเจน เขารายงานว่าเครือข่ายลดลงจาก ~ 10,000 ปิง / การโจมตีต่อวันเป็นประมาณ 1 หรือ 2 ต่อเดือน จริงอยู่ถ้าคุณยังไม่ได้รับความทุกข์จากการจู่โจมแบบนั้นอาจจะไม่คุ้มค่ากับความพยายามในกรณีส่วนใหญ่ แต่ถึงกระนั้นเมื่อเปลี่ยนเป็นพอร์ตทางเลือกที่รอบคอบคุณจะป้องกันการโจมตีแบบกว้างและอะไรก็ตาม


3

ฉันคิดว่านี่เป็นปัญหาสองส่วน

1) ซอฟต์แวร์การสแกนพอร์ตทั่วไปอาจลองใช้พอร์ตทั่วไปก่อน แต่ไม่มีอะไร จำกัด โดยเฉพาะจากการลองใช้พอร์ตทั้งหมดและคุณต้องสามารถสันนิษฐานได้ว่าจะสามารถพิมพ์ลายนิ้วมือโปรโตคอลเมื่อพบพอร์ตเปิด .

2) เมื่อการสแกนพอร์ตที่ก้าวร้าวยิ่งขึ้นคุณต้องสามารถตรวจจับได้และทำบางสิ่งด้วยความรู้นี้ (เช่น fail2ban เป็นต้น)

ผู้ดูแลระบบของคุณกำลังเสนอ (1) ถามสิ่งที่เขามีเกี่ยวกับ (2)



2

การเปลี่ยนพอร์ตจะบังคับให้พวกเขาทำการสแกน เมื่อคุณใช้เครื่องมือรักษาความปลอดภัยเช่น snort, กับ network taps หรือ SPAN, ดังนั้นบางอย่างเช่นการสแกนพอร์ตของเซิร์ฟเวอร์ของคุณจะชัดเจน บางคนเชื่อมต่อกับเซิร์ฟเวอร์ SQL บนพอร์ตเริ่มต้นอย่างถูกกฎหมายไม่ชัดเจน

ฉันเห็นด้วยวิธีที่ดีที่สุดไม่ใช่การรักษาความปลอดภัยด้วยความสับสน อย่างไรก็ตามการเปลี่ยนพอร์ตเริ่มต้นในแอพพลิเคชั่นใด ๆ และทั้งหมดเป็นไปได้เป็นส่วนหนึ่งของกลยุทธ์ที่ลึกล้ำกว่าซึ่งรวมถึงกิจกรรมทีมสีแดงทีมตรวจสอบความปลอดภัยเครือข่ายและเครื่องมือที่ถูกต้องติดตั้งครบกำหนดและเข้าใจโดย ผู้ที่ใช้มัน

เมื่อคุณมีทุกสิ่งเหล่านี้ผู้บุกรุกในระบบของคุณจะโดดเด่นเหมือนนิ้วโป้งที่เจ็บ บรรทัดล่าง - ถ้าใครคิดว่าพวกเขาสามารถปรับปรุงความปลอดภัยของระบบของพวกเขาโดยการตรวจสอบรายการในรายการพวกเขาผิด หากพวกเขาไม่สามารถอธิบายได้ว่าทำไมพวกเขาถึงต้องการเปลี่ยนพอร์ตโดยไม่มีเงื่อนไขที่ไม่แน่นอนพวกเขาไม่ได้อยู่ในบทบาทของคนที่บอกให้คุณเปลี่ยนพอร์ต


-2

เมื่อแอปพลิเคชันเชื่อมต่อกับ MS SQL ผ่าน TCPIP ส่วนแรกของการสนทนาจะเกิดขึ้นใน 1433 โดยมีอินสแตนซ์ที่ไม่มีชื่อเริ่มต้น - ไม่น้อยคือการกำจัดหมายเลขพอร์ตใด ๆ ที่ชื่ออินสแตนซ์กำลังสื่อสารอยู่ ไฟร์วอลล์ใด ๆ ควรได้รับการกำหนดค่าเป็น a) ปล่อยให้สิ่งนี้ผ่านไปยังช่วง ip ที่เหมาะสม B) หมายเลขพอร์ตคงที่ซึ่งอินสแตนซ์ที่ตั้งชื่อใด ๆ อาจใช้งานอยู่ ควรกำหนดค่าเหล่านี้ในเครื่องมือจัดการการกำหนดค่า SQL ตามที่ได้รับการแก้ไข คุณสามารถสื่อสารกับอินสแตนซ์ใด ๆ ที่ใช้ (ที่อยู่ ip 192.168.22.55): (หมายเลขพอร์ต 12345) ในสตริงการเชื่อมต่อ หากบริการเบราว์เซอร์ SQL ไม่ได้เปิดใช้งาน 1433 จะไม่ให้การสนทนาเริ่มต้น หากคุณใช้การพิสูจน์ตัวตน NT ก็มีน้อยที่จะได้รับ หากคุณใช้ SQL authenetication จะมีจำนวนเล็กน้อยที่จะได้รับ


พอร์ต 1434 UDP สำหรับการแก้ปัญหาอินสแตนซ์ ... msdn.microsoft.com/en-us/library/ms165724(SQL.90).aspx
gbn

-1 เพราะไม่ควรมีการโหวต
gbn
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.