Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 26 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
26
Dung lượng
0,91 MB
Nội dung
1
MỤC LỤC
I. GIỚI THIỆU 2
1.1 Khái niệm 2
1.2 Lịch sử của DoSattack 2
II. PHÂN LOẠI 4
2.1 Winnuke 4
2.2 Ping of Death 4
2.3 Teardrop 5
2.4 Smurt Attack 6
2.5 Fraggle Attack 8
2.6 SYN flood Attack 8
2.7 Land Attack 12
2.8 UDP Flood 13
2.9 Tấn công DNS 13
2.10 DDoS Attack 13
2.11 DRDoS Attack 14
III.CÁC CÔNG CỤ TẤN CÔNG DoS PHỔ BIẾN 15
IV. BIỆN PHÁP PHÒNG CHỐNG DoSATTACK 21
4.1 Chính sách chung phòng chống DoSAttack 21
4.2 Các kỹ thuật Anti – DDoS 23
V. TỔNG KẾT 25
NHẬN XÉT CỦA GIẢNG VIÊN 26
2
I. GIỚI THIỆU
1.1 Khái niệm
Denial of Service Attack là một dạng tấn công mà người thực hiện có thể dung để khiến cho
một hệ thống không sử dụng được hoặc làm chậm hệ thống lại, khiến nó không thể phục vụ cho các
users. Nguyên lý hoạt động cơ bản của nó là làm quá tảitài nguyên của hệ thống.
Mục tiêu của DoSAttack không phải là để chiếm quyền truy cập vào máy tính hay dữ liệu mà
là để ngăn cản những người sử
dụng (users) sử dụng dịch vụ đó (sử dụng máy tính hay truy cập dữ
liệu)
Kẻ tấn công có thể cố thực hiện những việc sau:
- Làm ngập (flood) một network, do vậy sẽ làm nghẽn việc lưu thông trên network đó
- Làm gián đoạn sự kết nối giữa hai máy tính, do vậy sẽ ngăn cản việc truy cập, sử dụng dịch vụ
- Cố gắng ngă
n chặn một cá nhân nào đó truy cập, sử dụng dịch vụ
- Cố gắng làm gián đoạn việc cung cấp dịch vụ đến một hệ thống hay một người nào đó
1.2 Lịch sử của DoSattack
Tấn công DoS đã có 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. Trong khi đó,
dạng DDoS (Distributed Denial of Service) thì dựa vào việc gửi một lệnh ping tới một danh sách gồm
nhiều server (kiểu này gọi là amplifier, tức là khuếch đại độ rộng mục tiêu), giả dạng là một gói ping
để địa chỉ IP gốc được trá hình với IP của mục tiêu n
ạn nhân. Các server khi trả lời yêu cầu ping này
khi đó sẽ làm “lụt” nạn nhân với những phản hồi (answer) gọi là pong.
Cách hoạt động: Một lệnh truy cập được gửi tới server. Server xác thực và rồi chờ lệnh đó
khẳng định việc xác thực nói trên trước khi cho phép máy tính của người sử dụng truy nhập.
Trong các cuộc tấn công DDoS, server bị ngập bởi các lệnh truy cập của một lượng kết nố
i
khổng lồ từ những địa chỉ không có thực và điều đó có nghĩa là server không thể tìm thấy người sử
dụng có nhu cầu truy cập đích thực. Khi số lệnh truy cập lớn quá, server bị lụt và không thể xử lý được
số lệnh mà nó đang được yêu cầu giải quyết.
Một số loại virus và sâu mạng cũng đã gây tấn công DDoS. Các trường hợp đầu tiên là những
virus phát tán e-mail s
ố lượng lớn như Loveletter, Melissa, làm lụt mail server khiến các máy chủ
không thể xử lý những yêu cầu hợp lệ. Hiện nay, nhiều loại sâu Internet lợi dụng lỗi trong máy tính (ví
dụ virus Sasser năm 2004) để làm lụt các máy tính chạy Windows có khiếm khuyết, khiến PC không
thể tải về các bản vá lỗi.
3
Nói chung, kẻ tấn công thường khống chế một máy tính từ xa bằng cách khai thác một khiếm
khuyết nào đó. Máy tính này (về sau sẽ trở thành mầm của mạng lưới máy tính bị khống chế phục vụ
tấn công DDoS, gọi là botnet) sẽ được cài đặt một quy trình ẩn nhằm đảm bảo nó luôn được kết nối
trong một phòng chat bí mật, nơi mà tác giả ra lệnh cho nó. Máy tính này cũng đồng thời tìm cách quét
trên Internet để tìm những computer khác có lỗ h
ổng, lây nhiễm phần mềm điều khiển từ xa vào chúng
để tất cả những máy mới bị không chế sẽ cùng gia nhập vào chatroom nói trên và sẵn sàng nhận lệnh
của hacker hoặc tham gia tìm kiếm trên Internet những PC có lỗi khác.
Nói chung, chỉ trong vài ngày, mạng máy tính ma này sẽ tăng từ một cái lên hàng trăm hoặc
hàng nghìn thành viên. Đến thời điểm lực lượng này đủ hùng hậu, chúng sẽ đồng loạt được sử dụng để
th
ực hiện lệnh tấn công vào mục tiêu theo ý muốn của tác giả. Mục tiêu sẽ biến mất khỏi mạng, tức là
offline hoàn toàn. Đồng thời tất cả những hoạt động tương tác trên môi trường Internet của nạn nhân
cũng ngừng luôn.
Một dạng riêng nguy hiểm hơn của DoSattack là DDoS (Distributed Denial of Service)
attack
DDoS attack là dạng tấn công trong đó nhiều hệ thống tấn công một hệ thống duy nhất, khiến
users của hệ
thống mục tiêu không thể sử dụng dịch vụ. Luồng dữ liệu được gửi tới quá lớn sẽ làm
ngập (flood) hệ thống mục tiêu nhanh chóng, buộc nó phải shutdown và ngưng cung cấp dịch vụ cho
người sử dụng.
DDoS attack nguy hiểm hơn DoSattack thông tường vì nó là tấn công trên diện rộng (large-
scale) , có sự phối hợp (coordinated) trong đó hệ thống bị tấn công là “nạn nhân chính” còn những hệ
thống bị hacker dùng
để triển khai tấn công vào hệ thống mục tiêu là “nạn nhân phụ”. Điều này cũng
làm DDoS khó ngăn chặn hơn vì việc tấn công xuất phát từ nhiều địa chỉ IP khác nhau, và nó dễ thành
công hơn DoSattack thông thường (ví dụ như một địa chỉ IP tấn công vào website của một công ty, nó
có thể dễ dàng bị ngăn chặn bởi các biện pháp an ninh của công ty này, nhưng nếu 30000 địa chỉ IP
cùng tấn công vào công ty này trong một lúc thì lại là chuyện khác)
• 1998 Chương trình Trinoo Distributed Denial of Service (DDoS) được viết bởi Phifli.
• Tháng 5 – 1999 Trang chủ của FBI đã ngừng họat động vì cuộc tấn công bằng (DDOS)
• Tháng 6 – 1999 Mạng Trinoo đã được cài đặt và kiểm tra trên hơn 2000 hệ thống.
• Cuối tháng 8 đầu tháng 9 năm 1999, Tribal Flood Network đầu tiiên ra đời, Chương trình được
Mixter Phát triển.
• Cuối tháng 9 năm 1999, Công cụ Stacheldraht đã bắt đầu xuất hiện trên những hệ thống của Châu âu
và Hoa kỳ.
• Ngày 21 tháng 10 năm 1999 David Dittrich thuộc tr
ường đại học Washington đã làm những phân
tích về công cụ tấn công từ chối dịch vụ
• Ngày 21 tháng 12 năm 1999 Mixter phát hành Tribe Flood Network 2000 ( TFN2K ).
• 10 : 30 / 7 – 2 -2000 Yahoo! ( Một trung tâm nổi tiếng ) đã bị tấn công từ chối dịch vụ và ngưng trệ
hoạt động trong vòng 3 giờ đồng hồ. Web site Mail Yahoo và GeoCities đã bị tấn công từ 50 địa chỉ IP
khác nhau với nhửng yêu cầu chuyễn vận lên đến 1 gigabit /s.
• 8 -2 nhiều Web site lớn như Buy.com, Amazon.com, eBay, Datek, MSN, và CNN.com bị t
ấn công từ
chối dịch vụ.
4
• Lúc 7 giờ tối ngày 9-2/2000 Website Excite.com là cái đích của một vụ tấn công từ chối dịch vụ, dữ
liệu được luân chuyễn tới tấp trong vòng 1 giờ cho đến khi kết thúc, và gói dữ liệu đó đã hư hỏng
nặng.
• Qua đó ta có thể thấy rõ những vụ tấn công từ chối dịch vụ (Denial Of Services Attack) và những
cuộc tấn công về việc gửi nhửng gói dữ liệu tới máy chủ
(Flood Data Of Services Attack) tới tấp là
những mối lo sợ cho nhiều mạng máy tính lớn và nhỏ hiện nay.
• Khi một mạng máy tính bị Hacker tấn công nó sẽ chiếm một lượng lớn tài nguyên trên server như
dung lượng ổ cứng, bộ nhớ, CPU, băng thông …. Lượng tài nguyên này tùy thuộc vào khả năng huy
động tấn công của mỗi Hacker. Khi đó Server sẽ không thể đáp ứng hết những yêu cầu từ những client
của những người sử
dụng và từ đó server có thể sẽ nhanh chóng bị ngừng hoạt động, crash hoặc
reboot.
II. PHÂN LOẠI
Tấn công từ chối dịch vụ có rất nhiều dạng như Ping of Death, Teardrop, Aland Attack,
Winnuke, Smurf Attack, UDP/ICMP Flooding, TCP/SYN Flooding, Attack DNS.
2.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 chính 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áy tính của victim
nhận được gói tin này, một màn hình xanh báo lỗi sẽ được hiển thị lên với nạn nhân do chương trì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.
2.2 Ping of Death:
Ping of death (POD) là send 1 gói ping malformed tới máy tính đích.
1 gói ping thông thường là 64 bytes (84 bytes nếu tính đến IP header).
Nhiều hệ thống máy tính không thể xu li được 1 gói ping lớn hơn kích cỡ gói IP lớn nhất
(2^16-1=65,535 bytes), vì vậy send gói ping với kích cỡ lớn như vậy có thể làm crash máy tính đích.
5
Nói chung, send 1 gói ping có kích cỡ quá lớn là bất hợp pháp về mặt giao thức mạng nhưng
có thể thực hiện được nếu chia gói ping ra làm nhiều phần (phân mảnh - fragment) để gởi đi.
Khi máy tính đích nhận được gói ping đã bị phân mảnh nó phải hợp lại các mảnh đó thành gói
ban đầu, việc này có thể gây ra lỗi tràn bộ đệm và làm crash máy tính đích.
Ping of death ảnh hưởng rất lớn đến các hệ điều hành như Unix, Linux, Mac, Windows và các
thiết bị như printer và router.
Bạn có thể thực hiện ping of Death trong linux bằng cách dùng lệnh “ping –f –x 65537 <IP>”.
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.
Tấn công PofD 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. Bạn có thể thực hiện các công cụ sau để thực hiện tấn công Ping of
Death.
• Jolt
• SPing
• ICMP Bug
• IceNewk
Khoảng năm 1997-1998, lỗi nãy đã được fix, vì v
ậy bây giờ nó chỉ mang tính lịchsử. Đối với
các máy chưa fix lỗi nếu tổng của 2 "trường": "Fragment Offset" and "Total length" trong IP header
của mỗi IP fragment lớn hơn 65,535 thì packet bất hợp lệ và IP fragment bị bỏ qua > có thể thực hiện
bằng cách cấu hình Firewall. Cách khác là dùng vùng nhớ đệm có kích thước > 65,535 bytes cho việc
"hợp gói", tuy nhiên điều này vi phạm các đặc tả của giao thức mạng.
Ping flooding: dùng lệnh Ping gởi 1 lượng lớn packet chiếm hết băng thông c
ủa victim khiến
các gói tin bình thường không đến được.Chỉ có hiệu quả khi có sự chênh lệc băng thông lớn giữa
hacker và victim. Ví dụ: ADSL vs Dial
2.3 Tear Drop:
Tất cả các dữ liệu chuyển đi trên mạng từ hệ thống nguồn đến hệ thống đích đều phải trải qua 2
quá trình sau: dữ liệu sẽ được chia ra thành các mảnh nhỏ ở hệ thống nguồn, mỗi mảnh đều phải có
một giá trị offset nhất định để xác định vị trí của mảnh đó trong gói dữ liệu được chuyển đi. Khi các
mảnh này
đến hệ thống đích, hệ thống đích sẽ dựa vào giá trị offset để sắp xếp các mảnh lại với nhau
theo thứ tự đúng như ban đầu.
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):
packet thứ nhất sẽ mang các 1bytes 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
6
đượ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!
2.4 Smurt Attack
Hai nhân tố chính trong Smuft Attack là 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 bạn một ICMP echo reply packet. Trong
trường hợp bạn 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.
7
+ 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 của mạng khuếch đại. Điều
đặc biệt là các ICMP echo request packets nà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 đị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, bạn 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.
Các công cụ cho Smurt attack:
Nemesis
Spike
Aggressor
8
Giải pháp:
Thực ra đối phó là cả một vấn đề vì không một cá nhân nào làm được mà yêu cầu phải là một
cộng đồng ( một cây làm chẳng nên non - 3 cây chụm lại nên hòn núi cao )
Từng cá nhân,công ty,tổ chức phải biết config máy tính,hệ thống của mình để không bị biến
thành mạng khuếch đại.
Khi bị tấn công các công ty,cá nhân cần phải phối hợp với ISP nhằm giới hạn lưu lựong
ICMP,tăng cườ
ng biện pháp đối phó
Theo rõi cuộc tấn công như kiểu này là rất khó nhưng không phải là không được
Để không bị biến thành mang khuếch đại bạn nên vô hiệu hóa chức năng
directed broadcast tại bộ định tuyến:
+Đối với bộ định tuyến của Cisco: vô hiệu hóa bằng lênh
no ip directed-broadcast
+ Đối với thiết bị khác bạn nên tham khảo tàiliệu
+Solaris: bổ sung thêm dòng sau vào:/etc/rc2.d/S69inet
ndd -set /dev/ip ip_respond_to_echo_broadcast 0
+Linux :Áp dụng bức tường lửa ở
cấp độ nhân thông qua ipfw.Nhớ biên dịch bức tường lửa
sang nhân rồi thi hành các lênh sau:
ipfwadm -I -a deny -P icmp -D 10.10.10.0 -S 0/0 0 8
ipfwadm -I -a deny -P icmp -D 10.10.10.255 -S 0/0 0 8
2.5 Fraggle Attack:
Tương tự như Smurt attack nhưng thay vì dùng ICMP ECHO REQUEST packet thì sẽ dùng
UDP ECHO packet gởi đếm 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 Smurt attack rất nhiều.
2.6 SYN flood attack:
Đó là chữ viết tắt của The Synchronous Idle Character nghĩa là ký tự đồng bộ hoá.
SYN flood attack (SFA). PANIX là một ví dụ điển hình về khả năng tàn phá của SFA.
Khi hai hệ thống kết nối TCP với nhau,chúng sẽ phải bắt tay nhau qua 3 bước (phương pháp
bắt tay 3 bước)
9
client1. SYN gửi từ client > server
client2. < SYN/ACK gửi từ server server
client3. ACK gửi từ client > server
10
Đầu tiên, A sẽ gửi cho B yêu cầu kết nối và chờ cho B trả lời. Sau khi B nhận được yêu cầu
này sẽ trả lời lại A là “đã nhận được yêu cầu từ A” (ACK) và “đề nghị trả lời lại để hoàn thành kết
nối” (SYN).
Đến lúc này, nếu A trả lời lại “đồng ý” (SYN) thì kết nối sẽ được tạo.
Đây chính là điểm mà SYN flooding hoạt động.
Sau khi nhận được SYN packet đầ
u tiên từ A, B sẽ trả lời cho A và chờ một thời gian để nhận
một SYN packet khác từ A. Nếu A không trả lời, kết nối không hoàn thành, ta gọi đó là nửa kết nối
(half-connection).
Hệ thống quản lý các nửa kết nối thông qua cấu trúc đặc biệt. Cấu trúc này có kích thước giới
hạn. Do đó, nếu số lượng nửa kết nối vượt qua giới hạn này, hệ thống sẽ tự
động bỏ các yêu cầu kết
nối tới sau cho đến khi số lượng nửa kết nối giảm xuống mức tối đa.
Sau một thời gian chờ không nhận được SYN packet thứ hai từ A, nửa kết nối đó sẽ bị bỏ,
nhường chỗ cho các yêu cầu kết nối sau, dẫn tới DoS. Thời gian chờ đó gọi là timeout. Đây cũng
chính là lý do cách thức này được gọi là SYN flooding. A chỉ
gửi đi các packet SYN yêu cầu kết nối
mà không quan tâm đến việc nhận SYN/ACK từ B cũng như trả lời lại để hoàn thành kết nối.
Số lượng nửa kết nối có thể tồn tại nhiều nhất phụ thuộc vào hệ thống (số lượng tối đa này còn
gọi là backlog). Cách nay khoảng năm năm, Linux có khoảng sáu, BSD thì khoảng năm. Như vậy, chỉ
cần một đườ
ng truyền rất nhỏ, khoảng 3600bps cũng đủ để flood, làm tê liệt một ISP lớn.
Ngoài ra, để chắc chắn, số này được này dư ra khoảng ba phần hai.
Có nghĩa là real_backlog = backlog * 3 / 2 + 1
Cộng một là dành cho socket có thể tạo được kết nối cho dù backlog bằng không. Thời gian
chờ cũng tùy thuộc vào hệ thống. Thời gian chờ càng lớn thì SYN flooding càng hiệu quả vì backlog
dễ bị đầy hơn. Solaris có thời gian chờ tương đối cao hơn các h
ệ thống khác.
Ngoài việc gây ra DoS, SYN flooding còn có thể làm hệ thống khởi động lại.
Để viết một chương trình thực hiện SYN flooding đòi hỏi kỹ thuật giả IP. Việc giả IP không
chỉ nhằm che dấu vết mà còn làm cho cuộc tấn công thêm hiệu quả. Việc chọn IP không tồn tại hoặc
không tới được (none reachable, non routable) cũng cần được thực hiện.
Sau khi nhận được SYN từ A, B sẽ gửi tr
ả SYN/ACK. Nếu SYN/ACK này tới được A thì có
hai trường hợp xảy ra. Một là A sẽ gửi trả SYN hoặc hai là A sẽ gửi trả RST (reset).
Trường hợp đầu tiên xảy ra khi A thật sự muốn kết nối tới B, trường hợp hai khi A không phải
là người yêu cầu kết nối. Tất cả đều do hệ thống đảm nhiệm. Khi nhận được RST, B sẽ huỷ bỏ nửa kết
nối đó. Do
đó, để cho SYN flooding hiệu quả, trường hợp đầu tiên phải được chọn. Để thực hiện việc
này ta phải chọn IP giả cho A sao cho SYN/ACK từ B gửi lại A sẽ không tới được A.
Để giả IP, sử dụng SOCK_RAW là điều tất yếu, và hiểu biết về cấu trúc một TCP/IP packet
cũng cần thiết. Bài viết này không đề cập tới cấu trúc một TCP/IP, chỉ nói về kỹ thuật s
ử dụng
SOCK_RAW. Trên môi trường Unix, libnet cung cấp một thư viện các hàm tiện lợi cho việc tạo các
packet cấp thấp (tới link layer, tạo các ICMP packet). Cũng may mắn là libnet đã được chuyển sang
môi trường Windows cho nên code viết cho môi trường Unix không cần thay đổi nhiều khi chuyển
sang Windows. Phần này viết code cho môi trường Unix:
[...]... Death, Teardrop, SYN là một số dạng tấn công DoS phổ biến Một số công cụ thường được sử sụng cho tấn công DoS là Winnuke, Targa, Land, Bubonic.c … - DDoS attack là dạng nguy hiểm hơn của DoS attack, nó là tấn công trên diện rộng, khó ngăn chặn hơn DoS thông thường Một số công cụ tấn công DDoS phổ biến là Trinoo, TFN, Shaft, Trinity… - Biện pháp phòng chống DoSattack là phát hiện và vô hiệu hóa các handler,... ra nhiều manh mối và chứng cứ quan trọng V TỔNG KẾT - Tấn công DoSattack là dạng tấn công làm cho người sử dụng không thể truy cập hay sử dụng dịch vụ bằng cách làm quá tảitài nguyên của hệ thống - Hậu quả của DoSattack rất nghiêm trọng, nó có thể ngưng trệ lưu thông trên mạng, làm tê liệt các công ty, tổ chức dẫn đến mất mát lớn về tài chính và niềm tin của người sử dụng dịch vụ mạng - Smurt, Buffer... trong nháy mắt 13 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ày chương trình DDoS server Bây giờ các hackers sẽ hẹn nhau đến thời gian đã định sẽ dùng DDoS client kết nối đến các DDoS servers, sau đó đồng loạt ra lệnh cho các DDoS servers này tiến hành tấn công DDoS đến hệ thống nạn... vụ thật hữu hiệu ! 2.10 Dạng riêng của DoS – DDoS attack Đây là cách thức tấn công rất nguy hiểm Hacker xâm nhập vào các hệ thống máy tính, sau đó cài lên các hệ thống này chương trình DDOS server(như Trinoo,Tribe flood networkTFN,Wintrinoo,TFN2K )., và sẽ kích hoạt đồng thời các chương trình này vào cùng một thời điểm để đồng loạt tấn công vào một mục tiêu Với DDoS, các hacker có thể huy động tới hàng... 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 11 Tools DoS – FSMAX - Kiểm tra hiệu năng đáp ứng của máy chủ - Nó tạo ra một file sau đó chạy trên Server nhiều lần lặp đi lặp lại một lúc - Tác dụng của tools này là tìm cách tấn công làm chàn bộ nhớ đệm và tấn công DoS tới máy chủ 20 IV BIỆN PHÁP PHÒNG CHỐNG DoSATTACK 4.1 Chính sách... 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ó 4.2 Các kỹ thuật Anti-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 Anti-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... 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ộ attack- network là rất cao 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... 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 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 24 Traceback từ attacker khá hữu hiệu gần đây đã có một kỹ thuật Traceback... có thể gây ra tấn công DoS 18 8 Tool DoS – Crazy Pinger - Công cụ này có khả năng gửi những gói ICPM lớn tới một hệ thống mạng từ xa 9 Tool DoS – Some Trouble - SomeTrouble 1.0 là một chương trình gây nghẽn hệ thống mạng - SomeTrouble là một chương trình rất đơn giản với ba thành phần + Mail Bomb (tự có khả năng Resole Name với địa chỉ mail có) 19 + ICQ Bomb + Net Send Flood 10 DoS Tools – UDP Flood... tấn công 2 Tools DoS: Bubonic.c - Bubonic.c là một tools DoS dựa vào các lỗ hổng bảo mật trên Windows 2000 - Nó hoạt động bằng cách ngẫu nhiên gửi các gói tin TCP với các thiết lập ngẫu nhiên làm cho máy chủ tốn rất nhiều tài nguyên để xử lý vấn đề này, và từ đó sẽ xuất hiện những lỗ hổng bảo mật - Sử dụng bubonic.c bằng cách gõ câu lệnh: bubonic 12.23.23.2 10.0.0.1 100 16 3 Tools DoS: Land and LaTierra . Attack 8
2.7 Land Attack 12
2.8 UDP Flood 13
2.9 Tấn công DNS 13
2.10 DDoS Attack 13
2.11 DRDoS Attack 14
III.CÁC CÔNG CỤ TẤN CÔNG DoS PHỔ BIẾN 15. luôn.
Một dạng riêng nguy hiểm hơn của DoS attack là DDoS (Distributed Denial of Service)
attack
DDoS attack là dạng tấn công trong đó nhiều hệ