Session 3 - Securing Systems: Bảo vệ hệ thống và kết nối trên Internet
Session 3 - Securing Systems
Bảo vệ hệ thống và kết nối trên Internet
Mục tiêu của Session
Ở Session 2, chúng ta đã tìm hiểu cách dữ liệu được bảo vệ bằng Hashing, Encryption và Passkeys.
Tuy nhiên, dữ liệu không chỉ nằm yên trong cơ sở dữ liệu mà còn liên tục được truyền qua Internet thông qua Wi-Fi, website, ứng dụng và các dịch vụ trực tuyến.
Trong Session này, chúng ta sẽ tìm hiểu:
- Cách dữ liệu di chuyển trên Internet.
- Tại sao HTTPS quan trọng hơn HTTP.
- Cách hacker đánh cắp phiên đăng nhập (Session Hijacking).
- Vai trò của VPN và Firewall.
- Malware hoạt động như thế nào.
- Botnet và các cuộc tấn công DDoS.
1. HTTP và Wi-Fi
Vì sao kết nối Wi-Fi an toàn vẫn chưa đủ?
Nhiều người cho rằng chỉ cần biểu tượng ổ khóa xuất hiện khi kết nối Wi-Fi là mọi dữ liệu đã an toàn. Thực tế không phải vậy.
Biểu tượng ổ khóa chỉ cho biết:
Thiết bị
│
│ (WPA/WPA2/WPA3)
▼
Router Wi-Fi
WPA (Wi-Fi Protected Access) là giao thức bảo mật không dây được thiết kế để bảo vệ mạng Wi-Fi, ngăn chặn truy cập trái phép và nghe lén dữ liệu. Nó được phát triển để thay thế chuẩn WEP cũ đã lỗi thời và kém an toàn
Đoạn kết nối giữa thiết bị và Router đã được mã hóa. Tuy nhiên sau Router, dữ liệu vẫn tiếp tục đi qua Internet.
Nếu website chỉ sử dụng HTTP, dữ liệu sẽ được gửi dưới dạng Plain Text.
Browser
│
│ HTTP
▼
Website
Bất kỳ ai có khả năng nghe lén lưu lượng mạng đều có thể đọc được nội dung.
Packet Sniffing
Hãy tưởng tượng mỗi gói tin giống như một phong bì.
HTTP giống như:
┌──────────────┐
│ OPEN │
│ │
│ Credit Card │
│ Password │
│ Search │
└──────────────┘
Kẻ tấn công có thể sử dụng các công cụ Packet Sniffing để xem:
- Từ khóa tìm kiếm
- Cookie
- Thông tin đăng nhập
- Thông tin thanh toán
Trong một số trường hợp, ISP hoặc kẻ tấn công còn có thể chèn:
- Quảng cáo
- JavaScript độc hại
- Mã theo dõi
vào các trang web HTTP.
2. HTTPS và TLS
Cách Internet bảo vệ dữ liệu
HTTPS là phiên bản bảo mật của HTTP.
Nó sử dụng giao thức TLS (Transport Layer Security) để mã hóa toàn bộ dữ liệu.
Browser
│
TLS Encryption
│
Website
Nếu ai đó chặn được gói tin, họ chỉ nhìn thấy dữ liệu đã được mã hóa.
HTTPS quan trọng như thế nào?
Sau khi đăng nhập, website không yêu cầu bạn nhập lại mật khẩu ở mỗi lần chuyển trang. Thay vào đó, máy chủ sẽ cấp cho trình duyệt một Session Cookie. Có thể hình dung như:
Đăng nhập
↓
Máy chủ cấp Cookie
↓
Mỗi request đều gửi Cookie
↓
Website xác nhận bạn đã đăng nhập
Cookie giống như chiếc vòng hoặc con dấu được phát khi tham gia một sự kiện.
Bạn chỉ cần đưa "con dấu" đó ra là được phép vào.
3. Session Hijacking
Kẻ trộm không cần mật khẩu
Nếu website sử dụng HTTP thay vì HTTPS.
Cookie sẽ được gửi dưới dạng Plain Text.
User
↓
Cookie
↓
Attacker nhìn thấy
↓
Attacker gửi Cookie
↓
Server
Máy chủ sẽ tin rằng:
Đây chính là người dùng hợp lệ.
Hacker không cần biết mật khẩu.
Chỉ cần đánh cắp Cookie là đủ.
Đây gọi là:
Session Hijacking
4. SSL Stripping và Website giả mạo
Không phải lúc nào hacker cũng cố gắng phá HTTPS.
Đôi khi chúng chỉ cần khiến bạn không sử dụng HTTPS.
Đây gọi là:
SSL Stripping
Bạn
↓
HTTP
↓
Hacker
↓
HTTPS
↓
Website
Bạn nghĩ mình đang dùng HTTPS.
Nhưng thực tế đoạn đầu tiên vẫn là HTTP.
Website giả mạo
Một kỹ thuật khác là đánh lừa thị giác.
Ví dụ:
google.com
thành
g00gle.com
hoặc
examp1e.com
(số 1 thay cho chữ l)
Giao diện có thể giống hệt website thật.
HSTS
Các website hiện đại sử dụng:
HTTP Strict Transport Security (HSTS)
Sau lần truy cập đầu tiên, trình duyệt sẽ ghi nhớ:
Website này
↓
Chỉ cho phép HTTPS
↓
Không được phép HTTP
Điều này giúp giảm đáng kể nguy cơ SSL Stripping.
5. VPN và Firewall
VPN
VPN (Virtual Private Network) tạo ra một đường hầm mã hóa giữa thiết bị và máy chủ VPN.
Bạn
↓
Encrypted Tunnel
↓
VPN Server
↓
Internet
Lợi ích:
- Bảo vệ lưu lượng trên Wi-Fi công cộng.
- Che giấu địa chỉ IP thật.
- Truy cập dịch vụ theo vị trí của máy chủ VPN.
Lưu ý:
VPN không thay thế HTTPS.
Hai công nghệ này bổ sung cho nhau.
Firewall
Firewall giống như một người bảo vệ đứng trước cổng.
Mọi dữ liệu muốn đi vào hoặc đi ra đều phải được kiểm tra.
Internet
↓
Firewall
↓
Máy tính / Server
Firewall có thể:
- Chặn IP độc hại.
- Chặn các Port không cần thiết.
- Giới hạn lưu lượng.
- Áp dụng các chính sách truy cập.
6. Malware
Virus và Worm khác nhau như thế nào?
Hai khái niệm này thường bị nhầm lẫn.
Virus
Virus cần người dùng thực hiện một hành động.
Ví dụ:
- Tải file.
- Mở file đính kèm.
- Chạy phần mềm.
User
↓
Open File
↓
Virus hoạt động
Worm
Worm không cần người dùng.
Sau khi xâm nhập được một máy.
Nó sẽ tự động tìm các máy khác trong cùng mạng.
Machine A
↓
Machine B
↓
Machine C
↓
Machine D
Không cần ai bấm vào bất cứ thứ gì.
Đây là lý do Worm có tốc độ lây lan cực kỳ nhanh.
7. Botnet và DDoS
Mục tiêu của hacker ngày nay không chỉ là phá hủy dữ liệu.
Chúng muốn chiếm quyền điều khiển càng nhiều máy tính càng tốt.
Những máy bị nhiễm malware sẽ trở thành:
Bot (Zombie Computer)
Hàng triệu Bot sẽ tạo thành:
Botnet
Bot
Bot
Bot
Bot
Bot
↓
Botnet
↓
Target Website
DDoS
DDoS là viết tắt của:
Distributed Denial of Service
Hàng triệu Bot sẽ đồng thời gửi request đến cùng một máy chủ.
Bot 1
Bot 2
Bot 3
Bot 4
Bot 5
↓
Server
↓
Quá tải
↓
Ngừng phục vụ
Website không bị hack dữ liệu. Nhưng người dùng hợp pháp cũng không thể truy cập.
Tổng kết Session
Sau Session này, mình hiểu được:
- HTTP không bảo vệ dữ liệu khi truyền trên Internet.
- HTTPS sử dụng TLS để mã hóa toàn bộ kết nối.
- Cookie là thứ giúp duy trì phiên đăng nhập và cũng là mục tiêu của Session Hijacking.
- HSTS giúp trình duyệt luôn sử dụng HTTPS.
- VPN bảo vệ toàn bộ lưu lượng mạng và che giấu địa chỉ IP.
- Firewall kiểm soát lưu lượng ra vào hệ thống.
- Virus cần sự tương tác của người dùng, trong khi Worm có thể tự lây lan.
- Botnet là nền tảng để thực hiện các cuộc tấn công DDoS quy mô lớn.
Những việc mình sẽ áp dụng ngay
- [ ] Luôn kiểm tra website sử dụng https:// trước khi đăng nhập hoặc thanh toán.
- [ ] Sử dụng VPN khi kết nối Wi-Fi công cộng tại quán cà phê, sân bay hoặc khách sạn.
- [ ] Bật Automatic Updates cho hệ điều hành và phần mềm để vá các lỗ hổng bảo mật.
- [ ] Không tắt Windows Defender hoặc phần mềm Antivirus nếu không thực sự cần thiết.
- [ ] Kiểm tra kỹ tên miền trước khi nhập mật khẩu hoặc thông tin thanh toán.
Nguồn học tập
- Harvard CS50's Introduction to Cybersecurity
- Session 3 – Securing Systems
Qua ba Session đầu tiên, khóa học đã xây dựng một lộ trình rất logic:
- Session 1: Bảo vệ tài khoản.
- Session 2: Bảo vệ dữ liệu.
- Session 3: Bảo vệ hệ thống và kết nối mạng.
Ở Session 4, chúng ta sẽ bước sang chủ đề Securing Software. Hẹn gặp mọi người ở bài viết tiếp theo!
All rights reserved