Denial Of Service Attack & Solutions - Tấn công từ chối dịch vụ và các giải pháp - Phần II

Smurf Attack

Đây có lẽ là kiểu tấn công đáng sợ nhất do tác động của mạng khuếch đại.khi bạn gửi ping request (ICMP ECHO REQUEST)đến một máy tính hoặc một hệ thống mạng, máy tính or hệ thống đó sẽ gửi lại cho bạn ping reply(ICMP ECHO REPLY), dựa vào điều này kẻ tấn công sẽ giả mạo địa chỉ IP nguồn là nạn nhân và gửi các packet đến mạng khuếch đại ,lúc đó mạng khuếch đại sẽ gửi các packet trả lời như thế cho nạn nhân ( vì kể tấn công đã giả mạo địa chỉ IP là nạn nhân )

ping request
-attacker - ------------------------------------------> - mạng khuếch đại-
IP spoofing

- victim - <------------------------------------------ - mạng khuếch đại -
ping reply

Smurf attack tận dụng directed broadcast và yêu cầu tối thiểu là 3 diễn vien:
- attacker
- victim
- mạng khuếch đại ( càng lớn thì victim chết càng nhanh )

Solutions

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ài liệ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

SYN flood attack

Đến khi Smurf attack trở nên thình hành thì SYN flood attack ( ở đây tôi gọi tắt là SFA) gây tàn phá nhiều nhất . 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)

clien 1. ------------ SYN gửi từ clien ----------------> sever
clien 2. <---- SYN/ACK gửi từ sever ---------------- sever
clien 3. ----------------- ACK gửi từ clien ----------------> sever

sau 3 bước trên kết nối mới được thiệt lập giữa hai hệ thống.Trong hoàn cảnh bình thường ,SYN packet từ một công cụ thể trên hệ thông A đến một cổng cụ thể trên hệ thống B trong tình trang LISTEN.Vào thời điểm này kết nối trên hệ thông B ở tình trạng SYN_RECV. Vào giai đoạn này hệ thống B sẽ tìm cách gửi packet SYN/ACK về cho hệ thống A. Nếu mọi sự ổn thỏa hệ thông A sẽ gửi trả packet ACK,và kết nối truyển sang tình trạng ESTABLISHED.

Dù có nhiêu lúc cơ chế này chẳng có vấn đề gì ,nhưng trong hệ thống có những chỗ yếu cỗ hữu để kẻ tân công có thể lơi dụng để DOS .Vấn đề là đa số hệ thông phân phối số lượng tài nguyên nhất định khi thiết lập kết nối tiềm tàng hoặc kết nối chưa được thiết lập hẳn ( SYN_RECV).Tuy rằng 1 hệ thống chấp nhân hàng trăm kết nối vào một cổng cụ thể ( ví dụ như cổng 80 ) nhưng chỉ lấy một chục yêu cầu kết nối là hết sạch tài nguyên phân phối cho thiết lập kết nối. Đây chính là điểm mà kẻ tấn công sẽ lợi dụng để vô hiệu hóa hệ thống. Attacker (hệ thống A ) sẽ gửi SYN packet đến Victim ( hệ thống B) và giả mạo địa chỉ IP của hệ thống C ( hệ thống C này không tồn tại trên thực tế nha) Lúc đó hệ thống B sẽ sử lí như thế nào ? hệ thống B sẽ gửi packet SYN/ACK đến hệ thống C. Giả sử rằng hệ thống C tồn tại ,nó sẽ gửi packet RST cho hệ thống B (vì nó không khởi đông kết nối).Nhưng chăng đời nào ATTACKER giả mạo IP của một hệ thông tồn tại ,chính vì thế mà hệ thống B sẽ chẳng bao giờ nhận được packet RST từ hệ thông C.Và lúc đó hệ thống B sẽ đặt kết nối này vào hàng đợi ( SYN_RECV).Do hàng đợi kết nối thường rất nhỏ attacker chỉ cần gửi vài packet SYN ( sau 10 giây thì có thể vô hiệu hóa hoàn toàn một cổng ).

Solutions

Muốn biết mình có bị tấn công SYN flood không ban có thể dùng lênh :
Netstat -a
nếu thấy nhiều kết nối trong tình trạng SYN_RECV thì có nghĩa bạn đang bi tấn công.
Một số giải pháp :
- Tăng kích thước hàng đợi kết nối
-Giảm khoảng thời gian thiết lập kết nối
-tránh né tấn công syn flood bằng phần mềm
-IDS mạng

hix! mệt wa' trời lun . lần sau rảnh sẽ trình bày về : tấn công DNS

Continue
Email: Ratholy@yahoo.co.uk

Thứ Năm, 30/06/2005 13:13
51 👨 1.649
0 Bình luận
Sắp xếp theo
    ❖ Tổng hợp