Báo cáo đồ án cuối kì bảo mật web đề tài website bán hàng tạp hóa - Đại học SPKT TP.HCM

Chuyên ngành

Công nghệ phần mềm

Người đăng

Ẩn danh

Thể loại

Đồ án

2020

172
0
0

Phí lưu trữ

45 Point

Tóm tắt

I. Tổng quan về báo cáo đồ án bảo mật web website bán hàng tạp hóa

Báo cáo đồ án này trình bày một dự án thực tế về bảo mật web cho website bán hàng tạp hóa. Dự án được thực hiện bởi nhóm sinh viên trường Đại học Sư phạm Kỹ thuật TP.HCM, dưới sự hướng dẫn của giảng viên. Mục tiêu chính là thiết kế và phát triển một hệ thống website thương mại điện tử an toàn, tập trung vào bảo vệ dữ liệu người dùng và giao dịch trực tuyến. Phạm vi bao gồm phân tích yêu cầu, thiết kế chức năng, giao diện và cơ sở dữ liệu. Đối tượng nghiên cứu là các tác nhân như khách hàng, nhân viên và quản trị viên. Đồ án áp dụng các nguyên tắc bảo mật cơ bản để ngăn chặn các mối đe dọa phổ biến. Quá trình thực hiện bao gồm lập kế hoạch, coding và kiểm thử. Kết quả là một prototype website có tính năng bảo mật tích hợp. Dự án đóng góp vào kiến thức thực tiễn về phát triển web an toàn.

1.1. Mục tiêu của đồ án bảo mật web

Mục tiêu chính của đồ án là xây dựng một website bán hàng tạp hóa với các biện pháp bảo mật hiệu quả. Hệ thống phải đảm bảo an toàn cho thông tin cá nhân, tài khoản đăng nhập và dữ liệu giao dịch. Các mục tiêu cụ thể bao gồm ngăn chặn tấn công SQL injection, bảo vệ mật khẩu người dùng và quản lý quyền truy cập. Đồ án cũng hướng đến tuân thủ các tiêu chuẩn bảo mật web cơ bản. Qua đó, sinh viên áp dụng lý thuyết vào thực hành, nâng cao kỹ năng phát triển phần mềm an toàn.

1.2. Phạm vi và đối tượng nghiên cứu của dự án

Phạm vi nghiên cứu giới hạn trong việc thiết kế website bán hàng tạp hóa với các chức năng cơ bản như đăng nhập, quản lý sản phẩm và đặt hàng. Đối tượng bao gồm ba nhóm tác nhân chính: khách hàng mua sắm, nhân viên xử lý đơn hàng và quản trị viên hệ thống. Nghiên cứu tập trung vào các mối đe dọa bảo mật liên quan đến xác thực, phân quyền và bảo mật dữ liệu. Các yếu tố như hiệu suất hay mở rộng quy mô không nằm trong trọng tâm. Dự án sử dụng công nghệ ASP.NET và SQL Server để triển khai.

II. Phân tích các vấn đề bảo mật trong website bán hàng tạp hóa

Website bán hàng tạp hóa đối mặt với nhiều vấn đề bảo mật nghiêm trọng. Các lỗ hổng phổ biến bao gồm tấn công SQL injection, cho phép kẻ xấu truy cập trái phép cơ sở dữ liệu. Cross-site scripting (XSS) có thể đánh cắp thông tin phiên làm việc của người dùng. Xác thực yếu kém, như mật khẩu đơn giản, dẫn đến nguy cơ bị bẻ khóa. Quản lý phiên làm việc không an toàn gây ra rủi ro chiếm quyền điều khiển. Ngoài ra, thiếu mã hóa dữ liệu nhạy cảm như thông tin thanh toán là một lỗ hổng lớn. Các vấn đề này có thể gây mất mát tài chính và uy tín cho doanh nghiệp. Phân tích rủi ro giúp xác định điểm yếu cần khắc phục.

2.1. Các lỗ hổng bảo mật thường gặp trong hệ thống

Lỗ hổng SQL injection xảy ra khi người dùng nhập liệu độc hại vào biểu mẫu, cho phép thực thi mã SQL trái phép. Cross-site scripting (XSS) khai thác lỗ hổng trong xử lý đầu vào để chèn script độc hại vào trang web. Tấn công brute force nhắm vào đăng nhập, cố gắng đoán mật khẩu. Bảo mật phiên làm việc kém có thể bị đánh cắp qua cookie. Các lỗ hổng này thường do thiếu validation đầu vào và mã hóa không đầy đủ. Nhận diện sớm các lỗ hổng là bước quan trọng để bảo vệ hệ thống.

2.2. Phân tích rủi ro và mối đe dọa tiềm ẩn

Rủi ro chính bao gồm mất mát dữ liệu khách hàng, thông tin thẻ tín dụng bị đánh cắp. Tấn công từ chối dịch vụ (DDoS) có thể làm gián đoạn hoạt động kinh doanh. Mối đe dọa nội bộ, như nhân viên lạm dụng quyền truy cập, cũng cần được xem xét. Phân tích rủi ro sử dụng ma trận đánh giá để ưu tiên các mối đe dọa dựa trên tác động và khả năng xảy ra. Điều này giúp tập trung nguồn lực vào các biện pháp bảo mật quan trọng nhất. Kết quả phân tích định hướng cho quá trình thiết kế giải pháp.

III. Giải pháp và phương pháp bảo mật cho website bán hàng tạp hóa

Để giải quyết các vấn đề bảo mật, đồ án áp dụng nhiều giải pháp thiết thực. Mật khẩu được mã hóa bằng hàm băm an toàn như bcrypt, với chính sách yêu cầu độ phức tạp cao. Xác thực đa yếu tố được khuyến nghị để tăng cường bảo mật đăng nhập. Đầu vào từ người dùng được kiểm tra và lọc kỹ lưỡng để ngăn chặn SQL injection và XSS. Sử dụng prepared statements trong truy vấn cơ sở dữ liệu. Quản lý quyền truy cập dựa trên vai trò (RBAC) đảm bảo người dùng chỉ truy cập tài nguyên được phép. Giao thức HTTPS được áp dụng để mã hóa dữ liệu truyền tải. Các biện pháp này được tích hợp vào quy trình phát triển phần mềm.

3.1. Các biện pháp bảo mật được áp dụng trong dự án

Biện pháp đầu tiên là mã hóa mật khẩu sử dụng thuật toán băm một chiều, kết hợp salt để chống bẻ khóa. Xác thực người dùng được tăng cường bằng cách yêu cầu mật khẩu phức tạp và giới hạn số lần đăng nhập sai. Bảo vệ chống SQL injection bằng cách sử dụng parameterized queries. Chống XSS thông qua mã hóa đầu ra và kiểm tra đầu vào. Hệ thống quản lý phiên làm việc với cookie bảo mật và thời gian timeout hợp lý. Sao lưu dữ liệu định kỳ cũng được thực hiện để phòng ngừa mất mát.

3.2. Quy trình kiểm thử và đánh giá bảo mật

Quy trình kiểm thử bao gồm kiểm thử đơn vị, tích hợp và kiểm thử bảo mật chuyên sâu. Sử dụng công cụ như OWASP ZAP để quét lỗ hổng tự động. Kiểm thử thủ công bao gồm cố gắng tấn công mô phỏng như SQL injection và XSS. Đánh giá dựa trên tiêu chuẩn OWASP Top 10 để đảm bảo bao quát các mối đe dọa phổ biến. Kết quả kiểm thử được ghi nhận và khắc phục trước khi triển khai. Quy trình này giúp xác nhận tính hiệu quả của các biện pháp bảo mật đã áp dụng.

IV. Kết luận và ứng dụng thực tế của đồ án bảo mật web

Đồ án đã hoàn thành việc thiết kế một website bán hàng tạp hóa với các tính năng bảo mật cơ bản. Kết quả cho thấy các giải pháp áp dụng có hiệu quả trong việc giảm thiểu rủi ro bảo mật. Hệ thống prototype hoạt động ổn định với các chức năng đăng nhập, quản lý sản phẩm và đặt hàng an toàn. Dự án cung cấp một mô hình tham khảo cho việc phát triển website thương mại điện tử an toàn. Ứng dụng thực tế có thể mở rộng cho các doanh nghiệp nhỏ và vừa trong ngành bán lẻ. Hướng phát triển bao gồm tích hợp thêm tính năng bảo mật nâng cao và mở rộng quy mô. Đồ án góp phần nâng cao nhận thức về bảo mật web trong cộng đồng lập trình viên.

4.1. Kết quả đạt được từ đồ án

Kết quả chính là một prototype website hoạt động với các biện bảo mật tích hợp. Hệ thống ngăn chặn thành công các tấn công phổ biến như SQL injection trong kiểm thử. Mật khẩu người dùng được bảo vệ bằng mã hóa băm an toàn. Giao diện thân thiện và dễ sử dụng cho cả khách hàng và quản trị viên. Tài liệu báo cáo chi tiết về quy trình thiết kế và triển khai. Đồ án đạt được mục tiêu đề ra về mặt học thuật và thực tiễn. Sinh viên thu được kinh nghiệm quý báu trong phát triển web bảo mật.

4.2. Hướng phát triển và ứng dụng thực tế

Hướng phát triển bao gồm triển khai xác thực đa yếu tố và giám sát bảo mật thời gian thực. Ứng dụng thực tế có thể áp dụng cho các cửa hàng tạp hóa trực tuyến muốn tăng cường an toàn dữ liệu. Mô hình có thể tùy chỉnh cho các loại hình thương mại điện tử khác. Công nghệ mới như blockchain có thể được tích hợp để nâng cao bảo mật giao dịch. Đào tạo nhân viên về an ninh mạng là yếu tố quan trọng để duy trì hệ thống an toàn. Dự án mở ra cơ hội hợp tác giữa học viện và doanh nghiệp trong lĩnh vực bảo mật.

21/04/2026

Trích đoạn nội dung tài liệu

TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT TP.HCM KHOA CÔNG NGHỆ THÔNG TIN BỘ MÔN CÔNG NGHỆ PHẦN MỀM ---------- BÁO CÁO ĐỒ ÁN CUỐI KÌ BẢO MẬT WEB ĐỀ TÀI: WEBSITE BÁN HÀNG TẠP HÓA Sinh viên thực hiện: Nhóm 1 Giảng viên hướng dẫn: ThS. Lê Thị Minh Châu TP. HỒ CHÍ MINH – THÁNG 07 NĂM 2020 2 ĐH SƯ PHẠM KỸ THUẬT TP.HCM CỘNG HÒA XHCN VIỆT NAM KHOA CÔNG NGHỆ THÔNG TIN Độc lập – Tự do – Hạnh phúc ****** ****** PHIẾU NHẬN XÉT CỦA GIẢNG VIÊN HƯỚNG DẪN Họ và tên Sinh viên 1: MSSV 1: Họ và tên Sinh viên 2: MSSV 2: Chuyên ngành: Công nghệ phần mềm Tên đề tài: WEBSITE BÁN HÀNG TẠP HÓA Họ và tên giảng viên hướng dẫn: ThS. Lê Thị Minh Châu NHẬN XÉT 1. Về nội dung đề tài và khối lượng thực hiện ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………… 2. Đánh giá loại: …………………………………………………………………………. Hồ Chí Minh, ngày…tháng…năm 2020 Giảng viên hướng dẫn (Ký & ghi rõ họ tên) Website bán hàng tạp hóa 3 LỜI CẢM ƠN Nhóm thực hiện đề tài xin chân thành cảm ơn Cô Lê Thị Minh Châu – giáo viên khoa Công nghệ thông tin trường Đại học Sư phạm kỹ thuật TP.HCM, đã giúp đỡ chúng em rất nhiều trong việc lựa chọn đề tài, hướng dẫn thực hiện, nêu ý kiến nhận xét, cung cấp tài liệu tham khảo trong quá trình thực hiện đề tài. Chúng em còn gửi lời cảm ơn đến quý thầy cô khoa Công nghệ thông tin trường đã giúp đỡ, giải đáp thắc mắc trong quá trình thực hiện. Đồng thời cảm ơn các anh chị khóa trước đã cung cấp nhiều thông tin, tài liệu tham khảo; các bạn cùng khóa cùng nhau trao đổi kinh nghiệm để thực hiện đề tài tốt hơn. Nhóm chúng em rất mong nhận được những ý kiến đóng góp của quý thầy cô và các bạn để đề tài ngày càng hoàn thiện. Xin chân thành cảm ơn! Nhóm thực hiện đề tài.HCM, ngày 1 tháng 07 năm 2020 Nhóm SV thực hiện Website bán hàng tạp hóa 1 MỤC LỤC PHIẾU NHẬN XÉT CỦA GIẢNG VIÊN HƯỚNG DẪN. MỤC ĐÍCH - YÊU CẦU - TỔNG QUAN. TRÌNH BÀY BÀI TẬP LỚN.1 Phân tích yêu cầu.2 Thiết kế chức năng.1 Nhận diện từng tác nhân và chức năng trong sơ đồ.3 Đặc tả các Usecase.3 Thiết kế giao diện.1 Màn hình trang chủ.2 Màn hình chi tiết sản phẩm.3 Màn hình giỏ hàng.4 Màn hình xác nhận đã đặt hàng.5 Màn hình đăng nhập.6 Màn hình Quên mật khẩu.7 Màn hình Quản lý tài khoản - Thông tin.8 Màn hình Quản lý tài khoản - Đổi mật khẩu.9 Màn hình Quản lý loại mặt hàng và các màn hình liên quan.10 Màn hình Quản lý mặt hàng và các màn hình liên quan.11 Màn hình Quản lý Tag và các màn hình liên quan.12 Màn hình Quản lý nhà cung cấp và các màn hình liên quan.13 Màn hình Quản lý sản phẩm và các màn hình liên quan.14 Màn hình Quản lý nhân viên và các màn hình liên quan.15 Màn hình Quản lý đơn hàng và các màn hình liên quan.4 Thiết kế cơ sở dữ liệu.2 Lược đồ quan hệ.5 Thiết kế code.43 Website bán hàng tạp hóa 2 2. CÀI ĐẶT MÔI TRƯỜNG.1 Download SQL Server.2 Cài đặt SQL Server.1 Download Visual Studio 2019.1 Cài đặt Visual Studio. CHẠY CHƯƠNG TRÌNH. Cài đặt CSDL. Cấu hình project trong Visual Studio. Deploy và Host project với IIS trên Windows. Nâng cao tính bảo mật của trang sử dụng Secure Socket Layer SSL. CÁC LỖI BẢO MẬT – NGUYÊN NHÂN – GIẢI PHÁP NGĂN CHẶN CŨNG NHƯ CHỈNH SỬA CÁC LỖI XUẤT HIỆN TRONG PROJECT.1 Phương pháp thủ công với các lỗi bảo mật thông dụng. Sensitive Data Exposure:. XML External Entities (XXE):. Broken Access Control:. Cross-Site Scripting (XSS):. Using Components with Known Vulnerabilities:. Insufficent Logging & Monitoring:.2 Sử dung các công cụ quét lỗ hỏng bảo mật web.151 Website bán hàng tạp hóa 3 5.2 OWASP Zed Attack Proxy (OWASP ZAP).3 Burp Suite Professsional.163 BẢNG PHÂN CÔNG CÔNG VIỆC.170 TÀI LIỆU THAM KHẢO.171 Website bán hàng tạp hóa Mục đích – Yêu cầu – Tổng quan Trang 4 1. MỤC ĐÍCH - YÊU CẦU - TỔNG QUAN Mục đích: - Tìm hiểu, phát hiện các lỗ hổng có thể tấn công vào trang web sau đó tiến hành kiểm thử và sửa lỗ hổng đó. Yêu cầu: - Hiểu rõ được các phương thức tấn công, kiểm thử các tấn công đó và sửa thành công các lỗ hổng phát sinh. Tổng quan về trang web: - Website được phát triển bằng ASP.NET Core MVC của Microsoft và sử dụng phương pháp Code first để thiết kế và xây dựng thành 1 website phục vụ kinh doanh online cho một cửa hàng tạp hóa. - Người quản trị và nhân viên sẽ có thể thông qua website để nhận đơn hàng qua đó dễ dàng quản lí đơn hàng và có thể chuẩn bị sản phẩm trước cho khách hàng nhằm tiết kiệm thời gian cho khách hàng. Đồng thời, website sẽ là phương tiện quảng bá hình ảnh và giới thiệu sản phẩm cho các khách hàng chưa có điều kiện đến xem tại cửa hàng. Website bán hàng tạp hóa Trình bày bài tập lớn Trang 5 2. TRÌNH BÀY BÀI TẬP LỚN 2.1 Phân tích yêu cầu Các chức năng của website: Website đảm bảo các yếu tố cơ bản của xác thực và phân quyền như: mỗi nhân viên, người quản trị có một tài khoản riêng, các nhân viên không thể truy cập các trang của người quản trị, người quản trị có thể khóa tài khoản của một nhân viên và mỗi nhân viên sẽ chỉ có thể quản lí những đơn hàng đã được giao cho mình. Chức năng của khách hàng: - Xem danh sách sản phẩm của cửa hàng - Tạo đơn đặt hàng với các thông tin sản phẩm cần mua, thông tin liên lạc và ngày giờ nhận hàng. Chức năng của người quản trị: - Quản lí danh sách sản phẩm của website thông qua việc quản lí từng danh mục: loại mặt hàng (Thực phẩm, đồ uống, đồ dùng gia đình…), mặt hàng (mì, bánh ngọt, đồ uống có gas, nước ngọt, bàn chải, kem đánh răng…) và sản phẩm (gói mì Hảo Hảo, thùng mì Hảo Hảo, bánh mì ngọt Kinh Đô vị dứa, bánh mì ngọt Kinh đô vị bơ…) - Quản lí danh sách các Tag (được gắn cho sản phẩm với các Tag thông dụng như Hot, New, Sale…) - Quản lí danh sách các Nhà cung cấp - Quản lí danh sách Nhân viên và tạo tài khoản cho Nhân viên mới. - Quản lí danh sách Đơn hàng: xem, duyệt hoặc giao đơn cho một Nhân viên. - Quản lí tài khoản cá nhân: đổi mật khẩu, đổi email liên lạc, xác nhận email để phục hồi mật khẩu. Chức năng của nhân viên: Website bán hàng tạp hóa Trình bày bài tập lớn Trang 6 - Quản lí danh sách đơn hàng được chỉ định cho mình để qua thông tin đơn hàng đó liên hệ khách hàng xác nhận đơn và chuẩn bị sản phẩm. - Quản lí tài khoản cá nhân: đổi mật khẩu, đổi email liên lạc, xác nhận email để phục hồi mật khẩu.2 Thiết kế chức năng 2.1 Nhận diện từng tác nhân và chức năng trong sơ đồ Tên tác nhân Chức năng - Đăng nhập - Thêm hàng vào giỏ - Bỏ hàng ra khỏi giỏ Khách hàng - Thanh toán - Quên mật khẩu (Khôi phục mật khẩu) - Quản lý đơn hàng o Xem danh sách đơn hàng o Tìm kiếm đơn hàng o Duyệt đơn hàng Nhân viên o Xóa đơn hàng o Chỉnh sửa thông tin đơn hàng - Đổi mật khẩu tài khoản - Đăng xuất - Quản lý đơn hàng o Xem danh sách đơn hàng o Tìm kiếm đơn hàng Người quản trị o Duyệt đơn hàng o Xóa đơn hàng o Chỉnh sửa thông tin đơn hàng Website bán hàng tạp hóa Trình bày bài tập lớn Trang 7 - Đổi mật khẩu tài khoản - Đăng xuất - Quản lý loại mặt hàng o Xem danh sách loại mặt hàng o Thêm loại mặt hàng o Chỉnh sửa loại mặt hàng o Xóa loại mặt hàng - Quản lý mặt hàng o Xem danh sách mặt hàng o Thêm mặt hàng o Chỉnh sửa mặt hàng o Xóa mặt hàng - Quản lý nhà cung cấp o Xem danh sách nhà cung cấp o Thêm nhà cung cấp o Chỉnh sửa nhà cung cấp o Xóa nhà cung cấp - Quản lý Tag o Xem danh sách Tag o Thêm Tag o Chỉnh sửa thông tin Tag o Xóa Tag - Quản lý nhân viên o Xem danh sách nhân viên o Thêm nhân viên o Chỉnh sửa thông tin nhân viên Website bán hàng tạp hóa Trình bày bài tập lớn Trang 8 o Xóa nhân viên - Quản lý sản phẩm o Xem danh sách sản phẩm o Thêm sản phẩm o Chỉnh sửa thông tin sản phẩm o Xóa sản phẩm Website bán hàng tạp hóa Trình bày bài tập lớn Trang 9 2.2 Các lược đồ Usecase Usecase Website Bán hàng tạp hóa Chi tiết hóa Usecase quản lý đơn hàng Website bán hàng tạp hóa Trình bày bài tập lớn Trang 10 Chi tiết hóa Usecase Quan ly loai mat hang Chi tiết hóa Usecase Quan ly mat hang Website bán hàng tạp hóa Trình bày bài tập lớn Trang 11 Chi tiết hóa Usecase Quan ly nha cung cap Chi tiết hóa Usecase Quan ly nhan vien Website bán hàng tạp hóa Trình bày bài tập lớn Trang 12 Chi tiết hóa Usecase Quan ly san pham Chi tiết hóa Usecase quan ly tag Website bán hàng tạp hóa Trình bày bài tập lớn Trang 13 2.3 Đặc tả các Usecase Use case Đăng nhập Mô tả Dành cho người quản trị, nhân viên đăng nhập vào tài khoản cá nhân để thực hiện các chức năng của mình. Tác nhân kích hoạt Người quản trị, nhân viên Tiền điều kiện Chưa có tài khoản nào đăng nhập Các bước thực hiện (1) Chọn nút “Đăng Nhập” trên Navbar (2) Nhập thông tin tài khoản và mật khẩu (3) Chọn nút “Đăng nhập” (4) Hệ thống kiểm tra thông tin đã nhập, trả về trang chủ với giao diện có chắc chức năng tương ứng của tài khoản đã nhập và báo lỗi nếu thông tin đã nhập không chính xác. Use case Thêm sản phẩm vào giỏ hàng Mô tả Cho phép khách hàng thêm sản phẩm cần đặt vào giỏ hàng Tác nhân kích hoạt Khách hàng Tiền điều kiện Sản phẩm muốn thêm chưa có trong giỏ hàng Các bước thực hiện (1) Từ giao diện thông tin chi tiết sản phẩm (2) Chọn số lượng của sản phẩm đang xem. (3) Chọn nút “Thêm vào giỏ” để thêm sản phẩm vào giỏ hàng và lưu thay đổi trong CSDL. Use case Bỏ sản phẩm khỏi giỏ hàng Mô tả Cho phép khách hàng bỏ sản phẩm khỏi giỏ hàng. Website bán hàng tạp hóa Trình bày bài tập lớn Trang 14 Tác nhân kích hoạt Khách hàng Tiền điều kiện Sản phẩm muốn bỏ phải đang có trong giỏ hàng Các bước thực hiện (1) Ấn vào Giỏ hàng trên Navbar (2) Ấn vào nút “Xóa” (có hình Thùng rác) nằm cạnh sản phẩm muốn bỏ khỏi giỏ. Hoặc (1) Từ giao diện thông tin chi tiết sản phẩm.

Nội dung được bảo vệ bản quyền — Tải xuống đầy đủ