Luận văn Tìm hiểu về an ninh mạng và kỹ thuật liệt kê

Liệt kê là một trong ba bước để bắt đầu để tìm hiểu về hệ thống mạng muốn tấn công, nó giúp ta trích xuất được tên người dùng, tên máy chủ, tài nguyên mạng, chia sẻ, các thiết bị dịch vụ từ một hệ thống mạng. Sau khi liệt kê ta sẽ hình thành được cách tấn công, mục tiêu, đối tượng tấn công. Để không bị tấn công thì hệ thống của chúng ta sẽ phải cập nhập các bản vá lỗi, thiết lập các chính sách, đồng thời tiến hành mô phỏng tự tấn công hệ thống để tìm ra điểm yếu của hệ thống mạng, và trên hết là ý thức của người sử dụng mạng. Trong quá trình thực hiện đồ án này, em đã biết thêm về các cách thăm dò hệ thống mạng cũng như các biện pháp đối phó, giúp ích rất nhiều trong việc bảo vệ một hệ thống mạng.

doc30 trang | Chia sẻ: lylyngoc | Lượt xem: 3383 | Lượt tải: 3download
Bạn đang xem trước 20 trang tài liệu Luận văn Tìm hiểu về an ninh mạng và kỹ thuật liệt kê, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
Luận văn Tìm hiểu về an ninh mạng và kỹ thuật liệt kê LỜI MỞ ĐẦU Ngày nay công nghệ thông tin được ứng dụng rộng rãi trong mọi lĩnh vực, mạng thông tin đa phương tiện phủ khắp cả nước, nối với hầu hết các tổ chức, các gia đình. Thông tin trở thành tài nguyên quan trọng nhất của nền kinh tế. Để tận dụng cơ hội, vượt qua thách thức, rút ngắn khoảng cách với các nước phát triển, hầu hết các quốc gia đã hoạch định và thực hiện các chiến lược phát triển kinh tế tri thức, trong đó đổi mới và số hóa bộ máy nhà nước, làm cho bộ máy họat động nhanh nhạy hơn, linh hoạt hơn và có trách nhiệm hơn. Thông qua trao đổi điện tử các cá nhân và tổ chức có thể trao đổi trực tiếp với nhau hoặc thực hiện giao dịch thương mại. Tuy nhiên có một số phần tử hiện nay đang lợi dụng hoạt động đó để nhằm phục vụ cho các mục đích không tốt không chỉ gây thiệt hại lớn về kinh tế mà còn gây hại đến an ninh quốc gia. Vì vậy, an ninh, an toàn trong trao đổi dữ liệu là điều kiện quan trọng không thể thiếu. Xuất phát từ yêu cầu đó, em đã chọn đề tài nghiên cứu là: “Tìm hiểu vấn đề an ninh, an toàn trong trao đổi dữ liệu điện tử”. Kết quả nghiên cứu của em được chia làm hai phần chính đó là: vấn đề an ninh, an toàn trong thương mại điện tử và một số giải pháp nhằm đảm bảo bí mật, an toàn trong trao đổi điện tử, mà chủ yếu là tìm hiểu các giải pháp mật mã hóa dữ liệu. Em xin chân thành cảm ơn các thầy các cô trong khoa khoa học máy tính đã giúp đỡ và trau dồi kiến thức cho em suốt quá trình học tập tại trường. Do khả năng và thời gian hạn chế nên trong đồ án này có lẽ còn nhiều khiếm khuyết, em rất mong được các thầy cô chỉ bảo. MỤC LỤC DANH MỤC HÌNH ẢNH Hình 1.1 Lỗ hổng tấn công không cần xác thực 11 Hình 1.2 Tấn công từ xa không cần xác thực 12 Hình 1.3 Man-in-the-middle 13 Hình 1.4 Tấn công từ chối dịch vụ (DDOS) 15 Hình 1.5 Tấn công theo kiểu vét cạn 18 Hình 2.1 Các loại thông có được thông qua xâm nhập 22 Hình 2.2 Vô hiệu hóa SMB 28 DANH MỤC TỪ VIẾT TẮT IDS Intrusion Detection System VNC Vitual Network Computing SNMP Simple Network Manager Protocol AP Access Point SSID Service Set Identification WEP Wireless Encryption Protocol DOS Dinal Of Service ICMP Internet Control Message Protocol LAN Local Area Network NetBIOS Network Basic Input Output System LDAP Lightweight Directory Access Protocol NTP Network Time Protocol SMTP Simple Mail Transfer Protocol SMB Server Message Block Pen Testing Penetration Testing Tổng quan về an ninh mạng Khái niệm về an toàn và an ninh mạng Trong quá khứ, an ninh thông tin là một thuật ngữ được sử dụng để mô tả các biện pháp bảo mật vật lý được sử dụng để giữ cho chính phủ hay doanh nghiệp những thông tin quan trọng khỏi bị truy cập bởi công chúng và để bảo vệ nó chống lại thay đổi hoặc tiêu hủy. Những biện pháp này bao gồm lưu trữ tài liệu có giá trị trong tủ hồ sơ đã bị khóa hoặc két và hạn chế truy cập vật lý đến các khu vực nơi mà các tài liệu đã được lưu giữ. Với sự phổ biến của máy tính và các phương tiện truyền thông điện tử, cách truy cập dữ liệu cũ thay đổi. Khi công nghệ tiếp tục phát triển, hệ thống máy tính được kết nối với nhau để tạo thành mạng máy tính, cho phép các hệ thống chia sẻ tài nguyên, bao gồm cả dữ liệu. Các mạng máy tính cuối cùng, mà hầu hết các liên kết nối mạng máy tính truy cập công cộng, là Internet. Mặc dù các phương pháp bảo vệ dữ liệu đã thay đổi đáng kể, khái niệm về an ninh mạng vẫn giống như là các thông tin bảo mật. Bởi vì máy tính có thể thu hồi, và số tiền quá lớn của dữ liệu, chúng được sử dụng trong gần như mọi khía cạnh của cuộc sống. Máy vi tính, mạng, và Internet là một phần không thể thiếu của nhiều doanh nghiệp. Sự phụ thuộc của chúng trên các máy tính tiếp tục tăng khi các doanh nghiệp và cá nhân trở nên thoải mái hơn với công nghệ và tiến bộ công nghệ như là làm cho hệ thống thân thiện với người dùng hơn và dễ dàng hơn để kết nối. Một hệ thống máy tính duy nhất yêu cầu các công cụ tự động để bảo vệ dữ liệu trên hệ thống từ những người dùng có quyền truy cập hệ thống. Một hệ thống máy tính trên mạng (một hệ thống phân phối) đòi hỏi rằng dữ liệu vào hệ thống đó được bảo vệ không chỉ từ truy cập địa phương mà còn từ các truy cập từ xa trái phép và từ chặn hoặc thay đổi dữ liệu trong quá trình truyền giữa các hệ thống. An ninh mạng không phải là một sản phẩm, quy trình, hay chính sách mà là sự kết hợp của các sản phẩm và quy trình có hỗ trợ một chính sách quy định. Mạng lưới an ninh được thực hiện của các thiết bị an ninh, chính sách và quy trình để ngăn chặn truy cập trái phép vào tài nguyên mạng, thay đổi hoặc hủy hoại tài nguyên hoặc dữ liệu. Sự cần thiết phải bảo vệ thông tin Trong một doanh nghiệp hay một tổ chức nào đó, thì phải có các yếu tố cần được bảo vệ như: Dữ liệu. Tài nguyên: con người, hệ thống và đường truyền. Danh tiếng của công ty. Nếu không đặt vấn đề an toàn thông tin lên hàng đầu thì khi gặp phải sự cố thì tác hại đến doanh nghiệp không nhỏ: Tốn kém chi phí. Tốn kém thời gian. Ảnh hưởng đến tài nguyên hệ thống. Ảnh hưởng đến danh dự, uy tín của doanh nghiệp. Mất cơ hội kinh doanh. Đặc trưng kỹ thuật của an toàn mạng Chứng thực (Authentification) Dịch vụ đảm bảo tính xác thực: Khẳng định các bên tham gia vào quá trình truyền tin được xác thực và đáng tin cậy. Đối với các thông điệp đơn lẻ, các thông báo, báo hiệu, dịch vụ xác thực: Đảm bảo cho bên nhận rằng các thông điệp được đưa ra từ những nguồn đáng tin cậy. Đối với những liên kết trực tuyến, có hai khía cạnh cần phải chú ý tới: Tại thời điểm khởi tạo kết nối, dịch vụ xác thực phải hai thực thể tham gia vào trao đổi thông tin phải được ủy quyền. Dịch vụ cần khẳng định rằng kết nối không bị can thiệp bởi một bên thứ ba. Trong đó bên thứ ba này có thể giả mạo một trong hai bên được ủy quyền để có thể tham gia vào quá trình truyền tin và thu nhận các thông điệp. Tính sẵn sàng (Confidentialy) Tấn công phá hủy tính săn sàng của hệ thống: Thực hiện các thao tác vật lý tác động lên hệ thống. Dịch vụ đảm bảo tính sẵn sàng phải ngăn chặn các ảnh hưởng lên thông tin trong hệ thống, phục hồi khả năng phục vụ của các phần tử hệ thống trong thời gian nhanh nhất. Tính toàn vẹn (Integrity) Đảm bảo tinh toàn vẹn cũng có thể áp dụng cho luồng thông điệp, một thông điệp hay một số trường được lựa chọn của thông điệp. Phương pháp hữu ích nhất là trực tiếp bảo vệ luồng thông điệp. Có hai loại dịch vụ đảm bảo tính toàn vẹn: Hướng không liên kết. Hướng liên kết. Dịch vụ đảm bảo tính toàn vẹn dữ liệu hướng liên kết: Tác động lên luồng thông điệp và đảm bảo rằng thông điệp được nhận hoàn toàn giống khi được gửi, không bị sao chép, không bị sửa đổi, thêm bớt. Các dữ liệu bị phá hủy cũng phải được khôi phục bằng dịch vụ này. Dịch vụ đảm bảo tính toàn vẹn dữ liệu hướng liên kết xử lý các vấn đề liên quan tới sự sửa đổi của luồng các thông điệp và chối bỏ dịch vụ. Dịch vụ đảm bảo tính toàn vẹn dữ liệu hướng không liên kết: Chỉ xử lý một thông điệp đơn lẻ. Không quan tâm tới những ngữ cảnh rộng hơn. Chỉ tập trung vào ngăn chặn việc sửa đổi nội dung thông điệp. Các lỗ hổng bảo mật Khái niệm lỗ hổng Để hiểu được các đợt tấn công, bạn phải nhớ rằng các máy tính, không có vấn đề làm thế nào nâng cao, vẫn chỉ là máy hoạt động dựa trên bộ hướng dẫn xác định trước. Hệ thống điều hành và các gói phần mềm khác chỉ đơn giản là biên dịch bộ giảng dạy rằng các máy tính sử dụng để biến đổi đầu vào thành đầu ra. Một máy tính không thể xác định sự khác biệt giữa đầu vào và đầu vào không được phép ủy quyền, trừ khi thông tin này được viết vào trong bộ giảng dạy. Bất kỳ điểm nào trong một gói phần mềm mà tại đó người dùng có thể thay đổi phần mềm hoặc truy cập được vào hệ thống (không được thiết kế đặc biệt vào các phần mềm) được gọi là một lỗ hổng. Trong hầu hết trường hợp, một hacker được quyền truy cập vào mạng hoặc máy tính bằng cách khai thác một lỗ hổng. Nó có thể kết nối từ xa đến một máy tính vào bất kỳ 65535 cổng. Các ứng dụng khác nhau cấu hình một hệ thống để nghe trên các cổng cụ thể. Nó có thể quét máy tính để xác định các cổng đang lắng nghe, và những ứng dụng đang chạy trên hệ thống đó. Khi biết những gì các lỗ hổng liên quan đến các ứng dụng, bạn có thể xác định những lỗ hổng tồn tại và làm thế nào để khai thác chúng. Khi phần cứng và công nghệ phần mềm tiếp tục tạm ứng, các "mặt khác" tiếp tục tìm kiếm và phát hiện ra lỗ hổng mới. Vì lý do này, các nhà sản xuất phần mềm lớn tiếp tục sản xuất các bản vá lỗi cho sản phẩm của họ như là lỗ hổng được phát hiện. Các lỗ hổng bảo mật Lỗ hổng từ chối dịch vụ Cho phép đối phương lợi dụng làm tê liệt các dịc vụ của hệ thống. Đối phương có thể làm mất khả năng của máy tính hay môỵ mạng, ảnh hưởng tới toàn bộ tổ chức. Một số loại tấn công từ chối dịch vụ: Bandwith/Throughput Attacks. Protocol Attacks. Software Vulnerability Attacks. Lỗ hổng tăng quyền truy nhập không cần xác thực Là lỗi ở những phần mềm hay hệ điều hành có sự phân cấp người dùng. Cho phép loại người dùng với quyền sử dụng hạn chế có thể tăng quyền trái phép. Ví dụ: Sendmail: cho phép người dùng bình thường có thể khởiđộng tiến trình sendmail, lợi dụng sendmail khởi động chương trình khác với quyền root. Tràn bộ đệm. Hình 1.1 Lỗ hổng tấn công không cần xác thực Lỗ hổng cho phép xâm nhập từ xa không xác thực Là lỗi chủ quan của người quản trị hệ thống hay người dùng. Do không thận trọng, thiếu kinh nghiệm và không quan tâm đến vấn đề bảo mật. Một số cấu hình thiếu kinh nghiệm: Tài khoản có password rỗng. Tài khoản mặc định. Không có hệ thống bảo vệ như Firewall, IDS, proxy. Chạy những dịch vụ không cần thiết mà không an toàn: SNMP, pcAnywhere, VNC,… Các kiểu tấn công mạng phổ biến Các loại tấn công không gian mạng và động lực của họ quá nhiều và đa dạng vào danh sách. Chúng bao gồm từ các hacker mới làm quen những người bị thu hút bởi thách thức này, để các chuyên nghiệp có tay nghề cao người tiêu một tổ chức cho một mục đích cụ thể (chẳng hạn như tội phạm có tổ chức, hoạt động gián điệp công nghiệp, hoặc thu thập thông tin tình báo do nhà nước tài trợ). Các mối đe dọa có thể bắt nguồn từ bên ngoài tổ chức hoặc từ bên trong. Bên ngoài các mối đe dọa bắt nguồn từ bên ngoài tổ chức và cố gắng để vi phạm một mạng hoặc từ mạng Internet hoặc thông qua quay số truy cập. Bên trong các mối đe dọa bắt nguồn từ bên trong một tổ chức và thường là kết quả của nhân viên hoặc nhân viên khác, những người có một số quyền truy cập tài nguyên mạng nội bộ. Nghiên cứu chỉ ra rằng các cuộc tấn công nội bộ gây ra bởi các nhân viên bất mãn hoặc nhân viên cũ có trách nhiệm phần lớn các sự cố an ninh mạng trong hầu hết các tổ chức. Tấn công giả mạo (Spoofing for Masquerade) Tấn công giả mạo (Spoofing for Masquerade) trong lĩnh vực bảo mật máy tính, là một hành vi giả mạo ác ý nhằm lấy được các thông tin nhạy cảm như tên người dùng, mật khẩu và các chi tiết thẻ tín dụng bằng cách giả dạng thành một chủ thể tin cậy trong một giao dịch điện tử. Các giao dịch thường dùng để đánh lừa những người dùng ít đa nghi là các giao dịch có vẻ xuất phát từ các website xã hội phổ biến, các trung tâm chi trả trực tuyến hoặc các quản trị mạng. Tấn công giả mạo thường được thực hiện qua thư điện tử hoặc tin nhắn nhanh, và hay yêu cầu người dùng nhập thông tin vào một website giả mạo gần như giống hệt với website thật. Ngay cả khi có sử dụng chứng thực máy chủ, có khi vẫn phải cần vài kĩ năng phức tạp mới xác định được website là giả mạo. Tấn công giả mạo là một đơn cử của những kĩ thuật lừa đảo qua mạng (social engineering) nhằm đánh lừa người dùng, và khai thác sự bất tiện hiện nay của công nghệ bảo mật web. Để chống lại hình thức tấn công lừa đảo ngày càng tăng, người ta đã nỗ lực hoàn chỉnh hành lang pháp lý, huấn luyện cho người dùng, cảnh báo công chúng, và tăng cường an ninh kĩ thuật. Một kĩ thuật tấn công giả mạo đã được mô tả chi tiết vào năm 1987, trong một bài báo khoa học và thuyết minh của Nhóm Người dùng HP Toàn cầu, Interex. Thuật ngữ "phishing" được đề cập lần đầu tiên trên nhóm tin Usenet alt.online-service.America-online vào ngày 2 tháng 1 năm 1996, dù thuật ngữ này có thể đã xuất hiện từ trước đó trong bản in của tạp chí dành cho hacker 2600. Giả mạo một người sử dụng khác để truy nhập hệ thống: Hình 1.2 Tấn công từ xa không cần xác thực Man-in-the-middle Tấn công theo kiểu Main-in-the-middle là trường hợp trong đó hacker sử dụng một AP để đánh cắp các node di động bằng cách gửi tín hiệu RP mạnh hơn AP hợp pháp đến các node đó. Các node di động nhận thấy AP có phát tín hiệu RP tốt hơn nên sẽ kết nối đến AP giả mạo này, truyền dữ liệu có thể là những dữ liệu nhạy cảm đến AP giả mạo và hacker có toàn quyền xử lý. Để làm cho client kết nối lại đến AP giả mạo thì công suất phát cua AP giả mạo phải cao hơn nhiều so với AP hợp pháp trong vùng phủ song của nó. Việc kết nối lại với AP giả mạo được xem như là một phần của roaming nên người dùng sẽ không hề biết được. Việc đưa nguồn nhiễu toàn kênh (all-band interference – chẳng hạn như Bluetooth) vào vùng phủ sóng của AP hợp pháp sẽ buộc client phải roaming. Hacker muốn tấn công theo kiểu này thì trước tiên phải biết được giá trị SSID là các client đang sử dụng ( giá trị này rất dễ dàng có được). Sau đó, hacker phải biết được giá trị WEP key nếu mạng có sử dụng WEP. Kết nối upstream (với mạng trục có dây) từ AP giả mạo được điều khiển thông qua một thiết bị client như PC card hay Workgroup Bridge. Nhiều khi, tấn công Man-in-the-middle được thực hiện chỉ với một laptop và hai PCMCIA card. Phần mềm AP chạy trên máy laptop nơi PC card được sử dụng như là một AP và một PC card thứ hai được sử dụng để kết nối laptop đến AP hợp pháp gần đó. Trong cấu hình này, laptop chính là man-in-the-middle (người ở giữa), hoạt động giữa client và AP hợp pháp. Từ đó hacker có thể lấy được những thông tin giá trị bằng cách sử dụng các sniffer trên máy laptop. Điểm cốt yếu trong kiểu tấn công này là người dùng không thể nhận biết được. Vì thế, số lượng thông tin mà hacker có thể thu được chỉ phụ thuộc vào thời gian mà hacker có thể duy trì trạng thái này trước khi bị phát hiện. Hình 1.3 Man-in-the-middle Tấn công từ chối dịch vụ (Denial of Services) Nguyên lý thực hiện: Với mạng máy tính không dây và mạng có dây thì không có khác biệt cơ bản về các kiểu tấn công DOS ( Denied of Service ) ở các tầng ứng dụng và vận chuyển nhưng giữa các tầng mạng, liên kết dữ liệu và vật lý lại có sự khác biệt lớn. Chính điều này làm tăng độ nguy hiểm của kiểu tấn công DOS trong mạng máy tính không dây. Trước khi thực hiện tấn công DOS, kẻ tấn công có thể sử dụng chương trình phân tích lưu lượng mạng để biết được chỗ nào đang tập trung nhiều lưu lượng, số lượng xử lý nhiều, và kẻ tấn công sẽ tập trung tấn công DOS vào những vị trí đó để nhanh đạt được hiệu quả hơn. Các kiểu tấn công thông dụng: Tấn công DOS tầng vật lý: Tấn công DOS tầng vật lý ở mạng có dây muốn thực hiện được thì yêu cầu kẻ tấn công phải ở gần các máy tính trong mạng. Điều này lại không đúng trong mạng không dây. Với mạng này, bất kỳ môi trường nào cũng dễ bị tấn công và kẻ tấn công có thể xâm nhập vào tầng vật lý từ một khoảng cách rất xa, có thể là từ bên ngoài thay vì phải đứng bên trong tòa nhà. Trong mạng máy tính có dây khi bị tấn công thì thường để lại các dấu hiệu dễ nhận biết như là cáp bị hỏng, dịch chuyển cáp, hình ảnh được ghi lại từ camera, thì với mạng không dây lại không để lại bất kỳ một dấu hiệu nào. 802.11 PHY đưa ra một phạm vi giới hạn các tần số trong giao tiếp. Một kẻ tấn công có thể tạo ra một thiết bị làm bão hòa dải tần 802.11 với nhiễu. Như vậy, nếu thiết bị đó tạo ra đủ nhiễu tần số vô tuyến thì sẽ làm giảm tín hiệu / tỷ lệ nhiễu tới mức không phân biệt được dẫn đến các STA nằm trong dải tần nhiễu sẽ bị ngừng hoạt động. Các thiết bị sẽ không thể phân biệt được tín hiệu mạng một cách chính xác từ tất cả các nhiễu xảy ra ngẫu nhiên đang được tạo ra và do đó sẽ không thể giao tiếp được. Tấn công theo kiểu này không phải là sự đe doạ nghiêm trọng, nó khó có thể thực hiện phổ biến do vấn đề giá cả của thiết bị, nó quá đắt trong khi kẻ tấn công chỉ tạm thời vô hiệu hóa được mạng. Tấn công DOS tầng liên kết dữ liệu: Do ở tầng liên kết dữ liệu kẻ tấn công cũng có thể truy cập bất kì đâu nên lại một lần nữa tạo ra nhiều cơ hội cho kiểu tấn công DOS. Thậm chí khi WEP đã được bật, kẻ tấn công có thể thực hiện một số cuộc tấn công DOS bằng cách truy cập tới thông tin lớp liên kết. Khi không có WEP, kẻ tấn công truy cập toàn bộ tới các liên kết giữa các STA và AP để chấm dứt truy cập tới mạng. Nếu một AP sử dụng không đúng anten định hướng kẻ tấn công có nhiều khả năng từ chối truy cập từ các client liên kết tới AP. Anten định hướng đôi khi còn được dùng để phủ sóng nhiều khu vực hơn với một AP bằng cách dùng các anten. Nếu anten định hướng không phủ sóng với khoảng cách các vùng là như nhau, kẻ tấn công có thể từ chối dịch vụ tới các trạm liên kết bằng cách lợi dụng sự sắp đặt không đúng này, điều đó có thể được minh họa ở hình dưới đây. Hình 1.4 Tấn công từ chối dịch vụ (DDOS) Anten định hướng A và B được gắn vào AP và chúng được sắp đặt để phủ sóng cả hai bên bức tường một cách độc lập. Client A ở bên trái bức tường, vì vậy AP sẽ chọn anten A cho việc gửi và nhận các khung. Client B ở bên trái bức tường, vì vậy chọn việc gửi và nhận các khung với anten B. Client B có thể loại client A ra khỏi mạng bằng cách thay đổi địa chỉ MAC của Client B giống hệt với Client A. Khi đó Client B phải chắc chắn rằng tín hiệu phát ra từ anten B mạnh hơn tín hiệu mà Client A nhận được từ anten A bằng việc dùng một bộ khuếch đại hoặc các kĩ thuật khuếch đại khác nhau. Như vậy AP sẽ gửi và nhận các khung ứng với địa chỉ MAC ở anten B. Các khung của Client A sẽ bị từ chối chừng nào mà Client B tiếp tục gửi lưu lượng tới AP.- Tấn công DOS tầng mạng: Nếu một mạng cho phép bất kì một client nào kết nối, nó dễ bị tấn công DOS tầng mạng. Mạng máy tính không dây chuẩn 802.11 là môi trường chia sẻ tài nguyên. Một người bất hợp pháp có thể xâm nhập vào mạng, từ chối truy cập tới các thiết bị được liên kết với AP. Ví dụ như kẻ tấn công có thể xâm nhập vào mạng 802.11b và gửi đi hàng loạt các gói tin ICMP qua cổng gateway. Trong khi cổng gateway có thể vẫn thông suốt lưu lượng mạng, thì dải tần chung của 802.11b lại dễ dàng bị bão hòa. Các Client khác liên kết với AP này sẽ gửi các gói tin rất khó khăn. Biện pháp ngăn chặn: Biện pháp mang tính “cực đoan” hiệu quả nhất là chặn và lọc bỏ đi tất cả các bản tin mà DOS hay sử dụng, như vậy có thể sẽ chặn bỏ luôn cả những bản tin hữu ích. Để giải quyết tốt hơn, cần có những thuật toán thông minh nhận dạng tấn công attack detection, dựa vào những đặc điểm như gửi bản tin liên tục, bản tin giống hệt nhau, bản tin không có ý nghĩa, ... Thuật toán này sẽ phân biệt bản tin có ích với các cuộc tấn công, để có biện pháp lọc bỏ. KeyLogger Keylogger bao gồm hai loại, một loại keylogger phần cứng và một loại là phần mềm. Theo những người lập trình, keylogger viết ra với chỉ có một loại duy nhất là giúp các bạn giám sát con cái, người thân xem họ làm gì với PC, với internet, khi chat với người lạ. Nhưng cách sử dụng và chức năng của keylogger hiện tại trên thế giới khiến người ta thường hay phân loại keylogger theo mức độ nguy hiểm bằng các câu hỏi: Nhiễm vào máy không qua cài đặt/Cài đặt vào máy cực nhanh (quick install)? Có thuộc tính ẩn/giấu trên trình quản lí tiến trình (process manager) và trình cài đặt và gỡ bỏ chương trình (Add or Remove Program) Theo dõi không thông báo/PC bị nhiễm khó tự phát hiện Có thêm chức năng Capturescreen hoặc ghi lại thao tác chuột Khó tháo gỡ? Có khả năng lây nhiễm, chống tắt (kill process) Cách hoạt động của keylogger Thành phần của Keylogger: Có 3 thành phần chính. - Chương trình điều khiển (Control Program): dùng để theo điều phối hoạt động, tinh chỉnh các thiết lập, xem các tập tin nhật ký cho Keylogger. Phần này là phần được giấu kỹ nhất của keylogger, thông thường chỉ có thể gọi ra bằng một tổ hợp phím tắt đặc biệt. - Tập tin hook, hoặc là một chương trình monitor dùng để ghi nhận lại các thao tác bàn phím, capture screen (đây là phần quan trọng nhất). - Tập tin nhật ký (log), nơi chứa đựng/ghi lại toàn bộ những gì hook ghi nhận được. Cách thức cài đặt vào máy: - Các loại keylogger từ 1 - 3 thông thường khi cài đặt vào máy cũng giống như mọi chương trình máy tính khác, đều phải qua bước cài đặt. Đầu tiên nó sẽ cài đặt các tập tin dùng để hoạt động vào một thư mục đặc biệt (rất phức tạp), sau đó đăng ký cách thức hoạt động rồi đợi người dùng thiết lập thêm các ứng dụng. Sau đó nó bắt đầu hoạt động. - Loại keylogger số 4 có thể vào thẳng máy của người dùng bỏ qua bước cài đặt, dùng tính năng autorun để cùng chạy với hệ thống. Một số loại tự thả (drop) mình vào các chương trình khác, để khi người dùng sử dụng các chương trình này keylogger sẽ tự động chạy theo. Cách hoạt động: - Trong một hệ thống (Windows, Linux, Mac…), khi bấm 1 phím trên bàn phím, bàn phím sẽ chuyển nó thành tính hiệu chuyển vào CPU. CPU sẽ chuyển nó tới hệ điều hành để hệ điều hành dịch thành chữ hoặc số cho chính nó hoặc các chương trình khác sử dụng. - Nhưng khi trong hệ thống đó có keylogger, không những chỉ có hệ điều hành theo dõi mà cả hook file/monitor program của keylogger theo dõi nó sẽ ghi nhận và dịch lại các tính hiệu ghi vào tập tin nhật ký. Đồng thời nó còn có thể theo dõi cả màn hình và thao tác chuột. Biện pháp ngăn chặn: Bảo mật vật lý là phương pháp tốt nhất cho việc phòng chống kiểu tấn công này. Chúng ta có thể sử dụng các IDS (hệ thống phá hiện xâm nhập) để dò ra các thiết bị dùng để tấn công. Brute Force Brute-force attack (exhaustive key search) là phương pháp tấn công bằng cách thử tất cả những chìa khóa có thể có. Đây là phương pháp tấn công thô sơ nhất và cũng khó khăn nhất. Kẻ tấn công có khả năng chiếm quyền điều khiển hệ thống nếu tài khoản hệ thống không được đặt mật khẩu an toàn, hoặc có thể gây ra tấn công từ chối dịch vụ. Hình 1.5 Tấn công theo kiểu vét cạn Để hạn chế những tác hại của đợt tấn công này, chúng ta có những khuyến cao sau đây: Thay đổi cổng hoạt động mặc định của dịch vụ SSH nếu có thể (mặc định là cổng 22). Phát hiện và ngăn chặn các dấu hiệu tấn công brute-force vào dịch vụ SSH: đăng nhập nhiều lần liên tiếp vào một hoặc nhiều tài khoản với mật khẩu không chính xác. Giới hạn tần suất đăng nhập nếu có thể. Không cho phép đăng nhập trực tiếp vào tài khoản quản trị (root, administrator) qua SSH. Thay đổi cơ chế xác thực đăng nhập, dùng khóa cá nhân (private key) thay cho mật khẩu (password). Trong trường hợp buộc phải dùng cơ chế đăng nhập bằng mật khẩu thì đảm bảo mật khẩu phải an toàn, bí mật. Giới hạn chỉ cho phép những tài khoản cần thiết được đăng nhập vào dịch vụ SSH. Cân nhắc sử dụng thiết lập "chroot" để giới hạn các thư mục được phép truy xuất. Giới hạn các địa chỉ IP được kết nối và đăng nhập vào dịch vụ SSH. Trojans, Viruses, and Worms Trojans (con ngựa Thành Tơ Roa – Trolan House) Còn gọi là cuộc chiến giữa người Hy Lạp và người thành Tơ Roa. Phương pháp trên cũng chính là cách mà Trojan máy tính áp dụng. Trojan là một đoạn mã chương trình hoàn toàn không có tính chất lây lan. Đầu tiên, kẻ viết ra Trojan bằng cách nào đó lừa đối phương sử dụng chương trình của mình hoặc ghép Trojan đi cùng với các vius (đặc biệt là các virus dạng Worm) để cài đặt, xâm nhập lên máy nạn nhân. Đến thời điểm thuận lợi, Trojan sẽ ăn cắp thông tin quan trọng trên máy tính nạn nhân như số thẻ tín dụng, mật khẩu… để gửi về cho chủ nhân của nó ở trên mạng hoặc có thể ra tay xóa dữ liệu nếu được lập trình trước. Bên cạnh các Trooan ăn cắp thông tin truyền thống, còn có một số Trojan mang tính chất riêng biệt như sau: Backdoor: Loại Trojan sau khi được cài đặt vào máy nạn nhân sẽ tự mở ra một cổng dịch vụ cho phép hacker có thể kết nối từ xa đến máy nạn nhân và thực hiện lệnh mà hacker đưa ra. Phần mềm quảng cáo bất hợp pháp (Adware) và phần mềm gián điệp (Spyware): Gây khó chịu cho người sử dụng khi chúng cố tình thay đổi trang web mặc định, các trang tìm kiếm mặc định, hay liên tục tự động hiện ra các trang web quảng cáo khi bạn đang duyệt web. Viruses Virus là một đoạn chương trình hoặc chương trình có kích thước rất nhỏ dùng để phục vụ những mục đích không tốt. Cách phân loại: Dựa vào cơ chế hoạt động Virus nhân bản (Worm). Virus không nhân bản (logic boms, backdoor, zombie) Dựa vào cách thức tồn tại: Virus là đọa chương trình bám kí sinh vào các chương trình ứng dụng, tiện ích và chương trình hệ thống. Virus là một chương trình tồn tại độc lập và có khả năng tự thực thi. Tác hại của Virus: Sau khi lây nhiễm vào máy tính, Virus có thể làm máy tính hoạt động chậm, làm hỏng các file bị lây nhiễm, làm mất dữ liệu, gây lỗi hệ thống… Virus cũng có thể sử dụng máy tính của nạn nhân để quảng cáo bất hợp pháp, gửi thư rác, gây khó chịu cho người sử dụng, gây mất thông tin an ninh, đánh cắp thông tin cá nhân, thông tin tài khoản, số thẻ ứng dụng… Một số loại Virus còn lợi dụng máy tính nạn nhân để tạo mạng Botnet (mạng máy tính ma), dùng để tấn công hệ thống máy chủ, hệ thống website khác… Virus lây nhiễm như thế nào? Lây qua mạng nội bộ (mạng LAN). Lây qua các file tải về từ Internet. Lây qua email. Lây từ các ổ đĩa USB. Lợi dụng các lỗ hổng phần mềm, kể cả hệ điều hành để xâm nhập, lây nhiễm lên máy tính thông qua mạng. Dấu hiệu nhận biết máy tính bị nhiễm Virus? Truy xuất tập tin, mở các chương trình ứng dụng chậm. Khi duyệt web, có các trang web lạ tự động xuất hiện. Duyệt web chậm, nội dung các trang web hiển thị trình duyệt chậm. Các trang quảng cáo tự động hiện ra, màn hình Desktop bị thay đổi. Góc phải màn hình xuất hiện cảnh báo tam giác màu vàng: “Your computer is infected”, hoặc xuất hiện cửa sổ “Virus Alert”… Các file lạ tự động sinh ra khi bạn mở ổ đĩa USB. Xuất hiện các file có phần mở rộng .exe có tên trùng. Worms Là loại chương trình có khả năng tự sao chép và tự gửi bản sao chép đó từ máy tính này sang máy khác thông qua đưởng truyền mạng. Tại máy nạn nhân, Worm sẽ thực thi các chức năng theo ý đò xấu của người tạo ra nó. Worm kết hợp cả sức phá hoại của Virus, đặc tính âm thầm của Trojan và hơn hết là sự lây lan đáng sợ mà những kẻ viết Virus trang bị cho nó để trở thành một kẻ phá hoại với vũ khí tối tân. Ví dụ: Mellisa hay Love Letter. Với sự lây lan đáng sợ theo cấp số nhân, trong vài tiếng đồng hồ, đã có thể lây lan tới hàng chục triệu máy tính trên toàn cầu, làm tê liệt hàng loạt hệ thống máy chủ, làm ách tắc đường truyền Internet. Worm thường được cài thêm nhiều tính năng đặc biệt: Khả năng định cùng một ngày giờ và đòng loạt từ các máy nạn nhân tấn công vào một địa chỉ nào đó. Mang theo các BackDoor thả lên máy nạn nhân, cho phép chủ nhân của chúng truy cập vào máy nạn nhân và làm đủ mọi thứ như ngồi trên máy đó một cách bất hợp pháp. Ngày nay, khái niệm worrm đã được mở rộng, bao gồm: Các Virus lây lan qua mạng chia sẻ ngang hàng. Các Virus lây lan qua USB hay dịch vụ “chat”. Các Virus khai thác các lỗ hổng phần mềm để lây lan. Khái niệm liệt kê Liệt kê là gì? Là quá trình trích xuất tên người dùng, tên máy, tài nguyên mạng, các chia sẻ, và cá dịch vụ từ một hệ thống. Kỹ thuật này được tiến hành trong một môi trường mạng nội bộ. Hình 2.1 Các loại thông có được thông qua xâm nhập Kỹ thuật liệt kê Trích xuất tên người dùng sử dụng ID thư điện tử. Trích xuất tên người dùng sử dụng SNMP. Trích xuất tên người dùng từ Windows. Trích xuất thông tin sử dụng từ các mật khẩu mặc định. Chiếm Active Directory. Trích xuất thông tin sử dụng vùng thuyên chuyển DNS. Liệt kê NetBIOS NetBIOS là gì? NetBIOS (Network Basic Input Output System) là một giao thức cho các máy khách kết nối tới tài nguyên các máy trong mạng LAN, NetBIOS được thiết kế bởi tập đoàn máy tính IBM và Sytek. Nó được thiết kế trong môi trường mạng LAN để chia sẻ tài nguyên (như dùng chung các File, Folder, máy in và nhiều tài nguyên khác....Mô hình này rất giống mô hình mạng ngang hàng Peer to Peer). Thông thường thì một mạng dùng giao thức Netbios thường là Netbios Datagram Service (Port 138), Netbios Session Service (Port 139) hoặc cả 2.  Liệt kê NetBIOS Kẻ tấn công có được các liệt kê: Danh sách máy tính thuộc một miền mạng. Danh sách các chia sẻ của các máy tính trên một miền mạng. Các chính sách và các mật khẩu Các công cụ liệt kê NetBIOS SuperScan NetBios Enumertor Các công cụ liệt kê tài khoản người dùng Ps Tools Trong Ps Tools có rất nhìu công cụ nhỏ như: PsExec PsFile PsGetSid PsKill PsInfo PsList PsLoggedOn PsLogList Công cụ liệt kê hệ thống sử dụng các mật khẩu mặc định Trang web Liệt kê SNMP SNMP là gì? SNMP (Simple Network Management Protocol) là một tập hợp các giao thức không chỉ cho phép kiểm tra nhằm đảm bảo các thiết bị mạng như router, switch hay server đang vận hành mà còn vận hành một cách tối ưu, ngoài ra SNMP còn cho phép quản lý các thiết bị mạng từ xa. Một hệ thống sử dụng SNMP bao gồm 2 thành phần chính: Manager: Là một máy tính chạy chương trình quản lý mạng. Manager còn được gọi là một NMS (Network Management Station). Nhiệm vụ của một manager là truy vấn các agent và xử lý thông tin nhận được từ agent. Agent: Là một chương trình chạy trên thiết bị mạng cần được quản lý. Agent có thể là một chương trình riêng biệt (ví dụ như daemon trên Unix) hay được tích hợp vào hệ điều hành, ví dụ như IOS (Internetwork Operation System) của Cisco. Nhiệm vụ của agent là thông tin cho manager. Liệt kê SNMP Kẻ tấn công liệt kê SNMP để trích xuất thông tin về tai nguyên mạng chẳng hạn như: máy chủ, bộ định truyến, bộ chuyển mạch, các thiết bị, chia sẻ,..v..v., Sử dụng tập hợp chuỗi mặc định để trích xuất thông tin về một thiết bị sử dụng tập hợp chuỗi “public”. Ngoài ra còn có thể liệt kê được MIB (cơ sở dữ liệu ảo chứa thông tin các đối tượng mạng). Các công cụ liệt kê SNMP Getif SNMP MIB Browser. iReasoning MIB Browser. LoriotPro. Nsauditor Network Security Auditor. OidView SNMP MIB Browser. OpUtils Network Monitoring Toolset. SNMP SCANNER. SNScan. SoftPerfect Network Scanner. Solarwind Engineer’s Toolset. Liệt kê Unix/Linux Linux là gì? Linux là một hệ điều hành mã nguồn mở dạng Unix được xây dựng bởi Linus Torvalds và sau đó được phát triển bởi cộng đồng lập trình mã nguồn mở trên toàn thế giới thành nhiều nhiều phiên bản khác nhau. Phần lớn các phiên bản Linux đều miễn phí nhưng hiện nay có một số công ty đã cho ra đời một số phiên bản Linux thương mại. Khác với Windows, Linux được tạo thành bởi các modul hoạt động độc lập với nhau, người dùng có thể tự xây dựng kernel (nhân) cho hệ điều hành của mình bằng cách thêm những modul cần thiết vào. Vì vậy hệ thống Linux có tính linh hoạt cao hơn Windows. Thường Linux được sử dụng làm máy chủ nhiều hơn là làm máy trạm vì việc cấu hình cho Linux phức tạp hơn nhiều vì thường phải dùng command line để cấu hình chứ không có giao diện đồ hoạ như Windows. Hệ thống chạy trên Linux thường nhanh hơn và ổn định hơn là chạy trên Windows. Sở dĩ Linux chưa được dùng nhiều cho máy tính cá nhân vì nó hỗ trợ giao diện đồ hoạ chưa tốt. Liệt kê trên Unix Lệnh sử dụng để liệt kê tài nguyên mạng của Unix gồm những lệnh sau: Showmount: dùng để tìm các thư mục chia sẻ trên máy tính. [root$] showmount –e 19x.16x.xxx.xx Finger: dùng để liệt kê về người dùng và máy chủ, cho phép xem thời gian đăng nhập của người sử dụng thư mục, thời gian nhàn rỗi, vị trí văn phòng, và thời gian cuối cùng cả hai đều nhận được hoặc đọc thư. [root$] finger –l @target.hackme.com Rpcclient: dùng để điều tra được tên người dùng trên Linux và OS X. [root$] rpcclient $> netshareenum Rpcinfo (RPC): dùng liệt kê giao thức RPC (gọi hàm từ xa), giao thức RPC cho phép các ứng dụng giao tiếp với nhau qua mạng. [root$] rpcinfo –p 19x.16x.xxx.xx Công cụ liệt kê Linux Enum4linux. Liệt kê LDAP LDAP là gì? LDAP (Lightweight Directory Access Protocol) là giao thức sử dụng truy cập thư mục với Active Directory hoặc từ dịch vụ thư mục khác, và hoạt động ở port 389 Trong hệ thông sử dụng LDAP thư mục được định dạng phân cấp hợp lý, giống như quản lý các nhân viên trong một công ty. Nó được găn vào hệ thống tên miền và cho phép tích hợp các tìm kiếm nhanh và phân giải nhanh chóng các truy vấn. Các công cụ liệt kê LDAP Jxplorer. LDAP Account Manager. LDAP Admin tool Professional. LDAP Explorer Tool. Ldp.exe LEX – The LDAP Explorer. Softerra LDAP Administor. Symlabs LDAP Browser. Liệt kê NTP NTP là gì? NTP (Network Time Protocol) là giao thức thời gian mạng được thiết kế để đồng bộ thời gian của các máy tính nối mạng với nhau, và sử dụng port 123. Các máy tính trong mạng công cộng có thể chênh lệch nhau 10mili giây. Và chênh lệch 200 micro giây hoặc ít hơn trong mạng cục bộ ở điều kiện lý tưởng. Các công cụ liệt kê NTP NTP Server Scanner. PresenTense Time Server. PresenTense Time Client. LAN Time Analyser. NTP Server Checker. Time Watch. PresenTense NTP Auditor. NTP Time Server Monitor. AtomSync. Ngoài ra còn có các lệnh để liệt kê NTP như ntpdate, ntptrace, ntpdc, ntpq. Liệt kê SMTP SMTP là gì? SMTP (Simple Mail Transfer Protocol) là giao thức dùng để gửi thư điện tử giữa các máy tính với nhau và dùng port 25. Công cụ liệt kê SMTP NetScanTools Pro. Liệt kê DNS DNS là gì? DNS(Domain Name Server) là hệ thống dùng để phân giải tên miền dùng port 53. Liệt kê DNS Zone Transfer Sử dụng lệnh nslookup để xác đinh máy chủ DNS và hồ sơ của một mạng mục tiêu.Kẻ tấn công có thê thu thập được các thông tin giá trị như máy chủ DNS, tên máy chủ, tên người dùng,…v..v Sử dụng công cụ Men & Mice Suite Liệt kê các biện pháp phòng chống SNMP Xóa SNMP agent hoặc tắt dịch vụ SNMP Nâng cấp lên SNMP3, để mã hóa mật khẩu và tin nhắn. Thực hiện tùy chọn bảo mật Group Policy như thêm hạn chế các kết nối vô danh. DNS Cấu hình máy chủ DNS không cho phép DNS zone transfer đến các máy chủ không tin cậy. Đảm bảo các hồ sơ không xuất hiện tron tập tin DNS zone. Cung cấp chi tiết và liên hệ với quản trị mạng trong cơ sở dữ liệu để ngăn chặn tấn công. SMTP Cấu hình máy chủ SMTP bỏ qua các tin nhắn từ địa chỉ không rõ người nhận hoặc yêu cầu trả lời các thông tin sau: Chi tiết về hệ thống thư điện tử đang sử dụng (chẳng hạn như Sendmail hoặc MS Exchange). Địa chỉ IP nội bộ hoặc thông tin máy chủ. Bỏ qua email không rõ người nhận. LDAP Sử dụng NTLM hoặc chứng thực cơ bản để giới hạn truy cập, chỉ những người dùng mình biết mới được truy cập. Mặc định, lưu lượng truy cập của LDAP được truyền không đảm bảo nên sử dụng công nghệ SSL để mã hóa lưu lượng truy cập. Khóa tài khoản đối với những tài khoản khác biệt và không biết. SMB Hình 2.2 Vô hiệu hóa SMB Liệt kê thử nghiệm phòng chống Thử nghiệm phòng chống (Pen Testing) Là một quá trình kiểm tra về khả năng phòng chống của một máy chủ hoặc một hệ thống mạng trước các cuộc tấn công của hacker bằng cách giả lập các cuộc tấn công. Quá trình này nhằm kiểm tra khả năng phòng chống của hệ thống/ứng dụng đối với các cuộc tấn công, từ đó xác định các điểm yếu từ việc cấu hình hông chính xác hoặc sự thiếu xót của người quản trị mạng cũng như các lỗ hổng của hệ thống. Liệt kê các thử nghiệm phòng chống Liệt kê theo thứ tự quan trọng của máy chủ, tìm phạm vi mạng sử dụng công cụ như Whols Lookup và Graphical DNS Zones. Tính toán các mạng con bằng công cụ Subnet Mask Calculator. Tìm các máy chủ kết nối với internet sử dụng công cụ Nmap. Thực hiện quét các cổng để kiểm tra cổng đang mở trên các nút mạng, sử dụng công cụ Nmap. Thực hiện liệt kê DNS sử dụng lệnh nslookup và công cụ Men & Mice Suite. Thực hiện liệt kê NetBIOS sử dụng các công cụ: SuperScan, NetBIOS Enumerator, PsTools suite. Sử dụng các công cụ để liệt kê SNMP như OpUtils Network Monitoring Toolset, SolarWinds và SNScan. Sử dụng công cụ Enum4linux để liệt kê Unix/Linux. Sử dụng Jxplorer để liệt kê LDAP. Sử dụng các lệnh để liệt kê NTP như ntpdate, ntptrace, ntpdc, ntpq. Sử dụng các công cụ để liệt kê SMTP như Super Webscan và Power Email Collector. KẾT LUẬN Liệt kê là một trong ba bước để bắt đầu để tìm hiểu về hệ thống mạng muốn tấn công, nó giúp ta trích xuất được tên người dùng, tên máy chủ, tài nguyên mạng, chia sẻ, các thiết bị dịch vụ từ một hệ thống mạng. Sau khi liệt kê ta sẽ hình thành được cách tấn công, mục tiêu, đối tượng tấn công. Để không bị tấn công thì hệ thống của chúng ta sẽ phải cập nhập các bản vá lỗi, thiết lập các chính sách, đồng thời tiến hành mô phỏng tự tấn công hệ thống để tìm ra điểm yếu của hệ thống mạng, và trên hết là ý thức của người sử dụng mạng. Trong quá trình thực hiện đồ án này, em đã biết thêm về các cách thăm dò hệ thống mạng cũng như các biện pháp đối phó, giúp ích rất nhiều trong việc bảo vệ một hệ thống mạng.

Các file đính kèm theo tài liệu này:

  • docda_anninhmang_7581.doc
Luận văn liên quan