วิธีง่ายๆ ในการปกป้อง Mikrotik ของคุณจากการถูกโจมตี

ฉันต้องการแบ่งปันกับชุมชนเกี่ยวกับวิธีการใช้ Mikrotik เพื่อปกป้องเครือข่ายของคุณและบริการที่ "แอบดู" จากด้านหลังจากการโจมตีจากภายนอก กล่าวคือ กฎสามข้อในการจัดระเบียบ honeypot บน Mikrotik

ลองจินตนาการว่าเรามีสำนักงานขนาดเล็กซึ่งมี IP ภายนอกซึ่งมีเซิร์ฟเวอร์ RDP เพื่อให้พนักงานทำงานจากระยะไกลได้ แน่นอนว่ากฎข้อแรกคือเปลี่ยนพอร์ต 3389 บนอินเทอร์เฟซภายนอกเป็นพอร์ตอื่น แต่การดำเนินการนี้จะใช้เวลาไม่นาน หลังจากผ่านไป XNUMX-XNUMX วัน บันทึกการตรวจสอบเทอร์มินัลเซิร์ฟเวอร์จะเริ่มแสดงการอนุญาตที่ล้มเหลวหลายครั้งต่อวินาทีจากไคลเอ็นต์ที่ไม่รู้จัก

อีกสถานการณ์หนึ่ง คุณมีเครื่องหมายดอกจันซ่อนอยู่หลัง Mikrotik แน่นอนว่าไม่ใช่บนพอร์ต 5060 udp และหลังจากนั้นสองสามวัน การค้นหารหัสผ่านก็เริ่มขึ้น... ใช่ ใช่ ฉันรู้ failed2ban คือทุกสิ่งทุกอย่างของเรา แต่เรายังคงต้องทำ ทำงานกับมัน ... ตัวอย่างเช่นฉันเพิ่งติดตั้งบน Ubuntu 18.04 และรู้สึกประหลาดใจที่พบว่านอกกรอบ failed2ban ไม่มีการตั้งค่าปัจจุบันสำหรับเครื่องหมายดอกจันจากกล่องเดียวกันของการแจกจ่าย Ubuntu เดียวกัน ... และการตั้งค่าด่วนของ googling สำหรับ "สูตรอาหาร" สำเร็จรูปใช้งานไม่ได้อีกต่อไป จำนวนการเผยแพร่เพิ่มขึ้นเรื่อยๆ ในช่วงหลายปีที่ผ่านมา และบทความที่มี "สูตรอาหาร" สำหรับเวอร์ชันเก่าก็ใช้งานไม่ได้อีกต่อไป และรายการใหม่แทบจะไม่ปรากฏเลย... แต่ฉันพูดนอกเรื่อง...

สรุปแล้ว honeypot คืออะไร - ในกรณีของเรามันคือ honeypot พอร์ตยอดนิยมใด ๆ บน IP ภายนอก คำขอใด ๆ ไปยังพอร์ตนี้จากไคลเอนต์ภายนอกจะส่งที่อยู่ src ไปยังบัญชีดำ ทั้งหมด.

/ip firewall filter
add action=add-src-to-address-list address-list="Honeypot Hacker" 
    address-list-timeout=30d0h0m chain=input comment="block honeypot ssh rdp winbox" 
    connection-state=new dst-port=22,3389,8291 in-interface=
    ether4-wan protocol=tcp
add action=add-src-to-address-list address-list="Honeypot Hacker" 
    address-list-timeout=30d0h0m chain=input comment=
    "block honeypot asterisk" connection-state=new dst-port=5060 
    in-interface=ether4-wan protocol=udp 
/ip firewall raw
add action=drop chain=prerouting in-interface=ether4-wan src-address-list=
    "Honeypot Hacker"

กฎข้อแรกบนพอร์ต TCP ยอดนิยม 22, 3389, 8291 ของอินเทอร์เฟซภายนอก ether4-wan จะส่ง IP "แขก" ไปยังรายการ "Honeypot Hacker" (พอร์ตสำหรับ ssh, rdp และ winbox ถูกปิดใช้งานล่วงหน้าหรือเปลี่ยนเป็นพอร์ตอื่น) อันที่สองทำเช่นเดียวกันกับ UDP 5060 ยอดนิยม

กฎข้อที่สามในขั้นตอนก่อนการกำหนดเส้นทางจะดรอปแพ็กเก็ตจาก "แขก" ซึ่งมี srs-address รวมอยู่ใน "Honeypot Hacker"

หลังจากทำงานกับ Mikrotik ที่บ้านของฉันได้สองสัปดาห์รายการ "Honeypot Hacker" ได้รวมที่อยู่ IP ประมาณหนึ่งและห้าพันที่อยู่ของผู้ที่ต้องการ "ถือโดยเต้านม" ทรัพยากรเครือข่ายของฉัน (ที่บ้านมีโทรศัพท์อีเมลของฉันเอง nextcloud, rdp) การโจมตีแบบ Brute-force หยุดลง ความสุขก็มาเยือน

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

เห็นได้ชัดว่าหมายเลขพอร์ตถูกกำหนดโดยสแกนเนอร์นานก่อนที่จะเปิด honeypot และในระหว่างการกักกัน ไม่ใช่เรื่องง่ายที่จะกำหนดค่าผู้ใช้ใหม่มากกว่า 100 ราย โดย 20% มีอายุมากกว่า 65 ปี ในกรณีที่ไม่สามารถเปลี่ยนพอร์ตได้ก็มีสูตรการทำงานเล็กน้อย ฉันเคยเห็นสิ่งที่คล้ายกันบนอินเทอร์เน็ต แต่มีการเพิ่มเติมและการปรับแต่งเพิ่มเติมที่เกี่ยวข้อง:

กฎสำหรับการกำหนดค่า Port Knocking

 /ip firewall filter
add action=add-src-to-address-list address-list=rdp_blacklist 
    address-list-timeout=15m chain=forward comment=rdp_to_blacklist 
    connection-state=new dst-port=3389 protocol=tcp src-address-list=
    rdp_stage12
add action=add-src-to-address-list address-list=rdp_stage12 
    address-list-timeout=4m chain=forward connection-state=new dst-port=3389 
    protocol=tcp src-address-list=rdp_stage11
add action=add-src-to-address-list address-list=rdp_stage11 
    address-list-timeout=4m chain=forward connection-state=new dst-port=3389 
    protocol=tcp src-address-list=rdp_stage10
add action=add-src-to-address-list address-list=rdp_stage10 
    address-list-timeout=4m chain=forward connection-state=new dst-port=3389 
    protocol=tcp src-address-list=rdp_stage9
add action=add-src-to-address-list address-list=rdp_stage9 
    address-list-timeout=4m chain=forward connection-state=new dst-port=3389 
    protocol=tcp src-address-list=rdp_stage8
add action=add-src-to-address-list address-list=rdp_stage8 
    address-list-timeout=4m chain=forward connection-state=new dst-port=3389 
    protocol=tcp src-address-list=rdp_stage4
add action=add-src-to-address-list address-list=rdp_stage7 
    address-list-timeout=4m chain=forward connection-state=new dst-port=3389 
    protocol=tcp src-address-list=rdp_stage6
add action=add-src-to-address-list address-list=rdp_stage6 
    address-list-timeout=4m chain=forward connection-state=new dst-port=3389 
    protocol=tcp src-address-list=rdp_stage5
add action=add-src-to-address-list address-list=rdp_stage5 
    address-list-timeout=4m chain=forward connection-state=new dst-port=
    3389 protocol=tcp src-address-list=rdp_stage4
add action=add-src-to-address-list address-list=rdp_stage4 
    address-list-timeout=4m chain=forward connection-state=new dst-port=
    3389 protocol=tcp src-address-list=rdp_stage3
add action=add-src-to-address-list address-list=rdp_stage3 
    address-list-timeout=4m chain=forward connection-state=new dst-port=3389 
    protocol=tcp src-address-list=rdp_stage2
add action=add-src-to-address-list address-list=rdp_stage2 
    address-list-timeout=4m chain=forward connection-state=new dst-port=3389 
    protocol=tcp src-address-list=rdp_stage1
add action=add-src-to-address-list address-list=rdp_stage1 
    address-list-timeout=4m chain=forward connection-state=new dst-port=3389 
    protocol=tcp 
/ip firewall raw
add action=drop chain=prerouting in-interface=ether4-wan src-address-list=
rdp_blacklist

ภายใน 4 นาที ไคลเอ็นต์ระยะไกลจะได้รับอนุญาตให้สร้าง "คำขอ" ใหม่เพียง 12 รายการไปยังเซิร์ฟเวอร์ RDP ความพยายามเข้าสู่ระบบหนึ่งครั้งคือ "คำขอ" 1 ถึง 4 ครั้ง เมื่อ "ขอ" ครั้งที่ 12 - ปิดกั้นเป็นเวลา 15 นาที ในกรณีของฉัน ผู้โจมตีไม่ได้หยุดแฮ็กเซิร์ฟเวอร์ พวกเขาปรับตัวจับเวลาและตอนนี้ทำช้ามาก ความเร็วในการเลือกดังกล่าวจะลดประสิทธิภาพของการโจมตีลงเหลือศูนย์ พนักงานของบริษัทแทบไม่ได้รับความไม่สะดวกในการทำงานจากมาตรการที่ดำเนินการ

ทริคเล็กๆ อีกเพียบ
กฎนี้จะเปิดตามกำหนดเวลาในเวลา 5 น. และปิดในเวลา XNUMX น. ซึ่งเป็นช่วงที่คนจริงๆ หลับไปแล้ว และผู้เลือกอัตโนมัติยังคงตื่นอยู่

/ip firewall filter 
add action=add-src-to-address-list address-list=rdp_blacklist 
    address-list-timeout=1w0d0h0m chain=forward comment=
    "night_rdp_blacklist" connection-state=new disabled=
    yes dst-port=3389 protocol=tcp src-address-list=rdp_stage8

ในการเชื่อมต่อครั้งที่ 8 แล้ว IP ของผู้โจมตีจะถูกขึ้นบัญชีดำเป็นเวลาหนึ่งสัปดาห์ ความงาม!

นอกเหนือจากที่กล่าวมาข้างต้น ฉันจะเพิ่มลิงก์ไปยังบทความ Wiki พร้อมการตั้งค่าที่ใช้งานได้เพื่อปกป้อง Mikrotik จากเครื่องสแกนเครือข่าย wiki.mikrotik.com/wiki/Drop_port_scanners

บนอุปกรณ์ของฉัน การตั้งค่านี้ทำงานร่วมกับกฎ honeypot ที่อธิบายไว้ข้างต้น ซึ่งช่วยเสริมกฎเหล่านี้ได้เป็นอย่างดี

UPD: ตามที่แนะนำในความคิดเห็น กฎการวางแพ็กเก็ตถูกย้ายไปยัง RAW เพื่อลดภาระบนเราเตอร์

ที่มา: will.com

เพิ่มความคิดเห็น