Bài đăng nổi bật

Hướng dẫn thay đổi thư mục root mặc định của Docker trên Linux

Hoàn cảnh: người viết gặp một trường hợp như này Được team hạ tầng cấp cho một máy chủ gồm 2 phân vùng lưu trữ, 1 phân vùng 20GB được gắn và...

13 tháng 5, 2014

DdoS – Distributed denial-of-service attack – Tấn công từ chối dịch vụ phân tán (P1)

Tấn công DdoS là hình thức nhiều máy tính (hệ thống) tổng tấn công vào một mục tiêu nào đó, từ đó gây hiện tượng quá tải cho mục tiêu dẫn tới mục tiêu không thể đáp ứng dịch vụ cho người dùng thông thường. Hay người đọc có thể hiểu nôm na như nhà bạn nằm trong một cái ngõ. Thông thường thì cái ngõ này có khả năng cho phép mười ông ra vào cùng lúc. Tuy nhiên có một nhóm kẻ xấu muốn phá hoại, không cho ai tới thăm nhà bạn cả. Và chung tập trung một nhóm người lại rồi thi nhau đi ra đi vào cái ngõ nhà bạn khiến cho cái ngõ chật cứng và dĩ nhiên lúc đó thì bạn chả còn ông khách chân chính nào đến thăm được nữa.
Vậy DdoS được thực hiện như thế nào?
Ban đầu, kẻ xấu sẽ tân dụng những lỗ hổng của một mạng máy tính nào đó để biến nó thành một “vật chủ chính”, DdoS master. Từ vật chủ này, hay còn được gọi là botmaster, nó sẽ tìm cách lây nhiễm sang cá hệ thống khác bằng cách lợi dụng các lỗ hổng bảo mật thông qua việc phát tán các malware. Bằng cách này, kẻ tấn công có thể ra lệnh cho các máy bị nhiễm tham gia vào cuộc tấn công vào một nạn nhân cụ thể.
Hiện có hai kiểu tấn công DdoS: tấn công mạng trung tâm – network-centric attack – là kiểu tấn công gây quá tải cho một dịch vụ bằng cách chiếm băng thông và kiểu tấn công lớp ứng dụng – application-layer attack – là kiểu tấn công gây quá tải cho một dịch vụ hoặc cơ sở dữ liệu mà ứng dụng của bạn cần sử dụng. Việc gây ngập lụt cho mục tiêu bằng các gói dữ liệu sẽ khiến cho mục tiêu mất đi khả năng đáp ứng. Thông thường, khi xảy ra một cuộc tấn công DdoS chúng ta chỉ tập trung vào nạn nhân trực  tiếp của cuộc tấn công nhưng thực tế nạn nhân của nó lại bao gồm cả hệ thống đang bị điều khiển, mà dân tình mạng gọi chúng bằng cái tên khá thú vị “zombie” hay “bot” và tập hợp này thường được gọi là một “botnet”
Thế bạn có biết Ddos hoạt động như nào hay không?
                Ý tưởng ở đây rất đơn giản. Kẻ tấn công sau khi xác định được mục tiêu sẽ ra lênh cho đội quân “zombie” của mình “liên hệ” với “nạn nhân” theo kiểu hỏi “Ê chủ quán, cho bọn anh làm vài cốc bia nhé?”, thực tế nó chỉ hỏi thế thôi nhưng không thèm mua đâu, chỉ khổ thân ông chủ quán tưởng thật chạy ra chạy vào phục vụ nhiệt tình. Với thao tác này, kẻ tấn công sẽ dần dần hoặc đột ngột gia tăng lượng truy cập vào hệ thống nạn nhân khiến nó bị giảm khả năng phục vụ hoặc thậm chí nghiêm trọng hơn là bị “gục” hoàn toàn. Đây được gọi là Ddos.
                Đôi khi, kẻ tấn công có thể lợi dụng cả các máy bình thường – ta tạm hiểu như một người đi đường ngây thơ không biết gì – tham gia vào cuộc tấn công. Việc này được thực hiện như sau: kẻ tấn công tiến hành gửi một lệnh khởi tạo tấn công tới đội quân zombie của mình; mỗi một tên zombie này sẽ bắt đầu gửi các yêu cầu tới một máy tính thông thường khác, được gọi là các máy “phản xạ”; khi các máy phản xạ này nhận được yêu cầu, chúng lại nghĩ rằng thực ra yêu cầu này là từ máy nạn nhân của cuộc tấn công gửi tới (do các zombie đã đánh lừa chúng) và chúng sẽ hồn nhiên gửi thông tin ngược lại cho nạn nhân. Với cách tấn công này, kẻ tấn công có thể lợi dụng sức mạnh của các máy phản xạ để gây ngập lụt cho mục tiêu của mình. Nếu đứng từ góc nhìn của nạn nhân, thì thực tế nó đang bị tấn công bởi chính các máy phản xạ chứ không phải từ đội quân zombie kia. Còn từ góc nhìn của các máy phản xạ, thì nó là nạn nhân của các truy gói tin truy vấn. Như thế, đội quân zombie kia gần như ẩn mình hoàn toàn trong cuộc tấn công.
Ddos không chừa một ai.
Các nạn nhân của Ddos cũng có xuất hiện một số ông lớn. Ví dụ Microsoft cũng đã từng đón nhận một cuộc tấn công Ddos có tên gọi là MyDoom. Kẻ tấn công thường nhắm tới những hệ thống lớn như Amazone, CNN, Yahoo và eBay. Ddos gây ra những hậu quả từ rất nhẹ cho tới cực kì khủng khiếp:
  • ·         Ping of Death: các máy tấn công sẽ tạo ra một lượng khổng lồ các gói tin và gửi tới nạn nhân.
  • ·         Mailbomb: các máy tấn công gửi một lượng lớn thư điện tử gây nghẽn máy chủ thư.
  • ·         Smurf Attack: các máy tấn công gửi các thông điệp ICMP (Internet Control Message Protocol – Giao thức tin nhắn điều khiển mạng) tới máy chủ phản xạ - reflector.
  • ·         Teardrop: các máy tấn công gử các mảnh dữ liệu bất hợp pháp – hay gọi là dữ liệu lộn xộn, và hệ thống nạn nhân sẽ cố gắng ghép các mảnh này lại thành một gói tin có nghĩa và dẫn tới bị crash – chắc là ghép mãi mà không được nên bị xì troét.
      Một khi đã bị tấn công Ddos, người quản trị chỉ có thể làm một số việc để giảm thiểu hậu quả, ví dụ như giới hạn lưu lượng cho phép đi vào máy chủ của mình, nhưng điều này cũng đồng nghĩa giới hạn cả các kết nối hợp pháp. Nếu người quản trị có thể xác định chính xác nguồn gốc của các máy tấn công cũng có thể tiến hành lọc luồng kết nối từ đó. Thật không may, các máy zombie có thể nằm khắp nơi trên thế giới, do đó không dễ dàng gì để thực hiện việc này.
Vậy kẻ tấn công đã tạo ra các zombie như thế nào? 
      Kẻ tấn công tiến hành biến các máy tính thành các zombie bằng cách sử dụng một chương trình nhỏ để lây nhiễm vào các máy này thông qua các lỗ hổng của hệ điều hành. Thực tế, những tên này không hẳn là những siêu nhân về máy tính mà thường chỉ là những kẻ không có kiến thức và kinh nghiệm lập trình ( thường được gọi là “script kiddies” do đây là những đối tượng có kĩ năng code rất tồi). Một số chuyên gia giám sát các botnet nói rằng đa phần các chương trình do các kiddies này tạo nên thường được làm rất cẩu thả.

     Để lây nhiễm, kẻ tấn công đầu tiên phải cài đặt được ứng dụng của mình vào máy nạn nhân. Các con đường lây nhiễm có thể là qua email, chia sẻ mạng ngang hàng hoặc thậm chí thông qua một website bình thường nào đó đã bị chúng kiểm soát. Phần lớn, kẻ tấn công sẽ tìm cách lừa nạn nhân tự nguyện cài các ứng dụng này lên máy. Ví dụ, bạn đã bao giờ thấy một cửa sổ hiện lên có một nút ghi là “No thanks” chưa? Hi vọng bạn đừng có bấm vào nó nhé – thường các nút này là một cách lừa đấy – Tôi đã từng có một anh bạn nghịch ngợm viết một ứng dụng, khi cài đặt, anh ta ghi rõ ràng lên màn hình một đoạn dài thông báo cho người dùng đây là một ứng dụng virus và người dùng có đồng ý cài không, thế mà nhiều bác vẫn nhắm mắt bấm Yes mới ghê. Như vậy thay vì tắt pop-up này thì bạn đang trực tiếp tải về một phần mềm độc hại.

        Một khi nạn nhân đã tải về ứng dụng, anh ta sẽ kích hoạt nó. Trong phần lớn trường hợp, người ta sẽ nghĩ đây là một ứng dụng gì đó. Có thể nó hiện ra là một tập tin ảnh, một clip hoặc một tập tin gì đó (do cái extension gây ra thôi). Khi nạn nhân mở tập tin này, sẽ chả có gì xảy ra cả. Nếu nạn nhân có cài ứng dụng diệt virus,… thì có thể sẽ nhận được cảnh báo. Không may là, một số người lại nghĩ đây có thể làm một tập tin hỏng nên không cài được và bỏ qua nó.

        Thực tế, chương trình đã tự đính nó vào một nơi nào đó của hệ điều hành để có thể khởi động cùng máy tính mỗi khi nạn nhân bật máy. Để tránh bị phát hiện, kẻ tấn công sẽ không sử dụng cùng một vị trí đặt ứng dụng của mình.

        Ứng dụng này có thể chứa một số câu lệnh để thực hiện một số công việc nào đó vào một thời điểm định trước hoặc cho phép kẻ tấn công điều khiển máy tính nạn nhân. Rất nhiều các ứng dụng dạng này sử dụng IRC (Internet Relay Chat), và thực tế có các cộng đồng botnet sử dụng mạng IRC để hỗ trợ nhau hoặc để chiếm các botnet của nhau.
                Và một khi đã bị nhiễm, các máy nạn nhân sẽ được kẻ tấn công mặc sức dày vò – tự do làm bất cứ điều gì hắn muốn. Đa phần kẻ tấn công sẽ chờ đợi khi người dùng bất cẩn nếu không hắn sẽ khiến người dùng phát hiện và hắn sẽ mất đi một chiến binh trong đội quân của mình.
[Trong phần tiếp theo tôi sẽ đề cập tới mối quan hệ giữa máy zombie và việc phát tán rác ]

Không có nhận xét nào:

Đăng nhận xét