Cách phát hiện Rootkit trong Windows 10 (Hướng dẫn chuyên sâu)

Rootkit được tin tặc sử dụng để che giấu phần mềm độc hại dai dẳng, dường như không thể phát hiện trong thiết bị của bạn. Phần mềm này sẽ âm thầm đánh cắp dữ liệu hoặc tài nguyên, đôi khi trong nhiều năm. Chúng cũng có thể được sử dụng trong thời trang keylogger nơi các thao tác gõ phím và giao tiếp của bạn được khảo sát để cung cấp cho người xem thông tin về quyền riêng tư.  

Phương pháp hack cụ thể này có mức độ liên quan nhiều hơn trước năm 2006, trước khi Microsoft Vista yêu cầu các nhà cung cấp phải ký kỹ thuật số tất cả các trình điều khiển máy tính. Kernel Patch Protection ( KPP ) đã khiến các tác giả phần mềm độc hại thay đổi phương pháp tấn công của họ và chỉ gần đây nhất là vào năm 2018 với hoạt động gian lận quảng cáo Zacinlo(Zacinlo ad fraud operation) , rootkit mới trở lại tiêu điểm.

Các rootkit trước năm 2006 đều dựa trên hệ điều hành cụ thể. Tình huống Zacinlo , một rootkit từ họ phần mềm độc hại Detrahere(Detrahere malware) , đã cho chúng ta một thứ thậm chí còn nguy hiểm hơn ở dạng rootkit dựa trên phần sụn. Bất chấp(Regardless) điều đó, rootkit chỉ chiếm khoảng một phần trăm tổng số phần mềm độc hại đầu ra được nhìn thấy hàng năm. 

Mặc dù vậy, vì sự nguy hiểm mà chúng có thể gây ra, nên cần thận trọng khi hiểu cách phát hiện các rootkit có thể đã xâm nhập vào hệ thống của bạn hoạt động.

Phát hiện Rootkit trong Windows 10 ( In-Depth )

Zacinlo thực sự đã chơi được gần sáu năm trước khi bị phát hiện nhắm mục tiêu vào nền tảng Windows 10 . Thành phần rootkit có thể định cấu hình cao và tự bảo vệ khỏi các quy trình mà nó cho là nguy hiểm đối với chức năng của nó và có khả năng chặn và giải mã các giao tiếp SSL .

Nó sẽ mã hóa và lưu trữ tất cả dữ liệu cấu hình của nó trong Windows Registry và trong khi Windows đang tắt, nó sẽ tự ghi lại từ bộ nhớ vào đĩa bằng một tên khác và cập nhật khóa đăng ký của nó. Điều này đã giúp nó tránh bị phần mềm chống vi-rút tiêu chuẩn của bạn phát hiện.

Điều này cho thấy rằng một phần mềm chống vi-rút hoặc phần mềm chống phần mềm độc hại tiêu chuẩn là không đủ để phát hiện rootkit. Mặc dù vậy, có một số chương trình chống phần mềm độc hại cấp cao nhất sẽ cảnh báo bạn khi có nghi ngờ về một cuộc tấn công rootkit. 

5 thuộc tính chính của một phần mềm chống vi-rút tốt(The 5 Key Attributes Of a Good Antivirus Software)

Hầu hết các chương trình chống vi-rút nổi bật hiện nay sẽ thực hiện tất cả năm phương pháp đáng chú ý này để phát hiện rootkit.

  • Phân tích dựa trên chữ ký(Signature-based Analysis) - Phần mềm chống vi-rút sẽ so sánh các tệp đã ghi với chữ ký đã biết của rootkit. Phân tích cũng sẽ tìm kiếm các mẫu hành vi bắt chước các hoạt động vận hành nhất định của các rootkit đã biết, chẳng hạn như sử dụng cổng tích cực.
  • Phát hiện đánh chặn(Interception Detection) - Hệ điều hành Windows sử dụng các bảng con trỏ để chạy các lệnh được biết đến để nhắc rootkit hoạt động. Vì rootkit cố gắng thay thế hoặc sửa đổi bất kỳ thứ gì được coi là mối đe dọa, nên điều này sẽ khiến hệ thống của bạn không có sự hiện diện của chúng.
  • So sánh dữ liệu đa nguồn(Multi-Source Data Comparison) - Rootkit(Rootkits) , trong nỗ lực giữ ẩn, có thể thay đổi một số dữ liệu nhất định được trình bày trong bài kiểm tra tiêu chuẩn. Kết quả trả về của các lệnh gọi hệ thống cấp cao và cấp thấp có thể loại bỏ sự hiện diện của rootkit. Phần mềm cũng có thể so sánh bộ nhớ tiến trình được nạp vào RAM với nội dung của tệp trên đĩa cứng.
  • Kiểm tra tính toàn vẹn(Integrity Check) - Mọi thư viện hệ thống đều sở hữu chữ ký điện tử được tạo vào thời điểm hệ thống được coi là “sạch”. Phần mềm bảo mật tốt có thể kiểm tra các thư viện xem có bất kỳ thay đổi nào của mã được sử dụng để tạo chữ ký số hay không.
  • So sánh sổ đăng ký(Registry Comparisons) - Hầu hết các chương trình phần mềm chống vi-rút đều có những thứ này theo lịch trình đặt trước. Tệp sạch sẽ được so sánh với tệp khách, trong thời gian thực, để xác định xem máy khách có hoặc chứa tệp thực thi không được yêu cầu (.exe) hay không.

Thực hiện quét Rootkit(Performing Rootkit Scans)

Thực hiện quét rootkit là nỗ lực tốt nhất để phát hiện nhiễm trùng rootkit. Thông thường, hệ điều hành của bạn không thể được tin cậy để tự xác định rootkit và đưa ra một thách thức để xác định sự hiện diện của nó. Rootkit là những gián điệp bậc thầy, hầu như luôn che giấu dấu vết của chúng và có khả năng ẩn mình trong tầm nhìn.

Nếu bạn nghi ngờ một cuộc tấn công bằng vi-rút rootkit đã diễn ra trên máy của mình, một chiến lược tốt để phát hiện là tắt nguồn máy tính và thực hiện quét từ một hệ thống sạch đã biết. Một cách chắc chắn để xác định vị trí rootkit trong máy của bạn là thông qua phân tích kết xuất bộ nhớ. Rootkit không thể ẩn các hướng dẫn mà nó cung cấp cho hệ thống của bạn khi nó thực thi chúng trong bộ nhớ của máy.

Sử dụng WinDbg để phân tích phần mềm độc hại(Using WinDbg For Malware Analysis)

Microsoft Windows đã cung cấp công cụ gỡ lỗi đa chức năng của riêng mình có thể được sử dụng để thực hiện quét gỡ lỗi trên các ứng dụng, trình điều khiển hoặc chính hệ điều hành. Nó sẽ gỡ lỗi chế độ hạt nhân và mã chế độ người dùng, giúp phân tích các kết xuất sự cố và kiểm tra các thanh ghi CPU .

Một số hệ thống Windows sẽ đi kèm với WinDbg đã được tích hợp sẵn. Những hệ thống không có sẽ cần tải xuống từ Microsoft Store . WinDbg Preview là phiên bản WinDbg hiện đại hơn , cung cấp hình ảnh dễ nhìn hơn, cửa sổ nhanh hơn, tập lệnh hoàn chỉnh và các lệnh, tiện ích mở rộng và quy trình làm việc giống như bản gốc.

Ở mức tối thiểu, bạn có thể sử dụng WinDbg để phân tích bộ nhớ hoặc kết xuất sự cố, bao gồm cả Màn hình xanh (Blue Screen)chết chóc(Death) ( BSOD ). Từ kết quả, bạn có thể tìm kiếm các dấu hiệu của một cuộc tấn công bằng phần mềm độc hại. Nếu bạn cảm thấy rằng một trong các chương trình của mình có thể bị cản trở bởi sự hiện diện của phần mềm độc hại hoặc đang sử dụng nhiều bộ nhớ hơn mức yêu cầu, bạn có thể tạo tệp kết xuất và sử dụng WinDbg để giúp phân tích nó.

Một kết xuất bộ nhớ hoàn chỉnh có thể chiếm dung lượng ổ đĩa đáng kể, vì vậy tốt hơn nên thực hiện kết xuất Chế độ nhân hoặc kết xuất (Kernel-Mode)Bộ nhớ(Memory) nhỏ thay thế. Kết xuất Chế độ hạt nhân sẽ chứa tất cả thông tin sử dụng bộ nhớ của hạt nhân tại thời điểm xảy ra sự cố. Một kết xuất Bộ nhớ(Memory) Nhỏ sẽ chứa thông tin cơ bản về các hệ thống khác nhau như trình điều khiển, hạt nhân, và hơn thế nữa, nhưng so sánh thì rất nhỏ.

Kết xuất bộ nhớ(Memory) nhỏ hữu ích hơn trong việc phân tích lý do tại sao BSOD xảy ra. Để phát hiện rootkit, một phiên bản hoàn chỉnh hoặc phiên bản hạt nhân sẽ hữu ích hơn.

Tạo tệp kết xuất chế độ hạt nhân(Creating A Kernel-Mode Dump File)

Tệp kết xuất Kernel-Mode(Kernel-Mode) có thể được tạo theo ba cách:

  • Bật tệp kết xuất từ ​​Bảng điều khiển(Control Panel) để cho phép hệ thống tự gặp sự cố
  • Bật tệp kết xuất từ ​​Bảng điều khiển(Control Panel) để buộc hệ thống gặp sự cố
  • Sử dụng công cụ gỡ lỗi để tạo một công cụ cho bạn

Chúng tôi sẽ đi với lựa chọn số ba. 

Để thực hiện tệp kết xuất cần thiết, bạn chỉ cần nhập lệnh sau vào cửa sổ Lệnh của (Command)WinDbg .

Thay thế FileName bằng một tên thích hợp cho tệp kết xuất và dấu “?” với một f . Đảm bảo rằng “f” là chữ thường, nếu không bạn sẽ tạo một loại tệp kết xuất khác.

Khi trình gỡ lỗi đã chạy theo quy trình của nó (quá trình quét đầu tiên sẽ mất vài phút đáng kể), một tệp kết xuất sẽ được tạo và bạn sẽ có thể phân tích các phát hiện của mình.

Việc hiểu những gì bạn đang tìm kiếm, chẳng hạn như mức sử dụng bộ nhớ dễ bay hơi ( RAM ), để xác định sự hiện diện của rootkit cần có kinh nghiệm và thử nghiệm. Mặc dù không được khuyến khích cho người mới sử dụng, nhưng có thể kiểm tra các kỹ thuật phát hiện phần mềm độc hại trên một hệ thống đang hoạt động. Để làm được điều này, bạn sẽ cần phải có kiến ​​thức chuyên môn và kiến ​​thức chuyên sâu về hoạt động của WinDbg để không vô tình triển khai một loại virus đang sống vào hệ thống của bạn.

Có những cách an toàn hơn, thân thiện hơn với người mới bắt đầu để phát hiện ra kẻ thù giấu mặt của chúng ta.

Phương pháp quét bổ sung(Additional Scanning Methods)

Phát hiện thủ công và phân tích hành vi cũng là những phương pháp đáng tin cậy để phát hiện rootkit. Cố gắng phát hiện ra vị trí của rootkit có thể là một vấn đề lớn, vì vậy, thay vì nhắm mục tiêu chính rootkit, thay vào đó bạn có thể tìm kiếm các hành vi giống rootkit.

Bạn có thể tìm kiếm rootkit trong các gói phần mềm đã tải xuống bằng cách sử dụng các tùy chọn cài đặt Nâng cao(Advanced) hoặc Tùy chỉnh(Custom) trong khi cài đặt. Những gì bạn cần tìm là bất kỳ tệp lạ nào được liệt kê trong chi tiết. Những tệp này nên được loại bỏ hoặc bạn có thể thực hiện tìm kiếm nhanh trên mạng để tìm bất kỳ tham chiếu nào đến phần mềm độc hại.

Tường lửa và báo cáo ghi nhật ký của chúng là một cách cực kỳ hiệu quả để khám phá rootkit. Phần mềm sẽ thông báo cho bạn nếu mạng của bạn đang được giám sát chặt chẽ và nên cách ly mọi tải xuống không thể nhận dạng hoặc đáng ngờ trước khi cài đặt. 

Nếu bạn nghi ngờ rằng bộ rootkit có thể đã có trên máy của mình, bạn có thể đi sâu vào các báo cáo ghi nhật ký tường lửa và tìm kiếm bất kỳ hành vi nào khác thường.

Xem lại báo cáo ghi nhật ký tường lửa(Reviewing Firewall Logging Reports)

Bạn sẽ muốn xem lại các báo cáo ghi nhật ký tường lửa hiện tại của mình, tạo một ứng dụng mã nguồn mở như IP Traffic Spy với khả năng lọc nhật ký tường lửa, một công cụ rất hữu ích. Các báo cáo sẽ cho bạn thấy những gì cần thiết để xem nếu một cuộc tấn công xảy ra. 

Nếu bạn có một mạng lớn với tường lửa lọc đầu ra độc lập, IP Traffic Spy sẽ không cần thiết. Thay vào đó, bạn sẽ có thể xem các gói gửi đến và gửi đi tới tất cả các thiết bị và máy trạm trên mạng thông qua nhật ký tường lửa.

Cho dù bạn đang ở trong gia đình hay cơ sở kinh doanh nhỏ, bạn có thể sử dụng modem do ISP của bạn cung cấp hoặc nếu bạn sở hữu một bộ định tuyến hoặc tường lửa cá nhân để lấy nhật ký tường lửa. Bạn sẽ có thể xác định lưu lượng cho từng thiết bị được kết nối với cùng một mạng. 

Nó cũng có thể có lợi khi bật các tệp Nhật ký Tường lửa của Windows(Windows Firewall Log) . Theo mặc định, tệp nhật ký bị vô hiệu hóa có nghĩa là không có thông tin hoặc dữ liệu nào được ghi.

  • Để tạo tệp nhật ký, hãy mở chức năng Chạy(Run) bằng cách nhấn phím Windows + Windows key + R
  • Nhập wf.msc vào hộp và nhấn Enter .

  • Trong cửa sổ Tường lửa(Windows Firewall)Bảo mật Nâng cao(Advanced Security) của Windows đánh dấu “Tường lửa của Bộ bảo vệ Windows với Bảo mật Nâng cao(Advanced Security) trên Máy tính Cục bộ” ở menu bên trái. Ở ngoài cùng bên phải menu bên dưới “Tác vụ”, hãy nhấp vào Thuộc tính(Properties) .

  • Trong cửa sổ hộp thoại mới, điều hướng đến tab “Hồ sơ cá nhân” và chọn Tùy chỉnh(Customize) , bạn có thể tìm thấy tùy chọn này trong phần “Ghi nhật ký”.

  • Cửa sổ mới sẽ cho phép bạn chọn dung lượng tệp nhật ký để ghi, nơi bạn muốn tệp được gửi và liệu chỉ ghi nhật ký các gói bị bỏ, kết nối thành công hay cả hai.

  • Các gói bị rơi(Dropped) là những gói mà Tường lửa của Windows(Windows Firewall) đã thay mặt bạn chặn.
  • Theo mặc định, các mục nhật ký Tường lửa của Windows(Windows Firewall) sẽ chỉ lưu trữ 4MB dữ liệu cuối cùng và có thể được tìm thấy trong %SystemRoot%\System32\LogFiles\Firewall\Pfirewall.log
  • Hãy nhớ rằng việc tăng giới hạn kích thước đối với việc sử dụng dữ liệu cho nhật ký có thể ảnh hưởng đến hiệu suất máy tính của bạn.
  • Nhấn OK khi hoàn tất.
  • Tiếp theo, lặp lại các bước tương tự bạn vừa trải qua trong tab “Hồ sơ riêng tư”, chỉ lần này là trong tab “Hồ sơ công khai”.
    • Nhật ký bây giờ sẽ được tạo cho cả kết nối công cộng và riêng tư. Bạn có thể xem các tệp trong trình soạn thảo văn bản như Notepad hoặc nhập chúng vào bảng tính.
    • Giờ đây, bạn có thể xuất các tệp nhật ký vào một chương trình phân tích cú pháp cơ sở dữ liệu như IP Traffic Spy để lọc và sắp xếp lưu lượng để dễ dàng xác định.

Theo dõi bất kỳ điều gì bất thường trong các tệp nhật ký. Ngay cả lỗi hệ thống nhỏ nhất cũng có thể cho thấy bạn bị nhiễm rootkit. Một cái gì đó dọc theo dòng sử dụng CPU hoặc băng thông quá mức khi bạn không chạy bất cứ thứ gì quá đòi hỏi hoặc ở tất cả, có thể là một manh mối chính.



About the author

Tôi có kiến ​​thức nền tảng về kỹ thuật máy tính và công nghệ thông tin, điều này đã cho tôi một góc nhìn độc đáo về nền tảng Windows 10 và 11. Đặc biệt, tôi được trải nghiệm với cả "Trải nghiệm máy tính để bàn" của Windows 10 và trình duyệt Microsoft Edge. Kinh nghiệm của tôi với hai nền tảng này giúp tôi hiểu sâu sắc về cách chúng hoạt động và kiến ​​thức chuyên môn của tôi trong các lĩnh vực này cho phép tôi đưa ra lời khuyên đáng tin cậy về cách cải thiện chúng.



Related posts