Tuần trước chúng tôi đã viết về 17 giờ đầu tiên của cảm biến trên digimasi.com: 58 yêu cầu từ bot đi tìm những tệp mà website này chưa từng có. Giờ thì tuần đầy đủ đầu tiên đã ghi xong, từ tối 12 tháng 10, lúc cảm biến bắt đầu ghi, đến hết ngày 18 tháng 10. Dữ liệu nhiều hơn hẳn, và các quy luật bắt đầu lộ ra.
Con số
- 1.744 yêu cầu từ 91 địa chỉ IP, ghi nhận từ 18:38 ngày 12 tháng 10 đến hết ngày 18 tháng 10, giờ Jakarta.
- Các địa chỉ đó được đăng ký ở 29 quốc gia. Một lần nữa, đó là nơi đặt máy chủ, chưa chắc là nơi của người đứng sau.
- Gần một nửa số yêu cầu (846) chỉ đến từ 3 địa chỉ, cùng nằm trong một mạng.
- 16 yêu cầu mang theo tên đăng nhập hoặc mật khẩu đoán mò, gửi tới những trang đăng nhập vốn không tồn tại.
Không yêu cầu nào thành công. Các tệp chúng tìm không hề có trên website của chúng tôi, nên mọi yêu cầu đều nhận trang "không tìm thấy".
So với 17 giờ đầu tiên
Số liệu của tuần này đã bao gồm 17 giờ đầu tiên đó.
- Số địa chỉ tăng từ 9 lên 91, số quốc gia từ 7 lên 29.
- Tệp .env tăng từ 1/3 lên gần 2/3 số yêu cầu: khi đó là 20 trên 58, giờ là 1.141 trên 1.744.
- Thư mục .git thì ngược lại: từ 1/3 (19 trên 58) giảm còn khoảng 4% (76). Trong đó 29 yêu cầu tới /.git/HEAD chỉ đến từ 2 địa chỉ.
- Khóa cloud và máy chủ tăng từ 3 lên 41 yêu cầu, từ 13 địa chỉ.
Vậy là 17 giờ đầu chưa cho thấy toàn cảnh. Khi đó .git trông quan trọng ngang .env; sau một tuần, .env đã bỏ xa.
Chúng tìm gì
- Tệp cấu hình bí mật .env (1.141 yêu cầu, 39 địa chỉ). Chín trong mười đường dẫn bị yêu cầu nhiều nhất là biến thể của .env: /.env (86), /.env.local (42), /.env.backup (38), /.env.production (35), /.env.bak (34), sau đó là /.env.save, /.env.dev, /.env.old và /.env.staging. Bot đoán những cái tên mà lập trình viên hay đặt cho bản sao hoặc phiên bản khác của tệp này.
- Tệp PHP (198 yêu cầu). Website của chúng tôi không dùng PHP.
- WordPress (197 yêu cầu, 50 địa chỉ). Trang đăng nhập và các đường dẫn WordPress khác. Website của chúng tôi cũng không dùng WordPress.
- Thư mục lịch sử mã .git (76 yêu cầu).
- Các tệp cấu hình khác (70 yêu cầu).
- Khóa cloud và máy chủ (41 yêu cầu).
- Khác (21 yêu cầu). Đường dẫn đặc trưng của một số framework (13) và trang quản trị (8).
Đáng chú ý: nhiều kẻ ghé qua, ít kẻ đào sâu
WordPress được 50 địa chỉ thử, nhiều hơn mọi nhóm khác, nhưng trung bình chỉ khoảng 4 yêu cầu mỗi địa chỉ. .env thì ngược lại: 39 địa chỉ, trung bình gần 30 yêu cầu mỗi địa chỉ. WordPress được nhiều bot liếc qua; .env bị một số ít bot mang danh sách dài đào bới kỹ.
Các mạng cũng tập trung như vậy. Hơn một nửa số yêu cầu (950) đến từ máy chủ đăng ký ở Đức, tiếp theo là Hà Lan (144), Hoa Kỳ (119), Bỉ (112) và Ba Lan (105). Mạng lớn nhất là Virtualine Technologies (846 yêu cầu từ 3 địa chỉ), rồi đến Google LLC (338 từ 14 địa chỉ), TC DATACENTER (133) và DigitalOcean (64 từ 17 địa chỉ). Tên mạng là chủ sở hữu dải địa chỉ, thường là nhà cung cấp máy chủ hoặc cloud. Ai thuê máy chủ ở đó cũng có thể dùng nó, nên không có nghĩa chính công ty đó đã gửi các yêu cầu.
Tự kiểm tra website của bạn
Bạn có thể tự kiểm tra tất cả trong năm phút, trên website của chính mình:
- Mở yourdomain.com/.env trên trình duyệt. Bạn nên thấy "không tìm thấy". Nếu lại thấy nội dung tệp, hãy chuyển ngay tệp đó ra khỏi thư mục công khai, rồi đổi mọi mật khẩu và khóa bên trong.
- Thử cả các biến thể: /.env.local, /.env.backup, /.env.production, /.env.bak. Bot thử hết, và một bản sao bị quên cũng nguy hiểm như tệp gốc.
- Mở yourdomain.com/.git/HEAD. Kết quả cũng nên là "không tìm thấy". Nếu hiện ra chữ, ai cũng có thể mở thư mục .git của bạn.
- Giữ khóa cloud và khóa dịch vụ trong phần cài đặt của máy chủ, không để trong tệp nằm trong thư mục website. Đặt thêm hạn mức sử dụng trên tài khoản dịch vụ, để hóa đơn không tăng vọt nếu khóa bị lộ.
- Nếu dùng WordPress: giới hạn số lần thử đăng nhập, bật xác minh hai bước cho tài khoản quản trị và tắt xmlrpc.php nếu không dùng đến. Tuần này có 50 địa chỉ khác nhau thử WordPress trên website của chúng tôi, dù chúng tôi hoàn toàn không dùng nó.
Về dữ liệu này
Chúng tôi chỉ quan sát. Toàn bộ dữ liệu đến từ những bot tự tìm đến digimasi.com; chúng tôi không bao giờ quét website của người khác và không hiển thị địa chỉ IP ở đây. Những địa chỉ rõ ràng đang tấn công sẽ được báo cáo cho AbuseIPDB. Cách làm đầy đủ có ở trang phương pháp, và số liệu từng tuần có ở trang ghi nhận hằng tuần.
Dữ liệu: Nghiên cứu bảo mật của Digimasi, ghi nhận hằng tuần của cảm biến (https://doi.org/10.5281/zenodo.23466873).
Chúng tôi sẽ tiếp tục ghi nhận và so sánh kết quả qua từng tuần.