



















Preview text:
2023 ThS. Nguyễn Chí Hiếu 2023 1 Nội dung 1. Các khái niệm cơ bản 2. Client-side controls 3. Same-origin policy 2023
An toàn bảo mật Hệ thống thông tin 2 2 1 2023 1. Các khái niệm cơ bản 2023
An toàn bảo mật Hệ thống thông tin 3 3 Các khái niệm cơ bản Web at acker DOS at ack Computer at acker Network at acker 2023
An toàn bảo mật Hệ thống thông tin 4 4 2 2023 Các khái niệm cơ bản Các website giả mạo
Thiết kế giao diện website giả mạo chuyên nghiệp như các website bình thường
Kẻ tấn công, chủ các website sẽ lừa người dùng để truy cập vào các trang này
Các website đã bị xâm nhập
Thường bị chèn các nội dung độc hại
Có thể bị đánh cắp dữ liệu 2023
An toàn bảo mật Hệ thống thông tin 5 5 Các khái niệm cơ bản
Các kịch bản tấn công
Đối với trình duyệt
Kết xuất nội dung website (HTML, các tập tin scripts)
Quyết định những gì mà một website có thể thực hiện Đối với website
Mã nguồn máy chủ (PHP, ASP.Net, Python, …)
Mã nguồn máy khách (JavaScript) 2023
An toàn bảo mật Hệ thống thông tin 6 6 3 2023 Bảo mật trình duyệt
Hầu hết các trình duyệt đều có sử dụng Sandbox, một
kỹ thuật bảo vệ máy tính từ các kẻ tấn công web
Thực thi các mã nguồn an toàn trên web
Bỏ qua những truy cập trái phép các tập tin của người
dùng, truy cập đến các website khác, … 2023
An toàn bảo mật Hệ thống thông tin 7 7 Các khái niệm cơ bản
Tên miền (domain) là một địa chỉ duy nhất được sử
dụng bởi các trường học, công ty, cá nhân, … thay thế cho địa chỉ ip 2023
An toàn bảo mật Hệ thống thông tin 8 8 4 2023 Các khái niệm
Html là ngôn ngữ đánh dấu siêu văn bản
Có cấu trúc phân cấp gồm các thẻ/phần tử
Cho phép liên kết với các website khác
Cho phép nhúng dữ liệu ảnh, scripts, iframe… 2023
An toàn bảo mật Hệ thống thông tin 9 9 Các khái niệm 2023
An toàn bảo mật Hệ thống thông tin 10 10 5 2023 Các khái niệm
HTTP là giao thức truyền nhận thông tin giữa máy
khách và máy chủ (client-server) 2023
An toàn bảo mật Hệ thống thông tin 11 11 2023
An toàn bảo mật Hệ thống thông tin 12 12 6 2023 Giao thức Http 2023
An toàn bảo mật Hệ thống thông tin 13 13 Giao thức Http Http request
Url gồm host và đường dẫn
Ngoài ra, có thể chứa một số biến (tên-giá trị) 2023
An toàn bảo mật Hệ thống thông tin 14 14 7 2023 Giao thức Http HTTP request 2023
An toàn bảo mật Hệ thống thông tin 15 15 Giao thức Http Http response
Một số thông tin Header Tài nguyên trả về 2023
An toàn bảo mật Hệ thống thông tin 16 16 8 2023 Giao thức Http HTTP response 2023
An toàn bảo mật Hệ thống thông tin 17 17 Giao thức Http
Giao thức 𝐺𝐸𝑇, 𝑃𝑈𝑇
Biến được khai báo trong địa chỉ Url
Giao thức 𝑃𝑂𝑆𝑇
Biến được khai báo trong thân của Http 2023
An toàn bảo mật Hệ thống thông tin 18 18 9 2023 2.Client-Side Controls
Nguy cơ mất an toàn từ dữ liệu nhập tùy ý của người dùng
Client-Side Controls (điều khiển phía máy khách) giúp hạn
chế dữ liệu nhập của người dùng theo một trong hai cách:
Sử dụng cơ chế ngăn chặn việc sửa đổi dữ liệu đó khi truyền dữ liệu đến máy khách
Thực hiện ở phía máy khách 2023
An toàn bảo mật Hệ thống thông tin 19 19 Client-Side Controls
Bỏ qua các điều khiển phía máy khách?
Người dùng có thể kiểm soát hoàn toàn máy khách và dữ liệu máy khách gửi
Có thể bỏ qua bất kỳ điều khiển nào ở phía máy khách, và không
được sao chép trên máy chủ 2023
An toàn bảo mật Hệ thống thông tin 20 20 10 2023 Giao thức Http Cơ chế chung
Thuộc tính ẩn trong Html
Được gắn cờ ẩn hidden không hiển thị trên màn hình Cookie Http
Không hiển thị trên màn hình và người dùng không thể sửa đổi trực tiếp Referer header
Giúp xác định địa chỉ của website liên kết với tài nguyên được yêu cầu. 2023
An toàn bảo mật Hệ thống thông tin 21 21 Giao thức Http Công cụ kiểm tra web
Firefox, Chrome, Edge tích hợp sẵn Web proxy Burp, OWASP ZAP 2023
An toàn bảo mật Hệ thống thông tin 22 22 11 2023 3.Same-origin policy
Chính sách chung nguồn gốc (Same-origin policy SOP) là một
trong những chính sách bảo mật quan trọng nhất trên trình
duyệt, ngăn chặn việc mã JavaScript tạo ra những yêu cầu đến
những nguồn khác với nguồn mà nó được trả về.
Ba tiêu chí chính để một yêu cầu hợp lệ: Domain (tên miền) Protocol (giao thức) Port (cổng kết nối) 2023
An toàn bảo mật Hệ thống thông tin 23 23 Same-origin policy 2023
An toàn bảo mật Hệ thống thông tin 24 24 12 2023 Same-origin policy
Nội dung từ các nguồn khác nhau nên được cô lập Khó triển khai do:
Các phần tử của Html
Điều hướng giữa các liên kết
Cookies của trình duyệt JavaScript iframe 2023
An toàn bảo mật Hệ thống thông tin 25 25 Cookies
Cookies được dùng để lưu các trạng thái duyệt các website.
Server có thể lưu trữ các cookies (cặp khóa-giá trị) trong
trình duyệt nhằm mục đích:
Xác thực, theo dõi người dùng
Có thể thiết lập ngày hết hạn
Trình duyệt sẽ gửi cookies về server trong lần kết nối tiếp theo … 2023
An toàn bảo mật Hệ thống thông tin 26 26 13 2023 Cookies 2023
An toàn bảo mật Hệ thống thông tin 27 27 Cookies
Mỗi cookie có phạm vi nhất định Dựa trên tên miền
Ngoài ra, có thể là các tên miền con
Mỗi website có thể đọc các cookies trong phạm vi của nó
Một website có thể đặt cookie cho tên cơ sở của nó; hoặc
các tên miền phụ của nó 2023
An toàn bảo mật Hệ thống thông tin 28 28 14 2023 Cookies SOP đối với Cookies
Mỗi website chỉ có thể đọc cookies trong phạm vi của nó 2023
An toàn bảo mật Hệ thống thông tin 29 29 Cookies Quản lý các sessions Theo dõi người dùng
Máy chủ sẽ gán cho người dùng một id duy nhất
Người dùng gửi lại id để xác minh
Cần sử dụng trong các chức năng xác thực
Ghi nhớ những tùy chọn của người dùng … 2023
An toàn bảo mật Hệ thống thông tin 30 30 15 2023 Cookies
Cookies được gán và trả về trong mỗi Http request và response
Truy cập một website có thể dẫn đến các Http request từ các nguồn
khác (do nhúng các ảnh, video, …)
Cookies của bên thứ ba
Được đặt bởi server có tên miền khác tên miền của yêu cầu ban đầu
Có thể cấu hình trình duyệt để không lưu cookies của bên thứ ba 2023
An toàn bảo mật Hệ thống thông tin 31 31 Thực thi một session id
Truyền đi trong Http header Set-Cookie: SID=c5Wuk7… Cookie: SID=c5Wuk7…
Các biến trong phương thức Post
Thêm địa chỉ url vào các liên kết
https://www.example.com?SID=c5Wuk7…
Các biến trong phương thức Post
Điều hướng Http request với các biến ẩn 2023
An toàn bảo mật Hệ thống thông tin 32 32 16 2023 Session id trong Cookies 2023
An toàn bảo mật Hệ thống thông tin 33 33
Session id trong biến phương thức GET 2023
An toàn bảo mật Hệ thống thông tin 34 34 17 2023
Session id trong biến phương thức POST 2023
An toàn bảo mật Hệ thống thông tin 35 35 JavaScript
Là một ngôn ngữ lập trình web phổ biến, được nhúng vào
HTML giúp các website sinh động hơn
Mã lệnh được nhúng trong cặp thẻ: 2023
An toàn bảo mật Hệ thống thông tin 36 36 18 2023 JavaScript
Cho phép đọc các thành phần của HTML thông qua DOM 2023
An toàn bảo mật Hệ thống thông tin 37 37 JavaScript
SOP đối với JavaScript
Một script nạp từ một website cần có những hạn chế về việc
truy cập nội dung từ một website khác 2023
An toàn bảo mật Hệ thống thông tin 38 38 19 2023 iframe
Cho phép nhúng một website nhúng một website khác
Ví dụ: Nhúng các video từ trang Youtube 2023
An toàn bảo mật Hệ thống thông tin 39 39 iframe 2023
An toàn bảo mật Hệ thống thông tin 40 40 20