0
Tải bản đầy đủ (.doc) (130 trang)

Ảnh hưởng của các lỗ hổng mạng

Một phần của tài liệu TÌM HIỂU FIREWALL TRÊN CÔNG NGHỆ CISCO VÀ DEMO MỘT SỐ ỨNG DỤNG THỰC TIỄN (Trang 38 -51 )

Ở phần trên đã phân tích một số trường hợp có những lỗ hổng bảo mật, những kẻ tấn công có thể lợi dụng những lỗ hổng này để tạo ra những lỗ hổng khác tạo thành một chuỗi mắt xích những lỗ hổng. Ví dụ, một kẻ phá hoại muốn xâm nhập vào hệ thống mà không có tài khoản truy nhập hợp lệ trên hệ thống đó. Trong trường hợp này, trước tiên kẻ phá hoại sẽ tìm ra các điểm yếu trên hệ thống, hoặc từ các chính sách bảo mật, hoặc sử dụng các công cụ dò xét thông tin trên hệ thống đó để đạt được quyền truy nhập vào hệ thống. Sau khi mục tiêu duy nhất đã đạt được, kẻ phá hoại có thể tiếp tục tìm hiểu các dịch vụ trên hệ thống, nắm bắt được các điểm yếu và thực hiện các hành động phá hoại tinh vi hơn.

Tuy nhiên, có phải bất kỳ lỗ hổng bảo mật nào cùng nguy hiểm đến hệ thống hay không. Có rất nhiều thông báo liên quan đến lỗ hổng bảo mật trên mạng Internet, hầu hết trong số đó là các lỗ hổng loại C, là không đặc biệt nguy hiểm đối với hệ thống. Ví dụ, khi những lỗ hổng về sendmail được thông báo trên mạng, không phải ngay lập tức ảnh hưởng trên toàn bộ hệ thống. Khi những thông báo về lỗ hổng được khẳng định chắc chắn, các nhóm tin sẽ đưa ra một số phương pháp để khắc phục hệ thống.

CHƯƠNG 3. FIREWALL CISCO

3.1 FIREWALL ASA

- Cisco ASA viết tắt của từ: Cisco Adaptive Security Appliance

- ASA là một giải pháp bảo mật đầu cuối chính của Cisco. Hiện tại ASA là sản phẩm bảo mật dẫn đầu trên thị trường về hiệu năng và cung cấp các mô hình phù hợp doanh nghiệp, tích hợp giải pháp bảo mật mạng

- Dòng sản phẩm ASA giúp tiết kiệm chi phí, dễ dàng triển khai. Nó bao gồm các thuộc tính sau

+ Bảo mật thời gian thực, hệ điều hành độc quyền của Cisco + Công nghệ Stateful firewall sử dụng thuật toán SA của Cisco + Sử dụng SNR để bảo mật kết nối TCP

+ Sử dụng Cut through proxy để chứng thực telnet, http. ftp

+ Chính sách bảo mật mặc định gia tăng bảo vệ mức tối đa và cũng có khả năng tùy chỉnh những chính sách này và xây dựng lên chính sách của riêng bạn

+ VPN: IPSec, SSL và L2TP

+ Tích hợp hệ thống ngăn ngừa và phát hiện xâm nhập IDS/IPS + NAT động, NAT tĩnh, NAT port

+ Ảo hóa các chính sách sử dụng Context

3.1.1 Dòng sản phẩm ASA

- Có tất cả 6 model khác nhau. Dòng sản phẩm này phân loại khác nhau từ tổ chức nhớ đến mô hình doanh nghiệp vừa hay cho nhà cung cấp dịch vụ ISP. Mô hình càng cao thì thông lượng, số port, chi phí càng cao. Sản phẩm bao gồm : ASA 5505, 5510, 5520, 5540, 5550, 5580-20, 5580-40

Hình 3.1 Sản phẩm ASA 5550 Ví dụ như thông số của dòng ASA 5550

3.1.2 Thuật toán bảo mật ASA

Một chức năng chính của ASA là stateful firewall.Stateful firewall thêm và duy trì thông tin kết nối của người dùng. Thông tin này được lưu trữ trong bảng state table, thường được gọi là conn table. ASA Firewall sử dụng conn table để gia tăng chính sách bảo mật cho kết nối người dùng

Dưới đây là một vài thông tin mà stateful firewall giữ trong bảng conn table + Địa chỉ IP nguồn

+ Địa chỉ IP đích

+ Giao thức: Như TCP hay UDP

+ Thông tin giao thức IP như là TCP/UDP port, TCP Syn và TCP flag

3.1.2.1 Giải thích cơ chế Stateful Firewall

Hình 3.2 Cơ chế stateful Firewall a.Figure 1-1

- PC-A trong mạng nội bộ thực hiện truy cập webserver bên ngoài mạng Internet

- Gói tin Request http đến firewall, firewall lấy thông tin về kết nối của PC-A đó là: địa chỉ nguồn, địa chỉ đích, giao thức IP, và bất cứ thông tin giao thức khác và đặt nó trong bảng conn table

Hình 3.2 Cơ chế stateful firewall b. Figure 1-2

- Webserver gửi trả lại trang web cho người dùng PC-A

- Firewall kiểm tra gói tin trả lại này và so sánh với entrie trong bảng conn table

+ Nếu việc so sánh là hợp lệ trong bảng conn table thì gói tin được cho phép

+ Nếu so sánh là không hợp lệ trong bảng conn table thì gói tin bị xóa - Một stateful firewall duy trì bảng kết nối này. Nếu firewall thấy client ngắt kết nối thì

stateful firewall sẽ xóa entry trong bảng conn table đó đi. Nếu entry không hoạt động trong một khoảng thời gian thì entry đó sẽ timeout và stateful firewall sẽ xóa entry đó khỏi bảng conn table

3.1.2.2 So sánh Stateful và Packet Filtering Firewall:

- Một stateful firewall có khả năng nhận biết về tình trạng của kết nối đi qua nó. Mặt khác Packet firewall không thấy được tình trạng của kết nối

- Một ví dụ rõ ràng cho việc hiểu Packet filtering firewall là việc sử dụng Extended ACL mà Router sử dụng. Với loại ACL này Router sẽ chỉ thấy được các thông tin sau trong mỗi packet riêng biệt

+ Địa chỉ IP nguồn + Địa chỉ IP đích + IP protocol

- Ngay cái nhìn đầu tiên thì có vẻ thông tin mà Packet filtering firewall sử dụng là giống Stateful Firewall. Tuy nhiên Router sử dụng ACL sẽ không nhận biết được tình trạng kết nối là request hay kết nối đang tồn tại, hay ngắt kết nối, mà nó chỉ nhìn được mỗi gói tin riêng biệt đi qua interface đó. Nghĩa là Packet filtering firewall chỉ kiểm tra gói tin ở lớp 3 và lớp 4 thôi.

3.1.2.3 Sequence Number Randomization (SNR)

Firewall ASA có một đặc đính được gọi là Sequence Number Randomization (SNR). Đặc tính này được khởi tạo bằng thuật toán bảo mật. SNR được sử dụng để bảo vệ bạn chống lại việc mất thông tin và tấn công cướp phiên kết nối TCP khỏi hacker.Như chúng ta đã biết một vấn đề với giao thức TCP là hầu hết giao thức TCP/IP khởi tạo quá trình kết nối bắt tay 3 bước theo một phương thức có thể đoán trước được khi sử dụng SYN và ACK. Với rất nhiều phương thức, hacker có thể sử dụng các công cụ này để dự đoán về tập thiết lập của dữ liệu tiếp theo được gửi trên mạng và khi dự đoán được số SYN đúng. Hacker có thể sử dụng thông tin này để cướp phiên kết nối và giả mạo kết nối

- Firewall ASA có thể giải quyết vấn đề này bằng cách tạo ngẫu nhiên số SYN và đặt nó vào trong đầu mào của gói tin TCP Segment. ASA sẽ thay thế số SYN cũ bằng số SYN mới vào trong bảng conn table. Tất cả các lưu lượng trở về từ máy đích thông qua Firewall trở về nguồn, ASA tìm kiếm thông tin này và thay đổi trở lại với số ACK. Vì vậy máy nguồn trong mạng cục bộ có thể nhận được gói tin trả về từ đích. - Sau đây là ví dụ về SNR

- Gói tin TCP đi qua Firewall ASA với số SYN =578. SNR của ASA thay đổi giá trị SYN này thành một giá trị SYN ngẫu nhiên và đặt nó vào trong bảng conn table ( trong trường hợp này là 992), và chuyển tiếp gói tin đó tới đích. Máy đích không thể nhận biết được về sự thay đổi này và gửi lại cho nguồn với ACK =993. Firewall nhận gói tin trả về này và thay đổi giá trị 993 thành 579 vì vậy máy nguồn sẽ không từ chối gói tin này. Hãy nhớ rằng gói tin chứa ACK tăng lên 1 và sử dụng giá trị này như ACK number

- Chú ý rằng: SNR đối với máy nguồn và máy đich là một quá trình trong suốt. Cisco khuyến cáo bạn không nên vô hiệu hóa tính năng này. Nếu vô hiệu hóa tính năng SNR thì mạng của bạn sẽ đối mặt với kiểu tấn công TCP session hijacking.

3.1.2.4 Cut-through Proxy

Bảo mật SA khởi tạo rất nhiều đặc tính bảo mật của hệ điều hành CISCO. Bên cạnh đó một thuật toán gia tăng bảo mật khác là Cut-through Proxy (CTP). CTP cho phép firewall ASA kiểm tra những kết nối ra vào mạng và chứng thực chúng trước khi chúng được cho phép đi vào mạng nội bộ. CTP thường được sử dụng trong trường hợp khi người sử dụng kết nối đến một server mà không thể thực hiện được chứng thực chính nó

Kết nối người dùng không được chứng thực bởi ASA. Nhưng ta có thể sử dụng một Server chuyên dụng cho việc chứng thực này như là Cisco Secure Access Control Server (CSACS)

Cisco cung cấp cả hai giao thức cho việc chứng thực đó là TACACS+ và RADIUS. CTP có thể thực hiện chứng thực theo các loại kết nối sau

+ FTP

+ HTTP và HTTPS + Telnet

Khi cấu hình Firewall ASA được cấu hình CTP, đầu tiên nó chứng thực kết nối đó trước khi cho phép chúng đi xuyên qua firewall. Hình dưới đây mô tả từng bước CTP làm việc

Hình 3.4 Các bước làm việc của CTP

- User Pong khởi tạo kết nối đến FTP Server có địa chỉ IP: 200.200.200.2

Firewall ASA kiếm tra kết nối này và đồng thời kiểm tra xem có entry nào trong bảng conn table không. Nếu tồn tại một entry trong ASA thì ASA cho phép kết nối này. Nhưng trong trường hợp này User phải được chứng thực trước

Nếu ASA không tìm thấy bất cứ một entry nào phù hợp với kết nối đó trong bảng conn table thì nó sẽ yêu cầu chứng thực User Pong với Username và password và chuyển tiếp thông tin này tới Server chứng thực

Server chứng thực kiểm tra bảng người dùng mà nó đã được cấu hình sẵn và so sánh. Nếu cho phép hay từ chối truy cập thì Server sẽ gửi gói tin Allow hay Deny tới ASA + Nếu ASA nhận gói tin Allow thì nó sẽ thêm thông tin kết nối của người dùng vào bảng conn table và cho phép kết nối đó

+ Nếu ASA nhận gói tin Denny nó sẽ xóa bỏ kết nối đó hoặc yêu cầu cung cấp lại thông tin username/password

Một khi người dùng đã được chứng thực thì tất cả các lưu lượng của người dùng sẽ được xử lý bởi ASA ở lớp 3 và lớp 4 của mô hình OSI. Sự khác biệt với ứng dụng proxy truyền thông là tất cả các lưu lượng được xử lý ở lớp 7 trong mô hình OSI. Với CTP, quá trình chứng thực được xử lý ở lớp 7 nhưng lưu lượng dữ liệu lại được xử lý ở lớp 3 và lớp 4 trong hầu hết các trường hợp

Thuật toán bảo mật có trách nhiệm cho việc khởi tạo và gia tăng chính sách bảo mật. Thuật toán này cũng sử dụng mô hình kế thừa, cái cho phép bạn khởi tạo nhiều mức bảo mật khác nhau.Để hoàn thành điều này, mỗi Interface trên ASA cần phải chỉ định một giá trị từ 0 đến 100, ứng với 0 là ít bảo mật nhất và 100 là mức bảo mật cao nhất. Thuật toán bảo mật sử dụng những mức bảo mật này để gia tăng chính sách bảo mật mặc định.

Một ví dụ cho điều này. Interface kết nối ra internet có mức bảo mật thấp nhất, Interface kết nối tới mạng LAN sẽ có mức bảo mật cao nhất

Sau đây là 4 quy tắc cho tất cả các lưu lượng đi qua ASA

+ Mặc định lưu lượng từ interface có mức bảo mật cao đến interface có mức bảo mật thấp là được cho phép

+ Mặc định lưu lượng từ interface có mức bảo mật thấp hơn đến interface có mức bảo mật cao hơn là bị cấm

+ Mặc định lưu lượng từ một interface đến một interface khác với cùng mức bảo mật là bị cấm

+ Mặc định lưu lượng vào ra cùng 1 interface là bị cấm

Ví dụ sau chỉ ra lưu lượng nào được cho phép, lưu lượng nào không được phép. Trong ví dụ này User trong mạng cục bộ khởi tạo kết nối tới webserver ngoài internet là được phép đi qua ASA. Như vậy thuật toán bảo mật thêm kết nối này vào trong bảng conn table. Khi webserver gửi trả về trang web từ internet sẽ được cho phép. Một khi User ngắt kết nối, thông tin kết nối đó sẽ bị xóa khởi bảng conn table.

Nếu User trên Internet cố gắng truy cập webserver ở trong mạng cục bộ. Thuật toán bảo mật trên ASA tự động cấm kết nối đó

Những rule này là mặc định. Chúng ta có thể tạo các ngoài lệ đối với các rule này trên ASA. Điều này thường chia thành 2 loại:

+ Cho phép truy cập dựa trên tài khoản + Truy cập dựa trên điều kiện lọc

Hình 3.5 Thuật toán khởi tạo chính sách – Policy Implementation

Một ví dụ khác, khi User từ ngoài Internet cố gắng truy cập FTP server nằm trong mạng cục bộ thì mặc định bị cấm. Bạn có thể sử dụng hai phương thức để mở kết nối đó thông qua firewall

+ Khởi tạo CTP cho phép kết nối + Sử dụng ACL để mở kết nối tạm thời

3.2. Kiểm soát lưu lượng bằng ASA 3.2.1 Tổng quan về giao thức TCP/IP

- Trước khi đi vào chi tiết các câu lênh cấu hình cho phép các lưu lượng qua ASA thì cần phải nắm chắc cơ chế của các giao thức phổ biến như TCP,UDP và ICMP. Điều này rất quan trọng bởi ASA nhận biết các luồng lưu lượng này khác nhau trong quá trình lọc gói tin theo cơ chế Stateful Firewall

- TCP là một giao thức hướng kết nối. Có nghĩa là trước khi vận chuyển dữ liệu qua mạng thì một vài tham số kết nối phải được thương lượng để thiết lập kết nối. Để thực hiện việc thương lượng này, TCP sẽ trải qua quá trình bắt tay ba bước:

+ Phần đầu của quá trình bắt tay ba bước, địa chỉ nguồn gửi một TCP Syn, chỉ ra rằng muốn mở một kết nối

+ Khi máy đích nhận được gói tin chứa số SYN đó, nó nhận biết điều này với số SYN cùng với số ACK. Qúa trình đáp trả này thường được gọi là SYN/ACK. Gía trị ACK chỉ ra nguồn mà đích nhận được với số SYN do nguồn yêu cầu

+ Máy nguồn sau đó gửi ACK lại đích. Điều này chi ra quá trình thiết lập kết nối hoàn thành

Yêu cầu kết nối ra bên ngoài

- Khi một kết nối đang được thiết lập, luồng dữ liệu đi theo hai hướng qua Firewall ASA. Gỉa sử rằng một người dùng bên trong mạng cục bộ khởi tạo kết nối TCP đến một máy chủ bên ngoài Internet. Bởi vì ta đã cấu hình một rule cho việc thiết lập kết nối TCP nên nó rất là dễ dàng cho Firewall ASA hiểu điều gì đang xảy ra với quá trình thiết lập kết nối đó. Hay nói cách khác, rất dễ cho Firewall ASA kiểm tra lưu lượng này. Như được nói ở phần trước, stateful firewall giữ toàn bộ trạng thái của kết nối

- Như trong ví dụ này, Firewall ASA nhìn gói tin có chứa số SYN và nhận ra đây là một gói tin yêu cầu kết nối từ bên trong mạng cục bộ. Bởi vì đây là một Stateful firewall nên ASA sẽ thêm kết nối này vào trong bảng conn table vì thế gói tin chưa SYN/ACK từ bên ngoài gửi lại sẽ được cho phép vào trong mạng cục bộ và Usẻ trong mạng cục bộ có thể hoàn thành kết nối với số ACK cuối cùng. ASA sau đó sẽ cho phép lưu lượng đi lại giữa 2 máy này

- Khi ngắt một kết nối TCP, gói tin yêu cầu ngắt kết nối sẽ đi qua firewall và được firewall nhận biết tình trạng của kết nối như vậy. Qúa trình nhận biết dựa trên FIN và FIN/ACK hay RST. Và sau đó Firewall sẽ xóa đối tượng kết nối đó khỏi bảng conn table. Vì lẽ đó khi một đối tượng bị xóa khỏi bảng conn table thì thiết bị bên ngoài sẽ không thể kết nối vào mạng Lan của chúng ta, tất cả các traffic mặc định bị drop

Yêu cầu kết nối vào bên trong mạng nội bộ

- Bởi vì firewall ASA hoạt động như một stateful firewall nên mặc định tất cả các

Một phần của tài liệu TÌM HIỂU FIREWALL TRÊN CÔNG NGHỆ CISCO VÀ DEMO MỘT SỐ ỨNG DỤNG THỰC TIỄN (Trang 38 -51 )

×