Bảo mật wordpress tốt nhất

Bảo mật wordpress tốt nhất

    Website sử dụng nền tảng WordPress giờ đã là một xu thế trên thế giới, cộng đồng người dùng hay các công ty sử dụng nó, đóng góp hay kinh doanh qua các plugin, code, theme,..

WordPress có tính mở, và chắc chắn rồi code của nó luôn có lỗ hổng, điều này được minh chứng qua nhiều phiên bản wordpress phát hành luôn đi kèm với bản vá security fix, và hầu hết các lỗ hổng này chúng tôi thấy đều rất quan trọng.

     Để bảo mật một website cần những bước can thiệp tới hệ điều hành, phần cứng, dịch vụ khá phức tạp, đó còn chưa kể tới quá trình kiểm thử hệ thống. Tuy nhiên bảo vệ wordpress có những cách khá dễ dàng mà chỉ cần qua một số click chuột.

 

Bảo mật wordpress như thế nào?

TABATECH đưa ra các bước sau, được cho là tối thiểu và thực sự cân thiết để bảo mật website wordpress của bạn, bạn có thể thực hiện điều này qua một số plugin bảo mật wordpress có sẵn. TABATECH tin chắc khi các bạn tuân thủ các bước này bạn có thể ngăn chặn được rất nhiều nguy cơ xâm hại từ Internet.

Update các thành phần wordpress lên version mới nhất

Như đã đề cập hãy sử dụng các bản vá lỗi mới nhất từ phía nhà cung cấp, các thành phần trong diện cần update tới phiên bản mới nhất, bao gồm:

WordPress core
Plugins
Theme

Bảo mật link đăng nhập wordpress

Bảo mật bằng cách:

  • Thay đổi vị trí link đăng nhập, link khác so với link mặc định (ví dụ link mặc định là: https://tabatech.vn/wp-login.php, thì thay đổi thành https://tabatech.vn/pro_fessional)
  • Chuyển http sang https mã hoá TL/SSL để mã hoá khi truyền dữ liệu.

Giới hạn số lượng login trong một khoảng thời gian.

Bạn có biết nếu TABATECH dùng phần mềm wpscan để login thì có thể thực hiện 3000 thao tác login /1 phút? điều đó là sự thật, vì vậy hãy giới hạn số lượng login, việc này có thể đơn giản thao tác với nhiều plugin có sẵn hoặc nếu bạn không muốn dùng plugin thì có thể tham khảo cách mà TABATECH đã làm đó là dùng HIDS OSEEC để chặn login theo các event không thành công.

Chuyển login bằng username sang login bằng email

Trong từ điển user-password của hacker sẽ rất khó chứa địa chỉ email của bạn, vì thế bằng cách này bạn sẽ yên tâm account của bạn không nằm trong từ điển user-pass.

Cách chuyển login bằng email mình khuyên nên dùng plugin như itheme security.

Chmod wordpress và bảo mật file config wordpress

Cách chmod file wordpress:

find /path/to/your/wordpress/install/ -type d -exec chmod 755 {} \; 
find /path/to/your/wordpress/install/ -type f -exec chmod 644 {} \; 
chmod 444 wp-config.php 
chmod 444 .htaccess


Ngăn chặn thực thi file php trong thư mục uploads

Đây là thư mục duy nhất có quyền thoải mái ghi và thao tác, vì thế đó là nơi hacker tìm đến đầu tiên để upload shell, mã độc. Vì vậy nếu bạn không có kinh nghiệm kiểm duyệt file khi upload lên thì việc tắt thực thi file php trong thư mục uploads của wordpress rất cần thiết.

Thư mục upload nằm tại wp-content/uploads, hãy tạo file .htaccess với nội dung sau trong thư mục uploads:

php_flag engine off 
# Kill PHP Execution 
<Files *.php> 
deny from all 
</Files>

 

Sử dụng Salts key để mã hoá thông tin người dùng

 
WordPress không sử dụng PHP session để giữ trạng thái login mà nó sử dụng các file cookie dạng plain text, các file cookie được lưu phía trình duyệt người dùng. Các thông tin của người dùng được lưu vào cookie và được hash theo key đơn nhất được khai báo phía server.

Vi vậy để thông tin của bạn được mã hoá, hãy update file salt key trong wp-config.php và tốt nhất nên thường xuyên đổi unique key thông qua một vài plugin security hỗ trợ như plugin là itheme security.

Lấy key cập nhật qua https://api.wordpress.org/secret-key/1.1/salt/

 
Tắt chỉnh sửa file trên giao diện quản lý wordpress

Công việc chỉnh sửa filesystem qua text editor trên wordpress hầu như ít được sử dụng, vì thế hãy tắt nó. Thêm vào cuối file wp-config.php, với nội dung:

define('DISALLOW_FILE_EDIT', true);

 

Tắt hiện thị lỗi

Đây là điều cần thiết vì kẻ tấn công có thể khai thác lỗ hổng qua mã lỗi trả về, ví dụ như dạng tấn công SQL injection. Vì vậy hãy thêm vào cuối file wp-config.php, với nội dung sau để tắt hiện thị lỗi bắn ra.

define('WP_DEBUG', false);

 

Không cho phép search engine khai thác các dữ liệu core

Hãy thêm các dòng sau vào file robots.txt trong thư mục root của source code web.

User-agent: 
 Disallow: /cgi-bin 
 Disallow: /wp-admin 
 Disallow: /wp-includes 
 Disallow: /wp-content/plugins 
 Disallow: /wp-content/themes


Ẩn wordpress version

Cũng giống như các cuộc khai thác của Hacker vào một hệ thống nào đó, hacker luôn muốn khai thác tối đa những thông tin cân thiết như hệ điều hành, version nginx, apache, php,.. để từ lỗ hổng đã biết trên các phiên bản này, chúng lần lượt kiểm thử và khai thác, rồi đánh.

Phiên bản wordpress core cũng không ngoại lệ, khi hacker biết bạn đang sử dụng wrodpress phiên bản thấp, chúng sẽ biết bạn đang rơi vào lỗ hổng nào, từ đây chúng sẽ khai thác và đánh. Đó mãi là nguyên lý rồi, vì vậy giải pháp là hãy ẩn chúng đi!

Có 2 cách để ẩn version wordpress:

– Cách 1: Dùng plugin sau: https://wordpress.org/plugins/remove-version-remve

– Cách 2: Thêm dòng sau vào cuối file funcions.php của theme đang sử dụng

remove_action('wp_head', 'wp_generator');

 
Quan sát sự thay đổi của source code web

Đây là một việc cực kỳ quan trọng nhưng thật tệ là những sysadmin dày dạn kinh nghiệm cũng chưa từng nghĩ tới.
Chúng ta cùng đặt câu hỏi:

  • Monitor những gì?
  • Monitor ở đâu?
  • Công cụ nào monitor được?

Các vụ tấn công thay đổi giao diện web “Deface”, điển hình là thay đổi giao diện website VietnamAirline năm ngoái, thử hỏi nếu bạn quan sát sự thay đổi trong source code web hay trên server thì bạn sẽ biết được hacker làm được những gì một cách chủ động. Hacker có thể up shell hay thay đổi một số nội dung source code,.. từ những dữ kiện này bạn hoàn toàn có thể chủ động vá lỗ hổng ngăn không cho quá trình tấn công thực sự xảy ra.

Hiện một số plugin wordpress làm được điều này, itheme hay WordPress File Monitor

Một phương án khác bảo mật hơn đó là dùng HIDS (Host based Intruction Detect System) như OSSEC (OpenSource IDS Security) https://ossec.github.io/ hay Samhain http://www.la-samhna.de/samhain/

Bước cuối cùng: Backup để đề phòng sau thảm hoạ

Backup, backup.. và backup. Không một hệ thống nào dám đảm bảo 100% không có lỗ hổng, hãy dự trù những điều tệ hại nhất có thể xảy ra.

Các bước bảo mật nâng cao khác

  • Tối giản các plugin cài đặt.
  • Chỉ cho phép quản trị từ một số IP đươc phép.
  • Bảo mật mức hạ tầng, hệ điều hành.
  • Bảo mật mức cơ sở dữ liệu.
  • Rà quét lỗ hổng và pentest hệ thống

Kết luận

Đây là các bước bảo mật rất tốt cho website của bạn, khiến website của bạn luôn “sạch” trên Internet.
Bạn sẽ không phải đau đầu vì những cảnh báo đỏ từ Google Webmaster về việc website của bạn dính malware, hay một ngày nào đó hoang mang khi login vào quản trị wordpress nhiều lần nhưng không thể vào được.

TABATECH.VN sẵn sàng lắng nghe và tư vấn miễn phí cho bạn, đứng ngần ngại liên hệ với chúng tôi!
Thành công của chúng tôi là giải quyết được vấn đề của bạn!

TABATECH.VN

Bình luận trực tiếp

Kane Ta

Kane Ta là thành viên sáng lập TABATECH, anh có 10 năm kinh nghiệm trong lĩnh vực bảo mật thông tin và cân tải đường truyền. Anh ta thường xuyên nghiên cứu công nghệ như những con cú đêm và làm bạn với những tách cafe kèm bánh mỳ xúc xích :D