stats2.gif thực sự là gì
Trong bài viết này
Có tệp trong thư mục hình ảnh của dự án tên stats2.gif. Nó nặng 366 byte, ghi ngày tháng Ba năm 2018 và không xuất hiện trong bất kỳ dòng mã nguồn nào. Ngày 23 tháng Tám năm 2026 nó được phân phối 2.735 lần với mã 200, từ 145 website khác nhau — và trong toàn vòng luân phiên nhật ký truy cập, từ 858.
Tệp không ai tham chiếu, được lấy hàng nghìn lần mỗi ngày từ hàng trăm trang lạ. Cách hiểu hiển nhiên: mã nhúng cũ chưa bao giờ được thay, âm thầm phân phối hình tĩnh nơi từng có bộ đếm. Tệp tĩnh bỏ qua PHP hoàn toàn. Không gì đến thẳng Apache có thể đếm được.
Vì vậy chúng tôi viết công cụ. Nó đọc từng trang giới thiệu trong nhật ký, lấy từng trang qua cùng trình kiểm tra website vốn dùng để chẩn đoán mã nhúng — có bảo vệ SSRF vì địa chỉ đến từ nhật ký, không từ chúng tôi — và tìm xem trên trang có gì thực sự đếm không.
Tất cả 858 trang
| đã đếm (có mã nhúng hoạt động bên cạnh) | 501 |
| hoàn toàn không truy cập được | 288 |
| có huy hiệu, không có số bộ đếm trong nguồn | 69 |
| chỉ huy hiệu cũ, không có gì đếm | 0 |
Không một trang. Bảy mươi lăm phút lấy trang và câu trả lời là không.
Phép đo chỉ mất một giây
stats2.gif có kích thước 13 x 14 điểm ảnh.
Đó không phải bộ đếm hay huy hiệu có số. Nó là biểu tượng thống kê nhỏ — cùng thứ mẫu 981 trong thư viện hiện tại tái tạo, và chú thích mã nguồn của mẫu ấy mô tả chính xác tiền thân: không số đếm hiển thị, chỉ dấu nhỏ mở thống kê khi nhấp. Nó vốn không được thiết kế để đếm. Trên các trang ấy, thứ khác luôn làm việc đó.
Tệp cũng không hỏng. Nó trả 200 với Last-Modified từ năm 2018 và thời hạn lưu đệm một năm. Nó làm đúng việc.
Một lần gọi getimagesize() giải quyết toàn bộ hướng điều tra trong một giây. Ở đây câu hỏi là “vì sao tệp được lấy thường xuyên thế”, câu trả lời giả định là “vì nó là bộ đếm hỏng”, và mọi việc sau dựa trên giả định thay vì tệp — đó là lý do nên kiểm tra một giây trước.
Điều duy nhất thực sự hỏng
Từ tất cả, nhật ký cho thấy một lỗi thật duy nhất: một địa chỉ được yêu cầu mười lần mỗi ngày, đều 410, nơi cả đoạn mã nhúng bị đưa vào thuộc tính của liên kết, cụ thể là href. Ai đó dán mã vào trường thoát HTML. Bộ đếm vẫn sống và đếm — chỉ liên kết của họ tới thống kê của mình không đi đến đâu.
Công cụ được giữ lại, không có đường ghi. Câu hỏi hợp lý; câu trả lời là không; và cả hai đáng giữ để không ai phải hỏi lại bằng tay.