Nghiên cứu vài 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

66 1K 4
Nghiên cứu vài 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

Đ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

5 MỤC LỤC LỜI CAM ĐOAN LỜI CẢM ƠN DANH MỤC BẢNG BIỂU .6 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ề 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 toà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 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 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é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 về 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 và 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ừ đƣợc 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 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 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 đƣợ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 PHP Hypertext Preprocessor Ngơn ngữ lập trình kịch HTTP Hypertext Transfer Protocol Giao thức truyền tải siêu văn LAN Local Area Network Mạng máy tính cục OWASP Open Web Application Security Dƣ̣ án bảo mật các ƣ́ng dụng Web Project 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 sƣ̣ 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 toàn cho trang Web lĩnh vực đặc biệt quan vì đƣ ợ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ì vậy nhiều ứng dụng Web tồn với 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 và phát hiện các nguy an ninh thủ cơng khó khăn có nhiều nguy an ninh phát đƣợc công cụ tƣ̣ động Bên cạnh đó, 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 toàn trang web mình cũng gặp phải nhiều khó khăn Chính đề tài nghiên cƣ́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à” trang Web quản lý trƣờng học phổ thông đƣợc xây dựng độ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 vài khuyến cáo cho đội phát triển phần mềm từ kiểm tra đƣợc tính đắn kết cũng nhƣ khuyến cáo luận văn đƣa Qua việc nghiên cứu thử nghiệm này, đề tài đƣa 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 khuyến cáo cho nhóm phát triển phần mềm nói chung đặc biệt sử dụng công nghệ tƣơng tự nhƣ Trƣờng Nhà (sử dụng khung ứng dụng Django) nguy bảo mật công cụ kiểm tra để đơ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 nhƣ 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 đƣợc tổng quan cập nhật về nguy bảo mật, cách thức công cách phát hi ện lỗ hổng bả o mật các hệ thống 12 Web và sâu vào vài loại xâu Web 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 nguy bảo mật để giúp ngƣời lập trình ngăn chặn cơng chúng, giảm thiểu khả ứng dụng web bị ảnh hƣởng lỗ hổng Ći cùng ḷn văn sâu và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 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 và các nguy gây bởi việc thiếu an toà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ả 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 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 làm việc và các lỗ hổng mà các ƣ́ng dụng này có thể phát hiện ra, đƣa đƣợc nhận xét cơng cụ Chƣơng 4: Thực nghiệm phân tích kết quả: Thực nghiệm chạy số công cụ chƣơng vào việc tìm 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 đƣợc vài khuyến cáo cho 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 đạt đƣợc luận văn hƣớng phát triển tƣơng lai 1.4 Tổng quan về 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 nhƣ thƣơng mại điện tử hay toán trực tuyến ngày phổ biến và đƣợc thƣ̣c hiện thông qua các ƣ́ng dụng Web Ở đâu, máy tính có nối mạng internet, ngƣời thực giao dịch cách thuận tiện nhanh chóng Mọi thơng tin của ngƣời dùng sẽ đƣợc lƣu Web Nếu nhƣ 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 trả khác với ý muốn ngƣời lập trình, hoặc nhƣ̃ng kẻ lạc danh có thể đá 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 trang Web động cho phép xây dựng câu truy vấn 13 động từ đầu vào ngƣời sử dụng cung cấp, chúng tiềm ẩn nguy an tồn cao nhƣ khơng có chế kiểm tra liệu đầu vào cách chặt chẽ Tóm lại, ứng dụng Web ln ln tiềm ần có nguy bị cơng kẻ công với ý đồ xấu, vậy nên vấn đề bảo mật nền Web là cấp thiết 1.5 Một số nguyên nhân phổ biến cho ƣ́ng dụng Web mất tí nh an toàn Khi một ƣ́ng dụng Web mất tí nh an toàn , điều đó tƣơng đƣơng với việc trang web đó sẽ có khả tấn công và 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 làm là tì m nguyên nhân Dƣới là một vài nguyên nhân có thể gây nhƣ̃ng điểm yếu đó cho ƣ́ng dụng Web: o Thiếu nhận thƣ́c về an toàn cho ƣ́ng dụng Web của ngƣời dùng và 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 làm nhanh và ẩ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 ứng dụng Web vấn đề quan trọng, ảnh hƣởng tới chất lƣợng an ninh hệ thống quan Với tình trạng hàng loạt 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ệ phƣơng thức công web theo dạng XSS, DoS SQL injection đƣ́ng đầu so sánh 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 nhƣng 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 vài lỗ hổng đƣợc ý hơn, chúng đƣợc miêu tả chƣơng thực thi công cụ ứng dụng “Trƣờng Nhà” 56 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: 57 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, u cầu gửi từ trình duyệt đến server bị chặn burpsuite tiến hành chỉnh sửa u cầu thực thi cơng nhờ chức Intruder nhƣ sau: Giá trị đầu Request response vào tƣơng ứng với đầu vào Hình 4.5: Kết quét phần mềm Trƣờng Nhà Danh sách thị giá trị đầu vào với kết phản hồi, giúp biết đƣợc REQUEST gửi gì, phản hồi nhận lại đƣợc từ biết đƣợc có khả lỗi đâu 58 4.3 Netsparker 4.3.1 Thực nghiệm 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 loạt vấn đề trang web này, khả mà kẻ công lợi dụng nhƣ: mật đƣợc truyền ngang qua HTTP, khả tự động hiển thị vài trƣờng quan trọng nhƣ 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 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, yêu cầu lỗi…, “Issues”- tất vấn đề bảo mật mà Netsperker phát ra, đƣợc 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 đƣợc truyền ngang qua HTTP: Khi tồn 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 đƣợc lỗ hổng xảy ra, liệu nhảy cảm, hay form trang nên đƣợc 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 ứng dụng web mục tiêu 59 Xảy tại: http://truongnha.com/register/ Ảnh hƣởng tồn lỗ hổng này, kẻ công có thể:  Lấy đƣợc thơng tin phiên Django Python  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 đƣợc đƣờng dẫn tới tệp bên hệ thống  Các ngoại lệ từ mã nguồn, biến địa phƣơng 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 lỗ hổng hệ thống dựa 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 HTTP với trạng thái 500, điều đó chỉ lỗi về phí a m áy chủ Thông tin này sau đó sẽ đƣợ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 vào nhiều điều kiện nhƣng nó có khả sẽ 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 ngoài , lỗi nên đƣợc 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 nhƣ HTTPOnly : HTTPOnly là một chế bảo mật cookie Nếu một cookie đƣợc đánh dấu nhƣ HTTPOnly thì cookie không có khả truy cập đƣợc tƣ̀ máy khách Do đó nó 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 sẽ 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 mì nh 4.4 Skipfish 4.4.1 Thực nghiệm Skipfish cơng cụ dị tìm bảo mật cho ứng dụng Web cách hiệu Nó chuẩn bị tập trang tƣơng tác với cho trang đích đến việc thực qt đệ quy dị tìm dựa thƣ mục Việc xếp kết sau đƣợc 60 đƣa với đầu từ số hoạt động kiểm tra an ninh Bản báo cáo cuối đƣợc thực công cụ đƣợc coi nhƣ điều cho dự đánh giá anh ninh ứng dụng Web chuyên nghiệp Skipfish cơng cụ mã nguồn mở với tính năng:  Ƣ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 đƣợc 2000 yêu cầu giây 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 thực thể địa phƣơng, với CPU đơn giản Kết hợp luồng đơn lẻ, không đồng mạng I/O mơ hình xử lý liệu, loại bỏ quản lý nhớ, kế hoạch đại diện không hiệu 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 kiểu bảo mật khác nhau, khả phát miền lỗi tinh vi, bao gồm lỗi Blind injection o Tạo kết dƣới dạng HTML tốt o Phát đƣợc lỗ hổng dạng XSRF (Cross-Site Request Forgery)  Nhƣợc điểm: o Không hỗ trợ Plugin o Không phát đƣợc 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ƣới dạng HTML hữu ích Tuy nhiên khơng thể nắm bắt đƣợc tham số yêu cầu ứng dụng Công cụ đƣợc dùng môi trƣờng: Linux, FreeBSD, MacOS X Windows (Cygwin) Dƣới là thƣ̣c nghiệm chƣơng trì nh chạy trang http://truongnha.com Hình 4.7 kết việc chạy cơng cụ Skipfish , thể hiện nhƣ̃ng cảnh báo , thông tin về mƣ́c độ nguy hiểm nhiều , cơng cụ tới hệ thống web Tuy nhiên kết tìm đƣợc cảnh báo 61 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 có thể mở kết quả dƣới dạng tệp html nhƣ Hình 4.8 sau: Hình 4.8: Chi tiết về thông tin cảnh báo của công cụ Skipfish 4.4.2 Phân tích thực nghiệm 62 Cơng cụ này sẽ lƣu kết quả máy , báo cáo kết đƣợc xem dƣới dạng tệp HTML nhƣ 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 về 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 đƣợc kết nhƣ 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 cơng cụ đƣợc hiển thị “Log” : 63 Hình 4.10: Thông tin các lỗ hổng và 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 việc tìm kiếm lỗ hổng phụ thuộc vào việc chọn plugin phần “scan config” Và nhìn thấy kết bên cột “Result” nhƣ sau: 64 Hình 4.11: Kết quả các lỗ hổng đƣợc tì m thấy bởi W3af Chúng ta phân tích 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 có thể dùng công cụ này vào việc tì m cookies và đăng nhập đƣợc và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ó đƣợc tìm thấy yê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 đ ã đƣợc 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 nhƣ sau: 65 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 là 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 cấu hình ứng dụng giúp ích cho vi ệc khai thá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 có thể truy cập vào bộ đệm có thể lấy đƣợc các thông tin đó và tấn công bởi các thông tin nhƣ mật khẩu, cookies…  Email Disclosure: Máy chủ ứng dụng bị lộ địa email Điều này sẽ 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ộ thông tin phiê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 lỗ hổng bảo mật giúp ƣ́ng dụng này có thể giảm thiểu phần nào các thiệt hại gây Dƣới là danh sách các công cụ thƣ̣c thi ƣ́ng dụng “Trƣờng Nhà”, lỗ hổng đƣ ợc miêu tả chi tiết thực thi công cụ phần thực nghiệm trên: 66 Bảng 4.1: Danh sách các lỗ hổng các công cụ Công cụ Lỗ hổng W3af Lộ thông tin địa Email XSS Acunetix Websecurify X X X DOS/DDOS X Lộ đƣờng dẫn X Lộ ngôn ngữ ứng dụng Tấn công liên trang giả mạo Netsparker X X X X Mật truyền qua HTTP X Mật tự động hiển thị X Lộ thông tin máy chủ X Hiển thị cookies X Khả tự động thị trƣờng X X X X X X X Ngồi cơng cụ đƣợc liệt kê với lỗ hổng trên, luận văn cũng thực thi áp dụng công cụ khác nhƣ: Skipfish Burp suite giai đoạn sau lỗ hổng đƣợc nhà phát triển vá lỗ hổng khơng cịn Dƣới là mợt vài kh ún cáo đối với các nhà phát triển phần mềm quá trình làm luận văn, hi vọng có thể 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 đƣợc xử lý phía máy chủ khơng bao giờ hiện thị tới ngƣời dùng Nếu hiển thị lỗi để thông báo lỗi ngƣời dùng nhập vào, thì không nên để lộ thông tin nhạy cảm nhƣ : ngôn 67 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 thuộc tí nh: autocomplete="off" để tránh trƣờng hợp chúng đƣợc lƣu vào 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 toàn , nên sử dụng HTTPs truyền nhƣ̃ng dƣ̃ liệu nhạy cảm o Tất thông tin đƣợc nhập vào từ ngƣời dùng phải đƣợc 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 thì nó sẽ hủy kết nới đó giải phóng cho request khác Điều này tránh đƣợc việc nắm giƣ̃ hệ thống lâu gây nên nghẽn mạng o Để ngăn chặn 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 mình Toàn chƣơng tập trung sâu vào quét lỗ hổng bảo mật 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 vào đó , chƣơng này đƣa một vài khuyến cáo để giúp ứng dụng giảm thiểu lỗ hởng an ninh nhằm ngăn chặn tấn công của kẻ tấn công và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 qui trình áp dụng cho việc sử dụng công cụ cách hiệu nhƣ 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 đƣợc lỗ hổng quan trọng nhƣ: SQL Injection, XSS, thơng số bị lộ o Sau đó, phát đƣợc lỗ hổng bản, ngƣời dùng muốn phát rộng thêm lỗ hổng khác, áp dụng cơng cụ nhƣ Acunetix Netsparker chúng có nhiều lựa chọn nhiều cấu hình cho ngƣời dùng để quét toàn cấu trúc trang Web, từ có khả phát lỗ hổng nhƣ DOS, cổng thông tin mở mật đƣợc truyền cách không an toàn o Cuối cùng, ngƣời dùng quen dùng chế độ dịng lệnh sử dụng thêm công cụ nhƣ W3af Skipfish để quét lại lƣợt để phát thêm vài lỗ hổng nhƣ dạng công liên trang giả mạo Với việc áp dụng quy trình nhƣ vậy, ứng dụng Web cũng phần giảm 68 thiểu đƣợc mối nguy hại lỗ hổng gây mà ứng dụng Web cũng áp dụng đƣợc 69 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 đã làm và đư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 sƣ̣ phát triển nhanh ứng dụng Web , nguy thiệt hại gây 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 chú tâm đến việc bảo mật anh ninh, vì nhiều ứng dụng Web tồn nguy tính an tồn bảo mật (security vularability) liên tục có công xảy Việc tì m kiếm và phát hiện các nguy an ninh cách thủ cơng khó khăn có nhiều nguy an ninh phát đƣợc cơng cụ tƣ̣ đợng Bên cạnh thì loại nguy an ninh công cụ tự động phát 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 cƣ́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 trình nghiên cứu thử nghiệm này, đề tài tìm hiểu đƣợc 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ô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 và ƣ́ng dụng của mì nh để áp dụng mang lại hiểu quả cao nhất Bên cạnh đó, đề tài đƣa 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 khuyến cáo cho nhóm phát triển phần mềm nói chung đặc biệt sử dụng công nghệ tƣơng tự nhƣ Trƣờng Nhà (sử dụng khung ứng dụng Django) nguy bảo mật công cụ kiểm tra để đơ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 nhƣ 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 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 70 TÀI LIỆU THAM KHẢO Tiếng Việt Vnexperts Research Department, DOS DDOS toàn tập Tiếng Anh 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 Holger Peine Dr, The interactive HTTP proxy WebScarab – Installation and basic use, Fraunhofer IESE 11 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-Incident-Database 13 Web Application Security Scanner Evaluation Criteria –2009 Web Application Security Consortium 14 Websecurify, http://www.websecurify.com/suite ... W3af công cụ mã nguồn mở, áp dụng cho việc kiểm tra an ninh cho ứng dụng Web, tìm kiếm khai thá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 trang Web. .. nghiêm trọng cho ứng dụng Việc tìm sớm lỗ hổng giúp bảo vệ ứng dụng web tốt XSS-Me cơng cụ tìm lỗ hổng cho ứng dụng Web Cách thức làm việc XSS-Me: Công cụ xem xét tất form HTML trang web bạn thay... cụ tiếng đƣợc nhiều công ty lớn giới sử dụng để quét lỗ hổng đảm bảo an tồn cho ứng dụng web họ Nó cũng cơng cụ để phân tích khai thác điểm yếu ứng dụng Web, Acunetix WVS thực thi kiểm tra bảo

Ngày đăng: 30/11/2015, 13:21

Từ khóa liên quan

Mục lục

  • MỤC LỤC

  • DANH MỤC BẢNG BIỂU

  • DANH MỤC HÌNH VẼ

  • DANH MỤC CÁC CHỮ VIẾT TẮT

  • CHƯƠNG 1 GIỚI THIỆU

  • 1.1. Tính cấp thiết của đề tài

  • 1.2. Mục tiêu đề tài

  • 1.3. Bố cục luận văn

  • 1.4. Tông quan vê vân đê bảo mật trên nền Web

  • 1.5. Môt sô nguyên nhân phô biên cho ƣng dung Web mât tinh an toan

  • 1.6. Thông kê cac loai tân công

  • CHƯƠNG 2 MỘT SỐ NGUY CƠ AN NINH THƯỜNG GẶP

  • 2.1. Tấn công DoS

  • 2.1.1. Giới thiệu về DoS

  • 2.1.2. Mục đích và các dạng tấn công DoS

  • 2.1.3. Tân công DDoS

  • 2.2. Cross-Site Scripting (XSS)

  • 2.2.1. Tổng quan về XSS

  • 2.2.2. Ảnh hƣởng do XSS gây ra

  • 2.2.3. Phân loại

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

Tài liệu liên quan