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

TÌM HIỂU tấn CÔNG từ CHỐI DỊCH vụ DOS

76 312 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 76
Dung lượng 2,03 MB

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

Nội dung

Hoạt động này bắt nguồn từ khi một số chuyên gia bảo mật, trong quá trình phát hiện khiếm khuyết hệ thống trên hệ điều hành Windows 98, đã phát hiện ra rằng chỉ cần gửi một gói dữ liệu p

Trang 1

ĐẠI HỌC TÔN ĐỨC THẮNG

THÂN HOÀNG HẢI

TÌM HIỂU TẤN CÔNG TỪ CHỐI

DỊCH VỤ DOS

Chuyên ngành : Công nghệ thông tin

Mã số : 01.01.11

Luận Văn Cử Nhân Khoa Học Tin Học

Người hướng dẫn khoa học :

NINH XUÂN HƯƠNG

THÀNH PHố Hồ CHÍ MINH 2008

Trang 2

TỔNG LIÊN ĐOÀN LAO ĐỘNG VIỆT NAM

ĐẠI HỌC TƠN ĐỨC THẮNG

THÂN HỒNG HẢI

TÌM HIỂU TẤN CƠNG TỪ CHỐI

DỊCH VỤ DOS

Chuyên ngành : Cơng nghệ thơng tin

Mã số : 01.01.11

Luận Văn Cử Nhân Khoa Học Tin Học

Người hướng dẫn khoa học :

NINH XUÂN HƯƠNG

THÀNH PHố Hồ CHÍ MINH 2008

Trang 3

Lời cảm ơn

Sau gần hơn 4 tháng nỗ lực thực hiện luận văn “Tìm hiểu tấn công từ chối dịch

vụ DOS” đã hoàn thành Ngoài sự cố gắng hết mình của bản thân, em đã nhận được

sự giúp đỡ và khích lệ rất nhiều từ phía nhà trường, thầy cô, gia đình, bạn bè

Trước hết con xin cám ơn ba mẹ đã luôn động viên và tạo mọi điều kiện tốt để con học tập và hoàn thành luận văn tốt nghiệp này

Em xin cám ơn thầy cô trường Đại Học Tôn Đức Thắng đã truyền đạt những kiến thức quý báu cho em trong suốt quá trình học tập Đặc biệt em xin bày tỏ lòng chân thành sâu sắc đến thầy Ninh Xuân Hương, người đã tận tình hướng dẫn và giúp

đỡ em trong quá trình làm luận văn tốt nghiệp

Xin cám ơn tất cả bạn bè đã và đang động viên, giúp đỡ tôi trong quá trình hoc tập và hoàn thành luận văn tốt nghiệp này

Mặc dù em đã làm việc nghiêm túc và rất cố gắng hoàn thành luận văn, nhưng chắc chắn sẽ không tránh khỏi những thiếu sót, kính mong sự cảm thông và tận tình chỉ bảo của quý Thầy Cô và các bạn

Thành Phố Hồ Chí Minh Sinh viên thực hiện Thân Hoàng Hải

Trang 5

Mục tiêu chính của luận văn là tìm hiểu về cơ chế tấn công DOS và DDOS, tìm hiểu về một số công cụ tấn công DOS và DDOS, và viết một chương trình tấn công

Nội dung luận văn :

 Giới thiệu đề tài

 Giới thiệu DOS

 Các phương thức và một số chương trình tấn công DOS

 Giới thiệu về DDOS

 Các phương thức và một số chương trình tấn công DDOS

 Viết chương trình tấn công

 Kết luận và đề xuất ý kiến

Trang 6

Lời Mở Đầu 1

Chương 1 :Tấn công từ chối dịch vụ DOS(Denial of Services) 2

1 Tấn công từ chối dịch vụ là gì 2

1.1 Sự ra đời của DOS 2

1.2 Tấn công bằng từ chối dịch vụ DoS 2

1.3 Mục đích tấn công DOS 2

2 Các phương thức tấn công 2

2.1 DOS attack 2

2.1.1 Smurf Attack 3

2.1.2 Buffer OverFlow Attack 5

2.1.3 Ping of Dead Attack 5

2.1.4 TearDrop Attack 6

2.1.5 SYN Attack 7

2.2 DOS attack tool 11

2.2.1 IMGP nuke tool 11

2.2.2 UDP flood tool 16

2.2.3 DOS HTTP tool 17

2.2.4 SYN DOS tool 19

2.2.5 Smurf tool 21

2.2.6 CrazyPing 22

3 Một số phương pháp phòng chống DOS 23

3.1 Cập nhật bản vá lỗi 23

3.2 Đóng cửa các dịch vụ không cần thiết 24

3.3 Bảo dưỡng 24

3.4 Khóa các dịch vụ mạng 24

3.5 Các phương pháp phòng ngừa 27

Chương 2 : Tấn công từ chối dịch vụ DDOS(Distributed Denial of Servies) 28

Trang 7

1.2 Tình hình tấn công DDOS những năm gần đây 29

1.3 Các giai đoạn tấn công cơ bản của DDOS 29

1.4 DDOS có 2 mô hình chính 30

1.4.1 Mô hình Agent-Handler 31

1.4.2 Mô hình IRC- Base 32

1.5 Giới thiệu về Bot và Botnet 33

1.5.1 Bot 33

1.5.2 IRC 34

1.5.3 Các Bot kết nối với IRC như thế nào? 35

1.5.4 Các ứng dụng của Bot 36

1.5.5 Một số kiểu Bot 38

1.5.6 Phân tích một Bot lây nhiễm vào máy tính 40

1.5.7 Cách bảo vệ máy tính để tránh trở thành Bot 41

1.5.8 Xuất hiện biến thể của Botnet trên P2P 41

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

2.1 Mô hình tổng quan 42

2.2 Những kiểu tấn công làm cạn kiệt băng thông mạng 43

2.2.1 Food Attack 43

2.2.2 Amplification Attack 44

2.3 Những kiểu tấn công làm cạn kiệt tài nguyên 46

2.3.1 Khai thác lỗ hổng giao thức 46

2.3.2 Malformed packet Attack 47

3 Giới thiệu một số chương trình DDOS 47

3.1 Công cụ DDOS dạng Agent-Handler 48

3.2 Công cụ DDOS dạng IRC-Base 52

4 Một số phương pháp chống DDOS 53

4.1 Các bước phòng chống DDOS 54

4.2 Một số phương pháp khuyên người dùng bảo vệ 56

Trang 8

2 Chức năng chương trình 57

Chương 4 : Kết luận và đề xuất ý kiến 62

1 Kết luận đề tài 62

2 Hạn chế 62

3 Hướng phát triển đề tài 62

Tài liệu tham khảo 63

Danh Mục Hình Hình 1.1 – Smurf attack 3

Hình 1.2 – Amplifiers attack 4

Hình 1.3 – TearDrop attack 7

Hình 1.4 – Ba bước kết nối mạng 8

Hình 1.5 – Syn attack 8

Hình 1.6 – Check point 10

Hình 1.7 – Protect Syn attack 10

Hình 1.8 – Chương trình IGMP nuke 11

Hình 1.9 – Kết quả tấn công IGMP nuke 12

Hình 1.10 – Giao thức IMGP nuke 13

Hình 1.11 – IP source 14

Hình 1.12 – Packet IGMP nuke 15

Hình 1.13 – Chương trình UDP flood 16

Hình 1.14 – Kết quả tấn công UDP flood 17

Trang 9

Hình 1.17 – Chương trình SYN DOS 19

Hình 1.18 – Chương trình tìm port mở 20

Hình 1.19 – Kết quả tấn công SYN DOS 20

Hình 1.20 – Chương trình smurf 21

Hình 1.21 – Địa chỉ broadcast 21

Hình 1.22 – Chương trình CrazyPing 22

Hình 1.23 – Lệnh Ping 22

Hình 1.24 – Kết quả Crazy Ping 23

Hình 2.1 – Mạng Botnet 30

Hình 2.2 – Sơ đồ phân lọai DDOS 31

Hình 2.3 – Agent-Handler 31

Hình 2.4 – IRC-Base 33

Hình 2.5 – IRC attack 37

Hình 2.6 – quá trình nhiễm bot 40

Hình 2.7 – Mô hình tổng quan 42

Hình 2.8 – Flood attack 43

Hình 2.9 – Amplification attack 45

Hình 2.10 – IRC SYN attack 46

Hình 2.11 – Code TFN 50

Hình 2.12 – Code TFN2k 51

Hình 2.13 – Super Nova3 53

Hình 2.14 – Ping Flood 57

Hình 2.15 – Kết quả Ping Flood 58

Hình 2.16 – Bot 59

Hình 2.17 – Chương trình chạy ẩn 59

Hình 2.18 – Kết quả Bot 60

Hình 2.19 – Chương trình minh họa 60

Hình 2.20 – IGMP 61

Trang 11

Nhận Xét Của Giáo Viên Hướng Dẫn

Tp.Hồ Chí Minh ,ngày … tháng … năm 2008

Trang 12

Nhận Xét Giáo Viên Phản Biện

Tp.Hồ Chí Minh ,ngày … tháng … năm 2008

Trang 13

Sinh Viên Thực Hiện: Thân Hoàng Hải - 810875T Trang 1

LỜI NÓI ĐẦU

Ngày nay khi Internet được phổ biển rộng rãi trên phạm vi toàn thế giới, tất

cả mọi người từ cá nhân, tập thể, đến công ty đều hoạt động kinh doanh trên Internet Vấn đề nảy sinh khi nhiều ứng dụng hay hệ điều hành bị lỗi đã trở thành nguy cơ tìm ẩn cho các cuộc tấn công DOS và DDOS

Ngày 7/3/2000 Yahoo bị tấn công phải ngừng cung cấp dịch vụ cho hàng trăm triệu user trên toàn thế giới nhiều giờ liền

Vài ngày sau, có một sự kiện tương tự diễn ra nhưng có phần “ồn ào hơn” do các nạn nhân của vụ tấn công là CNN, amazon.com, buy.com,ebay.com….Tất cả các nạn nhân đều là những gã khổng lồ trên internet thuộc nhiều lĩnh vực khác nhau Theo YankkGroup tổng thiệt hại lên đến 1.2 triệu USD

Và ở Việt Nam, nổi bật nhất là sự kiện công ty Việt Cơ bị tấn công DDOS và đứng trước nguy cơ bị phá sản

Qua các cuộc tấn công thấy được sự tàn phá của các cuộc tấn công DOS là rất nguy hiểm Nó sẽ ảnh hưởng rất nhiều đến hoạt động kinh doanh Và việt nam với nền thương mại điện tử non trẻ khó có thể cầm cự nếu như phải chịu các cuộc tấn công liên tiếp như vậy

Nhưng công nghệ thông tin ngày càng phát triển và dễ dàng tiếp cận với mọi người thì các cuộc tấn công liên tiếp xảy ra khắp nơi khi các công cụ tấn công được lan truyền khắp nơi trên internet và ai cũng có thể tấn công DOS

Một cậu bé 15 tuổi có nick name là Mafiaboy, cậu bé này chỉ tìm tòi và dowload một số công cụ của hacker Cậu bé này dùng công cụ DDOS có tên là TrinOO để gây nên các cuộc tấn công vào Yahoo

Một đặc điểm chết người của DDOS đã được rút ra sau các cuộc tấn công “ rất dễ thực hiện, không thể tránh, hậu quả nặng nề “ và khó có thể truy tìm nguồn gốc tấn công

Chính những điều đó nên luận văn này được thực hiện để tìm hiểu và nghiên cứu các phương thức tấn công của DOS và DDOS Và từ đó để tìm ra các phương pháp bảo vệ và phòng thủ trước các cuộc tấn công Và mong tài liệu này sẽ có ích cho các nhà quản trị mạng để hiểu thêm về DOS

Trang 14

Sinh Viên Thực Hiện: Thân Hoàng Hải - 810875T Trang 2

CHƯƠNG 1: TẤN CÔNG TỪ CHỐI DỊCH

VỤ DOS (DENIAL OF SERVICES)

1 Tấn công từ chối dịch vụ DoS là gì ?

1.1 Sự ra đời của DOS:

Từ cuối những năm 90 của thế kỷ trước Hoạt động này bắt nguồn từ khi một số chuyên gia bảo mật, trong quá trình phát hiện khiếm khuyết hệ thống trên hệ điều hành Windows 98, đã phát hiện ra rằng chỉ cần gửi một gói dữ liệu ping có dung lượng lớn cũng đủ để làm tê liệt một server mục tiêu Phát hiện này sau đó ngay lập tức được giới hacker sử dụng để triệt tiêu những đối tượng mà họ có ý định tấn

công Từ đây, hình thức sơ khai của DoS (Denial of Service) đã ra đời

1.2 Tấn công bằng từ chối dịch vụ DoS (Denial of Service):

Có thể mô tả như hành động ngăn cản những người dùng hợp pháp khả năng truy cập và sử dụng vào một dịch vụ nào đó Nó bao gồm làm tràn ngập mạng, mất

kết nối với dịch vụ… Mục đích cuối cùng là máy chủ (Server) không thể đáp ứng được các yêu cầu sử dụng dịch vụ từ các máy trạm (Client)

Trang 15

Sinh Viên Thực Hiện: Thân Hoàng Hải - 810875T Trang 3

2.1.1 Smurf Attack

Hình 1.1 – Smurf Attack

Hai nhân tố chính trong Smuft Attack là các ICMP echo request packets và chuyển trực tiếp các packets đến các địa chỉ broadcast

+ Giao thức ICMP thường dùng để xác định một máy tính trên mạng Internet

có còn hoạt động(alive) hay không Để xác định một máy có alive không, bạn cần gởi một ICMP echo request đến máy đó Khi máy nhận được packet này, nó sẽ gởi trả lại một ICMP echo reply packet Trong trường hợp không nhận được ICMP echo reply packet, điều này có nghĩa là máy đó không còn hoạt động (not alive) Đây cũng chính là cách hoạt động của các chương trình ping

+ Mỗi mạng máy tính đều có địa chỉ địa chỉ broadcast và địa chỉ mạng Địa chỉ broadcast có các bit host đều bằng 0 và địa chỉ broadcast có các bit host đều bằng 1

Ví dụ: địa chỉ ip lớp B 140.179.220.200 sẽ có địa chỉ mạng là 140.179.0.0 và địa chỉ broadcast mặc định là 140.179.0.0 Khi một packet được gởi đến địa chỉ broadcast, lập tức packet này sẽ được chuyển đến tất cả các máy trong mạng

Trong Smurf Attack, cần có ba thành phần: hacker (người ra lệnh tấn công), mạng khuếch đại (sẽ nghe lệnh của hacker) và dĩ nhiên là hệ thống nạn nhân

Hacker sẽ gởi các ICMP echo request packets đến địa chỉ broadcast

ICMP echo request packets này có địa chỉ ip nguồn chính là địa chỉ ip của nạn nhân

Trang 16

Sinh Viên Thực Hiện: Thân Hoàng Hải - 810875T Trang 4

Khi các packets đó đến được địa chỉ broadcast của mạng khuếch đại, lập tức tất cả các máy tính trong mạng khuếch đại sẽ nhận được các packets này Các máy này tưởng rằng máy tính nạn nhân đã gởi ICMP echo request packets đến (do hacker đã làm giả địa chỉ ip nguồn), lập tức chúng sẽ đồng loạt gởi trả lại hệ thống nạn nhân các ICMP reply echo request packets Hệ thống máy nạn nhân sẽ không chịu nỗi một khối lượng khổng lồ các packets này và nhanh chóng bị ngừng hoạt động, crash hoặc reboot

Như vậy, có thể thấy rằng hacker chỉ cần gởi một lượng nhỏ các ICMP echo request packets đi, và hệ thống mạng khuếch đại sẽ khuếch đại lượng ICMP echo request packets này lên gấp bội Tỉ lệ khuếch đại phụ thuộc vào số mạng tính có trong mạng khuếch đại Nhiệm vụ của các hacker là cố chiếm được càng nhiều hệ thống mạng hoặc routers cho phép chuyển trực tiếp các packets đến địa chỉ broadcast và không lọc địa chỉ nguồn của các outgoing packets Có được các hệ thống này, hacker sẽ dễ dàng tiến hành Smurf Attack trên các hệ thống cần tấn công

Hình 1.2 – Amplifiers attack

Trang 17

Sinh Viên Thực Hiện: Thân Hoàng Hải - 810875T Trang 5

Cách khắc phục:

Tránh bị dùng làm địa điểm khuếch đại:

- Vô hiệu hóa chức năng directed broadcast tại bộ định tuyến Đối với bộ định

tuyến Cisco dùng lệnh: no ip directed-broadcast

- Lập cấu hình cho hệ điều hành loại bỏ các gói dữ liệu broadcast ICMP echo một cách âm thầm

-Kiểm soát lưu lượng ICMP và UDP

- Phối hợp với nhà kết nối kiểm soát theo dõi lưu lượng (tốt nhất là tận

nơixuất phát lưu lượng)

2.1.2 Buffer Overflow Attack

Buffer overflow xảy ra khi chương trình gi dữ liệu vào buffer có dung lượng lớn hơn dung lượng vùng nhớ

Kẻ tấn công sẽ sửa thông tin dữ liệu để điều khiển chương trình đang thực thi

và cho chạy những đoạn mã độc hại thay vì xữ lý chương trình bình thường

Gởi tin nhắn email mà tên file 256 kí tự có thể gây ra Buffer Overflow

Cách khắc phục:

- Viết chương trình quản lý bộ nhớ tốt

- Tránh các lỗi tràn bộ đệm

2.1.3 Ping of Dead Attack

Kiểu tấn công ping of death dùng giao thức ICMP Bình thường, ping được dùng để kiểm tra xem một host có sống hay không Một lệnh ping thông thường có hai thông điệp echo request và echo reply

Tiến trình ping bình thường diễn ra như sau:

C:\>ping192.168.10.10

Pinging192.168.10.10 with 32 bytes of data:

Reply from 192.168.10.10: bytes=32 time=1ms TTL=150

Reply from 192.168.10.10: bytes=32 time=1ms TTL=150

Reply from 192.168.10.10: bytes=32 time=1ms TTL=150

Reply from 192.168.10.10: bytes=32 time=1ms TTL=150

Ping statistics for 192.168.10.10:

Packets: Sent = 4, Received = 4, Lost = 0 (0% loss)

Trang 18

Sinh Viên Thực Hiện: Thân Hoàng Hải - 810875T Trang 6

Approximate round trip times in milli-seconds: Minimum = 1ms, Maximum = 1ms, Average = 1ms

Khi tấn công bằng Ping of Death, một gói tin echo được gửi có kích thước lớn hơn kích thước cho phép là 65,536 bytes Gói tin sẽ bị chia nhỏ ra thành các segment nhỏ hơn, nhưng khi máy đích ráp lại, host đích nhận thấy rằng là gói tin quá lớn đối với buffer bên nhận Kết quả là, hệ thống không thể quản lý nổi tình trạng bất thường này và sẽ reboot hoặc bị treo

Bạn có thể thực hiện ping of Deatch trong linux bằng cách dùng lệnh ping f

-x 65537 Chú ý từ khóa -f Từ khóa này ra lệnh cho máy gửi ra các gói tin càng nhanh càng tốt Trong WinXP bạn có thể dùng câu lệnh sau để ping of dead:

Ping - t - l 65500 192.168.1.2 ( với thông số -t là ping liên tục, -l la kích thước file là 65500 byte )

Tấn công DOS thường không chỉ là tổng lưu lượng hay kích thước lưu lượng

mà còn là tốc độ mà ở đó gói tin gửi đến máy đích Có thể thực hiện các công cụ sau để thực hiện tấn công Ping of Death

Ping of Death chỉ có tác dụng trên các hệ win9x

Ví dụ: có một dữ liệu gồm 4000 bytes cần được chuyển đi, giả sử rằng 4000 bytes này được chia thành 3 gói nhỏ(packet):

Trang 19

Sinh Viên Thực Hiện: Thân Hoàng Hải - 810875T Trang 7

packet thứ nhất sẽ mang các 1 bytes dữ liệu từ 1 đến 1500

packet thứ hai sẽ mang các bytes dữ liệu từ 1501 đến 3000

packet thứ ba sẽ mang các bytes dữ liệu còn lại, từ 3001 đến 4000

Khi các packets này đến đích, hệ thống đích sẽ dựa vào offset của các gói packets để sắp xếp lại cho đúng với thứ tự ban đầu: packet thứ nhất -> packet thứ hai -> packet thứ ba

Trong tấn công Teardrop, một loạt gói packets với giá trị offset chồng chéo lên nhau được gởi đến hệ thống đích Hệ thống đích sẽ không thể nào sắp xếp lại các packets này, nó không điều khiển được và có thể bị crash, reboot hoặc ngừng hoạt động nếu số lượng packets với giá trị offset chồng chéo lên nhau quá lớn Hãy xem lại ví dụ trên, đúng ra các packet được gởi đến hệ thống đích có dạng như sau: (1->1500 bytes đầu tiên) (1501->3000 bytes tiếp theo) (3001->4000 bytes sau cùng), trong tấn công Teardrop sẽ có dạng khác: (1->1500 bytes) (1501-

>3000 bytes) (1001->4000 bytes) Gói packet thứ ba có lượng dữ liệu sai

Hình 1.3 – Teardrop attack

2.1.5 SYN Attack

Trước hết, bạn hãy xem lại tiến trình bắt tay 3 bước của một kết nối TCP/IP Một client muốn kết nối đến một host khác trên mạng

Trang 20

Sinh Viên Thực Hiện: Thân Hoàng Hải - 810875T Trang 8

Hình 1.4 – Ba bước kết nối mạng

Bước 1: client gởi một SYN packet với số Sequence Number ban đầu (ISN)

đến host cần kết nối: client SYN packet >host

Bước 2: host sẽ phản hồi lại client bằng một SYN/ACK packet, ACK của

packet này có giá trị đúng bằng ISN ban đầu do client gởi đã gởi đến host ở bước 1

và chờ nhận một ACK packet từ client host SYN/ACK packet > client

Bước 3: client phản hồi lại host bằng một ACK packet client ACK packet

> host

Khi host nhận được ACK packet này thì kết nối được thiết lập, client vào host

có thể trao đổi các dữ liệu cho nhau

Hình 1.5 – Syn attack

Trang 21

Sinh Viên Thực Hiện: Thân Hoàng Hải - 810875T Trang 9

Trong SYN Attack, hacker sẽ gởi đến hệ thống đích một loạt SYN packets với địa chỉ ip nguồn không có thực Hệ thống đích khi nhận được các bad SYN packets này sẽ gởi trở lại SYN/ACK packet đến các địa chỉ không có thực này vào chờ nhận được ACK messages từ các địa chỉ ip đó Vì đây là các địa chỉ ip không

có thực, hệ thống đích sẽ sẽ chờ đợi vô ích và còn nối đuôi các "request" chờ đợi này nào hàng đợi, gây lãng phí một lượng đáng kể bộ nhớ trên máy chủ mà đúng ra

là phải dùng vào việc khác thay cho phải chờ đợi ACK messages

Cách khắc phục:

Có 3 cách cơ bản để khắc phục cuộc tấn công này:

- Giảm thời gian kết thúc kết nối (timeout) ở tr ên máy bị tấn công

- Sử dụng tường lửa ( firewall ) làm việc như hệ thống trung gian giữa giao tiếp các kết nối TCP đến server

- Sử dụng nhiều server thuê: nếu có đủ server để đáp ứng yêu cầu request

Nhưng cách này có nhiều giới hạn

Bảo vệ Microsoft Window trước nguy cơ tấn công SYN flood:

Window có cơ chế kiểm tra và bảo vệ trước tấn công SYN flood Cơ chế này sẽ kiểm tra khi thấy dấu hiệu tấn công thì sẽ giảm thời gian server gởi gởi các kết nối Request

Khi bật chế độ này lên, thì màn hình hệ thống kết nối sẽ được duy trì và bảo

vệ tấn công SYN flood, các dấu hiệu của SYN flood :

- Tổng số lượng kết nối vào cổng mở (SYN-RCVD) vượt qua giá trị của

TcpMaxHalfOpen

- Tổng số lượng kết nối vào các port mở (SYN-RCVD) sau khi có một

connect request vào thì vượt qua giá trị TcpMaxHalfOpenRetried

- Số lượng kết nối Request tới hệ thống bị từ chối vượt qua giá trị

TcpMaxPortsExhausted

Những cấu hình cần thiết lập của window:

hkey_local_machine \system \currentcontrolset \services\tcpip \parameters

\synattackprotect=1 REG_DWORD

hkey_local_machine \system \currentcontrolset \services\tcpip \parameters

\tcpmaxconnectresponseretransmissions=2 REG_DWORD

Trang 22

Sinh Viên Thực Hiện: Thân Hoàng Hải - 810875T Trang 10

hkey_local_machine \system \currentcontrolset \services\tcpip \parameters

Hình 1.7 – Protect Syn attack

Điều này giúp cho server tránh bị quá tải kết nối khi bị tấn công

Trang 23

Sinh Viên Thực Hiện: Thân Hoàng Hải - 810875T Trang 11

2.2 Dos Attack Tool

Hình 1.8 – Chương trình IGMP nuke

Chương trình IGMP nuke sẽ gởi liên tục các gói tin có kích thước lớn qua máy Server 2003

Làm cho mạng của máy này hết băng thông

Chương trình này không làm cho CPU của máy bị tấn công quá tải

Trang 24

Sinh Viên Thực Hiện: Thân Hoàng Hải - 810875T Trang 12

Hình 1.9 – Kết quả tấn công IMGP nuke

Dùng chương trình Ethreal để bắt các gói tin của chương trình IMGPnuke Trong 10s chương trình gởi tổng dung lượng là 105mb chiếm băng thông 100%

Các gói tin được gởi theo giao thức IP

Các gói tin chuẩn IGMP

Kích thước 60000byte được chia nhỏ ra gởi

Trang 25

Sinh Viên Thực Hiện: Thân Hoàng Hải - 810875T Trang 13

Hình 1.10 – Giao thức IGMP nuke

Có thể xác định thuộc tính của gói tin IGMP một cách r õ ràng

Chương trình này khi tấn công có nhược điểm có thể xác định được nguồn gốc tấn công Chương trình này không có giả mạo địa chỉ IP nguồn

Trang 26

Sinh Viên Thực Hiện: Thân Hoàng Hải - 810875T Trang 14

Hình 1.11 – IP source

Gói tin 60000 byte được cắt ra thành nhiều phần để gởi nhằm flood đường mạng máy đích

Trang 27

Sinh Viên Thực Hiện: Thân Hoàng Hải - 810875T Trang 15

Hình 1.12 – Packet IGMP nuke

Trang 28

Sinh Viên Thực Hiện: Thân Hoàng Hải - 810875T Trang 16

2.2.2 UPD flood

Hình 1.13 – Chương trình UDP Flood

Chương trình UDP flood được thử trên Win Server 2003 không làm tốn nhiều băng thông mạng

Nhưng làm cho CPU của máy sử dụng dao động từ 20% -> 85%

UDP Flood là một chương trình gửi các gói tin UDP

Nó gửi ra ngoài những gói tin UDP tới một địa chỉ IP và port không cố định,

có thể dùng thêm một số chương trình để kiểm tra port của máy đích, để xác định máy đích mở port bao nhiêu, và khi đó sẽ tấn công vào port đó

Gói tin có khả năng là một đoạn mã văn bản hay một số lượng dữ liệu được sinh ngẫu nhiên hay từ một file

Được sử dụng để kiểm tra khả năng đáp ứng của Server

Nhược Điểm:

Chương trình này có mục chỉnh dung lượng đường mạng thích hợp nhưng chỉ

có thể tấn công 1 máy có cùng băng thông với mình, khó có thể tấn công các server

có đường truyền lớn

Với các đường truyền server hiện nay thì chương trình này còn ít khả năng tấn công

Trang 29

Sinh Viên Thực Hiện: Thân Hoàng Hải - 810875T Trang 17

Hình 1.14 – Kết quả tấn công UDP Flood

2.2.3 DOS HTTP

Hình 1.15 – Chương trình DOS HTTP

Trang 30

Sinh Viên Thực Hiện: Thân Hoàng Hải - 810875T Trang 18

Chương trình này làm cho máy hết băng thông mạng 100%

Và làm cho CPU quá tải 100%

Chương trình này tấn công vào port 80

Chương trình này thích hợp cho tấn công các trang web, khả năng thành công rất cao, khiến server hoạt động hết công suất

Hình 1.16 – Kết quả tấn công DOS HTTP

Trang 31

Sinh Viên Thực Hiện: Thân Hoàng Hải - 810875T Trang 19

2.2.4 SYN DOS

Hình 1.17 – Chương trình SYN DOS

Chương trình SYNDOS này tấn công theo kiểu SYN flood attack Gởi những gói tin SYN kết nối liên tục với địa chỉ IP giả mạo để tấn công

Chương trình này có thể chọn địa chỉ IP giả mạo tùy ý

Để tấn công phải dùng chương trình tìm port server đang mở Và tấn công vào port đó

Ví dụ chương trình tìm port mở của server: thấy server mở port 139 và

chương trình sẽ tấn công vào port 139

Trang 32

Sinh Viên Thực Hiện: Thân Hoàng Hải - 810875T Trang 20

Trang 33

Sinh Viên Thực Hiện: Thân Hoàng Hải - 810875T Trang 21

Trang 34

Sinh Viên Thực Hiện: Thân Hoàng Hải - 810875T Trang 22

Chương trình này gởi liên tục các gói tin về địa chỉ broadcast để flood máy nạn nhân

Nhưng thử nghiệm hiện nay thì các gói tin này không gởi được

Chương trình này không còn khả thi hiện nay

Trang 35

Sinh Viên Thực Hiện: Thân Hoàng Hải - 810875T Trang 23

Đối với thử nghiệm trên WinServer 2003 qua máy ảo Vmware thì chương trình này chỉ chiếm băng thông của đường mạng Không ảnh hưởng nhiểu đến hệ điều hành

Một hạn chế của phương thức này là có thể bạn được giới thiệu các mã không được kiểm tra cẩn thận, đầy đủ, có thể lại trở thành nguyên nhân các vấn đề cho

Trang 36

Sinh Viên Thực Hiện: Thân Hoàng Hải - 810875T Trang 24

server của bạn Các bản vá lỗi nên được phân tích một cách cẩn thận và sao luu trước khi áp dụng chúng

3.2 "Đóng cửa" các dịch vụ không cần thiết

Các ứng dụng phần mềm server và các dịch vụ sẽ có nhiều lỗi hơn khi chạy nhiều cùng một lúc Hãy tắt tất cả các dịch vụ không có mục đích sử dụng rõ ràng trên website của bạn Nếu bạn không cần giao thức nạc danh FTP, hãy vô hiệu hoá

nó cho đến khi cần thiết Tương tự như thế cho Terminal Server, NetBIOS, Telnet

và Mail servers Nếu bạn muốn web server hoạt động, hãy loại bỏ tất cả mọi thứ ngoại trừ các chương trình đặc biệt đang dùng để chạy và quản trị server

Tương tự cho thành phần ánh xạ mở rộng ISAPI và các ứng dụng mẫu trên IIS Hãy loại bỏ mọi ánh xạ mở rộng không cần thiết để dùng một web root sáng sủa nhất

3.3 Bảo dưỡng

Hãy nâng cấp các dịch vụ lập lịch tiến trình và tiện ích xoá đĩa để các thư mục temp và bộ gói trong máy bạn có nhiều không gian đĩa lưu trữ Bạn cũng nên thường xuyên giám sát kích thước bản ghi log và các file gói trải rộng trên nhiều volume hoặc drive nếu có thể

Khi cấu hình adaptor network, bạn nên tự mình thiết lập điạ chỉ IP, cổng mạng, dịch vụ DNS thay vì để mặc định Bởi nó rất dễ bị khai thác từ các lỗ hổng của DHCP

Mặc dù hiếm khi làm việc, nhưng hãy sử dụng bộ lọc TCP/IP trên server Bạn chỉ nên cho phép các cổng sẽ sử dụng như 80, 443 hay 21 cho các dịch vụ FTP Nếu cung cấp đúng giới hạn, bạn cũng có thể sử dụng thêm ứng dụng tường lửa của nhóm thứ ba

Trang 37

Sinh Viên Thực Hiện: Thân Hoàng Hải - 810875T Trang 25

Nếu các thiết lập này không ngăn chặn được các cuộc tấn công, tốt hơn là điều khiển qua các tham số TCP/IP Hãy xem trong các bộ tài nguyên để có thêm chi tiết

về tất cả các thiết lập liên quan

3.5 Các phương pháp phòng ngừa

3.5.1 Ngăn ngừa kênh phát động tấn công sử dụng công cụ

Có rất nhiều các công cụ tự động tấn công DoS, chủ yếu là tấn công phân tán DDOS như TFN, TFN2000 (Tribe Flood Network) tấn công dựa trên nguyên lý Smurf, UDP, SYN, hay ICMP; Trinoo cho UDP flood; Stacheldraht cho TCP ACK, TCP NULL, HAVOC, DNS flood, hoặc tràn ngập TCP với packets headers ngẫu nhiên Các công cụ này có đặc điểm cần phải có các kênh phát động để zombie thực hiện tấn công tới một đích cụ thể Hệ thống cần phải có sự giám sát và ngăn ngừa các kênh phát động đó

3.5.2 Ngăn chặn tấn công trên băng thông

Khi một cuộc tấn công DDOS được phát động, nó thường được phát hiện dựa trên sự thay đổi đáng kể trong thành phần của lưu lượng hệ thống mạng Ví dụ một

hệ thống mạng điển hình có thể có 80% TCP và 20% UDP và ICMP Thống kê này nếu có thay đổi rõ rệt có thể là dấu hiệu của một cuộc tấn công Slammer worm sẽ làm tăng lưu lượng UDP, trong khi Welchi worm sẽ tạo ra ICMP flood Việc phân tán lưu lượng gây ra bởi các worm đó gây tác hại lên router, firewall, hoặc cơ sở hạ tầng mạng Hệ thống cần có những công cụ giám sát và điều phối băng thông nhằm giảm thiểu tác hại của tấn công dạng này

3.5.3 Ngăn chặn tấn công qua SYN

SYN flood là một trong những tấn công cổ nhất còn tồn tại được đến hiện tại,

dù tác hại của nó không giảm Điểm căn bản để phòng ngừa việc tấn công này là khả năng kiểm soát được số lượng yêu cầu SYN-ACK tới hệ thống mạng

Giảm thời gian timeout

Sử dụng tường lửa

3.5.4 Phát hiện và ngăn chặn tấn công tới hạn số kết nối

Bản thân các server có một số lượng tới hạn đáp ứng các kết nối tới nó Ngay bản thân firewall (đặc biệt với các firewall có tính năng stateful inspection), các kết nối luôn được gắn liền với bảng trạng thái có giới hạn dung lượng Đa phần các

Trang 38

Sinh Viên Thực Hiện: Thân Hoàng Hải - 810875T Trang 26

cuộc tấn công đều sinh số lượng kết nối ảo thông qua việc giả mạo Để phòng ngừa tấn công dạng này, hệ thống cần phân tích và chống được spoofing Giới hạn số lượng kết nối từ một nguồn cụ thể tới server (quota)

Một trong những điểm các server thường bị lợi dụng là khả năng các bộ đệm giới hạn giành cho tốc độ thiết lập kết nối, dẫn đến quá tải khi phải chịu sự thay đổi đột ngột về số lượng sinh kết nối Ở đây việc áp dụng bộ lọc để giới hạn số lượng kết nối trung bình rất quan trọng Một bộ lọc sẽ xác định ngưỡng tốc độ kết nối cho từng đối tượng mạng Thông thường, việc này được bằng số lượng kết nối trong thời gian nhất định để cho phép sự dao động trong lưu lượng

Các phân tích ở trên được dựa trên những ngầm định cơ bản sau trong việc bảo vệ hệ thống

Thứ nhất, đó là các thiết bị bảo vệ cần được đặt trên luồng thông tin và thực hiện trực tiếp việc ngăn ngừa Điều này xuất phát từ lý do cho tốc độ của một cuộc tấn công (ví dụ khoảng 10.000 đăng ký thành viên trên 1s hướng tới 1 server, hoặc phát tán worm với tốc độ 200ms trên hệ thống mạng Ethernet 100M) Với tốc độ như vậy, cách thức phòng ngừa dạng phát hiện - thông báo ngăn chặn (Host Shun

và TCP Reset) không còn phù hợp

Thứ hai, các cuộc tấn công từ chối dịch vụ chủ yếu nhắm tới khả năng xử lý của hệ thống mạng mà đầu tiên là các thiết bị an ninh thông tin Năng lực xử lý của IPS hoặc các thành phần content filtering là một trong những điểm cần chú ý, đặc biệt ở sự ổn định trong việc xử lý đồng thời các loại lưu lượng hỗn tạp với kích thước gói tin thay đổi

Thứ ba, các cuộc tấn công luôn được tích hợp (blend attacks) với sự tổng hợp các phương thức khác nhau Chính vì vậy, tầm quan trọng của việc phòng ngừa những dấu hiệu lây nhiễm đơn giản là bước đầu tiên để ngăn chặn những cuộc tấn công từ chối dịch vụ

Trong hệ thống tổng thể về security, để đối phó với các cuộc tấn công từ chối dịch vụ, thì thành phần IPS được coi là quan trọng nhất ở tính trong suốt với người dùng, nên việc phân tích các luồng thông tin trao đổi giữa server và người dùng không bị ảnh hưởng bởi các luồng tấn công hướng thẳng đến nó

Ngày đăng: 21/05/2018, 15:12

TỪ KHÓA LIÊN QUAN

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

TÀI LIỆU LIÊN QUAN

w