Ở bài trước của Series Nhập môn mạng máy tính, chúng ta đã tìm hiểu về mô hình OSI. Trong bài này, chúng ta sẽ khai thác một trong những vấn đề nhức nhói của Internet: An ninh mạng.
Lĩnh vực an ninh mạng
Ngày nay, Internet đã trở thành một thành phần không thể thiếu của nhiều tổ chức, bao gồm các công ty lớn nhỏ, các trường đại học và các cơ quan nhà nước. Nhiều cá nhân cũng nhờ vào Internet để thực hiện những hoạt động nghề nghiệp, xã hội và cá nhân.
Nhưng đằng sau tất cả nhưng tiện nghi này, có tồn tại mặt trái. Mặt trái mà ở đó có những “kẻ xấu” không ngừng quấy nhiễu người dùng bằng cách phá hoại các máy tính Internet, xâm phạm sự riêng tư và làm tê Iiệt các dịch vụ Internet mà chúng ta đang sử dụng.
Lĩnh vực an ninh mạng (network security) là lĩnh vực nghiên cứu về cách thức các kẻ xấu tấn công mạng máy tính và cách thức có thể sử dụng để bảo vệ mạng trước các đợt tấn công này, hoặc tốt hơn nữa là thiết kế ra các kiến trúc mới của mạng miễn nhiễm với các đợt tấn công như thế ngay từ đầu (xem thêm Series CEH Tiếng Việt)
Với sự thường xuyên và đa dạng của các hình thức tấn công, cũng như các hiểm họa về các cuộc tấn công phá hoại sẽ xảy ra trong tương lai, an ninh mạng trở thành một chủ đề trung tâm của mạng máy tính trong những năm gần đây.
Phần này sẽ đề cập đến một số hình thức tấn công thông dụng và tấn công phá hoại trên mạng Internet ngày nay. Chúng ta sẽ bắt đầu bằng câu hỏi đơn giản, thiết bị có thể vận hành sai? Mạng máy tính có những lổ hổng nào? Các hình thức tấn công thông dụng hiện nay?
Chương trình độc hại
Kẻ xấu có thể cài phần mềm độc hại vào máy tính của bạn thông qua Internet.
Chúng ta kết nối các thiết bị vào Internet là vì muốn gửi/nhận dữ liệu từ Internet. Dữ liệu gửi/nhận này bao gồm tất cả các nội dung hữu ích, có thể là trang Web, thư điện tử, tập tin MP3, các cuộc gọi điện thoại, nội dung video, kết quả tìm kiếm,…
Nhưng thật không may, cùng với tất cả các nội dung hữu ích này, còn có những nội dung độc hại được biết đến dưới tên gọi phần mềm độc hại (malware) – chúng cũng đi vào máy tính và gây nhiễm trên các thiết bị. Mỗi khi các phần mềm độc hại này gây nhiễm trên các thiết bị, nó có thể làm tất cả các thủ thuật phá hoại, gồm cả việc xóa tập tin, cài đặt các phần mềm gián điệp (spyware) nhằm thu thập các thông tin cá nhân, như mật khẩu, sau đó gửi chúng đến cho các kẻ xấu (nhờ vào Internet).
Các máy tính bị nhiễm mã độc cũng có thể được huy động vào một mạng lưới bao gồm hàng nghìn máy tính cũng bị nhiễm tương tự, mạng lưới này được gọi là botnet, được các kẻ xấu kiểm soát và lợi dụng để gửi các thư rác hoặc để thực hiện các đợt tấn công từ chối dịch vụ phân tán (distributed denial of service – viết tắt là DDoS) nhằm chống lại các mục tiêu định trước. (Xem thêm về DDoS: https://www.cloudflare.com/learning/ddos/what-is-a-ddos-attack/)
Nhiều phần mềm độc hại hiện nay có đặc tính tự nhân bản (self-replicating) mỗi khi nó lây nhiễm lên một máy, từ máy đó nó thực hiện tìm kiếm lây nhiễm sang các máy khác trên Internet, và từ máy tính mới bị lây nhiễm, nó tiếp tục như vậy. Theo cách này, phần độc hại có thể lan truyền với tốc độ hàm mũ.
Ví dụ, số lượng máy tính bị lây nhiễm worm Saphire/Slammer (năm 2003) tăng gấp đôi sau 8.5 giây trong vài phút đầu bùng phát, gây ra sự lây nhiễm đến hơn 90% các máy tính có lổ hổng bảo mật trong vòng 10 phút.
Phần mềm độc hại có thể lan truyền ở dạng virus máy tính, dạng worm, hoặc dạng trojan horse.
Virus máy tính là loại phần mềm độc hại đòi hỏi phải có sự tương tác của con người thì mới gây ra lây nhiễm đến thiết bị. Một ví dụ khá cũ là một tập tin đính kèm thư điện tử có chứa mã lệnh thực thi độc hại. Nếu một người nhận được và mở tập tin đính kèm này, thì người này đã vô tình kích hoạt việc thi hành của đoạn mã độc hại trên thiết bị.
Thông thường, những virus thư điện tử như thế đều có tính tự nhân bản: một khi được kích hoạt, virus có thế gửi đi một thư nhân danh (người bị lây nhiễm) kèm theo một tập tin đính kèm độc hại, gửi đến mọi người nhận trong danh bạ.
Sâu máy tính (worms) (kiểu như sâu Slammer) là các phần mềm độc hại mà không cần bất cứ sự tương tác nào từ phía người dùng. Ví dụ, một người dùng có thể chạy một ứng dụng mạng có lổ hổng bảo mật mà qua đó, kẻ tấn công có thể tận dụng.
Trong nhiều trường hợp, không cần bất kỳ sự can dự nào của người dùng, ứng dụng có thể chấp nhận phần mềm độc hại từ Internet và thi hành nó, tạo ra một con sâu máy tính. Sau đó, con sâu trong thiết bị mới bị lây nhiễm này có thể quét Internet nhằm tìm kiếm các máy khác đang chạy cùng ứng dụng mạng có lổ hổng và gửi một bản sao của chính nó đến những host này.
Sau cùng, Trojan horse là phần mềm độc hại tồn tại dưới dạng một phần ẩn của các phần mềm có ích khác. Ngày nay, phần mềm độc hại lan tràn và gây tốn kém cho công tác phòng chống.
Kẻ xấu có thể tấn công vào các server và hạ tầng Mạng
Một hiểm họa an ninh mạng máy tính khác là hình thức tấn công từ chối dịch vụ (denial-of-service, viết tắt DoS). Như tên của nó, hình thức tấn công DoS làm cho một mạng, một máy tính hoặc các phần cơ sở hạ tầng Mạng trở nên vô dụng đối với những người sử dụng chính đáng. Các Web server, E-mail server và DNS server, cũng như mạng của các tổ chức có thể là đối tượng của tấn công DoS.
Tấn công DoS trên Internet là hình thức tấn công rất phổ biến, có hàng nghìn đợt tấn công diễn ra mỗi năm. Hầu hết các đợt tấn công DoS đều rơi vào một trong ba loại sau:
- Tấn công vào lổ hổng bảo mật (vulnerability attack). Hình thức tấn công này liên quan đến việc gửi các thông điệp giả mạo đến một ứng dụng hoặc hệ điều hành có lổ hổng bảo mật đang chạy trên một máy tính nạn nhân. Tác động này sẽ làm cho máy tính nạn nhân bị mất kiểm soát, hoặc một dịch vụ nào đó bị dừng, hoặc vận hành sai.
- Gây ngập lụt băng thông (bandwidth flooding). Kẻ tấn công gửi một số lượng rất lớn các gói tin đến máy nạn nhân, làm đường truy cập đến máy tính nạn nhân bị tắc nghẽn, hệ quả là các gói tin chính đáng cũng bị ngăn không đến được máy tính nạn nhân.
- Gây ngập lụt kết nối (connection flooding). Kẻ tấn công thiết lập một số lượng rất lớn các kết nối TCP nữa chừng (half-open) hoặc các kết nối TCP trọn vẹn (fully open) đến máy nạn nhân. Máy này có thể ngập tràn các kết nối giả do đó nó từ chối các kết nối có nhu cầu thực sự.
Trong hình thức tấn công DDoS như được minh họa trong hình trên, kẻ tấn công kiếm soát nhiều máy nguồn, và từng máy nguồn sẽ gửi luồng dữ liệu về máy nạn nhân. Ngày nay, tấn công DDoS thường lợi dụng các botnet với hàng nghìn máy tính bị nhiễm mã độc. Do vậy tấn công DDoS khó phát hiện và khó phòng chống hơn hình thức tấn công DoS từ một máy đơn.
Kẻ xấu có thể nghe trộm gói tin
Nhiều người dùng ngày nay có thể truy cập Internet nhờ các thiết bị không dây, như máy tính laptop kết nối WiFi, hoặc các thiết bị cầm tay có kết nối Internet qua mạng dị động. Trong khi khả năng truy cập Internet từ mọi nơi là vô cùng tiện dụng dành cho người dùng di động, nó cũng tạo ra một lổ hổng bảo mật nghiêm trọng
Bằng cách đặt một bộ thu tín hiệu trong vùng phát sóng không dây, bộ thu tín hiệu đó có thể thu được một bản sao của mọi gói tin được phát đi. Các gói tin này có thể chứa tất cả các thông tin nhạy cảm, như mật khẩu, số tài khoản ngân hàng, những bí mật thương mại và những nội dung cá nhân mang tính riêng tư. Một bộ thu tín hiệu ghi lại bản sao của gói tin đi qua nó, được gọi là bộ nghe lén gói tin (packet sniffer).
Các bộ nghe lén gói tin cũng có thể hoạt động trong môi trường hữu tuyến. Trong môi trường mạng quảng bá hữu tuyến, như Ethernet LAN, một bộ nghe lén gói tin có thể thu được các bản sao của các gói tin chạy trên mạng LAN. Các kỹ thuật truy cập dùng cáp cũng gửi quảng bá các gói tin và do đó trở thành một điểm yếu có thể bị lợi dụng đế nghe lén gói tin. Hơn nữa, các kẻ xấu mà có quyền truy cập bộ định tuyến hoặc đường truyền nối ra Internet có thể thiết lập một bộ bắt gói tin để chép lại tất cả các gói tin vào/ra khỏi tổ chức.
Do các bộ nghe lén gói tin là thụ động, nghĩa là chúng không phát gói tin vào kênh truyền, chúng rất khó bị phát hiện. Do đó, khi chúng ta gửi gói tin ra một kênh truyền không dây, chúng ta phải chấp nhận một khả năng rằng có vài kẻ xấu có thể nghe lén gói tin của chúng ta. Một trong những cách tốt nhất để chống lại việc nghe lén gói tin là sử dụng kỹ thuật mã hóa (cryptography).
Kẻ xấu có thể mạo danh
Việc tạo ra một gói tin với địa chỉ nguồn, nội dung gói tin, địa chỉ đích tùy ý, rồi gửi gói tin được tạo thủ công này vào Internet, để nhờ Internet chuyển đến máy nhận, là việc làm rất dễ dàng. Hình dung gói tin này được gửi đến một thiết bị nhận gói tin chính thống (chẳng hạn bộ định tuyến Internet), thiết bị này sẽ tưởng là địa chỉ nguồn là địa chỉ có thật, sau đó thực hiện một vài lệnh được nhúng bên trong nội dung gói tin (chẳng hạn, cập nhật bảng chuyển (forwarding table) của bộ định tuyến).
Khả năng bơm các gói tin có địa chỉ nguồn sai vào Internet được gọi là giả mạo IP (IP spoofing), và một trong những cách thức mà một người có thể mạo danh người khác. Để giải quyết vấn đề này, chúng ta có thể sử dụng có cơ chế xác thực (end-point authentication), là một cơ chế cho phép chúng ta xác định một chắc chắn là dữ liệu đến từ đúng nơi mà ta mong đợi.
Kẻ xấu có thể sửa hoặc xóa nội dung gửi trên mạng
Chúng ta kết thúc phần tìm hiểu sơ lược về các hình thức tấn công mạng bằng hình thức tấn công man-in-the-middle (viết tắt MITM). Trong hình thức tấn công này, kẻ tân công xen vào đường truyền giữa hai bên truyền nhận. Giả sử hai bên truyền nhận là An và Bình, đó có thể là hai người thật, hai bộ định tuyến hoặc hai mail server. Kẻ xấu có thể là một bộ định tuyến có lổ hổng nằm dọc trên đường truyền giữa hai bên truyền nhận, hoặc là một phần mềm hoạt động ở tầng thấp trong chồng giao thức ở một máy tính.
Trong hình thức tấn công này, kẻ xấu không chỉ có khả năng bắt tất cả các gói tin qua lại giữa Bình và An, mà còn chèn thêm gói tin, sửa đối gói tin, hoặc xóa gói tin. Trong thuật ngữ an ninh mạng, hình thức tấn công MITM có thể làm tổn thương tính toàn vẹn của dữ liệu được gửi giữa An và Bình. Tuy nhiên các cơ chế chống bắt gói tin và xác thực lại không đảm bảo tính toàn vẹn dữ liệu. Do đó, chúng ta cần một nhóm các kỹ thuật khác để chống lại hình thức tấn công này.
Để kết thúc phần này, hãy xem xét lý do tại sao Internet lại là một môi trường kém an toàn như thế. Câu trả lời là do Internet nguyên thủy được thiết kế dựa trên mô hình “Internet là nhóm những người sử dụng tin cậy lẫn nhau được kết nối vào một mạng trong sạch”, do đó không cần đến cơ chế bảo mật.
Nhiều khía cạnh của kiến trúc Internet nguyên thủy phản ánh sự tin cậy lẫn nhau này. Chẳng hạn, khả năng một người gửi gói tin đến một người khác bất kỳ là mặc định, thay vì cần phải yêu cầu/chấp nhận, và mọi định danh người dùng (user identity) được chấp nhận ngay, thay vì cần được xác thực.
Internet ngày nay chắc chắn không chỉ gồm “những người sử dụng tin cậy lẫn nhau”. Tuy nhiên, người sử dụng ngày nay cũng cần liên lạc mà không nhất thiết phải tin cậy lẫn nhau, có thể mong muốn truyền thông nặc danh, truyền thông gián tiếp qua một bên thứ ba (chẳng hạn, qua Web caches), và có thể không tin tưởng các phần cứng, phần mềm và thậm chí môi trường truyền thông.
Tổng kết
Phần tìm hiểu sở lược về An ninh mạng kết thúc tại đây, phần tiếp theo chúng ta sẽ tìm hiểu về Lịch sử của Mạng máy tính.