ON / OFF CHẾ ĐỘ ĐỌC BAN ĐÊM DARK MODE:
Nói là làm website / viết blog bằng WordPress không cần biết code chứ nếu bạn muốn như ý không phải là dễ. Nhất là mấy bạn cầu toàn. Vì vậy nếu bạn mới mày mò viết blog kiếm tiền thì nên tranh thủ học về WordPress càng nhanh càng tốt. Và một trong những khóa học như vậy là của Duy trên KTcity. Thay vì mày mò kỹ thuật thì bạn nên dành thời gian đó để sáng tạo content thì mới nhanh kiếm tiền được. Chúc bạn thành công!
Những ai coi thường bảo mật WordPress như mình đã từng thường có câu nói kinh điển là “Biết thế”. Trong bài viết này mình sẽ hướng dẫn cách bảo mật WordPress toàn tập nhờ vào kinh nghiệm thực tế dính malware.
Trước khi bắt đầu mình xin phép kể lại một câu chuyện nhỏ.
Nếu bạn không muốn nghe kể chuyện thì có thể kéo xuống dưới và bắt đầu ngay vào chủ đề chính.
Số là vào một buổi sáng đẹp trời mà cũng có thể là không.
Khi gõ domain của mình trên trình duyệt và nhấn Enter cái “pặc” thì ra hình sau:

Đây là lỗi mà Cloudflare không kết nối được với host.
Chắc là host bị downtime nữa rồi. Nhưng mà không, khi nhìn kỹ thì mình mới thấy có cái gì đó sai sai ở đây.
Tại sao blog của mình là cái gì đó .ru chứ không phải là mosmmo.com?
Một lúc sau thì website của mình tự động chuyển hướng sang web hellofromhony…
Vào website kiểm tra malware của Sucuri thì thấy như sau:
Nhân đây mình nói thêm Sucuri là công ty bảo mật hàng đầu thế giới được GoDaddy mua lại hồi năm 2017.

Lúc này mình mới tin chắc là website của mình đã bị dính mã độc.
“Biết thế!”. Đó là những gì mình có thể nói lúc đó.
Ok, I’m fine!
Nếu bạn là mình thì bạn sẽ làm gì?
Đầu tiên là mình cố gắng nhớ lại xem gần đây mình có viếng thăm website nào bên Nga ngố hay không? Vì cái tên miền đầu tiên mình thấy là .ru gì đó.
Thứ hai, vì vẫn còn vào được trang admin nên mình thử cài plugin Anti-Malware Security and Brute-Force Firewall.
Đây là một plugin chống malware khá nổi tiếng.
Đáng tiếc là sau khi scan xong thì nó cũng báo là có malware nhưng mà nó xin lỗi vì cũng không biết malware nằm ở đâu.
Đến lúc này mình mới nghĩ tới chuyện cài lại website vì mình đã có bản backup tự động vào 11h đêm và 7h sáng mỗi ngày trên Google Drive và Dropbox.
Chọn một backup ngay trước thời điểm mà website bị “dính”, mình tiến hành phục hồi website bằng BackupBuddy chỉ trong 5 phút.
Rút kinh nghiệm lần trước, mình nhanh tay cài plugin Sucuri. Đồn thời thay đổi mật khẩu tất cả các nơi mà mình nhớ được: cPanel, database, admin…
Tưởng mọi chuyện đã xong nhưng đời không như là mơ!
5′ sau triệu chứng y chang như lúc trước lại xuất hiện.
Hết Google rồi lại restore website rồi cứ như thế mấy lần mà 4 con malware vẫn còn bám ở đó.
Mình lục tung theme và code lõi WordPress mà vẫn không thấy gì khả nghi.
Nhưng mình không xóa plugin nào cả vì cố chấp quá, cứ nghĩ plugin nếu không tải trực tiếp từ WordPress thì mua ở những nơi uy tín cả.
Không lang thang trên cPanel nữa mà quay lại trang quản trị, bấm vô mọi chỗ có thể bấm, vô tình vào plugin Yuzo Related Posts và thấy có gì là lạ ở đây.
Tại sao phần hình ảnh mặc định hiển thị khi bài viết không có Featured Image lại có link là hungthinh…com?
Kéo xuống dưới phần Custom CSS thấy không phải là của mình mà một đống của ai đó và trong đó có 1 link chuyển hướng.
Nhanh tay bấm Deactive rồi Delete plugin đó luôn.
Thật bất ngờ, vào sitecheck.sucuri.net và nhấn Rescan ở dưới để xóa cache và scan lại thì thấy malware đã biến mất.
Sau khi phục hồi website về trạng thái ban đầu lúc chưa bị dính thì mình vẫn muốn cài lại plugin này để hiển thị bài viết có liên quan.
Khi tìm kiếm thì được thông báo là WordPress đã cấm người dùng mới tải xuống vì lỗ hổng bảo mật.
Sau khi search trên Google thì mình mới biết là rất nhiều website bị dính malware vì sử dụng plugin này.
Đó là lý do mà hôm nay mình ngồi lại viết những dòng này coi như là kinh nghiệm. Đồng thời đưa ra một số bước thật chi tiết và cụ thể cho bạn bảo mật website / blog của mình.
Nào hãy chuẩn bị mọi thứ và chúng ta bắt đầu luôn nhé.
Mục lục
- 1 Cài ngay 1 plugin bảo mật WordPress
- 2 Cập nhật WordPress lên phiên bản mới nhất
- 3 Thay đổi tên đăng nhập
- 4 Sử dụng mật khẩu khó
- 5 Bảo mật 2 lớp
- 6 Tắt báo cáo lỗi PHP Error
- 7 Không dùng theme, plugin null
- 8 Thay đổi tiếp đầu tố database
- 9 Hạn chế số lần đăng nhập sai
- 10 Thay đổi đường dẫn đăng nhập
- 11 Tắt chức năng chỉnh sửa file
- 12 Giấu thư mục plugins, uploads
- 13 Vô hiệu hóa Directory Indexing and Browsing
- 14 Vô hiệu hóa XML-RPC
- 15 Chống SQL Injection trong file .htaccess
- 16 Xóa theme và plugin không dùng
- 17 Tạm kết
Cài ngay 1 plugin bảo mật WordPress
Mình để mục cài plugin bảo mật WordPress đầu tiên là do trong quá trình thao tác làm “cứng” website của bạn, mình sẽ dùng thủ công hoặc plugin.
Có rất nhiều plugin bảo mật ngoài kia, bạn chỉ cần search Google là ra cả tá.
Tuy nhiên theo mình bạn chỉ nên chọn Sucuri hoặc iThemes Security.
Trong đó Sucuri là bản miễn phí và khá nhẹ trong khi đó iThemes Security là bản trả phí với nhiều tính năng.
Bạn cũng có thể sử dụng Wordfence nhưng mình thấy là hơi nặng.
Cá nhân mình sử dụng iThemes Security vì một số lý do sau đây:
iThemes Security và BackupBuddy mà mình đã đề cập ở trên là anh em một nhà nên mình mang cả hai về cho đủ bộ.
Ngoài ra thì plugin này có một số tính năng mà mình rất thích như:
Security Dashboard – Có cảm giác như mình đang ngồi trước camera có màn hình lớn theo dõi mọi hoạt động bảo mật trên website của mình vậy

Bảo mật 2 lớp – Mình có thể chọn mã từ Google Authenticator, email hoặc danh sách các mã đã tải về trước. Nó khá giống với bảo mật của Google.
Tích hợp nhiều tính năng mạnh mẽ – Và do đó mình không cần cài thêm các plugin khác để hạn chế số lần đăng nhập sai hay thay đổi đường dẫn đăng nhập nữa
Nhiêu đó thôi cũng đủ làm mê mẩn bất kỳ ai.
Tuy nhiên giá cả thì hơi bị chát chút xíu.
Nếu bạn có ý định viết blog / làm website nghiêm túc thì có thể cân nhắc đầu tư hoặc bạn có thể tìm những người uy tín để mua chung.
Ví dụ plugin giá $80, nếu có 8 người mua chung thì mỗi người chỉ cần trả $10 mà thôi.
Sau khi cài đặt và kích hoạt plugin xong thì bạn vào Security > Security Check > Secure Site cho nó xanh lè là xong.
Các thiết đặt khác bạn có thể theo dõi ở dưới.
Cập nhật WordPress lên phiên bản mới nhất
Việc này đơn giản như ăn cơm nhưng nhiều người hay “quên”.
Không có gì là hoàn hảo cả và WordPress cũng không phải là ngoại lệ.
Và mỗi lần họ tung ra một bản cập nhập thì chắc chắn là có sự cải tiến và / hoặc vá lỗ hổng bảo mật WordPress nào đó.
Vì vậy nếu thấy thông báo có bản cập nhật mới cho WordPress trên thanh Dashboard thì bạn nên nhấp Update ngay.
Nếu sử dụng iThemes Security thì có thể làm như sau để cập nhật tự động:
Bạn vào Security > Version Management sau đó tick vào ô Automatically install the latest WordPress release.
Xong!
Thay đổi tên đăng nhập
Rất nhiều người để tên đăng nhập mặc định là admin.
Điều này rất nguy hiểm vì hacker đã có được 1 nửa chìa khóa vào nhà bạn.
Để thay đổi username admin bạn làm như sau:
Tại trang quản trị chọn Users > Add new
Sau đó điền username mới và email của bạn (bắt buộc) > nhấn vào Show password và copy mật khẩu này vào nơi an toàn.
Lưu ý: Bạn phải gán cho user này cái Role là Administrator.
Nhấn Add New User để hoàn tất.
Log out (thoát) tài khoản admin hiện tại của bạn sau đó đăng nhập bằng username vừa tạo ở trên.
Vào lại Users, kiểm tra 1 lần nữa để chắc cú là tài khoản bạn vừa tạo có quyền admin.
Sau đó chọn user admin và nhấn Delete, chọn username mới trong ô Attribute all posts to > Confirm Deletion
Sử dụng mật khẩu khó
Có thể bạn sẽ hỏi “Như thế nào là khó?“
Nhìn chung thì 1 mật khẩu bất kỳ nên có ít nhất 8 ký tự bao gồm chữ thường, chữ hoa, số và ký tự đặc biệt.
Đặt 1 mật khẩu khó thì không phải là công việc quá khó khăn. Tuy nhiên cái khó ở đây chính là làm sao để nhớ và quản lý nó.
Bí kíp là bạn hãy cài đặt và sử dụng 1 phần mềm quản lý mật khẩu thật tốt như Lastpass hay Dashlane.

Nếu bạn đặt mật khẩu trên cPanel thì trên đó sẽ có công cụ giúp tạo mật khẩu mạnh cho bạn.
Ngoài ra thì một số trình duyệt như Google Chrome cũng có thể giúp bạn tạo mật khẩu mạnh và quản lý nó.
Bảo mật 2 lớp
Nếu bạn đã từng sử dụng Gmail hay Facebook thì chắc bạn đã nghe qua về xác minh 2 bước (2-Step Verification).
Hay còn có tên gọi khác là xác thực 2 yếu tố (Two-factor authentication).
Khi đăng nhập vào WordPress và gõ username và mật khẩu nó sẽ không chạy thẳng vào Dashboard nữa.
Thay vào đó nó sẽ hiện lên 1 ô để bạn nhập code vào giống như mật khẩu OTP khi giao dịch với ngân hàng vậy.

Mã này có thể là từ Google Authenticator, email hay code bạn đã tải xuống trước.
Đề làm được điều đó bạn có thể cài 1 plugin có tên là Two Factor Authentication.
Nếu sử dụng iThemes Security bạn có thể làm như sau:
Vào Security > Two-Factor Authentication > Enable
Sau đó bạn vào tài khoản của bạn Users > Your Profile, kéo xuống phần Two-Factor Authentication Options > tick vào mục Enable các nhà cung cấp mà bạn muốn.

Mobile App – App trên điện thoại iOS hoặc Android
App tốt nhất mà bạn nên sử dụng đó là Google Authenticator như mình đã nói ở trên. Ngoài ra bạn có thể cài Authy nếu app trên bị lỗi.
Sau khi đã cài Google Authenticator trên điện thoại, bạn mở ra và nhấn vào dấu (+) trên cùng và chọn Quét mã vạch.
Bạn quay lại phần Mobile App ở trên chọn View QR Code và scan.
Email – Mã xác minh sẽ được gửi đến email mà bạn điền trong mục Profile
Backup Authentication Codes – Mã xác minh dự phòng, bạn nhấn vào nút Generate Authentication Codes và tải về máy tính của bạn
Sau khi đã kích hoạt tất cả những phương thức xác minh mà bạn muốn, hãy tick vào ô Make Primary vào mục mà bạn muốn làm phương thức mặc định.
Phương thức khuyên dùng là Mobile App vì nhanh, gọn, lẹ.
Nếu chọn email thì nhiều lúc đăng nhập xong đợi dài cổ mà vẫn chưa thấy email có mã xác minh đâu.
Tắt báo cáo lỗi PHP Error
Có nhiều lúc mình chỉnh sửa một số file và sau khi nhấn F5 thì blog bị lỗi.
Dựa vào báo cáo lỗi đó mà mình biết mình đã làm sai chỗ nào.
Tuy nhiên nếu lỗi này hiển thị cho bất kỳ ai thì bạn đã vô tình để lộ những thông tin nhạy cảm cho hacker.
Chưa kể nó sẽ làm mất thẩm mỹ website của bạn.
Vì vậy bạn phải tắt chức năng báo cáo lỗi PHP để bảo mật WordPress tốt hơn.
Nếu có lỗi xảy ra sẽ được ghi lại trong file log trên host, bạn chỉ cần vào đó kiểm tra.
Để tắt báo cáo lỗi PHP Error bạn làm như sau:
Bạn vào cPanel > folder gốc của website > wp-config.php sẽ thấy báo cáo lỗi đã được bật theo mặc định:
define(‘WP_DEBUG’, true);
Nếu muốn tắt thì bạn thay bằng những dòng sau:
ini_set(‘display_errors’,’Off’);ini_set(‘error_reporting’, E_ALL );define(‘WP_DEBUG’, false);define(‘WP_DEBUG_DISPLAY’, false);
Done!
Không dùng theme, plugin null
Chắc bạn đã từng cài một phần mềm cờ rắc nào đó như IDM chẳng hạn. Null cũng tương tự như vậy.
Đây là những theme, plugin premium (trả phí) nhưng đã bị bẻ khóa và được chia sẻ / bán lại trên mạng.
Việc sử dụng theme, plugin null rất rủi ro vì người làm ra nó có thể chèn backlink vào trong đó.
Tệ hơn nữa là nó có thể đánh cắp mật khẩu của bạn, điều hướng sang các website khác.
Vì vậy khi blog của bạn đã ổn định thì không nên sử dụng null nữa.
Theo mình thì bạn chỉ nên sử dụng null trong 2 trường hợp sau:
Thứ nhất là thử nghiệm theme mà bạn muốn mua trên localhost
Có thể bạn thích 1 theme nào đó nhưng không biết là khi cài vào blog nó như thế nào?
Vì việc bỏ ra 1 khoản tiền lớn để mua theme mà khi cài vào bạn không thỏa mãn thì rất tốn kém.
Và cài null theme trên localhost để test chính là giải pháp cho bạn.
Thứ hai là mua null theme, plugin ở những nơi uy tín
Mình thấy có một vài nơi bán theme, plugin đã bẻ khóa với giá khá rẻ mà vẫn còn nguyên gốc từ nhà sản xuất. Tất nhiên là trừ việc họ đã can thiệp vào code để nó không đòi kích hoạt nữa.
Tuy nhiên nếu bạn đã viết blog / làm website từ 3 tháng trở lên mình nghĩ là bạn nên mua theme chính gốc sẽ tốt hơn.
- Code hoàn toàn sạch sẽ, tinh tươm
- Cập nhật trực tiếp từ nhà sản xuất
- Support nhiệt tình từ tác giả
Thay đổi tiếp đầu tố database
Hay còn gọi là database prefix. Theo mặc định thì tiếp đầu tố này là wp_
Tuy nhiên điều này thì ai cũng biết và đó là lỗ hổng để hacker lợi dụng nếu họ muốn tấn công website của bạn.
Khi cài website trên localhost, tự động qua Softaculous hay restore từ BackupBuddy mà bạn đã thay đổi rồi thì có thể bỏ qua bước này.
Nếu bạn chưa đổi thì có thể theo dõi tiếp ở dưới.
Database chính là cơ sở dữ liệu của website.
Một website WordPress muốn hoạt động thì cần có mã nguồn của WordPress và database.
Để thay đổi tiếp đầu tố prefix cho database bạn có thể làm theo 3 cách sau.
Tuy nhiên trước khi làm theo cách nào đi chăng nữa bạn cũng phải backup database trước.
Điều này là cực kỳ quan trọng vì nếu lỡ tay làm sau gì đó thì bạn có thể phục hồi lại trong 1 nốt nhạc.
Thay đổi prefix trong phpMyAdmin bảo mật WordPress
Đây là cách can thiệp sâu vào cơ sở dữ liệu thủ công nên mình không khuyến nghị.
Bạn chỉ làm khi đã backup đầy đủ và biết mình đang làm gì.
Sử dụng plugin thay đổi database prefix
Rất may là nếu bạn không muốn làm những bước phức tạp như trên thì bạn có thể sử dụng plugin.
Và một trong những plugin mà bạn có thể sử dụng đó là Brozzme DB Prefix & Tools Addons.
Sau khi cài đặt và kích hoạt plugin, bạn vào Tools > DB Prefix
- Nhập tiếp đầu tố hiện tại vào ô Existing Prefix: wp_
- Gõ tiếp đầu tố mới vào ô New Prefix: ví dụ wp_tramanh

Lưu ý là tất cả các ký tự Latin đều được chấp nhận kể cả gạch dưới _ nên bạn hãy đặt sao cho khó một chút.
Xong thì nhấn nút Change DB Prefix để lưu lại.
Kiểm tra một lần nữa xem website có hoạt động ổn định hay không?
iThemes Security
Nếu bạn sử dụng iThemes Security thì có thể làm như sau.
Đầu tiên bạn vào Security > chọn Advanced > Change Database Table Prefix > Configure Settings
Nhấn vào Backup your database > chọn Yes và Save Settings
That’s all.
Hạn chế số lần đăng nhập sai
Tại sao bạn lại phải hạn chế số lần đăng nhập sai?
Lý do là vì có một số kẻ khá rảnh rỗi nên họ sẽ dùng 1 công cụ “dò” username và mật khẩu đăng nhập của bạn (Brute Force Attack).
Và họ dùng phương pháp loại trừ để làm việc đó giống như việc Edison phát minh ra dây tóc bóng đèn bằng cách thử 10.000 chất liệu khác nhau.
Có nghĩa là họ sẽ dò hàng trăm hàng nghìn lần cho đến khi tìm ra thì thôi.
Nếu bạn hạn chế số lần đăng nhập sai thì họ sẽ không dò thêm được nữa.
Trong bài viết về cài đặt WordPress tự động qua Softaculous (ở trên), mình có nói về một tiện ích đi kèm để hạn chế số lần đăng nhập sai tên là Loginizer.
Nếu chưa có thì bạn có thể tải về và cài đặt tại đây.
Nếu sử dụng iThemes Security thì bạn có thể làm như sau:
Vào Security > Local Brute Force Protection > Configure Settings
Sau đó nhập số lần đăng nhập sai tối đa trước khi bị khóa trong ô Max Login Attempts Per Host.
Done!
Thay đổi đường dẫn đăng nhập
Như bạn biết, đường dẫn đăng nhập website WordPress sẽ có dạng yourdomain.com/wp-admin.
Nếu bạn để nguyên mặc định như vậy, hacker có thể vào đó và dùng cách tấn công Brute Force như trên.
Giống như việc 40 tên cướp đánh dấu nhà trong truyện Alibaba vậy.
Nếu mà bạn xóa dấu vết đi thì 40 hacker cũng khó mà “đánh dấu” được bạn.
Để thay đổi đường dẫn đăng nhập mặc định của WordPress bạn có thể dùng plugin WPS Hide Login.
Plugin này mình cũng đã nhắc đến trong bài 11 việc cần làm ngay sau khi cài đặt WordPress.
Nếu sử dụng iThemes Security thì bạn có thể vào Security > Advanced > Hide Backend > Configure Settings
Sau đó tick vào ô Enable the hide backend feature > gõ đường dẫn mà bạn muốn thay cho wp-admin vào ô Login Slug.
Xong thì nhấn Save Settings để lưu lại.
Done!
Tắt chức năng chỉnh sửa file
Theo mặc định WordPress sẽ cho bạn chỉnh sửa file ngay trong trang quản trị admin. Giúp bạn có thể chỉnh sửa file mà không cần đăng nhập vào cPanel.
Nhưng nếu hacker vào được trang admin của bạn, anh ta sẽ tìm cách sửa các file đó đầu tiên.
Vì vậy để bảo mật WordPress bạn nên tắt nó đi, nếu muốn thay đổi gì thì cứ lên cPanel mà làm. Có thể hơi tốn thời gian một xíu nhưng mà tốt cho bạn.
Để tắt chức năng file editor bạn có thể làm như sau:
Đầu tiên bạn vào cPanel > folder gốc chứa website > tìm file wp-config.php và thêm dòng sau vào cuối file:
define( ‘DISALLOW_FILE_EDIT’, true );
Nếu sử dụng iThemes Security thì bạn vào Security > WordPress Tweaks > Configure Settings > tick vào ô Disable File Editor
Xong thì nhấn Save Settings để lưu lại.
Giấu thư mục plugins, uploads
Mặc định thì khi gõ yourdomain.com/wp-content/plugins sẽ hiện ra toàn bộ plugin mà bạn cài.
Đối với folder uploads cũng tương tự như vậy.
Nếu bạn muốn bảo mật WordPress tốt hơn thì nên “giấu” chúng đi.
Một số hosting đã tự động bảo vệ những folder này nên khi bạn truy cập vào sẽ báo lỗi 403 Forbidden Access.
Cho bạn nên trước khi làm bạn cần kiểm tra hosting có hỗ trợ hay không. Nếu rồi thì bỏ qua.
Folder plugins
Đầu tiên bạn vào cPanel > folder gốc của website > wp-content > plugins
Nhấn vào nút add File, đặt tên file là index.html và để trống rồi lưu lại.
Từ nay thì nếu người nào đó gõ liên kết trên thì sẽ ra trang Page not found hoặc 1 trang trắng.
Thư mục uploads
Bạn cũng vào cPanel và tìm đến folder wp-content/uploads.
Sau đó tạo 1 file mới đặt tên là .htaccess. Lưu ý là file .htaccess này ở trong thư mục uploads chứ không phải trong folder gốc của website nhé.
Bạn mở file vừa tạo và thêm dòng sau vào rồi nhấn Save:
Order Allow,DenyDeny from allAllow from all
Done!
Vô hiệu hóa Directory Indexing and Browsing
Theo mặc định thì khi web server không tìm thấy file index nào, nó sẽ tự động hiển thị nội dung của danh mục đó.

Đây là lỗ hổng cho hacker có thể xâm nhập vào website của bạn. Nó còn giúp người khác duyệt thư mục, copy hình ảnh và tìm kiếm các thông tin nhạy cảm.
Vì vậy mình khuyên bạn nên tắt nó đi theo 1 trong 2 cách sau.
File .htaccess
Đầu tiên bạn truy cập vào file .htaccess qua cPanel, mở nó lên và thêm dòng sau vào cuối file:
Options -Indexes
Sau đó nhấn Save để lưu lại là xong.
iThemes Security
Bạn vào Security > System Tweaks > Configure Settings
Tick vào ô Disable Directory Browsing sau đó nhấn Save Settings
Done!
Vô hiệu hóa XML-RPC
XML-PRC là một tiện ích của WordPress cho phép người dùng quản lý blog của họ từ xa.
Đó có thể là việc đăng bài qua email hoặc ứng dụng trên điện thoại thay vì phải đăng nhập vào WordPress.
Nhưng mà nhiều hacker lợi dụng điều này để kiểm soát website của bạn.
Vì vậy nếu không sử dụng các dịch vụ trên thì bạn nên tắt nó đi để bảo mật WordPress.
File .htaccess
Bạn truy cập vào file .htaccess qua cPanel, mở nó lên và thêm đoạn code sau vào:
# Block WordPress xmlrpc.php requests<Files xmlrpc.php>order deny,allowdeny from allallow from 123.123.123.123</Files>
iThemes Security
Bạn vào Security > WordPress Tweaks > Configure Settings
Tìm đến dòng XML-RPC và chọn Disable XML-RPC (recommend)
Chống SQL Injection trong file .htaccess
WordPress sử dụng hệ thống quản lý database mã nguồn mở MySQL.
Phần lớn các plugin WordPress đếu có tương tác với database và dữ liệu thường xuyên được gửi lên database nằm trên hosting của bạn.
Nếu dữ liệu này không được xác thực, hacker có thể “tiêm chích” các câu lệnh vào trong đó và gửi thẳng nó lên database.
Bạn nào hay coi phim kiếm hiệp chắc sẽ dễ tưởng tượng hơn.
Thường thì các thế lực trong cùng phe phái sẽ gửi mật thư cho nhau bằng chim bồ câu.
Bằng cách nào đó nếu phe đối địch phát hiện ra đường bay của con chim bồ câu đó, họ có thể bắn hạ nó và đọc mật thư.
Sau đó họ có thể làm giả mật thư khác, gắn lại vào chim bồ câu rồi thả nó đi.
Để chống SQL Injection để bảo mật WordPress các bạn có thể làm như sau:
Bạn vào file .htaccess qua cPanel, mở nó lên và thêm dòng code sau rồi lưu lại:
## SQL Injection Block ##<IfModule mod_rewrite.c>RewriteEngine OnRewriteBase /RewriteCond %{REQUEST_METHOD} ^(HEAD|TRACE|DELETE|TRACK) [NC]RewriteRule ^(.*)$ – [F,L]RewriteCond %{QUERY_STRING} ../ [NC,OR]RewriteCond %{QUERY_STRING} boot.ini [NC,OR]RewriteCond %{QUERY_STRING} tag= [NC,OR]RewriteCond %{QUERY_STRING} ftp: [NC,OR]RewriteCond %{QUERY_STRING} http: [NC,OR]RewriteCond %{QUERY_STRING} https: [NC,OR]RewriteCond %{QUERY_STRING} (<|%3C).*script.*(>|%3E) [NC,OR]RewriteCond %{QUERY_STRING} mosConfig_[a-zA-Z_]{1,21}(=|%3D) [NC,OR]RewriteCond %{QUERY_STRING} base64_encode.*(.*) [NC,OR]RewriteCond %{QUERY_STRING} ^.*([|]|(|)|<|>|ê|”|;|?|*|=$).* [NC,OR]RewriteCond %{QUERY_STRING} ^.*("|'|<|>|\|{||).* [NC,OR]RewriteCond %{QUERY_STRING} ^.*(%24&x).* [NC,OR]RewriteCond %{QUERY_STRING} ^.*(%0|%A|%B|%C|%D|%E|%F|127.0).* [NC,OR]RewriteCond %{QUERY_STRING} ^.*(globals|encode|localhost|loopback).* [NC,OR]RewriteCond %{QUERY_STRING} ^.*(request|select|insert|union|declare).* [NC]RewriteCond %{HTTP_COOKIE} !^.*wordpress_logged_in_.*$RewriteRule ^(.*)$ – [F,L]</IfModule>
Xóa theme và plugin không dùng
Sau khi cài đặt xong WordPress bạn sẽ có một số theme mặc định như 2017, 2018, 2019 gì đó và các theme bạn cài thêm.
Khi đã cài đặt được theme như ý bạn hãy xóa các theme không sử dụng.
Một phần vì làm nhẹ website của bạn, phần khác là bảo mật WordPress.
Để xóa theme không sử dụng, bạn hãy chọn theme đó và nhấn Delete.
Hoặc bạn có thể vào cPanel và xóa theme không dùng đến trong thư mục wp-content/themes.
Tạm kết
Ngoài ra để bảo mật WordPress tốt hơn thì bạn nên cân nhắc một số thứ sau:
Còn một số vấn đề nhỏ nữa mình muốn nói nhưng mà bài viết dài quá rồi.
Như vậy là mình vừa đi qua tất tần tật các thủ thuật bảo mật WordPress toàn tập từ A – Z.
Mong là một vài trong số đó sẽ giúp ích cho bạn.
Chúc bạn thành công!