Mô hình :
attacker(s)-->Master(s)-->daemon(s)-->victim(s)
- Attacker -----> Master : port 27665/TCP
- Master -----> Deamons : port 27444/UDP
- Daemon ------> Master : port 31335/UDP
- Deamon -----> UDP Flood đến mục tiêu (random port) .
5.2.2 Tribe Flood Network (TFN/TFN2K)
Tương tự như Trinoo nhưng Tribe Flood Network còn cho phép attacker sử
dụng thêm ICMP flood, SYN flood và Smurf .
Mô hình :
attacker(s)-->client(s)-->daemon(s)-->victim(s)
5.2.3 Stacheldraht
Stacheldraht là sự kết hợp các tính năng của Trinoo và TFN, bên cạnh đó còn
thêm khả năng mã hóa giao tiếp giữa attacker và stacheldraht masters.
Stacheldraht cung cấp cho attacker khá nhiều phương thức tấn công từ
chối dịch vụ : ICMP flood, SYN flood, UDP flood và Smurf .
Mô hình :
client(s)-->handler(s)-->agent(s)-->victim(s)
- Client ---> handler(s) : port 16660/tcp
- Handler <----> agent(s): port 65000/tcp, ICMP ECHO REPLY
5.2.4 Trinity
Trinity có hầu hết các kỹ thuật tấn công bao gồm: UDP, TCP SYN, TCP ACK,
TCP fragment, TCP NULL, TCP RST, TCP random flag, TCP
ESTABLISHED packet flood. Nó có sẵn khả năng ngẫu nhiên hóa địa chỉ bên
gởi. Trinity cũng hỗ trợ TCP flood packet với khả năng ngẫu nhiên tập
CONTROL FLAG. Trinity có thể nói là một trong số các công cụ DDoS nguy
hiểm nhất.
25
5.2.5 Shaft
Shaft có các kĩ thuật tấn công UDP, ICMP và TCP flood. Có thể tấn công phối
hợp nhiều kiểu cùng lúc. Có thống kê chi tiết cho phép attacker biết tình trạng
tổn thất của nạn nhân, mức độ quy mô của cuộc tấn công để điều chỉnh số
lượng Agent.
Mô hình :
client(s)-->handler(s)-->agent(s)-->victim(s)
- Client ----> handler(s): port 20432/tcp
- Handler ---> agent(s): port 18753/udp
- Agent ---> handler(s): port 20433/udp
5.2.6 X-flash
Vấn đề then chốt của hacker tấn công bằng hình thái cổ điển là nắm quyền
điều khiển càng nhiều máy tính càng tốt, sau đó anh ta sẽ trực tiếp phát động
tấn công hàng loạt từ xa thông qua một kênh điều khiển. Với quy mô mạng
lưới tấn công bao gồm vài trăm nghìn máy, hình thái này có thể đánh gục ngay
lập tức bất cứ hệ thống nào. Phối hợp với khả năng giả mạo địa chỉ IP, kiểu
tấn công này sẽ rất khó lần theo dấu vết.
26
Hình 08: Mô hình mạng Classic DDoS
Tuy nhiên, mô hình này có một số nhược điểm:
- Mạng lưới tấn công là cố định và tấn công xảy ra đồng loạt nên rất
dễ điều tra ngược tìm manh mối.
- Software cài lên các Infected Agent là giống nhau và có thể dùng
làm bằng chứng kết tội hacker.
- Phía nạn nhân có thể điều chỉnh hệ thống phòng vệ để ngăn chặn
vì mạng lưới tấn công là “khả kiến”.
- Hacker buộc phải trực tiếp kết nối đến mạng lưới các máy tấn công
tại thời điểm tấn công để điều khiển nên rất dễ lần ra thủ phạm.
X-Flash xuất hiện sau khi DantruongX và nhóm BeYeu phát hiện ra
những lỗ hổng bảo mật của IE và Flash Player. Nó chỉ bằng cách đơn giản là
gửi yêu cầu tới web server dạng HTTP Request ( yêu cầu dạng POST hay
GET) với một tốc độ cực kì nhanh kiến web services bị crash.
27
Cách tấn công : Hacker treo một file flash trên một trang web trung
gian có nhiều người truy xuất, người dùng truy xuất trang web này file flash sẽ
được tải về máy và được chương trình Flash thực thi. Từ đây vô số các yêu
cầu truy xuất sẽ gởi đến trang web mục tiêu.
Hình 09: Mô hình mạng X-Flash DDoS
Flash DDOS có một số đặc tính khiến cho việc ngăn chặn và phát hiện gần
như là không thể. Do mạng lưới tấn công phức tạp và tự hình thành :
- Không cần thiết phải nắm quyền điều khiển và cài DDOS
software vào các infected agent. Thay vào đó mọi user với một trình duyệt có
hỗ trợ nội dung Flash (có Flash Player) sẽ trở thành công cụ tấn công.
- Số lượng attack agent tùy thuộc vào số lượng user truy xuất các
trang web đã bị hacker “nhúng” nội dung flash, số lượng này thay đổi theo
thời gian và hoàn toàn không thể nhận biết địa chỉ IP nguồn, vì đây là các user
thông thường.
28
- Không hề có quá trình gởi lệnh và nhận báo cáo giữa hacker và
mạng lưới tấn công, toàn bộ lệnh tấn công được “nhúng” trong nội dung flash
và hacker không cần nhận báo cáo do đây là mô hình tấn công bất đồng bộ.
- Tấn công bất đồng bộ: Việc tấn công diễn ra không cần có mệnh
lệnh. Người dùng truy xuất trang web , load nội dung flash về trình duyệt và
Flash player thực thi nội dung flash thì ngay lập tức máy của họ trở thành một
attack agent-liên tục gởi hàng trăm request đến máy chủ web nạn nhân.
- Quy mô tấn công phụ thuộc vào số lượng trang web bị lợi dụng và
số lượng người dùng thường xuyên truy xuất các trang web này. Chỉ tính trung
bình hacker lợi dụng được 10 trang web và mỗi trang web này có số lượng
truy xuất khoảng 100 user tại một thời điểm thì tổng số request mà server nạn
nhân phải hứng chịu tại một thời điểm lên đến con số vài chục ngàn. Đây là
một số liệu kinh hoàng với bất kỳ ai làm quản trị hệ thống của bất cứ trang
web nào và kết quả thường là hệ thống tê liệt ngay lập tức.
Tuy nhiên, hiện nay chương trình Flash player mới nhất đã được fix
lỗi, cách tấn công Flash đã phần nào được hạn chế.
6. Phòng chống DDoS
6.1 Phòng chống 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 Phòng chống 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
tuân theo quy luật tất yếu của bảo mật máy tính: “Hacker luôn đi trước giới bảo
mật một bước”.
Có ba giai đoạn chính trong quá trình Phòng chống DDoS:
- Giai đoạn ngăn ngừa: tối thiểu hóa lượng Agent, tìm và vô hiệu hóa
các Handler.
- Giai đoạn đối đầu với cuộc tấn công: Phát hiện và ngăn chặn cuộc tấn
công, làm suy giảm và dừng cuộc tấn công, chuyển hướng cuộc tấn công.
29
- Giai đoạn sau khi cuộc tấn công xảy ra: thu thập chứng cứ và rút kinh
nghiệm.
Hình 10: Các giai đoạn chi tiết trong phòng chống DDoS
6.1.1 Tối thiểu hóa lượng Agent
Từ phía người dùng: một phương pháp rất tốt để ngăn ngừa tấn công DDoS
là từng người dùng Internet sẽ tự đề phòng không để bị lợi dụng tấn công hệ
thống khác. Muốn đạt được điều này thì ý thức và kỹ thuật phòng chống phải
được phổ biến rộng rãi cho mọi người dùng. Mạng lưới Botnet sẽ không bao
giờ hình thành nếu không có người nào bị lợi dụng trở thành Agent. Mọi
người dùng phải liên tục thực hiện các quá trình bảo mật trên máy vi tính
của mình. Họ phải tự kiểm tra sự hiện diện của Agent trên máy của mình,
điều này là rất khó khăn đối với những người dùng thông thường. Một giải
pháp đơn giản là nên cài đặt và update liên tục các software như antivirus,
antitrojan và các bản patch của hệ điều hành.
Từ phía Network Service Provider: Thay đổi cách tính tiền dịch vụ
truy cập theo dung lượng sẽ làm cho user lưu ý đến những gì họ gửi, như vậy
về mặt ý thức tăng cường phát hiện DDoS Agent sẽ tự nâng cao ở mỗi người
dùng.
30
6.1.2 Tìm và vô hiệu hóa các Handler
Một nhân tố vô cùng quan trọng trong mạng Botnet là Handler, nếu có thể
phát hiện và vô hiệu hóa Handler thì khả năng Phòng chống DDoS thành
công là rất cao. Bằng cách theo dõi các giao tiếp giữa Handler và Client hay
Handler và Agent ta có thể phát hiện ra vị trí của Handler. Do một Handler
quản lý nhiều, nên triệt tiêu được một Handler cũng có nghĩa là loại bỏ một
lượng đáng kể các Agent trong mạng Botnet.
6.1.3 Phát hiện dấu hiệu của cuộc tấn công
Có nhiều kỹ thuật được áp dụng:
- Agress Filtering: Kỹ thuật này kiểm tra xem một packet có đủ tiêu
chuẩn ra khỏi một subnet hay không dựa trên cơ sở gateway của một subnet
luôn biết được địa chỉ IP của các máy thuộc subnet. Các packet từ bên trong
subnet gửi ra ngoài với địa chỉ nguồn không hợp lệ sẽ bị giữ lại để điều tra
nguyên nhân. Nếu kỹ thuật này được áp dụng trên tất cả các subnet của
Internet thì khái nhiệm giả mạo địa chỉ IP sẽ không còn tồn tại.
- MIB statistics: trong Management Information Base (SNMP-Simple
Network Management Protocol ) của route luôn có thông tin thống kể về sự
biến thiên trạng thái của mạng. Nếu ta giám sát chặt chẽ các thống kê của
Protocol ICMP, UDP và TCP ta sẽ có khả năng phát hiện được thời điểm bắt
đầu của cuộc tấn công để tạo “quỹ thời gian vàng” cho việc xử lý tình
huống.
6.1.4 Làm suy giảm hay dừng cuộc tấn công
Dùng các kỹ thuật sau:
- Load balancing: Thiết lập kiến trúc cân bằng tải cho các server trọng
điểm sẽ làm gia tăng thời gian chống chọi của hệ thống với cuộc tấn công
DDoS. Tuy nhiên, điều này không có ý nghĩa lắm về mặt thực tiễn vì quy
mô của cuộc tấn công là không có giới hạn.
- Throttling: Thiết lập cơ chế điều tiết trên router, quy định một khoảng
tải hợp lý mà server bên trong có thể xử lý được. Phương pháp này cũng có
31
thể được dùng để ngăn chặn khả năng DDoS traffic không cho user truy cập
dịch vụ. Hạn chế của kỹ thuật này là không phân biệt được giữa các loại
traffic, đôi khi làm dịch vụ bị gián đoạn với user, DDoS traffic vẫn có thể
xâm nhập vào mạng dịch vụ nhưng với số lượng hữu hạn.
- Drop request: Thiết lập cơ chế drop request nếu nó vi phạm một số quy
định như: thời gian delay kéo dài, tốn nhiều tài nguyên để xử lý, gây
deadlock. Kỹ thuật này triệt tiêu khả năng làm cạn kiệt năng lực hệ thống,
tuy nhiên nó cũng giới hạn một số hoạt động thông thường của hệ thống, cần
cân nhắc khi sử dụng.
6.1.5 Chuyển hướng cuộc tấn công
Honeyspots: Một kỹ thuật đang được nghiên cứu là Honeyspots.
Honeyspots là một hệ thống được thiết kế nhằm đánh lừa attacker tấn công
vào khi xâm nhập hệ thống mà không chú ý đến hệ thống quan trọng thực
sự.
Honeyspots không chỉ đóng vai trò “Lê Lai cứu chúa” mà còn rất hiệu
quả trong việc phát hiện và xử lý xâm nhập, vì trên Honeyspots đã thiết lập
sẵn các cơ chế giám sát và báo động.
Ngoài ra, Honeyspots còn có giá trị trong việc học hỏi và rút kinh
nghiệm từ 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ộ mạng Botnet là rất
cao.
6.1.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 lưu lại thì sẽ được đưa ra phân tích. Quá trình
phân tích này rất có ích cho việc tinh chỉnh lại các hệ 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.
32
- 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 Traceback từ attacker khá hữu
hiệu.
- Bevent Logs: Bằng cách phân tích file log sau cuộc tấn công, quản trị
mạng có thể tìm ra nhiều manh mối và chứng cứ quan trọng.
6.2 Những vấn đề có liên quan
DDoS là một kiểu tấn công rất đặc biệt, điểm cực kỳ hiểm ác của DDoS làm cho
nó khó khắc phục là “DDoS đánh vào nhân tố yếu nhất của hệ thống thông tin –
con người”. Từ đặc điểm này của DDoS làm phát sinh rất nhiều các vần đề mà
mọi người trong cộng đồng Internet phải cùng chung sức mới có thể giải quyết.
Sau đây là các yếu điểm mà chúng ta cần phải hạn chế :
6.2.1 Thiếu trách nhiệm với cộng đồng
Con người thông thường chỉ quan tâm đầu tư tiền bạc và công sức cho hệ
thống thông tin của “chính mình”. DDoS khai thác điểm này rất mạnh ở
phương thức giả mạo địa chỉ và Broadcast amplification.
- IP spoofing: một cách thức đơn giản nhưng rất hiệu quả được tận dụng
tối đa trong các cuộc tấn công DDoS. Thực ra chống giả mạo địa chỉ không có
gì phức tạp, như đã đề cập ở phần trên, nếu tất cả các subnet trên Internet đều
giám sát các packet ra khỏi mạng của mình về phương diện địa chỉ nguồn hợp
lệ thì không có một packet giả mạo địa chỉ nào có thể truyền trên Internet
được.
Đề nghị: “Tự giác thực hiện Egress Filtering ở mạng do mình quản lý”.
Hi vọng một ngày nào đó sẽ có quy định cụ thể về vấn đề này cho tất cả các
ISP trên toàn cầu.
- Broadcast Amplification: tương tự IP spoofing, nó lợi dụng toàn bộ
một subnet để flood nạn nhân. Vì vậy, việc giám sát và quản lý chặt chẽ khả
năng broadcast của một subnet là rất cần thiết. Quản trị mạng phải cấu hình
toàn bộ hệ thống không nhận và forward broadcast packet.
33
6.2.2 Sự im lặng
Hầu hết các tổ chức đều không có phản ứng hay im lặng khi hệ thống của
mình bị lợi dụng tấn công hay bị tấn công. Điều này làm cho việc ngăn chặn
và loại trừ các cuộc tấn công trở nên khó khăn. Mọi việc trở nên khó khăn khi
mọi người không chia sẻ kinh nghiệm từ các cuộc tấn công, trong khi giới
hacker thì chia sẻ mã nguồn mở của các công cụ, một cuộc chơi không cân sức
.
Đề nghị:
- Mỗi tổ chức có liên quan nên thiết lập quy trình xử lý xâm nhập vào tổ chức,
nhóm chuyên trách với trách nhiệm và quy trình thật cụ thể. Các ISP nên thiết lập
khả năng phản ứng nhanh và chuyên nghiệp để hỗ trợ các tổ chức trong việc thực
hiện quy trình xử lý xâm nhập của mình.
- Khuyến khích các quản trị mạng gia nhập mạng lưới thông tin toàn cầu của các
tổ chức lớn về bảo mật nhằm thông tin kịp thời và chia sẻ kinh nghiệm với mọi
người
- Tất cả các cuộc tấn công hay khuyết điểm của hệ thống đều phải được báo cáo
đến bộ phận tương ứng để xử lý.
6.2.3 Tầm nhìn hạn hẹp
Nếu chỉ thực hiện các giải pháp trên thôi thì đưa chúng ta ra khỏi tình trạng
cực kỳ yếu kém về bảo mật. Các giải pháp này không thực sự làm giảm các rủi
ro của hệ thống thông tin mà chỉ là các giải pháp tình thế. Có những vấn đề
đòi hỏi một cái nhìn và thái độ đúng đắn của cộng đồng Internet. Cần phải có
những nghiên cứu thêm về mặt quy định bắt buộc và pháp lý nhằm hỗ trợ
chúng tac giải quyết các vấn đề mà kỹ thuật không thực hiện nỗi. Một số vấn
đề cần thực hiện thêm trong tương lai:
- Giám sát chi tiết về luồng dữ liệu ở cấp ISP để cảnh cáo về cuộc tấn công.
- Xúc tiến đưa IPSec và Secure DNS vào sử dụng.
- Khẳng định tầm quan trọng của bảo mật trong quá trình nghiên cứu và phát
triển của Internet II.
34
Xây dựng giải pháp phòng chống DDoS cho máy chủ web
Chương I. Giới thiệu chung
Chương II. Tổng quan về DDoS
Chương III. Tổng quan về Iptables
Mô hình mạng triển khai hệ thống phòng chống :
1 Tấn công làm cạn kiệt băng thông
2 Tấn công làm cạn kiệt tài nguyên
2 Những vấn đề có liên quan
2 Cấu trúc của Iptables
2 Tổng quan về Snort
Mô hình triển khai thực tế
Tài liệu liên quan
Tài liệu mới
No comments :
Speak Your Mind: