MỤC LỤC DANH MỤC CÁC KÝ HIỆU VÀ TỪ VIẾT TẮT 5 DANH MỤC HÌNH VẼ 6 LỜI NÓI ĐẦU 7 TÓM TẮT NỘI DUNG BÁO CÁO 8 CHƯƠNG 1. TỔNG QUAN VỀ CÁC LỖ HỔNG BẢO MẬT 9 1.1 . Khái niệm vể lỗ hổng bảo mật 9 1.2 . Phân loại lỗ hổng bảo mật 9 1.3. Ảnh hưởng của các lỗ hổng bảo mật trên mạng Internet 13 BẢO MẬT AN NINH MẠNG MÁY TÍNH 14 2.1. Giới thiệu về OpenVAS 14 2.2. Kiến trúc của OpenVAS 15 Hình 2.2 Kiến trúc Open VAS 15 2.2.1. OpenVAS Scanner 16 2.2.2. OpenVAS Manager 16 2.2.3. OpenVAS Adminitrator 16 2.3. Phương thức hoạt động của OpenVAS 17 2.3.1 Tổng quan về NVT ( Network Vulnerability Tests ) 17 Hình 2.3.1a Network Vulnerability Tests 17 Hình 2.3.1b Quy trình tạo NVT 18 2.3.2. Các giao thức chính trong OpenVAS 19 CHƯƠNG 3. CÀI ĐẶT VÀ QUÉT LỖ HỔNG BẢO MẬT VỚI OPENVAS 21 3.1 Quá trình cài đặt 21 3.2 Mô hình và kịch bản triển khai 24 3.2.2 Kịch bản 25 Openvas Server: 25 Một máy kali linux IP: 192.168.2.102 cài đặt openVAS làm server: 25 rootkali:openvassetup 25 Cài đặt đồng thời trình “client” trên máy kali linux này: 25 rootkali: openvasmkcertclient –n om –i 25 Tại trình duyệt truy cập 127.0.0.1:9392 để vào giao diện Green Bone Assistant(Trợ lý ảo Greenbone) để thực hiện scan tanget. 25 Tanget: 25 Thực hiện quét chính máy kali linux này. 25 Ngoài ra phân tích kết quả trên máy kali linux có IP: 192.168.2.4 là máy chủ ảo cung cấp dịch vụ https. 25 Cập nhật NVT (nếu có internet): Lưu ý thời gian cập nhật rất lâu có thể là 30’ đến 1h: 25 rootkali:openvasnvtsync 25 rootkali:openvasmd –rebuild 25 3.3 Kết quả thu được 25 KẾT LUẬN 29 TÀI LIỆU THAM KHẢO 30 CHƯƠNG 1. TỔNG QUAN VỀ CÁC LỖ HỔNG BẢO MẬT 1.1 . Khái niệm vể lỗ hổng bảo mật Các lỗ hổng bảo mật trên một hệ thống là các điểm yếu có thể tạo ra sự ngưng trệ của dịch vụ, thêm quyền đối với người sử dụng hoặc cho phép các truy nhập không hợp pháp vào hệ thống. Các lỗ hổng cũng có thể nằm ngay các dịch vụ cung cấp như sendmail, web, ftp ... Ngoài ra các lỗ hổng còn tồn tại ngay chính tại hệ điều hành như trong Windows NT, Windows 95, UNIX; hoặc trong các ứng dụng mà người sử dụng thương xuyên sử dụng như Word processing, Các hệ databases... 1.2 . Phân loại lỗ hổng bảo mật Có nhiều tổ chức khác nhau tiến hành phân loại các dạng lỗ hổng đặc biêt. Theo cách phân loại của Bộ quốc phòng Mỹ, các loại lỗ hổng bảo mật trên một hệ thống được chia như sau: Lỗ hổng loại C: các lỗ hổng loại này cho phép thực hiện các phương thức tấn công theo DoS (Dinal of Services Từ chối dịch vụ). Mức độ nguy hiểm thấp, chỉ ảnh hưởng tới chất lượng dịch vụ, có thể làm ngưng trệ, gián đoạn hệ thống; không làm phá hỏng dữ liệu hoặc đạt được quyền truy nhập bất hợp pháp. DoS là hình thức tấn công sử dụng các giao thức ở tầng Internet trong bộ giao thức TCPIP để làm hệ thống ngưng trệ dẫn đến tình trạng từ chối người sử dụng hợp pháp truy nhập hay sử dụng hệ thống. Một số lượng lớn các gói tin được gửi tới server trong khoảng thời gian liên tục làm cho hệ thống trở nên quá tải, kết quả là server đáp ứng chậm hoặc không thể đáp ứng các yêu cầu từ client gửi tới. Các dịch vụ có chứa đựng lỗ hổng cho phép thực hiện các cuộc tấn công DoS có thể được nâng cấp hoặc sửa chữa bằng các phiên bản mới hơn của các nhà cung cấp dịch vụ. Hiện nay, chưa có một giải pháp toàn diện nào để khắc phục các lỗ hổng loại này vì bản thân việc thiết kế giao thức ở tầng Internet (IP) nói riêng và bộ giao thức TCPIP đã chứa đựng những nguy cơ tiềm tàng của các lỗ hổng này. Tuy nhiên, mức độ nguy hiểm của các lỗ hổng loại này được xếp loại C; ít nguy hiểm vì chúng chỉ làm gián đoạn cung cấp dịch vụ của hệ thống trong một thời gian mà không làm nguy hại đến dữ liệu và người tấn công cũng không đạt được quyền truy nhập bất hợp pháp vào hệ thống. Một lỗ hổng loại C khác cũng thường thấy đó là các điểm yếu của dịch vụ cho phép thực hiện tấn công làm ngưng trệ hệ thống của người sử dụng cuối; Chủ yếu với hình thức tấn công này là sử dụng dịch vụ Web. Giả sử: trên một Web Server có những trang Web trong đó có chứa các đoạn mã Java hoặc JavaScripts, làm treo hệ thống của người sử dụng trình duyệt Web của Netscape bằng các bước sau: Viết các đoạn mã để nhận biết được Web Browers sử dụng Netscape Nếu sử dụng Netscape, sẽ tạo một vòng lặp vô thời hạn, sinh ra vô số các cửa sổ, trong mỗi cửa sổ đó nối đến các Web Server khác nhau. Với một hình thức tấn công đơn giản này, có thể làm treo hệ thống. Đây cùng là một hình thức tấn công kiểu DoS. Người sử dụng trong trường hợp này chỉ có thể khởi động lại hệ thống. Một lỗ hổng loại C khác cũng thường gặp đối với các hệ thống mail là không xây dựng các cơ chế antirelay (chống relay) cho phép thực hiện các hành động spam mail. Như chúng ta đã biết, cơ chế hoạt động của dịch vụ thư điện tử là lưu và chuyển tiếp; một số hệ thống mail không có các xác thực khi người dùng gửi thư, dẫn đến tình trạng các đối tượng tấn công lợi dụng các máy chủ mail này để thực hiện spam mail; Spam mail là hành động nhằm tê liệt dịch vụ mail của hệ thống bằng cách gửi một số lượng lớn các messages tới một địa chỉ không xác định, vì máy chủ mail luôn phải tốn năng lực đi tìm những địa chỉ không có thực dẫn đến tình trạng ngưng trệ dịch vụ. Số lượng các messages có thể sinh ra từ các chương trình làm bom thư rất phổ biến trên mạng Internet. Lổ hổng loại B: Các lỗ hổng cho phép người sử dụng có thêm các quyền trên hệ thống mà không cần thực hiện kiểm tra tính hợp lệ. Mức độ nguy hiểm trung bình; Những lỗ hổng này thường có trong các ứng dụng trên hệ thống; có thể dẫn đến mất hoặc lộ thông tin yêu cầu bảo mật. Lỗ hổng loại này có mức độ nguy hiểm hơn lỗ hổng loại C, cho phép người sử dụng nội bộ có thể chiếm được quyền cao hơn hoặc truy nhập không hợp pháp. Những lỗ hổng loại này thường xuất hiện trong các dịch vụ trên hệ thống. Người sử dụng local được hiểu là người đã có quyền truy nhập vào hệ thống với một số quyền hạn nhất định. Ta sẽ phân tích một số lỗ hổng loại B thường xuất hiện trong các ứng dụng : Sendmail: là một chương trình được sử dụng rất phổ biến trên hệ thống UNIX để thực hiện gửi thư điện tử cho những người sử dụng trong nội bộ mạng. Thông thường, sendmail là một daemon chạy ở chế độ nền được kích hoạt khi khởi động hệ thống. Trong trạng thái, hoạt động, sendmail mở port 25 đợi một yêu cầu tới sẽ thực hiện gửi hoặc chuyển tiếp thư. Sendmail khi được kích hoạt sẽ chạy dưới quyền root hoặc quyền tương ứng (vì liên quan đến các hành động tạo file và ghi log file). Lợi dụng đặc điểm này và một số lỗ hổng trong các đoạn mã của sendmail, mà các đối tượng tấn công có thể dùng sendmail để đạt được quyền root trên hệ thống. Để khắc phục lỗi của sendmail cần tham gia các nhóm tin về bảo mật; vì sendmail là chương trình có khá nhiều lỗi; nhưng cũng có nhiều người sử dụng nên các lỗ hổng bảo mật thường được phát hiện và khắc phục nhanh chóng. Khi phát hiện lỗ hổng trong sendmail cần nâng cấp, thay thế phiên bản sendmail đang sử dụng. Một loạt các vấn đề khác về quyền sử dụng chương trình trên UNIX cũng thường gây nên các lỗ hổng loại B. Vì trên hệ thống UNIX, một chương trình có thể được thực thi với 2 khả năng: Người chủ sở hữu chương trình đó kích hoạt chạy Người mang quyền của người chủ sở hữu chủ nhân của file đó Các loại lỗ hổng loại B khác: một dạng khác của lỗ hổng loại B xảy ra đối với các chương trình có mã nguồn viết bằng C. Những chương trình viết bằng C thường sử dụng một vùng đệm là một vùng trong bộ nhớ sử dụng để lưu dữ liệu trước khi xử lý. Những người lập trình thường sử dụng vùng đệm trong bộ nhớ trước khi gán một khoảng không gian bộ nhớ cho từng khối dữ liệu. Ví dụ, người sử dụng viết chương trình nhập trường tên người sử dụng; qui định trường này dài 20 ký tự. Do đó họ sẽ khai báo: char first_name 20; Với khai báo này, cho phép người sử dụng nhập vào tối đa 20 ký tự. Khi nhập dữ liệu, trước tiên dữ liệu được lưu ở vùng đệm; nếu người sử dụng nhập vào 35 ký tự; sẽ xảy ra hiện tượng tràn vùng đệm và kết quả 15 ký tự dư thừa sẽ nằm ở một vị trí không kiểm soát được trong bộ nhớ. Đối với những người tấn công, có thể lợi dụng lỗ hổng này để nhập vào những ký tự đặc biệt, để thực thi một số lệnh đặc biệt trên hệ thống. Thông thường, lỗ hổng này thường được lợi dụng bởi những người sử dụng trên hệ thống để đạt được quyền root không hợp lệ. Việc kiểm soát chặt chẽ cấu hình hệ thống và các chương trình sẽ hạn chế được các lỗ hổng loại B. Lỗ hổng loại A: Các lỗ hổng này cho phép người sử dụng ở ngoài có thể truy nhập vào hệ thống bất hợp pháp. Lỗ hổng rất nguy hiểm, có thể làm phá hủy toàn bộ hệ thống. Các lỗ hổng loại A có mức độ rất nguy hiểm; đe dọa tính toàn vẹn và bảo mật của hệ thống. Các lỗ hổng loại này thường xuất hiện ở những hệ thống quản trị yếu kém hoặc không kiểm soát được cấu hình mạng. Một ví dụ thường thấy là trên nhiều hệ thống sử dụng Web Server là Apache, Đối với Web Server này thường cấu hình thư mục mặc định để chạy các scripts là cgibin; trong đó có một Scripts được viết sẵn để thử hoạt động của apache là testcgi. Đối với các phiên bản cũ của Apache (trước version 1.1), có dòng sau trong file testcgi: echo QUERY_STRING = QUERY_STRING Biến môi trường QUERY_STRING do không được đặt trong có dấu (quote) nên khi phía client thưc hiện một yêu cầu trong đó chuỗi ký tự gửi đến gồm một số ký tự đặc biệt; ví dụ ký tự , web server sẽ trả về nội dung của toàn bộ thư mục hiện thời (là các thư mục chứa các scipts cgi). Người sử dụng có thể nhìn thấy toàn bộ nội dung các file trong thư mục hiện thời trên hệ thống server. Một ví dụ khác cũng xảy ra tương tự đối với các Web server chạy trên hệ điều hành Novell; Các web server này có một scripts là convert.bas, chạy scripts này cho phép đọc toàn bộ nội dung các files trên hệ thống. Những lỗ hổng loại này hết sức nguy hiểm vì nó đã tồn tại sẵn có trên phần mềm sử dụng; người quản trị nếu không hiểu sâu về dịch vụ và phần mềm sử dụng sẽ có thể bỏ qua những điểm yếu này. Đối với những hệ thống cũ, thường xuyên phải kiểm tra các thông báo của các nhóm tin về bảo mật trên mạng để phát hiện những lỗ hổng loại này. Một loạt các chương trình phiên bản cũ thường sử dụng có những lỗ hổng loại A như: FTP, Gopher, Telnet, Sendmail, ARP, finger... 1.3. Ảnh hưởng của các lỗ hổng bảo mật trên mạng Internet Phần trình bày ở trên đã phân tích một số trường hợp có những lỗ hổng bảo mật, những người tấn công có thể lợi dụng những lỗ hổng này để tạo ra những lỗ hổng khác tạo thành một chuỗi mắt xích những lỗ hổng. Ví dụ, một người muốn xâm nhập vào hệ thống mà anh ta không có tài khoản truy nhập hợp lệ trên hệ thống đó. Trong trường hợp này, trước tiên anh ta sẽ tìm ra các điểm yếu trên hệ thống, hoặc từ các chính sách bảo mật, hoặc sử dụng các công cụ dò sét thông tin trên hệ thống đó để đạt được quyền truy nhập vào hệ thống. Sau khi mục tiêu như nhất đã đạt được, anh ta có thể tiếp tục tìm hiểu các dịch vụ trên hệ thống, nắm bắt được các điểm yếu và thực hiện các hành động tấn công tinh vi hơn. Tuy nhiên, có phải bất kỳ lỗ hổng bảo mật nào cùng nguy hiểm đến hệ thống hay không? Có rất nhiều thông báo liên quan đến lỗ hổng bảo mật trên mạng Internet, hầu hết trong số đó là các lỗ hổng loại C, và không đặc biệt nguy hiểm đối với hệ thống. Ví dụ, khi những lỗ hổng về sendmail được thông báo trên mạng, không phải ngay lập tức ảnh hưởng trên toàn bộ hệ thống. Khi những thông báo về lỗ hổng được khẳng định chắc chắn, các nhóm tin sẽ đưa ra một số phương pháp để khắc phục hệ thống. CHƯƠNG 2. OPENVAS VÀ KHẢ NĂNG ỨNG DỤNG VÀO BẢO MẬT AN NINH MẠNG MÁY TÍNH 2.1. Giới thiệu về OpenVAS Open Vulnerability Assessment System(OpenVAS) là hệ thống đánh giá lỗ hổng mở, là một nền tảng máy quét bảo mật mạng miễn phí, với hầu hết những thành phần được cấp phép dưới GNU General Public License (GNU GPL). Thành phần chính là sẵn có thông qua một vài gói Linux hay một thiết bị ảo tải về cho việc kiểm thử đánh giá những mục đích. Mặc dù máy quét của chính nó không làm việc trên thiết bị Windows, họ sẽ cung cấp những máy khách cho Windows. Thành phần chính của OpenVAS là máy quét bảo mật, chỉ có thể chạy trên Linux. Nó không làm việc thật sự với việc quét và nhận một nguồn cung cấp dữ liệu cập nhật hàng ngày về kiểm thử lỗ hổng mạng (Network Vulnerability Tests viết tắt NVT) hay hơn 33.000 trong tổng số. Quản lý OpenVAS kiểm soát các máy quét và cung cấp các tin tức. Quản trị OpenVAS cung cấp một giao diện dòng lệnh và có thể hoạt động đầy đủ như dịch vụ daemon, cung cấp sự quản lý người dùng và quản lý nguồn cung cấp dữ liệu. Có một máy khách đôi để phục vụ như là một GUI hay CLI. Greenbone Security Assistant (GSA) cung cấp một GUI dựa trên web, Desktop Security GreenBone (GSD) là một máy khách để bàn dựa trên quá trình chạy những hệ điều hành khác nhau, bao gồm Linux và Windows. Và OpenVAS CLI cung cấp một giao diện dòng lệnh. OpenVAS không phải là một máy quét nhanh nhất và sớm nhất để cài đặt và sử dụng, nhưng nó là một trong những tính năng phong phú nhất , một máy bảo mật công nghệ thông tin rộng mà bạn có thể tìm thấy miễn phí. Nó quét hàng ngàn lỗ hổng , hỗ trợ các nhiệm vụ quét đồng thời, và lên lịch quét. Nó cũng cung cấp những chú ý và sai trong việc quản lý vị trí những kết quả quét. Tuy nhiên , nó yêu cầu Linux ít nhất cho thành phần chính. OpenVAS software bao gồm hai thành phần chính là openVAS client và OpenVAS server. OpenVAS server : đây là thành phần cốt lõi của OpenVAS. Nó chứa các chức năng được sử dụng để quét một lượng lớn các máy chủ ở tốc độ cao, công việc quét sẽ luôn được bắt nguồn từ các máy chủ OpenVASserver đang chạy. Và OpenVASClient có chức năng kiểm soát OpenVAS Server, sử lý các kết quả quét và hiển thị chúng cho người dùng. 2.2. Kiến trúc của OpenVAS Hình 2.2 Kiến trúc Open VAS 2.2.1. OpenVAS Scanner Là một máy quét thực hiện kiểm tra các lỗ hổng bảo mật, nó được cập nhật hằng ngày thông qua nguồn cấp dữ liệu. Các tính năng : Quét đồng thời nhiều máy chủ cùng một lúc. Hỗ trợ OpenVAS Transfer Protocol. Hỗ trợ SSL cho OTP. Hỗ trợ WMI (tùy chọn) một công cụ quản lí các hệ thống máy chủ và máy để bàn trong môi trường doanh nghiệp. 2.2.2. OpenVAS Manager Hợp nhất các chức năng kiểm tra bảo mật riêng lẻ thành một hệ thống quản lí bao gồm đầy đủ các tính năng. Quản lí các trung tâm điều khiển dữ liệu SQL nội bộ, nơi tất cả các kết quả quét và cấu hình được lưu trữ. Tính năng: OpenVAS Manager Protocol Cấu hình quét và đưa ra các kết quả quét dựa vào cơ sở dữ liệu SQL. Hỗ trợ SSL cho OMP. Quản lí nhiều máy quét đồng thời thực hiện nhiều nhiệm vụ. Hỗ trợ tính năng quét theo lịch trình, tự động linh hoạt theo trạng thái của một nhiệm vụ quét. 2.2.3. OpenVAS Adminitrator Hoạt động như một công cụ dòng lênh, quản lí người dùng và quản lí nguồn cấp dữ liệu. Tính năng tổng quan: OpenVAS Adminitrator Protocol Hỗ trợ SSL cho giao thức OAP. Hỗ trợ tất cả các lệnh cũng như thông số dòng lệnh. 2.3. Phương thức hoạt động của OpenVAS 2.3.1 Tổng quan về NVT ( Network Vulnerability Tests ) a. Giới thiệu về NVT Hình 2.3.1a Network Vulnerability Tests Duy trì một nguồn cấp cho việc kiểm tra và đánh giá các lỗ hổng bảo mật của mạng đó là NVT. Cho việc đồng bộ hóa trực tuyến ta sử dụng lệnh openvasnvtsync để update các NVT mới nhất từ các dịch vụ . Với việc cập nhật không trực tuyến thì cần một tập tin lưu trữ ( khoảng 14Mbyte ) . Đến năm 2014 nó đã được hơn 35.000 NVTs. Các tập tin OpenVAS NVT Feed được kí bởi “OpenVASL Transfer Integrity” b. Quy trình tạo NVT Hình 2.3.1b Quy trình tạo NVT 1. Đánh giá các lỗ hổng bảo mật. 2. Lựa chọn các bảo mật tối ưu đưa vào NVT 3. Thực hiện NVT. 4. Nếu không đạt tiêu chuẩn thì bàn giao lại cho nhóm phát triển 5. Phát hành và phân phối. c. Cấu hình NVT
BAN CƠ YẾU CHÍNH PHỦ HỌC VIỆN KỸ THUẬT MẬT MÃ - - MƠN HỌC: AN TỒN INTERNET VÀ THƯƠNG MẠI ĐIỆN TỬ BÁO CÁO: TÌM HIỂU CHƯƠNG TRÌNH OPENVAS VÀ KHẢ NĂNG ỨNG DỤNG VÀO BẢO ĐẢM AN NINH MẠNG MÁY TÍNH Giảng viên: Phan Tấn Tồn Sinh viên thực hiện: Phạm Minh Khơi Trương Đức Thắng Đinh Thị Giang Thang Hoàng Thị Cúc Lớp AT13_ATM Hồ Chí Minh, 10/2020 HỌC VIỆN KỸ THUẬT MẬT MÃ KHOA AN TỒN THƠNG TIN BÁO CÁO BÀI TẬP LỚN NỘI DUNG: TÌM HIỂU CHƯƠNG TRÌNH OPENVAS VÀ KHẢ NĂNG ỨNG DỤNG VÀO BẢO ĐẢM AN NINH MẠNG MÁY TÍNH Nhận xét giảng viên:……………………………………… ………………………………………………………………… ………………………………………………………………… ………………………………………………………………… ………………………………………………………………… Điểm báo cáo:…………………………………………………… Xác nhận của giảng viên MỤC LỤC 3.1 Quá trình cài đặt 17 3.2 Mơ hình kịch triển khai 20 3.2.2 Kịch 21 Openvas Server: 21 Một máy kali linux IP: 192.168.2.102 cài đặt openVAS làm server: .21 root@kali:-#openvas-setup .21 Cài đặt đồng thời trình “client” máy kali linux này: 21 root@kali:-# openvas-mkcert-client –n om –i 21 Tại trình duyệt truy cập 127.0.0.1:9392 để vào giao diện Green Bone Assistant(Trợ lý ảo Greenbone) để thực scan tanget 21 Tanget: 21 Thực quét máy kali linux 21 Ngoài phân tích kết máy kali linux có IP: 192.168.2.4 máy chủ ảo cung cấp dịch vụ https .21 Cập nhật NVT (nếu có internet): Lưu ý thời gian cập nhật lâu 30’ đến 1h: .21 root@kali:-#openvas-nvt-sync 21 root@kali:-#openvasmd –rebuild .21 3.3 Kết thu 21 KẾT LUẬN DANH MỤC CÁC KÝ HIỆU VÀ TỪ VIẾT TẮT Viết tắt OpenVAS Đầy đủ Open Vulnerability Assessement System Giải nghĩa Phân tích lỗ hổng hệ thống mở IP Internet Protocol Giao thức Internet TCP Transmission Control Protocol Giao thức kiểm soát truyền tải Dos Dinal of Services Từ chối dịch vụ GNU/ GPL General Public License Giấy phép nguồn mở GUI Graphical User Interface Giao diện đồ họa người dùng CLI Command Line Interface Giao diện dòng lệnh SSL Secure Sockets Layer Tầng bảo mật OTP One Time Password Mật lần NVT Network Vulnerability Tests Kiểm thử lỗ hổng mạng DANH MỤC HÌNH VẼ 3.1 Q trình cài đặt .17 Chương trình OpenVAS khả ứng dụng vào bảo đảm an ninh mạng máy tính 3.2 Mơ hình kịch triển khai 20 3.2.2 Kịch .21 Openvas Server: 21 Một máy kali linux IP: 192.168.2.102 cài đặt openVAS làm server: 21 root@kali:-#openvas-setup 21 Cài đặt đồng thời trình “client” máy kali linux này: .21 root@kali:-# openvas-mkcert-client –n om –i .21 Tại trình duyệt truy cập 127.0.0.1:9392 để vào giao diện Green Bone Assistant(Trợ lý ảo Greenbone) để thực scan tanget .21 Tanget: 21 Thực quét máy kali linux .21 Ngồi phân tích kết máy kali linux có IP: 192.168.2.4 máy chủ ảo cung cấp dịch vụ https 21 Cập nhật NVT (nếu có internet): Lưu ý thời gian cập nhật lâu 30’ đến 1h: 21 root@kali:-#openvas-nvt-sync .21 root@kali:-#openvasmd –rebuild 21 3.3 Kết thu 21 KẾT LUẬN Chương trình OpenVAS khả ứng dụng vào bảo đảm an ninh mạng máy tính LỜI NÓI ĐẦU Để bảo mật thiết kế web khỏi hacker virus, điều bạn cần làm kiểm tra mức độ bảo mật an toàn web Cách hiệu để làm việc thông qua việc sử dụng công cụ quét lỗ hổng bảo mật web để tìm vấn đề cần giải Bảo mật thiết kế web quan trọng thiết kế web bán hàng hay website chứa nhiều thông tin người dùng trở thành đối tượng công hacker, gây nhiều thiệt hại không lường Các lỗ hổng phổ biến SQL Injection XSS (Cross Site Scripting) Do vậy, để bảo vệ ứng dụng web, thiết kế web mình, cần phải tìm lỗ hổng trước hacker tìm thấy nó, cố gắng sử dụng số cơng cụ có liên quan để tìm kiếm sửa chữa Có nhiều sản phẩm thương mại miễn phí để hỗ trợ bạn việc thử nghiệm bảo mật thiết kế web Một số cơng cụ miễn phí xem xét là: Netsparker, OpenVAS, OWASP, W3AF, Skipfish, Nikto, Websecurify… Trong báo cáo nhóm tìm hiểu OpenVAS - công cụ quét lỗ hổng bảo mật mạnh mẽ tích hợp backtrack dành cho nhà quản trị Hiện OpenVAS quét 50.000 lỗ hổng Công cụ tạo nhánh Nessus Nessus trở nên thương mại hóa Chương trình OpenVAS khả ứng dụng vào bảo đảm an ninh mạng máy tính TĨM TẮT NỘI DUNG BÁO CÁO Báo cáo bao gồm chương với nội dung sau: Chương 1: Tổng quan các lỗ hổng bảo mật Chương 2: Open VAS khả ứng dụng vào bảo đảm an ninh mạng máy tính Chương 3: Demo Chương trình OpenVAS khả ứng dụng vào bảo đảm an ninh mạng máy tính CHƯƠNG TỔNG QUAN VỀ CÁC LỖ HỔNG BẢO MẬT 1.1 Khái niệm vể lỗ hổng bảo mật Các lỗ hổng bảo mật hệ thống điểm yếu tạo ngưng trệ dịch vụ, thêm quyền người sử dụng cho phép truy nhập không hợp pháp vào hệ thống Các lỗ hổng nằm dịch vụ cung cấp sendmail, web, ftp Ngồi lỗ hổng cịn tồn tại hệ điều hành Windows NT, Windows 95, UNIX; ứng dụng mà người sử dụng thương xuyên sử dụng Word processing, Các hệ databases 1.2 Phân loại lỗ hổng bảo mật Có nhiều tổ chức khác tiến hành phân loại dạng lỗ hổng đặc biêt Theo cách phân loại Bộ quốc phòng Mỹ, loại lỗ hổng bảo mật hệ thống chia sau: - Lỗ hổng loại C: lỗ hổng loại cho phép thực phương thức công theo DoS (Dinal of Services - Từ chối dịch vụ) Mức độ nguy hiểm thấp, ảnh hưởng tới chất lượng dịch vụ, làm ngưng trệ, gián đoạn hệ thống; không làm phá hỏng liệu đạt quyền truy nhập bất hợp pháp Chương trình OpenVAS khả ứng dụng vào bảo đảm an ninh mạng máy tính DoS hình thức cơng sử dụng giao thức tầng Internet giao thức TCP/IP để làm hệ thống ngưng trệ dẫn đến tình trạng từ chối người sử dụng hợp pháp truy nhập hay sử dụng hệ thống Một số lượng lớn gói tin gửi tới server khoảng thời gian liên tục làm cho hệ thống trở nên tải, kết server đáp ứng chậm đáp ứng yêu cầu từ client gửi tới Các dịch vụ có chứa đựng lỗ hổng cho phép thực cơng DoS nâng cấp sửa chữa phiên nhà cung cấp dịch vụ Hiện nay, chưa có giải pháp toàn diện để khắc phục lỗ hổng loại thân việc thiết kế giao thức tầng Internet (IP) nói riêng giao thức TCP/IP chứa đựng nguy tiềm tàng lỗ hổng Tuy nhiên, mức độ nguy hiểm lỗ hổng loại xếp loại C; nguy hiểm chúng làm gián đoạn cung cấp dịch vụ hệ thống thời gian mà không làm nguy hại đến liệu người công không đạt quyền truy nhập bất hợp pháp vào hệ thống Một lỗ hổng loại C khác thường thấy điểm yếu dịch vụ cho phép thực công làm ngưng trệ hệ thống người sử dụng cuối; Chủ yếu với hình thức cơng sử dụng dịch vụ Web Giả sử: Web Server có trang Web có chứa đoạn mã Java JavaScripts, làm "treo" hệ thống người sử dụng trình duyệt Web Netscape bước sau: - Viết đoạn mã để nhận biết Web Browers sử dụng Netscape - Nếu sử dụng Netscape, tạo vịng lặp vơ thời hạn, sinh vơ số cửa sổ, cửa sổ nối đến Web Server khác Với hình thức cơng đơn giản này, làm treo hệ thống Đây hình thức cơng kiểu DoS Người sử dụng trường hợp khởi động lại hệ thống Chương trình OpenVAS khả ứng dụng vào bảo đảm an ninh mạng máy tính Một lỗ hổng loại C khác thường gặp hệ thống mail không xây dựng chế anti-relay (chống relay) cho phép thực hành động spam mail Như biết, chế hoạt động dịch vụ thư điện tử lưu chuyển tiếp; số hệ thống mail khơng có xác thực người dùng gửi thư, dẫn đến tình trạng đối tượng công lợi dụng máy chủ mail để thực spam mail; Spam mail hành động nhằm tê liệt dịch vụ mail hệ thống cách gửi số lượng lớn messages tới địa khơng xác định, máy chủ mail ln phải tốn lực tìm địa khơng có thực dẫn đến tình trạng ngưng trệ dịch vụ Số lượng messages sinh từ chương trình làm bom thư phổ biến mạng Internet - Lổ hổng loại B: Các lỗ hổng cho phép người sử dụng có thêm quyền hệ thống mà khơng cần thực kiểm tra tính hợp lệ Mức độ nguy hiểm trung bình; Những lỗ hổng thường có ứng dụng hệ thống; dẫn đến lộ thơng tin u cầu bảo mật Lỗ hổng loại có mức độ nguy hiểm lỗ hổng loại C, cho phép người sử dụng nội chiếm quyền cao truy nhập không hợp pháp Những lỗ hổng loại thường xuất dịch vụ hệ thống Người sử dụng local hiểu người có quyền truy nhập vào hệ thống với số quyền hạn định Ta phân tích số lỗ hổng loại B thường xuất ứng dụng : Sendmail: chương trình sử dụng phổ biến hệ thống UNIX để thực gửi thư điện tử cho người sử dụng nội mạng Thông thường, sendmail daemon chạy chế độ kích hoạt khởi động hệ thống Trong trạng thái, hoạt động, sendmail mở port 25 đợi yêu cầu tới thực gửi chuyển tiếp thư Sendmail kích hoạt chạy quyền root quyền tương ứng (vì liên quan đến hành động tạo file ghi log file) Lợi dụng Chương trình OpenVAS khả ứng dụng vào bảo đảm an ninh mạng máy tính Hình 2.2 Kiến trúc Open VAS 2.2.1 OpenVAS Scanner Là máy quét thực kiểm tra lỗ hổng bảo mật, cập nhật ngày thơng qua nguồn cấp liệu Các tính : - Quét đồng thời nhiều máy chủ lúc - Hỗ trợ OpenVAS Transfer Protocol - Hỗ trợ SSL cho OTP - Hỗ trợ WMI (tùy chọn) - cơng cụ quản lí hệ thống máy chủ máy để bàn môi trường doanh nghiệp 2.2.2 OpenVAS Manager Hợp chức kiểm tra bảo mật riêng lẻ thành hệ thống quản lí bao gồm đầy đủ tính Quản lí trung tâm điều khiển liệu SQL nội bộ, nơi tất kết quét cấu hình lưu trữ Tính năng: 12 Chương trình OpenVAS khả ứng dụng vào bảo đảm an ninh mạng máy tính - OpenVAS Manager Protocol - Cấu hình quét đưa kết quét dựa vào sở liệu SQL - Hỗ trợ SSL cho OMP - Quản lí nhiều máy quét đồng thời thực nhiều nhiệm vụ - Hỗ trợ tính qt theo lịch trình, tự động linh hoạt theo trạng thái nhiệm vụ quét 2.2.3 OpenVAS Adminitrator Hoạt động công cụ dịng lênh, quản lí người dùng quản lí nguồn cấp liệu Tính tổng quan: - OpenVAS Adminitrator Protocol - Hỗ trợ SSL cho giao thức OAP - Hỗ trợ tất lệnh thông số dòng lệnh 2.3 Phương thức hoạt động của OpenVAS 2.3.1 Tổng quan NVT ( Network Vulnerability Tests ) a Giới thiệu NVT Hình 2.3.1a Network Vulnerability Tests 13 Chương trình OpenVAS khả ứng dụng vào bảo đảm an ninh mạng máy tính Duy trì nguồn cấp cho việc kiểm tra đánh giá lỗ hổng bảo mật mạng NVT Cho việc đồng hóa trực tuyến ta sử dụng lệnh openvasnvt-sync để update NVT từ dịch vụ Với việc cập nhật không trực tuyến cần tập tin lưu trữ ( khoảng 14Mbyte ) Đến năm 2014 35.000 NVTs Các tập tin OpenVAS NVT Feed kí “OpenVASL Transfer Integrity” b Quy trình tạo NVT Hình 2.3.1b Quy trình tạo NVT 14 Chương trình OpenVAS khả ứng dụng vào bảo đảm an ninh mạng máy tính Đánh giá lỗ hổng bảo mật Lựa chọn bảo mật tối ưu đưa vào NVT Thực NVT Nếu không đạt tiêu chuẩn bàn giao lại cho nhóm phát triển Phát hành phân phối c Cấu hình NVT Để làm việc NVT FEED giữ cập nhật NVT ta cần phải cấu hình chúng mơi trường làm việc Chữ kí thích hợp cấu hình máy chủ OpenVAS Scanner Sau đủ điều kiện ban đầu cấu hình: + Kiểm tra cấu hình lệnh:openvas-nvt-sync + Chạy lệnh đồng hóa : # openvas-nvt-sync + Nếu muốn update chạy lệnh : “openvas-update” 2.3.2 Các giao thức OpenVAS OpenVAS Transfer Protocol: Các client mô-đun máy chủ OpenVAS cài đặt thông qua OpenVAS Transfer Protocol (OTP) Phiên trước OpenVAS sử dụng Nessus Transport Protocol (NTP) thừa kế từ Nessus, để giải thiếu sót NTP tạo điều kiện thuận lợi cho việc cải tiến mô-đun OpenVAS sử dụng giao thức Hiện OpenVAS dùng phiên 3.2.5 Có thay đổi khác biệt hai phiên NTP 2.1 với OpenVAS 1.0 Những người trước có kinh nghiệm làm việc với NTP dễ dàng trình làm việc với OpenVAS OpenVAS Manager Protocol: 15 Chương trình OpenVAS khả ứng dụng vào bảo đảm an ninh mạng máy tính Đây giao thức cho phép giao tiếp client ứng dụng máy chủ Cho phép quản lí đặc quyền phía máy chủ, liệu người dùng nhiệm vụ, báo cáo… Khi chuyển đổi giao thức thích hợp để dịch giao thức OMP thành OTP Nó cịn rờii khỏi OpenVAS quản trị (openvasd) mà không bị thay đổi OpenVAS Adminnitrator Protocol: Là giao thức cho phép client kiểm soát thiết lập máy chủ OpenVAS Cấu hình máy chủ địi hỏi người quản trị máy chủ để truy cập vào máy chủ thông qua shell thực thi lệnh shell sửa đổi tập tin cấu hình tay Điều dẫn đến việc sai khác máy chủ OAP đời để giải vấn đề Mục đích xây dựng: cho phép phân tích cú pháp dễ dàng nhanh chóng giao thức giúp người dùng dễ tiến hành mục đích gỡ lỗi phát triển Trở thành giao thức thống để tránh chậm trễ khơng cần thiết q trình giao tiếp Cho phép tích hợp dễ dàng vào giao thức khác phương tiện truyền thơng 16 Chương trình OpenVAS khả ứng dụng vào bảo đảm an ninh mạng máy tính CHƯƠNG CÀI ĐẶT VÀ QUÉT LỖ HỔNG BẢO MẬT VỚI OPENVAS 3.1 Quá trình cài đặt Kali cài đặt 200 công cụ tùy theo nhu cầu đánh giá Những công cụ xếp phân loại rõ ràng OpenVAS tảng dành cho việc phát dò quét lỗ hổng Nó tạo nhánh Nessus Nessus trở nên thương mại hóa Việc cài đặt openVAS cách theo đường dẫn sau: B1: App //Kali Linux//Vulnerability Analysis//Open VAS//openvas-setup B2: Đợi trình cài đặt hồn tất 17 Chương trình OpenVAS khả ứng dụng vào bảo đảm an ninh mạng máy tính B3: Tại trình duyệt nhập địa 127.0.0.1:9392 để vào giao diện quản trị Đăng nhập với User: admin passwork lúc cài đặt bước 18 Chương trình OpenVAS khả ứng dụng vào bảo đảm an ninh mạng máy tính Giao diện quản trị Greenbone Security Assistant Tạo phiên làm việc openVAS 19 Chương trình OpenVAS khả ứng dụng vào bảo đảm an ninh mạng máy tính 3.2 Mơ hình kịch triển khai 3.2.1 Mơ hình 20 Chương trình OpenVAS khả ứng dụng vào bảo đảm an ninh mạng máy tính 3.2.2 Kịch Openvas Server: Một máy kali linux IP: 192.168.2.102 cài đặt openVAS làm server: root@kali:-#openvas-setup Cài đặt đồng thời trình “client” máy kali linux này: root@kali:-# openvas-mkcert-client –n om –i Tại trình duyệt truy cập 127.0.0.1:9392 để vào giao diện Green Bone Assistant(Trợ lý ảo Greenbone) để thực scan tanget Tanget: Thực quét máy kali linux Ngồi phân tích kết máy kali linux có IP: 192.168.2.4 máy chủ ảo cung cấp dịch vụ https Cập nhật NVT (nếu có internet): Lưu ý thời gian cập nhật lâu 30’ đến 1h: root@kali:-#openvas-nvt-sync root@kali:-#openvasmd –rebuild 3.3 Kết thu DEMO với máy chủ https có địa ip:192.168.2.102 Dưới mô tả tất vấn đề tìm thấy Các vấn đề với mức độ nguy hiểm "Debug" khơng hiển thị Báo cáo có tất 45 kết lựa chọn lọc mô tả Ở chúng em phân tích lỗi mức độ cao Các lỗi cịn lại chúng em gửi file đính kèm cho 21 Chương trình OpenVAS khả ứng dụng vào bảo đảm an ninh mạng máy tính Tóm tắt kết quả: Port Summary for Host 192.168.2.102 Service (Port) https (443/tcp) general/tcp http (80/tcp) general/CPE-T general/HOST-T general/icmp Threat Level High Medium Medium Log Log Log Các vấn đề tìm thấy: NVT: (OID: 1.3.6.1.4.1.25623.1.0.103936) Threat: High Port: https (443 / tcp) Mô tả: OpenSSL sử dụng phiên bị tổn thương Phát tổn thương: Gửi yêu cầu TLS crafted đặc biệt kiểm tra phản ứng Vulnerability Insight: Việc triển khai TLS DTLS không xử lý cách 22 Chương trình OpenVAS khả ứng dụng vào bảo đảm an ninh mạng máy tính ... 18 Chương trình OpenVAS khả ứng dụng vào bảo đảm an ninh mạng máy tính Giao diện quản trị Greenbone Security Assistant Tạo phiên làm việc openVAS 19 Chương trình OpenVAS khả ứng dụng vào bảo đảm. .. gồm chương với nội dung sau: Chương 1: Tổng quan các lỗ hổng bảo mật Chương 2: Open VAS khả ứng dụng vào bảo đảm an ninh mạng máy tính Chương 3: Demo Chương trình OpenVAS khả ứng dụng vào bảo. .. vào bảo đảm an ninh mạng máy tính 3.2 Mơ hình kịch triển khai 3.2.1 Mơ hình 20 Chương trình OpenVAS khả ứng dụng vào bảo đảm an ninh mạng máy tính 3.2.2 Kịch Openvas Server: Một máy kali linux