Tấn công từ chối dịch vụ (DoS) là một trong những hình thức tấn công mạnh mẽ nhất được sử dụng bởi hacker để làm tổn hại đến các công ty hoặc tổ chức. Tấn công này là một trong những cuộc tấn công mạng nguy hiểm nhất gây ra sự mất tính sẵn sàng của dịch vụ từ đó gây tổn thất hàng triệu thậm chí hàng tỷ đô la, tùy thuộc vào thời gian tấn công. Trong vài năm qua, việc sử dụng các cuộc tấn công loại này ngày một gia tăng do sự sẵn có của các công cụ miễn phí. Các công cụ này có thể bị chặn dễ dàng bởi tường lửa. Tuy nhiên, tồn tại một số cuộc tấn công DoS thông minh có thể vượt qua hầu hết các biện pháp hạn chế. Trong bài này, chúng ta sẽ xem xét về tấn công DoS, các biến thể của nó và các công cụ được sử dụng để thực hiện tấn công. Đồng thời chúng ta cũng sẽ xem cách ngăn chặn và loại bỏ nguy cơ của các cuộc tấn công này.
Tấn công từ chối dịch vụ là gì?
Tấn công DoS là một nỗ lực để làm cho một hệ thống hoặc máy chủ không sẵn sàng hoặc ngừng cung cấp dịch vụ cho người dùng hợp pháp. Điều này đạt được bằng cách làm ngập hàng đợi yêu cầu của máy chủ với các yêu cầu giả mạo khi đó máy chủ sẽ không thể xử lý các yêu cầu của người dùng hợp pháp được nữa.
Nói chung, có hai dạng tấn công DoS. Dạng đầu tiên có thể làm hỏng máy chủ và dạng tấn công DoS thứ hai chỉ hướng đến mục tiêu làm tràn và ngừng dịch vụ.
DDoS hay Tấn công từ chối dịch vụ phân tán
Đây là hình thức tấn công DoS phức tạp và có hiệu quả mạnh mẽ, trong đó nhiều máy tính hoặc thiết bị cùng thực hiện các cuộc tấn công DoS lên cùng một máy chủ đích. Khi tấn công DoS được phân tán trên một nhóm lớn các máy tính như vậy, nó được gọi là tấn công từ chối dịch vụ phân tán hay DDoS.
Để thực hiện một cuộc tấn công DDoS, kẻ tấn công sẽ sử dụng một mạng lưới các zombie, đó là một nhóm các máy tính bị nhiễm mã độc trên đó kẻ tấn công đã âm thầm cài đặt công cụ tấn công DoS. Bất cứ khi nào kẻ tấn công muốn thực hiện tấn công DDoS, hắn có thể điều khiển và sử dụng tất cả các máy tính của mạng ZOMBIE nhằm thực hiện việc tấn công.
Nói một cách đơn giản, khi một hệ thống máy chủ bị tràn các yêu cầu giả mạo đến từ nhiều nguồn (có khả năng là hàng trăm nghìn), nó được gọi là bị tấn công DDoS. Trong trường hợp này, việc chặn một hoặc một vài địa chỉ IP để ngăn chặn cuộc tấn công là không khả thi. Khi có càng nhiều thành viên trong mạng zombie, thì khả năng tấn công của hacker càng trở lên mạnh mẽ hơn. Để tạo được các mạng zombie này, tin tặc thường sử dụng một mã độc dạng Trojan.
Có ba kiểu tấn công DDoS cơ bản:
- Tấn công DDoS tầng ứng dụng
- Tấn công DoS giao thức
- Tấn công Volume-based DDoS
Tấn công DDoS tầng ứng dụng: Tấn công DDoS tầng ứng dụng là các dạng tấn công nhắm đến mục tiêu là các lỗ hổng của Windows, Apache, OpenBSD, hoặc các lỗ hổng phần mềm khác nhằm khai thác tấn công và làm ngừng hoạt động của máy chủ.
Tấn công DDoS giao thức: tấn công DoS giao thức là hình thức tấn công DoS lên tầng giao vận bao gồm các kiểu tấn công: Synflood, Ping of Death,…
Tấn công Volume-based DDoS: Kiểu tấn công này bao gồm ICMP floods, UDP floods, và các dạng tấn công làm tràn dịch vụ khác dựa trên số lượng lớn các gói tin giả mạo.
Có rất nhiều công cụ có sẵn miễn phí có thể được sử dụng để thực hiện tấn công và làm tràn một máy chủ. Một số công cụ cũng hỗ trợ mạng zombie để thực hiện các cuộc tấn công DDoS. Dưới đây là một số công cụ tấn công DoS miễn phí có sẵn.
1. LOIC (Low Orbit Ion Canon)
LOIC là một trong những công cụ tấn công DoS phổ biến nhất có sẵn trên Internet. Công cụ này đã được nhóm tin tặc nổi tiếng Anonymous sử dụng để tấn công nhiều mạng của các công ty lớn vào năm ngoái. Anonymous không chỉ sử dụng công cụ này, mà còn yêu cầu người dùng Internet tham gia các cuộc tấn công DDoS thông qua IRC.
Nó có thể được sử dụng đơn giản bởi một người dùng duy nhất để thực hiện tấn công DoS lên các máy chủ nhỏ. Công cụ này thực hiện tấn công DoS bằng cách gửi các yêu cầu UDP, TCP hoặc HTTP đến máy chủ nạn nhân. Người dùng chỉ cần biết địa chỉ IP của máy chủ và công cụ sẽ thực hiện phần còn lại. Việc sử dụng cực kỳ dễ dàng, ngay cả đối với người mới bắt đầu.

Hình 1. Công cụ tấn công DoS LOIC
Để thực hiện tấn công, người dùng chỉ cần đơn giản nhập URL hoặc địa chỉ IP và sau đó chọn các tham số tấn công. Nếu không chắc chắn các tham số này có thể để mặc định. Sau khi lựa chọn các tham số, để bắt đầu thực hiện tấn công, bấm vào “IMMA CHARGIN MAH LAZER”. Trong một vài giây, trang web đã bị ngừng đáp ứng các yêu cầu.
Công cụ này cũng có chế độ HIVEMIND. Nó cho phép kẻ tấn công kiểm soát các hệ thống LOIC từ xa để thực hiện một cuộc tấn công DDoS. Tính năng này được sử dụng để kiểm soát tất cả các máy tính khác trong mạng zombie. Công cụ này có thể được sử dụng cho cả các cuộc tấn công DoS và DDoS vào bất kỳ trang web hoặc máy chủ nào.
Tuy nhiên, một lưu ý hết sức quan trọng là LOIC không có khả năng che dấu địa chỉ IP, do đó, nếu muốn sử dụng nó để thực hiện các tấn công thực tế thì có thể gặp vấn đề.
Download LOIC ở đây:
2. XOIC
XOIC là một công cụ tấn công DoS khác. Nó thực hiện một cuộc tấn công DoS một máy chủ bất kỳ với địa chỉ IP, cổng và giao thức do người dùng lựa chọn. Các nhà phát triển XOIC cho rằng XOIC mạnh hơn LOIC theo nhiều cách. Giống như LOIC, nó đi kèm với một giao diện GUI dễ sử dụng, vì vậy người mới bắt đầu có thể dễ dàng sử dụng công cụ này để thực hiện các cuộc tấn công trên các trang web hoặc máy chủ khác.

Hình 2. Giao diện công cụ XOIC
Công cụ này đi kèm với ba chế độ tấn công. Chế độ đầu tiên được gọi là chế độ thử nghiệm, rất cơ bản. Chế độ thứ hai là chế độ tấn công DoS bình thường. Và cuối cùng là chế độ tấn công DoS đi kèm với các thông điệp TCP / HTTP / UDP / ICMP.
Đây là một công cụ hiệu quả và có thể được sử dụng để tấn công các trang web nhỏ. Không bao giờ nên thử nó với chính trang web của mình bởi nó có thể gây hỏng máy chủ web.
Download XOIC: http://sourceforge.net/projects/xoic/
3. HULK (HTTP Unbearable Load King)
HULK là một công cụ tấn công DoS khác tạo ra một yêu cầu duy nhất cho mỗi truy vấn làm xáo trộn lưu lượng truy cập vào một máy chủ web nhằm tránh việc bị phát hiện bởi các kỹ thuật phát hiện tấn công dựa trên các mẫu đã biết.
Nó có một danh sách các tác nhân người dùng đã biết để sử dụng ngẫu nhiên với các yêu cầu. Nó cũng sử dụng giả mạo tham chiếu và có thể bỏ qua các công cụ lưu bộ nhớ đệm, do đó nó có thể trực tiếp truy cập vào nhóm tài nguyên của máy chủ.
Khi kiểm tra trên một máy chủ Web sử dụng IIS 7 với 4 GB RAM, HULK làm sập server trong thời gian chưa đến một phút.
Download HULK tại đây.
4. DDOSIM—Công cụ mô phỏng tấn công DDoS Layer 7
DDOSIM là một công cụ tấn công DoS phổ biến khác. Như tên của công cụ cho thấy, nó được sử dụng để thực hiện các cuộc tấn công DDoS bằng cách mô phỏng một số máy chủ zombie. Tất cả các máy chủ zombie tạo kết nối TCP đầy đủ đến máy chủ đích.
Công cụ này được viết trên ngôn ngữ C++ và chạy trên các hệ thống Linux.
Các chức năng cơ bản của DDOSIM là:
- Mô phỏng một số zombies trong tấn công
- Sinh ngẫu nhiên địa chỉ IP
- Tấn công dựa trên TCP-connection
- Tấn công DDoS tầng ứng dụng
- Tấn công HTTP DDoS với truy vấn hợp lệ
- DDoS HTTP với truy vấn không hợp lệ (tương tự như tấn công DC++)
- SMTP DDoS
- Tràn TCP connection lên cổng ngẫu nhiên
Download DDOSIM tại đây.
5. R-U-Dead-Yet
R-U-Dead-Yet (RUDY) là một công cụ tấn công DoS dựa trên HTTP post. Nó thực hiện tấn công DoS bằng cách gửi một trường form dài thông qua phương thức HTTP POST. Công cụ này không có giao diện GUI mà sử dụng giao diện console. Nó phát hiện các form trên một URL nhất định và cho phép người dùng chọn các form và trường nào sẽ được sử dụng cho tấn công DOS dựa trên phương thức POST.
Download RUDY.
6. Tor’s Hammer
Tor’s Hammer là một công cụ tấn công DoS khác. Công cụ này được viết trên ngôn ngữ Python. Ưu điểm lớn nhất của nó là nó có thể thực hiện tấn công một cách nặc danh thông qua mạng TOR. Công cụ này hoạt động hiệu quả trong việc tấn công các máy chủ Apache hoặc IIS.
Download TOR’s Hammer.
7. PyLoris
PyLoris là một công cụ kiểm tra cho các máy chủ. Nó có thể được sử dụng để thực hiện các cuộc tấn công DoS trên một dịch vụ. Công cụ này có thể sử dụng các proxy SOCKS và các kết nối SSL để thực hiện một cuộc tấn công DoS trên một máy chủ. Mục tiêu của nó là các giao thức khác nhau, bao gồm HTTP, FTP, SMTP, IMAP và Telnet. Phiên bản mới nhất của công cụ này đi kèm với giao diện đồ họa GUI đơn giản và dễ sử dụng. Không giống như các công cụ tấn công DoS truyền thống khác, công cụ này tấn công trực tiếp lên dịch vụ.
Download PyLoris.
8. OWASP DOS HTTP POST
Một công cụ thực thi các tấn công DoS khác là OSWASP DOS HTTP POST. Công cụ này được sử dụng để kiểm tra khả năng phòng thủ của máy chủ web đối tấn công DoS. Ngoài tác dụng sử dụng để kiểm tra khả năng phòng thủ của máy chủ, công cụ này còn được sử dụng để tạo ra các cuộc tấn công thật vào các trang web nhỏ.
Download OWASP DOS HTTP POST tại đây.
9. DAVOSET
DAVOSET là một công cụ sử dụng để thực hiện tấn công DDoS. Phiên bản mới nhất của nó cung cấp thêm tính năng cookie và rất nhiều tính năng khác giúp cho việc tấn công khó bị ngăn chặn hơn.
Có thể tải về phiên bản của DavoSET tại đây.
10. Công cụ GoldenEye HTTP Denial Of Service
GoldenEyelà một công cụ đơn giản nhưng hiệu quả để thực hiện tấn công DoS được phát triển bằng ngôn ngữ Python. Công cụ này được sử dụng để kiểm thử khả năng phòng thủ của website tuy nhiên đôi khi cũng được sử dụng như các công cụ tấn công thực sự.
Có thể tải về GoldenEye tại đây.
Phát hiện và ngăn chặn các tấn công từ chối dịch vụ (Denial of Service – DoS)
Tấn công DoS là một dạng tấn công rất nguy hiểm cho mọi công ty và tổ chức, vì vậy việc thiết lập một cơ chế để phát hiện và ngăn chặn các tấn công DoS là hết sức quan trọng. Các biện pháp phòng chống tấn công DoS chủ yếu liên quan đến việc phát hiện ngăn chặn các lưu lượng giả mạo. Cách dễ nhất là sử dụng tường lửa với các luật cho phép và từ chối các lưu lượng theo một số mẫu tấn công đã biết. Trong trường hợp đơn giản, các cuộc tấn công đến từ một số lượng nhỏ địa chỉ IP, khi đó bạn có thể phát hiện các địa chỉ IP này và sau đó thêm một luật để chặn các tấn công này trong tường lửa.
Tuy nhiên phương pháp sử dụng các luật tường lửa này đôi khi không hiệu quả. Chúng ta biết rằng tường lửa đến các tầng sâu trong mô hình phân cấp mạng, do đó một lượng lớn lưu lượng có thể ảnh hưởng đến bộ định tuyến trước khi nó đến được tường lửa.
Blackholing và sinkholing là các phương pháp tiếp cận mới hơn. Blackholing phát hiện lưu lượng truy cập giả mạo và chuyển hướng nó đến một vùng cách ly. Sinkholing định tuyến tất cả lưu lượng truy cập đến địa chỉ IP hợp lệ nơi các lưu lượng truy cập này được phân tích. Ở đây, nó từ chối việc các gói tin được gửi trở lại.
Clean pipes là một phương pháp xử lý tấn công DoS được đề xuất gần đây. Trong phương pháp này, tất cả lưu lượng truy cập được chuyển qua một trung tâm làm sạch, ở đó, các phương pháp khác nhau được thực hiện để lọc lưu lượng truy cập ngược lại. Tata Communications, Verisign, và AT & T là những nhà cung cấp chính của loại hình bảo vệ này.
Là người dùng Internet, bạn cũng nên chăm sóc hệ thống của mình. Tin tặc có thể sử dụng hệ thống của bạn như một phần của mạng lưới zombie. Vì vậy, hãy luôn cố gắng bảo vệ hệ thống của mình bằng cách luôn cập nhật các bản vá lỗi mới nhất cho hệ thống hoặc cài đặt một giải pháp diệt virus hiệu quả. Luôn chú ý khi cài đặt phần mềm, không bao giờ tải xuống phần mềm từ các nguồn không đáng tin cậy hoặc không xác định. Nhiều trang web cung cấp các phần mềm độc hại để cài đặt Trojans trong hệ thống người dùng dưới dạng các phần mềm ứng dụng hoặc crack không bản quyền.
Kết luận
Trong bài này, chúng ta đã tìm hiểu về tấn công từ chối dịch vụ và các công cụ được sử dụng để thực hiện dạng tấn công này. Các tấn công DoS được sử dụng để làm sụp đổ máy chủ và gián đoạn dịch vụ. Ngay cả hãng Sony cũng đã phải đối mặt với cuộc tấn công này trong một thời gian dài và chịu thiệt hại hàng triệu đô la. Tính khả dụng của các công cụ miễn phí giúp cho việc thực hiện tấn công DoS đối với trang web hoặc máy chủ trở lên ngày càng dễ dàng hơn. Mặc dù hầu hết các công cụ này chỉ dành cho việc tạo các cuộc tấn công DoS, tuy vậy vẫn có một vài công cụ hỗ trợ xây dựng và vận hành các mạng zombie cho các cuộc tấn công DDoS. LOIC là công cụ tấn công DoS được sử dụng phổ biến nhất và hiệu quả nhất. Trong vài năm qua, nó đã được sử dụng rất nhiều lần bởi các tin tặc nhằm tấn công vào mạng của các công ty lớn.
Do sự sẵn có và phổ biến của các công cụ tấn công này, mọi công ty hay tổ chức nên có ý thức về khả năng xảy ra tấn công DDoS lên hệ thống của mình. Mỗi máy chủ nên được thiết lập một cách để phát hiện và ngăn chặn các cuộc tấn công DDoS nhằm hạn chế những hậu quả mà nó mang lại cho tổ chức.