Tin tặc lợi dụng kẽ hở an toàn thông tin của hệ thống để gửi các yêu cầu hoặc các gói tinkhông hợp lệ không đúng theo tiêu chuẩn một cách cố ý, khiến cho hệ thống bị tấncông khi nhận đ
Trang 1TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN
.o0o
MÔN: Xây Dựng Chuẩn Chính Sách
An Toàn Thông Tin Trong Doanh Nghiệp
DENIAL OF SERVICES
SINH VIÊN THỰC HIỆN: GIÁO VIÊN HƯỚNG DẪN:
Nguyễn Lâm 08520194 GV : CH.Nguyễn Duy
Cao Nhật Quang 08520304
Ngô Tấn Tài 08520323
Lâm Văn Tú 08520610
Thành Phố Hồ Chí Minh
Trang 2LỜI MỞ ĐẦU
Với những kiến thức đã được học về DoS/DDoS, nhóm chúng em quyết định tìm hiểu rõhơn về DoS/DDoS, dùng các tool mà Hacker sử dụng để tấn công để có thể hiểu các bước triểnkhai một cuộc tấn công, đưa ra cách phòng chống và ngăn ngừa trong hệ thống mạng
Chúng em xin chân thành cảm ơn sự giúp đỡ của thầy Nguyễn Duy – Giảng viên trực tiếphướng dẫn đã giúp đỡ nhóm em hoàn thành đồ án này
Trong quá trình tìm hiểu và viết báo cáo không tránh khỏi sai sót, rất mong nhận được sựgóp ý của thầy
Chúng em xin chân thành cảm ơn
TPHCM, ngày 31 tháng 03 năm 2012 Lớp MMT03 – Nhóm07 thực hiện
Trang 3MỤC LỤC
1 DOS 4
1.1 Khái niệm DOS 4
1.2 Phân loại 5
1.3 Các kỹ thuật tấn công DOS 6
1.3.1 Winnuke : 6
1.3.2 Ping of Death : 6
1.3.3 Teardrop : 7
1.3.4 SYN Attack : 7
1.3.5 Land Attack : 8
1.3.6 Smurf Attack: 8
1.3.7 UDP Flooding : 9
1.3.8 Tấn công DNS : 9
1.3.9 Distributed DoS Attacks (DDoS) : 9
1.3.10 Distributed Reflection Denial of Service Attack (DRDoS): 10
1.4 Mô hình triển khai tấn công DOS 10
1.5 Triển khai tấn công DOS 11
1.5.1 Tool Icmp Packets Sender : là tool tấn công ping of death 11
1.5.2 Tool UDP Flooder 2.0: dùng để tấn công UDP Flood 13
1.5.3 DoSHTTP 2.5.1 : 14
1.5.4 Panther mode 2 nuker-firewall: 15
1.5.5 Tool Sprut: 16
1.5.6 Tool Engage Packet builder: 18
Trang 42.1 Khái niêm: 21
2.2 Các đặc tính của tấn công DDoS: 21
2.3 Mô hình tấn công DDoS: 22
2.3.1 Mô hình Agent – Handler 22
2.3.2 Mô hình IRC – Based 23
2.4 Phân loại tấn công DDoS 25
3 Mạng BotNet: 25
3.1 Ý nghĩa của mạng Bot 25
3.2 Định nghĩa Bot và BotNet: 26
3.2.1 Bot: 26
3.2.2 BotNet: 26
3.3 Mục đích sử dụng mạng BotNet: 26
3.4 Các dạng của Bot: 27
3.5 Các bước xây dựng mạng BotNet và cách phân tích mạng Bot: 27
3.6 Demo DdoS 29
3.6.1 Mô hình triển khai 29
3.6.2 Tool Vertexnet Loader 29
3.6.3 DDoS thông qua kênh IRC: 38
4 Nhận xét và giải pháp phòng chống : 46
4.1 Nhận xét : 46
4.2 Chi tiết phòng chống DDoS 47
4.2.1 Giai đoạn ngăn ngừa 47
4.2.2 Giai đoạn đối đầu với cuộc tấn công 48
4.2.3 Giai đoạn sau khi cuộc tấn công xảy ra 50
Trang 51 DOS
1.1 Khái niệm DOS
Tấn công từ chối dịch vụ DoS (Denial of Service) có thể mô tả hành động ngăn cảnnhữ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à 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)
Hình 1: Băng thông khi tấn công DoS
1.2 Phân loại
Được phân theo 2 loại :
Loại 1: Dựa theo đặc điểm của hệ thống bị tấn công: gây quá tải khiến hệ thống mất khả năngphục vụ
Tin tặc gửi rất nhiều yêu cầu dịch vụ, bắt chước như người dùng thực sự yêu cầu đối với
hệ thống
Để giải quyết yêu cầu, hệ thống phải tốn tài nguyên(CPU, bộ nhớ, đường truyền,…) Màtài nguyên này thì là hữu hạn Do đó hệ thống sẽ không còn tài nguyên để phục vụ cácyêu cầu sau
Hình thức chủ yếu của kiểu tấn công từ chối dịch vụ phân tán
Loại 2: Làm cho hệ thống bị treo, tê liệt do tấn công vào đặc điểm của hệ thống hoặc lỗi về
Trang 6 Tin tặc lợi dụng kẽ hở an toàn thông tin của hệ thống để gửi các yêu cầu hoặc các gói tinkhông hợp lệ (không đúng theo tiêu chuẩn) một cách cố ý, khiến cho hệ thống bị tấncông khi nhận được yêu cầu hay gói tin này, xử lý không đúng hoặc không theo trình tự
đã được thiết kế, dẫn đến sự sụp đổ của chính hệ thống đó
Điển hình là kiểu tấn công Ping of Death hoặc SYN Flood
1.3 Các kỹ thuật tấn công DOS
1.3.1 Winnuke :
DoS Attack loại này chỉ có thể áp dụng cho các máy tính đang chạy Windows9x Hacker
sẽ gởi các gói tin với dữ liệu ‘Out of Band’ đến cổng 139 của máy tính đích (cổng 139 làcổng NetBIOS, cổng này chỉ chấp nhận các gói tin có cờ Out of Band được bật ) Khi máytính của Victim nhận được gói tin này, một màn hình xanh báo lỗi sẽ hiện lên do chươngtrình của Windows nhận được các gói tin này nhưng nó lại không biết phản ứng với các dữliệu Out Of Band như thế nào dẫn đến hệ thống sẽ bị crash
Hình 2: thông báo lỗi khi bị tấn công Winnuke
Trang 81.3.4 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 SYN packets này sẽ gửi trở lại các địa chỉ không cóthực đó và chờ đợi để nhận thông tin phản hồi từ các địa chỉ IP giả Vì đây là các địa chỉ IPkhông có thực, nên hệ thống đích sẽ chờ đợi vô ích và còn đưa ra các ‘request’ chờ đợi nàyvào bộ nhớ, gây lãng phí một lượng đáng kể bộ nhớ trên máy chủ mà đúng ra là phải dungvào việc khác thay cho phải chờ đợi thông tin phản hồi không có thực này Nếu ta gửi cùngmột lúc nhiều gói tin có địa chỉ IP giả như vậy thì hệ thống sẽ bị quá tải dẫn đến bị crashhoặc boot máy tính
Hình 4: Quá trình làm việc của gói tin SYN
1.3.5 Land Attack :
Land Attack cũng gần giống như SYN Attack, nhưng thay vì dùng các địa chỉ IP không
có thực, Hacker sẽ dùng chính địa chỉ IP của hệ thống nạn nhân Điều này sẽ tạo nên mộtvòng lặp vô hạn trong chính hệ thống nạn nhân đó, giữa một bên cần nhận thông tin phản hồicòn một bên thì chẳng bao giờ gửi thông tin phản hồi đó đi cả
1.3.6 Smurf Attack:
Trong Smurf Attack, cần có 3 thành phần : Hacker (người ra lệnh tấn công), mạngkhuếch đại (sẽ nghe lệnh của Hacker) và hệ thống của nạn nhân Hacker sẽ gửi các gói tinICMP đến địa chỉ Broadcast của mạng khuếch đại Điều đặc biệt là các gói tin ICMP packetsnày có địa chỉ IP nguồn chính là địa chỉ IP của nạn nhân Khi các packets đó đến được địachỉ broadcast của mạng khuếch đại, các máy tính trong mạng khuếch đại sẽ tưởng rằng máy
Trang 9tính nạn nhân đã gửi gói tin ICMP packets đến và chúng sẽ đồng loạt gửi trả lại hệ thống nạnnhân các gói tin phản hồi ICMP packets Hệ thống má nạn nhân sẽ không chịu nổi một khốilượng khỏng lồ các gói tin này và nhanh chóng sẽ ngừng hoạt động, crash hoặc reboot Nhưvậy, chỉ cần gởi một lượng nhỏ các gói tin ICMP packets đi thì hệ thống mạng khuếch đại sẽkhuếch đại lượng gói tin ICMP packets này lên gấp bội Tỉ lệ khuếch đại phụ thuộc vào sốmáy 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 gói tin đến địa chỉ Broadcastkhông qua chỗ lọc địa chỉ nguồn ở các đầu ra của gói tin 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 5: Phương thức tấn công Smurf
1.3.7 UDP Flooding :
Cách tấn công UDP đòi hỏi phải có 2 hệ thống máy cùng tham gia Hackers sẽ làm cho
hệ thống của mình đi vào một vòng lặp trao đổi các dữ liệu qua giao thức UDP Và giả mạođịa chỉ IP của các gói tin là địa chỉ Loopback (127.0.0.1) rồi gửi gói tin này đến hệ thống củanạn nhân trên cổng UDP Echo (7) Hệ thống của nạn nhân sẽ trả lời lại các messages donhiều hệ thống không cho dung địa chỉ loopback nên Hacker sẽ giả mạo một địa chỉ IP củamột máy tính nào đó trên mạng và tiến hành UDP Flood trên hệ thống của nạn nhân
Trang 101.3.8 Tấn công DNS :
Hacker có thể đổi một lối vào trên Domain Name Server của hệ thống nạn nhân cho chỉđến một website nào đó của Hacker Khi máy khách yêu cầu DNS phân tích địa chỉ bị xâmnhập thành địa chỉ IP, lập tức DNS (đã bị Hacker thay đổi cache tạm thời) sẽ đổi thành địachỉ IP mà Hacker đã cho chỉ đến đó Kết quả là thay vì phải vào trang Web muốn vào thì cácnạn nhân sẽ vào trang Web do chính Hacker tạo ra
1.3.9 Distributed DoS Attacks (DDoS) :
DDoS yêu cầu phải có ít nhất vài Hackers cùng tham gia Đầu tiên các Hackers sẽ cốthâm nhập vào các mạng máy tính được bảo mật kém, sau đó cài lên các hệ thống nàychương trình DDoS Server Bây giờ các Hackers sẽ hẹn nhu đến thời gian đã định sẽ dùngDDoS Client kết nối đến các DDoS Server, sau đó đồng loạt ra lệnh cho các DDoS Servernày tiến hành tấn dông DDoS đến hệ thống nạn nhân
1.3.10 Distributed Reflection Denial of Service Attack (DRDoS):
Kiểu tấn công lợi hại nhất và làm boot máy tính của đối phương nhanh gọn nhất Cáchlàm thì cũng tương tự như DDoS nhưng thay vì tấn công bằng nhiều máy tính thì Hacker chỉcần dùng một máy tán công thông qua các Server lớn trên thế giới Vẫn với phương pháp giảmạo đại chỉ IP của victim, kẻ tấn công sẽ gởi các gói tin đến các Server mạnh nhất, nhanhnhất và có đường truyền rộng nhất như Yahoo v.v…, các Server này sẽ phản hồi các gói tin
đó đến đại chỉ của Victim Việc cùng một lúc nhận được nhiều gói tin thông qua các Serverlớn này sẽ nhanh cóng làm nghẽn đường truyền của máy tính nạn nhân và làm crash, rebootmáy tính đó Cách tấn công này lợi hại ở chỗ chỉ cần một máy có kết nối Internet đơn giảnvới đường truyền bình thường cũng có thể đánh bật được hệ thống có đường truyền tốt nhấtthế giới nếu như ta không kịp ngăn chặn
Trang 111.4 Mô hình triển khai tấn công DOS
- Mô hình tấn công DoS rất đơn giản Chỉ cần một máy tính kết nối internet là có thể tấncông bất kỳ mục tiêu mong muốn
- Các công cụ để thực hiện tấn công DoS :
Wireless De-authentication Attack
- Để triển khai cuộc tấn công DoS cần :
Biết được địa chỉ IP của nơi muốn tấn công
Công cụ tấn công được cài trên máy Hacker
1.5 Triển khai tấn công DOS
1.5.1 Tool Icmp Packets Sender : là tool tấn công ping of death
IP Hacker:10.0.0.2 và IP Victim: 10.0.0.4
Giao diện sử dụng
Trang 12Thông báo làm việc
Trang 13Kết quả ở máy Victim
1.5.2 Tool UDP Flooder 2.0: dùng để tấn công UDP Flood
IP Hacker : 192.168.1.12
IP Victim : 118.69.199.197
Hostname Victim : doanuit.tk
Giao diện sử dụng UDP Flooder 2.0
Trang 14 Dùng WireShare kiểm tra trên máy Hacker
Trang 151.5.3 DoSHTTP 2.5.1 :
- IP Hacker: 192.168.1.12
- IP Victim: 118.69.199.197
- Hostname Victim: doanuit.tk
Giao diện sử dụng DoSHTTP
Trang 16 Dùng WireShare để kiểm tra:
1.5.4 Panther mode 2 nuker-firewall:
- IPVictim: 10.0.0.4
Giao diện sử dụng
Dùng WireShark để kiểm tra kết quả trên máy Victim
Trang 18 Dùng WireShare trên máy Hacker để kiểm tra thông tin
Kiểm tra kết quả khi vào trang web Victim (doanuit.tk):
Trang 191.5.6 Tool Engage Packet builder:
Giao diện sử dụng:
Tool này có thể cấu hình bằng tay hay sử dụng Script
Trang 20IPDESTINATION : địa chỉ IP Victim
PORTDESTINATION: port cần tấn công của Victim
SYN=1 : Đặt SYN có giá trị là 1
SEND 100000 TCP : gửi 100000 gói TCP
Chỉ đến đoạn Script để tiến hành dos và chạy Script
Dùng WireShake để kiểm tra kết quả:
Trang 21 Giá trị SYN=1
Trang 222 Distributed Denial of Service Attacks (DDoS Attacks)
2.1 Khái niêm:
Tấn công Distributed Denial-of-Service(DDoS) là kiểu tấn công từ nhiều máy tích tới mộtđích, nó gây ra từ chối các yêu cầu hợp lệ của các user bình thường Bằng cách tạo ra những góitin cực nhiều đến một mục đích cụ thể, nó có thể gây ra trình trạng tương tự như hệ thống bịshutdown
2.2 Các đặc tính của tấn công DDoS:
- Nó được tấn công từ một hệ thống các máy tính cực lớn trên Internet, và thường dựa vàocác dịch vụ có sẵn trên các máy tính trong mạng botnet
- Các dịch vụ tấn công được điều khiển từ những “primary victim” trong khi các máy tính
bị chiếm quyền sử dụng trong mạng Bot được sử dụng để tấn công thường là “secondaryvictims”
- Là dạng tấn công rất khó có thể pháp hiện bởi tấn công này được sinh ra từ nhiều địa chỉ
Trang 23- Tấn công DDoS không thể ngăn chặn hoàn toàn.
Các dạng tấn công DDoS thực hiện tìm các lỗ hỏng bảo mật trên các máy tính kết nốitới Internet và khai thác các lỗ hỏng bảo mật để xây dựng mạng Botnet gồm nhiềumáy tính kết nối tới Internet
Một tấn công DDoS thực hiện sẽ rất khó để ngăn chặn hoàn toàn
Những gói tin đển Firewall có thể ngăn lại, nhưng hầu hết chúng đến từ những địa chỉ
IP chưa có trong các Access Rule của Firewall và là những gói tin hoàn toàn hợp lệ
Nếu địa chỉ nguồn của gói tin có thể bị giả mạo, sau khi không nhận được phản hồi từnhững địa chỉ nguồn thật thì cần phải thực hiện cấm giao tiếp với địa chỉ nguồn đó.Tuy nhiên, một mạng Botnet bao gồm từ hàng nghìn đến hàng trăm nghìn địa chỉ IPtrên Internet và điều đó là vô cùng khó khăn để ngăn chặn được tấn công
2.3 Mô hình tấn công DDoS:
2.3.1 Mô hình Agent – Handler
Theo mô hìnhAgent-Handler gồm 3 thành phần: Agent, Client và Handler
Client : là software cơ sở để Hacker điều khiển mọi hoạt động của attack-network
Handler : là một thành phần software trung gian giữa Agent và Client
Agent : là thành phần software thực hiện sự tấn công mục tiêu, nhận điều khiển từ Client
Trang 24Attacker sẽ từ Client giao tiếp với một Handler để xác định số lượng Agent đang online,điều chỉnh thời điểm tấn công và cập nhật các Agent Tùy theo cách attacker cấu hình attack-network, các Agent sẽ chịu sự quản lý của một hay nhiều Handler.
Thông thường Attacker sẽ đặt Handler software trên một Router hay một Server có lượngtraffic lưu thông nhiều 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 gia tiếp này thông thường xảy ra trên các protocol TCP, UDP hay ICMP Chủnhân thực sự của các Agent thông thường không hề hay biết họ bị lợi dụng vào cuộc tấn côngkiểu 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 íttà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
2.3.2 Mô hình IRC – Based
Internet Relay Chat (IRC) là một hệ thống online chat multiuser, IRC cho phép User tạo mộtkết nối đến multIPoint đến nhiều user khác và chat thời gian thực Kiến trúc củ IRC network baogồm nhiều IRC Server trên khắp Internet, giao tiếp với nhau trên nhiều kênh (channel) IRCnetwork cho phép user tạo ba loại channel: public, private và serect
Trang 25 Public channel: Cho phép user của channel đó thấy IRC name và nhận được message củamọ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épcác user không cùng channel thấy IRC name và message trên channel Tuy nhiên, nếuuser ngoài channel dùng một số lệnh channel locator thì có thể biết được sự tồn tại củaprivate channel đó
Secrect channel : tương tự private channel nhưng không thể xác định bằng channellocator
IRC – Based network cũng tương tự như Agent – Handler network 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ụngHandler) 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
IRC traffic 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 file sharing tạo điều kiện phát tán các Agent codelên nhiều máy khác
Trang 262.4 Phân loại tấn công DDoS
3 Mạng BotNet
3.1 Ý nghĩa của mạng Bot
Khi sử dụng một Tool tấn công DoS tới một máy chủ đôi khi không gây ảnh hưởng gì chomáy chủ Giả sự bạn sử dụng tool Ping of Death tới một máy chủ, trong đó máy chủ kết nối vớimạng tốc độ 100Mbps bạn kết nối tới máy chủ tốc độ 3Mbps dẫn tới cuộc tấn công của bạnkhông có ý nghĩa gì
Nhưng khi có 1000 người cùng một lúc tấn công vào máy chủ kia khi đó toàn bộ băng thôngcủa 1000 người cộng lại tối đa 3Gbps và tốc độ kết nối của máy chủ là 100Mbps sẽ làm băngthông máy chủ được sử dụng hoàn toàn
Khi có trong tay mạng BOT, Hacker sử dụng những tool tấn công đơn giản để tấn công vàomột hệ thống máy tính Dựa vào những truy cập hoàn toàn hợp lệ của hệ thống, cùng một lúcchúng sử dụng một dịch vụ của máy chủ vd : Hacker có trong tay 400.000 máy và cùng một lúc
ra lệnh cho chúng download một file trên trang web của bạn Và đó chính là DDoS-DistributedDenial of Service