Đồ án tốt nghiệp đại học xây dựng công cụ giám sát hệ thống

73 805 1
Đồ án tốt nghiệp đại học xây dựng công cụ giám sát hệ thống

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

1 LỜI NÓI ĐẦU 2 Từ xưa đến nay vấn đề thông tin là cực kỳ quan trọng, làm chủ được thông tin là nắm được thành công, nếu không làm chủ được thông tin thì sẽ bị thất bại Chính vì vậy, có rất nhiều người tìm cách lấy thông tin bằng mọi cách mà Trojan là một công cụ hàng đầu Với ưu điểm: Dung lượng nhỏ, thông minh, dễ sử dụng và hiệu quả cao, Trojan đã thực sự trở thành mối đe dọa nguy hiểm đối với bất kì một hệ thống nào Tuy nhiên, với sự phát triển vượt bậc của khoa học công nghệ Trojan đã không còn chỉ là vũ khí riêng của Hacker mà còn là công cụ hữu hiệu để cho các nhà quản trị giám sát hệ thống mạng Việc sử dụng Trojan để giám sát đang ngày càng phổ biến ở các nước có ngành CNTT phát triển Công cụ giám sát này vừa đem lại cho người quản trị một hệ thống giám sát hoàn chỉnh, đồng thời làm tăng khả năng bảo mật an toàn thông tin cho các trao đổi thông tin trên mạng Trong những năm gần đây, ở nước ta, việc ứng dụng mạng máy tính vào nhiệm vụ của các tổ chức, đơn vị ngày càng tăng, các ứng dụng được xây dựng ngày càng nhiều về số lượng, phạm vi ứng dụng sâu và rộng hơn và đem lại hiệu quả rõ rệt Bên cạnh những lợi ích to lớn mà mạng và các dịch vụ, phần mềm trên mạng đem lại thì có một vấn đề hết sức quan trọng mang tính thời sự đặt ra là việc quản lý, điều hành và bảo mật cho các dịch vụ, các ứng dụng, các thông tin được trao đổi trên đường truyền Đòi hỏi người quản trị phải có một hệ thống với các công cụ giám sát toàn diện, đồng thời phải có những hiểu biết sâu sắc về các phương thức tấn công của Hacker Từ những yêu cầu có tính cấp thiết trên, em chọn đề tài “Xây dựng công cụ giám sát hệ thống” làm đề tài cho đồ án tốt nghiệp của mình.Trong quá trình thực hiện, em xin chân thành cảm ơn sự giúp đỡ tận tình của thầy giáo hướng dẫn PGS.TS để em có thể hoàn thành đồ án tốt nghiệp của mình 3 CHƯƠNG 1:TỔNG QUAN VỀ TROJAN 4 1.1.Con ngựa thành Troy –Trojan Horse Thuật ngữ này vào một điển tích cổ, đó là cuộc chiến giữa người Hy Lạp và người thành Troy Thành Troy là một thành trì kiên cố, quân Hy Lạp không sao có thể đột nhập được vào Người ta đã nghĩ ra một kế, giả vờ giảng hòa, sau đó tặng thành Troy một con ngựa gỗ khổng lồ Sau khi ngựa được đưa vào trong thành, đêm xuống những quân lính từ trong bụng ngựa xông ra và đánh chiếm thành từ bên trong Những tài liệu bảo mật Internet kinh điển định nghĩa thuật ngữ này theo nhiều cách khác nhau Nhưng có lẽ cái nổi tiếng nhất là định nghĩa được đưa ra trong RFC(Requests for Comments-một tài liệu Internet đặc biệt được viết bởi các tác giả trong lĩnh vực phát triển hoặc bảo trì Internet): Một chương trình Trojan có thể là một chương trình mà làm điều gì đó hữu ích, hoặc đơn thuần là điều gì đó quan tâm Nhưng nó luôn làm điều bất ngờ, như đánh cắp passwords hoặc copy files mà người dùng không biết Ngày nay với sự phát triển như vũ bão của ngành công nghệ thông tin thì khái niệm Trojan cũng đã có nhiều sự thay đổi và nhiều cách hiểu khác nhau, gần đây nhất Viện Tiêu chuẩn công nghệ quốc gia Hoa kỳ (National Institute of Standart and Technology-NIST) đã đưa ra định nghĩa về Trojan trong tài liệu “Guide to Malware Incident Prevention and Handling-Special Publication 800-83” ban hành tháng 11/2005 và hiện nay khái niệm này đã trở thành phổ biến.Theo NIST: Trojan Horse: Là loại mã độc hại được đặt theo sự tích “Ngựa thành Troy” Trojan horse không tự nhân bản tuy nhiên nó lây vào hệ thống với biểu hiện rất ôn hoà nhưng thực chất bên trong có ẩn chữa các đoạn mã với mục đích gây hại Trojan có thể lựa chọn một trong 3 phương thức để gây hại: 5 • Tiếp tục thực thi các chức năng của chương trình mà nó bám vào, bên cạnh đó thực thi các hoạt động gây hại một cách riêng biệt (ví dụ như gửi một trò chơi dụ cho người dùng sử dụng, bên cạnh đó là một chương trình đánh cắp Password) • Tiếp tục thực thi các chức năng của chương trình mà nó bám vào, nhưng sửa đổi một số chức năng để gây tổn hại (ví dụ như một Trojan giả lập một cửa sổ login để lấy password) hoặc che dấu các hành động phá hoại khác (ví dụ như Trojan che dấu cho các tiến trình độc hại khác bằng cách tắt các hiển thị của hệ thống) • Thực thi luôn một chương trình gây hại bằng cách núp dưới danh một chương trình không có hại (ví dụ như một Trojan được giới thiệu như là một chò chơi hoặc một tool trên mạng, người dùng chỉ cần kích hoạt file này là lập tức dữ liệu trên PC sẽ bị xoá hết) 1.2.Trojan nguy hiểm như thế nào? Nhiều nguời không biết Trojan là gì thì suy nghĩ rằng khi chạy chúng, họ không thấy điều gì xảy ra, và họ cho rằng Trojan không có gì nguy hiểm, bởi vì máy tính của họ vẫn làm việc và tất cả dữ liệu vẫn còn đó, nếu đó là một con virus thì dữ liệu đã có thể mất sạch hay máy đã ngưng hoạt động hoặc gặp sự cố Khi máy nạn nhân(Victim) bị nhiễm Trojan thì tất cả dữ liệu trên máy đều có thể bị nguy hiểm, thường thì khi Trojan nhiễm vào máy nó sẽ gây ra các tác hại điển hình sau: - Xóa hay viết lại các dữ liệu trên máy tính - Làm hỏng chức năng của các tệp - Lây nhiễm các phần mềm ác tính khác như là virus - Cài đặt để máy có thể bị điều khiển bởi máy khác - Đọc lén các thông tin cần thiết và gửi báo cáo đến nơi khác - Ăn cắp thông tin như là mật khẩu và số thẻ tín dụng 6 - Đọc các chi tiết tài khoản ngân hàng và dùng vào các mục tiêu phạm tội - Cài đặt lén các phần mềm chưa được cho phép Hình 1.1:Hacker sử dụng Trojan tấn công 1.3.Những con đường để máy tính nạn nhân(Victim) nhiễm Trojan Victim có thể bị nhiễm virus từ rất nhiều nguồn sau đây là một số hình thức phổ biến: - Qua các ứng dụng CHAT online - Qua các file được đính kèm trên Mail… - Qua tầng vật lý như trao đổi dữ liệu qua USB, CD, HDD… - Khi chạy một file bị nhiễm Trojan - Qua những chương trình nguy hiểm - Từ những trang web không tin tưởng hay những website cung cấp phần mềm miễn phí - … v.v.v - Rất nhiều lý do nhưng quan trọng là chúng ta phải cẩn thận trước các mánh khóe, thủ đoạn của các hacker Ví dụ đơn giản của một Trojan horse là một chương trình mang tên “SEXY.EXE” được đăng trên một trang Web với hứa hẹn của “ảnh hấp dẫn” nhưng khi chạy chương trình này lại xóa tất cả tệp trong máy tính và hiển thị các câu trêu chọc 1.4.Các dạng Trojan cơ bản 7 Có nhiều dạng Trojan nhưng chủ yếu được chia ra thành các dạng cơ bản sau: 1.4.1.Trojan dùng để truy cập từ xa (Remote Access Trojans) Hiện nay, Trojan loại này được sử dụng rất nhiều Chức năng chính của Trojan này là mở một cổng trên máy nạn nhân để hacker có thể quay lại truy cập vào máy nạn nhân Những con Trojan này rất dễ sử dụng.Chỉ cần nạn nhân bị nhiễm Trojan và hacker có IP của nạn nhân thì hacker đã có thể truy cập toàn quyền trên máy nạn nhân.Tùy loại Trojan mà chức năng của nó khác nhau(download, upload file, thực hiện lệnh …) Các Trojan nổi tiếng loại này như : netbus, back orifice … Hình 1.2: Trojan NetBus 1.70 1.4.2.Trojan gửi mật khẩu Mục đích của Trojan này là đọc tất cả mật khẩu lưu trong cache và thông tin về máy Victim rồi gửi về cho hacker mỗi khi Victim online Những mật khẩu cho IRC, FTP, HTTP hoặc các ứng dụng khác yêu cầu 8 người dùng phải nhập login và Password hầu hết các địa chỉ email gửi về thường nằm ở trên các website free Các Trojan nổi tiếng loại này như: barok, kuang, bario … 1.4.3.Keyloggers Đây là loại Trojan rất đơn giản Nó chỉ làm một việc đó là ghi lại tất cả các hành động trên bàn phím của Victim và sau đó gửi cho kẻ tấn công (Attacker) tìm kiếm password hoặc các dữ liệu nhạy cảm Hầu hết chúng thực hiện cả 2 chức năng ghi lại khi online và offline và tất nhiên sau đó chúng được cấu hình để gửi file log tới một địa chỉ email hàng ngày Các Trojan nổi tiếng loại này như: Perfect Keylogger,sys… Hình 1.3: Perfect Keylogger 1.4.4.Trojan phá hủy(Destructive) 9 Loại Trojan này chỉ có một chức năng là phá hủy và xóa các files Chúng rất đơn giản và dễ sử dụng Chúng có thể tự động xóa tất cả các file lõi của hệ thống (ví dụ như file: dll, ini,.exe,…) trên máy của Victim Trojan này thường được kích hoạt bởi kẻ tấn công hoặc đôi khi chúng hoạt động như một quả bom hẹn giờ 1.4.5.Trojan FTP Loại Trojan này sẽ mở cổng 21 trên máy của Victim và để cho tất cả mọi người kết nối đến máy tính của Victim mà không có mật khẩu và họ sẽ toàn quyền tải bất kỳ dữ liệu nào xuống 1.4.6.Trojan tấn công từ chối dịch vụ(Denial of Service) Loại Trojan này ngày nay rất hay được sử dụng, nó cho phép kẻ tấn công có đủ sức mạnh để tấn công từ chối dịch vụ với Victim Ý tưởng chính của nó là nếu chúng ta có 200 người dùng ADSL bị nhiễm và bắt đầu tấn công Victim cùng một lúc, nó sẽ phát sinh một số lượng lớn lưu lượng (nhiều hơn băng thông của Victim trong trường hợp này) truy cập tới Internet sẽ bị ngừng trệ WinTrinoo là một tool tấn công từ chối dịch vụ được sử dụng phổ biến hiện nay 1.4.7.Trojan tiêu diệt phần mềm Đây là loại Trojan được tích hợp rất nhiều chức năng, nhưng cũng có những chương trình tách biệt đó là các chương trình diệt ZoneAlarm, Norton Anti-Virus và nhiều chương trình khác( thông thường là các chương trình anti-virus/firewall) bảo vệ máy Victim Khi các chương trình này bị tiêu diệt, kẻ tấn công sẽ truy cập vào máy của Victim, thực hiện các hoạt động bất hợp pháp 1.5.Cách thức hoạt động của Trojan Trojan thường gồm 2 phần, 1 phần là Client và 1 phần là Server Khi Victim chạy Server trên máy của mình, kẻ tấn công sẽ sử dụng Client để kết nối tới Server và bắt đầu sử dụng Trojan Giao thức TCP/IP là giao thức 10 Sau đó chương trình ứng dụng phía Server sẽ gửi thông báo chấp nhận kết nối cho Client cùng thông tin về địa chỉ cổng mới của Socket mà nó dành cho Client  Quay lại phía Client, nếu kết nối được chấp nhận nghĩa là Socket của nó đã được tạo ra thành công và nó có thể sử dụng Socket để giao tiếp với Server bằng cách viết và ghi tới Socket theo cách giao tiếp với một tài nguyên trên máy thông thường 3.1.5.Socket hỗ trợ UDP  Ở phía Server: Khi một ứng dụng trên Server hoạt động nó sẽ tạo ra một Socket và đăng ký với Server một cổng ứng dụng và chờ đợi yêu cầu kết nối từ phía Client qua cổng này  Ở phía Client: Nó biết địa chỉ của máy trên đó Server đang chạy và cổng và Server đang chờ nghe yêu cầu Do đó khi muốn giao tiếp với Server, nó cũng tạo ra một Socket chứa địa chỉ máy Client và cổng của ứng dụng trên máy Client đồng thời Client sẽ cung cấp cho Socket của nó địa chỉ và cổng của Server mà nó cần kết nối Khi Client muốn gửi tin đến Server nó sẽ chuyển dữ liệu cho Socket của mình, Socket này sẽ chuyển thẳng gói tin mà Client muốn gửi tới Server dưới dạng một datagram có chứa địa chỉ máy Server và cổng mà Server đang chờ nghe yêu cầu Như vậy không hề có một kết nối nào được thực hiện giữa Client với Server và Server cung không cần tạo ra một Socket khác để kết nối với Client thay vào đó Server dùng ngay cổng ban đầu để trao đổi dữ liệu 59 CHƯƠNG 4: XÂY DỰNG CHƯƠNG TRÌNH GIÁM SÁT HỆ THỐNG SỬ DỤNG TROJAN 4.1.Phân tích hệ thống 4.1.1.Mô hình chung Từ mô hình của mạng máy tính (trạm- chủ hay Client – Server) Hình 4.1: Client –Server Yêu cầu của bài toán giám sát đặt ra đó là: Người quản lý có thể theo dõi chặt chẽ những dịch vụ nào đang kết nối trên hệ thống thông qua việc thường kỳ các trạm làm việc gửi các thông tin về các dịch vụ chúng đang kết nối về cho người quản lý, các port nào đã được dùng và port nào đang ở tình trạng đang lắng nghe Theo dõi chặt chẽ các giao dịch trên hệ thống đồng thời đưa ra các cảnh báo hoặc ngăn chặn về mức độ an toàn của hệ thống Theo dõi, quản lý mọi hoạt động đang diễn ra trên các trạm, đồng thời truy cập ngăn chặn các hoạt động trái phép ngay tại các trạm  Như vậy chương trình được xây dựng cho 2 lớp đối tượng cơ 60 bản là phía máy Client và phía máy Server.Mỗi đối tượng sẽ có chức năng riêng thực hiện các vấn đề của bài toán giám sát hệ thống qua mạng LAN Với Server(Trojan), nó phải quản lý chung các thao tác mà Client đưa tới Để làm điều này Trojan phải mở cổng và lắng nghe kết nối trên đó Khi nhận được thông tin từ phía Client nó sẽ tiến hành kiểm tra các lệnh mà Client gửi đến và ra các quyết định cần thiết Đồng thời nó cũng luôn theo dõi các tiến trình của máy Client Khi Client ngắt kết nối thì Trojan vẫn ở trạng thái chờ đợi, lắng nghe kết nối khi Client kết nối lại Với Client phải kết nối tới Trojan(Server), nếu thành công thì sẽ bắt đầu trao đổi thông tin với Trojan, đưa ra các lệnh để Trojan thực hiện Như vậy, toàn bộ tiến trình của hệ thống sẽ gồm các công đoạn chính như sau:  Trojan mở cổng và lắng nghe trên cổng  Client kết nối tới Trojan trên cổng đã mở  Kết nối thành công Client bắt đầu quá trình giám sát bằng cách ra lệnh cho Trojan thực hiện các lệnh  Khi Client ngắt kết nối, Trojan sẽ ở trạng thái chờ đợi 4.1.2.Sơ đồ thuật toán công việc 61 Hình 4.2: Sơ đồ thuật toán công việc 4.1.3.Sơ đồ giao dịch 62 Hình 4.3: Sơ đồ giao dịch với máy Client 4.1.3.Sơ đồ tuần tự  Giám sát cổng đang mở Netstat là một công cụ hữu ích của Windows cho phép kiểm tra những dịch vụ nào đang kết nối đến hệ thống Nó rất quan trọng trong việc phân tích cái gì đang xảy ra trên hệ thống góp phần ngăn chặn các cuộc tấn công vào hệ thống 63 Hình 4.4: Lệnh Nestat Với chức năng giám sát cổng tiến trình sẽ diễn ra như sau: • Trojan mở cổng và lắng nghe trên cổng • Client kết nối tới Trojan trên cổng đang mở • Kết nối thành công Client gửi yêu cầu giám sát cổng • Trojan nhận được yêu cầu thực hiện lệnh Netstat –an bên máy trạm rồi gửi về cho máy Client • Client nhận được và hiển thị trên màn hình 64 Hình 4.5: Sơ đồ tuần tự chức năng giám sát cổng  Điều khiển Victim Với chức năng điều khiển tiến trình sẽ diễn ra như sau: • Trojan mở một cổng và lắng nghe trên cổng • Client kết nối tới Trojan trên cổng đang mở • Kết nối thành công Client gửi yêu cầu điều khiển • Trojan nhận được yêu cầu thực hiện lệnh mà Client yêu cầu như tắt tiến trình, hiển thị thông báo…rồi gửi báo cáo về cho Client • Client có thể hiển thị kết quả (với những yêu cầu thực hiện cần kết quả hiển thị) hoặc nhận biết lệnh đã hoàn thành khi Trojan gửi thông báo về và sau đó Client gửi lệnh kết thúc 65 Hình 4.6: Sơ đồ tuần tự chức năng điều khiển 4.2.Thiết kế giao diện, xây dựng chức năng chương trình 4.2.1.Thiết kế giao diện Giao diện chính của chương trình 66 Hình 4.7 Giao diện chính của chương trình 4.2.2.Xây dựng chức năng chương trình  Chức năng điều khiển Chỉ dùng cho người quản trị và những người có quyền truy cập xem các thông tin hoạt động cá nhân Kết quả thử nghiệm điều khiển trên máy Victim(205.192.168.26) 67 Hình 4.8: Danh sách địa chỉ Ip Sau khi kết nối với máy của Victim bằng địa chỉ IP hoặc bằng tên thì có thể giám sát và điều khiển máy Victim Hình 4.9: Điều khiển các chức năng trên máy Victim Giám sát các tiến trình đang chạy trên máy Victim bằng cách liệt kê các tiến trình đang chạy và có thể đóng các tiến trình lại 68 Hình 4.10: Giám sát các tiến trình chạy trên máy Victim Theo dõi chặt chẽ các hoạt động của Victim bằng cách chụp lại những hoạt động tại máy của Victim Hình 4.11: Chụp lại hoạt động của Victim  Chức năng giám sát hoạt động mạng: 69 Có thể giám sát các cổng, giám sát các website truy cập…Với cơ sở dữ liệu nghiên cứu có thể giúp người quản trị nhận diện chính xác khoảng 4000 cổng Hình 4.12: Giám sát cổng 70 Hình 4.13: Giám sát hoạt động giao dịch  Chức năng cảnh báo 71 Hình 4.14: Cảnh báo Trojan 72 KẾT LUẬN Sau thời gian nghiên cứu đề tài “Xây dựng công cụ giám sát hệ thống” em đã thực hiện được kết quả như sau: • Nghiên cứu tổng quan về Trojan, ứng dụng, tác hại của Trojan • Nghiên cứu các kỹ thuật tạo Trojan • Các kỹ thuật phát hiện Trojan • Tiến hành tạo Trojan và các kỹ thuật gắn Trojan vào các máy trạm • Xây dựng chương trình giám sát hoạt động giao dịch trên mạng LAN sử dụng Trojan Cho phép người dùng có thể giám sát được các hoạt động giao dịch tại các máy trạm Đồng thời có khả năng giám sát toàn bộ hoạt động của máy trạm và đưa ra các cảnh báo về hoạt động giao dịch trên mạng, cảnh báo về khả năng tấn công bằng Trojan Hướng phát triển của đề tài trong thời gian tiếp theo: • Tiếp tục nghiên cứu ứng dụng Trojan giám sát hoạt động giao dịch trên mạng LAN, làm tăng khả năng ẩn mình của Trojan • Xây dựng các chức năng cho Trojan có thể giám sát hoạt động giao dịch trên mạng diện rộng 73 ... phải có hệ thống với cơng cụ giám sát tồn diện, đồng thời phải có hiểu biết sâu sắc phương thức cơng Hacker Từ u cầu có tính cấp thiết trên, em chọn đề tài ? ?Xây dựng công cụ giám sát hệ thống? ??... hiểm hệ thống Tuy nhiên, với phát triển vượt bậc khoa học công nghệ Trojan khơng cịn vũ khí riêng Hacker mà cịn cơng cụ hữu hiệu nhà quản trị giám sát hệ thống mạng Việc sử dụng Trojan để giám sát. .. để giám sát ngày phổ biến nước có ngành CNTT phát triển Cơng cụ giám sát vừa đem lại cho người quản trị hệ thống giám sát hoàn chỉnh, đồng thời làm tăng khả bảo mật an tồn thơng tin cho trao đổi

Ngày đăng: 19/06/2014, 21:13

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan