1. Trang chủ
  2. » Luận Văn - Báo Cáo

Xây dựng giải pháp phòng chống DDoS cho máy chủ web

100 1,5K 5

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 100
Dung lượng 2,9 MB

Nội dung

Xây dựng giải pháp phòng chống DDoS cho máy chủ web

Trang 1

Luận văn

Đề tài: Xây dựng giải pháp phòng chống DDoS cho máy chủ web

Trang 2

ĐỒ ÁN TỐT NGHIỆP

Chương I Giới thiệu chung 6

1 Đặt vấn đề 7

2 Mục tiêu và giới hạn 8

3 Hướng giải quyết 8

4 Tóm tắt kết quả 9

5 Nội dung đồ án 10

Chương II Tổng quan về DDoS 11

1 Giới thiệu chung về DDoS 12

2 Phân loại các kiểu tấn công DDoS 12

2.1 Tấn công làm cạn kiệt băng thông 13

2.2 Tấn công làm cạn kiệt tài nguyên 16

3 Sơ đồ mạng Botnet 19

3.1 Sơ đồ Handler-Agent 19

3.2 Sơ đồ IRC Base 20

4 Các phương pháp xây dựng tài nguyên tấn công 21

4.1 Cách thức cài đặt DDoS Agent 22

4.2 Giao tiếp trên mạng Botnet 23

5 Một số kiểu tấn công DDoS và các công cụ tấn công DDoS 24

5.1 Một số kiểu tấn công DDoS 24

5.2 Một số công cụ tấn công DDoS 24

6 Phòng chống DDoS 29

6.1 Phòng chống DDoS 29

6.2 Những vấn đề có liên quan 33

Chương III Tổng quan về Iptables .36

và Snort inline 36

1 Tổng quan về Iptables 37

1.1 Giới thiệu chung về Iptables 37

1.2 Cấu trúc của Iptables 37

1.3 Targets 40

1.4 Các tùy chọn quan trọng của Iptables 42

2 Tổng quan về Snort inline 44

2.1 Giới thiệu chung về Snort và Snort inline 44

2.2 Tổng quan về Snort 45

Chương IV Xây dựng giải pháp phòng chống DDoS cho máy chủ web 67

1 Mô hình triển khai thực tế 67

Mô hình mạng triển khai hệ thống phòng chống : 69

2 Giải pháp 69

3 Mô hình thử nghiệm 72

Trang 3

4 Triển khai hệ thống 72

4.1 Tối ưu hóa server ở tầng TCP/IP 72

4.2 Cài đặt module connlimit cho Iptables 74

4.3 Cài đặt Snort inline 76

4.4 Thử nghiệm, đánh giá 84

Kết luận: 97

Trang 4

Danh sách các hình vẽ

Danh sách các bảng

Trang 5

LỜI CẢM ƠN

Sau 3 tháng nỗ lực thực hiện, đồ án nghiên cứu “Xây dựng giải pháp phòng chống DDoS cho máy chủ web ” phần nào đã hoàn thành.Ngoài sự nỗ lực của bản thân, em còn nhận được sự khích lệ rất nhiều từ phía nhà trường, thầy cô, gia đình và bạn bè trong khoa.Chính điều này đã mang lại cho em sự động viên rất lớn để em có thể hoàn thành tốt đồ án của mình

Trước hết con xin cảm ơn bố mẹ, ông bà và những người thân yêu đã luôn động viên, ủng hộ, chăm sóc và tạo mọi điều kiện tốt nhất để con hoàn thành nhiệm vụ của mình

Em xin cảm ơn nhà trường nói chung và Khoa Công Nghệ Thông Tin nói riêng

đã đem lại cho em nguồn kiến thức vô cùng quý giá để em có đủ kiến thức hoàn thành

đồ án cũng như làm hành trang bước vào đời

Em xin cảm ơn các thầy cô thuộc bộ môn Mạng Máy Tính, đặc biệt là thầy Ngô Hồng Sơn- giáo viên hướng dẫn của em đã tận tình hướng dẫn và giúp đỡ chúng em mỗi khi chúng em có khó khăn trong quá trình học tập cũng như trong quá trình làm đồ

án tốt nghiệp

Xin cảm ơn tất cả bạn bè thân yêu đã động viên, giúp đỡ em trong suốt quá trình học tập cũng như làm đề tài

Hà Nội, 05/2008Sinh viên thực hiện Nguyễn Huy Lợi

Trang 6

Chương I Giới thiệu chung

 Đặt vấn đề

 Mục tiêu

 Tóm tắt kết quả

 Nội dung đồ án

Trang 7

1 Đặt vấn đề

“ Ngày 7/3/2000, yahoo.com đã phải ngưng phục vụ hàng trăm triệu user trên toàn thế giới nhiều giờ liền Vài giờ sau, Yahoo đã tìm ra nguyên nhân gây nên tình trạng này, họ đang phải gánh chịu một đợt tấn công DDoS với quy mô vài ngàn máy tính liên tục gửi hàng triệu request đến các server dịch vụ làm các server này không thể phục vụ các user thông thường khác.

Vài ngày sau, một sự kiện tương tự diễn ra nhưng có phần “ồn ào” hơn do một trong các nạn nhân mới là hãng tin CNN, amazon.com, buy.com, Zdnet.com, E- trade.com, Ebay.com Tất cả các nạn nhân là những gã khổng lồ trên Internet thuộc nhiều lĩnh vực khác nhau Theo Yankke Group, tổng thiệt hại do cuộc tấn công lên đến 1.2 triệu USD, nhưng không đáng kể bằng sự mất mát về lòng tin của khách hàng, uy tín của các công ty là không thể tính được.

Làm đảo lộn mọi dự tính, thủ phạm là một cậu bé 15 tuổi người Canada, với nickname “mafiaboy” Lại là một thiên tài bẩm sinh như Kevin Mitnick xuất hiện? Không Mafiaboy chỉ tìm tòi và download về một số chương trình công cụ của các hacker Cậu đã dùng một công cụ DDoS có tên là TrinOO để gây nên các cuộc tấn công kiểu DDoS khủng khiếp trên Một điểm đáng lưu ý khác là Mafiaboy bị bắt do

tự khoe khoang trên các chatroom công cộng, không ai truy tìm được dấu vết của cậu bé này.

Còn rất nhiều gã khổng lồ khác đã gục ngã dưới các cuộc tấn công kiểu DDoS sau đó, trong đó có cả Microsoft Tuy nhiên cuộc tấn công trên là điển hình nhất về DDoS, nó nói lên một đặc điểm chết người của DDoS: Rất dễ thực hiện, hầu như không thể tránh, hậu quả rất nặng nề.”

Đây chỉ là phần mở đầu của một trong số rất nhiều bài báo viết về DDoS, tuy khá ngắn gọn nhưng cũng đã nêu bật được những đặc điểm nổi bật nhất của DDoS :

“Rất dễ thực hiện, hầu như không thể tránh, hậu quả rất nặng nề ” Một điều mà

các chuyên gia ai cũng thừa nhận, đó là nếu DDoS được thực hiện bởi một hacker

có trình độ, thì việc chống đỡ là không thể Rất may mắn, cách đây 5 năm, giới hacker chính quy thế giới đã khai trừ kĩ thuật tấn công này, và chấm dứt mọi hoạt

Trang 8

động nghiên cứu, trình diễn hay phát triển công cụ do chính bản thân họ cũng nhìn thấy mức độ nguy hiểm và không công bằng của kiểu tấn công này

Tuy rằng không còn là mới mẻ, nhưng DDoS vẫn tiếp tục gây rất nhiều thiệt hại cho cộng đồng mạng nói chung và cho các doanh nghiệp nói riêng Gần đây nhất, trang web của Bkis bị DDoS làm gián đoạn trong nhiều giờ liền và sau khi phối hợp với các bên liên quan, đã điều tra ra thủ phạm là một học sinh trung học ở Quảng Nam

Không những phục vụ cho nhu cầu của bản thân mà còn giúp nâng cao ý thức của người dùng mạng Internet, làm sao để tránh hoặc ít nhất giảm được thiệt hại khi

bị DDoS , em đã lựa chọn đề tài : “Xây dựng biện pháp phòng chống DDoS cho máy chủ web”

Nhận thấy vừa là một đề tài tốt nghiệp, vừa có vai trò ứng dụng trong thực tế

và với sự giúp đỡ tận tình của thầy Ngô Hồng Sơn, em đã cố gắng hết sức để thực hiện tốt đề tài của mình

mô hình mạng chỉ có một server kết nối với Internet bằng một liên kết

3 Hướng giải quyết

Hiện nay, trên thế giới có rất nhiều cách phòng chống DDoS nói chung và phòng chống DDoS cho máy chủ web nói riêng như sử dụng firewall, triển khai IPS

(Intrusion Prevention System- Hệ thống chống xâm nhập), load balancing (cân bằng tải) Có thể đơn cử ra một vài ví dụ cụ thể như :

- Firewall mềm:

Trang 9

+ Skyeagle anti-DDoS firewall http://www.netbot.com.cn

+ FortGuard Anti-DDoS Firewall Standard http://www.fortguard.com/

Lý do lựa chọn xây dựng mô hình IPS gồm Snort inline và Iptables là:

- Đối với Snort inline : Snort được biết đến với các ưu điểm như dễ cấu hình,

miễn phí, sử dụng rộng rãi, chạy trên nhiều nền tảng (Windows, Unix, Linux), liên tục được cập nhật Snort inline là một “module” của snort, thay vì lắng nghe trên cổng chỉ định và theo dõi tất cả các traffic đi qua cổng đấy, Snort inline chỉ theo dõi các traffic đặc biệt được chỉ định trước, do đó làm tăng khả năng và hiệu suất của Snort

- Cũng tương tự như Snort inline, Iptables mà nền tảng là Netfilter cũng

có những ưu điểm như dễ cấu hình, tốc độ sử lý nhanh, được tích hợp sẵn trong Kernel Linux 2.6 trở lên

- Việc sử dụng kết hợp Iptables với Snort inline sẽ tạo được một hệ thống

IPS hoạt động ổn định, dễ cấu hình, dễ dàng tinh chỉnh khi cần thiết

4 Tóm tắt kết quả

Theo yêu cầu đặt ra ban đầu là “Xây dựng hệ thống phòng chống DDoS ”, cho đến thời điểm hiện tại, đồ án đã làm được những nội dung sau :

- Về lý thuyết :

+ Tìm hiểu được những kiểu tấn công của DDoS

+ Tìm hiểu được mô hình mạng Botnet (mô hình, cách cài đặt, giao tiếp)

+ Một số công cụ tấn công DDoS

+ Cách phòng chống DDoS

Trang 10

+ Những vấn đề có liên quan đến DDoS.

- Triển khai hệ thống phòng chống DDoS bao gồm

+ Tối ưu hóa server

+ Cài đặt và cấu hình module connlimit cho Iptables

+ Cài đặt và cấu hình Snort inline

+ Kiểm tra đánh giá hiệu quả

5 Nội dung đồ án

Đồ án bao gồm 4 chương :

- Chương I Giới thiệu chung : Giới thiệu khái quát về đồ án, lý do lựa chọn đồ

án, mục tiêu và giới hạn, kết quả đạt được trong quá trình làm đồ án

- Chương II Tổng quan về DDoS: Giới thiệu chung về DDoS, phân loại các

kiểu tấn công DDoS, cách thức xây dựng mạng Botnet, giới thiệu một số công cụ tấn công DDoS và các cách phòng chống DDoS

- Chương III Tổng quan về Iptables và Snort inline: Trình bày về lý thuyết và

một số cấu hình cơ bản và quan trọng của Iptables và Snort inline

- Chương IV Xây dựng giải pháp phòng chống DDoS cho máy chủ web :

Trình bày mô hình thực tế, giải pháp, mô hình thực nghiệm và quá trình kiểm tra đánh giá, nhận xét hệ thống phòng chống xâm nhập

Trang 11

Chương II Tổng quan về DDoS

 Giới thiệu chung về DDoS

 Phân loại các kiểu tấn công DDoS

Trang 12

1 Giới thiệu chung về DDoS

DDoS (distributed denial-of-service attack) là một kiểu tấn công đưa một hệ thống cung cấp dịch vụ đến mức hoạt động tới hạn về tài nguyên, hay gây nhầm lẫn logic dẫn đến hệ thống ngừng hoạt động

Khác với DoS (denial-of-service attack) là chỉ cần một máy để tấn công, DDoS

sử dụng nhiều máy tính bị chiếm quyền điều khiển kết nối với nhau (mạng Botnet)

để tấn công nên sức hủy hoại là rất lớn

2 Phân loại các kiểu tấn công DDoS

Nhìn chung, có rất nhiều cách để phân loại các kiểu tấn công DDoS nhưng theo em cách phân loại theo mục đích tấn công là khá đầy đủ, đơn giản và dễ hiểu Dưới đây

là sơ đồ mô tả sự phân loại các kiểu tấn công DDoS dựa theo mục đích tấn công: làm cạn kiệt băng thông và làm cạn kiệt tài nguyên hệ thống

Hình 01: Phân loại các kiểu tấn công DDoS

Trang 13

2.1 Tấn công làm cạn kiệt băng thông

Tấn công làm cạn kiệt băng thông (BandWith Depletion Attack) được thiết kế

nhằm làm tràn ngập mạng mục tiêu với những traffic không cần thiết, với mục địch làm giảm tối thiểu khả năng của các traffic hợp lệ đến được hệ thống cung cấp dịch vụ của mục tiêu

Có hai loại tấn công làm cạn kiệt băng thông :

- Flood attack: Điều khiển các Agent gửi một lượng lớn traffic đến hệ

thống dịch vụ của mục tiêu, làm dịch vụ này bị hết khả năng về băng thông

- Amplification attack: Điều khiển các Agent hay Client tự gửi packet đến

một địa chỉ IP broadcast, làm cho tất cả các máy trong subnet này gửi packet đến

hệ thống dịch vụ của mục tiêu Phương pháp này làm gia tăng traffic không cần thiết, làm suy giảm băng thông của mục tiêu

2.1.1 Flood attack:

Trong phương pháp này, các Agent sẽ gửi một lượng lớn IP traffic làm hệ thống dịch vụ của mục tiêu bị chậm lại, hệ thống bị treo hay đạt đến trạng thái hoạt động bão hòa Làm cho những người dùng thực sự của hệ thống không sử dụng được dịch vụ

Ta có thể chia Flood Attack thành hai loại:

- UDP Flood Attack: do tính chất connectionless của UDP, hệ

thống nhận UDP message chỉ đơn giản nhận vào tất cả các packet mình cần phải xử lý Một lượng lớn các UDP packet được gửi đến hệ thống dịch vụ của mục tiêu sẽ đẩy toàn bộ hệ thống đến ngưỡng tới hạn

- Các UDP packet này có thể được gửi đến nhiều port tùy ý hay

chỉ duy nhất một port Thông thường là sẽ gửi đến nhiều port làm cho hệ thống mục tiêu phải căng ra để xử lý phân hướng cho các packet này Nếu port bị tấn công không sẵn sàng thì hệ thống mục tiêu sẽ gửi ra một ICMP packet loại “destination port unreachable” Thông thường các Agent software sẽ dùng địa chỉ IP giả để che giấu hành tung, cho nên các packet trả về do không có port xử lý sẽ dẫn đến một địa chỉ IP khác

Trang 14

UDP Flood attack cũng có thể làm ảnh hưởng đến các kết nối xung quanh mục tiêu do sự hội tụ của packet diễn ra rất mạnh.

- ICMP Flood Attack: được thiết kế nhằm mục đích quản lý mạng cũng như định vị thiết bị mạng Khi các Agent gửi một lượng lớn ICMP ECHO REQUEST đến hệ thống mục tiêu thì hệ thống này phải reply một lượng tương ứng Packet để trả lời, sẽ dẫn đến nghẽn đường truyền Tương tự trường hợp trên, địa chỉ IP của các Agent có thể bị giả mạo

2.1.2 Amplification Attack:

Amplification Attack nhắm đến việc sử dụng các chức năng hỗ trợ địa chỉ IP broadcast của các router nhằm khuyếch đại và hồi chuyển cuộc tấn công Chức năng này cho phép bên gửi chỉ định một địa chỉ IP broadcast cho toàn subnet bên nhận thay vì nhiều địa chỉ Router sẽ có nhiệm vụ gửi đến tất cả địa chỉ IP trong subnet đó packet broadcast mà nó nhận được

Attacker có thể gửi broadcast packet trực tiếp hay thông qua một số Agent nhằm làm gia tăng cường độ của cuộc tấn công Nếu attacker trực tiếp gửi packet, thì có thể lợi dụng các hệ thống bên trong broadcast network như một Agent

Trang 15

Hình 02: Amplification Attack

Có thể chia amplification attack thành hai loại, Smuft va Fraggle

attack:

- Smuft attack: trong kiểu tấn công này attacker gửi packet đến

network amplifier (router hay thiết bị mạng khác hỗ trợ broadcast), với địa chỉ của nạn nhân Thông thường những packet được dùng là ICMP ECHO REQUEST, các packet này yêu cầu yêu cầu bên nhận phải trả lời bằng một ICMP ECHO REPLY packet Network amplifier sẽ gửi đến ICMP ECHO REQUEST packet đến tất cả các hệ thống thuộc địa chỉ broadcast và tất cả các hệ thống này sẽ REPLY packet về địa chỉ IP của mục tiêu tấn công Smuft Attack

- Fraggle Attack: tương tự như Smuft attack nhưng thay vì dùng

ICMP ECHO REQUEST packet thì sẽ dùng UDP ECHO packet gửi đến

Trang 16

mục tiêu Thật ra còn một biến thể khác của Fraggle attack sẽ gửi đến UDP ECHO packet đến chargen port (port 19/UNIX) của mục tiêu, với địa chỉ bên gửi là echo port (port 7/UNIX) của mục tiêu, tạo nên một vòng lặp vô hạn Attacker phát động cuộc tấn công bằng một ECHO REQUEST với địa chỉ bên nhận là một địa chỉ broadcast, toàn bộ hệ thống thuộc địa chỉ này lập tức gửi REPLY đến port echo của nạn nhân, sau đó từ nạn nhân một ECHO REPLY lại gửi trở về địa chỉ broadcast, quá trình cứ thế tiếp diễn Đây chính

là nguyên nhân Flaggle Attack nguy hiểm hơn Smuft Attack rất nhiều

2.2 Tấn công làm cạn kiệt tài nguyên

Tấn công làm cạn kiệt tài nguyên (Resource Deleption Attack) là kiểu tấn công trong đó Attacker gửi những packet dùng các protocol sai chức năng thiết kế, hay gửi những packet với dụng ý làm tắt nghẽn tài nguyên mạng làm cho các tài

nguyên này không phục vụ những người dùng thông thường khác được

2.2.1 Protocol Exploit Attack

- TCP SYN Attack: Transfer Control Protocol hỗ trợ truyền nhận với

độ tin cậy cao nên sử dụng phương thức bắt tay giữa bên gửi và bên nhận trước khi truyền dữ liệu Bước đầu tiên, bên gửi gửi một SYN REQUEST packet (Synchronize) Bên nhận nếu nhận được SYN REQUEST sẽ trả lời bằng SYN/ACK packet Bước cuối cùng, bên gửi sẽ truyên packet cuối cùng ACK và bắt đầu truyền dữ liệu

Hình 03: Ba bước kết nối TCP/IP

Trang 17

Nếu bên server đã trả lời một yêu cầu SYN bằng một SYN/ACK nhưng không nhận được ACK packet cuối cùng sau một khoảng thời gian quy định thì nó sẽ gửi lại SYN/ACK cho đến hết thời gian timeout Toàn bộ tài nguyên

hệ thống “dự trữ” để xử lý phiên giao tiếp nếu nhận được ACK packet cuối cùng sẽ bị “phong tỏa” cho đến hết thời gian timeout

Hình 04: Trường hợp IP nguồn giả

Nắm được điểm yếu này, attacker gửi một SYN packet đến nạn nhân với địa chỉ bên gửi là giả mạo, kết quả là nạn nhân gửi SYN/ACK đến một địa chỉ khác và sẽ không bao giờ nhận được ACK packet cuối cùng, cho đến hết thời gian timeout nạn nhân mới nhận ra được điều này và giải phóng các tài

nguyên hệ thống Tuy nhiên, nếu lượng SYN packet giả mạo đến với số lượng nhiều và dồn dập, hệ thống của nạn nhân có thể bị hết tài nguyên

- PUSH và ACK Attack: Trong TCP protocol, các packet được

chứa trong buffer, khi buffer đầy thì các packet này sẽ được chuyển đến nơi cần thiết Tuy nhiên, bên gửi có thể yêu cầu hệ thống unload buffer trước khi buffer đầy bằng cách gửi một packet với cờ PUSH và ACK mang giá trị là 1 Những packet này làm cho hệ thống của nạn nhân unload tất cả dữ liệu trong TCP buffer ngay lập tức và gửi một ACK packet trở về khi thực hiện xong

Trang 18

điều này, nếu quá trình được diễn ra liên tục với nhiều Agent, hệ thống sẽ không thể xử lý được lượng lớn packet gửi đến và sẽ bị treo.

2.2.2 Malformed Packet Attack

Malformed Packet Attack là cách tấn công dùng các Agent để gửi các packet

có cấu trúc không đúng chuẩn nhằm làm cho hệ thống của nạn nhân bị treo

Có hai loại Malformed Packet Attack:

- IP address attack: dùng packet có địa chỉ gửi và nhận giống

nhau làm cho hệ điều hành của nạn nhân không xử lý nổi và bị treo

- IP packet options attack ngẫu nhiên hóa vùng OPTION

trong IP packet và thiết lập tất cả các bit QoS lên 1, điều này làm cho hệ thống của nạn nhân phải tốn thời gian phân tích, nếu sử dụng số lượng lớn Agent có thể làm hệ thống nạn nhân hết khả năng xử lý

Trang 19

- Handler: Là một phần mềm trung gian giữa Agent và Client.

- Agent: Là một phần mềm thực hiện sự tấn công mục tiêu, nhận điều

khiển từ Client thông quan các Handler

Attacker sẽ từ Client giao tiếp với Handler để xác định số lượng các Agent đang online, điều chỉnh thời điểm tấn công và cập nhật các Agent Tuỳ theo cách attacker cấu hình mạng Botnet, các Agent sẽ chịu sự quản lý của một hay nhiều Handler

Trang 20

Thông thường Attacker sẽ đặt các Handler trên một Router hay Server có lượng lưu thông lớn Việc này nhằm làm cho các giao tiếp giữa Client, Handler và Agent khó bị phát hiện Các giao thức này thường diễn ra trên các giao thức TCP, UDP hay ICMP Chủ nhân thực sự của các Agent thường không biết họ bị lợi dụng trong các cuộc tấn công DDoS, do họ không đủ kiến thức hoặc các chương trình Backdoor Agent chỉ sử dụng rất ít tài nguyên hệ thống làm cho hầu như không thể thấy ảnh hưởng gì đến hiệu năng của hệ thống.

3.2 Sơ đồ IRC Base

Hình 06: Sơ đồ IRC Base

Internet Relay Chat(IRC) là một hệ thống online chat nhiều người IRC cho

phép người sử dụng tạo một kết nối đến nhiều điểm khác với nhiều người sử dụng khác nhau và chat thời gian thực Kiến trúc cũ của IRC network bao gồm nhiều IRC server trên khắp Internet, giao tiếp với nhau trên nhiều kênh (channnel) IRC

network cho phép user tao ba loại channel: Public, Private và Secrect Trong đó :

Trang 21

- Public channel: Cho phép user của channel đó thấy IRC name và nhận được

message của mọi user khác trên cùng channel

- Private channel: Được thiết kế để giao tiếp với các đối tượng cho

phép.Không cho phép các user không cùng channel thấy IRC name và message trên channel Tuy nhiên , nếu user ngoài channel dùng một số lệnh channel locator thì có thể biết được sự tồn tại của private channel đó

- Secrect channel: Tương tự private channel nhưng không thể xác định bằng

channel locator

Mạng IRC-based cũng tương tự như mạng Agent-Handler nhưng mô hình này

sử dụng các kênh giao tiếp IRC làm phương tiện giao tiếp giữa Client và Agent (không sử dụng Handler) Sử dụng mô hình này, attacker còn có thêm một số lợi thế khác như :

- Các giao tiếp dưới dạng chat message làm cho việc phát hiện chúng là vô cùng khó khăn

- Lưu thông IRC có thể di chuyển trên mạng với số lượng lớn mà không bị nghi ngờ

- Không cần phải duy trì danh sách các Agent, hacker chỉ cần logon vào IRC server là đã có thể nhận được report về trạng thái các Agent do các channel gửi về

- Sau cùng: IRC cũng là một môi trường chia sẻ file tạo điều kiện phát tán các Agent code lên nhiều máy khác

4 Các phương pháp xây dựng tài nguyên tấn công

Có rất nhiều điểm chung của các công cụ DDoS attack Có thể kể ra một số điểm chung như: cách cài chương trình Agent, phương pháp giao tiếp giữa các attacker, Handler và Agent, điểm chung về loại hệ điều hành hỗ trợ các công cụ này Sơ đồ sau mô tả sự so sánh tương quan giữa các công cụ tấn công DDoS này

Trang 22

Hình 07: Các phương pháp xây dựng tài nguyên tấn công

4.1 Cách thức cài đặt DDoS Agent

Attacker có thể dùng phương pháp active và passive để cài đặt chương trình Agent lên các máy khác nhằm thiết lập mạng tấn công kiểu Agent-Handler hay IRC-based

- Các cách cài đặt sử dụng phương pháp active như:

+ Scaning: dùng các công cụ như Nmap, Nessus để tìm những sơ

hở trên các hệ thống đang online nhằm cài đặt chương trình Agent Chú ý, Nmap

sẽ trả về những thông tin về một hệ thống đã được chỉ định bằng địa chỉ IP,

Nessus tìm kiếm từ những địa chỉ IP bất kỳ về một điểm yếu biết trước nào đó

+ Backdoor: sau khi tìm thấy được danh sách các hệ thống có thể lợi

dụng, attacker sẽ tiến hành xâm nhập và cài chương trình Agent lên các hệ thống này Có rất nhiều thông tin sẵn có về cách thức xâm nhập trên mạng, như site của

tổ chức Common Vulnerabilities and Exposures (CVE), ở đây liệt kê và phân loại trên 4.000 loại lỗi của tất cả các hệ thống hiện có Thông tin này luôn sẵn sàng cho cả giới quản trị mạng lẫn hacker

Trang 23

+ Trojan: là một chương trình thực hiện một chức năng thông

thường nào đó, nhưng lại có một số chức năng tiềm ẩn phục vụ cho mục đích riêng của người viết mà người dùng không thể biết được Có thể dùng Trojan như một chương trình Agent

+ Buffer Overflow: tận dụng lỗi buffer overflow, attacker có thể làm

cho chu trình thực thi chương trình thông thường bị chuyển sang chu trình thực thi chương trình của hacker (nằm trong vùng dữ liệu ghi đè) Có thể dùng cách này để tấn công vào một chương trình có điểm yếu buffer overflow để chạy

chương trình Agent

- Cách cài đặt passive:

+ Bug trình duyệt web: attacker có thể lợi dụng một số lỗi của trình

duyệt web để cài chương trình Agent vào máy của user truy cập Attacker sẽ tạo một trang web mang nội dung tiềm ẩn những code và lệnh để đặt bẫy user Khi user truy cập nội dung của trang web, thì trang web download và cài đặt chương trình Agent một cách bí mật Microsoft Internet Explorer (IE) thường là mục tiêu của cách cài đặt này, với các lỗi của ActiveX có thể cho phép trình duyệt IE tự động download và cài đặt code trên máy của người dùng duyệt web

+ Corrupted file: một phương pháp khác là nhúng code vào trong các

file thông thường Khi user đọc hay thực thi các file này, máy của họ lập tức bị nhiễm chương trình Agent software Một trong những kỹ thuật phổ biến là đặt tên file rất dài, do mặc định của các hệ điều hành chỉ hiển thị phần đầu của tên file nên attacker có thể gửi kèm theo email cho nạn nhân file như sau:

iloveyou.txt_hiiiiiii_NO_this_is_DDoS.exe, do chỉ thấy phần “Iloveyou.txt” hiển thị nên user sẽ mở file này để đọc và lập tức file này được thực thi và Agent code được cài vào máy nạn nhân Ngoài ra còn nhiều cách khác như ngụy trang file, ghép file…

4.2 Giao tiếp trên mạng Botnet

Protocol: giao tiếp trên mạng Botnetcó thể thực hiện trên nền các protocol TCP,

UDP, ICMP

Trang 24

Mã hóa các giao tiếp: một vài công cụ DDoS hỗ trợ mã hóa giao tiếp trên

toàn bộ mạng Botnet Tùy theo protocol được sử dụng để giao tiếp sẽ có các phương pháp mã hóa thích hợp Nếu mạng Botnet ở dạng IRC-based thì private

và secrect channel đã hỗ trợ mã hóa giao tiếp

Cách kích hoạt Agent: có hai phương pháp chủ yếu để kích hoạt Agent

Cách thứ nhất là Agent sẽ thường xuyên quét thăm dò Handler hay IRC channel

để nhận chỉ thị (active Agent) Cách thứ hai là Agent chỉ đơn giản là “nằm vùng” chờ chỉ thị từ Handler hay IRC Channel

5 Một số kiểu tấn công DDoS và các công cụ tấn công DDoS

5.1 Một số kiểu tấn công DDoS

Bên cạnh việc phân loại các kiểu tấn công theo mục đích tấn công, ta còn có thể phân loại theo cách tấn công vào giao thức Dưới đây là phân loại một số cách tấn công DDoS theo giao thức :

để ra lệnh cho các daemons gửi các UDP packet đến mục tiêu

Trang 25

Mô hình :

attacker(s) >Master(s) >daemon(s) >victim(s)

- Attacker -> Master : port 27665/TCP

- Master -> Deamons : port 27444/UDP

- Daemon -> Master : port 31335/UDP

- Deamon -> UDP Flood đến mục tiêu (random port)

5.2.2 Tribe Flood Network (TFN/TFN2K)

Tương tự như Trinoo nhưng Tribe Flood Network còn cho phép attacker sử dụng thêm ICMP flood, SYN flood và Smurf

- Client -> handler(s) : port 16660/tcp

- Handler < > agent(s): port 65000/tcp, ICMP ECHO REPLY

5.2.4 Trinity

Trinity có hầu hết các kỹ thuật tấn công bao gồm: UDP, TCP SYN, TCP ACK,

TCP fragment, TCP NULL, TCP RST, TCP random flag, TCP

ESTABLISHED packet flood Nó có sẵn khả năng ngẫu nhiên hóa địa chỉ bên gởi Trinity cũng hỗ trợ TCP flood packet với khả năng ngẫu nhiên tập

CONTROL FLAG Trinity có thể nói là một trong số các công cụ DDoS nguy hiểm nhất

Trang 26

5.2.5 Shaft

Shaft có các kĩ thuật tấn công UDP, ICMP và TCP flood Có thể tấn công phối hợp nhiều kiểu cùng lúc Có thống kê chi tiết cho phép attacker biết tình trạng tổn thất của nạn nhân, mức độ quy mô của cuộc tấn công để điều chỉnh số lượng Agent

Mô hình :

client(s) >handler(s) >agent(s) >victim(s)

- Client > handler(s): port 20432/tcp

- Handler -> agent(s): port 18753/udp

- Agent -> handler(s): port 20433/udp

5.2.6 X-flash

Vấn đề then chốt của hacker tấn công bằng hình thái cổ điển là nắm quyền điều khiển càng nhiều máy tính càng tốt, sau đó anh ta sẽ trực tiếp phát động tấn công hàng loạt từ xa thông qua một kênh điều khiển Với quy mô mạng lưới tấn công bao gồm vài trăm nghìn máy, hình thái này có thể đánh gục ngay lập tức bất cứ hệ thống nào Phối hợp với khả năng giả mạo địa chỉ IP, kiểu tấn công này sẽ rất khó lần theo dấu vết

Trang 27

Hình 08: Mô hình mạng Classic DDoS

Tuy nhiên, mô hình này có một số nhược điểm:

- Mạng lưới tấn công là cố định và tấn công xảy ra đồng loạt nên rất

dễ điều tra ngược tìm manh mối

- Software cài lên các Infected Agent là giống nhau và có thể dùng làm bằng chứng kết tội hacker

- Phía nạn nhân có thể điều chỉnh hệ thống phòng vệ để ngăn chặn

vì mạng lưới tấn công là “khả kiến”

- Hacker buộc phải trực tiếp kết nối đến mạng lưới các máy tấn công tại thời điểm tấn công để điều khiển nên rất dễ lần ra thủ phạm

X-Flash xuất hiện sau khi DantruongX và nhóm BeYeu phát hiện ra

những lỗ hổng bảo mật của IE và Flash Player Nó chỉ bằng cách đơn giản là

gửi yêu cầu tới web server dạng HTTP Request ( yêu cầu dạng POST hay GET) với một tốc độ cực kì nhanh kiến web services bị crash

Trang 28

Cách tấn công : Hacker treo một file flash trên một trang web trung

gian có nhiều người truy xuất, người dùng truy xuất trang web này file flash sẽ được tải về máy và được chương trình Flash thực thi Từ đây vô số các yêu cầu truy xuất sẽ gởi đến trang web mục tiêu

Hình 09: Mô hình mạng X-Flash DDoS

Flash DDOS có một số đặc tính khiến cho việc ngăn chặn và phát hiện gần

như là không thể Do mạng lưới tấn công phức tạp và tự hình thành :

- Không cần thiết phải nắm quyền điều khiển và cài DDOS

software vào các infected agent Thay vào đó mọi user với một trình duyệt có

hỗ trợ nội dung Flash (có Flash Player) sẽ trở thành công cụ tấn công

- Số lượng attack agent tùy thuộc vào số lượng user truy xuất các trang web đã bị hacker “nhúng” nội dung flash, số lượng này thay đổi theo thời gian và hoàn toàn không thể nhận biết địa chỉ IP nguồn, vì đây là các user thông thường

Trang 29

- Không hề có quá trình gởi lệnh và nhận báo cáo giữa hacker và mạng lưới tấn công, toàn bộ lệnh tấn công được “nhúng” trong nội dung flash

và hacker không cần nhận báo cáo do đây là mô hình tấn công bất đồng bộ

- Tấn công bất đồng bộ: Việc tấn công diễn ra không cần có mệnh lệnh Người dùng truy xuất trang web , load nội dung flash về trình duyệt và Flash player thực thi nội dung flash thì ngay lập tức máy của họ trở thành một attack agent-liên tục gởi hàng trăm request đến máy chủ web nạn nhân

- Quy mô tấn công phụ thuộc vào số lượng trang web bị lợi dụng và

số lượng người dùng thường xuyên truy xuất các trang web này Chỉ tính trung bình hacker lợi dụng được 10 trang web và mỗi trang web này có số lượng truy xuất khoảng 100 user tại một thời điểm thì tổng số request mà server nạn nhân phải hứng chịu tại một thời điểm lên đến con số vài chục ngàn Đây là một số liệu kinh hoàng với bất kỳ ai làm quản trị hệ thống của bất cứ trang web nào và kết quả thường là hệ thống tê liệt ngay lập tức

Tuy nhiên, hiện nay chương trình Flash player mới nhất đã được fix lỗi, cách tấn công Flash đã phần nào được hạn chế

6 Phòng chống DDoS

6.1 Phòng chống DDoS

Có rất nhiều giải pháp và ý tưởng được đưa ra nhằm đối phó với các cuộc tấn công kiểu DDoS Tuy nhiên không có giải pháp và ý tưởng nào là giải quyết trọn vẹn bài toán Phòng chống DDoS Các hình thái khác nhau của DDoS liên tục xuất hiện theo thời gian song song với các giải pháp đối phó, tuy nhiên cuộc đua vẫn tuân theo quy luật tất yếu của bảo mật máy tính: “Hacker luôn đi trước giới bảo mật một bước”

Có ba giai đoạn chính trong quá trình Phòng chống DDoS:

- Giai đoạn ngăn ngừa: tối thiểu hóa lượng Agent, tìm và vô hiệu hóa các Handler

- Giai đoạn đối đầu với cuộc tấn công: Phát hiện và ngăn chặn cuộc tấn công, làm suy giảm và dừng cuộc tấn công, chuyển hướng cuộc tấn công

Trang 30

- Giai đoạn sau khi cuộc tấn công xảy ra: thu thập chứng cứ và rút kinh nghiệm.

Hình 10: Các giai đoạn chi tiết trong phòng chống DDoS

6.1.1 Tối thiểu hóa lượng Agent

Từ phía người dùng: một phương pháp rất tốt để ngăn ngừa tấn công DDoS

là từng người dùng Internet sẽ tự đề phòng không để bị lợi dụng tấn công hệ thống khác Muốn đạt được điều này thì ý thức và kỹ thuật phòng chống phải được phổ biến rộng rãi cho mọi người dùng Mạng lưới Botnet sẽ không bao giờ hình thành nếu không có người nào bị lợi dụng trở thành Agent Mọi người dùng phải liên tục thực hiện các quá trình bảo mật trên máy vi tính của mình Họ phải tự kiểm tra sự hiện diện của Agent trên máy của mình, điều này là rất khó khăn đối với những người dùng thông thường Một giải pháp đơn giản là nên cài đặt và update liên tục các software như antivirus, antitrojan và các bản patch của hệ điều hành

Từ phía Network Service Provider: Thay đổi cách tính tiền dịch vụ

truy cập theo dung lượng sẽ làm cho user lưu ý đến những gì họ gửi, như vậy

về mặt ý thức tăng cường phát hiện DDoS Agent sẽ tự nâng cao ở mỗi người dùng

Trang 31

6.1.2 Tìm và vô hiệu hóa các Handler

Một nhân tố vô cùng quan trọng trong mạng Botnet là Handler, nếu có thể phát hiện và vô hiệu hóa Handler thì khả năng Phòng chống DDoS thành công là rất cao Bằng cách theo dõi các giao tiếp giữa Handler và Client hay Handler và Agent ta có thể phát hiện ra vị trí của Handler Do một Handler quản lý nhiều, nên triệt tiêu được một Handler cũng có nghĩa là loại bỏ một lượng đáng kể các Agent trong mạng Botnet

6.1.3 Phát hiện dấu hiệu của cuộc tấn công

Có nhiều kỹ thuật được áp dụng:

- Agress Filtering: Kỹ thuật này kiểm tra xem một packet có đủ tiêu

chuẩn ra khỏi một subnet hay không dựa trên cơ sở gateway của một subnet luôn biết được địa chỉ IP của các máy thuộc subnet Các packet từ bên trong subnet gửi ra ngoài với địa chỉ nguồn không hợp lệ sẽ bị giữ lại để điều tra nguyên nhân Nếu kỹ thuật này được áp dụng trên tất cả các subnet của Internet thì khái nhiệm giả mạo địa chỉ IP sẽ không còn tồn tại

- MIB statistics: trong Management Information Base (SNMP-Simple

Network Management Protocol ) của route luôn có thông tin thống kể về sự biến thiên trạng thái của mạng Nếu ta giám sát chặt chẽ các thống kê của Protocol ICMP, UDP và TCP ta sẽ có khả năng phát hiện được thời điểm bắt đầu của cuộc tấn công để tạo “quỹ thời gian vàng” cho việc xử lý tình

huống

6.1.4 Làm suy giảm hay dừng cuộc tấn công

Dùng các kỹ thuật sau:

- Load balancing: Thiết lập kiến trúc cân bằng tải cho các server trọng

điểm sẽ làm gia tăng thời gian chống chọi của hệ thống với cuộc tấn công DDoS Tuy nhiên, điều này không có ý nghĩa lắm về mặt thực tiễn vì quy

mô của cuộc tấn công là không có giới hạn

- Throttling: Thiết lập cơ chế điều tiết trên router, quy định một khoảng

tải hợp lý mà server bên trong có thể xử lý được Phương pháp này cũng có

Trang 32

thể được dùng để ngăn chặn khả năng DDoS traffic không cho user truy cập dịch vụ Hạn chế của kỹ thuật này là không phân biệt được giữa các loại traffic, đôi khi làm dịch vụ bị gián đoạn với user, DDoS traffic vẫn có thể xâm nhập vào mạng dịch vụ nhưng với số lượng hữu hạn.

- Drop request: Thiết lập cơ chế drop request nếu nó vi phạm một số quy

định như: thời gian delay kéo dài, tốn nhiều tài nguyên để xử lý, gây

deadlock Kỹ thuật này triệt tiêu khả năng làm cạn kiệt năng lực hệ thống, tuy nhiên nó cũng giới hạn một số hoạt động thông thường của hệ thống, cần cân nhắc khi sử dụng

6.1.5 Chuyển hướng cuộc tấn công

Honeyspots: Một kỹ thuật đang được nghiên cứu là Honeyspots

Honeyspots là một hệ thống được thiết kế nhằm đánh lừa attacker tấn công vào khi xâm nhập hệ thống mà không chú ý đến hệ thống quan trọng thực sự

Honeyspots không chỉ đóng vai trò “Lê Lai cứu chúa” mà còn rất hiệu quả trong việc phát hiện và xử lý xâm nhập, vì trên Honeyspots đã thiết lập sẵn các cơ chế giám sát và báo động

Ngoài ra, Honeyspots còn có giá trị trong việc học hỏi và rút kinh

nghiệm từ Attacker, do Honeyspots ghi nhận khá chi tiết mọi động thái của attacker trên hệ thống Nếu attacker bị đánh lừa và cài đặt Agent hay

Handler lên Honeyspots thì khả năng bị triệt tiêu toàn bộ mạng Botnet là rất cao

6.1.6 Giai đoạn sau tấn công

Trong giai đoạn này thông thường thực hiện các công việc sau:

-Traffic Pattern Analysis: Nếu dữ liệu về thống kê biến thiên lượng

traffic theo thời gian đã được lưu lại thì sẽ được đưa ra phân tích Quá trình phân tích này rất có ích cho việc tinh chỉnh lại các hệ thống Load Balancing

và Throttling Ngoài ra các dữ liệu này còn giúp quản trị mạng điều chỉnh lại các quy tắc kiểm soát traffic ra vào mạng của mình

Trang 33

- Packet Traceback: bằng cách dùng kỹ thuật Traceback ta có thể truy

ngược lại vị trí của Attacker (ít nhất là subnet của attacker) Từ kỹ thuật Traceback ta phát triển thêm khả năng Block Traceback từ attacker khá hữu hiệu

- Bevent Logs: Bằng cách phân tích file log sau cuộc tấn công, quản trị

mạng có thể tìm ra nhiều manh mối và chứng cứ quan trọng

6.2 Những vấn đề có liên quan

DDoS là một kiểu tấn công rất đặc biệt, điểm cực kỳ hiểm ác của DDoS làm cho

nó khó khắc phục là “DDoS đánh vào nhân tố yếu nhất của hệ thống thông tin – con người” Từ đặc điểm này của DDoS làm phát sinh rất nhiều các vần đề mà mọi người trong cộng đồng Internet phải cùng chung sức mới có thể giải quyết

Sau đây là các yếu điểm mà chúng ta cần phải hạn chế :

6.2.1 Thiếu trách nhiệm với cộng đồng

Con người thông thường chỉ quan tâm đầu tư tiền bạc và công sức cho hệ thống thông tin của “chính mình” DDoS khai thác điểm này rất mạnh ở

phương thức giả mạo địa chỉ và Broadcast amplification

- IP spoofing: một cách thức đơn giản nhưng rất hiệu quả được tận dụng

tối đa trong các cuộc tấn công DDoS Thực ra chống giả mạo địa chỉ không có

gì phức tạp, như đã đề cập ở phần trên, nếu tất cả các subnet trên Internet đều giám sát các packet ra khỏi mạng của mình về phương diện địa chỉ nguồn hợp

lệ thì không có một packet giả mạo địa chỉ nào có thể truyền trên Internet được

Đề nghị: “Tự giác thực hiện Egress Filtering ở mạng do mình quản lý”

Hi vọng một ngày nào đó sẽ có quy định cụ thể về vấn đề này cho tất cả các ISP trên toàn cầu

- Broadcast Amplification: tương tự IP spoofing, nó lợi dụng toàn bộ

một subnet để flood nạn nhân Vì vậy, việc giám sát và quản lý chặt chẽ khả năng broadcast của một subnet là rất cần thiết Quản trị mạng phải cấu hình toàn bộ hệ thống không nhận và forward broadcast packet

Trang 34

Đề nghị:

- Mỗi tổ chức có liên quan nên thiết lập quy trình xử lý xâm nhập vào tổ chức, nhóm chuyên trách với trách nhiệm và quy trình thật cụ thể Các ISP nên thiết lập khả năng phản ứng nhanh và chuyên nghiệp để hỗ trợ các tổ chức trong việc thực hiện quy trình xử lý xâm nhập của mình

- Khuyến khích các quản trị mạng gia nhập mạng lưới thông tin toàn cầu của các

tổ chức lớn về bảo mật nhằm thông tin kịp thời và chia sẻ kinh nghiệm với mọi người

- Tất cả các cuộc tấn công hay khuyết điểm của hệ thống đều phải được báo cáo đến bộ phận tương ứng để xử lý

đề cần thực hiện thêm trong tương lai:

- Giám sát chi tiết về luồng dữ liệu ở cấp ISP để cảnh cáo về cuộc tấn công

- Xúc tiến đưa IPSec và Secure DNS vào sử dụng

- Khẳng định tầm quan trọng của bảo mật trong quá trình nghiên cứu và phát triển của Internet II

Trang 35

- Nghiên cứu phát triển công cụ tự động sinh ra ACL từ security policy, router

- Phát triển các router và switch có khả năng xử lý phức tạp hơn

- Nghiên cứu phát triển các hệ thống tương tự như Intrusion Dectection, hoạt

động so sánh trạng thái hiện tại với định nghĩa bình thường củ hệ thống từ đó đưa ra các cảnh báo

- Góp ý kiến để xây dựng nội quy chung cho tất cả các thành phần có liên quan đến Internet

- Thiết lập mạng lưới thông tin thời gian thực giữa những người chịu trách nhiệm về hoạt động của hệ thống thông tin nhằm cộng tác-hỗ trợ-rút kinh nghiệm khi có một cuộc tấn công quy mô xảy ra

- Phát triển hệ điều hành bảo mật hơn

- Nghiên cứu các hệ thống tự động hồi phục có khả năng chống chọi, ghi nhận

và hồi phục sau tấn công cho các hệ thống xung yếu

- Nghiên cứu các biện pháp truy tìm, công cụ pháp lý phù hợp nhằm trừng trị thích đáng các attacker mà vẫn không xâm phạm quyền tự do riêng tư cá nhân

- Đào tạo lực lượng tinh nhuệ về bảo mật làm nòng cốt cho tính an toàn của Internet

- Nhấn mạnh yếu tố bảo mật và an toàn hơn là chỉ tính đến chi phí khi bỏ ra xây dựng một hệ thống thông tin

Nhận xét:

Thông qua chương này, ta có thể thấy DDoS thực sự là “Rất dễ thực hiện, hầu

như không thể tránh, hậu quả rất nặng nề.” Chính vì vậy việc đấu tranh phòng

chống DDoS là công việc không chỉ của một cá nhân, một tập thể hay một quốc gia mà là công việc của toàn thế giới nói chung và cộng đồng sử dụng mạng Internet nói riêng

Trang 36

Chương III Tổng quan về Iptables

và Snort inline

Tổng quan về Iptables

 Tổng quan về Snort Inline

Trang 37

1 Tổng quan về Iptables

1.1 Giới thiệu chung về Iptables

Iptables là một tường lửa ứng dụng lọc gói dữ liệu rất mạnh, miễn phí và có sẵn trên Linux Netfilter/Iptables gồm 2 phần là Netfilter ở trong nhân Linux và Iptables nằm ngoài nhân Iptables chịu trách nhiệm giao tiếp giữa người dùng và Netfilter để đẩy các luật của người dùng vào cho Netfiler xử lí Netfilter tiến hành lọc các gói dữ liệu ở mức IP Netfilter làm việc trực tiếp trong nhân, nhanh và không làm giảm tốc độ của hệ thống

Hình 11: Mô hình Iptables/netfilter

1.2 Cấu trúc của Iptables

Tất cả mọi gói dữ liệu đều được kiểm tra bởi Iptables bằng cách dùng các bản tuần tự xây dựng sẵn (queues) Có 3 loại bảng này gồm:

- Mangle : chịu trách nhiệm thay đổi các bits chất lượng dịch vụ trong TCP

header như TOS (type of service ), TTL (time to live) và MARK

- Filter: chịu trách nhiệm lọc gói dữ liệu Nó gồm 3 quy tắc nhỏ (chain) để thiết

lập các nguyên tắc lọc gói, gồm :

+ Forward chain: lọc gói khi đến server khác.

+ Input chain: lọc gói khi đi vào trong server.

Trang 38

+ Output chain: lọc gói khi ra khỏi server.

- NAT : Gồm có hai loại:

+ Pre-routing : thay đổi địa chỉ của gói dữ liệu đến khi cần thiết + Post-routing : thay đổi địa chỉ của gói dữ liệu khi cần thiết Loại

queues

Chức năng queues

Quy tắc xử lý gói (chain)

Chức năng của chain

Filter Lọc gói FORWARD Lọc gói dữ liệu đi đến các server

khác kết nối trên các NIC của firewall

INPUT Lọc gói đi đến firewall

OUTPUT Lọc gói đi ra khỏi firewall

Address Translation (Biên dịch địa chỉ mạng)

PREROUTING Việc thay đổi địa chỉ diễn ra

trước khi dẫn đường Thay đổi địa chỉ đích sẽ giúp gói dữ liệu phù hợp với bảng chỉ đường của

firewall Sử dụng destination

NAT hay DNAT

POSTROUTING Việc thay đổi địa chỉ diễn ra sau

khi dẫn đường Sử dụng Source

NAT hay SNAT

OUTPUT NAT sử dụng cho các gói dữ liệu

xuất phát từ firewall Hiếm khi dùng trong môi trường SOHO (small office-home office)Mangle Chỉnh sửa

TCP header

PREROUTINGPOSTROUTINGOUTPUT

INPUTFORWARD

Điều chỉnh các bit quy định chất lượng dịch vụ trước khi dẫn đường Hiếm khi dùng trong môi trường SOHO

Bảng 01: Các loại queues và chức năng của nó

Ta hãy xem qua ví dụ mô tả đường đi của một gói dữ liệu :

Trang 39

Hình 12: Mô tả đường đi của gói dữ liệu.

Đầu tiên, gói dữ liệu đến mạng A, tiếp đó nó được kiểm tra bởi mangle table PREROUTING chain (nều cần) Tiếp theo là kiểm tra gói dữ liệu bởi nat table's PREROUTING chain để kiểm tra xem gói dữ liệu có cần DNAT hay không? DNAT sẽ thay đổi địa chỉ đích của gói dữ liệu Rồi gói dữ liệu được dẫn đi Nếu gói dữ liệu đi vào một mạng được bảo vệ, thì nó sẽ được lọc bởi FORWARD chain của filter table, và nếu cần gói dữ liệu sẽ được SNAT trong

POSTROUTING chain để thay đổi IP nguồn trước khi vào mạng B

Nếu gói dữ liệu được định hướng đi vào trong bên trong firewall , nó sẽ được kiểm tra bởi INPUT chain trong mangle table, và nếu gói dữ liệu qua được các kiểm tra của INPUT chain trong filter table, nó sẽ vào trong các chương trình của

Trang 40

server bên trong firewall

Khi firewall cần gởi dữ liệu ra ngoài Gói dữ liệu sẽ được dẫn và đi qua sự kiểm tra của OUTPUT chain trong mangle table (nếu cần), tiếp đó là kiểm tra trong OUTPUT chain của nat table để xem DNAT (DNAT sẽ thay đổi địa chỉ đến) có cần hay không và OUTPUT chain của filter table sẽ kiểm tra gói dữ liệu nhằm phát hiện các gói dữ liệu không được phép gởi đi Cuối cùng trước khi gói

dữ liệu được đưa ra ngoài, SNAT and QoS sẽ được kiểm tra trong

POSTROUTING chain

1.3 Targets

Targets là hành động sẽ diễn ra khi một gói dữ liệu được kiểm tra và phù hợp với một yêu cầu nào đó Khi một target đã được nhận dạng, gói dữ liệu sẽ được nhảy (jump) để thực hiện các xử lý tiếp theo Bảng sau liệt kê các targets mà Iptables

sử dụng

ACCEPT Iptables ngừng xử lý gói

dữ liệu đó và chuyển tiếp

nó vào một ứng dụng cuối hoặc hệ điều hành để xử lý

DROP Iptables ngừng xử lý gói

dữ liệu đó và gói dữ liệu bị chặn , loại bỏ

LOG Thông tin của gói sẽ được

đưa vào syslog để kiểm tra.Iptables tiếp tục xử lý gói với quy luật tiếp theo

kế tiếp

log-prefix “string”

Iptables sẽ thêm vào log message một chuỗi do người dùng định sẵn.Thông thường là để thông báo lý do vì sao gói

bị bỏ

REJECT Tương tự như DROP, reject-with qualifier

Ngày đăng: 16/02/2014, 23:33

HÌNH ẢNH LIÊN QUAN

Hình 01: Phân loại các kiểu tấn công DDoS - Xây dựng giải pháp phòng chống DDoS cho máy chủ web
Hình 01 Phân loại các kiểu tấn công DDoS (Trang 12)
Hình 02: Amplification Attack - Xây dựng giải pháp phòng chống DDoS cho máy chủ web
Hình 02 Amplification Attack (Trang 15)
3. Sơ đồ mạng Botnet 3.1 Sơ đồ Handler-Agent - Xây dựng giải pháp phòng chống DDoS cho máy chủ web
3. Sơ đồ mạng Botnet 3.1 Sơ đồ Handler-Agent (Trang 19)
3.2  Sơ đồ IRC Base - Xây dựng giải pháp phòng chống DDoS cho máy chủ web
3.2 Sơ đồ IRC Base (Trang 20)
Hình 09: Mô  hình mạng X-Flash DDoS - Xây dựng giải pháp phòng chống DDoS cho máy chủ web
Hình 09 Mô hình mạng X-Flash DDoS (Trang 28)
Hình 11: Mô hình Iptables/netfilter - Xây dựng giải pháp phòng chống DDoS cho máy chủ web
Hình 11 Mô hình Iptables/netfilter (Trang 37)
Bảng  01: Các loại queues và chức năng của nó   Ta hãy xem qua ví dụ mô tả đường đi của một gói dữ liệu : - Xây dựng giải pháp phòng chống DDoS cho máy chủ web
ng 01: Các loại queues và chức năng của nó Ta hãy xem qua ví dụ mô tả đường đi của một gói dữ liệu : (Trang 38)
Hình 12: Mô  tả đường đi của gói dữ liệu. - Xây dựng giải pháp phòng chống DDoS cho máy chủ web
Hình 12 Mô tả đường đi của gói dữ liệu (Trang 39)
Bảng 03: Bảng các tùy chọn quan trọng của Iptables - Xây dựng giải pháp phòng chống DDoS cho máy chủ web
Bảng 03 Bảng các tùy chọn quan trọng của Iptables (Trang 42)
Hình 13: Sơ đồ luồng dữ liệu đi qua Snort - Xây dựng giải pháp phòng chống DDoS cho máy chủ web
Hình 13 Sơ đồ luồng dữ liệu đi qua Snort (Trang 45)
Bảng 06: Cấu trúc của rule header - Xây dựng giải pháp phòng chống DDoS cho máy chủ web
Bảng 06 Cấu trúc của rule header (Trang 60)
Hình 14: Mô hình mạng triển khai thực tế                Trong đó , Máy chủ web có : - Xây dựng giải pháp phòng chống DDoS cho máy chủ web
Hình 14 Mô hình mạng triển khai thực tế Trong đó , Máy chủ web có : (Trang 68)
Hình 17: Luồng dữ liệu khi triển khai hệ thống phòng chống DDoS - Xây dựng giải pháp phòng chống DDoS cho máy chủ web
Hình 17 Luồng dữ liệu khi triển khai hệ thống phòng chống DDoS (Trang 71)
Hình 18: Mô hình mạng thử nghiệm Trong mô hình này: - Xây dựng giải pháp phòng chống DDoS cho máy chủ web
Hình 18 Mô hình mạng thử nghiệm Trong mô hình này: (Trang 72)
Hình 19: Hình trang chủ DemoDDoS - Xây dựng giải pháp phòng chống DDoS cho máy chủ web
Hình 19 Hình trang chủ DemoDDoS (Trang 84)
Hình 20: Hình trang phòng chống DDoS - Xây dựng giải pháp phòng chống DDoS cho máy chủ web
Hình 20 Hình trang phòng chống DDoS (Trang 85)
Hình 21: Giao diện chính của Jmeter - Xây dựng giải pháp phòng chống DDoS cho máy chủ web
Hình 21 Giao diện chính của Jmeter (Trang 85)
Hình 22: Tạo Thread Group - Xây dựng giải pháp phòng chống DDoS cho máy chủ web
Hình 22 Tạo Thread Group (Trang 86)
Hình 23: Tạo HTTP Default Request - Xây dựng giải pháp phòng chống DDoS cho máy chủ web
Hình 23 Tạo HTTP Default Request (Trang 86)
Hình 25: Tạo HTTP Request - Xây dựng giải pháp phòng chống DDoS cho máy chủ web
Hình 25 Tạo HTTP Request (Trang 87)
Hình 26: Đồ thị thời gian đáp ứng trung bình và thông lượng (bước 1) - Xây dựng giải pháp phòng chống DDoS cho máy chủ web
Hình 26 Đồ thị thời gian đáp ứng trung bình và thông lượng (bước 1) (Trang 88)
Hình 27: Tài nguyên của hệ thống ( bước 1) - Xây dựng giải pháp phòng chống DDoS cho máy chủ web
Hình 27 Tài nguyên của hệ thống ( bước 1) (Trang 89)
Hình 31: Đồ thị traffic của mạng khi bị DDoS (bước 3) - Xây dựng giải pháp phòng chống DDoS cho máy chủ web
Hình 31 Đồ thị traffic của mạng khi bị DDoS (bước 3) (Trang 91)
Hình 35: Đồ thị thời gian đáp ứng trung bình và thông lượng ( bước 3) - Xây dựng giải pháp phòng chống DDoS cho máy chủ web
Hình 35 Đồ thị thời gian đáp ứng trung bình và thông lượng ( bước 3) (Trang 93)
Hình 34: Hình ảnh Web site Demo DDoS - Xây dựng giải pháp phòng chống DDoS cho máy chủ web
Hình 34 Hình ảnh Web site Demo DDoS (Trang 93)
Hình 37: Đồ thị traffic của mạng khi bị DDoS (bước 4) - Sau 2 phút bị DDoS ta nhận được : - Xây dựng giải pháp phòng chống DDoS cho máy chủ web
Hình 37 Đồ thị traffic của mạng khi bị DDoS (bước 4) - Sau 2 phút bị DDoS ta nhận được : (Trang 95)
Hình 40: Đồ thị thời gian đáp ứng trung bình và thông lượng ( bước 4) - Xây dựng giải pháp phòng chống DDoS cho máy chủ web
Hình 40 Đồ thị thời gian đáp ứng trung bình và thông lượng ( bước 4) (Trang 96)
Hình 39: Tài nguyên của hệ thống sau năm  phút bị DDoS (bước 4) - Xây dựng giải pháp phòng chống DDoS cho máy chủ web
Hình 39 Tài nguyên của hệ thống sau năm phút bị DDoS (bước 4) (Trang 96)

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w