12. tháng 1 2025
Hôm nay, Giáo sư Lượng đã nhắn tin trên WeChat và nói với tôi: "Trang web của bạn đã sập rồi." Tôi thử kiểm tra trên trình duyệt thì đúng là không thể truy cập được.
Ngay lập tức, tôi đăng nhập vào giao diện quản trị của Alibaba Cloud để xem tình hình. Kết quả cho thấy CPU đang ở mức 100%, lưu lượng đĩa IO tăng vọt một cách bất thường. Tôi quyết định khởi động lại máy chủ ngay lập tức!
Sau khi khởi động lại, tôi kiểm tra nhật ký i9bet yêu cầu của Nginx và phát hiện có vô số các yêu cầu POST /xmlrpc.php. Chỉ trong một thời gian ngắn, server đã hoàn toàn sập nguồn.
Dưới đây là một phần nhật ký:
160.153.153.30 - - [28/Oct/2019:12:46:17 +0800] "POST /xmlrpc.php HTTP/1.1" 200 415
202.144.133.140 - - [ty le keo ma cao](https://www.wuxingyi.com) [28/Oct/2019:12:57:52 +0800] "POST /xmlrpc.php HTTP/1.1" 499 0
23.91.70.84 - - [28/Oct/2019:12:57:52 +0800] "POST /xmlrpc.php HTTP/1.1" 499 0
Khi truy cập vào file xmlrpc.php của trang WordPress, tôi nhận được phản hồi sau:
XML-RPC server chỉ chấp nhận các yêu cầu POST.
Sau khi tham khảo một tài liệu từ Digital Ocean, tôi đã quyết định vô hiệu hóa file xmlrpc.php thông qua cấu hình Nginx như sau:
location = /xmlrpc.php { deny all; }
Tôi reload lại Nginx và kiểm tra kết quả. Thật tuyệt vời, file xmlrpc.php đã không còn khả năng truy cập nữa.
Sau khi tìm hiểu, tôi biết rằng xmlrpc.php là một tệp cung cấp giao diện API cho các ứng dụng di động hoặc khách hàng khác kết nối với trang WordPress. Tuy nhiên, nó cũng là mục tiêu phổ biến của các cuộc tấn công mạng vì dễ bị khai thác.
Hy vọng bài viết này sẽ giúp ích cho những ai đang gặp phải vấn đề tương tự!