Trong giới làm web, đặc biệt là sinh viên ngành Ứng dụng phần mềm, Thương mai điện tử hay Thiết kế đồ họa, WordPress gần như là lựa chọn mặc định khi cần dựng một website nhanh, đẹp và “không tốn tiền”. Đi kèm với đó là vô số theme thương mại bị bẻ khóa (nulled) được chia sẻ miễn phí trên các diễn đàn, trong đó Flatsome – một trong những theme bán hàng phổ biến nhất cho WooCommerce là cái tên xuất hiện nhiều nhất.
Nhưng sau nhiều năm làm việc với các dự án WordPress thực tế, tôi nhận ra một sự thật khá đau đầu: phần lớn các website từng bị hack hoặc bị chèn mã độc mà tôi tiếp xúc đều có một điểm chung — chúng dùng theme hoặc plugin “miễn phí” lấy từ nguồn không chính thức.

Vì sao một file ZIP “miễn phí” lại nguy hiểm
Để bẻ khóa được một theme thương mại như Flatsome, người chia sẻ phải sửa đổi mã nguồn để loại bỏ phần kiểm tra license. Đây chính là lúc rủi ro xuất hiện: không ai kiểm soát được người chỉnh sửa đó đã chèn thêm gì vào file. Trên thực tế, các theme và plugin nulled thường đi kèm:
- Backdoor (cửa hậu) — đoạn mã PHP ẩn cho phép kẻ tấn công truy cập và điều khiển server từ xa, dù bạn không hề biết.
- Mã độc chèn link SEO ẩn (SEO spam injection) — chèn hàng trăm liên kết ẩn vào trang để đẩy SEO cho website khác, khiến Google phạt hoặc gỡ index trang của bạn.
- Trình tải mã độc (malware downloader) — đoạn script tự động tải thêm mã độc khác về server sau khi cài đặt.
- Theme/plugin không bao giờ được cập nhật — vì là bản lậu, bạn không thể cập nhật chính thức từ nhà phát hành, dẫn đến việc các lỗ hổng đã được công bố công khai (CVE) tồn tại vĩnh viễn trên website của bạn.
Điểm cuối cùng này mới là nguy cơ âm thầm và phổ biến nhất. Không cần có backdoor cố ý, chỉ riêng việc không thể vá lỗi đã đủ để một website trở thành mục tiêu dễ dàng cho các bot quét lỗ hổng tự động chạy 24/7 trên Internet.

Câu chuyện thực tế: dự án tốt nghiệp và công việc sau khi ra trường
Trong môi trường sinh viên, áp lực thời gian và chi phí khiến việc tải theme/plugin lậu trở thành “chuyện thường ngày”. Một bạn làm dự án tốt nghiệp về website thương mại điện tử thường chọn WordPress + WooCommerce + Flatsome vì giao diện đẹp, tài liệu hướng dẫn nhiều, mà bản gốc lại có giá vài chục đô — số tiền không nhỏ với sinh viên. Hệ quả là:
- Website dự án bị chèn link spam, khi giáo viên hoặc hội đồng mở lên kiểm tra thì thấy trang lạ, ảnh hưởng nghiêm trọng đến điểm số và uy tín.
- Một số trường hợp website bị biến thành điểm trung chuyển để phát tán mã độc, khiến hosting bị nhà cung cấp khóa tài khoản giữa lúc gần đến hạn báo cáo.
- Sinh viên không hiểu vì sao bị hack, vì bản thân không viết “code lỗi” — họ quên rằng rủi ro không nằm ở code họ viết, mà nằm ở thành phần họ tải về.
Vấn đề nghiêm trọng hơn là thói quen này thường được mang theo vào công việc sau khi ra trường. Một bạn từng quen “tải Flatsome free” cho dự án rất dễ tiếp tục làm điều tương tự khi đi làm tại agency hoặc nhận dự án freelance cho khách hàng thật — lúc này hậu quả không còn là điểm số, mà là:
- Website khách hàng bị Google đánh dấu “Trang này có thể chứa nội dung gây hại”, mất toàn bộ traffic tìm kiếm.
- Dữ liệu khách hàng, đơn hàng, thông tin thanh toán trên WooCommerce bị rò rỉ.
- Công ty hoặc cá nhân bị mất uy tín, thậm chí bị ràng buộc trách nhiệm pháp lý nếu hợp đồng có điều khoản bảo mật dữ liệu.
Tôi từng xử lý một trường hợp website doanh nghiệp nhỏ dùng theme lậu bị hack, toàn bộ database đơn hàng bị mã hóa ransomware ngay trên hosting chia sẻ (shared hosting) — chỉ vì một theme tưởng chừng vô hại được cài từ một năm trước và không ai để ý cập nhật.
Ví dụ điển hình: lỗ hổng trên theme Avada
Một ví dụ rất đáng tham khảo, không phải Flatsome nhưng cùng nhóm theme WordPress thương mại cao cấp, là Avada — theme bán chạy nhất trên ThemeForest với hàng trăm nghìn lượt cài đặt. Avada minh họa rất rõ việc lỗ hổng phần mềm là chuyện xảy ra với cả sản phẩm chính hãng, và việc cập nhật thường xuyên quan trọng đến mức nào.

Chỉ trong vài năm gần đây, Avada đã được ghi nhận nhiều lỗ hổng nghiêm trọng, trong đó đáng chú ý có thể kể đến một lỗi SQL Injection có xác thực (CVE-2023-39309), cho phép kẻ tấn công đã đăng nhập truy cập dữ liệu nhạy cảm và trong một số trường hợp thực thi mã từ xa. Cùng thời điểm đó, các nhà nghiên cứu còn phát hiện một lỗ hổng tải file tùy ý dành cho tài khoản cấp Contributor, cho phép tải lên file PHP độc hại và từ đó chiếm quyền điều khiển toàn bộ website.
Nghiêm trọng hơn, năm 2024 giới an ninh mạng ghi nhận lỗ hổng CVE-2024-13346 ảnh hưởng Avada Website Builder, với mức độ nguy hiểm 9.2/10, cho phép kẻ tấn công không cần đăng nhập vẫn có thể thực thi shortcode tùy ý từ xa, qua đó dẫn tới hàng loạt hệ quả như chiếm đoạt dữ liệu, SSRF hay chèn mã độc XSS. Một nhóm nghiên cứu thực tế đã khai thác lỗ hổng này trên một website thật và phát hiện ra một chuỗi tấn công liên hoàn, từ thực thi shortcode không cần xác thực đến rò rỉ thông tin cá nhân và khả năng SSRF, chỉ bằng cách dò tìm phiên bản theme thông qua các tệp CSS công khai trên website.
Sang đầu năm 2026, Avada tiếp tục bị phát hiện lỗi Stored XSS trong tính năng Dynamic Data, cho phép tài khoản cấp Subscriber chèn mã JavaScript độc hại vào hồ sơ cá nhân và mã này sẽ tự thực thi khi quản trị viên xem trang — một kỹ thuật tấn công khá tinh vi vì kẻ xấu chỉ cần đăng ký tài khoản thông thường, không cần quyền quản trị.
Điều quan trọng cần nhấn mạnh: đây là theme chính hãng, có đội ngũ phát triển chuyên nghiệp, vẫn liên tục bị phát hiện lỗ hổng và liên tục phải vá lỗi. Vậy hãy tưởng tượng một bản Flatsome hay Avada bị bẻ khóa, không có cách nào nhận được bản vá chính thức — website của bạn coi như “đứng yên” giữa một bãi mìn lỗ hổng đã công khai trên Internet cho cả thế giới hacker biết.
Cách phòng tránh và giảm thiểu rủi ro

Tin tốt là những rủi ro này hoàn toàn có thể kiểm soát được nếu thực hiện một số nguyên tắc cơ bản:
- Chỉ dùng theme/plugin từ nguồn chính thức. Với dự án sinh viên, có thể dùng theme miễn phí hợp pháp trên WordPress.org (Astra, OceanWP, Storefront…) thay vì bản bẻ khóa của theme trả phí. Nhiều nhà cung cấp theme cũng có chính sách giảm giá hoặc giấy phép giáo dục cho sinh viên.
- Luôn cập nhật WordPress core, theme và plugin. Phần lớn các vụ hack không khai thác lỗ hổng “ngày 0” (zero-day) mà khai thác lỗ hổng đã được công bố từ lâu nhưng quản trị viên quên vá.
- Hạn chế số lượng plugin, gỡ bỏ plugin/theme không dùng. Mỗi plugin là một bề mặt tấn công (attack surface) tiềm năng, kể cả khi đã vô hiệu hóa (deactivate) mà chưa gỡ hẳn.
- Giới hạn quyền tài khoản người dùng. Nhiều lỗ hổng (như trên Avada) chỉ khai thác được khi kẻ tấn công có quyền Contributor hoặc Author — tránh tạo quá nhiều tài khoản với quyền cao không cần thiết.
- Dùng plugin bảo mật và tường lửa ứng dụng web (WAF) như Wordfence, Sucuri hoặc dịch vụ CDN có WAF (Cloudflare) để chặn các request khai thác lỗ hổng đã biết trước khi theme được vá.
- Sao lưu (backup) định kỳ và lưu ở nơi khác server chính. Nếu chẳng may bị hack, có backup sạch giúp khôi phục nhanh thay vì mất toàn bộ dữ liệu.
- Theo dõi thông báo lỗ hổng từ các nguồn như WPScan, Patchstack hoặc Wordfence Threat Intelligence để biết sớm khi theme/plugin mình dùng bị phát hiện lỗi.
- Với sinh viên: coi đây là một phần kỹ năng nghề nghiệp, không chỉ là vấn đề đạo đức bản quyền. Doanh nghiệp tuyển dụng ngày càng quan tâm đến tư duy bảo mật của nhân sự, và thói quen “chỉ dùng nguồn chính thức” hình thành từ dự án sẽ theo bạn suốt sự nghiệp.
Kết luận
Một theme “miễn phí” tải về sau vài phút tìm kiếm trên Google có thể khiến bạn tiết kiệm được vài chục đô, nhưng cái giá phải trả mất dữ liệu, mất uy tín, mất thời gian xử lý sự cố, hay tệ hơn là rò rỉ thông tin khách hàng luôn lớn hơn rất nhiều. Ví dụ về Avada cho thấy ngay cả sản phẩm chính hãng được duy trì chuyên nghiệp vẫn có lỗ hổng; vậy một bản bẻ khóa, không bao giờ được vá, đang âm thầm tích lũy rủi ro mỗi ngày nó còn online. Với sinh viên đang làm dự án hay người mới bước vào nghề, đây là lúc tốt nhất để xây dựng thói quen bảo mật đúng đắn trước khi phải học bài học đó từ một sự cố thật ngoài đời.
Giảng viên Nguyễn Thưởng
Bộ môn ứng dụng phần mềm
FPT Polytechnic Hà Nội

