1. Tổng quan lỗ hổng bảo mật
Các lỗ hổng bảo mật là những điểm yếu trên hệ thống hoặc ẩn chứa trong một dịch vụ hệ thống đó cung cấp, dựa vào đó tin tặc có thể xâm nhập trái phép để thực hiện các hành động phá hoại hoặc chiếm đoạt tài nguyên bất hợp pháp.
1.1. Nguyên nhân gây ra lỗ hổng bảo mật
Có nhiều nguyên nhân gây ra lỗ hổng bảo mật: thêm quyền đối với người sử dụng hoặc cho phép các truy nhập không hợp pháp vào hệ thống. Các lỗ hổng cũng có thể còn tồn tại ngay chính tại hệ điều hành như trong Windows XP, Windows NT, UNIX, hệ điều hành các thiết bị router, modem hoặc trong các ứng dụng thường xuyên sử dụng như word processing, các hệ Databases.
Do lỗi bản thân hệ thống, do người quản trị yếu kém không hiểu sâu sắc các dịch vụ cung cấp, do người sử dụng có ý thức bảo mật kém. Điểm yếu ở yếu tố con người cũng được xem là lỗ hổng bảo mật.
1.2. Mức độ ảnh hưởng của lỗ hổng
Mức độ ảnh hưởng của các lỗ hổng là khác nhau. Có những lỗ hổng chỉ ảnh hưởng đến chất lượng dịch vụ cung cấp, có những lỗ hổng ảnh hưởng nghiêm trọng đến toàn bộ hệ thống… các lỗ hổng bảo mật sẽ là các điểm yếu có thể tạo ra sự ngưng trệ của dịch vụ.
1.3. Phân loại lỗ hổng
Có ba loại lỗ hổng bảo mật:
- Lỗ hổng loại C: cho phép thực hiện tấn công kiểu DoS (Denial of Services – từ chối dịch vụ) làm ảnh hướng tới chất lượng dịch vụ, ngưng trệ, gián đoạn hệ thống, nhưng không phá hỏng dữ liệu hoặc đạt được quyền truy cập hệ thống.
- Lỗ hổng loại B: lỗ hổng cho phép người sử dụng có thêm các quyền truy cập hệ thống mà không cần kiểm tra tính hợp lệ dẫn đến lộ, lọt thông tin.
- Lỗ hổng loại A: cho phép người ngoài hệ thống có thể truy cập bất hợp pháp vào hệ thống, có thể phá hủy toàn bộ hệ thống.
2. Một số kỹ thuật tấn công vào mạng
2.1. Tấn công bị động, chủ động
Tấn công bị động:
Định nghĩa: tấn công bị động là kiểu tấn công không tác động trực tiếp vào thiết bị nào trên mạng, không làm cho các thiết bị trên mạng biết được hoạt động của nó, vì thế kiểu tấn công này nguy hiểm ở chỗ nó rất khó phát hiện.
Ví dụ như việc lấy trộm thông tin trong không gian truyền sóng của các thiết bị sẽ rất khó phát hiện dù thiết bị lấy trộm đó nằm trong vùng phủ sóng của mạng chứ chưa nói đến việc nó được đặt ở khoảng cách xa và sử dụng antan được hướng tới nơi phát sóng, khi đó cho phép kẻ tấn công giữ được khoảng cách thuận lợi mà không thể bị phát hiện. Các phương thức thường dùng trong tấn công bị động: nghe trộm (sniffing, eavesdroping), phân tích luồng thông tin (Traffic analyst).
Cách tấn công bị động cụ thể
- Phương thức bắt gói tin (Sniffing)
+ Nguyên lý thực hiện:
. Bắt gói tin – Sniffing là khái niệm cụ thể của khái niệm tổng quát “Nghe trộm - Eavesdropping” sử dụng trong mạng máy tính. Có lẽ là phương pháp đơn giản nhất, tuy nhiên nó vẫn có hiệu quả đối với việc tấn công WLAN. Bắt gói tin có thể hiểu như là một phương thức lấy trộm thông tin khi đặt một thiết bị thu nằm trong hoặc nằm gần vùng phủ sóng.
Tấn công kiểu bắt gói tin sẽ khó bị phát hiện ra sự có mặt của thiết bị bắt gói dù thiết bị đó nằm trong hoặc nằm gần vùng phủ sóng nếu thiết bị không thực sự kết nối với AP để thu các gói tin. Việc bắt gói tin ở trong mạng có đây thường được thực hiện dựa trên các thiết bị phần cứng mạng, ví dụ như việc sử dụng phần mềm bắt gói tin trên phần điều khiển thông tin ra vào của một card mạng trên máy tính, có nghĩa là cũng phải biết loại thiết bị phần cứng sử dụng, phải tìm cách cài đặt phần mềm bắt gói lên đó, vv…. Tức là không đơn giản.
Đối với mạng không dây, nguyên lý trên vẫn đúng nhưng không nhất thiết phải sử dụng vì có nhiều cách lấy thông tin đơn giản, dễ dàng hơn nhiều. Bởi vì đối với mạng không dây, thông tin được phát trên môi trường truyền sóng và ai cũng có thể thu được. Những chương trình bắt gói tin có khả năng lấy các thông tin quan trọng, mật khẩu,… từ các quá trình trao đổi thông tin trên máy bạn với các site HTTP, email, các instant messenger, các phiên FTP, các phiên telnet nếu những thông tin trao đổi đó dưới dạng văn bản không mã hóa (clear text).
Có những chương trình có thể lấy được mật khẩu trên mạng không dây của quá trình trao đổi giữa Client và Server khi đang thực hiện quá trình nhập mật khẩu để đăng nhập. Cũng từ việc bắt gói tin, có thể nắm được thông tin, phân tích được lưu lượng của mạng (Traffic analysis), phổ năng lượng trong không gian của các vùng. Từ đó mà kẻ tấn công có thể biết chỗ nào sóng truyền tốt, chỗ nào kém, chỗ nào tập trung nhiều máy.
Tấn công chủ động
Định nghĩa: Tấn công chủ động là tấn công trực tiếp vào một hoặc nhiều thiết bị trên mạng ví dụ như vào AP, STA. Những kẻ tấn công có thể sử dụng phương pháp tấn công chủ động để thực hiện các chức năng trên mạng. Cuộc tấn công chủ động có thể được dùng để tìm cách truy nhập tới 1 server để thăm dò, để lấy những dữ liệu quan trọng, thậm chí thực hiện thay đổi cấu hình cơ sở hạ tầng mạng.
Kiểu tấn công này dễ phát hiện nhưng khả năng phá hoại của nó rất nhanh và nhiều, khi phát hiện ra thì chúng ta chưa kịp có phương án đối phó thì nó đã thực hiện xong quá trình phá hoại. So với kiểu tấn công bị động thì tấn công chủ động có nhiều phương thức đa dạng hơn, ví dụ như: tấn công từ chối dịch vụ (DOS), sửa đổi thông tin (Message Modification), đóng gói, mạo danh, che dấu (Masquerade), lặp lại thông tin (Replay), bomb, spam mail.
Mạo danh truy cập trái phép
Nguyên lý thực hiện: Việc mạo danh, truy cập trái phép là hành động tấn công của kẻ tấn công đối với bất kỳ một loại hình mạng máy tính nào, và đối với mạng Internet không dây cũng như vậy. Một trong những cách phổ biến là một máy tính tấn công bên ngoài giả mạo là máy bên trong mạng, xin kết nối vào mạng để rồi truy cập trái phép nguồn tài nguyên trên mạng.
Việc giả mạo này được thực hiện bằng cách giả mạo địa chỉ MAC, địa chỉ IP của thiết bị mạng trên máy tấn công thành các giá trị của máy đang sử dụng trong mạng, làm cho hệ thống hiểu nhầm và cho phép thực hiện kết nối. Ví dụ việc thay đổi giá trị MAC của card mạng không dây trên máy tính sử dụng hệ điều hành Windows hay UNIX đều hết sức dễ dàng, chỉ cần qua một số thao tác cơ bản của người sử dụng.
Các thông tin về địa chỉ MAC, địa chỉ IP cần giả mạo có thể lấy từ việc bắt trộm gói tin trên mạng. Biện pháp đối phó: việc giữ gìn bảo mật máy tính đang sử dụng, không cho ai vào dùng trái phép là nguyên lý rất đơn giản nhưng lại không thừa để ngăn chặn việc mạo danh này. Việc mạo danh có thể xảy ra còn do quá trình chứng thực giữa các bên còn chưa chặt chẽ, vì vậy cần phải nâng cao khả năng này giữa các bên.
2.2. Tấn công dựa vào các dịch vụ an toàn thông tin
Đảm bảo tính riêng tư (Confidentiality)
+ Đảm bảo tính riêng tư của thông tin: bảo vệ dữ liệu được truyền tải khỏi các tấn công thụ động
+ Tương ứng với hình thức phát hiện nội dung thông điệp (release of message content) có một vài phương pháp bảo vệ đường truyền:
Bảo vệ mọi dữ liệu được truyền giữa hai người sử dụng tại mọi thời điểm: thiết lập đường truyền ảo giữa hai hệ thống và ngăn chặn mọi hình thức phát hiện nội dung thông điệp.
+ Bảo vệ các thông điệp đơn lẻ hoặc một số trường đơn lẻ của thông điệp.
+ Đảm bảo tính riêng tư: bảo vệ luồng thông tin trao đổi khỏi các thao tác phân tích.
Đảm bảo tính xác thực (Authentication)
+ Dịch vụ đảm bảo tính xác thực: Khẳng định các bên tham gia vào quá trình truyền tin được xác thực và đáng tin cậy .
+ Đối với các thông điệp đơn lẻ: Các thông báo, báo hiệu, dịch vụ xác thực. Đảm bảo cho bên nhận rằng các thông điệp được đưa ra từ những nguồn đáng tin cậy.
+ Đối với những liên kết trực tuyến.
Có 2 khía cạnh cần nhắc tới:
_ Tại thời điểm khởi tạo kết nối, dịch vụ xác thực hay phải hai thực thể tham gia vào trao đổi thông tin phải được ủy quyền.
_ Dịch vụ cần khẳng định rằng kết nối không bị can thiệp bởi một bên thứ ba. Trong đó bên thứ ba này có thể giả mạo một trong hai bên được ủy quyền để có thể tham gia vào quá trình truyền tin và thu nhận các thông điệp.
Đảm bảo tính sẵn sàng (Availability)
+ Tấn công phá hủy tính sẵn sàng của hệ thống: thực hiện các thao tác vật lý tác động đến hệ thống.
+ Dịch vụ đảm bảo tính sẵn sàng phải.
2.3. Tấn công các tầng trong mô hình OSI
Tấn công vào tầng ứng dụng
Đây là cách tấn công lợi dụng các lỗ hổng phần mềm ứng dụng trên các máy chủ như Email, PostScript, FTP... Để lấy quyền truy nhập vào hệ thống như quyền quản trị, quyền điều khiển hệ thống và từ đó kiểm soát hệ thống để tiến hành hoạt động phá hoại.
Cách tấn công điển hình trên tầng ứng dụng là dùng phần mềm Trojan, các đoạn chương trình này được cấy ghép hoặc thay thế những đoạn chương trình khác nằm trong một ứng dụng dùng chung, cung cấp tính năng phổ biến phục vụ người dùng, nhưng có thêm chức năng chỉ có hacker biết (theo dõi quá trình đăng nhập hệ thống mạng, lấy trộm thông tin tài khoản, password hoặc thông tin nhạy cảm khác).
Hacker cũng có thể thay đổi một số tính năng của ứng dụng, như cấu hình hệ thống thư điện tử luôn gửi một bản copy đến địa chỉ hacker, cho phép hacker có thể đọc được toàn bộ thông tin trao đổi của doanh nghiệp với các đối tác qua thư điện tử. Hacker còn lấy cắp thông tin bằng cách sử dụng Trojan xây dựng một giao diện giống hệt giao diện đăng nhập bình thường của website, lừa người dùng tin rằng đó là giao diện đăng nhập hợp lệ. Sau đó, trojan giữ lại thông tin đăng nhập và gửi thông báo lỗi, yêu cầu người dùng đăng nhập lại và khởi động giao diện đăng nhập của ứng dụng.
Người dùng tin rằng đã nhập sai mật khẩu và sẽ nhập lại để truy nhập vào hệ thống một cách bình thường mà không hề biết thông tin đã bị lấy. Cách hạn chế tấn công tầng ứng dụng:
+ Xem xét các log-file của hệ thống và các log-file trên mạng của bạn, có thể dùng các chương trình phân tích các log-file này.
+ Đăng ký vào các dịch vụ trên mạng nhằm thông báo cho bạn những lỗ hổng trong các ứng dụng mạng mà các chuyên gia an ninh mạng tìm ra.
+ Thường xuyên cập nhật bản sửa lỗi mới nhất đối với hệ điều hành hay các ứng dụng trong mạng của bạn.
+ Sử dụng các thiết bị chống xâm nhập vào mạng (IDS), nhằm dò tìm những dấu hiệu tấn công, giám sát và ghi nhận lại trong những file log, và đôi khi có thể ngăn chặn hữu hiệu các cuộc tấn công trong hệ thống của bạn.
Tấn công vào tầng Data Link
Do ở tầng liên kết dữ liệu kẻ tấn công cũng có thể truy cập bất kì đâu nên lại một lần nữa tạo ra nhiều cơ hội cho kiểu tấn công DOS. Thậm chí khi WEP đã được bật, kẻ tấn công có thể thực hiện một số cuộc tấn công DOS bằng cách truy cập tới thông tin lớp liên kết. Khi không có WEP, kẻ tấn công truy cập toàn bộ tới các liên kết giữa các STA và AP để chấm dứt truy cập tới mạng.
Nếu một AP sử dụng không đúng anten định hướng, kẻ tấn công có nhiều khả năng từ chối truy cập từ các client liên kết tới AP. Anten định hướng đôi khi còn được dùng để phủ sóng nhiều khu vực hơn với một AP bằng cách dùng anten. Nếu anten định hướng không phủ sóng với khoảng cách các vùng là như nhau, kẻ tấn công có thể từ chối dịch vụ tới các trạm liên kết bằng cách lợi dụng sự sắp đặt không đúng này.
Tấn công tầng mạng
Nếu một mạng cho phép bất kỳ một client nào kết nối, nó dễ bị tấn công DOS tầng mạng. Mạng máy tính không dây chuẩn 802.11 là một môi trường chia sẻ tài nguyên. Một người bất hợp pháp có thể xâm nhập vào mạng, từ chối truy cập tới các thiết bị được liên kết tới AP.
Ví dụ như kẻ tấn công có thể xâm nhập vào mạng 802.11 và gửi đi hàng loạt gói tin ICMP qua cổng gateway. Trong khi cổng gateway có thể vẫn thông suốt lưu lượng mạng, thì dải tần chung 802.11b lại dễ bị bão hòa. Các client khác liên kết với AP này thì sẽ gửi các gói tin rất khó khăn.
Tấn công tầng vật lý
Tấn công DOS tầng vật lý ở mạng có dây, muốn thực hiện thì yêu cầu kẻ tấn công phải ở gần các máy tính trong mạng. Điều này lại không đúng trong mạng không đây. Với mạng này, bất kỳ môi trường nào cũng có thể bị tấn công và kẻ tấn công có thể xâm nhập vào tầng vật lý một khoảng cách rất xa, có thể là từ bên ngoài thay vì phải đứng bên trong tòa nhà.
Trong mạng máy tính có dây khi bị tấn công thường để lại các dấu hiệu dễ nhận biết như là cáp bị hỏng, dịch chuyển cáp, hình ảnh được ghi lại từ camera, thì với mạng không dây lại không để lại bất kỳ một dấu hiệu nào. 802.11 PHY đưa ra một phạm vi giới hạn các tần số trong giao tiếp. Như vậy, nếu thiết bị đó có thể tạo ra đủ nhiễu tần số vô tuyến thì sẽ làm giảm tín hiệu tỷ lệ nhiễu tới mức không phân biệt được dẫn đến các STA nằm trong dải tần nhiễu sẽ bị ngừng hoạt động.
Các thiết bị sẽ không thể phân biệt được tín hiệu mạng một cách chính xác từ tất cả các nhiễu xảy ra ngẫu nhiên đang được tạo ra và do đó sẽ không thể giao tiếp được. Tấn công theo kiểu này không phải là sự đe dọa nghiêm trọng, nó có thể thực hiện phổ biến do vấn đề giá cả của thiết bị, nó quá đắt trong khi kẻ tấn công chỉ tạm thời vô hiệu hóa được mạng.
Phạm Đình Hải – VnPro