Đoạn fix PHP "tạm thời" 174 dòng tồn tại suốt 12 năm và 20 triệu lượt cài

Đoạn fix PHP "tạm thời" 174 dòng tồn tại suốt 12 năm và 20 triệu lượt cài

Một lập trình viên vừa cho giải nghệ đoạn code PHP dài 174 dòng mà ông viết từ năm 2014 — thứ đã âm thầm cán mốc gần 20 triệu lượt cài.

Mười hai năm trước, lập trình viên Jake A. Smith viết nhanh một polyfill (bản vá tương thích) cho một hàm cũ trong lúc nâng cấp hệ quản trị nội dung của AOL. Ông đăng nó lên Packagist phòng trường hợp có ai cần. Bản fix tạm này sau đó tăng vọt lên 400.000 lượt tải mỗi tháng, được tích hợp vào các plugin WordPress như WPML, và xuất hiện trong cả Debian lẫn Ubuntu. Hôm nay, Smith chính thức gắn nhãn ngừng hỗ trợ (deprecate) gói package này. Ông chọn cách khai tử nó thay vì mạo hiểm giao quyền quản trị cho các tình nguyện viên chưa được xác minh.

Vì sao chuyện này đáng chú ý: Trong giới tech, chẳng có gì tồn tại lâu bằng một bản sửa lỗi tạm thời. Tuy nhiên, PHP 8.5 hiện đã có sẵn các công cụ xử lý URI chuẩn, còn việc chuyển giao quyền kiểm soát một package có lượt tải lớn lại tiềm ẩn rủi ro chuỗi cung ứng nghiêm trọng — đúng kịch bản từng xảy ra với backdoor của xz Utils.

Nếu vẫn đang phụ thuộc vào package này, bạn có thể xem danh sách các thư viện thay thế trong file README, chẳng hạn như PHP League URI.

Còn hệ thống nội dung của AOL thì sao? Nó vẫn tiếp tục chạy bằng bản vá tạm thời đó cho đến khi toàn bộ nền tảng đóng cửa vào năm 2020.