Bài liên quan
 Phương Pháp DDOS Qua NTP server.

   Tấn công từ chối dịch vụ (DDOS) luôn là mối đe dọa lớn đối với các công ty cũng như cá nhân chủ sở hữu website trên toàn thế giới.Phương pháp tấn công DDOS hiện nay rất đa dạng.Và hàng ngày attacker vẫn luôn cố gắng khai thác tìm ra các cách ddos mới.Cuối năm 2013 xuất hiện một kiểu ddos mới.Gọi là flood thông qua NTP server.Với kiểu ddos này attacker từng gây khó khăn không nhỏ cho các server game lớn như League Of Legends .Hay các công ty có dịch vụ bảo mật như Cloudflare.

   Cũng gần giống như các phương pháp tấn công DDOS phổ biến khác.Attacker lợi dụng các server NTP (server có dùng giao thức NetWork Time Protocol ) gửi hàng loại packet đến server mục tiêu chỉ định.Trên thực tế với cách tấn công này không chỉ gây nguy hiểm cho victim xác định bởi attacker mà nó còn gây thiệt hại đối với chính server NTP được dùng làm nới khuyếch đại gói tin và hợp thức hóa đối tượng gửi dữ liệu đến victim.Trước tiên chúng ta sẽ xem NTP server là gì và nó họat động như thế nào.Vì sao attacker lại lợi dụng nó trong cuộc tấn công .

Căn Bản NTP Server.
 Trước hết nói riêng về giao thức NTP - Đây là một giao thức mạng thực hiện việc đồng bộ thời gian (đồng hồ) trên các máy tính.Khi bạn cài máy tính,có kết nối mạng,thường máy tính sẽ được cài đặt với đúng múi giờ bạn đang ở (Nếu không có mạng thì bạn phải chọn múi giờ).Thông qua giao thức này máy tính cũng kiểm soát được thời gian,tránh xảy ra độ sai lệch có thể xảy ra.Bạn có thể kiểm tra trên window thông qua ứng dụng Date and Time để thấy được máy tính được thiết lập đồng bộ thời gian với một server NTP nào đó.





    Mô hình NTP đc xây dựng theo mô hình phân cấp từ trên đến dưới.Một ví dụ mô hình được vẽ dưới đây sẽ cho bạn hình dung được về cách đồng bộ qua các cấp.

    Mô hình này được mình vẽ khi tham gia thảo luận bằng tiếng ucraina nên các bạn thông cảm.Phía trên cùng đại diện cho server nơi ghi nhớ thời gian và các múi giờ chuẩn.Ở các cấp dưới là các server nhận động bộ thời gian từ server các cấp trên hoặc đồng cấp.Như vậy chỉ cần bạn có kết nối internet ,thông qua GPS được cài đặt khi chạy window.Máy tính hoàn toàn xác định được thời gian thực tại vùng máy tính được đặt.

    Mình có đọc qua wikipedia về giao thức NTP .Đây là một giao thức được xây dựng từ lâu,ít có vấn đề nào về bảo mật được phát hiện.Và theo đánh giá gần như không có nguy cơ nào liên quan đến chuẩn của NTP.Nhưng trong thời gian gần đây attacker đã khai thác được.

   Cụ thể được miêu tả qua lỗ hổng có mã CVE-2013-5211 .Bạn có thể tham khảo chi tiết tại đây. https://www.us-cert.gov/ncas/alerts/TA14-013A

   Thực ra đây cũng không thể xem là lỗ hổng của giao thức NTP bởi vì nó vốn là một chức năng của giao thức này.Ở mỗi server NTP có lưu một danh sách các server mà nó connect tới.Nhưng có một điều là bất kì ai gửi request yêu cầu xem danh sách này đều được chấp nhận.(Đây là chức năng monlist của NTP).Sau khi attacker gửi request đến server.Đồng thởi sửa lại ở header của gói tin phần IP source gửi.Gói tin đến server.Tại server NTP ,nhận gói tin và thực hiện việc trả về danh sách server nó connect đến.Danh sách này thường dài dẫn đến gói tin trả về được khuyếch đại lên một cách đáng kể.Đồng thời đối với victim gói tin trả về này lại hoàn toàn hợp lệ.Sự khuyếch đại càng được gia tăng khi attacker gửi đến nhiều server NTP một lúc và để cùng 1 địa chỉ source gửi.Khi đạt đến một độ nhất định sẽ làm tê liệt máy victim.


 Chúng ta sẽ bàn đến việc attacker đi lọc các server NTP như thế nào.Việc này cũng khá đơn giản.Chỉ cần viết một tool nhỏ scan toàn bộ các dải IP trên Port 123.Đây là port mặc định của giao thức NTP.Ngoài cách scan dải IP này chúng ta có thể dùng tool online chuyên về tìm kiếm máy chủ SHODAN.Tại địa chỉ http://www.shodanhq.com/ với từ khóa "NTP port:123".Chúng ta sẽ get được kha khá server NTP trên toàn thế giới.Đây là thống kê số server chúng ta tìm được qua shodan:

Khá nhiều đúng không nào.

Dưới đây là ví dụ khi gửi 1 request di và ta nhận lại được gì.




    
    Để dùng được lệnh ntpdc thì trước tiên phải cài gói ntp trước nhé.Cài bằng lệnh (apt-get install ntp).Danh sách server trả về này khá là dài.Mình để load khá lâu mới xong.Để kiểm tra độ khuyếch đại bạn có thể dùng wireshark để phân tích.Ở trên mình cũng ví dụ luôn đối với server 122.219.207.57 ta không thể get được danh sách.Bởi vì server này đã cập nhật bản vá.

    Ở bài tiếp có thể mình sẽ giới thiệu về tool dùng metod này .Còn bây giờ ta bàn về việc khắc phục.

   Khắc phục tình trạng bị tấn công bởi dạng này không khó.Đối với chính server NTP tả chỉ cần cập nhật bản mới nhất (Họăc bản vá phiên bản cũ) là có thể giải quyết được vấn đề.Như ở trên server 122.219.207.57 đã thực hiện điều đó.(Hoặc cũng có thể chặn tất cả dải IP ngoài mạng server NTP của mình.ĐIều này sẽ khiến attacker không thực hiện việc lấy monlist được.

   Còn đối với người dùng.Cách đơn giản nhất là ta chặn tất cả gói tin có source port là 123 tại firewall của mình.Bởi đây là source port mặc định của giao thức NTP.Một số server có đổi nhưng số server đổi là không quá nhiều và nó sẽ không gây ra khó khăn cho chúng ta.Nếu như server bạn không dùng để truyền audio video.Thì chặn luôn giao thức UDP.Vừa giải quyết được vấn đề chúng ta quan tâm.Vừa chặn luôn UDP flood.

By Icarus-VHB Thegioingam.org

Post a Comment

 
Top

Nhận xét mới đăng tải!

Loading…
X