Đồ án tốt nghiệp Tìm hiểu lý thuyết và xây dựng Firewall trên nền Linux



tải về 0.55 Mb.
trang4/18
Chuyển đổi dữ liệu19.08.2016
Kích0.55 Mb.
#23118
1   2   3   4   5   6   7   8   9   ...   18

2.4 Các lỗ hổng trên mạng


Việc sử dụng mạng Internet làm tăng nhanh khả năng kết nối, nhưng đồng thời chứa đựng trong đó những hiểm hoạ không ngờ. Những lỗ hổng để kẻ tấn công có thể lợi dụng, gây tổn thương cho hệ thống có rất nhiều. Sau đây là một vài lỗ hổng phổ biến trên cộng đồng mạng hiện nay.

  • Các mật khẩn yếu :

Mọi người thường có thói quen sử dụng mật khẩu theo tên của người thân hay những gì quen thuộc với mình. Với những mật khẩu dễ bị phán đoán, kẻ tấn công có thể chiếm đoạt được quyền quản trị trong mạng, phá huỷ hệ thống, cài đặt backdoor … Ngày nay, một người ngồi từ xa cũng có thể đăng nhập vào được hệ thống cho nên ta cần phải sử dụng những mật khẩu khó đoán, khó dò tìm hơn.

  • Dữ liệu không được mã hoá :

Các dữ liệu được truyền đi trên mạng rất dễ bị xâm phạm, xem trộm, sửa chữa … Với những dữ liệu không được mã hoá, kẻ tấn công chẳng tốn thời gian để có thể hiểu được chúng. Những thông tin nhạy cảm càng cần phải phải mã hoá cẩn thận trước khi gửi đi trên mạng.

  • Các file chia sẻ :

Việc mở các file chia sẻ thông tin là một trong những vấn đề bảo mật rất dễ gặp. Điều này cho phép bất kì ai cũng có thể truy nhập các file nếu ta không có cơ chế bảo mật, phân quyền tốt.

  • Bộ giao thức nổi tiếng TCP/IP được sử dụng rộng rãi trên mạng hiện nay cũng luôn tiềm ẩn những hiểm hoạ khôn lường. Kẻ tấn công có thể sử dụng ngay chính các qui tắc trong bộ giao thức này để thực hiện cách tấn công DoS. Sau đây là một số lỗ hổng đáng chú ý liên quan đến bộ giao thức TCP/IP

    • CGI Scripts: Các chương trình CGI nổi tiếng là kém bảo mật. Và thông thường các hacker sử dụng các lỗ hổng bảo mật này để khai thác dữ liệu hoặc phá huỷ chương trình




    • Tấn công Web server: Ngoài các lỗ hổng bảo mật do việc thực thi các

chương trình CGI, các Web server còn có thể có các lỗ hổng khác. Ví dụ như một số Web server (IIS 1.0 ...) có một lỗ hổng mà do đó một tên file có thể chèn thêm đoạn “../” vào trong tên đường dẫn thì có thể di chuyển tới mọi nơi trong hệ thống file và có thể lấy được bất kì file nào. Một lỗi thông dụng khác là lỗi tràn bộ đệm trong trường request hoặc trong các trường HTTP khác.

    • Tấn công trình duyệt Web: Do các trình duyệt Web như của Microsoft, Netscape có khá nhiều lỗ hổng bảo mật nên xuất hiện các tấn công URL, HTTP, HTML, JavaScript, Frames, Java và ActiveX.

    • Tấn công SMTP (Sendmail)

    • Giả địa chỉ IP (IP Spoofing)

    • Tràn bộ đệm (Buffer Overflows): có 2 kiểu tấn công khai thác lỗi tràn bộ đệm là : DNS overflow (Khi một tên DNS quá dài được gửi tới Server) và Statd overflow (khi một tên file quá dài được cung cấp).

    • Tấn công DNS (DNS attacks): DNS server thường là mục tiêu chính hay bị tấn công. Bởi hậu quả rất lớn gây ra bởi nó là gây ách tắc toàn mạng.

  • Tháng 4/2004 vừa qua, Bộ An Ninh Nội Vụ Mỹ và trung tâm Điều phối An Ninh Cơ sở hạ tầng quốc gia Anh đã cảnh báo về một lỗi bảo mật TTO nghiêm trọng trong bộ giao thức TCP/IP này.

Trong phần sau chúng ta sẽ xem xét các kỹ thuật tấn công dựa trên các lỗ hổng bảo mật này.

III. Các mục tiêu cần bảo vệ


Để có thể bảo vệ được hệ thống, chống lại sự tấn công của hacker. Chúng ta phải biết những mục tiêu cần bảo vệ, các kỹ thuật tấn công khác nhau từ đó đưa ra các chiến luợc bảo vệ hợp lý…

Trong các phần dưới đây sẽ trình bày cụ thể các vấn đề này.

Có ba mục tiêu cần được bảo vệ là :


    • Dữ liệu: là những thông tin lưu trữ trong máy tính

    • Tài nguyên : là bản thân máy tính, máy in, CPU…

    • Danh tiếng

3.1 Dữ liệu


Mục tiêu , chính sách an toàn của một hệ thống thông tin cũng như đối với dữ liệu bao gồm :

    • Bí mật

    • Toàn vẹn

    • Sẵn sàng

Thông thường mọi người thường tập trung vào bảo vệ tính bí mật của dữ liệu, những thông tin có tính nhạy cảm cao như thông tin về quốc phòng, chiến lược kinh doanh… thì đây là yếu tố sống còn. Khi dữ liệu bị sao chép bởi những người không có thẩm quyền thì ta nói dữ liệu đã bị mất tính bí mật

Khi dữ liệu bị sửa đổi một cách bất ngờ bởi người không có thẩm quyền thì khi đó có thể nói dữ liệu bị mất tính toàn vẹn

Tính sẵn sàng là tính chất quan trọng nhất đối với các tổ chức hoạt động cần sử dụng nhiều thông tin. Khi người sử dụng hợp pháp muốn xem dữ kiệu của mình nhưng dữ liệu không thể đáp ứng ngay vì một lý do nào đó, khi đó ta nói dữ liệu đã mất đi tính sẵn sàng.

3.2 Tài nguyên


Xét một ví dụ như sau :

Ta có một máy in ( một dạng tài nguyên ), ngoài ta ra chỉ những ai có đủ thẩm quyền thì mới được sử dụng nó. Tuy nhiên, có những người không đủ thẩm quyền vẫn muốn sử dụng máy in này miễn phí. Khi đó ta nói chiếc máy in này đã bị xâm phạm

Khái niệm xâm phạm là rất rộng, ví dụ như bộ nhớ, CPU,… đều là tài nguyên. Khi chúng bị những người không có thẩm quyền khai thác một cách bất hợp pháp thì ta nói tài nguyên đó đã bị xâm phạm.

3.3 Danh tiếng


Bảo vệ danh tiếng là một điều quá hiển nhiên đối với cả cá nhân và các tổ chức. Không chỉ trên mạng Internet mà cả trong thực tế cuộc sống hàng ngày chúng ta đều cần phải bảo vệ danh tiếng. Điều gì sẽ xảy ra nếu như một ngày nào đó tên của chúng ta được sử dụng cho những mục đích mờ ám. Và để khôi phục lại danh tiếng mà trước đó đã có chắc chắn phải mất một thời gian dài và cũng có thể là không thể.

IV. Tấn công trên mạng và các chiến lược bảo vệ

4.1 Các dạng tấn công


Có nhiều dạng tấn công khác nhau vào hệ thống, và cũng có nhiều cách phân loại các dạng tấn công này. Trong mục này, chúng ta chia các dạng tấn công làm ba phần cơ bản :

    • Xâm nhập ( Intrusion )

    • Từ chối dịch vụ ( Denial of Service – DoS )

    • Ăn trộm thông tin ( Information thieft )

4.1.1 Xâm nhập


Tấn công xâm nhập là việc một người hay nhóm người cố gắng đột nhập hay lạm dụng hệ thống. Hacker và cracker là hai từ dùng để chỉ những kẻ xâm nhập.

Hầu hết các dạng tấn công vào hệ thống nói chung là dạng xâm nhập. Với cách tấn công này, kẻ tấn công thực sự có thể sử dụng máy tính của ta. Tất cả những kẻ tấn công đều muốn sử dụng máy tính của ta với tư cách là người hợp pháp.

Những kẻ tấn công có hàng loạt cách để truy cập. Chúng có thể giả dạng là một người có thẩm quyền cao hơn để yêu cầu các thông tin về tên truy cập/mật khẩu của ta, hay đơn giản dùng cách tấn công suy đoán, và ngoài ra chúng còn nhiều phương pháp phức tạp khác để truy cập mà không cần biết tên người dùng và mật khẩu.

Kẻ xâm nhập có thể được chia thành hai loại:

+ Từ bên ngoài – Outsider : những kẻ xâm nhập từ bên ngoài hệ thống (xóa Web server, chuyển tiếp các spam qua e-mail servers). Chúng có thể vượt qua firewall để tấn công các máy trong mạng nội bộ. Những kẻ xâm nhập có thể đến từ Internet, qua đường dây điện thoại, đột nhập vật lý hoặc từ các mạng thành viên được liên kết đến tổ chức mạng (nhà sản xuất, khách hàng,…).

+ Từ bên trong – Insider : những kẻ xâm nhập được quyền truy nhập hợp pháp đến bên trong hệ thống (những người sử dụng được ủy quyền, hoặc giả mạo người dùng được ủy quyền ở mức cao hơn… ). Theo thống kê thì loại xâm nhập này chiếm tới 80%.



Có hai cách thức chính để thực hiện hành vi xâm nhập

    • Do thám - Reconnaissance : Kẻ tấn công có thể dùng các công cụ dò quét để kiểm tra hay tìm kiếm các lỗ hổng bảo mật của một mạng nào đó. Các hành động quét này có thể là theo kiểu ping, quét cổng TCP/UDP, chuyển vùng DNS, hay có thể là quét các Web server để tìm kiếm các lỗ hổng CGI....Sau đây là một số kiểu quét thông dụng:
  • Ping Sweep – Quét Ping

Phương pháp này đơn giản là chỉ ping các địa chỉ IP để kiểm tra xem các host tương ứng với các địa chỉ đó còn sống hay không. Các kiểu quét phức tạp hơn sử dụng các giao thức khác như SNMP Sweep cũng có cơ chế hoạt động tương tự.
  • TCP Scan – Quét cổng TCP

Kiểu này dò quét các cổng TCP mở để tìm các dịch vụ đang chạy để có thể khai thác, lợi dụng hay phá hoại. Máy quét có thể sử dụng các kết nối TCP thông dụng hoặc là các kiểu quét trộm(sử dụng kết nối mở một bên) hoặc là kiểu quét FIN (không mở cổng mà chỉ kiểm tra xem có ai đó đang lắng nghe). Có thể quét danh sách các cổng liên tục, ngẫu nhiên hoặc là đã được cấu hình.
  • UDP Scan – Quét cổng UDP

Loại quét này khó hơn một chút vì UDP là giao thức không kết nối. Kỹ thuật là gửi 1 gói tin UDP vô nghĩa tới một cổng nào đó. Hầu hết các máy đích sẽ trả lời bằng 1 gói tin ICMP “destination port unreachable” , chỉ ra rằng không có dịch vụ nào lắng nghe ở cổng đó. Tuy nhiên, nhiều máy điều tiết các messages ICMP nên ta không thể làm điều này rất nhanh được.

  • OS identification – Xác định hệ điều hành

Bằng việc gửi các gói tin TCP hay ICMP không đúng qui cách, kẻ tấn công có thể thu được thông tin về hệ điều hành.
  • Account Scan – Quét tài khoản

    • Cố gắng đăng nhập vào hệ thống với các Tài khoản (Account):

    • Các Tài khoản không có password

    • Các Tài khoản với password trùng với username hoặc là ‘password’

    • Các Tài khoản mặc định đã được dùng để chuyển sản phẩm

    • Các Tài khoản được cài cùng với các sản phẩm phần mềm

    • Các vấn đề về tài khoản nặc danh FTP

    • Lợi dụng – Exploits : lợi dụng các đặc tính ẩn hoặc lỗi để truy cập vào hệ thống.

Firewall có thể giúp ta ngăn chặn một số cách xâm nhập trên. Một cách lý tưởng thì Firewall sẽ chặn toàn bộ mọi ngả đường vào hệ thống mà không cần biết đến tên truy cập hay mật khẩu. Nhưng nhìn chung, Firewall được cấu hình nhằm giảm một số lượng các tài khoản truy cập từ phía ngoài vào. Hầu hết mọi người đều cấu hình Firewall theo cách “one –time password “ nhằm tránh tấn công theo cách suy đoán.

4.1.2 Từ chối dịch vụ


Đây là kiểu tấn công vào tính sẵn sàng của hệ thống, làm hệ thống cạn kiệt tài nguyên hoặc chiếm dụng băng thông của hệ thống, làm mất đi khả năng đáp ứng trả lời các yêu cầu đến. Trong trường hợp này, nếu hệ thống cần dùng đến tài nguyên thì rất có thể hệ thống sẽ gặp lỗi.

Có một số đặc điểm đặc biệt trong cách tấn công này là người bị hại không thể chống đỡ lại được kiểu tấn công này vì công cụ được sử dụng trong cách tấn công này là các công cụ mà hệ thống dùng để vận hành hằng ngày.

Có thể phân biệt ra bốn dạng DoS sau :


    • Tiêu thụ băng thông ( bandwidth consumption )

  • Làm nghèo tài nguyên ( resource starvation )

  • Programming flaw

  • Tấn công Routing và DNS

Về mặt kỹ thuật có 3 kiểu tấn công từ chối dịch vụ chính là DoS, DDoS và DRDoS.

Hình 1-6: Tấn công kiểu DOS và DDoS

Đơn thuần máy tấn công có bandwidth lớn hơn máy nạn nhân

    • DDoS – Distributed DOS

Sử dụng nhiều máy cùng tấn công vào một máy nạn nhân

Sử dụng các server phản xạ, máy tấn công sẽ gửi yêu cầu kết nối tới các server có bandwidth rất cao trên mạng – server phản xạ, các gói tin yêu cầu kết nối này mang địa chỉ IP giả - chính là địa chỉ IP của máy nạn nhân. Các server phản xạ này gửi lại máy nạn nhân các gói SYN/ACK dẫn tới hiện tượng nhân băng thông – bandwidth multiplication.

Tuy nhiên với cách tấn công này, kẻ tấn công cũng không thu được thông tin gì thêm về hệ thống. Nó chỉ đơn thuần làm hệ thống tê liệt, không hoạt động được nữa mà thôi.




Hình 1-7: Tấn công kiểu DRDoS

4.1.3 Ăn trộm thông tin


Có một vài cách tấn công cho phép kẻ tấn công có thể lấy được dữ liệu mà không cần phải trực tiếp truy cập, sử dụng máy tính của chúng ta. Thông thường kẻ tấn công khai thác các dịch vụ Internet phân phối thông tin. Các dịch vụ này có thể đưa ra các thông tin mà ta không muốn hoặc đưa các thông tin đến sai địa chỉ nhận. Nhiều dịch vụ Internet được thiết kế sử dụng cho các mạng nội bộ và không hề có thêm các lớp bảo vệ do đó thông tin sẽ không an toàn khi lưu thông trên mạng Internet.

Hầu hết những kẻ tấn công đều cố gắng lắng nghe để tìm kiếm các thông tin như tên truy cập/ mật khẩu. Thật không may đây lại là các thông tin dễ bị ăn cắp nhất trên mạng. Như hình vẽ dưới đây minh họa



Hình 1-8: Mô hình ứng dụng mail trên mạng Internet

Đây là đường truyền các packets khi user login vào hệ thống vào một ISP, rồi gửi đi một số messages. Các packet không mã mật được truyền từ client tới ISP dialup, rồi qua ISP firewall tới các router trước khi được truyền trên Internet.

Mọi quá trình truyền không mã mật, các messages có thể bị chặn ở một số điểm ví như điểm được gửi đi. Một user làm cho ISP có thể giữ các packets lại. Một chuyên gia tin học cũng có thể đọc tất cả các message một cách dể dàng. Bất cứ một chuyên gia bảo dưỡng các router nào đều có tìm ra nhiều cách để lưu các messages lại. Và cả những nơi cung cấp các dịch vụ, họ cũng có thể xem xét các messages của user.

Nếu truy nhập vào internet từ mạng LAN thay vì dialup, thì có càng nhiều người có thể xem messages hơn. Bất cứ ai trong hệ thống company trên cùng một LAN có thể đặt NIC vào và thu các packets của mạng.

Hình 1-9: Kết nối Internet từ LAN

Các giao thức thường sử dụng cổng nhất định để trao đổi thông tin lấn nhau, và đó là điểm yếu của hệ thống giúp cho các tin tặc có thể dễ dàng lấy cắp được các thông tin quan trọng.

Ví dụ :


Khi user log on vào Yahoo! Mail, nhập username và password rồi ấn Submit, trong trường hợp nhập thông tin chính xác thì thông tin đó được đóng gói và gửi đi. Package đầu tiên của giao thức HTTP chứa thông tin username và password được chuyển qua cổng 1149, khi đó hacker có thể truy nhập vào cổng này để lấy thông tin log on của user. Trong đó thông tin về password được truyền dưới dạng text plain. Khi log on vào sites thì có khoảng 100-200 packets được truyền giữa user và server, trong đó có khoảng 10 packets đầu tiên có chứa thông tin về password.

Có nhiều cách để chống lại cách tấn công này. Một Firewall được cấu hình tốt sẽ bảo vệ, chống lại những kẻ đang cố gắng lấy những thông tin mà ta đưa ra.



tải về 0.55 Mb.

Chia sẻ với bạn bè của bạn:
1   2   3   4   5   6   7   8   9   ...   18




Cơ sở dữ liệu được bảo vệ bởi bản quyền ©hocday.com 2024
được sử dụng cho việc quản lý

    Quê hương