Xác định hệ thống có bị thỏa hiệp hay không

Quản trị mạng – Trong bài này chúng tôi sẽ giới thiệu với các bạn một số phương pháp nhằm phát hiện ra liệu có ai đó đang can thiệp trái phép vào hệ thống của bạn hay không.

Một trong những lo ngại lớn nhất đối với các quản trị viên hệ thống là tình trạng bị thỏa hiệp. Đây là kiểu trạng thái bị xâm nhập trái phép bởi ai đó mà bạn chưa biết. Dù nó chỉ là một cảnh báo không rõ ràng của phần mềm chống virus hay một thông báo lạ của tường lửa thì cách tốt nhất cần thực hiện hành động kiểm tra hay tức khắc. Trong bài viết này chúng tôi sẽ giới thiệu cho các bạn một số vấn đề nhằm phát hiện ra liệu có ai đó đang can thiệp trái phép vào hệ thống của bạn hay không.

Liệt kê các kết nối mở

Một trong những cách đơn giản nhất và hiệu quả nhất mà bạn có thể thực hiện là liệt kê danh sách các kết nối mở đối với hệ thống của mình. Điều này hoàn toàn có thể được thực hiện bằng cách sử dụng công cụ dòng lệnh netstat, đây là công cụ được cung cấp sẵn trên cả hai hệ điều hành Linux và Windows. Bạn có thể sử dụng netstat trên Windows để liệt kê danh sách các cổng TCP và UDP đang lắng nghe bằng cách sử dụng lệnh “netstat –na”. Đầu ra sẽ hiển thị cho bạn bốn cột. Cột đầu tiên là giao thức đang sử dụng (TCP hoặc UDP), sau đó là địa chỉ và cổng cục bộ, cột thứ ba là địa chỉ và cổng bên ngoài, còn cột cuối cùng là trạng thái của kết nối. Ngoài ra bạn có thể sử dụng lệnh “netstat -nao” trên các phiên bản Windows đời mới để có thêm được cột thứ năm hiển thị process ID có liên quan với các kết nối được hiển thị. Ví dụ về việc liệt kê danh sách các kết nối như vậy được thể hiện cụ thể trong hình 1.


Hình 1: Đầu ra của lệnh netstat -nao

Khi quan sát đầu ra netstat rất có thể bạn sẽ bị ngập thông tin. Để tránh trường hợp đó, cần đóng các ứng dụng mạng trung tâm và các quá trình để giảm sự lộn xộn. Sau khi thực hiện bước đó, thứ đầu tiên bạn nên tìm kiếm ở đây là các địa chỉ bên ngoài chưa được nhận diện, đặc biệt trong trạng thái ESTABLISHED. Thêm vào đó cũng cần tìm kiếm các kết nối LISTENING trên hệ thống cục bộ trên các cổng cũ. Khi một kẻ tấn công thỏa hiệp hệ thống, hầu như chúng thường sẽ để lại một backdoor để sau đó có thể lắng nghe các kết nối dễ dàng hơn. Dựa vào dấu hiệu đó chúng ta có thể biết được các kết nối trong hệ thống của mình.

Có một thứ quan trọng cần lưu ý ở đây là netstat vẫn có thể mắc sai lầm. Cho ví dụ trong trường hợp như các rootkit ở chế độ kernel có thể bị kẻ tấn công sử dụng để thay đổi netstat và ẩn các backdoor mà chúng cài đặt.

Kiểm tra đường dây

Giả sử nếu có ai đó đang kiểm soát hệ thống của bạn thì chắc chắn một điều là họ phải vào mạng của bạn thông qua card mạng. Với lưu ý đó và một vấn đề như ở trên đã đưa là netstat không phải cũng cho kết quả chính xác 100%, chúng ta cần phải sử dụng thêm phương pháp khác nữa là sử dụng các ứng dụng kiểm tra gói dữ liệu. Qua các ứng dụng kiểu như vậy, chúng ta có thể kiểm tra các gói dữ liệu luân chuyển trong môi trường truyền tải (dây hoặc sóng vô tuyến).

Để “đánh hơi” các gói dữ liệu một cách nhanh chóng, bạn có thể sử dụng phần mềm Wireshark, đây là ứng dụng “đánh hơi” dữ liệu phổ biến nhất trên thế giới hiện nay. Ứng dụng rất dễ cài đặt và sử dụng, mã nguồn mở (miễn phí) và có giao diện đồ họa. Nếu thích sử dụng dòng lệnh bạn cũng có thể sử dụng thành phần công cụ dòng lệnh của Wireshark, Tshark, hoặc thậm chí phổ biến hơn Windump. Windump cũng là một ứng dụng miễn phí và làm việc khá tốt. Sử dụng cách thức nào bạn cũng đều có thẻ capture được các gói dữ liệu truyền tải qua giao diện mạng và tìm được các địa chỉ IP xuất hiện bên ngoài hệ thống.


Hình 2: Sử dụng Wireshark để kiểm tra các cuộc trò chuyện

Một vấn đề cần đề cập lại ở đây là khi kiểm tra các gói dữ liệu, nên tắt các dịch vụ đang sử dụng mạng để tránh sự nhầm lẫn trong kết quả. Bạn có thể quan sát các cuộc trò chuyện xuất hiện giữa hệ thống của bạn và thế giới bên ngoài bằng cách chọn tùy chọn Statistics từ menu sổ xuống và kích Conversations. Cửa sổ này cho phép bạn xem các host truyền thông tích cực được phân loại theo nhiều cách khác nhau, xem thể hiện trong hình 2.

Kiểm tra các file bản ghi

Các file bản ghi cũng là một trong những thứ rất cần thiết đối với các quản trị viên mạng, các chuyên gia phần mềm và phân tích xâm nhập. Cách nhanh nhất để truy cập vào khung nhìn sự kiện trên hệ thống Windows của bạn là đánh “eventvwr.msc” từ hộp thoại “Run” hoặc dòng lệnh. Từ đây bạn có thể kiểm tra tất cả các bản ghi để so sánh sự mâu thuẫn với các hoạt động hàng ngày của bạn. Một số sự kiện mà chúng ta tìm kiếm gồm có:

  • Số lượng lớn các cố gắng đăng nhập thất bại. Điều này chỉ thị rằng có ai đó cố gắng đoán hoặc thực hiện tấn công “brute force” vào mật khẩu tài khoản.
  • Dịch vụ bản ghi sự kiện đang bị stop. Điều này thường cho biết rằng kẻ tấn công đã tắt dịch vụ này ngay khi hệ thống bị thỏa hiệp để xóa dấu vết.
  • Xuất hiện các dịch vụ không bình thường. Bất cứ dịch vụ nào mà bạn không cảm thấy tin tưởng thì đều có thể bị cho là mã độc.

Sử dụng Process Monitor để kiểm tra Registry và các quá trình đang chạy

Hai lĩnh vực quan trọng nhất cần quan sát khi cố gắng xác định xem một hệ thống liệu có bị thỏa hiệp hai không là registry hệ thống và các quá trình đang chạy. Bất cứ thay đổi nào đối với hệ thống đều được phản ánh lại trong registry và mỗi nhiệm vụ xuất hiện trên một hệ thống đều được thực hiện với một quá trình nào đó. Trước đây, việc kiểm tra những thứ như vậy khá phức tạp, tuy nhiên ngày nay chúng ta đã có sự hỗ trợ của công cụ Process Monitor của Windows Sysinternals. Sử dụng công cụ Process Monitor bạn có thể xem các thay đổi đối với registry khi chúng đang xảy ra và xem các quá trình tích cực và các thông tin chi tiết có liên quan với chúng. Để có được phần mềm này bạn có thể download tại đây.


Hình 3: Xem các quá trình trong khung nhìn hình cây của một bộ kiểm tra

Để có thể phân tích được registry và các quá trình đang chạy yêu cầu các bạn cần phải có một số kiến thức cơ bản. Nếu chạy bộ kiểm tra thường xuyên, bạn sẽ dễ dàng biết được các quá trình nào là bình thường và quá trình nào là mã độc.

Kiểm tra các tài khoản người dùng

Một thứ cuối cùng có thể cho là quá đơn giản nhưng vẫn cần liệt kê ở đây là kiểm tra các tài khoản người dùng trên hệ thống của bạn. Rất nhiều trường hợp kẻ tấn công khi đã thỏa hiệp hệ thống của bạn đã tạo thêm một tài khoản người dùng mới để có thể dễ dàng truy cập vào hệ thống của bạn lần sau. Để thực hiện kiểm tra, bạn vào menu Start và kích phải vào Computer, kích phải Manage, duyệt đến Users and Groups.

Kết luận

Trong bài này chúng tôi đã cung cấp cho các bạn một số kiến thức cơ bản trong việc xem xét liệu hệ thống có bị thỏa hiệp hay không. Và một điều mà chúng ta cần luôn cần biết rằng, bảo mật chủ động luôn là cách tốt nhất để bảo vệ hệ thống chống lại các tấn công.

Một số lệnh tham khảo: http://www.sans.org/security-resources/winsacheatsheet.pdf

Thứ Bảy, 07/07/2018 09:06
31 👨 2.008