Tải bản đầy đủ (.doc) (4 trang)

Tấn công từ chối dịch vụ ( DENIAL OF SERVICE - DoS )

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (48.69 KB, 4 trang )

Tấn công từ chối dịch vụ ( DENIAL OF SERVICE - DoS ):
trang này đã được đọc lần
A. GIỚI THIỆU CHUNG
.A.1. DoS attack là gì?
DoS là làm cho các service bị tê liệt, ko còn đáp ứng được các request nữa. Loại attack này rất
dễ thực hiện và lại rất khó bảo vệ hệ thống khỏi các DoS attack. vấn đề là Unix cho rằng hệ
thống của users sẽ vẫn chạy được
.A.2. Có Hệ điều hành nào an toàn hơn ko?
Câu trả lời là ko. Tính an toàn của hệ thống phụ thụôc vào administrator.
Hệ thống Unix phức tạp hơn và có nhiều build-in prog cũng như services. điều này cũng mở ra
nhiều cách để crash the system từ bên trong hơn win NT & 95 network.
Uniz có nhiều tools & prog để tìm ra các attack và giám sát users. Trong khi wind lại rất khó làm
được.
Một unix admin trung bình thì cũng có nhiều kinh ngiệm hơn là microsoft admin.
Tóm lại unix an toàn hơn đối với DoS attack từ bên trong. Tuy nhiên microsoft lại có tính secure
cao hơn đối với các attack từ bên ngoài chỉ vì nó có ít service hơn.
.B. ĐIỂM CƠ BẢN CHO 1 ATTACK
.B.1. SWAP SPACE
hầu hết các system đều có vài trăm MB swap space để phục vụ client requests. Swap space
thuờng dùng cho các process con có thời gian ngắn nên DoS có thể được dựa trên phương thức
làm tràn đầy swap space.
.B.2. BANDWIDTH
nếu bandwith quá cao, network sẽ trở nên vô dụng. Do đó hầu hết Dos att tác động lên
bandwith bằng nhiều cách.
.B.3. KERNEL TABLES
làm tràn kernel tables có thể gây ra các vấn đề nghiêm trọng trên hệ thống đặc biệt là các h
thống write caches và small write buffers.
Kernel memory allocation cũng là tiêu điểm nhạy cảm. kernel có giới hạn kernelmap, nên nếu
system đạt đến giới hạn này nó ko thể định vị thêm kernel memory và fải reboot. Kernel memory
ko chỉ use cho RAM, CPUs, Screen ... mà nó còn use cho các process thông thường. Nghĩa là bất
cứ ht nào cũng có thể crashed nhanh chóng dễ dàng với những giải thuật nhỏ.


đối với solaris 2x lệnh sar có thể đo lường và bào cáo về kernel memory đang dùng. nhưng
sunOS 4x thì ko có lệnh sar. nếu bạn use Solaris, use lệnh sar –k 1 để lấy thông tin, lệnh netstat
–k cũng cò thể dùng để xem kermel memory đã chiếm bao nhiêu trong subpaging.
.B.4. RAM
Dos attack chiếm 1 khoảng lớn của RAM cũng có thể gây ra các vấn đề lớn. NFS và mailserver là
dễ bị attack nhất vì chúng ko cần nhiều RAM. 1 NFS client thường sẽ tạo ra rất nhiều catching,
nhưng 1 NFS client cũng có thể là anything trong prog mà bạn có thể tự viết lấy.
.B.5. DISKS
1 cách attack cổ điển là làm đầy harddisk. HD có thể bị overloaded và ko thể use bằng nhiều
cách.
.B.6. CACHES
DoS attack liên quan đến caches được dựa trên phương pháp làm tắc nghẽn or ngăn ngừa
cache.
Trong solaris 2x:
Directory name lookup cache: liên hệ tên file với vnode.
Inode cache: thông tin cache đọc từ đĩa trong trường hợp cần đọc lại.
Rnode cache: giữ thông tin về ht file NFS.
Buffer cache: cache Inode làm tắc nghẽn gián tiếp I/O của đĩa thực.
.B.7. INETD
1 khi inetd bị crashed, tất cả các service khác đi qua inetd sẽ ko còn làm việc được nữa.
.C. ATTACK TỪ BÊN NGOÀI.
.C.1. Sự thuận lợi của Finger
hầu hết các prog finger đều hỗ trợ chuyển tiếp đến host khác. Vd: $finger
@ finger đi qua system.one.com và system.two.com. do đó
two sẽ tưởng là one finger mình. pp này dùng để che dấu cũng như cho các very dirty DoS
attack. Hãy xem vd sau: $finger @@@@@@@@@@@@@@@@@@@@@@host.we.attack tất
cả các @ sẽ nhận finger để finger host.we.attack rất nhiều lần làm host này bị ảnh hưởng rất
lớn.
biện pháp là cài đặt finger ko hỗ trợ chuyển tiếp như GNU finger, or bạn cũng có thể tắt finger
service.

.C.2. UDP AND SUNOS 4.1.3.
sunOS 4.1.3 bị lỗi boot nếu bạn gởi tới 1 packet với thông tin sai trong header. Đây là nguyên
nhân nếu như ip-options biểu diễn sai kích cỡ của packet.
biện pháp: cài đặt patch đúng.
.C.3. Làm tê liệt X-WINDOWS
nếu host cho phép telnet tới X-Windows port (thường là từ 6000 đến 6025), bạn có thể làm tê
liệt cả ht x-windows bằng cách tạo ra hàng loạt kết nối telnet or prog gởi hàng loạt
XopenDisplay() đến port đó. điều này cũng có thể áp dụng cho Motif or Open windows.
biện pháp: đóng kết nối tới x-windows port.
.C.4. Cố ý sử dụng UDP SERVICES
rất dễ use UDP services (như echo, time, datetime, chargen) lặp lại 1 cách liên tục nhờ các IP-
spoofing thông thường. Vd:
from-IP=127.0.0.1
to-IP=system.we.attack
packet type:UDP
from UDP port 7
to UDP port 7
header yêu cầu là packet đến từ 127.0.0.1 (lặp lại liên tục) và tiêu điểm là echo port tại
system.we.attack. đến khi system.we.attack biết là 127.0.0.1 system.we.attack và vòng lặp được
thiết lập. chú ý là system.we.attack trông giồng như DNS-name nhưng tiêu điểm luôn luôn là 1
IP number.
.C.5. ATTACKING WITH LYNX CLIENTS
www server sẽ tách httpd process thành phản hồi cho các request từ client. Process chỉ kéo dài
khoảng 1 giây và vì thế load sẽ ko thực hiện được nếu bạn use ps. DoS atack use hàng loạt w3
client (lynx client) là rất an toàn nhưng nên nhớ là lệnh netstat cũng có thể phát hiện ra attack.
Httpd:s (như http-gw)
.C.6. Telnet
use thử script này:
while : ; do
telnet system.we.attack &

done
atack kiểu này cũng tốn 1 ít bandwith, nhưng nó chẳng là gì so với pp finger or các pp khác.
Nhưng 1 số firewalls & httpd:s lại nghĩ đây là vòng lặp và tự động tắt chúng, cho đến khi admin
gởi lệnh kill - HUP
.C.7. use telnet trong SOLARIS 2.4
nều attacker tạo ra kết nối telnet tới solaris 2.4 host và thoát ra use:
control -}
quit
thì inetd sẽ tiếp tục mãi mãi (ít nhất là vài trăm lần)
biện pháp: cài đặt patch đúng.
.C.8. làm sao để DISABLE ACCOUNTS
1 vài ht disable accout sau n lần bad login or chờ n giây. bạn có thể use tíng năng này để lock
out 1 user nào đó từ ht.
.C.9. LINUX AND TCP TIME, DAYTIME
inetd trong linux có thể bị crash nếu gởi nhiều SYN packet tới daytime (port 13) or time (port 37)
.C.10. attack bằng chuyển tiếp ICMP
gateways use chuyển tiếp ICMP để yêu cầu ht overide routing tables. để vô hiệu chuyển tiếp
icmp, bạn fải biết kết nối hiện tại để gởi tới 1 route làm đứt kết nối or gởi tới host messages lỗi
nều như kết nối đó ko use cryptation
vd: (gởi messages lỗi)
destination unreachable
time to live exceeded
parameter problem
packet too big
message này sẽ reset kết nối.
.C.11. BROADCAST STORMS
đây là pp thông dụng nhất trong mạng mà host hoạt động như các gateway. pp cơ bản là gởi
nhiều packet tới tất cả các host với đích đến ko có thực. mỗi host sẽ cố gắng chuyển từng packet
dẫn đến packet đó được chuyển lòng vòng trong 1 thời gian dài và nếu có packet mới được tiếp
tục gởi tới mạng sẽ nhanh chóng gặp rắc rối.

loại attack này có thể là ping, finger, & sendmail. Nhưng hầu hết services có thể vô hiệu bằng vài
cách khác.
.C.12. SYN FLOODING
syn packet được use trong 3-way handshake do đó syn flooding attack được dựa trên pp
incomplete handshake. Attacker host gởi tới tấp các syn packet nhưng ko phản hồi lại các ACK
packet.
bạn có thể xem thêm về syn flooding tại:
[.1.] />Article by Christopher Klaus, including a "solution".
[.2.] />2600, Summer, 1996, pp. 6-11. FLOOD WARNING by Jason Fairlane
[.3.] />IP-spoofing Demystified by daemon9 / route / infinity
for Phrack Magazine
.C.13. PING FLOODING
unix: ping –s host
windows 9x: ping –t –l 256 xxx.xxx.xxx.xxx
ex: ping –l 65510 address.to.the.machine
nó có thể bị tê liệt or reboot.
* Kernel phiên bản từ 2.0.7 đến 2.0.20 or AIX4, OSF, HPUX10.1, DUXIX 4.0 -->> crashed
* OSF/1, 3.2C, solaris 2.4 x86 -->> reboot.
.C.14. FLEXlm
bất cứ host nào chạy FLEXlm có thể bị shutdown bằng lệnh:
#lmdown –c /etc/licence.dat
lmdown – copyright © 1989, 1991 highland software, inc.
shutting down FLEXlm on nodes: xxx
are you sure? [y/n]: y
shut down the node xxx
#.

×