Dấu hiệu nhận biết DDOS và các phương pháp đối phó

Thảo luận trong 'Dos/DDOS' bắt đầu bởi songthan82, 11/11/13, 11:11 AM.

  1. songthan82

    songthan82 W-------

    Tham gia: 01/11/13, 03:11 PM
    Bài viết: 6
    Đã được thích: 0
    Điểm thành tích:
    6
    DDOS là một vấn đề nan giải cho các webmaster và web admin.
    DDOS làm tê liệt web server từ chối nhu cầu sử dụng của người dùng thông thường và làm giảm hiệu xuất kinh doanh cũng như hoạt động của website.Sau đây là một vài thủ thuật để nhận biết DDOS cùng với các phương án đối phó.

    Khi server đột ngột chậm như rùa, mọi xử lý của server đều rất nặng nề, thì nhiều khả năng do một trong hoặc những nguyên nhân sau:

    1. Server bị DDOS
    2. Server bị quá tải do thiếu RAM
    3. Server bị quá tải do tốc độ xử lý của CPU không đảm bảo
    4. Tốc độ truy xuất dữ liệu của HDD không đáp ứng nhu cầu read/write của data. (Thông thường xảy ra trên các ổ SATA 72krpm hoặc HDD sắp hỏng)

    Trong bài viết này chúng ta đi vào vấn đề thứ 1: server bị DDOS, các vấn đề 2,3,4 có thể khắc phục dễ dàng bằng cách nâng cấp phần cứng.

    [​IMG]

    Hình minh họa cho một đợt tấn công DDOS đơn giản​
    Kiểm tra xem server có bị DDOS hay không:
    Từ command line Linux gõ:
    1
    netstat -anp |grep 'tcp\|udp' | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -n


    Câu lện trên sẽ trả về hàng loạt IP chiếm nhiều connection nhất trên server. Cần lưu ý rằng DDOS có thể xuất phát từ một lượng nhỏ connection. Do đó việc kết quả trả về connection thấp bạn vẫn có thể trong tình trạng under attack.
    Một phương pháp khác:

    1
    2
    3
    netstat -n | grep :80 |wc -l
    netstat -n | grep :80 | grep SYN |wc -l

    Dòng lệnh thứ nhất trả về số lượng active connection (connection đang hoạt động). Rất nhiều kiểu tấn công DDOS bằng cách mở một kết nối connection lên server rồi không làm gì cả khiến cho server chờ đợi cho đến khi timeout. Nến nếu dòng lệnh thứ nhất trả về trên 500 thì server của bạn rất nhiều khả năng bị DDOS.

    Dòng lệnh thứ 2 trả về kết quả trên 100 thì rất nhiều khả năng server bạn trong tình trang syn attack DDOS.

    Lưu ý: cách tính trên chỉ là tương đối, một số website có lưu lượng truy cập lớn thì phương pháp detect này có thể không chính xác.

    Một số phương pháp khắc phục:
    Cách khắc phục nhanh nhất là block các IP chiếm nhiều connection nhất trong "giờ cao điểm":
    Cách 1:
    1
    2
    3
    route add địa-chỉ-ip reject
    route add 192.168.0.168 reject


    Kiểm tra bằng lệnh: route -n |grep địa-chỉ-ip
    Cách 2: sử dụng iptables
    1
    2
    3
    iptables -A INPUT 1 -s địa-chỉ-ip -j DROP/REJECT service iptables restart
    service iptables save


    Sau đó xóa hết tất cả connection hiện hành và khơi động lại service httpd
    1
    2
    3
    killall -KILL httpd
    service httpd restart

    Nếu như hoàn tất các bước nêu trên mà server vẫn chậm thì có nghĩa là vấn đề bạn gặp phải nằm vào trường hợp 2,3,4... chỉ việc nâng cấp server để đáp ứng nhu cầu truy cập của người sử dụng.

    Theo Ceh.vn​
     
    Mời các bạn tham gia Group WhiteHat để thảo luận và cập nhật tin tức an ninh mạng hàng ngày.
    Lưu ý từ WhiteHat: Kiến thức an ninh mạng để phòng chống, không làm điều xấu. Luật pháp liên quan
  2. chikiru900

    chikiru900 Banned

    Tham gia: 03/07/13, 10:07 AM
    Bài viết: 26
    Đã được thích: 0
    Điểm thành tích:
    6
    Re: Dấu hiệu nhận biết DDOS và các phương pháp đối phó

    Các biện pháp trên của bạn songthan82 chỉ áp dụng trong trường hợp số ip đến là tĩnh và số lượng ít thôi. Còn nhiều nhiều một chút là chịu thua.
    Mình xin giới thiệu thêm một số cách nữa mà áp dụng được với các site nhỏ, không có tiền mua các thiết bị hoặc firewall chuyên dụng như:
    1. Giới hạn số kết nối từ một ip trong một phút:

    Mã:
    /sbin/iptables -A INPUT -p tcp --syn --dport 80 -m connlimit --connlimit-above 20 -j REJECT --reject-with tcp-reset
    Bạn có thể tham khảo thêm tại đây:http://www.cyberciti.biz/faq/iptables-connection-limits-howto/
    2. Sử dụng module request timeout trong wamp
    Với cách 1, bạn chỉ có thể chống được các kiểu DDOS HTTP với số lượng request và kết nối lớn. Tuy nhiên nếu hacker sử dụng slow DDOS thì potay. Với kiểu DDOS này, bạn có thể sử dụng một module của apache là mod_reqtimeout để phòng chống. Cũng rất hiệu quả

    Mã:
    [COLOR=#112288][B]RequestReadTimeout[/B][/COLOR] header[COLOR=#666600]=[/COLOR][COLOR=#007777]20[/COLOR][COLOR=#666600]-[/COLOR][COLOR=#007777]40[/COLOR][COLOR=#666600],[/COLOR][COLOR=#440044]MinRate[/COLOR][COLOR=#666600]=[/COLOR][COLOR=#007777]500[/COLOR] body[COLOR=#666600]=[/COLOR][COLOR=#007777]20[/COLOR][COLOR=#666600],[/COLOR][COLOR=#440044]MinRate[/COLOR][COLOR=#666600]=[/COLOR][COLOR=#007777]500
    [/COLOR]
    Bạn có thể xem thêm tại đây: http://httpd.apache.org/docs/trunk/mod/mod_reqtimeout.html
     
    Mời các bạn tham gia Group WhiteHat để thảo luận và cập nhật tin tức an ninh mạng hàng ngày.
    Lưu ý từ WhiteHat: Kiến thức an ninh mạng để phòng chống, không làm điều xấu. Luật pháp liên quan