Bảo mật web application
TỔNG LIÊN ĐOÀN LAO ĐỘNG VIỆT NAMTRƯỜNG ĐẠI HỌC TÔN ĐỨC THẮNGKHOA CÔNG NGHỆ THÔNG TIN VÀ TOÁN ỨNG DỤNGTIỂU LUẬN TỐT NGHIỆPBẢO MẬT WEB APPLICATIONGiảng viên hướng dẫn: Thầy VŨ ĐÌNH HỒNGSinh viên thực hiện:NGUYỄN LÂMLớp: 06TH1DKhóa: 10Tp.Hồ Chí Minh, tháng 06 năm 2010 Đề tài: BẢO MẬT WEB APPLICATION GVHD: Thầy Vũ Đình HồngLời Cám ƠnTrong suốt quá trình học tập tại trường Đại học Tôn Đức Thắng, em đã được tạo điều kiện thuận lợi cho việc học tập của mình, đồng thời em cũng nhận được rất nhiều sự quan tâm, dìu dắt dạy bảo tận tình của quí Thầy Cô. Lời đầu tiên, em xin gửi đến tất cả các thầy cô trong Khoa Công Nghệ Thông Tin & Toán Ứng Dụng, trường Đại Học Tôn Đức Thắng lòng biết ơn chân thành đối với những gì thầy cô đã dành cho em trong suốt thời gian qua.Và hơn hết, em xin gửi lời cảm ơn sâu sắc đến Thầy Vũ Đình Hồng, người đã trực tiếp hướng dẫn em trong suốt thời gian thực hiện đề tài. Với sự quan tâm hướng dẫn tận tình của Thầy, em đã từng bước làm quen với quá trình thực hiện đề tài và đã có những thành quả nhất định. Trong suốt quá trình được Thầy hướng dẫn em đã học tập được rất nhiều từ Thầy về kiến thức chuyên môn, tác phong làm việc và nhiều điều bổ ích khác. Chính nhờ những điều đó, em mới có thể hoàn thành khóa luận tốt nghiệp này.Cuối cùng em xin gửi lời cảm ơn tới gia đình và bạn bè đã luôn bên cạnh, ủng hộ và động viên em trong những lúc gặp phải khó khăn để em có thể hoàn thành quá trình học tập, nghiên cứu và thực hiện khóa luận tốt nghiệp này.Mặc dù em đã làm việc nghiêm túc và rất cố gắng hoàn thành tiểu luận, nhưng chắc chắn sẽ không tránh khỏi những thiếu sót, kính mong sự cảm thông và tận tình chỉ bảo của quý Thầy Cô và các bạn. Sinh viên thực hiện: Nguyễn LâmSVTH: Nguyễn Lâm – 060219T Trang 2 Đề tài: BẢO MẬT WEB APPLICATION GVHD: Thầy Vũ Đình HồngNhận xét của giáo viên hướng dẫn: .SVTH: Nguyễn Lâm – 060219T Trang 3 Đề tài: BẢO MẬT WEB APPLICATION GVHD: Thầy Vũ Đình HồngNhận xét của giáo viên phản biện: .SVTH: Nguyễn Lâm – 060219T Trang 4 Đề tài: BẢO MẬT WEB APPLICATION GVHD: Thầy Vũ Đình HồngMỤC LỤCLời mở đầuChương I : Security Engineering ApproachChương II : Security ObjectivesChương III : Security Design GuidelinesChương IV : Threat ModelingChương V : Security Architecture and Design ReviewSVTH: Nguyễn Lâm – 060219T Trang 5 Đề tài: BẢO MẬT WEB APPLICATION GVHD: Thầy Vũ Đình HồngLời mở đầuTheo thống kê, trong năm 2009, nước ta có hơn 1000 website bị hacker tấn công, tăng hơn gấp đôi so với năm 2008 (461 website) và gấp ba lần so với năm 2007 (342 website). Mạng Internet Viet Nam còn tiềm ẩn rất nhiều rủi ro về mặt an ninh.Trong ba tháng đầu năm nay, ước tính đã có hơn 300 website của các cá nhân và tổ chức có tên miền .vn bị các hacker nước ngoài thăm dò và tấn công. Các website bị tấn công chủ yếu là các website kinh doanh trực tuyến, ngân hàng, các tổ chức cung cấp dịch vụ.Nguyên nhân bị tấn công chủ yếu là sự yếu kém của các website ở Việt Nam trong các vấn đề kiểm soát lỗ hỗng, quản trị yếu kém, phớt lờ các cảnh bảo an ninh của các tổ chức bảo đảm an ninh an toàn thông tin. Số lượng các điểm yếu an ninh được phát hiện trong năm 2009 đã lên đến con số 4300 (năm 2008 chỉ là 3500), có tới 30% lỗ hổng có mức độ nguy hiểm cao. Gần một nữa (49%) số lỗ hổng an ninh vẫn chưa có các bản vá do nhà cung cấp phát hành.Trong năm 2009, chỉ tính riêng hơn 40 vụ án công nghệ cao bị phanh phui, thiệt hại mà nó đem lại đã lên đến hàng ngàn tỷ đồng. Các vụ tấn công tin học nhắm vào ngân hàng, thị trường chứng khoáng ngày càng gia tăng. Nhưng do tính chất đặc thù, hầu hết các vụ việc không được công khai nên người ta không lường hết được mức độ nguy hiểm của nó.Những số liệu ở trên được lấy từ Hội Thảo – Triễn lãm quốc gia về an ninh bảo mật lần thứ năm tại Hà Nội (Security World 2010).An ninh mạng không phải chỉ là những biện pháp kỹ thuật sữa lỗi và bảo vệ hệ thống sau khi nó đã được dựng lên và từng bị xâm nhập, tấn công, cài đặt virus, hay backdoor. An ninh mạng vốn là một quy trình cần phải được xây dựng ngay từ đầu. Vậy quy trình đó được xây dựng như thế nào và triễn khai ra sao. Tiểu luận xin được trình bày về quy trình này.Những số liệu trên đã phần nào khái quát rõ tình hình an ninh mạng hiện nay trên Thế Giới nói chung và Việt Nam nói riêng đang diễn biến rất phức tạp. Các lỗ hỗng xuất hiện ngày càng nhiều, các kĩ thuật tấn công ngày càng tiên tiến, các chủng loại virus, trojan, worm… càng ngày càng có nhiều biến thể. Trong tình hình đó việc phải thiết kế, xây dựng và phát triễn ứng dụng một cách an toàn đó thật sự là một thách thức lớn trong tình hình hiện nay. An ninh mạng vốn dĩ là một quy trình bảo mật lặp đi lặp lại, và quy trình này phải được tích hợp song song với quy trình phát triễn của ứng dụng. Quy trình này bao gồm hàng loạt những hành động có liên hệ với nhau từ việc xác định đối tượng bảo mật, áp dụng những hướng dẫn thiết kế bảo mật vào trong kiến trúc và thiết kế của ứng dụng, đến việc thiết lập mô hình hóa mối đe dọa , thiết lập code bảo mật, cho đến việc kiểm tra và triễn khai ứng dụng.SVTH: Nguyễn Lâm – 060219T Trang 6 Đề tài: BẢO MẬT WEB APPLICATION GVHD: Thầy Vũ Đình HồngNội dung của đề tài gồm có 5 chương bao gồm :Chương I : Quy trình bảo mật.Chương II : Kĩ thuật xác định mục tiêu bảo mật.Chương III : Kĩ thuật áp dụng những nguyên tắc bảo mật vào trong thiết kế.Chương IV : Kĩ thuật thiếp lập mô hình hóa mối đe dọa.Chương V : Kĩ thuật phân tích kiến trúc và thiết kế của ứng dụng.SVTH: Nguyễn Lâm – 060219T Trang 7 Đề tài: BẢO MẬT WEB APPLICATION GVHD: Thầy Vũ Đình HồngChương I Giới thiệu về quy trình bảo mậtĐể có thể thiết kế, xây dựng và triễn khai một ứng dụng an toàn, đó thật sự là một thách thức lớn. Chìa khóa để giải mã cho thách thức này chính là việc phải tích hợp quy trình bảo mật vào trong vòng đời phát triễn của ứng dụng. Quy trình bảo mật bao gồm tập hợp những kĩ thuật bảo mật đã được chứng minh là có hiệu quả cao trong quá trình tiến hành bảo mật ứng dụng. Những kĩ thuật bảo mật này có thể được áp dụng vào bất kì loại ứng dụng nào. Tuy nhiên, không phải vì vậy mà có thể áp dụng một cách khuôn mẫu vào trong ứng dụng, mà mỗi một bước thực hiện phải được điều chỉnh cho phù hợp với ứng dụng.Mô hình sau đây miêu tả những kĩ thuật bảo mật ứng với vòng đời phát triễn của ứng dụngHình 1 . Những kĩ thuật bảo mật trong vòng đời phát triễn của ứng dụngSVTH: Nguyễn Lâm – 060219T Trang 8 Đề tài: BẢO MẬT WEB APPLICATION GVHD: Thầy Vũ Đình HồngNhững kĩ thuật đó bao gồm :Security Objectives_Kĩ thuật xác định mục tiêu bảo mật : Việc xác định mục tiêu bảo mật thường là công việc được ưu tiên thực hiện đầu tiên trong quá trình bảo mật. Những đối tượng này có ảnh hưỡng đến sự minh bạch, sự riêng tư, và sự tiện dụng của dữ liệu và ứng dụng. Kĩ thuật này sẽ giúp ta có thể xác định được các mục tiêu cần bảo mật trong hệ thống.Security Design Guidelines_Kĩ thuật áp dụng những nguyên tắc bảo mật vào trong thiết kế : Kĩ thuật này hướng dẫn cách thức áp dụng những nguyên tắc bảo mật vào trong thiết kế sẽ góp phần giúp cho việc xác định những khu vực thường xãy ra những vi phạm bảo mật thường thấy trong những bản thiết kế.Threat Modeling_Kĩ thuật thiết lập mô hình hóa mối đe dọa : Kĩ thuật này được sữ dụng để thiết lập các mô hình hóa mối đe dọa từ đó giúp cho việc xác định những mối đe dọa cũng như những lỗ hỗng tiềm tàng trong ứng dụng của bạn.Security Architecture and Design Review_Kĩ thuật phân tích cấu trúc và thiết kế của ứng dụng : Kĩ thuật này sẽ phân tích cấu trúc và thiết kế của ứng dụng từ góc độ an ninh. Nó sẽ xem xét một số khía cạnh liên quan đến việc triễn khai, cơ sở hạ tầng, những cấu trúc tỗng thể của ứng dụng cũng như những lớp của ứng dụng.Security Code Review_Kỉ thuật phân tích code : Kĩ thuật này được sữ dụng để phân tích những đoạn code nhằm tìm ra những lỗ hỗng tồn tại trong đó.Security Testing_Kĩ thuật kiểm tra : Kĩ thuật này sẽ giúp cho ta thiết lập một kế hoạch kiểm tra dựa vào phạm vi ảnh hưởng của những mối đe dọa được xác định từ mô hình hóa mối đe dọa.Security Deployment Review_Kĩ thuật đánh giá việc triển khai bảo mật : Kĩ thuật này được sử dụng để đảm bảo chắc chằn rằng việc thiếp lập các cấu hình cho hệ thống được tối ưu để thực hiện việc triễn khai ứng dụng được an toàn. Những kĩ thuật này kết hợp với nhau như thế nào.Những kĩ thuật này thường được tiến hành sớm và tiếp tục sữ dụng trong suốt vòng đời phát triễn của ứng dụng.Hình 2 sẽ giúp cho ta có một cái nhìn khái quát về quá trình hoạt động của các kĩ thuật này trong suốt vòng đời phát triễn của ứng dụng.SVTH: Nguyễn Lâm – 060219T Trang 9 Đề tài: BẢO MẬT WEB APPLICATION GVHD: Thầy Vũ Đình HồngMỗi một kĩ thuật bảo mật đều ảnh hưởng đến các kĩ thuật khác và đến từng giai đoạn phát triễn của ứng dụng.Quan sát ở hình trên bạn sẽ thấy:Áp dụng những nguyên tắc bảo mật vào trong ứng dụng sẽ góp phần làm giảm tối thiểu những mối đe dọa được tìm thấy trong suốt quá trình thiết lập mô hình hóa mối đe dọa.Threat Modeling_Mô hình hóa mối đe dọa : cho phép bạn xác định những mối đe dọa cũng như những lỗ hỗng . Việc xác định những lỗ hỗng và các giáp pháp được tiến hành để giải quyết chúng được định hình và nó sẽ ảnh hưỡng đến các giai đoạn phát triễn sau này của ứng dụng như giai đoạn thiết kế, phát triễn, kiểm tra và triễn khai. Tầm quan trọng của các kĩ thuật bảo mật.Security Objectives_Kĩ thuật xác định mục tiêu bảo mật : nếu bạn không xác định được mục tiêu cần được bảo mật trong ứng dụng, thì thật sự sẽ rất khó có thể thành công trong việc bảo mật ứng dụng.Security Design Guidelines_Kĩ thuật áp dụng những nguyên tắc bảo mật vào trong thiết kế : bằng việc áp dụng những nguyên tắc bảo mật và cập nhật những thông tin cảnh báo an ninh từ những tổ chức có uy tín sẽ bảo đảm cho việc tiến hành bảo mật được thuận lợi.Threat Modeling_Kĩ thuật thiết lập mô hình hóa mối đe dọa : bằng việc thiết lập những mô hình hóa mối đe dọa, ngoài việc giúp cho quá trình bảo mật được phát triễn thuận lợi, nó còn cải tiến chất lượng cho ứng dụng của bạn. Thêm vào đó nó còn đảm bảo việc tiến hành lập các kế hoạch kiểm tra phần mềm được thuận lợi. Nó còn có tác dụng giúp cho những những nhà phát triễn và những chuyên viên IT có một cái nhìn tổng quan về ứng dụng.Security Architecture and Design Review_Kĩ thuật phân tích cấu trúc và thiết kế của ứng dụng : Sẽ tốt rất nhiều chi phí để có thể giải quyết những sai sót được SVTH: Nguyễn Lâm – 060219T Trang 10 [...]... đồ cây chức năng của website : SVTH: Nguyễn Lâm – 060219T Trang 13 Đề tài: BẢO MẬT WEB APPLICATION GVHD: Thầy Vũ Đình Hồng Chương II : Xác định mục tiêu bảo mật Tổng quan SVTH: Nguyễn Lâm – 060219T Trang 14 Đề tài: BẢO MẬT WEB APPLICATION GVHD: Thầy Vũ Đình Hồng Việc xác định những mục tiêu bảo mật rất quan trọng, điều này thường được yêu cầu thực hiện sớm trong các quy trình bảo mật, lý tưởng nhất là... tiêu cần bảo mật trong Website triễn lãm đồ gốm Roles Matrix SVTH: Nguyễn Lâm – 060219T Trang 15 Đề tài: BẢO MẬT WEB APPLICATION SVTH: Nguyễn Lâm – 060219T GVHD: Thầy Vũ Đình Hồng Trang 16 Đề tài: BẢO MẬT WEB APPLICATION SVTH: Nguyễn Lâm – 060219T GVHD: Thầy Vũ Đình Hồng Trang 17 Đề tài: BẢO MẬT WEB APPLICATION SVTH: Nguyễn Lâm – 060219T GVHD: Thầy Vũ Đình Hồng Trang 18 ... bộ quy trình bảo mật mà việc phát sinh thêm những mục tiêu mới là điều rất dễ bắt gặp Mục tiêu bảo mật là gì Mục tiêu bảo mật đó là một tập hợp cũa một loạt các loại mục tiêu như : mục tiêu hữu hình, mục tiêu vô hình, những yêu cầu cần tuân thủ, hay chất lượng của những yêu cầu dịch vụ Để có thể hiểu rõ thêm về mục tiêu bảo mật, sau đây em sẽ xác định những mục tiêu cần bảo mật trong Website triễn... sản phẩm của chính doanh nghiệp mình (thêm, xóa, sửa, cập nhật sản phẩm) Đặc tả website Đặc tả : Là website trưng bày sản phẩm theo hình thức showroom nên có những đặc điểm như sau SVTH: Nguyễn Lâm – 060219T Trang 12 Đề tài: BẢO MẬT WEB APPLICATION GVHD: Thầy Vũ Đình Hồng Khách hàng : có 3 loại khách hàng hành chính trong website Khách vãng lai : (user guest) Xem thông tin sản phẩm Gốm sứ : như giá sản... quy trình bảo mật, lý tưởng nhất là ở trong giai đoạn thu thập yêu và phân tích ứng dụng Nó rất quan trọng , bởi vì nếu không xác định được mục tiêu bảo mật thì sẽ rất khó để thực hiện các quá trình tiếp theo của quy trình bảo mật Xác định mục tiêu bảo mật là một quy trình lặp đi lặp lại và được thực hiện từ sớm bằng một quy trình kiểm tra những yêu cầu và cách thức hoạt động tùy theo ngữ cảnh của ứng... việc triển khai bảo mật : cho dù ứng dụng của bạn có đạt hiệu quả cao như thế nào, nó cũng sẽ bị hủy bỏ nếu như việc cấu hình yếu kém trong quá trình triễn khai Để có thể trình bày một cách khách quan nhất về quy trình bảo mật này, đề tài sẽ sữ dụng Website trưng bày sản phẩm gốm sứ làm ví dụ để có thể minh họa một cách chính xác nhất về những kĩ thuật nói trên Giới thiệu sơ lược về Website trưng bày... sản phẩm gốm sứ Mục tiêu của đề tài : SVTH: Nguyễn Lâm – 060219T Trang 11 Đề tài: BẢO MẬT WEB APPLICATION GVHD: Thầy Vũ Đình Hồng Website trưng bày sản phẩm gốm sứ được xây dựng nhằm để hỗ trợ việc trưng bày và mua bán hàng hóa Gốm sứ qua mạng cho các nhà doanh nghiệp với các khách hàng Đối với các doanh nghiệp : Hệ thống website hỗ trợ việc giới thiệu sản phẩm đến người có nhu cầu sử dụng Giới thiệu...Đề tài: BẢO MẬT WEB APPLICATION GVHD: Thầy Vũ Đình Hồng phát sinh trong giai đoạn thiết kế Vì vậy việc phân tích cấu trúc và thiết kế của ứng dụng một cách kĩ lưỡng sẽ phát hiện ra những sai sót được phát sinh trong... username, password, họ tên, email…Thông qua việc này chúng ta có thể kiểm tra được ai đã tham gia vào website và vì vậy dễ dàng có những ưu đãi đối với khách hàng nhằm thu hút khách hàng đến với website và mua sản phẩm đồng thơi thu hút các doanh nghiệp tin tưởng trưng bày sản phẩm Bên cạnh đó giúp phát triễn website thông qua các đóng góp của khách hàng Yêu cầu nghiệp vụ : Phân chia hệ thống ra thành từng... lợi Đối với các khách hàng : Hệ thống website tạo điều kiện thuận lợi cho người dùng có thể sữ dụng hệ thống rộng rãi Trong lúc mong muốn tìm kiếm một sản phẩm phù hợp với nhu cầu thực tế của cá nhân, website giúp người sử dụng có thể tìm kiếm và chọn lựa được những sản phẩm phù hợp với tiêu chí và khả năng tài chính một cách nhanh chóng và dễ dàng… Ngoài ra, website còn giới thiệu đến người sử dụng . năng của website :SVTH: Nguyễn Lâm – 060219T Trang 13 Đề tài: BẢO MẬT WEB APPLICATION GVHD: Thầy Vũ Đình HồngChương II : Xác định mục tiêu bảo mậtTổng quanSVTH:. 060219T Trang 15 Đề tài: BẢO MẬT WEB APPLICATION GVHD: Thầy Vũ Đình HồngSVTH: Nguyễn Lâm – 060219T Trang 16 Đề tài: BẢO MẬT WEB APPLICATION GVHD: Thầy Vũ