1
Mở đầu
1.1
Về tài liệu
Tài liệu giúp chúng ta tìm hiểu các chủ đề liên quan đến bảo
mật trong hệ thống web. Gồm các khía cạnh: kĩ thuật, tổ chức hệ thống, quá
trình phát triển, triển khai và vận hành. Hi vọng sẽ gợi ra những ứng dụng hữu
ích, thiết thực vào công việc và cuộc sống; hướng tới một môi trường web lành mạnh,
an toàn cho nhiều người.
Chúng ta có thể nhìn vấn đề Bảo mật hệ thống web với vai trò
là:
– Người sử dụng
– Người làm phần mềm
– Chuyên gia bảo mật
– Nhà quản lý
– Nhà hoạch định chính sách, thực thi pháp luật
Với mỗi chủ đề sẽ có phần khái niệm; phần bài tập và thực
hành; phần xem và đọc thêm; và phần câu hỏi ôn tập để củng cố kiến thức.
Trong tài liệu chắc chắn có sự chủ quan, hạn chế về kiến thức,
kĩ năng, nhận định…v.v mong người đọc, đọc trong tâm thế hoài nghi.
2
Hệ thống web
2.1
Web là gì?
Web là không gian
thông tin toàn cầu. Nó còn có tên gọi khác là WWW, hoặc World Wide Web.
Không gian thông tin toàn cầu là một không gian, được tạo ra
bởi thông tin và có phạm vi toàn cầu.
Web do Tim Berners-Lee, người Anh, phát minh ra vào năm
1989.
Web bao gồm rất nhiều loại nội dung, ứng dụng, thành phần,
tài nguyên…v.v. Vì vậy, chúng ta cũng hay gọi nó là hệ thống web.
Thông tin trong hệ thống web tồn tại ở nhiều dạng: văn bản
(text), hình ảnh, video, âm thanh.
Chúng ta cùng trải nghiệm với hệ thống web, thông qua phần
thực hành sau:
– Mở trình duyệt web (web browser) bất kì. Ví dụ Chrome.
– Trên ô địa chỉ của trình duyệt (address bar), nhập vào địa
chỉ sau, để mở một trang web: https://vi.wikipedia.org/wiki/World_Wide_Web
– Chúng ta sẽ thấy một trang thông tin được mở ra, trong đó
bao gồm văn bản, hình ảnh và có thể có âm thanh, video.
– Nếu để ý trên trang thông tin của wikipedia, chúng ta sẽ
thấy các chữ “toàn cầu”, “không gian”, “thông tin” và nhiều chữ khác có màu
xanh chứ không phải màu đen như các nội dung còn lại. Khi chúng ta nhập địa chỉ
của một trang web vào trình duyệt là chúng ta đã bước vào “không gian web”, và
các chữ có màu xanh sẽ là con đường, là cánh cổng để dẫn chúng ta đến những nơi
khác trong hệ thống web. Nếu không tin, bạn cứ thử bấm theo các chữ màu xanh,
xem nó sẽ dẫn bạn đi những đâu.
Làm sao biết được chúng ta đang đứng ở đâu trong cái không
gian thông tin bao la đó?
Cũng giống như thế giới thật, thế giới web cũng có cơ chế
đánh địa chỉ cho mọi thứ. Như một cái bàn trong trường đại học nó sẽ có địa chỉ
như sau:
Tên bàn / Phòng nào /
Tòa nhà nào / Đại học nào / Địa chỉ / Thành phố nào / Tỉnh nào / Nước nào
Ví dụ:
Bàn 02 / Phòng 12 /
Tòa nhà A20 / Đại học Đà Lạt / 01 PĐTV / Đà Lạt / Lâm Đồng / Việt Nam
Trong hệ thống web, có rất nhiều thứ cần phải đánh địa chỉ;
như một bài viết, một hình ảnh, một trang đăng ký, một trang mua hàng, một vị
trí trong một bài viết…v.v. Đây được gọi là các tài nguyên web. Mỗi một tài
nguyên web sẽ có một địa chỉ duy nhất, gọi là URL.
2.2 URL là gì
URL, viết tắt của Uniform Resource Locator, là một chuỗi các
kí tự, được viết theo một định dạng chuẩn, dùng để xác định vị trí của một tài
nguyên duy nhất trong hệ thống web và cho biết máy tính phải dùng giao thức gì
để lấy được tài nguyên web về máy người dùng.
Định dạng chuẩn (cú pháp chuẩn) của một URL có dạng như sau:
Giải thích các thành phần của một URL:
– Scheme là giao thức được sử dụng để trao đổi thông tin giữa
client và server. Một số scheme phổ biến: http, https, ftp, file, mailto, data,
irc. Scheme được ngăn cách với các thành phần phía sau bằng dấu “://”.
– Domain (hay domain name) là tên miền của máy server, cũng
được gọi là hostname, ví dụ: en.wikipedia.org,
daotao.congty.vn. Máy tính của người
dùng sẽ đổi tên miền này thành địa chỉ IP để nó có thể tìm thấy và giao tiếp với
máy server. Cũng có thể phân chia tên miền thành các thành phần nhỏ hơn như:
tên miền con (sub domain), tên miền riêng, tên miền cấp 2 hoặc cấp 1 (top level
domain); ví dụ trong daotao.congty.vn,
thì daotao là tên miền con, congty là tên miền riêng, và vn là tên miền cấp 2.
– Port là cổng, được sử dụng để giao tiếp giữa client và
server. Trong giao thức HTTP nếu không chỉ định rõ, thì giá trị của port sẽ được
ngầm hiểu là 80, giao thức HTTPS là 443.
– Path là đường dẫn (đường dẫn thư mục, đường dẫn tuyệt đối)
của tài nguyên web trên máy server. Đường dẫn luôn bắt đầu bằng dấu xuyệt
(slash) (/), có nghĩa là thư mục gốc, mỗi thư mục ngăn cách nhau bằng một dấu
“/”. Ví dụ: /wiki/Uniform_Resource_Locator;
/e-learning/ViewCourses.php; hay /C:/Users/Win%208.1/Downloads/openemr/trangweb.html.
– Ngoài ra, URL cũng có thể chứa chuỗi truy vấn hoặc một định
danh. Chuỗi truy vấn (query string) là chuỗi chứa các cặp key=value, nằm ngay
sau dấu ?, ví dụ: code=3151. Định
danh vùng nội dung (fragment_id) là một vị trí trên một trang web, được đánh dấu
bằng một cái tên cụ thể, ví dụ một vùng trên trang web có tên là #noi-dung.
Xem hình minh họa một URL cụ thể,
[Làm Bài tập 2, trong
phần Bài tập và thực hành.]
2.3 Liên kết
Trên hệ thống web có nhiều tài nguyên khác nhau, mỗi tài
nguyên có một địa chỉ (URL) cụ thể, duy nhất. Bây giờ, nếu chúng ta liên kết
các tài nguyên này lại với nhau, thì chúng sẽ tạo thành một mạng lưới (một
không gian) thông tin xuyên suốt.
Siêu liên kết (hyperlink) hay liên kết (links) là một tham
chiếu đến tài liệu, hoặc tài nguyên web, người dùng có thể bấm vào các liên kết
này để mở một tài nguyên web. Một liên kết có thể trỏ đến tài liệu khác hoặc một
vị trí cụ thể bên trong tài liệu. Chúng ta có thể dùng 2 khái niệm Siêu liên kết
và Liên kết thay thế cho nhau.
Xem hình minh họa,
Để liên kết các tài nguyên với nhau, chúng ta sẽ sử dụng
dòng lệnh sau:
Dòng lệnh trên được viết bằng ngôn ngữ HTML.
HTML (HyperText Markup Language) là công cụ dùng để tạo ra
giao diện trang web. Lập trình viên sử dụng ngôn ngữ này để tạo ra mã nguồn cho
trang web. Trình duyệt web (ví dụ Chrome) sẽ thực thi mã nguồn để tạo ra giao
diện trang web.
Chúng ta cùng trải nghiệm với HTML bằng cách: tạo ra một
trang web, trong đó có một liên kết, khi người dùng bấm vào liên kết sẽ dẫn người
dùng tới trang web của Vietcombank.
Các bước thực hiện:
– Mở một chương trình soạn mã nguồn bất kì. Ví dụ Notepad
– Nhập vào đoạn mã sau để tạo nội dung trang web, trong đó
có một liên kết tới trang đăng nhập của Vietcombank.
<a
href="https://vcbdigibank.vietcombank.com.vn/login?returnUrl=%2F">Bấm
vào đây để đăng nhập vào Tài khoản ngân hàng</a>
– Lưu nội dung trang web, với tên bất kì. Lưu ý phần mở rộng
của tập tin phải là .html. Ví dụ NganHang.html.
Chú
ý: khi lưu trong Notepad, để chắc chắn phần mở rộng của tập tin là “.html” chứ
không phải là “.html.txt” thì trong lúc lưu, tới phần nhập tên cho tập tin, mục
File name, nhớ bao phần tên và phần mở rộng bằng dấu nháy kép (“”), ví dụ “NganHang.html”.
– Bấm đúp chuột vào tập tin NganHang.html. Trang web NganHang.html
sẽ mở trên trình duyệt. Xem hình minh họa.
– Trên cửa sổ trình duyệt, bấm chuột vào liên kết “Bấm vào
đây để đăng nhập vào Tài khoản ngân hàng”. Trình duyệt sẽ chuyển chúng ta đến
trang web Vietcombank.
Vậy là từ một cái máy tính, chúng ta đã tạo ra một điểm khởi
đầu (một nút) trên không gian thông tin, từ đó chúng ta có thể theo các liên kết
để đi đến nhiều nơi, nhiều máy tính khác, nhiều ứng dụng, nhiều tài nguyên
khác.
Một trong những hình thức lừa đảo trên mạng hiện nay là giả
mạo các trang web chính thống để lừa nạn nhân nhằm thu thập thông tin của người
dùng. Từ thông tin này, tội phạm mạng sẽ sử dụng cho nhiều mục đích xấu khác.
Để giả mạo một trang web chính thống, tội phạm sẽ thiết kế
giao diện giống hệt trang web chính thống, với địa chỉ (URL, hoặc tên miền) gần
giống với trang web chính thống.
2.4 Xem và đọc thêm
[1] https://vi.wikipedia.org/wiki/World_Wide_Web
[2] Cảnh báo 16 hình thức lừa đảo phổ biến trên không gian mạng,
xem 12/4/2023 (https://baochinhphu.vn/canh-bao-16-hinh-thuc-lua-dao-pho-bien-tren-khong-gian-mang-102230111100953007.htm)
2.5 Bài tập và thực hành
Bài
tập 1. Làm các phần thực hành, viết lại các đoạn mã trong phần lý thuyết.
Bài tập 2. Sử dụng trình duyệt web, truy cập các trang web bất
kì và điền thông tin vào bảng sau:
Tên tài nguyên |
URL tương ứng |
(Một hình ảnh) |
|
(Một bài viết) |
|
(Một trang đăng nhập) |
|
(Một video) |
|
(Một vị trí cụ thể
trong một bài viết) |
|
Bài tập 3. Hãy tạo một trang web, trong đó có 5 liên kết đến
5 trang web mà bạn hay mở mỗi ngày. Thiết lập trang web này là trang mặc định,
khi mở trình duyệt (nghĩa là mỗi khi bạn mở trình duyệt web, thì trang web có
chứa 5 liên kết sẽ được mở sẵn).
Bài tập 4. (Tùy chọn) Bạn hãy tạo một giao diện web giống với
trang của Vietcombank (https://vcbdigibank.vietcombank.com.vn/login?returnUrl=%2F)
2.6 Câu hỏi ôn tập
Câu 1. URL là viết
tắt của?
A. Unicode Resource Locator
B. Uniform Resource Locator
C. Unit Resume Location
D. United Requirement Location
Câu 2. Các thành phần thường có trong một URL gồm?
A. schema, fragment_id, query_string, path, port, domain
B. scheme, fragment_id, query_string, path, socket, domain
C. scheme, fragment_id, query_string, path, port, domain
D. scheme, fragment_id, query_language, path, port, domain
Câu 3. Năm 2023, ước tính Việt Nam đang có bao nhiêu người sử
dụng Internet?
A. 40 triệu
B. 50 triệu
C. 70 triệu
D. 100 triệu
Câu 4. A Uniform Resource Locator (URL) is a reference to a
web resource that specifies its location on a computer network and a _______
for retrieving it.
A. address
B. channel
C. format
D. mechanism
Câu 5. In computing, a hyperlink, or simply a link, is a ___________
to data that the user can follow by clicking or tapping. A hyperlink points to
a whole document or to a specific element within a document.
A. reference
B. format
C. following
D. calling
Câu 6. HTML là:
A. Tên một trình
duyệt web
B. Tên một giao
thức mạng
C. Địa chỉ của một
trang web
D. Là ngôn ngữ để
tạo giao diện trang web
Đáp án: 1(B), 2 (C), 3(C), 4 (D), 5(A), 6 (D)
----