Các hacker mạng đã tìm ra cách lợi dụng các lỗ hỏng của máy chủ Memcached để khai thác hơn 51.000 lần các cuộc tấn công DDoS, việc này có thể dẫn tới việc đánh sập các trang web và cơ sở hạ tầng Internet lớn.
Trong những ngày gần đây, các nhà nghiên cứu an ninh tại Cloudflare, Arbor Networks và công ty bảo mật Qihoo 360 của Trung Quốc nhận thấy rằng tin tặc đang lạm dụng “Memcached” để khuếch đại các cuộc tấn công DDoS của họ bằng một số lượng lớn chưa từng thấy là 51.200.
Memcached là một hệ thống cache mã nguồn mở, hoạt động bằng cách lưu tạm dữ liệu hay sử dụng vào bộ nhớ RAM để tăng tốc độ truy xuất. Kết nối với Memcached được thực hiện qua giao thức TCP hoặc UDP trên cổng 11211.
Ứng dụng Memcached đã được thiết kế để tăng tốc các ứng dụng web động bằng cách giảm tải trên cơ sở dữ liệu giúp các quản trị viên tăng hiệu suất và ứng dụng web quy mô. Nó được sử dụng rộng rãi bởi hàng ngàn trang web, bao gồm Facebook, Flickr, Twitter, Reddit, YouTube và Github.
Làm thế nào để Memcrashed DDoS Amplification Attack hoạt động?
Cụ thể, kẻ tấn công sẽ gửi một gói tin fake địa chỉ IP của nạn nhân đến server memcached trên cổng 11211. Các truy vấn được gửi đến máy chủ chỉ một vài byte, nhưng số lượng phản hồi lại lên đến hàng chục nghìn lần, tạo ra một cuộc tấn công đáng kể. Bên cạnh đó, Memcached cho phép kết nối qua giao thức UDP – một trong những giao thức tốt nhất dùng trong việc khuếch đại.
Theo Cloudflare, một gói tin 15 bytes gửi đi có thể tạo ra 134KB phản hồi (khuếch đại 10.000 lần). Thực tế ghi nhận, hệ thống đã nhận được tới 750KB phản hồi – khuếch đại gấp 51200 lần.
Theo Arbor Networks, các truy vấn giả mạo cũng hướng đến TCP cổng 11211, nhưng vì các truy vấn TCP không thể giả mạo nên cách tấn công này ít bị lạm dụng hơn.
Theo số liệu mới nhất từ Shohan, có gần 90.000 server chạy Memcached qua cổng 11211 đang mở. Và rất nhiều trong số đó đến từ các location thông dụng: Mỹ, Nhật, Hồng Kông… Cụ thể, các cuộc tấn công xảy ra khắp nơi trên toàn thế giới, nhưng chủ yếu là Bắc Mỹ và Châu Âu. Phần lớn các máy chủ của OVH, DigitalOcean và Sakura.
Làm thế nào để Fix Memcached Servers?
Một trong những cách đơn giản nhất để ngăn chặn các máy chủ Memcached của bạn không bị lạm dụng là phản xạ là tường lửa, chặn hoặc giới hạn tốc độ UDP trên cổng nguồn 11211.
Cụ thể, chỉnh sửa cấu hình Memcached:
vi /etc/sysconfig/memcached
Chỉnh sửa OPTIONS
thành OPTIONS="-l 127.0.0.1 -U 0"
, trong đó:
-l 127.0.0.1
: Chỉ chấp nhận truy vấn từ localhost.-U 0
: tắt hoàn toàn giao thức UDP.
Khởi động lại Memcached
# service memcached restart
Kiểm tra lại hệ thống các kết nối
# netstat -tulpn
Khi đó, Memcached chỉ kết nối duy nhất 127.0.0.1 qua giao thức TCP
tcp 0 0 127.0.0.1:11211 0.0.0.0:* LISTEN 27106/memcached
Bất cứ ai đều đoán được các cuộc tấn công memcached sẽ lớn đến mức, đã có tin đồn về khuếch đại 0.5Tbps trong vài ngày qua, và đây chỉ là sự khởi đầu. Nếu bạn không chuyên về quản trị hệ thống thì bạn cũng đừng quá lo lắng, bạn có thể sử dụng dịch vụ của CloudFlare. Anycast của Cloudflare hoạt động tốt để phân phối tải trọng trong trường hợp các cuộc tấn công khuếch đại lớn.