มีคนพยายามแฮ็คเข้าสู่เซิร์ฟเวอร์ของฉันหรือไม่ ฉันควรทำอย่างไร


12

ไม่กี่สัปดาห์ที่ผ่านมาฉันโพสต์คำถามที่นี่เกี่ยวกับsshปัญหาบางอย่างที่ฉันมีกับกล่อง Ubuntu 12.04 กรอไปข้างหน้าถึงวันนี้และฉันพยายามอนุญาตให้คนอื่นเข้าถึงเครื่อง แต่พวกเขายังคงได้รับข้อผิดพลาดของรหัสผ่าน ฉันเช็คเอาต์var/logs/auth.logสำหรับข้อมูลเพิ่มเติมและพบสิ่งนี้:

May 11 19:45:33 myserver sshd[9264]: Did not receive identification string from 211.110.xxx.x
May 11 19:45:38 myserver sshd[9267]: Did not receive identification string from 211.110.xxx.x
May 11 19:45:44 myserver sshd[9270]: Did not receive identification string from 211.110.xxx.x
May 11 19:45:49 myserver sshd[9274]: Did not receive identification string from 211.110.xxx.x

ฉันมีเกือบ 10,000 บรรทัดที่ทุกคนพูดว่าเหมือนกันมากกว่าหรือน้อยกว่า (มีไฟล์ auth.log.gz 4 ไฟล์ซึ่งฉันคิดว่าเหมือนกันมากกว่านี้?) บางครั้งมีการสุ่มชื่อผู้ใช้ที่แนบมากับคำขอinput_userauth_request: invalid user bash [preauth]

ฉันไม่รู้เกี่ยวกับเซิร์ฟเวอร์มากนัก แต่ดูเหมือนว่ามีคนพยายามเข้าถึงของฉัน

ค้นหาวิธีปิดกั้นที่อยู่ IP ในอูบุนตูและลงเอยด้วยสิ่งนี้: iptables -A INPUT -s 211.110.xxx.x -j DROPแต่หลังจากรันคำสั่งนั้นและตรวจสอบบันทึกแล้วฉันยังคงได้รับคำขอจาก IP ตัวนี้ทุก 5 วินาที

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


Denyhosts ดีมาก แต่ทราบว่าเป็นโครงการที่ตายแล้ว :( คุณควรมองในการใช้ iptables askubuntu.com/questions/433924/...
บบส.

คำตอบ:


14

จากสิ่งที่คุณอธิบายดูเหมือนว่าเป็นการโจมตีอัตโนมัติบนเซิร์ฟเวอร์ของคุณ การโจมตีส่วนใหญ่นั้นยกเว้นว่าผู้โจมตีรู้จักคุณเป็นการส่วนตัวและถือความเสียใจ ...

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

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


3
+1 คุณเปิดพอร์ตไปยังอินเทอร์เน็ตภายนอก: ผู้คนพยายามเข้าถึง แต่ล้มเหลว นั่นคือธุรกิจมากหรือน้อยตามปกติ หากคุณมีการเข้าถึงเราเตอร์อัปสตรีมคุณอาจตั้งค่าให้ยกเลิกการเชื่อมต่อจาก 211.110.xxx.x ดังนั้นไฟล์บันทึกของคุณจะไม่ปนเปื้อนอย่างรุนแรง
Jos

ฉันเพิ่ม denyhosts และตอนนี้บันทึกแสดงrefused connect from....แต่ฉันอยากรู้ว่าการขอเรื่องไร้สาระเหล่านี้ทุก 5 วินาทีอาจเป็นปัญหาสำหรับประสิทธิภาพของเซิร์ฟเวอร์ในภายหลังหรือไม่ ฉันจะรู้ได้อย่างไรว่าฉันสามารถเข้าถึงเราเตอร์ upstream ได้? ฉันเพิ่งเข้าใช้รูท
user2936314

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

2
การรับคำขอจาก IP เดียวทุก ๆ 5 วินาทีจะไม่ส่งผลกระทบต่อประสิทธิภาพของคุณด้วยการวัดที่สำคัญ
Drac Noc

3
สำหรับเซิร์ฟเวอร์ที่เปิดรับเน็ต (ดีสำหรับเซิร์ฟเวอร์ ssh ใด ๆ จริงๆ) คุณควรตั้งค่าPermitRootLogin noและPasswordAuthentication noใน / etc / ssh / sshd_config
unhammer

3

คุณไม่ต้องการเห็นความพยายามในการเข้าสู่ระบบล้มเหลวในบันทึกของคุณดังนั้นคุณควรกรอง IP นี้ในเครือข่าย

หากคุณมีเราเตอร์หรือไฟร์วอลล์ฮาร์ดแวร์ (ไม่ใช่ที่อยู่บนเซิร์ฟเวอร์) ให้ใช้เพื่อบล็อก IP นี้ คุณสามารถขอให้ผู้ให้บริการอินเทอร์เน็ตของคุณบล็อกได้

หากเซิร์ฟเวอร์เป็น VPS ให้ผู้ให้บริการ VPS ของคุณบล็อก IP นี้ ในกรณีส่วนใหญ่พวกเขาจะไม่ปฏิเสธคำขอความช่วยเหลือของคุณทำให้ไม่มีค่าใช้จ่าย

การโจมตีจาก IP เดียวสามารถบรรเทาได้ง่ายเมื่อเทียบกับการโจมตีที่มาจาก IP ที่แตกต่างกัน เพื่อป้องกันการโจมตีแบบกระจายคุณต้องใช้บริการพิเศษจากผู้ให้บริการเครือข่ายที่คุณต้องจ่าย ในระดับเซิร์ฟเวอร์คุณสามารถต่อสู้กับ Denyhosts หรือ Fail2ban Fail2ban ปกป้องไม่เพียง แต่ ssh แต่บริการอื่น ๆ ใช้หน่วยความจำเพิ่มอีกเล็กน้อย Fail2ban ใช้ iptables เพื่อบล็อก IP และ DenyHosts ใช้ไฟล์ hosts.deny ทั้งคู่ใช้บันทึกเพื่อค้นหาความพยายามที่เป็นอันตราย คุณยังสามารถกำหนดค่า iptables เพื่อจำกัดความพยายามในการกำหนดอัตรา ssh ซึ่งไม่ต้องใช้ไฟล์บันทึก


มีวิธีหยุดการบันทึกจาก IP นี้จากในเครื่องของฉันหรือไม่
user2936314

ไม่ใช่ความคิดที่ดีในการกรองบันทึกของคุณ คุณไม่มีทางรู้ว่าพวกเขาอาจโชคดีและคุณต้องการประวัติที่เป็นลายลักษณ์อักษรอย่างเต็มรูปแบบว่าเกิดอะไรขึ้น
Drac Noc

@ user2936314 ไม่ใช่ความคิดที่ดีจริงๆคุณควรเปลี่ยนพอร์ต ssh การเปลี่ยนพอร์ตไม่ใช่โซลูชันที่สมบูรณ์แบบ แต่คุณจะกำจัดบ็อตจำนวนมาก บางอันชาญฉลาดกว่าและสแกนหาพอร์ตที่เปิดอยู่ ฉันมีปัญหาเดียวกันและ fail2ban บล็อก IP 20 รายการต่อวัน หลังจากเปลี่ยนพอร์ต ssh ฉันสังเกตเห็นการลดลงของความพยายาม ssh ที่เป็นอันตราย
vladiz

พวกคุณยอดเยี่ยมมาก อ่านแนะนำสำหรับผู้ดูแลระบบเซิร์ฟเวอร์ ubuntu แนะนำหรือไม่ ฉันกำลังอ่านส่วนต่อ
ประสาน

1
@ user2936314 ตรวจสอบเอกสารอย่างเป็นทางการที่แนะนำเซิร์ฟเวอร์สำหรับ Ubuntu 12.04 หรือแล้วแต่รุ่นที่คุณต้องการ
vladiz

0

ทุกคำตอบที่ดีข้างต้นอย่างไรก็ตาม ...

คุณเขียนว่า"ฉันพยายามอนุญาตให้บุคคลอื่นเข้าถึงเครื่อง แต่พวกเขายังคงได้รับข้อผิดพลาดของรหัสผ่าน"

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

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


ฉันคิดเกี่ยวกับกรณีนี้เมื่อแรกพบบันทึก ฉันตรวจสอบกับบุคคลที่ฉันรู้ว่ากำลังพยายามเข้าถึงเครื่องและ IP ของเขาไม่ตรงกับที่อยู่ในบันทึก ฉันรู้ว่าเขายังไม่ได้พยายามเข้าไปในทุก ๆ 5 วินาทีเป็นเวลาหลายวัน จุดที่ดีเกี่ยวกับ ips แบบไดนามิกฉันค่อนข้างกังวลเกี่ยวกับการใช้denyhostsที่ฉันจะจบลงด้วยการล็อคตัวเองถ้า / เมื่อ IP ของฉันเปลี่ยน ดูเหมือนว่าวันหยุดสุดสัปดาห์ของฉันจะถูกใช้ไปกับสิ่งนี้ [ askubuntu.com/questions/2271/how-to-harden-an-ssh-server]และ docs
user2936314

0

ฉันคิดว่าคุณจะพบว่าความพยายามแฮ็ค 99% มาจากประเทศจีน นี่คือสิ่งที่ฉันได้พบ มันไม่มีประโยชน์ที่จะรายงาน IP จีนสำหรับการแฮ็กเนื่องจากอาจถูกลงโทษ ฉันไม่ได้ปิดกั้นเฉพาะ IP เท่านั้นฉันปิดกั้นช่วงที่มี IP ใช้ตัวเลือก "subnet" บนเราเตอร์ของคุณหรือกับ IPTables บนกล่อง Linux ของคุณใช้ subnet หรือ "/ bits" (เช่น: / 24) หน้านี้จะให้รายการของบล็อก IP โดยประเทศ (มีไฟล์ tar.gz กับทั้งหมด): http://www.ipdeny.com/ipblocks/data/countries หน้าเว็บ WHOIS https://whois-search.com/ให้การเริ่มต้นที่ดีแก่คุณในการค้นหาประเทศ


-1

1 ยกเว้นว่าคุณไม่จำเป็นต้องเปิดพอร์ตมาตรฐานไปยังเซิร์ฟเวอร์ของคุณในเน็ต ตั้งค่าเราเตอร์เพื่อเปิดพอร์ตสุ่มเช่น 53846 และส่งต่อไปที่พอร์ตเครื่อง 22

แฮกเกอร์โอกาสสามารถสแกนที่อยู่ IP หลากหลายสำหรับพอร์ตที่รู้จักเช่น 22 และลองใช้ประโยชน์จาก

2nd ตีเขากลับ Nmap เขาและค้นหาสิ่งที่เขากำลังทำงานอยู่ จากนั้นพยายามเข้าถึงของเขา เช่นเดียวกับไฟกลับมา หากเขารู้ว่าคุณกำลังเข้าใกล้เขามิ้มอาจหยุด

คุณสามารถปิ๊งเขาอย่างบ้าคลั่งเหมือนถูกยิงเตือน

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

จากนั้นคุณสามารถใช้คำสั่งเขียนและถามเขาว่าทำไมเขายืนยันที่จะตอกย้ำความรุนแรงของคุณ


(1) ปิดบังเส้นทางการเข้าถึง แต่ไม่ปลอดภัย (2) ผิดกฎหมายในเขตอำนาจศาลส่วนใหญ่ (3) มีความเสี่ยงเนื่องจากการกำหนดค่าผิดพลาดเกิดขึ้นและช่องโหว่การเลื่อนระดับสิทธิ์อาจมีอยู่และอาจไม่มีจุดหมายเนื่องจากการโจมตีส่วนใหญ่จะทำงานโดยอัตโนมัติเพื่อให้ทำงานบนช่วงของที่อยู่ IP ตามที่คุณชี้ให้เห็น
David Foerster
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.