Mấy bữa nay có vài khách hàng liên lạc nhờ hỗ trợ cứu khẩn cấp website đang làm ăn của họ bị hack. Đa phần họ đang dùng WordPress làm nền tảng phát triển website. Điều này cũng dễ hiểu, do rất nhiều bạn kỹ sư làm Website tại Việt Nam lựa chọn dùng WordPress làm website do nó nhanh, chỉ việc tải một cái theme, vài cái plugin, chỉnh chỉnh tí là thành cái website hoành tráng full chức năng, chạy ọt ọt.
Thế nhưng vì cái đơn giản đó mà nhiều chủ website làm kinh doanh nhờ vào website (website vốn như một kênh tiếp thị hiệu quả, không có website bữa nào thì nghỉ làm ăn bữa đó) sẽ trả giá vì sự cẩu thả của các kỹ sư non tay.
Bản thân WordPress là một nền tảng tốt, hiệu quả và khá bảo mật nếu nó được triển khai đúng cách. Tuy nhiên đúng cách là điều ít ai nắm rõ hoặc viết ra.
Để ngừa hậu họa, các bạn nào đang có ý định làm website mà sử dụng WordPress thì nên yêu cầu các kỹ sư làm theo các hướng dẫn dưới đây, hoặc tốt nhất đưa luôn vào phụ lục hợp đồng để ràng buộc các kỹ sư làm theo.
Đối với các kỹ sư làm web, các điểm này sẽ bảo vệ uy tín và chất lượng sản phẩm của bạn.
[ 10 điều cần chú ý khi triển khai Website mới dùng WordPress ]
Document version: 01.09.2015
By xnohat@gmail.com
1. Nên dùng WordPress, vừa tiết kiệm chi phí lại vừa là một nền tảng tốt. Các nền tảng lập trình bởi các cá nhân đều ít tin cậy do phần nhiều chưa được kiểm định chính thức.
2. Nếu dùng 1 theme có sẵn để bổ sung và chỉnh sửa thì cần:
– Mua license chính thức để được nhận cập nhật đầy đủ
– Chọn mua các theme có hỗ trợ Child Theme ( Child Theme là cơ chế cho phép lập trình viên bổ sung các thay đổi vào theme mà theme sau này vẫn update được từ nhà sản xuất )
– Theme khi bị chỉnh sửa thì mọi chỉnh sửa phải thực hiện trên Child Theme chứ tuyệt đối không thay đổi trong mã của theme chính
3. Các plugin nếu sử dụng thì 1 là dùng bản free, 2 là nếu cần dùng bản pro hay trả phí thì bắt buộc phải mua chứ không dùng bản Nulled hay Crack
4. Các chỉnh sửa, bổ sung tính năng được thực hiện bởi lập trình viên thì cần thực hiện thông qua
– Child Theme nếu là chỉnh sửa giao diện
– Viết plugin mới nếu là bổ sung tính năng. Tuân thủ chuẩn viết plugin của WordPress, các can thiệp vào website phải thông qua Hook và Filter, tuyệt đối không thay đổi mã nguồn gốc của WordPress
5. Tuyệt đối đảm bảo các thành phần: WordPress Core (lõi wordpress), Theme, Plugin đều có thể update mỗi khi có phiên bản mới
6. Không mã hóa bất kỳ phần nào của mã nguồn (các biện pháp như base64, eval, gzindeflate… đều không được áp dụng)
7. Các tính năng liên quan tới uploads hoặc đọc ghi file trên hệ thống cần lọc kỹ lưỡng nội dung file upload, lọc phía client và đồng thời lọc lại lần nữa phía Server. Các thư mục chứa file uploads hoặc file được ghi bởi PHP Script thì đều phải tắt PHP Execution (chặn không được thực thi file PHP , bằng htaccess), các thư mục nào không có chức năng upload file hoặc ghi file thì gỡ bỏ quyền ghi của chúng.
8. Các thành phần, plugin, tính năng mà lập trình viên thực hiện mà có liên quan tới truy vấn database thì tuyệt đối phải thông qua class wpdb (https://codex.wordpress.org/Class_Reference/wpdb) và mọi mục input từ user ( $_GET, $_POST, $_FILE, $_SERVER … ) đều phải lọc kỹ thông qua $wpdb->prepare (https://codex.wordpress.org/Class_Reference/wpdb#Protect_Queries_Against_SQL_Injection_Attacks)
9. Lập trình viên không được cài đặt lại dưới bất kỳ hình thức nào các loại backdoor, engineer backdoor, shell script…etc
10. Luôn nhớ cập nhật WordPress, Theme và các Plugin ngay khi có thông báo có bản cập nhật trong WordPress Admin Dashboard.