Website Magento đã cập nhật đầy đủ vẫn có thể bị chiếm server: StyleSmuggler đang bị khai thác trước khi có patch
Sansec cho biết zero-day StyleSmuggler cho phép thực thi mã từ xa mà không cần đăng nhập và đã bị khai thác từ ngày 4/9. Đáng lo hơn, nạn nhân đầu tiên mà hãng điều tra chạy Magento 2.4.6-p15 với các bản vá tháng 7 và 8/2026, trong khi chưa có bản vá chính thức cho lỗ hổng mới.
Một website Magento có thể đang ở mức vá bảo mật mới nhất mà Adobe cung cấp và vẫn bị chiếm quyền thực thi mã trên server. Đó là tình huống mà Sansec cho biết họ đã quan sát với một zero-day mới mang tên StyleSmuggler, đang bị khai thác thực tế từ ngày 4/9/2026.
Theo phân tích của Sansec, lỗ hổng cho phép kẻ tấn công chưa đăng nhập thực thi mã từ xa trên hệ thống Magento. Công ty đã tái hiện chuỗi tấn công trên các bản cài Magento Open Source 2.4.7, 2.4.8 và 2.4.9 sạch. Nạn nhân đầu tiên mà họ ghi nhận chạy Magento 2.4.6-p15, đã áp dụng các bản cập nhật bảo mật tháng 7 và tháng 8/2026 và có trạng thái vá được báo là sạch.
Điểm này khiến StyleSmuggler khác với kịch bản quen thuộc “website bị hack vì chưa cập nhật”. Với zero-day, bản vá cho lỗi cụ thể chưa tồn tại tại thời điểm kẻ tấn công bắt đầu khai thác. Một hệ thống có thể hoàn toàn cập nhật đối với mọi lỗ hổng đã công bố nhưng vẫn không có lớp sửa lỗi cho một con đường tấn công mà nhà cung cấp chưa phát hành fix.
StyleSmuggler cho phép gì?
Sansec mô tả StyleSmuggler là một chuỗi unauthenticated remote code execution — thực thi mã từ xa mà không yêu cầu tài khoản hợp lệ. Nếu khai thác thành công, kẻ tấn công không chỉ thao tác ở lớp giao diện cửa hàng mà có thể chạy mã trên server với quyền của tiến trình Magento, từ đó cài thêm thành phần duy trì truy cập.
Về cơ chế, chuỗi tấn công lợi dụng cách dữ liệu do người dùng kiểm soát đi vào hệ thống template của Magento, sau đó được xử lý lại ở một bước phía server. Sansec cho biết chiến dịch thực tế đã dùng cơ chế này để đưa mã độc vào môi trường ứng dụng rồi kích hoạt nó trong quá trình Magento xử lý nội dung liên quan tới giao dịch. Bài viết này không đi vào payload hay chuỗi request cụ thể vì những chi tiết đó không cần thiết để quản trị viên đánh giá rủi ro và có thể hỗ trợ việc tái tạo khai thác.
Sau khi xâm nhập thành công, Sansec quan sát một tiến trình nền đóng vai trò backdoor và kết nối ra hạ tầng điều khiển từ xa. Tại thời điểm công bố ban đầu, hãng cho biết chưa có bằng chứng backdoor này đã được sử dụng cho hoạt động tiếp theo, nhưng việc có một implant tồn tại trên server đã đủ để coi hệ thống là bị xâm nhập.
“Đã cập nhật đầy đủ” không đồng nghĩa “đã được bảo vệ trước zero-day”
Adobe phát hành bản cập nhật bảo mật gần nhất cho Adobe Commerce và Magento Open Source vào ngày 11/8/2026 trong bulletin APSB26-92. Bulletin này đưa các nhánh 2.4.9, 2.4.8, 2.4.7 và 2.4.6 lên các gói bảo mật tháng 8/2026 và xử lý một nhóm lỗi đã biết, gồm các vấn đề có thể dẫn tới bypass bảo mật, thực thi mã và leo thang đặc quyền.
StyleSmuggler không nằm trong bulletin đó. Sansec cho biết nạn nhân đầu tiên mà họ điều tra vẫn bị xâm nhập dù đã có các bản vá tháng 7 và tháng 8. Hãng cũng tái hiện được toàn bộ chuỗi không cần xác thực trên Magento Open Source 2.4.7, 2.4.8 và 2.4.9.
Sansec tuyên bố các phiên bản hiện hành của Magento và Adobe Commerce bị ảnh hưởng, bao gồm 2.4.9. Tuy nhiên cần tách rõ mức độ bằng chứng: kết quả tái hiện công khai mà hãng mô tả cụ thể là trên Magento Open Source; tại thời điểm viết bài ngày 7/9, Adobe chưa công bố advisory riêng, CVE hay bảng phiên bản bị ảnh hưởng cho StyleSmuggler. Vì vậy chưa nên coi tuyên bố phạm vi ảnh hưởng là một xác nhận độc lập từ Adobe.
Cuộc tấn công bắt đầu trước khi có rule phòng thủ chuyên biệt
Timeline của Sansec cho thấy lần khai thác StyleSmuggler đầu tiên được xác nhận xảy ra tối 4/9 theo giờ UTC. Công ty tái hiện chuỗi tấn công trong vài giờ sau đó và đến sáng 5/9 mới đưa các rule phòng thủ dành riêng cho StyleSmuggler vào hệ thống của mình.
Khoảng trống đó là vấn đề cốt lõi của một zero-day đang bị khai thác: không có patch để cài, còn các WAF signature và chỉ báo phát hiện chuyên biệt chỉ xuất hiện sau khi chiến dịch đã bắt đầu. Một nhà cung cấp Magento khác, Disrex, cho biết một server do họ quản lý đã bị xâm nhập khoảng 50 phút sau mốc tấn công đầu tiên mà Sansec ghi nhận, dù hệ thống cũng đang ở trạng thái được vá đầy đủ.
Điều này cũng giải thích vì sao kiểm tra phiên bản hoặc lệnh báo “patch status clean” không đủ để kết luận server chưa bị xâm nhập. Công cụ kiểm tra patch chỉ trả lời câu hỏi các bản vá đã biết đã được áp dụng hay chưa. Nó không thể chứng minh rằng hệ thống chưa bị khai thác qua một lỗ hổng chưa có bản vá.
Quản trị viên Magento nên làm gì khi chưa có patch?
Trong giai đoạn chưa có fix chính thức, ưu tiên đầu tiên không phải chỉ là “đợi Adobe phát hành patch”, mà là giảm bề mặt tấn công và đồng thời tìm bằng chứng xâm nhập.
- Kiểm tra dấu hiệu compromise trên server: Sansec đã công bố các chỉ báo liên quan tới implant và lưu lượng điều khiển từ xa. Việc quét chỉ thư mục mã nguồn Magento là chưa đủ nếu malware đã chạy hoặc lưu persistence ngoài webroot.
- Áp dụng lớp chặn tạm thời đã được kiểm chứng: Sansec đã triển khai rule cho khách hàng của họ. Với hệ thống không dùng lớp bảo vệ này, hãng đề xuất tạm thời vô hiệu hóa GraphQL cho tới khi có bản vá chính thức nếu ứng dụng có thể hoạt động mà không cần tính năng đó. Thay đổi này có thể ảnh hưởng storefront hoặc integration nên cần đánh giá trước khi triển khai.
- Không coi mitigation là biện pháp làm sạch: WAF hoặc việc vô hiệu hóa một endpoint chỉ có thể ngăn chuỗi khai thác mới. Nếu server đã có implant, vẫn cần incident response riêng để xác định phạm vi xâm nhập.
- Đổi credential khi phát hiện dấu hiệu đáng ngờ: Sansec khuyến nghị xoay vòng credential Magento nếu phát hiện tiến trình hoặc artefact liên quan tới chiến dịch.
- Theo dõi bulletin chính thức của Adobe: khi bản vá dành cho StyleSmuggler được phát hành, cần áp dụng nó trên cả production lẫn môi trường staging hoặc các instance khác có thể truy cập từ Internet.
Một dấu hiệu vận hành mà Sansec nhắc tới là sự gia tăng bất thường của email báo giao dịch thanh toán thất bại. Đây không phải bằng chứng chắc chắn vì giao dịch hợp lệ cũng có thể sinh email tương tự, và việc không nhận được email cũng không chứng minh hệ thống an toàn. Nó chỉ nên được dùng như tín hiệu để mở rộng kiểm tra.
Chưa có CVE không có nghĩa rủi ro thấp
Tại thời điểm viết bài, StyleSmuggler chưa có CVE và Adobe chưa phát hành advisory công khai dành riêng cho lỗi này. Điều đó chủ yếu phản ánh việc sự cố đang ở giai đoạn rất sớm, không phải mức độ nghiêm trọng thấp hơn.
Bằng chứng hiện có gồm các vụ compromise thực tế, một chuỗi RCE không cần xác thực đã được Sansec tái hiện trên nhiều phiên bản Magento Open Source hiện hành và một backdoor được quan sát sau khi khai thác. Đây là đủ để các website Magento public-facing xử lý StyleSmuggler như một incident đang diễn ra thay vì chờ điểm CVSS hoặc mã CVE rồi mới hành động.
Adobe có lịch phát hành security bulletin tiếp theo vào ngày 8/9, nhưng Sansec lưu ý rằng chưa rõ đợt phát hành theo lịch này có bao gồm fix cho StyleSmuggler hay không. Vì vậy mốc cần theo dõi không phải đơn thuần là “Adobe có bản cập nhật mới”, mà là bulletin đó có xác nhận cụ thể StyleSmuggler, phạm vi phiên bản bị ảnh hưởng và bản sửa tương ứng hay không.
Với các hệ thống đã phát hiện dấu hiệu xâm nhập, cài patch sau khi Adobe phát hành cũng không thể tự động hoàn tác những gì đã xảy ra trước đó. Patch sẽ đóng lỗ hổng; việc xác định và loại bỏ persistence, kiểm tra credential và khôi phục từ trạng thái tin cậy vẫn là một bài toán incident response riêng.
Ảnh: Sansec, đơn vị công bố nghiên cứu StyleSmuggler.