1. Trang chủ
  2. » Luận Văn - Báo Cáo

Báo cáo môn an toàn ứng dụng web & csdl Đề tài xây dựng blog về du lịch có sử dụng các biện pháp bảo mật website và cơ sở dữ liệu

24 0 0
Tài liệu được quét OCR, nội dung có thể không chính xác
Tài liệu đã được kiểm tra trùng lặp

Đ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

Thông tin cơ bản

Tiêu đề Xây dựng blog về du lịch có sử dụng các biện pháp bảo mật website và cơ sở dữ liệu
Tác giả ThS. Phan Nghĩa Hiệp, Phạm Thị Hi Dương, Văn Tớnh, Đổng Thiờn Thảo, Phạm Thị Thựy
Người hướng dẫn ThS. Phan Nghĩa Hiệp
Trường học Học viện Công nghệ Bưu chính Viễn thông
Chuyên ngành An toàn ứng dụng web & CSDL
Thể loại Đồ án tốt nghiệp
Năm xuất bản 2022
Thành phố Thành phố Hồ Chí Minh
Định dạng
Số trang 24
Dung lượng 3,96 MB

Nội dung

HỌC IỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG KHOA CÔNG NGHỆ THÔNG TIN 2 O MÔN AN TOÀN ỨNG DUNG WEB & CSDL i: Xay dung blog v €du lich có sử dụng các biện pháp bảo mật website và cơ sở

Trang 1

HỌC

IỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG

KHOA CÔNG NGHỆ THÔNG TIN 2

O MÔN AN TOÀN ỨNG DUNG WEB & CSDL

i: Xay dung blog v €du lich có sử dụng các biện

pháp bảo mật website và cơ sở dữ liệu

ThS Phan Nghĩa Hiệp

Phạm Thị Hi - NI9DCAT023 Dương Văn Tính - NI9DCAT075 Đổng Thiên Thảo - NI9DCAT079 Phạm Thị Thùy VI - NI9DCAT095 DISCQATOI-N

Tp H ôChí Minh, ngày 27 tháng 11 nam 2022

Trang 2

MỤC LỤC

LỜI NÓI ĐẦU HH nà HH HH HH ng HH gu ng 6 CHƯƠNG 1 CƠ SỞ LÝ THUYẾT :::tv tt nh HH HH HH gu 7 1.1 Lira chon ngôn ngữ lập trình PHÍ: - nh nh HH nh HH TH HH HH KH nh hy 7 1.2 Ứng dụng của mô hình MVC: nh snh Hà HH Hà HH TH HH HH ho HH rẻ 8

2.1.2 Chức năng dành cho “B ]

2.143 Chire nang danh cho “A

2.2 Demo giao dién va chite nan

2, “Wa

Xây dụng blog v €êdu j ch có # wl ng các lï npháp Š o1@ t websitevao ở ữlệli u

Trang 3

DANH MỤC CÁC HÌNH

Trang 4

NHÂN XÉT CỦA GIẢNG VIÊN HƯỚNG DẪN

TP.HCM ngày thang nam 2022 Giảng viên hướng dẫn (ký và ghi họ tên)

ThS Phan Nghĩa Hiệp

LỜI CẢM ƠN

Trang 5

Trên thực tế không có sự thành công nào mà không gắn li với những sự hỗ trợ, giúp đỡ dù ít hay nhi ân, dù trực tiếp hay gián tiếp của người khác Trong suốt thời gian từ khi bắt đầu học tập ở giảng đường đại học đến nay, chúng em đã nhận được rất nhi âi sự quan tâm, giúp đỡ của quý Th% Cô, gia đình và bạn bè

Với lòng biết ơn sâu sắc nhất, chúng em xin gửi đến quý Th Cô ở Khoa Công Nghệ Thông Tin 2 ~ Học Viện Công Nghệ Bưu Chính Viễn Thông đã cùng với tri thức và tâm huyết của mình để truy đạt vốn kiến thức quý báu cho chúng em trong suốt thời gian học tập tại trưởng Và đặc biệt, trong học kỳ này, Khoa đã tổ chức cho chúng em được tiếp cận với môn học mà theo chúng em là rất hữu ích đối với sinh viên ngành An Toàn Thông Tin cũng như tất cả các sinh viên thuộc các chuyên ngành Công Nghệ Thông Tin khác Đó là môn học “An toàn Ưng dụng Web và Cơ sở dữ liệu”

Chúng em xin chân thành cảm ơn ThS Phan Nghĩa Hiệp đã tận tâm hướng dẫn chúng em qua từng buổi học trên lớp Nếu không có những lời hướng dẫn, dạy bảo của thầ% thì chúng em nghĩ bài báo cáo này của chúng em rất khó có thể hoàn thiện được Một Lần nữa, chúng em xin chân thành cảm ơn th 3

Bài báo cáo này được thực hiện trong khoảng thời gian g3n 4 tuần Bước đầi đi vào tìm hiểu thực tế, xây đựng và bảo mật một ứng dụng web và cơ sở dữ liệu, kiến thức của chúng em còn hạn chế và còn nhi âi bỡ ngỡ Do vậy, không tránh khỏi những thiếu sót

là đi `âi chắc chấn, chúng em rất mong nhận được những ý kiến đóng góp quý báu của quý

Th Cô và các bạn học cùng lớp để kiến thức của chúng em trong lĩnh vực này được hoàn thiện hơn

Sau cùng, chúng em xin kính chúc quý Th Cô trong Khoa Công Nghệ Thông Tìn

mệnh cao đẹp của mình là truy â đạt kiến thức cho thế hệ mai sau

4 2, Wa

Trang 6

LOI NOI DAU

Du lich 1a tat ca vékhdm phá những địa điểm mới, văn hóa, ẩn thực, nghĩ lễ và phong cách sống Chúng ta cũng đi du lịch bởi vì khoảng cách và sự khác biệt kích thích

sự tò mò của tất cả, đi âi mà chúng ta không thể quan sát bằng cách ng đ ở nhà Bản thân việc đi du lịch có những lợi thế, vì nó khiến người ta quên đi những lo lắng, bu ồn ri và thất vọng Nhưng không phải ai cũng có nhi âi kinh nghiệm khi đi du lịch, cũng như không biết nhí 'âi v êđiểm du lịch như vị trí, thời tiết, nơi nghỉ chân và các dịch vụ ăn uống khác

Với sự phát triển mạnh mẽ của thơi đại công nghệ và hệ sinh thái “kinh doanh hình ảnh và trải nghiệm du lịch” đang ngày càng nở rộ, ai cũng chia sẻ kiến thức du lịch, ai cũng có những tấm hình như mơ, những video công phu v`ênhững nơi họ đặt chân đến

Họ chia sẻ những trải nghiệm ở những nơi mà họ đi qua, v`ê văn hóa, ẩm thực, nghĩ lễ và phong cách sống Đi `âi này không chỉ giúp họ lưu giữ được những kỉ niệm, thỏa ni ân đam mê, tang khả năng sáng tao, và rất nhi ` lợi ích khác mà còn là gợi ý cho những ai cũng đang có dự định đi du lịch

Dựa trên tình hình đó nhóm đã đưa ra ý tưởng xây dựng một trang Blog nhằm giúp cac Travel Blogger — những người có sở thích, đam mê v'` du lịch có thể chia sẻ trải nghiệm cá nhân đến những độc giả Tuy nhiên, đi kèm với sự phổ biến và các tiện ích mà các ứng dung web dem lai cho ng opi dùng, các nguy cơ mất an toàn và các dạng tấn công vào các website và các hệ thống đi kèm cũng tăng trưởng ở mức đáng lo ngại Các dang tấn công, xâm nhập các website, đánh cấp dữ liệu người dùng từ các cơ sở dữ liệu web và các dạng website lừa đảo trở nên phổ biến Do đó, việc đảm bảo an toàn cho các ứng dụng web và cơ sở dữ liệu là yêu c`âi cấp thiết và là mối quan tâm của mỗi quốc gia, cơ quan,

tổ chức và mỗi người dùng

Qua yêu cù thực tế đó nhóm đã tìm hiểu cũng như đánh giá đi đến giải pháp xây dựng Blog v`êdu lịch có sử dụng các biện pháp bảo mật website và cơ sở dữ liệu Trang web cho phép người dùng đăng ký tài khoản để đăng nhập vào website và đăng các bài viết trải nghiệm cá nhân v`êdu lịch lên trang chủ kèm theo các hình ảnh Đối với những người dùng không muốn đăng ký tài khoản thì vẫn có thể vào trang chủ được nhưng chỉ

có thể xem bài viết của các Blogger khác chứ không thể đăng bài được Ngoài ra, trang web sẽ sử dụng các biện pháp bảo mật để tránh sự tấn công tử những người dùng có ý đô xấu nhằm đánh cắp dữ liệu từ trang web

Nội dung của đ ôán bao g Gm 3 chương:

Chương 1: Cơ sở lý thuyết: Giới thiệu ngôn ngữ lập trình và mô hình được sử dụng trong trang web

Chương 2: Chương trình demo thực nghiệm: Demo chức năng và giao diện trang web

4 2, Wa

Trang 7

Chương 3: Tổng kết: Đưa ra kết quả đạt được và đánh giá ưu khuyết điểm

4 2, Wa

Trang 8

CH NŒữŒ.C S OL THUYẾẾT

CHUONG I CƠ SỞ LÝ THUYẾT

1.1 _ La chọn ngôn ngữ lập trình PHP:

các bạn trẻ theo ngành công nghệ thông tin đang rất quan tâm và muốn tìm hiểu để thiết

kế website bởi tính ưu việt và mở rộng của nó Có tới 90% các trang web hiện nay viết bằng ngôn ngữ lập trình PHP, từ những trang báo điện tử, trang mạng xã hội cho tới các cổng thông tin của Chính phủ PHP là một ngôn ngữ lập trình kịch bản được chạy ở phía server nhằm sinh ra mã Hyper Text Markup Language (HTML) Những đặc điểm nổi trội

để ta lựa chọn PHP:

và tự do Vì thế đó mà PHP đã được cài đặt phổ biến trên các Web Server thông dụng hiện nay như Apache, Nginx hay IIS

triển khá lớn mạnh, việc cập nhật các bản mới cũng như khắc phục lỗi phiên bản diễn ra khá thường xuyên khiến PHP càng ngày càng hoàn thiện Đã rất nhi âu blog, diễn đàn trong và ngoài nước thưởng xuyên đ`êcập đến PHP nên khả năng tiếp cận

được rút ngắn đi nhi âu Vì vậy cộng đng hỗ trợ, chia sẻ kinh nghiệm v Šlập trình PHP cũng rất d ố dào

rất phong phú, đa dạng Tử những cái rất nhỏ như chỉ là một đoạn mã ngu n nho nhỏ, một hàm hay cho tới những cái lớn hơn như Framework (Zend, CakePHP, Symfony ) hay ứng dụng hoàn chinh (Joomla, WorkPress ) Voi thư viện code phong phú, việc học tập và ứng dụng PHP trở nên rất dễ dàng và nhanh chóng

cũng đáp ứng nhu cù này rất tốt Với việc tích hợp sẵn nhi âi Cơ sở dữ liệu phía nguoi ding (Database Client) trong PHP da lam cho trng dụng PHP dễ dàng kết nối tới các hệ cơ sở dữ liệu thông dụng Một sẽ hệ cơ sở dữ liệu thông dụng mà PHP c6 thé lam viéc la: MySQL, SQL, Oracle

tượng (OOP) đã không còn xa lạ với lập trình viên Vơi skhar năng và lợi ích của

mô hình này nên nhi âi ngôn ngữ đã triển khai để hỗ trợ OOP Từ phiên bản PHP 5, PHP đã có khả năng hỗ trợ hi hết các đặc điểm nổi bật của lập trình hướng đối

Trang 9

1.2

tượng như kế thừa, đa hình Kết hợp với sợ gia tăng không ngừng của các Framework và ứng dụng PHP viết bằng mô hình OOP nên lập trình viên dễ dàng

và nhanh chóng tiếp cận với cái mới này

Tính bảo mật: Bản thân PHP là mã ngu ñ mở và cộng đồng phát triển rất tích cực nên có thể nói PHP khá là an toàn Nó cũng cung cấp nhi`âi cơ chế cho phép lập trình viên triển khai tính bảo mật cho ứng dụng của mình như session, các hàm lọc

dữ liệu, kỹ thuật ép kiểu dữ liệu, thư viện PHP Data Object để tương tác với cơ sở

dữ liệu an toàn hơn Nếu kết hợp với các kỹ thuật bảo mật ở các tầng khác thì ứng dụng PHP sẽ trở nên chắc chấn hơn và đảm bảo hoạt động an toàn cho website Ứng dụng của mô hình MVC:

Mô hình MVC (Model View Controller) hiện nay đã và đang được ưa chuộng sử dụng phổ biến, rộng rãi trên hân hết các trang web với các dự án phần m`ân và công nghệ

có quy mô lớn Mỗi khi có một yêu c`âi bất kỳ tử phía Client gửi đến cho Server, bộ phận Controller sẽ có nhiệm vụ chấp nhận yêu câi và xử lý yêu cân đó Nếu c3n thiết nó sẽ gọi đến bộ phận Model - đây vốn là bệ phận làm việc với Database Sau khi xử lý xong yêu cần thì toàn bộ kết quả được đẩy vêphn View, tại đây sẽ gen ra mã HTML và tạo nên giao diện sau đó sẽ trả toàn bộ HTML v`êtrình duyệt để hiển thị Nhờ sự tách biệt giữa các

bộ phận (Model, View, Controller) với nhau giúp cho người dùng tách riêng phần hiển thị

và dữ liệu, cho phép sửa đổi trong từng dữ liệu mà không làm ảnh hưởng đến các dữ liệu khác

Những ưu điểm có thể kể đến của MVC:

Kiểm tra dễ dàng: Nhờ vào các thành phần độc lập giúp người lập trình dễ kiểm soát, kiểm tra và khắc phục các vấn đề các lỗi phát sinh trước khi hoàn thiện sản phẩm và đưa đến tay ngươi dùng

Tối ưu lượng băng thông: Việc không sử dụng viewstate của mô hình MVC sẽ giúp tiết kiệm băng thông và giúp website hoạt động ổn định hơn

Chức năng control: Mô hình MVC đóng vai trò tối ưu bộ control trên nền tảng ngôn ngữ lập trình khi mà kết hợp các loại ngôn ngữ lập trình như CSS, HTML, Javascript

View va size: MVC giúp tối ưu băng thông khi có nhi ân yéu ca duoc thuc hién cùng lúc sẽ ảnh hưởng đến đường truy lê mang

Chức năng Separation of Concern: Chức năng này cho phép phân loại Model, View, Database để dễ quản lý và kiểm soát

Tính kết hợp: Việc mô hình MVC có thể kết hợp trên nhi lâi nền tảng website và ứng dụng khác nhau giúp người lập trình tiện hơn khi viết code

Kết cấu tương đối đơn giản: Ưu điểm này phù hợp cho đối tượng sử dụng khi có nhu c3 lập trình website hoặc các ứng dụng

4 2, Wa

Trang 10

CH NŒữŒ.C S OL THUYẾẾT

4 2, Wa

Trang 11

CH NG®.CH N@TRINH DEMOTH WNGHEM

CHUONG 2 CHUONG TRINH DEMO THUC NGHIEM

Người sử dụng, tương tác với trang web được chia làm 3 loại bao gầm: Độc giả, Blogser và Admin

đăng nhập vào trang web

nhập vào trang web viết bài, đăng bài

web và c3n đăng nhập vào trang web bằng tài khoản admin

2.1.1 Chức năng dành cho “Độc giả”

- _ Xem bài viết

2.1.2 Chức năng danh cho “Blogger”

- - Quản lý bài viết

2.1.3 Chức năng dành cho “Admin”

- - Đăng nhập

Trang 12

CH NG®.CH N@TRINH DEMOTH WNGHEM

- - Quản lý bài viết

- _ Duyệt bài viết

2.2.1 Trang chủ

- _ Giao điện trang chủ hiển thị đần tiên khi truy cập trang web

X TRAVEL AGENCY WEBSITE

4 2, Wa

Xây dụng blog v €êdu j ch có # wl ng cdc Bi n phdp& o1@ t websitevao & wW éli u

Trang 13

CH NG®.CH N@TRINH DEMOTH WNGHEM

- - Chức năng đã được filter làm sạch các ký tự đặc biệt Ð ông thời sử dụng cơ chế bind_param để truy xuất dữ liệu nhằm chống lại các cuộc tấn công SQL Injection

động thực hiện khóa tài khoản nhằm hạn chế tấn công brute-force (vét cạn)

để lấy mật khẩu và tên đăng nhập

Ban cân nhập tên người dùng và mật khẩu đế đăng nhập

Not 2 member? Sign up now

Hình 2 Giao diện trang đăng nhập 2.2.3 Đăng xuất

- - Khi thực hiện đăng xuất, hệ thống sẽ thực hiện xóa thông tin của session, đồng thời hủy session của người dùng hiện tại

Trang 14

14

CH NG®.CH N@TRINH DEMOTH WNGHEM

Thêm bài viết Quản lý bài viết

Đổi mật khấu

Hình 3 Giao diện đăng xuất

2.2.4 Đổi mật khẩu

username, mật khẩu hiện tại và mật khẩu mới để đổi mật khẩu của chính mình Khi thực hiện đăng nhập hệ thống sẽ kiểm tra tên username do người dùng cung cấp và username của người dùng hiện tại để tránh các cuộc tấn công IDOR

- - Mật khẩu mới c3n phải thỏa mãn chính sách mật khẩu bao ø ôm tối thiểu 8

ký tự, chữ thường, chữ hoa, ký tự đặc biệt và chữ số nhằm tránh việc attacker lấy được mật khẩu qua cuộc tấn brute-force mà không mất quá nhi âu thời gian

4 2

Xây dụng blog v €êdu j ch có # wl ng cdc Bi n phdp& o1@ t websitevao & wW éli u

Trang 15

CH NG®.CH N@TRINH DEMOTH WNGHEM

4 2, Wa

Xây dụng blog v €êdu j ch có # wl ng cdc Bi n phdp& o1@ t websitevao & wW éli u

Trang 16

ĐÂY LÀ 8À! VIẾT SỐ 3 ARAAAAAAAARAAA

Hình 6 Giao diện chức năng Xem bài viết 2.2.7 Thêm bài viết

- _ Chức năng thêm bài viết cho phép người dùng đã đăng nhập thêm bài viết file ảnh đính kèm chỉ được phép sử dụng dinh dang jpg

4 2, Wa

Xây dụng blog v €êdu j ch có # wl ng cdc Bi n phdp& o1@ t websitevao & wW éli u

Trang 17

CH NG®.CH N@TRINH DEMOTH WNGHEM

TRAVEL AGENCY WEBSITE

Nhập tiêu đề bài việt

Chọn tệp |Không có tếp nào được chọn

Nhập nội dung bải viết

Ngày đăng: 15/02/2025, 22:05

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN