CHƯƠNG 1 TỔNG QUAN VỀ WEBSITE VÀ MỘT SỐ VẤN ĐỀ AN NINH 1. Một số khái niệm cơ bản về Website 1. Khái niệm Web World Wide Web, gọi tắt là Web hoặc WWW, mạng lưới toàn cầu là một không gian thông tin toàn cầu mà mọi người có thể truy nhập (đọc và viết) qua các máy tính nối với mạng Internet. Thuật ngữ này thường được hiểu nhầm là từ đồng nghĩa với chính thuật ngữ Internet.
Nhưng Web thực ra chỉ là một trong các dịch vụ chạy trên Internet, chẳng hạn như dịch vụ thư điện tử. Web được phát minh và đưa vào sử dụng vào khoảng năm 1990, 1991 bởi viện sĩ Viện Hàn lâm Anh Tim Berners-Lee và Robert Cailliau (Bỉ) tại CERN, Geneva, Switzerland. Các tài liệu trên World Wide Web được lưu trữ trong một hệ thống siêu văn bản (hypertext), đặt tại các máy tính trong mạng Internet. Người dùng phải sử dụng một chương trình được gọi là trình duyệt web (web browser) để xem siêu văn bản.
Chương trình này sẽ nhận thông tin (documents) tại ô địa chỉ (address) do người sử dụng yêu cầu (thông tin trong ô địa chỉ được gọi là tên miền (domain name)), rồi sau đó chương trình sẽ tự động gửi thông tin đến máy chủ (web server) và hiển thị trên màn hình máy tính của người xem. Người dùng có thể theo các liên kết siêu văn bản (hyperlink) trên mỗi trang web để nối với các tài liệu khác hoặc gửi thông tin phản hồi theo máy chủ trong một quá trình tương tác. Hoạt động truy tìm theo các siêu liên kết thường được gọi là duyệt Web. Quá trình này cho phép người dùng có thể lướt các trang web để lấy thông tin.
Tuy nhiên độ chính xác và chứng thực của thông tin không được đảm bảo. Hoạt động của Web Thông qua trình duyệt, người dùng cuối sẽ kết nối đến máy chủ phục vụ web bằng địa chỉ URL. Tại đây, máy chủ phục vụ web sẽ xử lý kết nối và gửi yêu cầu đến ứng dụng web. Tùy theo yêu cầu, ứng dụng web sẽ truy vấn đến cơ sở dữ liệu và nhận kết quả trả về, sau đó sẽ gửi phản hồi về máy chủ phục vụ web.
Cuối cùng máy chủ phục vụ web sẽ gửi dữ liệu về trình duyệt dưới dạng siêu văn bản và người dùng cuối sẽ nhận thông tin hiển thị trên trình duyệt. Trình duyệt Web Trình duyệt web là một phần mềm ứng dụng cho phép người sử dụng xem và tương tác với các văn bản, hình ảnh, đoạn phim, nhạc, trò chơi và các thông tin khác ở trên một trang web của một địa chỉ web trên mạng toàn cầu hoặc mạng nội bộ. Văn bản và hình ảnh trên một trang web có thể chứa siêu liên kết tới các trang web khác của cùng một địa chỉ web hoặc địa chỉ web khác. Trình duyệt web cho phép người sử dụng truy cập các thông tin trên các trang web một cách nhanh chóng và dễ dàng thông qua các liên kết đó.
Trình duyệt web đọc định dạng HTML, CSS, XML,… để hiển thị, do vậy một trang web có thể hiển thị khác nhau trên các trình duyệt khác nhau. Một số trình duyệt web hiện nay cho máy tính cá nhân bao gồm Internet Explorer, Mozilla Firefox, Safari, Opera, Avant Browser, Konqueror, Lynx, Google Chrome, Flock, Arachne, Epiphany, K-Meleon và AOL Explorer. Địa chỉ URL Địa chỉ URL (Uniform Resource Locator) [21] được dùng để tham chiếu tới tài nguyên trên Internet. URL mang lại khả năng siêu liên kết cho các trang mạng, các tài nguyên khác nhau.
14 Một URL gồm các thành phần sau: Giao thức (ví dụ: http, ftp) nhưng cũng có thể là một cái tên khác (ví dụ: news, mailto). Tên miền (ví dụ: example. Cổng (ví dụ: 80, 8080), tuy nhiên thành phần này có thế không bắt buộc. Đường dẫn tuyệt đối trên máy phục vụ của tài nguyên (ví dụ: thumuc/trang).
Tên miền Mục đích chính của tên miền là để cung cấp một hình thức đại diện, hay nói cách khác, dùng những tên dễ nhận biết, thay cho những tài nguyên Internet mà đa số được đánh số bằng địa chỉ IP rất khó nhớ. Việc dịch từ tên miền sang địa chỉ IP và ngược lại do hệ thống DNS trên toàn cầu thực hiện [21]. Tên miền có chiều dài tối đa 67 ký tự và chỉ bao gồm các ký tự chữ cái thông thường và các ký tự số. Tên miền gồm hai dạng là tên miền Quốc gia và tên miền Quốc tế.
Tên miền Quốc gia quy định theo Quốc gia của bạn, ví dụ: Việt Nam là .vn; Nhật Bản là .jp; Anh là .uk; Mỹ là. Tên miền Quốc tế: được dùng khắp trên thế giới như:. Ý nghĩa một số tên miền mở rộng thông dụng: .com: Dành cho các công ty thương mại.net: Dành cho các công ty về mạng (network) hay cung cấp dịch vụ mạng.org: Dành cho các tổ chức, nhóm.gov: Dành cho các tổ chức chính phủ.edu: Dành cho các tổ chức giáo dục, trường học.biz: Dành cho các công ty thương mại trực tuyến. Giao thức HTTP và HTTPS - HTTP (Hypertext Transfer Protocol) [21], là giao thức thuộc lớp ứng dụng trong mô hình tham chiếu OSI.
Hoạt động thông thường ở cổng (port) 80 và là giao thức hướng kết nối. GET /page/index.1 Phương thức: GET Tên miền: securitydaily.net Đường dẫn: /page/index.php Phiên bản: HTTP/1.1 - Các phương thức hoạt động của HTTP: GET: Phương thức lấy một đối tượng hoặc tài nguyên nào đó trên máy chủ (server). POST: Phương thức mà máy trạm (Client) sử dụng để gửi thông tin đến các Server. PUT: Phương thức dùng để máy trạm (Client) tải dữ liệu lên (upload) Server.
DELETE: Phương thức giúp Client xoá các đối tượng, tài nguyên từ các máy chủ (server). HEAD: Phương thức xác minh rằng một đối tượng có tồn tại hay không. TRACE: Phương thức được sử dụng để gọi từ xa một lớp ứng dụng trở lại. 16 Là một sự kết hợp giữa giao thức HTTP và giao thức bảo mật SSL hay TLS cho phép trao đổi thông tin một cách bảo mật trên Internet.
Các kết nối HTTPS thường được sử dụng cho các giao dịch thanh toán trên Web và cho các giao dịch nhạy cảm trong các hệ thống thông tin, khi dữ liệu cần phải được bảo vệ an toàn. Khi một HTTPS được thiết lập nó sẽ giúp bảo mật thông tin truyền giữa hai máy tính. Vậy, cứ thông tin nào cần bảo mật trên nền web thì có thể sử dụng nó. Nhưng đi kèm với quá trình bảo mật có nghĩa là hệ thống phải xử lý nhiều hơn.
Web Server Web Server [22] là máy chủ cài đặt các chương trình phục vụ các ứng dụng web. Web Server có khả năng tiếp nhận yêu cầu từ các trình duyệt web và gửi phản hồi đến máy khách những trang web thông qua môi trường mạng Internet qua giao thức HTTP hoặc các giao thức khác. Một số Web Server thông dụng hiện nay: Hình 1. Một số Web Server thông dụng 17 Web Application là nơi các kịch bản hay mã nguồn phát triển ra ứng dụng web được thực thi.
Lớp này sẽ biên dịch các mã nguồn tương ứng và thực hiện các truy vấn đến cơ sở dữ liệu dựa vào mã nguồn ứng dụng. Trong giai đoạn khởi đầu của website, có rất nhiều ngôn ngữ lập trình được sử dụng như: JSP, ASP, PHP, ASP.NET,… Nhưng hiện tại có hai ngôn ngữ được dùng phổ biến là PHP và ASP. Database Server Cơ sở dữ liệu máy chủ (Database Server) lưu trữ tất cả các dữ liệu liên quan đến website. Bất kỳ người sử dụng nào trên mạng máy tính, tại các thiết bị đầu cuối, về nguyên tắc có quyền truy nhập khai thác toàn bộ hay một phần dữ liệu theo quyền hạn hay tương tác mà không phụ thuộc vào vị trí địa lý [22].
Các dịch vụ và ứng dụng trên nền Web Với công nghệ hiện nay, website không chỉ đơn giản là một trang tin cung cấp các tin bài đơn giản. Những ứng dụng viết trên nền web không chỉ được gọi là một phần của website nữa, giờ đây chúng được gọi là phần mềm viết trên nền web. Có rất nhiều phần mềm chạy trên nền web như chương trình xử lý văn bản Google word, chương trình xử lý bảng tính Google spreadsheets, thư điện tử (Email)… Một số ưu điểm của phần mềm hay ứng dụng chạy trên nền web: - Mọi người đều có trình duyệt và bạn chỉ cần trình duyệt để chạy phần mềm. - Phần mềm luôn luôn được cập nhật vì chúng chạy trên máy chủ (server) - Luôn sẵn sàng 24/7 - Dễ dàng sao lưu (backup) dữ liệu thường xuyên 18 - Có thể truy cập mọi lúc, mọi nơi, miễn là bạn có mạng - Chi phí triển khai cực rẻ so với phần mềm chạy trên máy tính bàn (desktop).
Hãy hình dung bạn có một phần mềm quản lý bán hàng hay quản lý công việc ở công ty. Không phải lúc nào bạn cũng ở công ty, với phần mềm viết trên nền web, bạn có thể vào kiểm tra, điều hành ở bất cứ đâu, thậm chí bạn chỉ cần một chiếc điện thoại chạy được trình duyệt như iPhone mà không cần đến một chiếc máy tính. Thực trạng an ninh Web tại Việt Nam và trên thế giới Năm 2016 chứng kiến nhiều cuộc tấn công mạng nghiêm trọng trên thế giới nhằm vào các tổ chức như Sony Pictures, Nhà Trắng, trang web Ashley Madison và thậm chí cả FBI. Các sự cố an ninh mạng đã tăng 38% so với năm 2015, trong khi gần một triệu các mối đe dọa từ các phần mềm độc hại mới được phát hành mỗi ngày.
Chi phí cho các cuộc tấn công mạng sử dụng mã độc tốn khoảng 300 tỷ đến 1 nghìn tỷ đô la mỗi năm, các vụ xâm phạm dữ liệu trung bình mất 154 đô la Mỹ cho mỗi vụ, trong khi chi phí trung bình cho một vụ xâm phạm dữ liệu mất gần 4 triệu đô la. Những con số này cho thấy một thực trạng đáng báo động về việc người dùng máy tính ngày càng gặp khó khăn trong việc đảm bảo an toàn khi trực tuyến. Điều này cũng tương tự đối với Việt Nam - thị trường an toàn thông tin quốc gia trong năm 2016 diễn biến khá phức tạp. Tại Việt Nam, cùng với sự phát triển mạnh mẽ ứng dụng công nghệ thông tin, các cuộc tấn công, xâm nhập trái phép vào hệ thống mạng của các cơ quan nhà nước, các tổ chức, doanh nghiệp để phá hoại hoặc thu thập lấy cắp thông tin ngày càng gia tăng.
Theo VNCERT 19 (Trung tâm Ứng cứu khẩn cấp máy tính Việt Nam), theo Trung tâm ứng cứu khẩn cấp máy tính Việt Nam (VNCERT) trong năm 2016, VNCERT đã ghi nhận tổng cộng 134.