1. Trang chủ
  2. » Giáo Dục - Đào Tạo

Nghiên cứu một số dạng lỗ hổng bảo mật, công cụ phát hiện chúng và ứng dụng để kiểm thử an ninh trên trang web truongnha com

63 45 0

Đ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

Cấu trúc

  • Hình 1.1: Thố ng kê cá c loạ i tấ n công

  • Hình 2.1: Tấ n công SYN

  • Hình 2.3: Phân loạ i tấ n công DDOS

  • Hình 2.4: Tấn công TCP SYN

  • Hình 2.5: Mô hình tấn công XSS

  • Hình 2.6: Mô hình tấ n công Reflected XSS

  • Hình 2.7: DOM-base XSS

  • Bảng 2.1: Các mẫu đầu vào

    • Hình 3.1: Thực nghiệm công cụ Netsparket

    •  Thay đổi nội dung của trang web bên trong trình duyệt của nạn nhân

    • Hình 3.2: Thực nghiệm công cụ Websecurify trên ứng dụng

    • Hình 3.3: Kết quả khi chạy công cụ Websecurify

    • Hình 3.4: Cách thức làm việc của Acunetix

    • Hình 3.5: Thố ng kê các công cụ năm 2012 của Benchmark

    • Hình 3.6: Ví dụ về Acunetix

    • Hình 3.7: Kế t quả chạ y Acunetix

    • Hình 3.8: Phân tích chi tiế t kế t quả

    • Hình 3.9: Thự c nghiệ m khi lỗ i xả y ra

    • Hình 3.10: Ví dụ khi chạy WebScarab

    • Hình 3.11: Thự c nghiệ m công cụ Havij

    • Hình 3.12: Vị trí thay thế giá trị tấn công

    • Hình 3.13: Các giá trị thay thế trong thẻ Positions

    • Hình 3.14: Kế t quả sau khi tấ n công

    • Hình 3.15: Ví dụ về công cụ XSS-ME

      • b) SQL Injection-Me

    • Hình 3.16: Mố i quan hệ cá c Plugin trong công cụ W3af

    • Hình 3.17: Tấn công DOS

    • CHƯƠNG 4 THỰC NGHIỆM VÀ PHÂN TÍCH KẾT QUẢ

      • Hình 4.1: Kế t quả chạ y công cụ Acunetix

      • Hình 4.2: Khở i độ ng BurpSuite

      • Hình 4.3: Cấ u hình Proxy

      • Hình 4.5: Kết quả quét trên phần mềm Trường Nhà

      • Hình 4.7: Kế t quả chạ y công cụ Skipfish

      • Hình 4.9: Công cụ W3af bậ t cá c plugin

      • Hình 4.10: Thông tin cá c lỗ hổ ng và cá c lỗ i trên công cụ W3af

      • Hình 4.11: Kế t quả cá c lỗ hổ ng đượ c tìm thấ y bở i W3af

      • Hình 4.12: Kế t quả chạ y công cụ Websecurify

  • Bảng 4.1: Danh sá ch cá c lỗ hổ ng trên cá c công cụ

    • TÀI LIỆU THAM KHẢO

Nội dung

5 MỤC LỤC LỜ I CAM ĐOAN LỜ I CẢ M ƠN DANH MỤ C BẢ NG BIỂU DANH MỤ C HÌNH VẼ CHƯƠNG GIỚI THIỆU 11 1.1 Tính cấp thiết đề tài 11 1.2 Mục tiêu đề tài 11 1.3 Bố cục luận văn 12 1.4 Tổ ng quan vấ n đề bả o mậ t nề n Web 12 1.5 Mộ t số nguyên nhân phổ biế n cho ứ ng dụ ng Web mấ t tính an tồ n 13 1.6 Thố ng kê cá c loạ i tấ n công 13 CHƯƠNG MỘT SỐ NGUY CƠ AN NINH THƯỜNG GẶP 15 2.1 Tấn công DoS 15 2.1.1 Giới thiệu DoS 15 2.1.2 Mục đích các dạng công DoS 15 2.1.3 Tấ n công DDoS 18 2.2 Cross-Site Scripting (XSS) 20 2.2.1 Tổng quan XSS 20 2.2.2 Ảnh hưởng XSS gây 21 2.2.3 Phân loại 21 2.2.4 Cách phát sâu XSS 24 2.2.5 Các phương pháp ngăn chặn lỗ hổng bảo mật XSS 24 2.3 Tổng quan SQL Injection 25 2.3.1 Định nghĩa 25 2.3.2 Các kỹ thuật công SQL Injection 25 2.3.3 Những ảnh hưởng gây SQL Injection 28 2.3.4 Các phương pháp phịng chống SQL Injection phở biến 29 CHƯƠNG MỘT SỐ CÔNG CỤ PHÁT HIỆN NGUY CƠ AN NINH 30 3.1 Netsparker 30 3.2 Websecurify 31 3.3 Acunetix 34 3.4 WebScarab 42 3.5 Havij 43 3.6 Burp Suite 45 3.7 Wapiti 47 3.8 Exploit-Me 48 3.9 W3af 49 3.10 Công cụ công DoS 51 CHƯƠNG THỰC NGHIỆM VÀ PHÂN TÍCH KẾT QUẢ 54 4.1 Acunetix 54 4.1.1 Thực nghiệm 54 4.1.2 Phân tích thực nghiệm 54 4.2 BurpSuite 55 4.2.1 Thực nghiệm 55 4.2.2 Phân tích thực nghiệm 57 4.3 Netsparker 58 4.3.1 Thực nghiệm 58 4.3.2 Phân tích thực nghiệm 58 4.4 Skipfish 59 4.4.1 Thực nghiệm 59 4.4.2 Phân tích thực nghiệm 61 4.5 W3af 62 4.5.1 Thực nghiệm 62 4.5.2 Phân tích thực nghiệm 62 4.6 Websecurify 64 4.6.1 Thực nghiệm 64 4.6.2 Phân tích thực nghiệm 65 4.7 Tổng hợp đánh giá 65 CHƯƠNG KẾT LUẬN VÀ HƯỚ NG PHÁ T TRIỂ N 69 TÀI LIỆU THAM KHẢO 70 DANH MỤC BẢNG BIỂU Bảng 2.1: Các mẫu đầu vào .26 Bảng 4.1: Danh sá ch cá c lỗ hổ ng cá c công cụ 66 DANH MỤC HÌNH VẼ Hình 1.1: Thố ng kê cá c loạ i tấ n công 14 Hình 2.1: Tấ n công SYN 16 Hình 2.2: Tấ n công Smurf 17 Hình 2.3: Phân loạ i tấ n công DDOS 18 Hình 2.4: Tấn công TCP SYN 20 Hình 2.5: Mơ hình công XSS 22 Hình 2.6: Mơ hình tấ n cơng Reflected XSS 23 Hình 2.7: DOM-base XSS 24 Hình 3.1: Thực nghiệm công cụ Netsparket 30 Hình 3.2: Thực nghiệm cơng cụ Websecurify ứng dụng 33 Hình 3.3: Kết quả chạy cơng cụ Websecurify 34 Hình 3.4: Cách thức làm việc Acunetix 35 Hình 3.5: Thố ng kê cá c công cụ năm 2012 Benchmark 36 Hình 3.6: Ví dụ Acunetix 40 Hình 3.7: Kế t quả chạ y Acunetix 40 Hình 3.8: Phân tích chi tiế t kế t quả 41 Hình 3.9: Thự c nghiệ m lỗ i xả y 41 Hình 3.10: Ví dụ chạy WebScarab 43 Hình 3.11: Thự c nghiệ m cơng cụ Havij 44 Hình 3.12: Vị trí thay giá trị công 46 Hình 3.13: Các giá trị thay thẻ Positions 46 Hình 3.14: Kế t quả sau tấ n cơng 47 Hình 3.15: Ví dụ cơng cụ XSS-ME 49 Hình 3.16: Mố i quan hệ cá c Plugin công cụ W3af 51 Hình 3.17: Tấn công DOS 52 Hình 4.1: Kế t quả chạ y công cụ Acunetix 54 Hình 4.2: Khở i độ ng BurpSuite 56 Hình 4.3: Cấ u hình Proxy 56 Hình 4.4: Chạy ứng dụng cho BurpSuite 57 Hình 4.5: Kết quả quét phần mềm Trường Nhà 57 Hình 4.6: Thự c nghiệ m cơng cụ Netsparker 58 Hình 4.8: Chi tiế t thơng tin cả nh bá o củ a công cụ Skipfish 61 Hình 4.7: Kế t quả chạ y công cụ Skipfish 61 Hình 4.9: Cơng cụ W3af bậ t cá c plugin 62 Hình 4.10: Thơng tin cá c lỗ hổ ng cá c lỗ i công cụ W3af 63 Hình 4.11: Kế t quả cá c lỗ hở ng đượ c tìm thấ y bở i W3af 64 Hình 4.12: Kế t quả chạ y cơng cụ Websecurify 65 DANH MỤC CÁC CHỮ VIẾT TẮT Từ viết tắt Từ viết đầy đủ Ý nghĩa API Application Programming Interface Giao diện lập trình ứng dụng AJAX Asynchronous JavaScript and XML JavaScript XML không đồng bộ CSS Cascading Style Sheets Tập tin định kiểu theo tầng CPU Central Processing Unit Đơn vị xử lý thông tin XSS Cross-Site Scripting Kỹ thuật công kịch bản liên trang DoS Denial Of Service Tƣ̀ chố i dịch vụ DDoS Distributed Denial of Service Dạng công từ chối dịch vụ phân tán DOM Document Object Model Là định dạng có cấu trúc sử dụng để đại diện tài liệu trình duyệt HTML HyperText Markup Language Ngơn ngữ đánh dấu văn bản PHP Hypertext Preprocessor Ngôn ngữ lập trình kịch bản HTTP Hypertext Transfer Protocol Giao thức truyền tải siêu văn bản LAN Local Area Network Mạng máy tính cục bợ OWASP Open Web Application Security Project Dự á n bả o mậ t cá c ứ ng dụ ng Web mở SQL Structured Query Language Ngôn ngữ truy vấn có tính cấu trúc ASP Transmission Control Protocol Giao thức điều khiển truyền vận URI Uniform Resource Identifier Chuỗi định danh tài nguyên mạng URL Uniform Resource Locator Định vị tài nguyên mặt địa WAN Wide Area Network Mạng truyền liệu diện rộng 10 11 CHƯƠNG GIỚI THIỆU Nội dung chương trình bày tính cấp thiết, mục tiêu, bố cục đề tài tìm hiểu chung vấn đề bảo mật anh ninh Web, đưa vài nguyên nhân gây an toàn an ninh ứng dụng Web lỗ hổng thường thấy nhiều 1.1 Tính cấp thiết đề tài Vớ i phá t triể n rấ t nhanh củ a cá c ứ ng dụ ng nề n Web, việc bảo mật an ninh an tồn cho các trang Web mợt lĩnh vực đặc biệt quan đư ợc truy cập lúc nơi Tuy vậ y không phả i bấ t kỳ nhà phá t triể n phầ n mề m Web nà o cũng tâm đến việc bảo mật anh ninh , vậ y nhiều ứng dụng Web tồn tại với các nguy an ninh/an toàn/bảo mật (security vularability) gây nhiề u thiệ t hạ i bị cơng Tuy nhiên việ c tìm kiế m phá t hiệ n cá c nguy an ninh thủ cơng khá khó khăn có nhiều nguy an ninh phát các cơng cụ tự đợ ng Bên cạnh đó, các loại nguy an ninh khơng ít, cũng có nhiều công cụ tự động phát nguy bảo mật nên người phát triển phần mềm muốn kiểm tra mức đợ an ninh an tồn trang web cũng gặp phải nhiều khó khăn Chính đề tà i nghiên u m ột số kiể u tấ n công ph ổ biến cá c công cụ tự độ ng phá t hiệ n nguy an ninh an toàn đ ồng thời thử nghiệm chúng vào phần mềm “Trường Nhà” trang web http://truongnha.com Ứng dụng “Trường Nhà” một trang Web quản lý trường học phổ thông xây dựng một đội phát triển phần mềm Chính vậy, đề tài thử nghiệm vào ứng dụng để đưa lỗ hổng một vài khuyến cáo cho đội phát triển phần mềm từ kiểm tra tính đắn kết quả cũng các khuyến cáo luận văn đưa Qua việc nghiên cứu thử nghiệm này, đề tài đưa các nguy bảo mật công cụ để phát hiện/kiểm tra cho phần mềm Trường Nhà Từ để tài cũng tởng quát hóa đưa các khuyến cáo cho các nhóm phát triển phần mềm nói chung đặc biệt sử dụng các công nghệ tương tự Trường Nhà (sử dụng khung ứng dụng Django) các nguy bảo mật các công cụ kiểm tra để các đơn vị phát triển phần mềm tham khảo, áp dụng vào cá c ứ ng dụ ng Web Đề tài hy vọng giúp người phát triển phần mềm có thêm hiểu biết an ninh an tồn cũng các công cụ nên sử dụng để tăng cường anh ninh, bảo mật cho hệ thống Web 1.2 Mục tiêu đề tài Mục tiêu đề tài trình bày tở ng quan cập nhật các nguy bảo mật, các cách thức công các cách phát hi ện lỗ hổ ng bả o mậ t cá c hệ thố ng Web sâu o một vài loại xâu Web nổi tiếng nguy hiểm Từ luậ n văn khả o sá t mợ t số công cụ phần mềm nhằm phát các nguy bảo 12 mật để giúp người lập trình ngăn chặ n cơng chúng, giảm thiểu khả các ứng dụng web bị ảnh hưởng lỗ hởng Cuố i cù ng luậ n văn sâu o phát lỗ hổng cho ứng dụng hệ thống quản lý trường học : http://truongnha.com dự a cá c cơng cụ 1.3 Bố cục luận văn Luận văn bao gồm các chương sau: Chương 1: Tổng quan an toàn bảo mật Web: Chương giới thiệu vấn đề bảo mật, vai trò quan trọng bảo mật web cá c nguy gây bở i việ c thiế u an n bả o mậ t cho ứ ng dụ ng web Chương 2: Tấn cơng an tồn thơng tin ứng dụng Web: Chương mô tả một vài kỹ thuật cơng an tồn Web phở biến (DoS/DDoS, XSS, SQL injection), ví dụ cách thức cơng chúng Chương 3: Giới thiệu vài cơng cụ tìm kiếm lỗ hổng bảo mật: Chương nà y giới thiệu một vài cơng cụ hỗ trợ việc tìm kiếm lỗ hởng Web Bên cạnh đó, chương cũng nêu lên cá ch thứ c m việ c cá c lỗ hổ ng mà cá c ứ ng dụng nà y phá t hiệ n ra, đưa nhận xét các công cụ Chương 4: Thực nghiệm phân tích kết quả: Thực nghiệm chạy một số công cụ chương vào việc tìm các lỗ hởng cho ứng dụng Web http://truongnha.com phân tích cách thức phương pháp chạy để tìm lỗi Chương cũng đưa một vài khuyến cáo cho các nhà phát triển phần mềm Chương 5: Kết luận hướng phát triển: Chương nà y trình bày nhữ ng kế t quả đạt luận văn hướng phát triển tương lai 1.4 Tổ ng quan vấ n đề bảo mật Web Ngày nay, vớ i phát triển mạnh mẽ công nghệ thông tin đặc biệt đờ i hà ng loạ t củ a cá c trang Web mang l ại cho người nhiều tiện ích cho cá c doanh nghiệ p Các hoạt động giao dịch trực tuyến thương mại điện tử hay toán trực tuyến ngày phổ biến đượ c thự c hiệ n thông qua cá c ứ ng dụ ng Web Ở đâu, mợt máy tính có nối mạng internet, ngườ i thực các giao dịch mợt cách thuận tiện nhanh chóng Mọi thông tin củ a ngườ i dù ng đượ c lưu Web Nếu thơng tin b ị sửa đổi với ý đồ xấu, câu truy vấn sở liệu bị thay đởi cấu trúc, từ kết quả trả khác với ý muốn người lập trình, hoặ c nhữ ng kẻ lạ c danh đá nh cắ p thông tin , gây lên nhữ ng thiệ t hạ i lớ n Có thể thấy việc xây dựng các trang Web động cho phép xây dựng câu truy vấn động từ đầu vào người sử dụng cung cấp, chúng tiềm ẩn mợt nguy an tồn cao khơng có mợt chế kiểm tra liệu đầu vào mợt cách chặt chẽ Tóm lại, các ứng dụng Web ln ln tiềm ần có nguy bị công các kẻ công vớ i ý đồ xấ u, vậ y nên vấ n đề bả o mậ t nề n Web cấ p thiế t 13 1.5 Mộ t số nguyên nhân phổ biế n cho ứng dụ ng Web mấ t tính an tồ n Khi mợ t ứ ng dụ ng Web mấ t tính an tồ n , điề u tương đương vớ i việ c trang web có khả tấ n công gây thiệ t hạ i bở i nhữ ng ý đồ xấ u củ a kẻ tấ n công Để khắ c phụ c cho cá c lỗ hở ng đó, việ c trướ c tiên cầ n m tìm nguyên nhân Dướ i mộ t i nguyên nhân gây nhữ ng điể m yế u cho ứ ng dụ ng Web: o Thiế u nhậ n thứ c an n cho ứ ng dụ ng Web củ a ngườ i dù ng ngườ i lậ p trình o Thiế u cá c giải pháp bảo mật sẵn có o Sự thú c é p sả n phẩ m nhanh chó ng , dẫ n đế n cá c nhà lậ p trình m nhanh ẩ u , quên việ c á p dụ ng cá c giả i phá p cho bả o mậ t 1.6 Thố ng kê cá c loạ i tấ n công Vấ n đề an tồn bảo mật cho mợt ứng dụng Web một vấn đề quan trọng, ảnh hưởng tới chất lượng an ninh cả mợt hệ thống quan Với tình trạng tại hàng loạt các kẻ công lợi dụng sơ hở phần mềm để công vào hệ thống nhằm phá hủy, ăn cắp liệu việc làm lại cấp bách cần thiết Theo thống kê Web Hacking Incident Database năm tƣ̀ 1999 tớ i 2011, nhìn thấy tỷ lệ các phương thức công web theo dạng XSS, DoS SQL injection đứ ng đầ u so sá nh sau [12]: 14 Hình 1.1: Thố ng kê cá c loạ i tấ n cơng Nhìn biểu đồ Hình 1.1 thấy nhiều loại cơng tồn tại có cơng liên trang (XSS), công từ chối dịch vụ (Denial of Service) SQL Injection chủ yếu Tiếp theo nghiên cứu chi tiết loại công chương một vài lỗ hởng ý hơn, chúng miêu tả tại chương thực thi các công cụ ứng dụng “Trường Nhà” CHƯƠNG MỘT SỐ NGUY CƠ AN NINH THƯỜNG GẶP Chương mô tả vài kỹ thuật cơng an tồn Web phổ biến như: DoS/DDoS, XSS, SQL injection, đưa ví dụ cách thức công chúng 2.1 Tấn công DoS 2.1.1 Giới thiệu DoS Một cách thức cơng trang web có từ lâu đến tồn tại gây nhiều thiệt hại cho các tổ chức mạng mà các kẻ công thường sử dụng nhiều dạng công từ chối dịch vụ (DoS) DoS một phương pháp cơng làm tê liệt hồn tồn máy chủ, khiến người dùng truy cập 53 Hình 4.2: Khở i đợ ng BurpSuite Trước tiên phải cấu hình proxy ứng dụng trình duyệt: Hình 4.3: Cấ u hình Proxy Và sau chỉnh sửa “intercept is on” bắt đầu tới trình duyệt ứng dụng: 54 Hình 4.4: Chạy ứng dụng cho BurpSuite 4.2.2 Phân tích thực nghiệm Khi cấu hình xong, yêu cầu gửi từ trình duyệt đến server bị chặn burpsuite tiến hành chỉnh sửa các yêu cầu thực thi cơng nhờ chức Intruder sau: Giá trị đầu Request response tƣơng ứng v ới các đầu vào Hình 4.5: Kết quả quét phần mềm Trường Nhà Danh sách thị các giá trị đầu vào cùng với kết quả phản hồi, giúp biết REQUEST gửi gì, phản hồi nhận lại từ biết có khả lỗi đâu 4.3 Netsparker 4.3.1 Thực nghiệm 55 Chúng ta chạy ứng dụng http://truongnha.com: Hình 4.6: Thƣc̣ nghiệm cơng cụ Netsparker 4.3.2 Phân tích thực nghiệm Netsperker tìm mợt loạt các vấn đề trang web này, khả mà kẻ cơng lợi dụng như: mật truyền ngang qua HTTP, khả tự động hiển thị một vài trường quan trọng trường mật khẩu, hay trường Credit Card, Django Stack Trace Disclosure …Hình giao diện cơng cụ qt Nó hiển thị tồn bợ thông tin “site map”- tức thông tin bố cục trang web bạn, “Scan information” – thông tin tốc độ quét, các yêu cầu lỗi…, “Issues”- tất cả các vấn đề bảo mật mà Netsperker phát ra, hiển thị rõ lỗi, mức đợ quan trọng bạn nhấn vào Lỗ hở ng xả y tạ i: http://truongnha.com/admin/ • Lỗi mật truyền ngang qua HTTP: Khi tồn tại lỗi xảy ra, kẻ cơng lợi dụng làm chặn lại giao thông mạng ăn trộm chứng thực người sử dụng hợp pháp Để tránh lỗ hổng xảy ra, các liệu nhảy cảm, hay các form trang nên truyền ngang qua HTTPs thay truyền qua HTTP khơng an tồn • Lỗ hổng Django Stack Trace Disclosure: khả hiển thị chi tiết trang web lỗi tại ứng dụng web mục tiêu Xảy tại: http://truongnha.com/register/ Ảnh hưởng tồn tại lỗ hởng này, kẻ cơng có thể: • Lấy thơng tin phiên bản Django Python • 56 Sử dụng kiểu sở liệu, tên người sử dụng sở liệu đó, tên sở liệu thời • Thơng tin chi tiết cấu hình dự án Django • Biết đường dẫn tới các tệp bên hệ thống • Các ngoại lệ từ mã nguồn, biến địa phương các giá trị biến Những thơng tin giúp cho kẻ cơng chống lại hệ thống, khai thác các lỗ hổng hệ thống dựa các thông tin biết, từ thực thi khai thác chúng, dẫn đến phá hủy hệ thống Để khắc phục lỗi này, nhà phát triển phần mềm nên thay đởi cấu hình Django là: thay đổi lựa chọn DEBUG tới false Bên cạ nh có rấ t nhiề u nhữ ng lỗ i vớ i mứ c độ thấ p như: • Lỗ i bên má y chủ : Máy chủ đáp trả lại một HTTP với trạng thái 500, điề u lỗ i phía m áy chủ Thơng tin nà y sau đượ c phân tích mợ t cách cẩn thận Sự ả nh hưở ng củ a lỗ hổ ng nà y phụ thuộ c o nhiề u điề u kiệ n có khả gây tấ n công dướ i dạ ng SQL Injection Để ngăn chặ n lỗ hổ ng nà y xả y ra, nhà phát triển phần mềm nên xem xét lại mã chương trình để ngăn chặn lỗi không mong đợi , để không làm lộ thơng tin ngồ i , các lỗi nên xử lý phía máy chủ Lỗ hở ng nà y xả y tạ i : http://truongnha.com/static/bootstrap/ • Cookie không đượ c đá nh dấ u HTTPOnly : HTTPOnly mộ t chế bả o mậ t cookie Nế u mộ t cookie đượ c đá nh dấ u HTTPOnly cookie khơng có khả truy cậ p đượ c tƣ̀ má y khá ch Do có khả tạ o thêm mộ t tầ ng bả o vệ chố ng lạ i tấ n công XSS Trang web nà y có khả bị kẻ tấ n công truy cậ p cookie mộ t cá ch dễ dà ng Để ngăn chặ n cá c lỗ i nà y , nhà phát triể n phầ n mề m nên đá nh dấ u cookie vớ i cờ HTTPOnly để tạ o mộ t tầng bả o mậ t chố ng lạ i XSS cho cá c trang Web củ a 4.4 Skipfish 4.4.1 Thực nghiệm Skipfish mợt cơng cụ dị tìm bảo mật cho các ứng dụng Web mợt cách hiệu quả Nó chuẩn bị một tập các trang tương tác với cho trang đích đến việc thực quét đệ quy dị tìm dựa các thư mục Việc xếp kết quả sau đưa với một đầu từ một số các hoạt động kiểm tra an ninh Bản báo cáo cuối cùng thực công cụ coi điều bản cho dự đánh giá anh ninh các ứng dụng Web chuyên nghiệp Skipfish một công cụ mã nguồn mở với tính năng: 57 • Ưu điểm o Tốc độ cao: Sử dụng code C, xử lý tối ưu HTTP cao, dấu vết CPU thấp – đạt 2000 yêu cầu giây một cách dễ dàng với phản hồi đích đến mạng LAN/WAN, 500 yêu cầu cho giây mạng Internet, 7000 yêu cầu chống lại các thực thể địa phương, với một CPU đơn giản Kết hợp các luồng đơn lẻ, không đồng bộ mạng I/O mơ hình xử lý liệu, loại bỏ quản lý bộ nhớ, kế hoạch đại diện không hiệu quả một số đa luồng máy khách o Dễ học dễ sử dụng: Skipfish mang tính thích nghi mức đợ tin tưởng cao Chuẩn đóan để hỗ trợ nhiều tảng Web trang có áp dụng nhiều cơng nghệ, với khả tự học o Logic bảo mật tiên tiến: chất lượng cao, khả lỗi thấp, kiểm tra các kiểu bảo mật khác nhau, khả phát một miền lỗi tinh vi, bao gồm cả lỗi Blind injection o Tạo kết quả dạng HTML tốt o Phát lỗ hổng dạng XSRF (Cross-Site Request Forgery)  Nhược điểm: o Không hỗ trợ các Plugin o Không phát lỗ hổng dạng: reflected stored XSS  Tóm lại: Cơng cụ tiện ích cho người quen sử dụng dịng lệnh hỗ trợ việc tạo báo cáo dạng HTML hữu ích Tuy nhiên khơng thể nắm bắt các tham số yêu cầu ứng dụng Công cụ dùng các môi trường: Linux, FreeBSD, MacOS X Windows (Cygwin) Dướ i thự c nghiệ m chương trình chạ y trang http://truongnha.com Hình 4.7 kết quả việc chạy cơng cụ Skipfish , thể hiệ n nhữ ng cả nh bá o, thông tin mứ c đợ nguy hiể m nhiề u , công cụ tới hệ thống web Tuy nhiên kế t quả tìm mợt cảnh báo 58 Hình 4.7: Kế t quả chạ y công cụ Skipfish Để xem chi tiế t củ a cả nh bá o nà y , ngườ i dù ng mở kế t quả dướ i dạ ng tệ p html Hình 4.8 sau: Hình 4.8: Chi tiế t thông tin cả nh bá o củ a cơng cụ Skipfish 4.4.2 Phân tích thực nghiệm 59 Công cụ nà y lưu kế t quả má y , báo cáo kết quả xem dạng tệ p HTML kế t quả Đối với ứng dụng quản lý trường học, cơng cụ tìm có mợ t lỗ i DNS 4.5 W3af 4.5.1 Thực nghiệm Thự c hiệ n việ c tìm kiế m lỗ hở ng an ninh cho ứ ng dụ ng Web : http://truongnha.com, thu kết quả sau: Hình 4.9: Công cụ W3af bậ t cá c plugin 4.5.2 Phân tích thực nghiệm Kết quả cơng cụ hiển thị bản “Log” 60 Hình 4.10: Thơng tin cá c lỗ hổ ng cá c lỗ i cơng cụ W3af Bên cạ nh đó, cơng cụ nà y cò n thể hiệ n đượ c biể u đồ xuấ t hiệ n cá c điể m yế u Kế t quả việc tìm kiếm các lỗ hổng phụ thuộc vào việc chọn các plugin phầ n “scan config” Và nhìn thấy kết quả bên cợt “Result” sau: 61 Hình 4.11: Kế t quả cá c lỗ hở ng đượ c tìm thấ y bở i W3af Chúng ta cùng phân tích các lỗ hởng sau đây: • collectCookies: cơng cụ tìm rấ t nhiề u cookies, điề u đồ ng nghĩa vớ i việ c kẻ tấ n cơng cũ ng dù ng cơng cụ nà y o việ c tìm cookies đăng nhậ p đượ c o hệ thố ng để chỉnh sƣ̉ a điể m hay thao tá c tù y theo ý củ a họ • serverHeader: thông số củ a má y chủ bị lộ , cung cấ p thêm thông tin cho kẻ tấ n cơng Nó tìm thấy tại u cầu ID • Xsrf (get_xsrf): Phát lỗi Cross Site Request Forgery ứng dụng • Error500: mợ t lỗ i củ a ứ ng dụ ng nà y không đượ c xá c nhậ n tìm thấy tại: http://truongnha.com/_vti_inf.html" 4.6 Websecurify 4.6.1 Thực nghiệm Chúng ta thực thi quét trang web với công cụ Websecurify có kết quả sau: 62 Hình 4.12: Kế t quả chạ y cơng cụ Websecurify 4.6.2 Phân tích thực nghiệm Dướ i cá c lỗ hổ ng đượ c tìm thấ y bở i cơng cụ nà y • Error Disclosure: lợ thơng tin nà y, kẻ công biết thêm ứng dụng, phiên bản cấu hình tại ứng dụng giúp ích cho vi ệc khai thác các điểm yếu • Autocomplete Enable: nhữ ng trườ ng thông tin nhạ y cả m đượ c hiể n thị , kẻ tấ n cơng truy cậ p o bợ đệ m lấ y đượ c cá c thơng tin tấ n cơng bở i cá c thông tin mậ t khẩ u, cookies… • Email Disclosure: Máy chủ ứng dụng bị lộ địa email Điề u nà y gây mộ t cuộ c spam thư, hay lộ thông tin củ a ngườ i dù ng nà o • Banner Disclosure: Máy chủ ứng dụng bị lộ các thông tin phiên bản kiể u 4.7 Tổng hợp đánh giá Chương nà y thự c hiệ n việ c kiể m thƣ̉ an ninh cho ứ ng dụ ng quản lý trường học phổ thông mang tên “Trường Nhà” (http://truongnha.com) phát các lỗ hổng bảo mậ t giú p ứ ng dụ ng nà y giả m thiể u phầ n nà o cá c thiệ t hạ i gây Dướ i danh sá ch cá c công cụ thự c thi ứ ng dụ ng “Trường Nhà”, các lỗ hổng đư ợc miêu tả chi tiết thực thi công cụ các phần thực nghiệm trên: 63 Bảng 4.1: Danh sá ch cá c lỗ hổ ng cá c cơng cụ Ngồi các cơng cụ liệt kê với các lỗ hổng trên, luận văn cũng thực thi áp dụng các công cụ khác như: Skipfish Burp suite giai đoạn sau lỗ hổng nhà phát triển vá lỗ hởng khơng cịn Dướ i mợ t i kh uyế n cá o đố i vớ i cá c nhà phá t triể n phầ n mề m quá trình tơi làm luận văn, hi vọ ng giú p cá c ứ ng dụ ng Web giả m thiể u đượ c lỗ hổ ng bảo mật anh ninh cho trang Web mình: o Đả m bả o rằ ng bấ t kỳ nhữ ng lỗ i ứng dụng xử lý phía máy chủ khơng hiệ n thị tớ i ngườ i dù ng Nế u hiể n thị lỗ i để thông bá o 64 lỗ i ngườ i dù ng nhậ p o, khơng nên để lợ thơng tin nhạy cảm : ngôn ngữ, phiên bả n… o Đối vớ i cá c trườ ng có thơng tin nhạ y cả m như: trườ ng mậ t khẩ u, cookies… nên sƣ̉ a tḥ c tính: autocomplete="off" để tránh trường hợp chúng lưu vào bộ nhớ đệ m, kẻ cơng truy nhập vào khai thác chúng o Để trá nh lỗ hổ ng mậ t khẩ u đượ c truyề n khơng an tồ n , nên sử dụng HTTPs truyề n nhữ ng liệ u nhạ y cả m o Tất cả thông tin nhập vào từ người dùng phải kiểm tra trước xử lý o Các máy chủ nên sƣ̉ dụ ng apache httpd 2.2.15 (trở đi) có thêm module mod_reqtimeout – tƣ̀ cá c request mà quá thờ i gian hủ y kế t nố i giải phóng cho các request khác Điề u nà y trá nh đượ c việ c nắ m giữ hệ thố ng quá lâu gây nên nghẽn mạng o Để ngăn chặ n các lỗi cookies nhà phát triển phần mềm nên đánh dấu cookie vớ i cờ HTTPOnly để tạ o mộ t tầ ng bả o mậ t chố ng lạ i XSS cho cá c trang Web Tồn bợ chương tập trung sâu vào quét lỗ hổng bảo mật các công c ụ hiệ n đạ i đượ c sƣ̉ dụ ng nhiề u hiệ n ứ ng dụ ng quả n lý trườ ng họ c tạ i http://truongnha.com Thêm o , chương nà y đưa mộ t i khuyế n cá o để giú p ứng dụng giảm thiểu các lỗ hổ ng an ninh nhằ m ngăn chặ n tấ n công củ a kẻ tấ n công o ứ ng dụ ng Nhữ ng khuyế n cá o nà y cũng áp dụng với ứng dụng Web khá c Dựa vào việc thực nghiệm trên, luận văn cũng đưa một qui trình áp dụng cho việc sử dụng các cơng cụ một cách hiệu quả sau: o Đầu tiên, nên sử dụng cơng cụ Websecurify cơng cụ cài đặt đơn giản, không thời gian có khả tìm lỗ hởng bản quan trọng như: SQL Injection, XSS, các thông số bị lợ o Sau đó, phát lỗ hổng bản, người dùng muốn phát rợng thêm các lỗ hởng khác, áp dụng các cơng cụ Acunetix Netsparker chúng có nhiều lựa chọn nhiều cấu hình cho người dùng để qt tồn bợ cấu trúc trang Web, từ có khả phát các lỗ hổng DOS, các cổng thông tin mở mật truyền mợt cách khơng an tồn o Cuối cùng, người dùng quen dùng chế độ dịng lệnh sử dụng thêm các cơng cụ W3af Skipfish để quét lại một lượt để phát thêm một vài lỗ hổng dạng công liên trang giả mạo 65 Với việc áp dụng mợt quy trình vậy, ứng dụng Web cũng phần giảm thiểu các mối nguy hại các lỗ hổng gây mà một ứng dụng Web cũng áp dụng 66 CHƯƠNG KẾT LUẬN VÀ HƯỚ NG PHÁ T TRIỂ N Chương tổ ng kế t lạ i nhữ ng kết mà luận văn m đưa nhữ ng hướ ng phá t triể n thờ i gian tớ i Vấn đề bảo mật an ninh Web vấn đề quan trọng cần thiết phát triển nhanh các ứng dụng Web, nguy thiệt hại gây các lỗ hổng không nhỏ Tuy vậ y không phả i bấ t kỳ nhà phá t triể n phầ n mề m Web nà o cũ ng tâm đế n việ c bả o mậ t anh ninh, nhiều ứng dụng Web tồn tại các nguy tính an tồn bảo mật (security vularability) liên tục có các c̣c cơng xảy Việ c tìm kiế m phá t hiệ n cá c nguy an ninh một cách thủ cơng khá khó khăn có nhiều nguy an ninh phát các cơng cụ tự đợ ng Bên cạnh các loại nguy an ninh các công cụ tự đợng phát các nguy ngày nhiều, khiến cho người dùng khó khăn việc lựa chọn công cụ phù hợp với ứng dụng Chính đề tà i nghiên u một số kiể u tấ n công ph ổ biến cá c công cụ tự độ ng phá t hiệ n nguy an ninh an toàn thử nghiệm chúng vào phần mềm quả n lý trườ ng h ọc phổ thông với tên gọi “Trường Nhà” trang web http://truongnha.com Qua quá trình nghiên cứu thử nghiệm này, đề tài tìm hiểu cách thức hoạt động, ưu nhượ c điể m củ a mộ t số công cụ á p dụ ng việ c qué t cá c lỗ hổ ng ứ ng dụng Web, đưa đánh giá các cơng cụ để giúp người sử dụng tham khảo để biế t phù hợ p nhấ t vớ i hoà n cả nh ứ ng dụ ng củ a để á p dụ ng mang lạ i hiể u quả cao nhấ t Bên cạnh đó, đề tài đưa các nguy bảo mật công cụ để phát kiểm tra cho phần mềm Trường Nhà Từ để tài cũng tởng quát hóa đưa các khuyến cáo cho các nhóm phát triển phần mềm nói chung đặc biệt sử dụng các công nghệ tương tự Trường Nhà (sử dụng khung ứng dụng Django) các nguy bảo mật các công cụ kiểm tra để các đơn vị phát triển phần mềm tham khảo, áp dụng vào cá c ứ ng dụ ng Web Đề tài hy vọng giúp người phát triển phần mềm có thêm hiểu biết an ninh an tồn cũng các cơng cụ nên sử dụng để tăng cường anh ninh, bảo mật cho hệ thống Web Kế hoạ ch tương lai củ a luậ n văn , đề tài tiếp tục sâu nghiên cứu thêm các kĩ thuật công, sử dụng phần mềm mã nguồn mở để mở rộng thêm chức cho công cụ để đưa phương pháp triển khai chương trình phát lỗ hổng bảo mật ứng dụng Web mức độ sâu TÀI LIỆU THAM KHẢO Tiếng Việt Vnexperts Research Department, DOS DDOS toàn tập Tiếng Anh 67 Acunetix (2012), Web Vulnerability Scanner V8, User manual v.1 2012 CEH – Certified Ethical Hackers, Hacking Web Applications – Module 13 Craig Shue, Brian Kopecky, Chris Weilemann, Denial of Service Attack Detection using Extended Analog Computers MSI::Labs (2006), Acunetix Web Vulnerability Scanner L Garber (2000), Denial-of-service attacks rip internet, IEEE Computer OWASP, http://www.owasp.org OWASP, SQL Injection, https://www.owasp.org/index.php/SQL_Injection Hakipedia, SQL Injection, http://hakipedia.com/index.php/SQL_Injection 10 11 Holger Peine Dr, The interactive HTTP proxy WebScarab – Installation and basic use, Fraunhofer IESE Sector Toronto (2009), A framework to Own the Web – part I 12 SpiderLaps, Web Hacking Incident Database, by SpiderLaps, http://projects.webappsec.org/w/page/13246995/Web-Hacking-IncidentDatabase 13 Web Application Security Scanner Evaluation Criteria –2009 Web Application Security Consortium 14 Websecurify, http://www.websecurify.com/suite ... CHƯƠNG MỘT SỐ CÔNG CỤ PHÁT HIỆN NGUY CƠ AN NINH Chương miêu tả công cụ phát lỗ hổng bảo mật, với chiến lược công cụ dễ sử dụng, có khả phát tốt sử dụng nhiều mà nhà kiểm thử dễ dàng áp dụng chạy... W3af cho phép kiểm tra an ninh ứng dụng web, tìm kiếm khai thác các lỗ hổng, cung cấp thông tin lỗ hổng an ninh hỗ trợ việc kiểm thử cách thâm nhập vào trang Web W3af mợt cơng cụ mã nguồn... một công cụ mã nguồn mở, áp dụng cho việc kiểm tra an ninh cho các ứng dụng Web, tìm kiếm khai thác các lỗ hởng Nó cung cấp thơng tin lỗ hởng an ninh hỗ trợ việc kiểm thử cách thâm nhập vào

Ngày đăng: 06/11/2020, 09:08

w