Hướng dẫn cấu hình Memcached bảo mật Server Linux tránh bị lợi dụng tấn công DDOS

0
71

Vào 27 tháng 2 2018 vừa qua thì Cloudflare đã đăng một bài liên quan đến việc các hacker đã lợi dụng một lỗ hổng trên Memcached để khuếch đại tấn công DDos lên đến hơn 50.000 lần.

Ngay ngày sau, 28 tháng 2, Github đã phải chịu một loạt các cuộc tấn công từ chối dịch vụ (DdoS) khổng lồ, gây ra việc gián đoạn dịch vụ và website github.com đã phải offline. Giai đoạn đầu của cuộc tấn công, trang web của Github đã bị hứng chịu một băng thông gây sốc lên tới 1,35 terabit/giây (Tbps). Trong khi ở giai đoạn thứ hai, hệ thống giám sát mạng của Github đã ghi nhận được băng thông lên tới 400 gigabit/giây (Gbps). Các cuộc tấn công kéo dài hơn 8 phút và do lưu lượng truy cập lớn được sử dụng bởi cuộc tấn công này, đây là cuộc tấn công DDoS lớn nhất từng chứng kiến.

Hướng dẫn fix lỗi cấu hình Memcached
Hướng dẫn fix lỗi cấu hình Memcached

Vậy làm sao để bảo mật giúp server/vps của bạn “tiếp tay” cho những cuộc tấn công như vậy trong tương lai?

Phương án tốt nhất là ta sẽ gán Memcached vào IP 127.0.0.1 và vô hiệu hóa UDP đi. Hoặc nếu thực sự không cần thiết, hãy xem xét đến việc Gỡ bỏ Memcached.

Hướng dẫn fix lỗi cấu hình bảo vệ Memcached CentOS and Fedora Servers

Đầu tiên log in bằng SSH vào VPS và mở file config của Memcached lên

vi /etc/sysconfig/memcached

Ở phần Options ta thêm vào -l 127.0.0.1 -U 0 để chặn băng thông ra cũng như chặn luôn UDP

PORT="11211"
USER="memcached"
MAXCONN="10024"
CACHESIZE="20"
OPTIONS="-l 127.0.0.1 -U 0"

Cách khác: Bạn cũng hoàn toàn có thể tải File config trên về máy tính để sửa, sau đó up đè lên file config trên server.

Sau đó lưu lại rồi khởi động lại dịch vụ.

service memcached restart

Để kiểm tra lại, bạn sử dụng lệnh:

netstat -plunt

Nếu đã hoàn thành việc cấu hình lại Memcached, ta sẽ thấy UDP đã bị đóng, Memcached chỉ còn chạy trên TCP 11211 như bên dưới.

Active Internet connections (only servers) Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program tcp 0 0 127.0.0.1:11211 0.0.0.0:* LISTEN 2383/memcache

Bảo mật Memcached trên Ubuntu và Debian Servers

sudo nano /etc/memcached.conf

Thêm vào dòng sau:

-U 0

Khởi động lại Memcache

sudo service memcached restart

Sau đó kiểm tra lại với lệnh:

sudo netstat -plunt

Kết quả trả về như vậy là bạn đã thực hiện thành công, :).

Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name
. . .
tcp        0      0 127.0.0.1:11211         0.0.0.0:*               LISTEN      2383/memcached
. . .