เป็นไปได้ในการโจมตีบนเซิร์ฟเวอร์ SQL ของฉัน


15

ตรวจสอบบันทึก SQL Server ของฉันฉันเห็นหลายรายการเช่นนี้

Date: 08-11-2011 11:40:42
Source: Logon
Message: Login failed for user 'sa'. Reason: Password did not match for the login provided. [CLIENT: 56.60.156.50]
Date: 08-11-2011 11:40:42
Source: Logon
Message: Error: 18456. Severity: 14. State: 8.


Date: 08-11-2011 11:40:41
Source: Logon
Message: Login failed for user 'sa'. Reason: Password did not match for the login provided. [CLIENT: 56.60.156.50]
Date: 08-11-2011 11:40:41
Source: Logon
Message: Error: 18456. Severity: 14. State: 8.

และอื่น ๆ .. นี่เป็นการโจมตีที่เป็นไปได้ใน SQL Server ของฉันจากภาษาจีนหรือไม่ ???! ฉันค้นหาที่อยู่ IP ที่ ip-lookup.net ซึ่งระบุว่าเป็นภาษาจีน

และจะทำอย่างไร?

  • บล็อกที่อยู่ IP ในไฟร์วอลล์หรือไม่
  • ลบผู้ใช้ sa หรือไม่

และฉันจะปกป้องเว็บเซิร์ฟเวอร์ของฉันให้ดีที่สุดได้อย่างไร!

ขอบคุณล่วงหน้า!

คำตอบ:


30

หากคุณมีไฟร์วอลล์ทำไมเซิร์ฟเวอร์ฐานข้อมูลจึงเปิดอินเทอร์เน็ต

  • ไฟร์วอลล์ควรบล็อกการเข้าถึงเซิร์ฟเวอร์ BOTH ทั้งหมดนอกเหนือจากพอร์ตที่ต้องการ โดยทั่วไปจะเป็น 80 (http) และ 443 (https) ไปยังเว็บเซิร์ฟเวอร์เท่านั้น
  • หาก (และหากเท่านั้น) บริการภายนอกจำเป็นต้องเข้าถึง SQL Server อนุญาตการเข้าถึงที่อยู่ IP เฉพาะที่จำเป็นสำหรับไฟร์วอลล์ สิ่งนี้ควรเกิดขึ้นผ่านการเชื่อมต่อ VPN ซึ่งไม่เปิดเผยอย่างเปิดเผย 1433
  • สร้างบัญชีผู้ดูแลระบบใหม่และปิดการใช้งานค่าเริ่มต้น 'sa'
  • ควรสลับจากการใช้การรับรองความถูกต้อง "โหมดผสม" เป็นบัญชี windows

10

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

สิ่งแรกที่บุคคลควรทำคือบล็อก IP จากไฟร์วอลล์ นี้จะซื้อเวลาเล็กน้อย แต่ไม่มากอาจจะนาทีเท่านั้น หาก IP จับคู่กับช่วงของ IP ตามที่รายงานโดย WhoIs.net ให้บล็อกช่วง IP ทั้งหมดที่กำหนดโดย WhoIs นั่นจะป้องกันไม่ให้ผู้ชายคนนั้นร้องขอ IP ใหม่จาก ISP ของเขาและเข้าไปด้วย IP ใหม่ อาจจะสักสองสามนาที

จากนั้นทำตามที่ Mark-Storey Smith พูดไว้ข้างต้น

จากนั้นเพิ่มไฟร์วอลล์หรือย้าย db จาก DMZ หากคุณมีไฟร์วอลล์อยู่แล้วและ db ไม่ได้อยู่ใน DMZ คุณต้องตรวจสอบทางนิติวิทยาศาสตร์ทันทีเพื่อดูว่ามีการแทรกแซงเซิร์ฟเวอร์ระหว่างคุณและไฟร์วอลล์หรือไม่ (อาจเป็นไปได้) เปลี่ยนรหัสผ่านผู้ดูแลระบบทั้งหมดเป็นรหัสผ่านที่ซับซ้อนมาก - sa, ผู้ดูแลระบบ Windows, ผู้ดูแลโดเมน, ผู้ดูแลระบบในท้องถิ่น, พวกเขาทั้งหมด จากนั้นตรวจสอบเซิร์ฟเวอร์ทุกแห่งในเครือข่ายของคุณและลบบัญชีผู้ดูแลระบบที่คุณไม่รู้จักหรือเคยเป็นพนักงานเก่าหรือที่ปรึกษาที่ลาออกจาก บริษัท จากนั้นไวรัสและมัลแวร์จะสแกนทุกอย่างในเซิร์ฟเวอร์ทุกเครื่อง

จากนั้นทำการผ่านครั้งที่สองและตรวจสอบทั้งหมดข้างต้นอีกครั้งหนึ่ง

โชคดี.


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

8

บล็อกการเชื่อมต่อทั้งหมดไปยังฐานข้อมูลของคุณซึ่งไม่ได้มาจากเว็บเซิร์ฟเวอร์ของคุณ จริงๆ.


SQL Server ในปัจจุบันไม่สามารถทำได้ คุณจะต้องพึ่งพาไฟร์วอลล์หรือ Windows เพื่อทำสิ่งนี้ ดูบล็อก
Dharmendar Kumar 'DK'

8

นอกจากการกำหนดค่าไฟร์วอลล์เพื่อบล็อกทราฟฟิกที่ไม่ได้รับอนุญาตอย่าลืมเพิ่มบัญชี windows ของคุณในบทบาทดูแลระบบและปิดการใช้งานบัญชี SA! ปิดใช้งานการพิสูจน์ตัวตน SQL เช่นกัน


8

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

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

อย่างน้อยที่สุดคุณต้องอ่านความปลอดภัยของเครือข่ายและความปลอดภัยของฐานข้อมูล (ฉันยังมีหนังสือเกี่ยวกับเรื่อง) และทำให้ระบบของคุณปลอดภัย

ขั้นตอนที่คุณต้องทำตามในขั้นตอนนี้คือ ...

  1. ตั้งค่าไฟร์วอลล์ของคุณเพื่อบล็อกการเชื่อมต่อขาเข้าทั้งหมดยกเว้นที่คุณต้องการ
  2. ทำการสแกนไวรัสที่ดีมากของ SQL Server หากคุณยังไม่มีเครื่องสแกนไวรัสติดตั้งอยู่บน SQL Server ให้ถือว่าติดไวรัสและฟอร์แมตเครื่อง
  3. ตั้งค่าความปลอดภัยฐานข้อมูลตามแนวทางปฏิบัติที่ดีที่สุด: รหัสผ่านที่รัดกุมสิทธิ์น้อยที่สุดเป็นต้น
  4. ทำการสแกนไวรัสของเซิร์ฟเวอร์อื่นทุกเครื่องที่ บริษัท หากไม่มีเครื่องสแกนไวรัสติดตั้งอยู่จะถือว่าติดไวรัสและฟอร์แมต

ปัญหาคือว่าฉันไม่รู้จริงๆว่าต้องใช้การเชื่อมต่อขาเข้าใดและงบประมาณของฉันไม่อนุญาตให้ฉันจ้างมืออาชีพ --- ฉันใช้เซิร์ฟเวอร์ของฉันเป็น mailserver ด้วยซึ่งทำให้ฉันต้องการพอร์ต pop3, imap และ smtp ฉันใช้ FTP เพื่ออัปโหลดหน้าเว็บของฉัน MSSQL เป็นเซิร์ฟเวอร์ SQL และ PLESK ได้รับการติดตั้ง (รวมถึง HORDE webmail) --- นั่นคือการตั้งค่าของฉัน - ฉันได้เปลี่ยนชื่อและปิดใช้งาน SQLs SA ACC และเปลี่ยนชื่อผู้ดูแลระบบ Windows
Behrens

การตั้งค่าไฟร์วอลล์ของฉันคือ: oltm.dk/x/settings.jpg - กฎขาเข้าของฉันคือ: oltm.dk/x/inbound.txt - กฎขาออกของฉันคือ: oltm.dk/x/outbound.txt - บางทีคุณอาจ ช่วยฉันตรวจสอบการตั้งค่าและลบกฎที่ไม่ต้องการหรือไม่ --- กฎที่ระบุไว้เป็นเพียงกฎที่เปิดใช้งาน ปิดการใช้งานทั้งหมดจะไม่แสดง (พวกเขา arent ใช้งานอยู่แล้ว?)
Behrens

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