• Trang chủ
  • WordPress
    • Thủ thuật WordPress
    • WordPress Plugins
    • WordPress Themes
  • Hosting và Domain
  • Kiếm tiền
  • Đánh giá
  • Khuyến mãi
  • Thông báo
  • Giới thiệu
  • Liên hệ

WP Căn bản

Kiến thức căn bản cho người dùng WordPress

paradise-child-theme-wordpress-theme-tot-nhat
  • Dịch vụ WordPress Hosting
  • Dịch vụ tối ưu WordPress
  • Dịch vụ quét mã độc WordPress
  • Mua Paradise child theme
Trang chủ » WordPress » Thủ thuật WordPress » 5 Lỗi bảo mật thường gặp trên WordPress và cách khắc phục
hosting-tot-nhat-danh-cho-wordpress

5 Lỗi bảo mật thường gặp trên WordPress và cách khắc phục

Cập nhật: 19/06/2022 Trung Hiếu 26 Bình luận

Mục lục Hiện
  • 1. Những lỗi bảo mật thường gặp trên WordPress
    • 1.1. 1. Blog/ website của bạn hiển thị cho mọi người thấy bạn đang sử dụng mã nguồn WordPress và phiên bản hiện tại của nó
      • 1.1.1. Vấn đề
      • 1.1.2. Giải pháp
    • 1.2. 2. Tất cả mọi người đều biết trang đăng nhập, khu vực quản trị của bạn nằm ở đâu
      • 1.2.1. Vấn đề
      • 1.2.2. Giải pháp
    • 1.3. 3. WordPress có một table prefix mặc định mà tất cả mọi người đều sử dụng (wp_)
      • 1.3.1. Vấn đề
      • 1.3.2. Giải pháp
    • 1.4. 4. Các tập tin có trong theme và plugin có thể được chỉnh sửa thông qua bảng điều khiển WordPress
      • 1.4.1. Vấn đề
      • 1.4.2. Giải pháp
    • 1.5. 5. WordPress có thiết lập firewall rất mở, có thể cho phép bots độc hại tấn công
      • 1.5.1. Vấn đề
      • 1.5.2. Giải pháp

Những lỗi bảo mật thường gặp trên WordPress và cách khắc phục.

5-loi-bao-mat-thuong-gap-tren-wordpress-va-cach-khac-phuc

Bảo mật luôn là một vấn đề được quan tâm sát sao bởi các nhà phát triển WordPress. Tuy nhiên, có một thực tế là chính những thiết lập mặc định của WordPress lại là nguyên nhân khiến blog/ website của bạn dễ bị tấn công. Trong bài viết này, tôi sẽ hướng dẫn cho các bạn cách làm thế nào để khắc phục 5 mối đe dọa bảo mật có mặt trong tất cả các bộ cài mặc định của WordPress. Bạn nên nhanh chóng sửa chữa tất cả 5 lỗi bảo mật này để giảm thiểu nguy cơ bị hack.

Tham khảo thêm:

  • Bảo mật blog WordPress của bạn với 5 bước đơn giản
  • Thủ thuật giúp bảo vệ blog WordPress luôn an toàn

Những lỗi bảo mật thường gặp trên WordPress

1. Blog/ website của bạn hiển thị cho mọi người thấy bạn đang sử dụng mã nguồn WordPress và phiên bản hiện tại của nó

Vấn đề

Theo mặc định, WordPress sẽ hiển thị cho mọi người thấy blog/ website của bạn được xây dựng bằng cách sử dụng mã nguồn WordPress, thậm chí cung cấp luôn cả phiên bản hiện tại.

thong-tin-phien-ban-wordpress

Điều này có thể là một nguy cơ bảo mật. Nhiều hacker có thể chọn blog/ website của bạn làm mục tiêu tấn công vì một lý do đơn giản là nó được xây dựng trên nền tảng WordPress. Nếu ai đó tìm thấy một điểm yếu bảo mật trong bộ cài WordPress, trong theme hay plugin, họ có thể tìm cách truy cập trái phép vào blog/ website của bạn. Trong khi đó, nếu bạn che giấu thành công việc blog/ website của mình được xây dựng trên nền tảng WordPress, khi hacker tìm kiếm các blog/ website WordPress bằng cách sử dụng phần mềm chuyên dụng hay crawlers, họ sẽ bị đánh lừa rằng blog/ website của bạn không phải là một mục tiêu.

Giải pháp

Để khắc phục lỗi bảo mật kể trên, bạn có thể sử dụng plugin Hide My WP, WP Hide & Security Enhancer hoặc Hide My WordPress.

2. Tất cả mọi người đều biết trang đăng nhập, khu vực quản trị của bạn nằm ở đâu

Vấn đề

Nếu bạn vẫn đang phơi bày cho mọi người thấy blog/ website của mình được xây dựng trên nền tảng WordPress (không chủ động che giấu nó bằng cách sử dụng một plugin như Hide My WP), những người có ý định xấu sẽ nhanh chóng tìm ra vị trí trang đăng nhập (thường là /wp-login.php hay /wp-admin/) và tấn công brute force để dò thông tin đăng nhập nhằm chiếm quyền quản trị.

trang-dang-nhap-wordpress

Giải pháp

Để khắc phục nguy cơ này và triệt để làm giảm khả năng bị tấn công brute force, chúng ta cần phải ngăn không cho hacker và các phần mềm độc hại tìm ra trang đăng nhập.

Có hai cách chính để giải quyết vấn đề:

  • Bạn có thể thay đổi vị trí vật lý của trang đăng nhập bằng cách sử dụng plugin Custom Login URL.
  • Một ý tưởng khác là bạn có thể giới hạn việc truy cập vào trang đăng nhập và khu vực Admin dựa theo địa chỉ IP hoặc giới hạn số lần đăng nhập thất bại. Bạn có thể làm điều này với một plugin chuyên dụng như Login LockDown hoặc các plugin bảo mật như Sucuri Security, Wordfence, iThemes Security, All In One WP Security & Firewall.

3. WordPress có một table prefix mặc định mà tất cả mọi người đều sử dụng (wp_)

Vấn đề

Tiền tố bảng (table prefix) là những ký tự đứng trước tên của các bảng trong cơ sở dữ liệu của bạn. Ví dụ với bảng users, nếu sử dụng tiền tố tiêu chuẩn của WordPress, nó sẽ là wp_users. Nếu bạn sử dụng tiền tố bảng mặc định, hacker có thể dễ dàng đạt được quyền truy cập vào blog/ website của bạn bằng cách khai thác các lỗi bảo mật SQL injection. Bởi vì họ biết chính xác nơi để bơm thông tin vào cơ sở dữ liệu của bạn, sau đó truy cập và kiểm soát blog/ website.

Giải pháp

Rất may là bạn có thể dễ dàng loại bỏ mối đe dọa này. Nếu bạn đã cài đặt WordPress sử dụng tiền tố wp_ mặc định, bạn có thể thay đổi nó bằng cách sử dụng các plugin như Sucuri Security hoặc iThemes Security. Tất nhiên, bạn cần phải sao lưu cơ sở dữ liệu trước khi làm để đề phòng các sai sót không đáng có.

4. Các tập tin có trong theme và plugin có thể được chỉnh sửa thông qua bảng điều khiển WordPress

Vấn đề

Nếu hacker truy cập được vào blog/ website của bạn, hậu quả sẽ vô cùng tồi tệ. Chúng có thể chỉnh sửa tập tin của theme và plugin, biến blog/ website của bạn trở thành công cụ để tấn công những trang web khác thông qua các phần mềm độc hại (thường kết thúc với việc blog/ website của bạn bị đưa vào blacklist của Google và bị xóa index khỏi các công cụ tìm kiếm), làm mất uy tín blog/ website của bạn hoặc dễ dàng mở thêm các backdoors.

Giải pháp

Bạn có thể thêm dòng code sau vào file wp-config.php:

define ('DISALLOW_FILE_EDIT', true);

Hoặc sử dụng một plugin bảo mật như Sucuri Security để làm điều đó (mà về cơ bản sẽ giúp bạn chèn dòng code bên trên vào tập tin wp-config.php). Vấn đề còn tồn tại ở đây là có plugin cho phép mọi người tắt bật tính năng này, do đó, một hacker chuyên nghiệp có thể có thể cài đặt plugin và sau đó chỉnh sửa các tập tin mà không cần truy cập vào host.

Nếu bạn muốn chống lại điều này, bạn có thể vô hiệu hóa việc cài đặt và cập nhật tất cả các plugins, themes bằng cách thêm dòng code sau vào tập tin wp-config.php:

define ('DISALLOW_FILE_MODS', true);

Nhưng rõ ràng điều này có nghĩa là bạn sẽ phải thay đổi giá trị của nó thành false mỗi khi muốn cập nhật hoặc cài đặt plugin, theme. Tôi không thực sự khuyên bạn nên lựa chọn phương thức này, bởi vì giữ theme và plugin luôn được cập nhật là một trong những cách tốt nhất để đảm bảo blog/ website của bạn ít bị tổn thương.

5. WordPress có thiết lập firewall rất mở, có thể cho phép bots độc hại tấn công

Vấn đề

Các thiết lập tường lửa (firewall) mặc định của WordPress thực sự khá mở và thoải mái. Điều này có nghĩa là một số phần mềm độc hại cũng như các vị khách không mời mà đến khác sẽ được “bật đèn xanh” để truy cập và tấn công blog/ website của bạn.

Giải pháp

Bạn có thể làm điều này tốt hơn bằng cách sử dụng các quy tắc 6G Blacklist Firewall 2018 cơ bản, thông qua việc sao chép nó vào tập tin htaccess (trong thư mục gốc cài đặt WordPress):

# 6G:[QUERY STRINGS]
<IfModule mod_rewrite.c>
	RewriteEngine On
	RewriteCond %{QUERY_STRING} (eval\() [NC,OR]
	RewriteCond %{QUERY_STRING} (127\.0\.0\.1) [NC,OR]
	RewriteCond %{QUERY_STRING} ([a-z0-9]{2000,}) [NC,OR]
	RewriteCond %{QUERY_STRING} (javascript:)(.*)(;) [NC,OR]
	RewriteCond %{QUERY_STRING} (base64_encode)(.*)(\() [NC,OR]
	RewriteCond %{QUERY_STRING} (GLOBALS|REQUEST)(=|\[|%) [NC,OR]
	RewriteCond %{QUERY_STRING} (<|%3C)(.*)script(.*)(>|%3) [NC,OR]
	RewriteCond %{QUERY_STRING} (\\|\.\.\.|\.\./|~|`|<|>|\|) [NC,OR]
	RewriteCond %{QUERY_STRING} (boot\.ini|etc/passwd|self/environ) [NC,OR]
	RewriteCond %{QUERY_STRING} (thumbs?(_editor|open)?|tim(thumb)?)\.php [NC,OR]
	RewriteCond %{QUERY_STRING} (\'|\")(.*)(drop|insert|md5|select|union) [NC]
	RewriteRule .* - [F]
</IfModule>
# 6G:[REQUEST METHOD]
<IfModule mod_rewrite.c>
	RewriteCond %{REQUEST_METHOD} ^(connect|debug|move|put|trace|track) [NC]
	RewriteRule .* - [F]
</IfModule>
# 6G:[REFERRERS]
<IfModule mod_rewrite.c>
	RewriteCond %{HTTP_REFERER} ([a-z0-9]{2000,}) [NC,OR]
	RewriteCond %{HTTP_REFERER} (semalt.com|todaperfeita) [NC]
	RewriteRule .* - [F]
</IfModule>
# 6G:[REQUEST STRINGS]
<IfModule mod_alias.c>
	RedirectMatch 403 (?i)([a-z0-9]{2000,})
	RedirectMatch 403 (?i)(https?|ftp|php):/
	RedirectMatch 403 (?i)(base64_encode)(.*)(\()
	RedirectMatch 403 (?i)(=\\\'|=\\%27|/\\\'/?)\.
	RedirectMatch 403 (?i)/(\$(\&)?|\*|\"|\.|,|&|&amp;?)/?$
	RedirectMatch 403 (?i)(\{0\}|\(/\(|\.\.\.|\+\+\+|\\\"\\\")
	RedirectMatch 403 (?i)(~|`|<|>|:|;|,|%|\\|\s|\{|\}|\[|\]|\|)
	RedirectMatch 403 (?i)/(=|\$&|_mm|cgi-|etc/passwd|muieblack)
	RedirectMatch 403 (?i)(&pws=0|_vti_|\(null\)|\{\$itemURL\}|echo(.*)kae|etc/passwd|eval\(|self/environ)
	RedirectMatch 403 (?i)\.(aspx?|bash|bak?|cfg|cgi|dll|exe|git|hg|ini|jsp|log|mdb|out|sql|svn|swp|tar|rar|rdf)$
	RedirectMatch 403 (?i)/(^$|(wp-)?config|mobiquo|phpinfo|shell|sqlpatch|thumb|thumb_editor|thumbopen|timthumb|webshell)\.php
</IfModule></p>
<p># 6G:[USER AGENTS]
<IfModule mod_setenvif.c>
	SetEnvIfNoCase User-Agent ([a-z0-9]{2000,}) bad_bot
	SetEnvIfNoCase User-Agent (archive.org|binlar|casper|checkpriv|choppy|clshttp|cmsworld|diavol|dotbot|extract|feedfinder|flicky|g00g1e|harvest|heritrix|httrack|kmccrew|loader|miner|nikto|nutch|planetwork|postrank|purebot|pycurl|python|seekerspider|siclab|skygrid|sqlmap|sucker|turnit|vikspider|winhttp|xxxyy|youda|zmeu|zune) bad_bot</p>
<p>	# Apache < 2.3
	<IfModule !mod_authz_core.c>
		Order Allow,Deny
		Allow from all
		Deny from env=bad_bot
	</IfModule></p>
<p>	# Apache >= 2.3
	<IfModule mod_authz_core.c>
		<RequireAll>
			Require all Granted
			Require not env bad_bot
		</RequireAll>
	</IfModule>
</IfModule></p>
<p># 6G:[BAD IPS]
<Limit GET HEAD OPTIONS POST PUT>
	Order Allow,Deny
	Allow from All
	# uncomment/edit/repeat next line to block IPs
	# Deny from 123.456.789
</Limit>

Lưu ý: ở dòng 72, thay 123.456.789 bằng địa chỉ IP mà bạn muốn block, đồng thời bỏ dấu # ở đầu dòng. Nếu bạn muốn block cùng lúc nhiều IP, hãy sử dụng cấu trúc tương tự (Deny from).

WP Căn bản đã phát hành một ebook mang tên “Bảo mật WordPress toàn tập“, tổng hợp những lời khuyên và thủ thuật hữu ích giúp bạn bảo vệ blog/ website của mình một cách tốt nhất. Nếu bạn có nhu cầu, có thể tham khảo chi tiết tại đây.

Trên đây là 5 lỗi bảo mật cơ bản, thường gặp nhất trên các phiên bản WordPress mặc định. Hy vọng, với các phương pháp khắc phục mà tôi đã giới thiệu, các bạn có thể bảo vệ blog/ website của mình một cách an toàn hơn.

Bạn biết những lỗi bảo mật khác ngoài danh sách kể trên? Đừng quên chia sẻ nó với chúng tôi trong khung bình luận bên dưới.

Nếu bạn thích bài viết này, hãy subscribe blog của tôi để thường xuyên cập nhật những bài viết hay nhất, mới nhất qua email nhé. Cảm ơn rất nhiều. :)

  • Chia sẻ lên Facebook
  • Chia sẻ lên Twitter
  • Chia sẻ lên LinkedIn

Bài viết liên quan

Monarx Security được tích hợp vào dịch vụ WordPress Hosting
Monarx Security được tích hợp vào dịch vụ WordPress Hosting
Plugin chống copy nội dung siêu nhẹ cho WordPress
Plugin chống copy nội dung siêu nhẹ cho WordPress
Chống spam cho plugin Contact Form 7
Chống spam cho plugin Contact Form 7

Chuyên mục: Thủ thuật WordPress Thẻ: Bảo mật WordPress

wpcanban-com-facebook-group

Nói về Trung Hiếu

Một người con của xứ Nghệ, hiện đang sinh sống tại Hà Nội. Tôi là người sáng lập và đứng sau mọi hoạt động của WP Căn bản. Tìm hiểu thêm về tôi tại đây.

Bài viết trước « Hướng dẫn cách ủy quyền trang web trong Google AdSense
Bài viết sau Cải tiến trình soạn thảo WordPress không cần dùng plugin »

Reader Interactions

Bình luận

    Để lại một bình luận Hủy

    Tất cả các bình luận đều sẽ được kiểm duyệt nghiêm ngặt. Mọi bình luận trái quy định sử dụng sẽ bị gỡ bỏ link hoặc xóa bỏ hoàn toàn. Vui lòng đọc kỹ quy định trước khi bình luận. Xin cảm ơn!

  1. Mít Tơ Gà 5 bình luậnviết

    23/01/2021 lúc 09:38

    Các cách này còn áp dụng được thời điểm hiện tại ko admin?

    Bình luận
    • Trung Hiếu Quản lýviết

      23/01/2021 lúc 12:19

      Áp dụng tốt bạn nhé.

      Bình luận
« 1 2

Sidebar chính

NHẬN BÀI VIẾT QUA EMAIL

Hãy đăng ký ngay để là người đầu tiên nhận được thông báo qua email mỗi khi chúng tôi có bài viết mới. Tặng miễn phí ebook "Bảo mật WordPress toàn tập" do WP Căn bản biên soạn!

Theo dõi qua mạng xã hội

Dịch vụ WordPress Hosting

dich-vu-wordpress-hosting-chat-luong-cao

Bạn đang tìm gì?

WordPress căn bản

Bảo mật WordPress

Tăng tốc WordPress

Sửa lỗi WordPress

Thủ thuật Genesis

Thủ thuật SEO

Thủ thuật CloudFlare

Thủ thuật LiteSpeed

Thủ thuật WooCommerce

Sử dụng theme Paradise

Dịch vụ tối ưu WordPress miễn phí

dich-vu-toi-uu-wordpress-mien-phi

Dịch vụ quét mã độc miễn phí

dich-vu-quet-ma-doc-wordpress-mien-phi

Footer

Bài viết mới nhất

  • Monarx Security được tích hợp vào dịch vụ WordPress Hosting 15/06/2025
  • Hiển thị code trong bài viết của WordPress 07/06/2025
  • Plugin SMTP siêu nhẹ dành cho WordPress 26/05/2025
  • Plugin contact form siêu nhẹ cho WordPress 23/05/2025

Bình luận mới nhất

  • Trung Hiếu trong Monarx Security được tích hợp vào dịch vụ WordPress Hosting
  • TITAN VINA trong Monarx Security được tích hợp vào dịch vụ WordPress Hosting
  • Trung Hiếu trong Monarx Security được tích hợp vào dịch vụ WordPress Hosting
  • TITAN VINA trong Monarx Security được tích hợp vào dịch vụ WordPress Hosting

Thông tin hữu ích

  • Giới thiệu bản thân
  • Quy định sử dụng
  • Chính sách bảo mật
  • Bản quyền nội dung

Thống kê WP Căn bản

9 Chuyên mục - 1.005 Bài viết - 35.545 Bình luận

Bản quyền © 2014 - 2025 · WP Căn bản (tiền thân là eBooksvn.com) · Sử dụng Paradise child theme và dịch vụ WordPress Hosting