จะตรวจสอบได้อย่างไรว่าเซิร์ฟเวอร์ Linux นั้นปลอดภัยจากรูทคิท / แบ็คดอร์ / บอตเน็ตหรือไม่?


9

ในกรณีที่เซิร์ฟเวอร์ Linux ถูกเปิดเผยต่ออินเทอร์เน็ตที่มีนโยบายความปลอดภัยต่ำมาก (โฟลเดอร์ Samba นิรนาม, เซิร์ฟเวอร์ฐานข้อมูล Firebird ด้วยรหัสผ่านผู้ดูแลระบบเริ่มต้น, ไม่มีไฟร์วอลล์ ฯลฯ ) เป็นเวลาหนึ่งสัปดาห์จากนั้นฉันจะแน่ใจได้อย่างไรว่าระบบนั้นเป็น ไม่ประนีประนอมโดยไม่มีการฟอร์แมตแบบเต็ม & ติดตั้งใหม่เข้าถึงแบบระยะไกลผ่าน SSH เท่านั้นหรือไม่

คำตอบ:


7

โดยปกติฉันจะแนะนำการตรวจสอบในพื้นที่โดยใช้เครื่องมือเช่นchkrootkitแต่หากวิธีเดียวที่จะเรียกใช้การตรวจสอบคือการทำเช่นนั้นจากระยะไกลฉันแนะนำให้คุณลองใช้Rootkit Hunterแทน

Rookit Hunter ตรวจสอบรูทคิทและกิจกรรมอื่น ๆ โดยการรันการทดสอบเช่นต่อไปนี้ (ดูข้อมูลโครงการสำหรับรายละเอียดเพิ่มเติม):

  • MD5 แฮชเปรียบเทียบ
  • ค้นหาไฟล์เริ่มต้นที่รูทคิทใช้
  • สิทธิ์ของไฟล์ผิดสำหรับไบนารี
  • ค้นหาสตริงที่น่าสงสัยในโมดูล LKM และ KLD
  • ค้นหาไฟล์ที่ซ่อนอยู่

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



2

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

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

นี่คือแหล่งข้อมูลบางอย่างที่ฉันจะเริ่มอ่านหากคุณยังไม่มี

[ข้อความลิงค์] [1] ข้อความ ลิงก์ข้อความ ลิงก์ข้อความ

[1]: http://www.sans.org/reading_room/whitepapers/linux/linux-rootkits-beginners-prevention-removal_901 "Linux Rootkits Beginners"


2

ไม่ใช่คำตอบที่คุณต้องการ แต่ถ้ามีความเป็นไปได้ที่ระบบจะถูกรูทมันอาจเป็นเรื่องยากมากที่จะแน่ใจว่าระบบสะอาด 100% รูทคิทได้รับการออกแบบให้ตรวจจับได้ยาก หากคุณเรียกใช้ตัวตรวจสอบรูทต่างๆและตรวจสอบว่าสะอาดระบบของคุณก็จะ "สะอาด"

หากการรักษาความปลอดภัยเป็นเรื่องที่น่ากังวลฉันจะพิจารณาการสร้างใหม่ดังกล่าวข้างต้นผู้โพสต์เพียงกล่าวหรือเรียกคืนจากการสำรองข้อมูลที่ดี


1

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

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


1

RKhunter, Tripwire ฯลฯ นั้นยอดเยี่ยม แต่มีประโยชน์จริงๆถ้าติดตั้งไว้ก่อนเหตุการณ์ - นี่เป็นเพราะพวกมันเหมาะสำหรับการตรวจสอบว่ามีการเปลี่ยนแปลงไฟล์คีย์หรือไม่ หากคุณติดตั้ง RKHunter ตอนนี้และเรียกใช้มันจะตรวจจับการรวมรูทคิทจำนวนมาก แต่มันจะไม่ตรวจพบแบ็คแบ็คที่ผู้โจมตีเปิดในระบบปฏิบัติการหรือแอพพลิเคชั่นที่คุณใช้

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

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

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

คุณจะไม่มีทางแน่ใจได้เลยว่าจะไม่มีใครแตกอย่างฉลาดกว่าคุณ


0

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

คอร์ไบนารีควรมี MD5 ที่เหมือนกันกับสิ่งที่ระบุในฐานข้อมูล RPM หรือ DPKG ดังนั้นหากพวกมันต่างกันคุณก็รู้ว่ามีบางอย่างแปลก ๆ เกิดขึ้น


-1

วิธีที่มีประสิทธิภาพมากที่สุดในการตรวจสอบว่าระบบการทำงานของคุณถูกบุกรุกคือการใช้สองดู จะตรวจสอบเคอร์เนลและซอฟต์แวร์ที่กำลังทำงานอยู่ในหน่วยความจำเพื่อให้แน่ใจว่าสอดคล้องกับสิ่งที่ผู้จัดจำหน่ายจัดส่ง นี่เป็นวิธีที่ดีกว่า rkhunter, chkrootkit และอื่น ๆ ที่ค้นหาสิ่งประดิษฐ์ของการติดเชื้อที่รู้จักเป็นพิเศษ Second Look ไม่ได้ตั้งสมมติฐานเกี่ยวกับความถูกต้องของระบบปฏิบัติการดังนั้นคุณไม่จำเป็นต้องใช้หรือติดตั้งก่อนเกิดเหตุการณ์

(ข้อจำกัดความรับผิดชอบ: ฉันเป็นผู้พัฒนาหลักของ Second Look)

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