การจัดการกับการโจมตีสะท้อน NTP ใน IPTables


16

เรากำลังจัดการกับการโจมตี NTP สะท้อน / การขยายที่เซิร์ฟเวอร์ colocated ของเรา คำถามนี้เฉพาะสำหรับการตอบสนองต่อการโจมตีของ NTP และไม่ได้มุ่งเป้าไปที่ DDoS โดยทั่วไป

นี่คือการจราจร:

กราฟการจราจรเครือข่ายเราเตอร์

มันกำลังปั่น CPU สักหน่อยบนเราเตอร์ของเรา:

กราฟการใช้งาน CPU เราเตอร์

น่าเสียดายที่มันไม่ใหญ่พอที่จะทำให้ผู้ให้บริการต้นน้ำของเราทำการปิดกั้นทราฟฟิกซึ่งหมายความว่ามันผ่านเราไปแล้ว

เราได้ใช้กฎต่อไปนี้เพื่อบล็อกทราฟฟิก NTP ซึ่งมาจากพอร์ต 123:

-p udp --sport 123 -j DROP

นี่เป็นกฎข้อแรกใน IPTables

ฉันค้นหาข้อมูลจำนวนมากและฉันไม่สามารถหาข้อมูลได้มากนักเกี่ยวกับวิธีใช้ IPTables เพื่อลดการโจมตีของ NTP และข้อมูลบางอย่างดูเหมือนจะไม่ถูกต้อง กฎ IPTables นี้ถูกต้องหรือไม่ มีอะไรอีกบ้างที่เราสามารถเพิ่มหรือทำได้เพื่อลดการสะท้อนกลับ / การขยาย NTP นอกเหนือจากการติดต่อผู้ให้บริการเครือข่ายต้นน้ำของเรา

นอกจากนี้: เนื่องจากผู้โจมตีเหล่านี้ต้องใช้เครือข่ายที่

  • อนุญาตการปลอมแปลงที่อยู่ IP ในแพ็คเก็ต
  • มี unpatched ประมาณปี 2010 รหัส NTP

มีสำนักหักบัญชีทั่วโลกที่เราสามารถรายงานที่อยู่ IP เหล่านี้เพื่อให้พวกเขาได้รับการแก้ไขเพื่อหยุดการอนุญาตให้แพ็คเก็ตที่ปลอมแปลงและแก้ไขเซิร์ฟเวอร์ NTP ของพวกเขา?


10
ใช่กฎ iptables ถูกต้อง แต่การรันตัวกรองแพ็กเก็ตที่จุดสิ้นสุดของไพพ์ของคุณที่เซิร์ฟเวอร์ของคุณจะไม่ป้องกันการไพพ์จากการเติมเพื่อดูพื้นหลังเพิ่มเติม: serverfault.com/questions/531941/i-am- ภายใต้
-ddos

คำตอบ:


20

โดยพื้นฐานแล้วคุณจะโชคดีถ้าการโจมตี DDoS สามารถเติมเต็มไพพ์ใด ๆ ก็ตามที่คุณมีต่ออินเทอร์เน็ต (ซึ่งเป็นจุดประสงค์ของการโจมตีด้วยการสะท้อนกลับ UDP - เพื่อเติมเต็มไพพ์) หากอัพสตรีมลิงค์ของคุณสามารถรับปริมาณการใช้ข้อมูล 1Gbps และมีปริมาณการรับส่งข้อมูลรวม (2Gbps) เพื่อลงลิงค์จากนั้นเราเตอร์ครึ่งหนึ่งจะถูกทิ้งโดยเราเตอร์หรือสวิตช์ที่วางแพ็กเก็ตลงในลิงก์ ผู้โจมตีไม่สนใจว่าครึ่งหนึ่งของปริมาณการโจมตีของพวกเขาลดลง แต่ลูกค้าของคุณทำ: การสูญเสียแพ็กเก็ต 50% ในการเชื่อมต่อ TCP กำลังทำสิ่งที่เลวร้ายน่ากลัวต่อประสิทธิภาพและความน่าเชื่อถือของการเชื่อมต่อเหล่านั้น

มีเพียงสองสามวิธีในการหยุดการโจมตี DDoS เชิงปริมาตร:

  1. มีท่อใหญ่พอที่ทราฟฟิกโจมตีจะไม่เติมเต็ม
  2. หยุดการโจมตีแพ็คเก็ตก่อนที่จะลงไปในท่อ
  3. เปลี่ยนเป็นที่อยู่ IP อื่นที่ไม่ได้อยู่ภายใต้การโจมตีของการสะท้อนกลับ NTP

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

  • บล็อกทราฟฟิกทั้งหมดบนพอร์ตโจมตี (ไม่ใช่สิ่งที่ ISP ส่วนใหญ่ยินดีที่จะทำบนเราเตอร์เข้าถึงลูกค้า colo ของพวกเขาสำหรับ$REASONS)

  • กรองที่อยู่ IP ต้นทางของการโจมตี (น่าเชื่อถือมากขึ้นด้วย S / RTBH แต่ไม่ใช่สิ่งที่ผู้ให้บริการทุกรายมีอยู่แล้ว)

  • กรณีที่เลวร้ายที่สุด Blackhole ที่อยู่ IP ปลายทาง

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


คุณมีความคิดเห็นใด ๆ หรือไม่ว่าเหตุใด ISP จึงไม่ต้องการบล็อกปริมาณการใช้
André Borie

4
มีเหตุผลมากมาย 1. ISP ได้รับเงินเพื่อส่งทราฟฟิกไม่ใช่บล็อก 2. อุปกรณ์เครือข่ายปลายทางที่สูงกว่าเท่านั้นที่สามารถทำการตรวจสอบอัตราสายบนปริมาณการรับส่งข้อมูลขนาดใหญ่ (100G +) ซึ่งมีราคาแพง 3. ไม่ใช่เรื่องง่ายที่จะไปจากคำขอของลูกค้าเพื่อกำหนดค่าสายในเราเตอร์หลัก
womble

5

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

กฎของคุณมีลักษณะที่เหมาะสมสำหรับการวางสิ่งที่มาจากเซิร์ฟเวอร์ ntp ในพอร์ตมาตรฐาน จำไว้ว่าถ้าคุณใช้ ntp จริง ๆ คุณอาจต้องเจาะรูในกฎไฟร์วอลล์ของคุณ

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

iptables -t raw -A PREROUTING -p udp --sport 123 -j DROP


1

ดูเหมือนว่าเราสามารถรายงาน IP สำหรับการละเมิด NTP (และหวังว่าจะเป็นการแก้ไข NTP)

http://openntpproject.org/

สำหรับเครือข่ายการรายงานที่อนุญาต IP ปลอมแปลงฉันไม่สามารถหาได้มาก :

การวัดของเราแสดงให้เห็นว่าการปลอมแปลงยังคงแพร่หลายในระบบประมาณ 25% ของระบบอิสระและเน็ตบล็อกที่เราสำรวจ ที่สำคัญจุดเข้าใช้งานเพียงจุดเดียวสำหรับทราฟฟิกที่ปลอมแปลงช่วยให้ผู้โจมตีสามารถส่งทราฟฟิกไปยังอินเทอร์เน็ตทั้งหมดได้ ผู้ให้บริการอินเทอร์เน็ตสามารถใช้การกรอง [RFC2827] เพื่อให้แน่ใจว่าการรับส่งข้อมูลขาออกของพวกเขาจะไม่ถูกหลอก

บางทีวิธีเดียวที่จะติดต่อกับ ISP โดยตรงคืออะไร?

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