Chương 1: Tổng quan an ninh mạng • Dành thời gian để thiết lập cấu hình thiết bị một cách tốt nhất. Thiết bị mạng có tính an ninh chưa tốt Có thể miêu tả những thiết bị này là dễ dàng xâm nhập, dễ bị tấn công, không sử dụng những giải pháp điều khiển truy nhập, lọc gói. • Giao tiếp mạng (Network Interface Card): Thông thường một giao tiếp mạng chỉ nhận những gói tin gửi tới đích có địa chỉ vật lý xác định, những gói tin khác đều bị loại bỏ. Tuy nhiên giao tiếp mạng có khả năng hỗ trợ hoạt động ở trạng thái nghe, cho phép nhận toàn bộ gói tin đến và đi qua giao tiếp mạng đó.
Hầu hết các hệ điều hành đều cho phép các chương trình ứng dụng thiết lập chế độ này cho các giao tiếp mạng. Từ đó người sử dụng có thể dễ dàng xem, đọc toàn bộ thông tin đi qua giao tiếp mạng đó. • Topology của mạng: Mạng chia sẻ rất dễ gây rủi ro, vì toàn bộ lưu lượng mạng nhìn thấy được bởi các thiết bị trên mạng. Những thông tin có tính nhạy cảm như mật khẩu, email, mã thẻ có thể bị lấy trộm một cách dễ dàng.
Để khắc phục nhược điểm này, các thiết bị switch đều có tính năng mạng LAN ảo, SPAN để hạn chế khả năng thu nhận toàn bộ gói tin trên mạng chia sẻ. Ngày nay hầu hết các tổ chức đều đang chuyển dần từ các thiết bị chia sẻ tài nguyên sang switch. • Modem: Việc thiết lập sẵn một modem tạo điều kiện thuận lợi cho việc truy nhập mạng. Tuy nhiên nếu không thực hiện được kiểm soát, modem sẽ trở thành một mục tiêu tấn công, vì rất nhiều thiết bị modem có khả năng thiết lập chế độ trả lời tự động, đây là lỗ hổng của thiết bị để những kẻ xâm nhập có thể lợi dụng để xâm nhập vào hệ thống.
____________________________________________________________ Vũ Quốc Bảo - CH2003 - ĐHBKHN 21 Chương 1: Tổng quan an ninh mạng • Router: Bộ định tuyến hoạt động ở lớp mạng có nhiệm vụ định tuyến và lọc các gói tin. Thông thường router có chức năng kết nối giữa các mạng LAN nên thường xuyên phải chịu tấn công truy nhập mạng và đặc biệt là tấn công DoS. • Firewall và Proxy: Có chức năng hoạt động như một hệ thống gateway để bảo vệ tài nguyên trong mạng, có nhiệm vụ ngăn cản các tấn công từ mạng ngoài vào mạng trong, Firewall thường sử dụng các cơ chế lọc gói để hoạt động, vì thế các lỗi phổ biến xảy ra là lỗi tràn bộ đệm. Ngoài ra firewall thường bỏ qua các cuộc tấn công từ mạng trong (mạng tin cậy), điều này là rất nguy hiểm với những tấn công vào thẳng hệ thống firewall trong nội bộ mạng.
Để đảm bảo hoạt động tin cậy, hệ thống firewal cần thường xuyên được cập nhật những bản sửa lỗi, các luật hoạt động và được theo dõi thường xuyên từ người quản trị. Các lỗi do công nghệ, phần mềm gây ra Mỗi một công nghệ đều có những điểm yếu, những điểm yếu này có thể tồn tại trong hệ điều hành, giao thức hay thiết bị mạng. Khiếm khuyết của thiết bị mạng Bất kỳ nhà sản xuất nào cung hứa cung cấp những thiết bị tốt nhất, tuy nhiên mọi sản phẩm đều tồn tại sự phức tạp và lỗ hổng trong khi thiết kế. Ngoài ra bất kỳ thiết bị nào cũng có những điểm mạnh và điểm yếu.
Một thiết bị có thể hoạt động tốt và an toàn trong môi trường mạng này, nhưng lại không hỗ trợ hay hoạt động kém hiệu quả trong môi trường mạng khác. Vì thế điều quan trọng là phải xác định được loại thiết bị nào hoạt động tốt nhất trong môi trường mạng của mình. ____________________________________________________________ Vũ Quốc Bảo - CH2003 - ĐHBKHN 22 Chương 1: Tổng quan an ninh mạng Lỗi hệ điều hành, lỗi phần mềm ứng dụng Ở đây, phần mềm là khái niệm bao gồm cả hệ điều hành và các gói phần mềm ứng dụng chạy trên hệ điều hành đó. Hầu hết các phần mềm đều có lỗi do nhiều nguyên nhân chủ quan và khách quan.
• Quét lỗi mạng: Các chương trình phần mềm quét mạng thường sử dụng các nguyên lý sau để thực hiện quét: - Packet In groper (ping): để lấy địa chỉ IP của thiết bị mạng. - SNMP: Một thiết bị mạng có cấu hình snmp chưa được bảo vệ sẽ trở nên rất nguy hiểm, vì những kẻ xâm nhập có thể sửa đổi được cả cấu hình mạng thông qua thiết bị đó. - TCP/UDP port: Chương trình quét toàn bộ những cổng dịch vụ và xác định dịch vụ nào đang hoạt động trên mạng, thậm chí chi tiết về từng sản phẩm và lỗi của sản phẩm đó. - Solarwind: là một chương trình có thể quét toàn bộ mạng, đưa ra những thông báo chi tiết về cả sản phẩm, tài khoản, và có thể phá được cả mật khẩu.
- Nmap: Là một công cụ sử dụng cho các máy tính có dùng hệ điều hành UNIX để quét những mạng lớn. Công cụ này còn có khả năng cho phép vượt qua cả tường lửa, sử dụng cả TCP SYN, ICMP và xác định chi tiết hệ điều hành đang hoạt động trên máy đích. • Tràn bộ đệm: Các lỗi phần mềm phổ biến hiện nay là lỗi tràn bộ đệm. Việc nhập vào một giá trị không mong muốn có thể gây ra lỗi chương trình, giúp cho những kẻ tấn công có thể xâm nhập vào hệ thống.
- Bộ đệm là một vùng nhớ có giới hạn về kích thước sử dụng cho phần mềm. Nếu bộ đệm đạt tới giới hạn tổng, một lỗi tràn ____________________________________________________________ Vũ Quốc Bảo - CH2003 - ĐHBKHN 23 Chương 1: Tổng quan an ninh mạng bộ đệm cần được quan tâm. Giá trị nhập vào không mong muốn là giá trị không theo mẫu quy định có thể gây nên lỗi làm khóa (treo) tiến trình đang thực hiện hoặc cấm dịch vụ. • Các ứng dụng WEB: các chương trình ứng dụng web hiện nay được viết khá nhanh, vì thế thường hay có lỗi trong cấu hình.
Có rất nhiều báo cáo đưa ra các lỗi trong phần mềm duyệt web như lỗi trong IE, Mozzila… Dưới đây là một số ví dụ điển hình: - Lưu giữ mật khẩu: Một rủi ro thường xảy ra khi người dùng truy nhập vào các trang WEB có yêu cầu tài khoản và mật khẩu. Thông tin này được lưu giữ tạm thời trên máy của người dùng, và có thể bị lấy cắp khi người dùng truy nhập vào trang WEB khác. - Các thành phần máy ảo: Việc sử dụng các ứng dụng java trong trang HTML có thể gây rủi ro. Một ứng dụng java có thể được lập trình để kích hoạt các lệnh trên máy duyệt WEB và lấy trộm thông tin.
Để đảm bảo an ninh hầu hết các ứng dụng java đều có chứa chữ ký điện tử để xác thực. - Mã hóa kênh truyền SSL: Các trình duyệt hầu hết đều đảm bảo an toàn thông tin với mã hóa SSL và xác nhận chứng thực điện tử từ máy chủ gốc. Tuy nhiên các trình duyệt lại không xác nhận được các chứng thực điện tử đã hết hạn, không xác thực được các kết nối SSL được tạo ra từ cùng một máy chủ. Điều này có thể tạo ra lỗ hổng để những kẻ xâm nhập có thể lợi dụng truy nhập vào kết nối SSL và phá hủy dữ liệu.
• Ăn trộm thông tin tài khoản và mật khẩu: Hầu hết những người sử dụng mạng đều đã từng một lần thiết lập mật khẩu dễ nhớ, dựa vào ____________________________________________________________ Vũ Quốc Bảo - CH2003 - ĐHBKHN 24 Chương 1: Tổng quan an ninh mạng tên người thân, tên tên vật… Đây là những dạng mật khẩu dễ bị phá hoặc đoán được. Dưới đây là một số hình thức ăn trộm mật khẩu: - Lấy thông tin mật khẩu từ dữ liệu lưu trữ mật khẩu: tập tin mật khẩu (password), dữ liệu thư mục (LDAP). - Sử dụng công cụ sniffer để tìm mật khẩu thông qua việc thu thập gói tin trên mạng. - Thực hiện lại việc truy nhập vào mạng bằng cách mô phỏng lại những gì thu được bằng công cụ sniffer.
- Đoán mật khẩu dựa trên dữ liệu thu được. Khiếm khuyết của giao thức Một số bộ giao thức, ví dụ như TCP/IP, được thiết kế mà không có sự quan tâm đến vấn đề bảo mật vì thế gây ra những lỗ hổng an ninh khi áp dụng (Vấn đề này sẽ được đề cập rõ hơn trong phần tấn công mạng). • Giao thức NFS: giao thức chia sẻ tài nguyên sử dụng trong hệ điều hành Novell và UNIX. Giao thức này không có cơ chế xác thực và mã hóa, ngoài ra NFS sử dụng cơ chế lựa chọn cổng TCP ngẫu nhiên vì thế rất khó để thiết lập điều khiển truy nhập cho hệ thống.
• Bộ giao thức TCP/IP: Bộ giao thức này chứa các giao thức như icmp, udp, tcp và một số điểm yếu khác. Ví dụ: phần mào đầu của gói tin IP có thể bị chặn và sửa đổi mà không cần để lại dấu vết. Gói tin ICMP có thể lợi dụng trong tấn công DDoS (Chúng ta sẽ bàn kỹ hơn về bộ giao thức TCP/IP trong mục các kiểu tấn công mạng). ____________________________________________________________ Vũ Quốc Bảo - CH2003 - ĐHBKHN 25 Chương 1: Tổng quan an ninh mạng 1.
Vấn đề an ninh trong mô hình mạng TCP/IP 1. Mô hình mạng phân lớp TCP/IP Với mục đích xây dựng một mạng máy tính mà là "mạng của các mạng", vào giữa những năm 70s Vint Cerf (Đại học Stanford) cùng Robert Kahn (BBN) đã cùng phát triển họ giao thức TCP/IP, đến năm 1983 đã thay thế hoàn toàn NCP trong ARPAnet và hiện nay TCP/IP được sử dụng phổ biến nhất trên mạng Inernet và được hỗ trợ bởi mọi phần mềm về mạng. Bởi vì TCP/IP là tên của bộ giao thức chuẩn dùng cho mạng mở và được sử dụng rộng rãi cho mạng Internet, nên nó được sử dụng như là tên của mô hình kiến trúc cho Internet về thực chất nó chỉ là hai giao thức trong mô hình. Cũng giống như mô hình OSI mô hình TCP/IP cũng có kiến trúc phân tầng, chức năng của tầng trên được đưa ra bởi tầng dưới, mỗi giao thức có thể hoạt động độc lập với giao thức các tầng khác.
Ví dụ chúng ta có thể nâng cấp hay sửa chữa giao thức của một tầng nào đó mà không sợ ảnh hưởng tới chức năng của tầng đó cũng như các tầng khác cũng như không cần phải thay đổi giao thức các tầng khác. Gần đây nhất là sự ra đời của phiên bản IP mới gọi là IPng (IP next generation hay IP version 6) được thay đổi để tạo giải pháp mới cho địa chỉ IP, sự thay đổi này không cần thay đổi kiến trúc TCP/IP và quan hệ giữa các giao thức. • Lớp thấp nhất là lớp truy cập mạng (network access layer).