Tổng Hợp bảo mật cho WordPress


1. Ngăn truy cập trái phép vào trang quản trị wp-admin

a. Đổi địa chỉ của trang quản trị

Mặc định đường dẫn tới trang quản trị của WordPress là wp-admin, điều này sẽ giúp các hacker dễ dàng xác định địa chỉ đăng nhập sau khi họ đã có đầy đủ thông tin về tài khoản quản trị của bạn. Vì vậy trước tiên, bạn cần đổi địa chỉ đăng nhập vào trang quản trị bằng cách sử dụng pluginBetter WP Security để tăng cường bảo mật cho WordPress, trong đó có chức năng đổi đường dẫn mặc định của trang quản trị thành đường dẫn bất kỳ mà bạn muốn. Sau khi cài đặt, vào Security -> Hide và điền tên của đường dẫn mới của trang quản trị, trang đăng nhập và trang đăng ký.

b. Hạn chế số lần đăng nhập

Hiện nay còn rất nhiều hacker tấn công vào trang quản trị theo cách phổ thông đó là…..mò mật khẩu của bạn. Họ sẽ gõ đi gõ lại bằng nhiều mật khẩu khác nhau mà họ cho là có nguy cơ trùng khớp với mật khẩu của bạn. Vì thế để ngăn tình trạng này, chúng ta sẽ thêm chức năng tự động khóa đăng nhập khi đăng nhập thất bại số lần nhất định. Bạn có thể sử dụng plugin Limit Login AttemptsLogin LockdownUser Locker hoặc ngay chính trong plugin Better WP Security cũng có chức năng này.

c. Sử dụng mật khẩu phức tạp và không nên dùng tên đăng nhập là admin

Cách này cũng khá đơn giản nhưng cũng khá là hiệu quả để hạn chế tình trạng bị đánh cắp tài khoản quản trị. Khi cài đặt WordPress, chúng ta không nên sử dụng tên đăng nhập là admin mà hãy chọn cho mình một tên đăng nhập phức tạp nhất, cộng thêm với một mật khẩu phức tạp nhất luôn (bạn có thể sử dụng công cụ Strong Password Generator để tự tạo mật khẩu phức tạp) và sau đó lưu tất cả chúng vào một file văn bản rồi đặt vào nơi an toàn nhất trong máy tính :D.
Mặc định hiển thị tên trong WordPress là chính tên đăng nhập của bạn, bạn có thể vào phần User để chỉnh sửa tên hiển thị thành tên mình thích là được.
Nếu bạn đã lỡ cài đặt một bản WordPress và sử dụng tên đăng nhập là admin thì cũng đừng nên lo lắng, plugin Better WP Security hỗ trợ tính năng đổi tên đăng nhập của bạn, plugin này có vẻ đa năng đấy, và đó là lý do mình chọn nó để sử dụng.

d. tạo lớp bảo vệ bằng mật khẩu cho trang quản trị

Nếu bạn vẫn còn băn khoăn về sự an toàn của trang quản trị thì có thể dùng thêm cách tạo thêm một lớp đăng nhập nữa bằng cách sử dụng chức năng Password Protect Directories có trong cPanelX của các hosting thông dụng hiện nay.
Sau khi nhấp vào, các bạn chọn thư mục wp-admin và tạo tên đăng nhập và mật khẩu cho lớp đăng nhập.
Ấn nút Add/modify authorized user. Tiếp tục, nhìn lên trên và gõ tên folder cần bảo vệ vào, ở đây folder cần bảo vệ là wp-admin, sau đó tích dấu vào ô Password Protect this directory và ấn nút Save để hoàn tất. Và bắt đầu từ đây, mỗi khi chúng ta đăng nhập vào wp-admin đều sẽ trải qua một lớp bảo vệ, và chúng ta phải điền tên đăng nhập và mật khẩu vào vệ vào. Sau đó mới tiến hành đăng nhập vào WordPress theo cách thông thường.
Nếu host bạn không hỗ trợ cPanelX, bạn có thể tạo một cách đơn giản bằng một plugin htaccess password protect dành cho WordPress.

e. Tạo lớp bảo vệ nâng cao bằng IP

Cách này có thể nói khá tốt để bảo vệ trang quản trị của bạn. Với lớp bảo vệ này, bạn chỉ có thể đăng nhập vào trang quản trị khi IP của bạn có trong danh sách IP cho phép đăng nhập, còn lại sẽ bị chặn hết.
Đầu tiên các bạn tải gói SecureIP về, mở file capnhatip.php ra và thay mật khẩu 123456 thành mật khẩu mà bạn thích, sau đó upload 3 file capnhatip.php, listip.txt và security.php vào thư mục wp-admin và CHMOD file listip.txt thành 777 hoặc 775. Mở file index.php trong thư mục wp-admin ra và thêm đoạn include("security.php");  ngay đằng sau <?php
Sau đó tiến hành truy cập lại với đường dẫn http://yourdomain.com/wp-admin, lúc này bạn sẽ thấy thông báo không cho phép truy cập, bởi vì IP của bạn vẫn chưa được thêm vào danh sách cho phép.
Tiến hành thêm IP vào bằng cách gõ đường dẫn http://yourdomain.com/wp-admin/capnhatip.php, sau đó nhập mật khẩu mà bạn đã chỉnh sửa từ file này ở bước đầu vào. Xong, lúc này bạn đã có thể đăng nhập thoải mái vào trang quản trị rồi.
Muốn xóa hết IP trong danh sách cho phép thì cứ mở file listip.txt trong thư mục wp-admin lên và xóa hết nội dung trong đó hoặc xóa IP cần xóa là xong.
Bạn có thể đổi tên file capnhatip.php thành tên mình thích và nhớ là nhập chính xác khi cần dùng nhé.

II. Phân quyền cho file/thư mục trên host bằng lệnh CHMOD

a. Tìm hiểu sơ qua CHMOD

CHMOD chúng ta hiểu ngắn gọn nghĩa là phân quyền xem, xóa và chỉnh sửa các dữ liệu trên hosting của chúng ta của các nhóm người dùng. Nếu chúng ta CHMOD không được kỹ và an toàn thì khả năng các file nằm trên host của bạn có thể dễ dàng được chỉnh sửa bởi những hacker, vì thế để giảm thiểu nguy cơ bị tấn công, chúng ta cần phải CHMOD thật tối ưu cho các file và folder.
CHMOD can thiệp thay đổi những quyền sau:
  • Read (đọc): Viết tắt là “r” và được biểu diễn bằng số 4.
  • Write (chỉnh sửa): Viết tắt là “w” và được biểu diễn bằng số 2.
  • Execute (thực thi): Viết tắt là “x” và được biểu diễn bằng số 1.
CHMOD thay đổi quyền hạn cho các đối tượng sau
  • “Owner” – chủ sở hữu của file/thư mục,
  • “Group” – Nhóm mà Owner là thành viên,
  • “Public / Others/ Everybody”:  những người còn lại.

b. Hướng dẫn CHMOD

Để CHMOD bạn có 2 cách, mở trình upload FTP lên, ấn chuột phải vào thư mục/tập tin cần CHMOD và chọn CHMOD.
Hoặc là bạn vào phần File Manager trong trang quản trị hosting và chọn Change Permission

c. Tối ưu CHMOD cho WordPress

File đầu tiên chúng ta cần bảo vệ đó là wp-config.php vì file này lưu giữ những thông tin đăng nhập vào cơ sở dữ liệu của mình. Nếu như các bạn ít khi chỉnh sửa file này thì hãy CHMOD là 444 cho wp-config, điều này có nghĩa tất cả các nhóm người dùng chỉ có thể đọc chứ không chỉnh sửa hay thực thi được, kể cả chủ sỡ hữu. Và sau khi đưa về 444, chúng ta không thể chỉnh sửa nội dung file này, nếu muốn chỉnh sửa thì hãy đưa nó về 644.
Các file còn lại thì bạn có thể CHMOD là 644 và và 755 cho các folder.
Còn nếu bạn muốn tối ưu hơn nữa, hãy CHMOD folder wp-admin, wp-includes thành 101. Tuy nhiên để CHMOD thành 101 thì bạn không thể CHMOD trên FTP được mà phải vào File Manager để làm việc này. Và sau khi CHMOD thành 101, bạn đăng nhập vào FTP sẽ không thể nhìn thấy các folder đã được CHMOD, điều này đồng nghĩa bạn không thể làm gì được ngoại trừ truy cập bằng trình duyệt. Tiếp đến là CHMOD cho tất cả các file thành 400 (ngoại trừ các file trong thư mục theme), nếu trong một số trường hợp máy chủ không cho phép CHMOD 400 thì bạn có thể đổi thành 404.
Nếu như bạn thấy khó khăn trong việc CHMOD thì plugin File Permissions & Size Check sẽ giúp bạn CHMOD và theo dõi các tập tin, thư mục dễ dàng trong trang quản trị WordPress.
Còn đây là gợi ý CHMOD tối ưu hóa cho WordPress của BulletProof Security

III. Sao lưu (backup) cơ sở dữ liệu thường xuyên

Công việc này không giảm thiểu khả năng bị tấn công trên WordPress mà nó giúp chúng ta giảm mức độ thiệt hại sau những đợt tấn công. Nếu như bạn sao lưu dữ liệu một cách thường xuyên thì sau khi bị tấn công và mất hết cơ sở dữ liệu, chúng ta vẫn có thể hồi sinh web bằng cách phục hồi các dữ liệu đã được sao lưu. Ngoài ra phương pháp này cũng giúp bạn phục hồi lại blog sau khi tiến hành can thiệp chỉnh sửa liên quan đến cơ sở dữ liệu.
Trong WordPress có khá nhiều công cụ backup cơ sở dữ liệu, nhưng bây giờ mình chỉ có thể gợi ý cho các bạn một plugin ổn định và backup tốt nhất đó là WP Backup. Plugin này giúp bạn cài đặt chế độ backup tự động cho tất cả các dữ liệu trên blog, đồng thời có chức năng đồng bộ hóa tài khoản Google Drive vào và tự động gửi những dữ liệu đã được backup lên đó.
Nếu như bạn cần một plugin nhiều chức năng tự động hóa hơn thì hãy tham khảo bài Sao lưu dữ liệu WordPress lên các dịch vụ lưu trữ đám mây.

IV. Cập nhật phiên bản mới nhất của WordPress

Nếu như bạn đang sử dụng các phiên bản cũ của WordPress, hãy tiến hành nâng cấp lên phiên bản mới nhất để tăng sự an toàn cho blog. Những phiên bản mới được đưa ra nhằm sửa một số bug vì thế nếu bạn không nâng cấp lên, các hacker có thể lợi dụng những bug đó để xâm nhập trái phép vào blog. Bên cạnh đó, nếu các plugin đang sử dụng có phiên bản mới thì bạn cũng nên tiến hành nâng cấp lên.

V. Xóa hết các plugin không cần thiết

Sử dụng nhiều plugin cũng là một trong những nguyên nhân bị tấn công, bởi nếu bạn không kiểm tra kỹ thì rất có thể trong plugin bạn đang sử dụng có thể sẽ khai thác thông tin của bạn. Và sử dụng nhiều plugin cũng có thể dẫn đến việc xung đột giữa các plugin với nhau, từ đó sẽ gây ra nhiều vấn đề cho blog của bạn. Hãy tiến hành deactive và xóa hết các plugin không thật sự cần thiết và hãy tham khảo kỹ khi bắt đầu cài một plugin mới.

Một số plugin bảo mật cho WordPress bạn nên dùng (Sử dụng 1 hoặc 2 plugin thôi vì đa phần các chức năng đều giống nhau)

Better WP Security

Plugin này có khá đầy đủ về các chức năng dùng để bảo mật cho WordPress như đổi username admin, đổi ID của admin, hạn chế đăng nhập, sao lưu dữ liệu..v.v.v.Đây có thể nói là plugin nên xài để tăng cường bảo mật cho WordPress. Hiện tại Thạch cũng đang sử dụng cái này và chưa gặp bất cứ vấn đề gì cả :D.
Bulletproof Security
Plugin này nhằm ngăn ngừa và hạn chế tấn công bằng các phương thức XSS, RFI, CRLF, CSRF, Base64, Code Injection và SQL Injection bằng cách tối ưu hóa bảo mật cho các file và thư mục nhạy cảm. Nếu bạn đang lo lắng về khả năng bảo mật của mình trước những đợt tấn công, hãy tiến hành cài đặt plugin này.
Mặc định sau khi cài đặt thì nó sẽ tự động tối ưu hóa cho các bạn, nhưng nếu bạn có các kiến thức về bảo mật thì có thể tùy chỉnh theo cách của mình.
Về đánh giá chung thì plugin này rất tốt nhưng không thích hợp lắm cho những người mới tìm hiểu WordPress và chưa có kiến thức về bảo mật.
Bộ công cụ của 6Scan Security sẽ tự động quét toàn bộ mã nguồn của blog nhằm loại bỏ các đoạn mã độc hại. Hơn thế nữa, plugin này cũng giúp bạn vá lại một số lỗi bảo mật để phòng chống các hacker có thể lợi dụng những lỗi bảo mật đó. Plugin này có thể dùng trong các trường hợp tấn công sau:
  • SQL Injection
  • Cross-Site Scripting (XSS)
  • CSRF
  • Directory traversal
  • Remote file inclusion
  • Several DoS conditions

Tự động truy quét các đoạn mã độc hại mạnh mẽ
Các chức năng bảo mật thêm của 6scan Security

Lời kết

Trong phần này chúng ta đã tìm hiểu qua một số phương thức tăng cường bảo mật cho WordPress để giảm thiểu khả năng bị tấn công từ hacker. Hy vọng nó giúp các bạn có thêm những kiến thức bảo mật tốt hơn cho WordPress. Ở phần kế tiếp, mình sẽ gợi ý cho các bạn một số việc nên làm khi bị tấn công nhằm giảm thiểu khả năng mất dữ liệu dẫn đến việc bắt đầu lại với một website mới. Nhưng ngay từ bây giờ, hãy áp dụng những cách bảo mật ở trên vào blog của bạn, và đừng quên hãy sao lưu cơ sở dữ liệu thường xuyên.
Nếu có vấn đề gì thắc mắc, hãy nêu ra ở phần bình luận, mình sẽ cố gắng giải đáp nếu điều đó nằm trong phạm vi kiến thức của mình. Chúc các bạn thành công.



Nhãn bài viết:
Blog, Updated at: 00:56