1. Trang chủ
  2. » Công Nghệ Thông Tin

Tìm hiểu và xây dựng giải pháp phòng chống tấn công DDoS

68 300 0

Đ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 68
Dung lượng 2,66 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Tài liệu này sẽ cung cấp cho các bạn những kiến thức về tấn công từ chối dịch vụ và demo cách xây dựng hệ thống máy chủ web server có khả năng phòng chống tấn công DDoS. Trong những năm gần đây, tấn công từ chối dịch vụ đang trở nên rất phổ biến và trở nên bùng phát khi ngày càng nhiều người tiếp cận Internet, ngày càng nhiều cá nhân, tổ chức, doanh nghiệp sử dụng mạng Internet để phục vụ cho các mục đích kinh doanh, quảng bá sản phẩm. Cùng với sự phát triển của mạng Internet, các kỹ thuật cũng như công cụ tấn công ngày càng đa dạng. Điều đó khiến cho việc tiếp cận với khái niệm tấn công của một bộ phận người dùng ngày càng dễ dàng. Chỉ việc lên bất kỳ máy tìm kiếm nào và gõ dòng chữ “công cụ ddos” là có thể tải về hàng loạt các công cụ với các biến thể khác nhau, từ hình thức tấn công đơn giản nhất cho đến cực kỳ phức tạp. Với sự sẵn có này, từ một đứa trẻ hoàn toàn không biết gì về các khái niệm của mạng cho đến một chuyên gia cũng đều có thể khiến cho một dịch vụ nào đó không thể truy cập hoặc chí ít cũng khiến nó trì trệ đôi chút. Họ thực hiện các cuộc tấn công vì nhiều lý do. Từ việc tấn công có mục đích như triệt hạ đối thủ hay chỉ tấn công để thể hiện bản thân. Thậm chỉ có các cuộc tấn công gây ra hiệu quả nghiêm trọng chỉ vì một người nào đó muốn xem thử công cụ mình mới tìm được hay tạo ra được có tác dụng như thế nào. Có những cuộc tấn công vì “chính nghĩa”, cũng có những cuộc tấn công vì tư lợi. Nhưng tất cả đều gây ra hiệu quả xấu đối với Internet.

Trang 1

TÌM HIỂU VÀ XÂY DỰNG GIẢI PHÁP PHÒNG CHỐNG TẤN CÔNG TỪ CHỐI DỊCH VỤ

Đồ án (Môn học/Tốt nghiệp): An Ninh Mạng

Tên đề tài: TÌM HIỂU VÀ XÂY DỰNG GIẢI PHÁP PHÒNG CHỐNG TẤN CÔNG TỪ CHỐI DỊCH VỤ

…………, Ngày … Tháng …….Năm 200…

GVHD: Hà Văn Cử SVTH: Đào Xuân Hưng

Mã lớp: 25CCAN02 Khóa: 25

Trang 2

TRƯỜNG CAO ĐẲNG NGHỀ iSPACE

240 Võ Văn Ngân, Phường Bình Thọ, Quận Thủ Đức, TpHCM Website: www.ispace.edu.vn Email: ispace@ispace.edu.vn Tel: (848) 6267 8999 - Fax: (848) 6283 7867

2

NHẬN XÉT CỦA GIÁO VIÊN HƯỚNG DẪN

Trang 3

TRƯỜNG CAO ĐẲNG NGHỀ iSPACE

240 Võ Văn Ngân, Phường Bình Thọ, Quận Thủ Đức, TpHCM Website: www.ispace.edu.vn Email: ispace@ispace.edu.vn Tel: (848) 6267 8999 - Fax: (848) 6283 7867

3

NHẬN XÉT CỦA DOANH NGHIỆP

Trang 4

TRƯỜNG CAO ĐẲNG NGHỀ iSPACE

240 Võ Văn Ngân, Phường Bình Thọ, Quận Thủ Đức, TpHCM Website: www.ispace.edu.vn Email: ispace@ispace.edu.vn Tel: (848) 6267 8999 - Fax: (848) 6283 7867

4

LỜI NÓI ĐẦU

Trong những năm gần đây, tấn công từ chối dịch vụ đang trở nên rất phổ biến và trở nên bùng phát khi ngày càng nhiều người tiếp cận Internet, ngày càng nhiều cá nhân, tổ chức, doanh nghiệp sử dụng mạng Internet để phục vụ cho các mục đích kinh doanh, quảng bá sản phẩm Cùng với sự phát triển của mạng Internet, các kỹ thuật cũng như công cụ tấn công ngày càng đa dạng Điều đó khiến cho việc tiếp cận với khái niệm tấn công của một bộ phận người dùng ngày càng dễ dàng Chỉ việc lên bất kỳ máy tìm kiếm nào và gõ dòng chữ “công cụ ddos” là có thể tải về hàng loạt các công cụ với các biến thể khác nhau, từ hình thức tấn công đơn giản nhất cho đến cực kỳ phức tạp Với sự sẵn

có này, từ một đứa trẻ hoàn toàn không biết gì về các khái niệm của mạng cho đến một chuyên gia cũng đều có thể khiến cho một dịch vụ nào đó không thể truy cập hoặc chí

ít cũng khiến nó trì trệ đôi chút Họ thực hiện các cuộc tấn công vì nhiều lý do Từ việc tấn công có mục đích như triệt hạ đối thủ hay chỉ tấn công để thể hiện bản thân Thậm chỉ có các cuộc tấn công gây ra hiệu quả nghiêm trọng chỉ vì một người nào đó muốn xem thử công cụ mình mới tìm được hay tạo ra được có tác dụng như thế nào Có những cuộc tấn công vì “chính nghĩa”, cũng có những cuộc tấn công vì tư lợi Nhưng tất cả đều gây ra hiệu quả xấu đối với Internet

Theo Kaspersky Lab, vào Quý 3 năm 2016, Việt Nam đứng thứ tư trong các nước bị DDoS Trong đó, Việt Nam chiếm khoảng 1.6% lượng máy chủ C&C của thế giới Đặc biệt là vào cuối năm 2016, một cuộc tấn công vô cùng khủng khiếp vào hệ thống Dyn - một nhà cung cấp tên miền và máy chủ của Mỹ đã khiến cho hệ thống này không thể đáp trả lại các truy vấn DNS của người dùng Kết quả là một loạt các hệ thống lớn như Twitter, SoundCloud, Shopify, đã dừng hoạt động suốt cả ngày Các hệ thống như Github, Netflix, Reddit cũng bị ảnh hưởng nặng nề

Trước thực trạng đó, đề tài này được nghiên cứu để giúp cho các doanh nghiệp nhỏ và vừa có khả năng hạn chế được các cuộc tấn công từ chối dịch vụ nhằm vào hệ thống của mình Qua đó đảm bảo hệ thống mạng sẽ không xảy ra sự cố nào nghiêm trọng trong suốt quá trình vận hành.

Trang 5

TRƯỜNG CAO ĐẲNG NGHỀ iSPACE

240 Võ Văn Ngân, Phường Bình Thọ, Quận Thủ Đức, TpHCM Website: www.ispace.edu.vn Email: ispace@ispace.edu.vn Tel: (848) 6267 8999 - Fax: (848) 6283 7867

5

MỤC LỤC

1 GIỚI THIỆU TỔNG QUAN 9

1.1 Giới thiệu tấn công từ chối dịch vụ 9

1.2 Các cuộc tấn công nổi tiếng 10

2 TÌM HIỂU KIẾN THỨC 11

2.1 Tổng quan bộ giao thức TCP/IP 11

2.1.1 Giao thức IP 12

2.1.2 Hệ thống Port 15

2.1.3 Giao thức TCP 16

2.1.4 Giao thức UDP 19

2.1.5 Giao thức ICMP 21

2.2 Tổng quan tấn công từ chối dịch vụ 21

2.2.1 Các hình thức tấn công từ chối dịch vụ 22

2.2.1.1 DoS (Denial of Service) 22

2.2.1.2 DDoS (Distributed Denial of Service) 23

2.2.1.3 DRDoS (Distributed Reflection Denial of Service) 25

2.2.2 Các phương thức tấn công phổ biến 25

2.3 Tổng quan firewall 29

2.3.1 Giới thiệu về firewall 29

2.3.2 Giới thiệu về Iptables 31

2.3.3 Giới thiệu về ModSecurity 33

2.4 Dịch vụ theo dõi tiến trình Monit 34

2.5 Dịch vụ giám sát Monitorix 35

2.6 Kỹ thuật cân bằng tải và CDN 36

3 PHÂN TÍCH VÀ THIẾT KẾ 39

3.1 Sơ đồ khuyến nghị cho doanh nghiệp 39

3.1.1 Xây dựng hệ thống server tại doanh nghiệp 39

3.1.2 Thuê hạ tầng ở các Datacenter 40

3.1.3 Thuê máy chủ vật lý 41

3.1.4 Thuê dịch vụ Cloud Server 41

3.2 Sơ đồ triển khai cho đồ án 42

Trang 6

TRƯỜNG CAO ĐẲNG NGHỀ iSPACE

240 Võ Văn Ngân, Phường Bình Thọ, Quận Thủ Đức, TpHCM Website: www.ispace.edu.vn Email: ispace@ispace.edu.vn Tel: (848) 6267 8999 - Fax: (848) 6283 7867

6

4 TRIỂN KHAI THỰC HIỆN 43

4.1 Cài đặt và cấu hình 43

4.1.1 Tối ưu Kernel 43

4.1.2 Tối ưu Apache 44

4.1.3 Cấu hình Iptables 47

4.1.4 Cài đặt và cấu hình ModSecurity 53

4.1.4.1 Phân tích hình thức tấn công Wordpress pingback 53

4.1.4.2 Phân tích tấn công với liên kết Facebook 53

4.1.4.3 Cản lọc bằng ModSecurity 55

4.1.5 Cài đặt và cấu hình Monit 56

4.1.6 Cài đặt và cấu hình Monitorix 58

4.2 Tấn công thử nghiệm 63

4.2.1 Tấn công thử nghiệm với công cụ TorsHammer 63

4.2.2 Tấn công thử nghiệm với DDoSOverProxy 64

4.2.3 Tấn công thử nghiệm với liên kết Facebook 65

5 ĐÁNH GIÁ VÀ HƯỚNG PHÁT TRIỂN 68

5.1 Đánh giá đề tài 68

5.2 Hướng phát triển 68

Trang 7

TRƯỜNG CAO ĐẲNG NGHỀ iSPACE

240 Võ Văn Ngân, Phường Bình Thọ, Quận Thủ Đức, TpHCM Website: www.ispace.edu.vn Email: ispace@ispace.edu.vn Tel: (848) 6267 8999 - Fax: (848) 6283 7867

7

MỤC LỤC HÌNH ẢNH

Hình 1: Tấn công từ chối dịch vụ 9

Hình 2: Mô hình TCP/IP 11

Hình 3: IP Header 12

Hình 4: Network Address Translation 15

Hình 5: Danh sách các port phổ biến 16

Hình 6: Quá trình bắt tay 3 bước 17

Hình 7: Quá trình ngắt kết nối 18

Hình 8: Cấu trúc TCP header 19

Hình 9: Giao thức truyền tin UDP 20

Hình 10: Cấu trúc UDP header 20

Hình 11: Cấu trúc ICMP header 21

Hình 12: Mô hình tấn công DDoS 23

Hình 13: Mô hình mạng Botnet 24

Hình 14: Mô hình tấn công DRDoS 25

Hình 15: Tấn công SYN Flood 26

Hình 16: Tấn công Ping of Death 27

Hình 17: Sơ đồ tấn công Smurf 28

Hình 18: Tấn công HTTP POST 29

Hình 19: Sơ đồ xử lý của Netfilter 32

Hình 20: Monit Service Manager 34

Hình 21: Dịch vụ giám sát Monitorix 35

Hình 22: Mô hình Load Balancing 37

Hình 23: Mô hình Failover 37

Hình 24: Các A Record của Google.com 38

Hình 25: Mô hình triển khai CDN Server 39

Hình 26: Datacenter 41

Hình 27: Mô hình hệ thống Cloud 42

Hình 28: Sơ đồ triển khai cho đồ án 42

Hình 29: Cấu hình MPM cho Apache 44

Hình 30: Cấu hình module reqtimeout 45

Hình 31: Một website đã thu gọn HTML 46

Trang 8

TRƯỜNG CAO ĐẲNG NGHỀ iSPACE

240 Võ Văn Ngân, Phường Bình Thọ, Quận Thủ Đức, TpHCM Website: www.ispace.edu.vn Email: ispace@ispace.edu.vn Tel: (848) 6267 8999 - Fax: (848) 6283 7867

8

Hình 32: Cấu hình Browser Cache cho Apache 47

Hình 33: Sơ đồ các chain trong đồ án 49

Hình 34: Một ví dụ về tấn công Pingback 53

Hình 35: Chức năng Facbook Preload 54

Hình 36: Cấu hình ModSecurity 56

Hình 37: Nội dung file denyhost.sh 56

Hình 38: Cài đặt dịch vụ Monit 57

Hình 39: Cấu hình dịch vụ Monit 57

Hình 40: Giám sát Apache với Monit 57

Hình 41: Monit khởi động thành công 58

Hình 42: Cài đặt dịch vụ Monitorix 59

Hình 43: Cấu hình Monitorix 59

Hình 43 & 44: Giao diện Monitorix 61

Hình 45: Kích hoạt Apache graph trong Monitorix 62

Hình 46: Tấn công HTTP POST 63

Hình 47: Loại bỏ kết nối từ TorsHammer 63

Hình 48: Traffic đi vào server 64

Hình 49: Log ghi nhận từ Apache 65

Hình 50: Tấn công với Facebook Preload 66

Hình 51: Kết quả kiểm tra từ check-host.net 66

Hình 52: Lượng server processes do Apache tạo ra 67

Hình 53: Traffic đi vào server 67

Hình 54: Số lượng request do Apache ghi nhận 68

Trang 9

TRƯỜNG CAO ĐẲNG NGHỀ iSPACE

240 Võ Văn Ngân, Phường Bình Thọ, Quận Thủ Đức, TpHCM Website: www.ispace.edu.vn Email: ispace@ispace.edu.vn Tel: (848) 6267 8999 - Fax: (848) 6283 7867

9

TÌM HIỂU VÀ XÂY DỰNG GIẢI PHÁP PHÒNG CHỐNG

TẤN CÔNG TỪ CHỐI DỊCH VỤ

1 GIỚI THIỆU TỔNG QUAN

1.1 Giới thiệu tấn công từ chối dịch vụ.

Tấn công từ chối dịch vụ là hình thức tấn công khiến cho hệ thống mục tiêu bị tê liệt hoặc không thể đáp ứng các yêu cầu của người dùng Tấn công từ chối dịch vụ có thể do một, nhiều hoặc một mạng lưới các máy tính cùng tham gia tấn công tùy theo mục đích của hacker và khả năng phòng thủ của mục tiêu

Hình 1: Tấn công từ chối dịch vụ

Bất kỳ hệ thống nào cũng có thể trở thành mục tiêu của tấn công từ chối dịch vụ Tuy nhiên, việc tấn công từ chối dịch vụ không chỉ ảnh hưởng đến mục tiêu mà còn ảnh hưởng đến Internet trên toàn cầu Điển hình là vụ tấn công vào DynDNS vào năm 2016 khiến cho gần một nửa Internet không thể phục vụ người dùng trong thời gian ngắn Việc tấn công không những khiến

Trang 10

TRƯỜNG CAO ĐẲNG NGHỀ iSPACE

240 Võ Văn Ngân, Phường Bình Thọ, Quận Thủ Đức, TpHCM Website: www.ispace.edu.vn Email: ispace@ispace.edu.vn Tel: (848) 6267 8999 - Fax: (848) 6283 7867

10

cho DynDNS không thể trả lời các truy vấn DNS mà còn khiến cho một lượng lớn dữ liệu ùn

ùn đổ vào hệ thống Internet của Mỹ khiến cho các dịch vụ khác cũng bị ảnh hưởng nghiêm trọng

1.2 Các cuộc tấn công nổi tiếng

Một số cuộc tấn công nổi tiếng:

- Cuộc tấn công đầu tiên liên quan đến máy chủ DNS xảy ra vào tháng 01/2001 và mục tiêu đầu tiên là trang Register.com Chúng đã sử dụng danh sách hàng ngàn bản ghi (records) có tuổi thọ 1 năm tại thời điểm tấn công

- Vào tháng 02/2001, máy chủ của Cục Tài chính Ireland bị tấn công bởi DDoS, thủ phạm

là những sinh viên đến từ trường Maynooth, một trường Đại học tại Ireland Vụ việc bị phản ánh và một số sinh viên của trường đã bị kỷ luật ngay sau đó

- Trong năm 2009, xảy ra cuộc phản đối bầu cử tại Iran, các nhà hoạt động nước ngoài đang tìm cách giúp đỡ phe đối lập tham gia vào các cuộc tấn công DDoS chống lại chính phủ của Iran Trang web chính thức của chính phủ Iran (ahmedinejad.ir) không thể truy cập được

- Ngày 25/09/2009, ngày Michael Jackson qua đời, do lượng truy cập tìm kiếm các từ khóa có liên quan đến Michael Jackson quá lớn khiến Google News ban đầu lầm tưởng đây là một cuộc tấn công tự động

- Vào ngày 28/11/2010, Wikileaks.org bị DDoS tấn công Cuộc tấn công này xảy ra ngay khi WikiLeaks chuẩn bị tung ra những tài liệu mật của chính phủ Mỹ Bộ Ngoại giao

Mỹ sau khi biết thông tin này đã quyết định thông báo trước đến các chính phủ khác về những gì mà tổ chức WikiLeaks sẽ phát tán

- Vào 8/12/2010, Một nhóm hacker tấn công đồng loạt trang web của hãng MasterCard, Visa để trả đũa cho việc chủ Wikileaks bị tạm giam ở Anh Nhóm hacker, lấy tên "chiến dịch trả đũa", nhận trách nhiệm gây ra các lỗi kỹ thuật nghiêm trọng trên trang web của MasterCard Tuyên bố này được đưa qua một thông điệp trên mạng xã hội Twitter

- Cuộc tấn công đã đánh sập thành công website của Mastercard, PostFinance và Visa PostFinance, ngân hàng đã đóng băng tài khoản của Julian Assange, bị ngưng hoạt động hơn 16 giờ đồng hồ

Trang 11

TRƯỜNG CAO ĐẲNG NGHỀ iSPACE

240 Võ Văn Ngân, Phường Bình Thọ, Quận Thủ Đức, TpHCM Website: www.ispace.edu.vn Email: ispace@ispace.edu.vn Tel: (848) 6267 8999 - Fax: (848) 6283 7867

11

2 TÌM HIỂU KIẾN THỨC

2.1 Tổng quan bộ giao thức TCP/IP

TCP/IP là bộ giao thức quan trọng nhất mạng Internet, là tiêu chuẩn chung của các thiết bị kết nối Internet trên toàn cầu TCP/IP khiến cho việc giao tiếp giữa các thiết bị khác nhau được thống nhất TCP/IP cung cấp các giao thức con để phục vụ cho các cấp độ khác nhau của hạ tầng mạng Trong đó, các giao thức thuộc tầng thứ 2 và 3 là những giao thức quan trọng nhất trên môi trường Internet Tầng 2 của mô hình TCP/IP có nhiệm vụ xác định điểm xuất phát và đích đến của gói tin, và giúp định tuyến gói tin đến đích một cách chính xác Tầng 3 có nhiệm

vụ xác định dịch vụ hoặc ứng dụng sẽ nhận được gói tin Các lớp trong mô hình đều có mối quan hệ chặt chẽ với nhau, các tầng phía trên sẽ không thể hoạt động nếu thiếu các tầng phía dưới

Trang 12

TRƯỜNG CAO ĐẲNG NGHỀ iSPACE

240 Võ Văn Ngân, Phường Bình Thọ, Quận Thủ Đức, TpHCM Website: www.ispace.edu.vn Email: ispace@ispace.edu.vn Tel: (848) 6267 8999 - Fax: (848) 6283 7867

12

2.1.1 Giao thức IP

Giao thức IP là giao thức truyền tải dạng host to host trên Internet, thuộc tầng Internet trên

mô hình TCP/IP IP là một giao thức dạng phi kết nối và truyền tải dữ liệu dạng datagram

và không có cơ chế kiểm tra lỗi mà chỉ có trường checksum để kiểm tra tính toàn vẹn của

dữ liệu Cấu trúc một IP header như sau:

Hình 3: IP Header

- Version (4 bit): Đây là trường đầu tiên của gói IP cho biết phiên bản của giao thức

đang được sử dụng Hiện tại phần lớn các thiết bị đều sử dụng giao thức IP version

4 trong khi version 6 vẫn đang phát triển mạnh mẽ và dần trở nên phổ biến

- Internet Header Length (IHL) (4 bit): Trường này chứa thông tin về độ dài của

header Giá trị của trường này cho biết header này dài gấp mấy lần một trường 32 bit Thông thường nếu không có các giá trị Options đi kèm, giá trị của trường này sẽ

là 5, tức là header dài 5 x 32 bit = 20 bytes Giá trị tối đa của trường này là 15, tức

là một IP header sẽ dài tối đa 60 bytes

- Type of Service (ToS) (8 bit): Trường này cho router biết cách xử lý gói tin như là

giảm thiểu độ trễ, tối đa hóa lưu lượng, tối thiểu chi phí và tối đa hóa độ tin cậy Trường này thường được sử dụng trong công nghệ Quality of Service (QoS)

- Total Length (16 bit): Trường này chứa thông tin về độ dài của toàn bộ IP header

và phần dữ liệu, được tính theo đơn vị octets

- Identification (16 bit): Trường này được sử dụng để đánh số các gói tin IP phục vụ

cho việc sắp xếp lại các gói về đúng thứ tự ban đầu nếu gói IP bị phân mảnh do quá lớn Giá trị của trường này sẽ được tự động tăng từ nguồn gửi

- Flags (3 bit): Bit đầu tiên không được sử dụng và luôn có giá trị 0 Bit kế tiếp gọi là

cờ Don’t Fragment (DF) Cờ DF cho biết gói tin có được phân mảnh: 0 – không

Trang 13

TRƯỜNG CAO ĐẲNG NGHỀ iSPACE

240 Võ Văn Ngân, Phường Bình Thọ, Quận Thủ Đức, TpHCM Website: www.ispace.edu.vn Email: ispace@ispace.edu.vn Tel: (848) 6267 8999 - Fax: (848) 6283 7867

- Fragment Offset (13 bit): Trong trường hợp dữ liệu bị phân mảnh, trường này cho

biết vị trí của dữ liệu trong gói so với dữ liệu gốc Được sử dụng để lắp ghép lại dữ liệu của các gói IP bị phân mảnh

- Time To Live (TTL - 8 bit): Cho biết số mắt xích (hops) mà gói IP có thể đi qua

trước khi bị hủy bỏ Qua mỗi router, số này sẽ bị trừ đi 1 đơn vị Khi số này bằng 0, gói tin sẽ bị hủy

- Protocol (8 bit): Cho biết giao thức chứa trong phần dữ liệu của gói Phần giao thức

này thuộc về lớp trên trong mô hình TCP/IP Ví dụ: ICMP có mã là 1, TCP có mã là

6, UDP có mã là 17,…

- Header Checksum (16 bit): Chứa mã kiểm tra tính toàn vẹn của phần IP header

Trường này sẽ được tính toán lại mỗi khi đi qua một router (do giá trị Time To Live

bị giảm) Cách tính checksum như sau:

 Trước hết ta đặt trường Checksum về giá trị 0

 Sau đó, lấy mỗi 16 bit của header đem cộng dồn với nhau

 Nếu kết quả có độ dài lớn hơn 16 bit, ta lấy tất cả bit cao cộng nhị phân với

16 bit thấp, cho đến khi kết quả chỉ dài trong khoảng 16 bit

 Đảo ngược các bit và ta thu được checksum

 Ví dụ ta có một IP header như sau (với phần checksum có giá trị 0):

45 20 00 34 23 FA 40 00 37 06 00 00 97 65 C0 85 C0 A8 49 8D

Để tính checksum của header này, ta lấy mỗi 16 bit đem cộng với nhau:

4520 + 0034 + 23FA + 4000 + 3706 + 0000 + 9765 + C085 + C0A8 + 498D = 34273 = 11 0100 0010 0111 0011 tức lớn hơn 16 bit

Ta lấy phần dư ở các bit cao đem cộng với phần dư ở các bit thấp:

0000 0011 + 0100 0010 0111 0011 = 100 0010 0111 0110 Đem đảo ngược các bit này ta được: 011 1101 1000 1001 = 3D89 Như vậy phần checksum sẽ có giá trị 3D89

- Source IP Address (32 bit): Chứa thông tin về IP nguồn của gói

Trang 14

TRƯỜNG CAO ĐẲNG NGHỀ iSPACE

240 Võ Văn Ngân, Phường Bình Thọ, Quận Thủ Đức, TpHCM Website: www.ispace.edu.vn Email: ispace@ispace.edu.vn Tel: (848) 6267 8999 - Fax: (848) 6283 7867

14

- Destination IP Address (32 bit): Chứa thông tin về IP đích của gói

- Options: Trường này cung cấp một số cài đặt cho header phục vụ cho việc kiểm

thử, gỡ lỗi, và bảo mật

- Padding: Có chiều dài cố định Bao gồm một dãy các bit 0 để đảm bảo IP Header

Length luôn chia hết cho 32 bit

- Payload: Là phần cuối cùng của một gói IP Chứa dữ liệu của các giao thức thuộc

tầng phía trên trong mô hình TCP/IP

Địa chỉ IP:

- Địa chỉ IP là một địa chỉ dùng để định danh các thiết bị (host) trên mạng Internet

- Tất cả các thiết bị mạng đều phải có địa chỉ IP để hoạt động, địa chỉ IP của các thiết bị luôn khác nhau

- Hiện tại có hai dạng địa chỉ IP là IP version 4 (IPv4) và IP version 6(IPv6) Trong

đó IP version 4 vẫn là cốt yếu của mạng Internet tuy nhiên lại đang dần cạn kiệt IPv6 đang phát triển mạnh mẽ và sẽ thay thế IPv4 trong tương lai

- Tổ chức cấp phát số hiệu Internet (IANA) là tổ chức tạo ra và phân phối địa chỉ

IP Những khu vực nhất định sẽ được cung cấp những dải IP nhất định Qua đó khiến cho việc truy tìm vị trí dựa theo địa chỉ IP sẽ dễ dàng hơn

- Cấu trúc địa chỉ IPv4:

 Địa chỉ IP được diễn tả bởi một địa chỉ 32 bit Trong đó chia ra làm 4 phần dài 8 bit, gọi là các octets Tuy nhiên để tiện cho việc ghi nhớ, các octet của địa chỉ IP thường được quy đổi về hệ số decimal và phân cách nhau bởi dấu chấm Ví dụ: 103.56.164.21

 Hệ thống địa chỉ IP phân thành các lớp Mỗi lớp có một khoảng Public IP

và Private IP riêng

Riêng dải địa chỉ 127.0.0.0 sẽ được sử dụng làm địa chỉ loopback

Trang 15

TRƯỜNG CAO ĐẲNG NGHỀ iSPACE

240 Võ Văn Ngân, Phường Bình Thọ, Quận Thủ Đức, TpHCM Website: www.ispace.edu.vn Email: ispace@ispace.edu.vn Tel: (848) 6267 8999 - Fax: (848) 6283 7867

15

 Một phần của địa chỉ IP sẽ được sử dụng làm địa chỉ mạng và một phần được sử dụng làm địa chỉ cho các host Lớp A của hệ thống IP sử dụng 8 bit đầu tiên để làm địa chỉ mạng, lớp B sử dụng 16 bit và lớp C sử dụng

24 bit

- Public IP và Private IP: Ngày nay số lượng các thiết bị sử dụng Internet đang thực sự bùng nổ khiến cho việc quản lý và phân phối IP trở nên khó khăn do nguồn IP cạn kiệt và việc gia tăng chi phí thuê đường truyền với mỗi thiết bị Vì thế các hộ gia đình, doanh nghiệp hoặc tổ chức sẽ sử dụng một địa chỉ IP duy nhất cho tất cả các thiết bị của mình Tuy nhiên, địa chỉ IP lại là duy nhất cho mỗi thiết bị, không thể dùng chung Chính vì thế, người ta sử dụng dải IP Private

để phục vụ cho nhu cầu mạng nội bộ, và sử dụng Public IP cho nhu cầu kết nối Internet Giữa hệ thống mạng nội bộ và Internet sẽ có một router sử dụng công nghệ Network Address Translation (NAT) để giúp cho mạng nội bộ kết nối được với Internet thông qua Public IP của router

Hình 4: Network Address Translation

Trang 16

TRƯỜNG CAO ĐẲNG NGHỀ iSPACE

240 Võ Văn Ngân, Phường Bình Thọ, Quận Thủ Đức, TpHCM Website: www.ispace.edu.vn Email: ispace@ispace.edu.vn Tel: (848) 6267 8999 - Fax: (848) 6283 7867

Hình 5: Danh sách các port phổ biến

2.1.3 Giao thức TCP

Giao thức TCP (Transmission Control Protocol) là một trong những giao thức quan trọng nhất của hệ thống mạng Sử dụng TCP, các thiết bị mạng sẽ tạo ra các kết nối ảo với nhau Qua các kết nối đó, chúng có thể truyền dữ liệu với nhau TCP có cơ chế kiểm tra lỗi để đảm bảo dữ liệu luôn được truyền và nhận một cách đúng thứ tự, toàn vẹn và đáng tin cậy, quản lý và phân biệt các kết nối dựa trên địa chỉ IP và số Port của hai đầu gửi và nhận Giao thức TCP hoạt động theo các bước sau:

- Khởi tạo và thiết lập kết nối

Trang 17

TRƯỜNG CAO ĐẲNG NGHỀ iSPACE

240 Võ Văn Ngân, Phường Bình Thọ, Quận Thủ Đức, TpHCM Website: www.ispace.edu.vn Email: ispace@ispace.edu.vn Tel: (848) 6267 8999 - Fax: (848) 6283 7867

Quá trình khởi tạo kết nối TCP diễn ra như sau (quá trình bắt tay 3 bước):

- Bên A gửi cho đối phương một gói TCP với cờ SYN được bật

- Bên B nếu muốn chấp nhận kết nối sẽ gửi lại đối phương một gói TCP với cờ SYN

và ACK được bật

- Bên A gửi lại một gói TCP có cờ ACK Kết nối hoàn tất

Hình 6: Quá trình bắt tay 3 bước

Quá trình ngắt kết nối:

- Bên A gửi đối phương một gói TCP với cờ FIN và ACK được bật

- Bên B gửi lại một gói TCP ACK

- Bên B hoàn tất quá trình gửi dữ liệu và tiến vào trạng thái ngắt kết nối, gửi cho bên A một gói TCP với cờ FIN và ACK bật

- Bên A gửi lại bên B một gói TCP với cờ ACK Kết thúc quá trình

Trang 18

TRƯỜNG CAO ĐẲNG NGHỀ iSPACE

240 Võ Văn Ngân, Phường Bình Thọ, Quận Thủ Đức, TpHCM Website: www.ispace.edu.vn Email: ispace@ispace.edu.vn Tel: (848) 6267 8999 - Fax: (848) 6283 7867

18 Hình 7: Quá trình ngắt kết nối

Cấu trúc một TCP header như sau:

Trang 19

TRƯỜNG CAO ĐẲNG NGHỀ iSPACE

240 Võ Văn Ngân, Phường Bình Thọ, Quận Thủ Đức, TpHCM Website: www.ispace.edu.vn Email: ispace@ispace.edu.vn Tel: (848) 6267 8999 - Fax: (848) 6283 7867

19

Hình 8: Cấu trúc TCP header

- Source Port Number (16 bit): Địa chỉ cổng nguồn của gói tin

- Destination Port Number (16 bit): Địa chỉ cổng đích của gói tin

- Sequence Number (32 bit): Được sử dụng để lắp ghép các gói TCP lại theo đúng thứ

tự Số này sẽ được gán vào trường ACK trong gói đáp trả

- Acknowledgement Number (32 bit): Bên nhận cho biết cho biết gói đã đến đích thành

công Trường này có giá trị bằng số Sequence của gói vừa nhận được

- Data Offset (4 bit): Cho biết tổng độ dài của TCP header dài gấp mấy lần 32 bit Nếu

không có trường Optional, trường này thường có giá trị là 5, tức là TCP header dài tổng cộng 5 x 32 bit = 20 bytes

- Reversed (3 bit): Luôn có giá trị là 0, sẽ được dùng trong tương lai

- Flags (1 bit mỗi cờ): Gồm các cờ NS, CWR, ECE vẫn chưa được sử dụng 6 cờ còn lại

là URG, ACK, PSH, RST, SYN, FIN hiện đang được sử dụng

- Window Size (16 bit): Xác định lượng dữ liệu đính kèm lớn nhất (tính theo bytes) mà

bên nhận có thể nhận được mỗi gói Bên gửi chỉ có thể gửi một lương dữ liệu tương ứng trước khi nhận lại một gói Acknowledgement và chỉ số window mới từ bên nhận

- Checksum (16 bit): Sử dụng để kiểm tra tính toàn vẹn của header và dữ liệu

- Urgent Pointer (16 bit): Trường ưu tiên Khi một thiết bị nhìn thấy một gói tin có sử

dụng Urgent Pointer, nó sẽ dừng tất cả các hoạt động khác và chuyển tiếp gói tin này đi ngay lập tức

- Options: Đây là trường tùy chọn, thường có độ dài là bội số của 32 bit

2.1.4 Giao thức UDP

Trong khi giao thức TCP là giao thức có tính tin cậy cao nhưng lại có thể gây chậm trễ vì

cơ chế kiểm tra lỗi trong khi vận chuyển các gói tin khiến cho một số dịch vụ cần tốc độ cao nhưng không yêu cầu tính toàn vẹn bị hạn chế Khi đó, ta thường dùng đến giao thức UDP (User Datagram Protocol) Đây cũng là một giao thức cốt lõi của TCP/IP UDP đơn thuần chỉ gửi gói tin đến đích dạng datagram mà không thông qua bất cứ một kết nối nào cũng như không hề kiểm tra xem gói tin có thực sự đến đích hay không Điều này khiến UDP hoạt động rất nhanh và đơn giản hơn TCP

Trang 20

TRƯỜNG CAO ĐẲNG NGHỀ iSPACE

240 Võ Văn Ngân, Phường Bình Thọ, Quận Thủ Đức, TpHCM Website: www.ispace.edu.vn Email: ispace@ispace.edu.vn Tel: (848) 6267 8999 - Fax: (848) 6283 7867

20

Hình 9: Giao thức truyền tin UDP

Do UDP là giao thức có thông điệp nhỏ nhất trên tầng Transport nên hoạt động rất tốt với các hệ thống chuyên trả lời các truy vấn đơn giản và có số lượng người dùng lớn như DNS, streaming media, game,…

Cấu trúc UDP header:

Hình 10: Cấu trúc UDP header

- Source Port (16 bit): Địa chỉ cổng nguồn, nếu không cần đối phương trả kết quả về,

trường này có thể gán giá trị bằng 0

- Destination Port (16 bit): Địa chỉ cổng đích

- Length (16 bit): Chứa độ dài của toàn bộ gói UDP Giá trị thấp nhất là 8 byte khi

không có dữ liệu

Trang 21

TRƯỜNG CAO ĐẲNG NGHỀ iSPACE

240 Võ Văn Ngân, Phường Bình Thọ, Quận Thủ Đức, TpHCM Website: www.ispace.edu.vn Email: ispace@ispace.edu.vn Tel: (848) 6267 8999 - Fax: (848) 6283 7867

Header của ICMP rất đa dạng, phụ thuộc vào các trường Type và Code

Hình 11: Cấu trúc ICMP header

Các chức năng của ICMP:

- Điều khiển lưu lượng (flow control) khi các gói dữ liệu đến quá nhanh, thiết bị đích hoặc thiết bị định tuyến ở giữa sẽ gửi một thông điệp ICMP trở lại thiết bị gửi, yêu cầu thiết bị gửi tạm thời ngừng gửi dữ liệu

- Thông báo lỗi: Trong trường hợp dữ liệu không tới được địa chỉ đích thì hệ thống sẽ gửi một thông báo lỗi “Destination unsearchable”

- Định hướng lại các tuyến (Redirect Router) Một Router gửi một thông điệp ICMP cho một host thông báo nên sử dụng Router khác Thông điệp này có thể chỉ được dùng khi host này ở trên cùng một mạng với hai thiết bị định tuyến

- Kiểm tra các host ở xa: Một host có thể gửi một thông điệp ICMP “Echo” để kiểm tra host đích có hoạt động hay không

2.2 Tổng quan tấn công từ chối dịch vụ

Như đã đề cập, tấn công từ chối dịch vụ có mục đích là khiến mục tiêu không thể đáp ứng lại các yêu cầu phục vụ của người dùng Các cuộc tấn công này có thể gây ra thiệt hại vô cùng lớn Hơn nữa mục tiêu tấn công cũng vô cùng đa dạng Bất cứ dịch vụ nào cũng có thể trở thành đích ngắm của cuộc tấn công Thậm chí cả khi không có dịch vụ nào hoạt động thì các cuộc tấn công vẫn có thể khiến cho băng thông của mục tiêu bị bão hòa

Trang 22

TRƯỜNG CAO ĐẲNG NGHỀ iSPACE

240 Võ Văn Ngân, Phường Bình Thọ, Quận Thủ Đức, TpHCM Website: www.ispace.edu.vn Email: ispace@ispace.edu.vn Tel: (848) 6267 8999 - Fax: (848) 6283 7867

22

Kết quả của một cuộc tấn công từ chối dịch vụ:

- Làm cạn kiệt tài nguyên của hệ thống

- Làm quá tải hoặc sụp đổ dịch vụ

- Làm băng thông bị bão hòa

- Phá vỡ các kết nối TCP

- Làm sập hoặc hỏng hóc thiết bị đứng trước mục tiêu như Firewall, Router, Modem khiến cho mục tiêu dù có khả năng phòng thủ tốt nhưng cuộc tấn công vẫn thành công US-CERT đã xác định các dấu hiệu của một cuộc tấn công từ chối dịch vụ bao gồm:

- Mạng bị chậm bất thường khi mở một tệp tin hoặc truy cập website

- Không thể truy cập một website cụ thể

- Không thể truy cập bất kỳ website nào

- Tăng lượng thư rác nhận được

2.2.1 Các hình thức tấn công từ chối dịch vụ

Tấn công từ chối dịch vụ chia ra làm nhiều hình thức dựa theo phương pháp và quy mô của cuộc tấn công Chia ra làm ba loại chính như sau:

- DoS (Denial of Service)

- DDoS (Distributed Denial of Service)

- DRDoS (Distributed Reflection Denial of Service)

Ta sẽ tìm hiểu từng loại hình để tìm ra phương pháp phòng chống hữu hiệu cho chúng

2.2.1.1 DoS (Denial of Service)

DoS (Denial of Service) là hình thức tấn công từ chối dịch vụ cơ bản nhất Một cuộc tấn công DoS chỉ do một cá nhân hoặc một hệ thống thực hiện Các cuộc tấn công DoS thường nhắm vào các lỗ hổng về phần mềm của mục tiêu khiến nó sụp đổ hoặc làm bão hòa băng thông của mục tiêu nếu máy tính tấn công có băng thông lớn hơn băng thông của mục tiêu

Các kiểu tấn công điển hình của DoS là: Ping of Death, SYN Flood, Smurf, LAND, Teardrop, HTTP POST, …

Cũng chính vì việc tấn công này chỉ sử dụng một máy tính để tấn công nên việc chống lại cũng hết sức dễ dàng Ví dụ như chặn tất cả các gói từ IP của máy tính tấn công

Trang 23

TRƯỜNG CAO ĐẲNG NGHỀ iSPACE

240 Võ Văn Ngân, Phường Bình Thọ, Quận Thủ Đức, TpHCM Website: www.ispace.edu.vn Email: ispace@ispace.edu.vn Tel: (848) 6267 8999 - Fax: (848) 6283 7867

23

2.2.1.2 DDoS (Distributed Denial of Service)

DDoS (Distributed Denial of Service) là hình thức tấn công từ chối dịch vụ thông dụng nhất hiện nay Thông thường máy tính tấn công sẽ không có đủ băng thông hoặc không

đủ sức mạnh để tạo ra lượng dữ liệu làm bão hòa băng thông của mục tiêu hoặc lượng

dữ liệu đó không đủ để làm quá tải các tài nguyên cần thiết Khi đó sẽ có nhiều người hoặc nhiều máy tính cùng tham gia tấn công Rõ ràng với hình thức này thì cuộc tấn công sẽ hiệu quả hơn rất nhiều

Hình 12: Mô hình tấn công DDoS

Mạng botnet: mạng lưới botnet là một tập hợp các máy tính của người tấn công hoặc các máy tính bị nhiễm mã độc và bị điều khiển bởi hacker Việc sử dụng mạng botnet không chỉ dễ dàng ẩn giấu thông tin của hacker mà còn có lợi thế rất lớn là tăng lưu lượng băng thông đổ vào nạn nhân cũng như tăng cường lượng tài nguyên, khả năng tạo gói do có nhiều máy tính cùng tham gia đồng thời

Botnet có 2 dạng điều khiến phổ biến như sau:

- Thông qua web hoặc kênh IRC: Hacker sẽ đưa các chỉ thị tấn công lên các kênh công cộng (các máy chủ C&C) Sau đó các botnet sẽ tự động kết nối đến các kênh này để lấy chỉ thị và tiến hành tấn công

Trang 24

TRƯỜNG CAO ĐẲNG NGHỀ iSPACE

240 Võ Văn Ngân, Phường Bình Thọ, Quận Thủ Đức, TpHCM Website: www.ispace.edu.vn Email: ispace@ispace.edu.vn Tel: (848) 6267 8999 - Fax: (848) 6283 7867

Hình 13: Mô hình mạng Botnet

Hiện nay, đa phần các cuộc tấn công từ chối dịch vụ đều sử dụng mạng lưới Botnet (mạng lưới các máy tính bị tấn công và cài mã độc, khiến cho các máy tính này chịu sự điều khiển của một cá nhân hoặc tổ chức nào đó) Điển hình nhất hiện này là botnet Mirai chuyên tấn công vào các hệ thống Internet of Things (IoT) là các camera và sử dụng chúng tham gia tấn công

Trong trường hợp không có hệ thống Botnet, hacker có thể tấn công các website có lượng người dùng lớn và gắn lên đó một đoạn mã HTML hoặc Javascript có khả năng tạo các truy vấn HTTP đến mục tiêu tấn công Mỗi khi có một client truy cập vào website này, người đó vô tình trở thành một máy tính tham gia tấn công Việc cản lọc đối với phương pháp này tuy dễ dàng (dựa theo Referer) nhưng rất dễ bị áp đảo về mặt băng thông

Trang 25

TRƯỜNG CAO ĐẲNG NGHỀ iSPACE

240 Võ Văn Ngân, Phường Bình Thọ, Quận Thủ Đức, TpHCM Website: www.ispace.edu.vn Email: ispace@ispace.edu.vn Tel: (848) 6267 8999 - Fax: (848) 6283 7867

25

2.2.1.3 DRDoS (Distributed Reflection Denial of Service)

DRDoS (Distributed Reflection Denial of Service) là hình thức mà hacker giả mạo địa chỉ IP của nạn nhân và gửi dữ liệu đến các hệ thống máy tính lớn như Google, Yahoo, Microsoft, … khiến cho các hệ thống này trả dữ liệu về máy tính nạn nhân Điều đáng nói là đây đều là những hệ thống mạnh và có băng thông lớn nên nạn nhân sẽ nhanh chóng cạn kiệt tài nguyên

Hình 14: Mô hình tấn công DRDoS

Ngày nay, một số tính năng của Facebook, Google và một số website khác dễ bị lợi dụng để tấn công DRDoS Điển hình là các tính năng Facebook Preload, Facebook Notes, Google Translate,

Trong đồ án này ta sẽ lợi dụng tính năng Facebook Preload để tấn công và tìm ra cách thức chống lại nó

2.2.2 Các phương thức tấn công phổ biến

Trong phần này ta sẽ tìm hiểu về các hình thức tấn công phổ biến và nguy hiểm của tấn công từ chối dịch vụ

- SYN Flood:

Để hiểu rõ về phương thức này, ta xem xét lại quá trình bắt tay ba bước của giao thức TCP: Đầu tiên host A gửi gói tin có gắn cờ SYN đến host B để yêu cầu kết nối Nếu host B nhận được gói tin này và đồng ý cho phép kết nối, host này sẽ

Trang 26

TRƯỜNG CAO ĐẲNG NGHỀ iSPACE

240 Võ Văn Ngân, Phường Bình Thọ, Quận Thủ Đức, TpHCM Website: www.ispace.edu.vn Email: ispace@ispace.edu.vn Tel: (848) 6267 8999 - Fax: (848) 6283 7867

Tuy nhiên kiểu tấn công này lại dễ phòng thủ vì hiện nay các hệ điều hành đều

hỗ trợ mặc định chức năng SYN cookies để chống lại SYN Flood

Hình 15: Tấn công SYN Flood

- Teardrop:

Giả sử ta có một đoạn dữ liệu có độ dài là 5000

Để gửi gói dữ liệu này, ta cắt nó ra làm các đoạn ngắn hơn và gửi đi Ví dụ: Gói đầu tiên sẽ mang các byte từ 1 -> 2000, gói thứ hai mang các byte từ 2001 ->

4000, gói thứ ba sẽ mang các byte 4001->5000 Khi đó dựa vào offset ta có thể sắp xếp lại các gói TCP theo thứ tự đúng Tuy nhiên, nếu vì một lý do nào đó mà gói TCP mang offset bị sai (ví dụ gói thứ ba mang các byte 2000 -> 5000), hệ thống sẽ không thể ghép các gói TCP lại được Khi đó nếu số gói có offset sai là quá lớn, mục tiêu có thể sẽ bị crash, reboot hoặc ngừng hoạt động hoàn toàn

Trang 27

TRƯỜNG CAO ĐẲNG NGHỀ iSPACE

240 Võ Văn Ngân, Phường Bình Thọ, Quận Thủ Đức, TpHCM Website: www.ispace.edu.vn Email: ispace@ispace.edu.vn Tel: (848) 6267 8999 - Fax: (848) 6283 7867

27

- Ping of Death:

Hình 16: Tấn công Ping of Death

Ping of Death là dạng tấn công dựa trên giao thức ICMP Thông thường lệnh

“ping” được sử dụng để kiểm tra tình trạng của một host Tuy nhiên, nếu hacker

sử dụng một gói ping có độ dài lớn hơn 65536 byte thì gói này sẽ bị chia nhỏ nhưng khi được máy đích ghép là thì do gói tin quá lớn so với buffer của hệ thống nên sẽ gây crash, reboot hoặc treo

- Smurf:

Ở dạng này, hacker sẽ gửi các message đến địa chỉ IP broadcast của mạng, gây khuếch đại số lượng response Điều đáng nói là địa chỉ IP nguồn của các gói này chính là địa chỉ IP của mục tiêu, khiến cho tất cả các response đều đổ về mục tiêu Khi đó mục tiêu sẽ không thể xử lý nổi lượng dữ liệu khổng lồ đó và trở nên crash, reboot hoặc sập hoàn toàn Đặc biệt hiệu quả trong mạng LAN

Trang 28

TRƯỜNG CAO ĐẲNG NGHỀ iSPACE

240 Võ Văn Ngân, Phường Bình Thọ, Quận Thủ Đức, TpHCM Website: www.ispace.edu.vn Email: ispace@ispace.edu.vn Tel: (848) 6267 8999 - Fax: (848) 6283 7867

Việc tấn công vào tầng ứng dụng không chỉ có hệ thống dành nhiều tài nguyên cho kết nối này mà dịch vụ bị tấn công cũng phải dành một lượng tài nguyên còn lớn hơn, nhất là khi dịch vụ này chạy ở tầng ứng dụng Đặc biệt nếu trong trượng

Trang 29

TRƯỜNG CAO ĐẲNG NGHỀ iSPACE

240 Võ Văn Ngân, Phường Bình Thọ, Quận Thủ Đức, TpHCM Website: www.ispace.edu.vn Email: ispace@ispace.edu.vn Tel: (848) 6267 8999 - Fax: (848) 6283 7867

29

hợp dịch vụ chỉ cho phép một lượng kết nối nhất định trong cùng một thời điểm thì chỉ cần sử dụng một lượng kết nối tương ứng để tấn công Slowloris thì cho

dù server vẫn còn thừa nhiều tài nguyên thì cuộc tấn công vẫn đạt được mục đích

là không cho phép server cung cấp dịch vụ cho bất kì ai

Hình 18: Tấn công HTTP POST

- UDP Flood:

Đây là phương thức tấn công vô cùng nguy hiểm Tại sao nó nguy hiểm? Bởi vì các gói UDP hoàn toàn không bị ràng buộc về mặt thông số và nội dung Hacker hoàn toàn có thể biến tấu gói UDP thành nhiều kiểu thông số bất hợp lệ khiến cho việc phân tích trở nên khó khăn

Thêm vào đó UDP lại là một giao thức phi kết nối và kích thước vô cùng nhỏ gọn Điều này khiến cho việc tạo và gửi gói của UDP sẽ nhanh và mạnh hơn TCP rất nhiều lần Nghĩa là khối lượng công việc phải thực hiện khi gặp phải tấn công UDP cũng lớn hơn rất nhiều so với TCP Kể cả trong trường hợp firewall drop

bỏ toàn bộ các gói UDP đến thì nó vẫn mất một khoảng thời gian từ khi nhận được gói để đi đến bước quyết định drop bỏ phải thông qua các quá trình đánh giá phức tạp Trong một cuộc tấn công vào HVA server, các gói tin UDP đến server hoàn toàn không có giá trị cổng nguồn và đích, khiến cho kernel tự động drop các gói này nhưng vì số lượng quá lớn nên chỉ việc drop bỏ gói cũng khiến cho firewall bị trì trệ

2.3 Tổng quan firewall

2.3.1 Giới thiệu về firewall

Firewall (tường lửa) là một thiết bị phần cứng hoặc phần mềm được dùng để kiểm soát dữ liệu mạng nhằm chống lại sự truy cập trái phép và khai thác các tài nguyên nhạy cảm

Trang 30

TRƯỜNG CAO ĐẲNG NGHỀ iSPACE

240 Võ Văn Ngân, Phường Bình Thọ, Quận Thủ Đức, TpHCM Website: www.ispace.edu.vn Email: ispace@ispace.edu.vn Tel: (848) 6267 8999 - Fax: (848) 6283 7867

30

Firewall thường được đặt giữa mạng nội bộ của một công ty, doanh nghiệp, tổ chức hay một quốc gia với hệ thống Internet, hoặc giữa hai hay nhiều network khác nhau Firewall đảm bảo người quản trị có thể biết được những gì đang được trao đổi giữa mạng nội bộ và mạng Internet để đặt ra những hạn chế nhất định, nhằm bảo vệ mạng nội bộ và tránh làm thất thoát thông tin

Điểm mạnh của firewall:

- Có khả năng giám sát và bảo vệ hệ thống mạng khỏi các cuộc tấn công

- Có các tính năng mở rộng như Chất lượng dịch vụ (Quality of Service – QoS), VPN, Load balancing, …

- Hầu hết các firewall đều có chức năng NAT và Port forwarding giúp che giấu kiến trúc mạng bên trong

- Giúp người quản trị có thể giới hạn, ngăn chặn và điều tiết dữ liệu mạng, lọc các nội dung không mong muốn

Điểm yếu của firewall:

- Các cuộc tấn công ở tầng Ứng dụng có thể bị bỏ qua nếu firewall chỉ hoạt động từ tầng Transport trở xuống

- Giảm tốc độ mạng

- Firewall vẫn có thể bị tấn công hoặc bị qua mặt

- Đôi khi khó vận hành

Firewall có thể được phân loại như sau:

- Packet filter (lọc gói tin): Firewall lọc gói hoạt động ở lớp mạng của mô hình OSI,

hoặc lớp IP của mô hình TCP/IP Chúng thường là một phần của router, là thiết bị nhận gói từ một mạng và chuyển gói tới mạng khác Trong firewall lọc gói, mỗi gói được so sánh với tập các tiêu chuẩn trước khi nó được chuyển tiếp Dựa vào gói và tiêu chuẩn, firewall có thể hủy gói, chuyển tiếp hoặc gởi thông điệp tới nơi tạo gói

- Gateway mức mạng (ciruit level gateways): Gateway mức mạng hoạt động ở lớp

session của mô hình OSI, hoặc lớp TCP của mô hình TCP/IP Chúng giám sát việc thỏa hiệp TCP giữa các gói để xác định rằng một phiên yêu cầu là phù hợp Thông tin tới máy tính từ xa thông qua một gateway mức mạng, làm cho máy tính ở xa đó nghĩ là thông tin đến từ gateway Điều này che dấu được thông tin về mạng được bảo vệ

- Gateway mức ứng dụng (application level gateways): Các gateway mức ứng dụng,

còn được gọi là các proxy, tương tự như các gateway mức mạng ngoại trừ việc chỉ định các ứng dụng Chúng có thể lọc gói ở lớp ứng dụng của mô hình OSI Các gói

Trang 31

TRƯỜNG CAO ĐẲNG NGHỀ iSPACE

240 Võ Văn Ngân, Phường Bình Thọ, Quận Thủ Đức, TpHCM Website: www.ispace.edu.vn Email: ispace@ispace.edu.vn Tel: (848) 6267 8999 - Fax: (848) 6283 7867

31

vào hoặc ra không thể truy cập các dịch vụ mà không có proxy Ví dụ: Gauntlet, Symantec Enterprise Firewall…

- Firewall nhiều lớp (stateful firewall): Các firewall nhiều lớp là sự kết hợp hình thức

của ba loại firewall Chúng lọc các gói ở lớp mạng, xác định các gói phù hợp và đánh giá nội dung các gói tại lớp ứng dụng Ví dụ: IP Tables, Netscreen,…

2.3.2 Giới thiệu về Iptables

Iptables là một stateful firewall được tạo ra bởi Netfilter Organization, có tiền thân là Ipchains – một stateless firewall) Iptables được tích hợp sẵn trên Linux gồm phần Netfilter nằm trong nhân Linux và Iptables nằm ngoài nhân Ưu điểm của Iptables là phần Netfilter làm việc trực tiếp trong nhân nên rất nhanh, hạn chế việc giảm tốc độ hệ thống

Iptables chia làm các bảng (table):

- Bảng FILTER dùng để lọc gói dữ liệu

- Bảng NAT

- Bảng MANGLE để thay đổi các thông số trong gói tin

Mỗi table lại chia làm nhiều chain Mỗi chain là tập hợp của một hay nhiều rule để xử lý

dữ liệu Một rule gồm một tập các điều kiện và các hành động sẽ được thực thi nếu một gói tin thỏa điều kiện đó Các hành động của Iptables bao gồm: ACCEPT, DROP, REJECT, LOG, REDIRECT, … hoặc là đẩy sang chain khác

Mặc định nếu không khai báo table, Iptables sẽ đưa tất cả các rule vào table FILTER Table FILTER có sẵn 3 chain là INPUT, OUTPUT và FORWARD

Dưới đây là sơ đồ xử lý gói tin của Netfilter:

Trang 32

TRƯỜNG CAO ĐẲNG NGHỀ iSPACE

240 Võ Văn Ngân, Phường Bình Thọ, Quận Thủ Đức, TpHCM Website: www.ispace.edu.vn Email: ispace@ispace.edu.vn Tel: (848) 6267 8999 - Fax: (848) 6283 7867

32

Hình 19: Sơ đồ xử lý của Netfilter

Trước tiên một gói dữ liệu từ card mạng sẽ được chuyển lên chain PREROUTING Tại đây,

dữ liệu có thể được thay đổi thông số (mangle) hay đổi địa chỉ IP đích (DNAT) trước khi định tuyến Sau khi được xử lý bởi các table như MANGLE, NAT gói tin sẽ đi đến table FILTER Sau đó, sẽ chia ra làm 2 trường hợp:

- Hệ thống hiện tại chính là đích đến: gói tin được đưa vào chain INPUT Tại đây, các rule trong chain INPUT được thực thi, nếu gói này được cho phép thì sẽ được chuyển cho ứng dụng/ dịch vụ đích xử lý Sau đó dữ liệu được chuyển ra chain OUTPUT Tại đây gói tin lại tiếp tục được xử lý bởi các luật và đưa ra quyết định cho phép hay hủy gói

- Hệ thống hiện tại làm nhiệm vụ forward gói: gói tin được đưa vào xử lý với các luật tại chain FORWARD

Sau khi gói tin được cho phép ở chain FORWARD hoặc OUTPUT thì sẽ đến chain POSTROUTING (sau khi định tuyến) Tại đây có thể thay đổi tham số IP nguồn (SNAT) hoặc MASQUERADE và đưa ra card mạng khác để đến với máy tính đích

Trang 33

TRƯỜNG CAO ĐẲNG NGHỀ iSPACE

240 Võ Văn Ngân, Phường Bình Thọ, Quận Thủ Đức, TpHCM Website: www.ispace.edu.vn Email: ispace@ispace.edu.vn Tel: (848) 6267 8999 - Fax: (848) 6283 7867

33

Một điểm rất mạnh của Iptables là ta có thể tạo các chain để xử lý những gói tin nằm trong trường hợp chỉ định Ví dụ như tất cả các gói TCP đi vào cổng 80 thì sẽ chỉ được các rule nằm trong một chain nào đó xử lý, hạn chế việc phải trải qua các loại rule không phù hợp như rule kiểm tra UDP, rule kiểm tra các gói TCP đi vào cổng khác Điều này cũng giúp các rule của Iptables trở nên dễ quản lý hơn

Một điểm đáng chú ý nữa là Iptables có một lượng module hỗ trợ lớn, khiến cho nó ngày càng linh hoạt và đa dụng hơn

Chính vì những điểm mạnh của Iptables nên ta sẽ sử dụng nó làm firewall ở tầng Internet

và Transport kết hợp cùng với ModSecurity là firewall ở tầng ứng dụng

2.3.3 Giới thiệu về ModSecurity

ModSecurity là một module Web Application Firewall (WAF) mã nguồn mở đa nền tảng Được xem là “Swiss Army Knife” trong các ứng dụng WAF, nó cho phép các nhà bảo vệ ứng dụng web xem xét lưu lượng HTTP hoặc HTTPS và cung cấp một cú pháp viết luật và API để thực hiện các biện pháp bảo mật tiên tiến

Các chức năng của ModSecurity:

- Parsing: ModSecurity sẽ phân tách các dữ liệu luân chuyển qua hệ thống thành cấu

trúc dữ liệu mà ModSecurity định nghĩa sẵn Cấu trúc này sẽ được chuyển qua cơ chế so trùng mẫu trong tập rule để phân tích nguy cơ

- Buffering: Chức năng buffer (đệm) đóng vai trò khá quan trọng trong cơ chế hoạt

động của ModSec Việc này có ý nghĩa khi các request gởi đến ứng dụng web thì phải thông qua ModSecurity trước khi đến ứng dụng xử lý và những response cũng

sẽ được phân tích trước khi trả về phía client Cơ chế này là cách duy nhất để có thể ngăn chặn các cuộc tấn công thời gian thực, các dữ liệu mà ModSecurity nhận được

và phân tích sẽ được lưu trữ trong RAM (bao gồm request body và response data)

- Logging: ModSecurity hỗ trợ ghi nhật ký các gói tin HTTP: request headers, request

body, response header, response body nhằm hỗ trợ người quản trị phân tích nguy cơ

mà hệ thống đang gặp phải để có thể ra quyết định kiểm soát

Trang 34

TRƯỜNG CAO ĐẲNG NGHỀ iSPACE

240 Võ Văn Ngân, Phường Bình Thọ, Quận Thủ Đức, TpHCM Website: www.ispace.edu.vn Email: ispace@ispace.edu.vn Tel: (848) 6267 8999 - Fax: (848) 6283 7867

34

- Rule Engine: Các tập mẫu trong ModSecurity đóng vai trò quan trọng trong việc

phát hiện các dạng tấn công và thực hiện phòng chống ModSecurity cùng phát triển với dự án OWASP phát triển các mẫu để phân tích và phòng chống các tấn công hệ thống web

2.4 Dịch vụ theo dõi tiến trình Monit

Monit là một tiện ích mã nguồn mở để quản lý và giám sát các hệ thống Unix Monit tự động bảo trì và sửa chữa và thực hiện các hành động khi có một lỗi xảy ra

Hình 20: Monit Service Manager

Hầu hết các hệ điều hành Unix hiện tại đều hỗ trợ Monit

Các tính năng của Monit:

- Proactive: Monit có thể hành động nếu một lỗi xảy ra Ví dụ: nếu sendmail không chạy,

Monit có thể khởi động lại sendmail một cách tự động hoặc nếu Apache tiêu tốn quá nhiều tài nguyên (như khi bị DDoS), Monit có thể tạm ngưng hoặc khởi động lại Apache

và gửi cho ta một cảnh báo Monit cũng có thể giám sát các thông số của tiến trình như: lượng RAM hay CPU sử dụng

- Processes: Ta có thể dùng Monit để giám sát cái tiến trình daemon hoặc chương trình

tương tự thế đang chạy trên localhost Monit đặc biệt hữu dụng trong việc giám sát các tiến trình daemon, như là có thể khởi động Apache, MySQL, SSHD, Sendmail từ /etc/init khi hệ thống khởi động

- Files, Dirs và Filesystems: Ta cũng có thể sử dụng Monit để giám sát file, thư mục, và

filesystems trên localhost Monit có thể giám sát sự thay đổi của chúng Đây cũng là một tính năng hữu ích đối với việc bảo mật Ta có thể giám sát những file có nội dung tĩnh và thực hiện các hành động cụ thể nếu chúng bị thay đổi

Ngày đăng: 27/12/2018, 13:42

TỪ KHÓA LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w