Nhiều lỗ hổng bảo mật đã được tiết lộ trong nền tảng tổng đài nhánh riêng (PBX) mã nguồn mở FreePBX, bao gồm một lỗ hổng nghiêm trọng có thể dẫn đến việc bỏ qua xác thực (authentication bypass) trong một số cấu hình nhất định.
Các lỗ hổng được phát hiện
Những thiếu sót này, được Horizon3.ai phát hiện và báo cáo cho những người duy trì dự án vào ngày 15 tháng 9 năm 2025, được liệt kê dưới đây:
- CVE-2025-61675 (điểm CVSS: 8.6) - Nhiều lỗ hổng SQL injection có xác thực (authenticated SQL injection vulnerabilities) ảnh hưởng đến bốn endpoints độc đáo (basestation, model, firmware, và custom extension) và 11 tham số bị ảnh hưởng cho phép truy cập đọc và ghi vào cơ sở dữ liệu SQL bên dưới.
- CVE-2025-61678 (điểm CVSS: 8.6) - Lỗ hổng tải lên tệp tùy ý có xác thực (authenticated arbitrary file upload vulnerability) cho phép kẻ tấn công khai thác endpoint tải lên firmware để tải lên một PHP web shell sau khi có được PHPSESSID hợp lệ và chạy các lệnh tùy ý để làm rò rỉ nội dung của các tệp nhạy cảm (ví dụ: "/etc/passwd").
- CVE-2025-66039 (điểm CVSS: 9.3) - Lỗ hổng bỏ qua xác thực (authentication bypass vulnerability) xảy ra khi "Authorization Type" (còn gọi là AUTHTYPE) được đặt thành "webserver", cho phép kẻ tấn công đăng nhập vào Bảng điều khiển quản trị (Administrator Control Panel) thông qua một Authorization header giả mạo.
Chi tiết về lỗ hổng bỏ qua xác thực (Authentication Bypass)
Điều đáng nói ở đây là lỗ hổng bỏ qua xác thực không tồn tại trong cấu hình mặc định của FreePBX, vì tùy chọn "Authorization Type" chỉ hiển thị khi ba giá trị sau trong Advanced Settings Details được đặt thành "Yes":
- Display Friendly Name
- Display Readonly Settings
- Override Readonly Settings
Tuy nhiên, một khi các điều kiện tiên quyết được đáp ứng, kẻ tấn công có thể gửi các yêu cầu HTTP được tạo sẵn để vượt qua xác thực và chèn một người dùng độc hại vào bảng cơ sở dữ liệu "ampusers", thực hiện điều gì đó tương tự như CVE-2025-57819, một lỗ hổng khác trong FreePBX đã được tiết lộ là đang bị khai thác tích cực trong thực tế vào tháng 9 năm 2025.
"Những lỗ hổng này dễ dàng bị khai thác và cho phép kẻ tấn công từ xa đã được xác thực/chưa được xác thực (authenticated/unauthenticated remote attackers) thực thi mã từ xa (remote code execution) trên các phiên bản FreePBX dễ bị tổn thương," nhà nghiên cứu bảo mật Noah King từ Horizon3.ai cho biết trong một báo cáo được công bố tuần trước.
Các phiên bản đã được vá lỗi và biện pháp giảm thiểu
Các vấn đề đã được khắc phục trong các phiên bản sau:
- CVE-2025-61675 và CVE-2025-61678 - 16.0.92 và 17.0.6 (Đã khắc phục vào ngày 14 tháng 10 năm 2025)
- CVE-2025-66039 - 16.0.44 và 17.0.23 (Đã khắc phục vào ngày 9 tháng 12 năm 2025)
Ngoài ra, tùy chọn chọn nhà cung cấp xác thực (authentication provider) đã được loại bỏ khỏi Advanced Settings và yêu cầu người dùng đặt thủ công thông qua command-line bằng fwconsole. Là các biện pháp giảm thiểu tạm thời, FreePBX đã khuyến nghị người dùng đặt "Authorization Type" thành "usermanager", đặt "Override Readonly Settings" thành "No", áp dụng cấu hình mới và khởi động lại hệ thống để ngắt kết nối mọi phiên truy cập trái phép (rogue sessions).
"Nếu bạn phát hiện ra rằng web server AUTHTYPE đã vô tình được bật, thì bạn nên phân tích kỹ lưỡng hệ thống của mình để tìm dấu hiệu của bất kỳ sự xâm nhập tiềm ẩn nào," FreePBX cho biết.
Người dùng cũng sẽ thấy một cảnh báo trên dashboard, nói rằng "webserver" có thể cung cấp bảo mật kém hơn so với "usermanager". Để bảo vệ tối ưu, nên tránh sử dụng loại xác thực này.
"Điều quan trọng cần lưu ý là mã dễ bị tổn thương cơ bản vẫn còn tồn tại và dựa vào các lớp xác thực phía trước để cung cấp bảo mật và quyền truy cập vào phiên bản FreePBX," King nói. "Nó vẫn yêu cầu truyền một Authorization header với username:password được mã hóa Base64 Basic."
"Tùy thuộc vào endpoint, chúng tôi nhận thấy rằng cần có một username hợp lệ. Trong các trường hợp khác, chẳng hạn như tải lên tệp được chia sẻ ở trên, không cần username hợp lệ và bạn có thể đạt được remote code execution với một vài bước, như đã nêu. Tốt nhất là không nên sử dụng loại xác thực webserver vì nó dường như là mã legacy."