Trang web wordpress được quản lý cuối cùng

Bảo mật trong WordPress được thực hiện rất nghiêm túc, nhưng cũng như với bất kỳ hệ thống nào khác, có các vấn đề bảo mật tiềm ẩn có thể phát sinh nếu một số biện pháp phòng ngừa bảo mật cơ bản không được thực hiện. Bài viết này sẽ điểm qua một số dạng lỗ hổng phổ biến và những điều bạn có thể làm để giúp bảo mật cài đặt WordPress của mình

Show

    Bài viết này không phải là giải pháp khắc phục nhanh nhất cho những lo ngại về bảo mật của bạn. Nếu bạn có thắc mắc hoặc nghi ngờ cụ thể về bảo mật, bạn nên thảo luận với những người mà bạn tin tưởng có đủ kiến ​​thức về bảo mật máy tính và WordPress

    Về cơ bản, bảo mật không phải là về các hệ thống an toàn tuyệt đối. Một điều như vậy có thể không thực tế, hoặc không thể tìm thấy và/hoặc duy trì. Mặc dù vậy, bảo mật là giảm thiểu rủi ro chứ không phải loại bỏ rủi ro. Đó là về việc sử dụng tất cả các biện pháp kiểm soát phù hợp có sẵn cho bạn, theo lý do, cho phép bạn cải thiện tư thế tổng thể của mình, giảm khả năng biến bạn thành mục tiêu, sau đó bị tấn công

    Máy chủ trang web

    Thông thường, một nơi tốt để bắt đầu khi nói đến bảo mật trang web là môi trường lưu trữ của bạn. Ngày nay, có một số tùy chọn dành cho bạn và mặc dù chủ nhà cung cấp bảo mật ở một mức độ nhất định, nhưng điều quan trọng là bạn phải hiểu trách nhiệm của họ kết thúc ở đâu và trách nhiệm của bạn bắt đầu ở đâu. Đây là một bài viết hay giải thích động lực phức tạp giữa máy chủ web và bảo mật trang web của bạn. Máy chủ bảo mật bảo vệ quyền riêng tư, tính toàn vẹn và tính khả dụng của tài nguyên dưới sự kiểm soát của quản trị viên máy chủ

    Phẩm chất của một máy chủ web đáng tin cậy có thể bao gồm

    • Sẵn sàng thảo luận về các mối lo ngại về bảo mật của bạn cũng như các tính năng và quy trình bảo mật mà họ cung cấp với dịch vụ lưu trữ của họ
    • Cung cấp các phiên bản ổn định mới nhất của tất cả phần mềm máy chủ
    • Cung cấp các phương pháp đáng tin cậy để sao lưu và phục hồi

    Quyết định bạn cần bảo mật nào trên máy chủ của mình bằng cách xác định phần mềm và dữ liệu cần được bảo mật. Phần còn lại của hướng dẫn này sẽ giúp bạn với điều này

    Ứng dụng trang web

    Thật dễ dàng để xem xét các máy chủ web và chuyển giao trách nhiệm bảo mật cho họ, nhưng chủ sở hữu trang web cũng chịu trách nhiệm bảo mật rất nhiều. Máy chủ lưu trữ web thường chịu trách nhiệm về cơ sở hạ tầng mà trang web của bạn nằm trên đó, họ không chịu trách nhiệm về ứng dụng bạn chọn cài đặt

    Để hiểu vị trí và lý do tại sao điều này lại quan trọng, bạn phải hiểu cách các trang web bị tấn công, Hiếm khi nó được quy cho cơ sở hạ tầng và thường được quy cho chính ứng dụng (i. e. , môi trường mà bạn chịu trách nhiệm)

    Hãy ghi nhớ một số ý tưởng chung trong khi xem xét bảo mật cho từng khía cạnh của hệ thống của bạn

    giới hạn quyền truy cập

    Đưa ra các lựa chọn thông minh giúp giảm các điểm vào có thể có cho một người độc hại

    ngăn chặn

    Hệ thống của bạn phải được định cấu hình để giảm thiểu thiệt hại có thể xảy ra trong trường hợp hệ thống bị xâm phạm

    Chuẩn bị và kiến ​​thức

    Giữ các bản sao lưu và biết trạng thái cài đặt WordPress của bạn theo định kỳ. Có kế hoạch sao lưu và khôi phục cài đặt của bạn trong trường hợp thảm họa có thể giúp bạn trực tuyến trở lại nhanh hơn trong trường hợp xảy ra sự cố

    Nguồn đáng tin cậy

    Không nhận plugin/chủ đề từ các nguồn không đáng tin cậy. Hạn chế bản thân với WordPress. org hoặc các công ty nổi tiếng. Cố gắng lấy plugin/chủ đề từ bên ngoài có thể dẫn đến sự cố

    Đảm bảo máy tính bạn sử dụng không có phần mềm gián điệp, phần mềm độc hại và nhiễm vi-rút. Không có mức độ bảo mật nào trong WordPress hoặc trên máy chủ web của bạn sẽ tạo ra sự khác biệt nhỏ nhất nếu có keylogger trên máy tính của bạn

    Luôn cập nhật hệ điều hành và phần mềm trên đó, đặc biệt là trình duyệt web của bạn để bảo vệ bạn khỏi các lỗ hổng bảo mật. Nếu bạn đang duyệt các trang web không đáng tin cậy, chúng tôi cũng khuyên bạn nên sử dụng các công cụ như no-script (hoặc tắt javascript/flash/java) trong trình duyệt của mình

    Giống như nhiều gói phần mềm hiện đại, WordPress được cập nhật thường xuyên để giải quyết các vấn đề bảo mật mới có thể phát sinh. Cải thiện bảo mật phần mềm luôn là mối quan tâm thường xuyên và để đạt được điều đó, bạn phải luôn cập nhật phiên bản WordPress mới nhất. Các phiên bản cũ hơn của WordPress không được cập nhật bảo mật

    Bài chi tiết. Cập nhật WordPress

    Phiên bản mới nhất của WordPress luôn có sẵn từ trang web chính của WordPress tại https. //wordpress. tổ chức. Các bản phát hành chính thức không có sẵn từ các trang web khác — không bao giờ tải xuống hoặc cài đặt WordPress từ bất kỳ trang web nào ngoài https. //wordpress. tổ chức

    Kể từ phiên bản 3. 7, WordPress có tính năng cập nhật tự động. Sử dụng chức năng này để giảm bớt quá trình cập nhật. Bạn cũng có thể sử dụng Bảng điều khiển WordPress để được thông báo về các bản cập nhật. Đọc mục trong Bảng điều khiển hoặc Blog nhà phát triển WordPress để xác định những bước bạn phải thực hiện để cập nhật và duy trì bảo mật

    Nếu một lỗ hổng được phát hiện trong WordPress và một phiên bản mới được phát hành để giải quyết vấn đề, thì thông tin cần thiết để khai thác lỗ hổng gần như chắc chắn thuộc phạm vi công cộng. Điều này làm cho các phiên bản cũ dễ bị tấn công hơn và là một trong những lý do chính khiến bạn phải luôn cập nhật WordPress

    Nếu bạn là quản trị viên phụ trách nhiều cài đặt WordPress, hãy cân nhắc sử dụng Subversion để quản lý dễ dàng hơn

    Nếu bạn nghĩ rằng bạn đã tìm thấy một lỗ hổng bảo mật trong WordPress, bạn có thể trợ giúp bằng cách báo cáo sự cố. Xem Câu hỏi thường gặp về bảo mật để biết thông tin về cách báo cáo sự cố bảo mật

    Nếu bạn nghĩ rằng bạn đã tìm thấy một lỗi, báo cáo nó. Xem Gửi lỗi để biết cách thực hiện việc này. Bạn có thể đã phát hiện ra một lỗ hổng hoặc một lỗi có thể dẫn đến một

    Máy chủ web chạy WordPress và phần mềm trên đó có thể có lỗ hổng. Do đó, hãy đảm bảo rằng bạn đang chạy các phiên bản an toàn, ổn định của máy chủ web và phần mềm trên đó hoặc đảm bảo rằng bạn đang sử dụng một máy chủ đáng tin cậy đảm nhận những việc này cho bạn

    Nếu bạn đang sử dụng máy chủ dùng chung (máy chủ lưu trữ các trang web khác ngoài máy chủ của bạn) và một trang web trên cùng một máy chủ bị xâm phạm, thì trang web của bạn cũng có thể bị xâm phạm ngay cả khi bạn làm theo mọi thứ trong hướng dẫn này. Hãy chắc chắn hỏi bạn những biện pháp phòng ngừa an ninh mà họ thực hiện

    Mạng ở cả hai đầu — phía máy chủ WordPress và phía mạng máy khách — phải được tin cậy. Điều đó có nghĩa là cập nhật các quy tắc tường lửa trên bộ định tuyến gia đình của bạn và cẩn thận về những mạng bạn làm việc. Một quán cà phê Internet nơi bạn đang gửi mật khẩu qua một kết nối không được mã hóa, không dây hoặc cách khác, không phải là một mạng đáng tin cậy

    Máy chủ lưu trữ web của bạn phải đảm bảo rằng mạng của họ không bị kẻ tấn công xâm phạm và bạn cũng nên làm như vậy. Lỗ hổng mạng có thể cho phép chặn mật khẩu và thông tin nhạy cảm khác

    Nhiều lỗ hổng tiềm ẩn có thể tránh được với thói quen bảo mật tốt. Một mật khẩu mạnh là một khía cạnh quan trọng của điều này

    Mục tiêu với mật khẩu của bạn là làm cho người khác khó đoán và khó thành công cho một cuộc tấn công vũ phu. Nhiều trình tạo mật khẩu tự động có sẵn có thể được sử dụng để tạo mật khẩu an toàn

    WordPress cũng có tính năng đo độ mạnh mật khẩu được hiển thị khi thay đổi mật khẩu của bạn trong WordPress. Sử dụng điều này khi thay đổi mật khẩu của bạn để đảm bảo độ mạnh của nó là đủ

    Những điều cần tránh khi chọn mật khẩu

    • Bất kỳ hoán vị nào của tên thật, tên người dùng, tên công ty hoặc tên trang web của bạn
    • Một từ trong từ điển, trong bất kỳ ngôn ngữ nào
    • Mật khẩu ngắn
    • Bất kỳ mật khẩu nào chỉ có số hoặc chỉ có chữ cái (kết hợp cả hai là tốt nhất)

    Một mật khẩu mạnh là cần thiết không chỉ để bảo vệ nội dung blog của bạn. Tin tặc có quyền truy cập vào tài khoản quản trị viên của bạn có thể cài đặt các tập lệnh độc hại có khả năng xâm phạm toàn bộ máy chủ của bạn

    Ngoài việc sử dụng mật khẩu mạnh, bạn nên bật xác thực hai bước như một biện pháp bảo mật bổ sung

    Khi kết nối với máy chủ của bạn, bạn nên sử dụng mã hóa SFTP nếu máy chủ lưu trữ web của bạn cung cấp mã hóa đó. Nếu bạn không chắc máy chủ web của mình có cung cấp SFTP hay không, chỉ cần hỏi họ

    Sử dụng SFTP cũng giống như FTP, ngoại trừ mật khẩu và dữ liệu khác của bạn được mã hóa khi truyền giữa máy tính và trang web của bạn. Điều này có nghĩa là mật khẩu của bạn không bao giờ được gửi rõ ràng và không thể bị chặn bởi kẻ tấn công

    Một số tính năng gọn gàng của WordPress đến từ việc cho phép máy chủ web có thể ghi các tệp khác nhau. Tuy nhiên, việc cho phép ghi quyền truy cập vào các tệp của bạn có khả năng gây nguy hiểm, đặc biệt là trong môi trường lưu trữ được chia sẻ

    Tốt nhất là khóa quyền truy cập tệp của bạn càng nhiều càng tốt và nới lỏng những hạn chế đó trong những trường hợp bạn cần cho phép truy cập ghi hoặc tạo các thư mục cụ thể với ít hạn chế hơn cho mục đích thực hiện những việc như tải tệp lên

    Đây là một lược đồ cho phép có thể

    Tất cả các tệp phải được sở hữu bởi tài khoản người dùng của bạn và bạn có thể ghi được. Bất kỳ tệp nào cần quyền truy cập ghi từ WordPress đều phải được máy chủ web ghi, nếu thiết lập lưu trữ của bạn yêu cầu điều đó, điều đó có nghĩa là những tệp đó cần được sở hữu theo nhóm bởi tài khoản người dùng được sử dụng bởi quy trình máy chủ web

    find /path/to/your/wordpress/install/ -type d -exec chmod 755 {} \;
    0

    Thư mục gốc của WordPress. tất cả các tệp chỉ có thể ghi được bằng tài khoản người dùng của bạn, ngoại trừ

    find /path/to/your/wordpress/install/ -type d -exec chmod 755 {} \;
    1 nếu bạn muốn WordPress tự động tạo quy tắc ghi lại cho bạn

    find /path/to/your/wordpress/install/ -type d -exec chmod 755 {} \;
    2

    Khu vực quản trị WordPress. tất cả các tệp chỉ có thể ghi được bằng tài khoản người dùng của bạn

    find /path/to/your/wordpress/install/ -type d -exec chmod 755 {} \;
    3

    Phần lớn logic ứng dụng WordPress. tất cả các tệp chỉ có thể ghi được bằng tài khoản người dùng của bạn

    find /path/to/your/wordpress/install/ -type d -exec chmod 755 {} \;
    4

    Nội dung do người dùng cung cấp. dự định có thể ghi được bằng tài khoản người dùng của bạn và quy trình máy chủ web

    Trong vòng

    find /path/to/your/wordpress/install/ -type d -exec chmod 755 {} \;
    4, bạn sẽ tìm thấy

    find /path/to/your/wordpress/install/ -type f -exec chmod 644 {} \;
    1

    tập tin chủ đề. Nếu bạn muốn sử dụng trình chỉnh sửa chủ đề tích hợp, tất cả các tệp cần phải được ghi bởi quy trình máy chủ web. Nếu bạn không muốn sử dụng trình chỉnh sửa chủ đề tích hợp, tất cả các tệp chỉ có thể ghi được bằng tài khoản người dùng của bạn

    find /path/to/your/wordpress/install/ -type f -exec chmod 644 {} \;
    2

    tập tin plugin. tất cả các tệp chỉ có thể ghi được bằng tài khoản người dùng của bạn

    Các thư mục khác có thể có với

    find /path/to/your/wordpress/install/ -type d -exec chmod 755 {} \;
    4 phải được ghi lại bởi bất kỳ plugin hoặc chủ đề nào yêu cầu chúng. Quyền có thể khác nhau

    Nếu bạn có quyền truy cập shell vào máy chủ của mình, bạn có thể thay đổi quyền của tệp theo cách đệ quy bằng lệnh sau

    Đối với thư mục

    find /path/to/your/wordpress/install/ -type d -exec chmod 755 {} \;

    Đối với tập tin

    find /path/to/your/wordpress/install/ -type f -exec chmod 644 {} \;

    Khi bạn yêu cầu WordPress thực hiện cập nhật tự động, tất cả các thao tác với tệp được thực hiện với tư cách là người dùng sở hữu tệp chứ không phải với tư cách là người dùng của máy chủ web. Tất cả các tệp được đặt thành 0644 và tất cả các thư mục được đặt thành 0755 và chỉ người dùng mới có thể ghi và những người khác có thể đọc được, kể cả máy chủ web

    Nếu bạn chạy nhiều blog trên cùng một máy chủ, bạn nên xem xét việc giữ chúng trong các cơ sở dữ liệu riêng biệt, mỗi cơ sở dữ liệu được quản lý bởi một người dùng khác nhau. Điều này được thực hiện tốt nhất khi thực hiện cài đặt WordPress ban đầu. Đây là một chiến lược ngăn chặn. nếu kẻ xâm nhập bẻ khóa thành công một bản cài đặt WordPress, điều này khiến việc thay đổi các blog khác của bạn trở nên khó khăn hơn nhiều

    Nếu bạn tự quản lý MySQL, hãy đảm bảo rằng bạn hiểu cấu hình MySQL của mình và các tính năng không cần thiết (chẳng hạn như chấp nhận kết nối TCP từ xa) đã bị tắt. Xem Thiết kế cơ sở dữ liệu MySQL an toàn để có phần giới thiệu thú vị

    Đối với các hoạt động thông thường của WordPress, chẳng hạn như đăng bài đăng trên blog, tải lên tệp phương tiện, đăng nhận xét, tạo người dùng WordPress mới và cài đặt plugin WordPress, người dùng cơ sở dữ liệu MySQL chỉ cần đặc quyền đọc và ghi dữ liệu vào cơ sở dữ liệu MySQL;

    Do đó, bất kỳ cấu trúc cơ sở dữ liệu và đặc quyền quản trị nào khác, chẳng hạn như DROP, ALTER và GRANT đều có thể bị thu hồi. Bằng cách thu hồi các đặc quyền đó, bạn cũng đang cải thiện các chính sách ngăn chặn

    Ghi chú. Một số plugin, chủ đề và các bản cập nhật lớn của WordPress có thể yêu cầu thực hiện thay đổi cấu trúc cơ sở dữ liệu, chẳng hạn như thêm bảng mới hoặc thay đổi lược đồ. Trong trường hợp như vậy, trước khi cài đặt plugin hoặc cập nhật phần mềm, bạn sẽ cần tạm thời cho phép người dùng cơ sở dữ liệu các đặc quyền cần thiết

    CẢNH BÁO. Cố gắng cập nhật mà không có các đặc quyền này có thể gây ra sự cố khi xảy ra thay đổi lược đồ cơ sở dữ liệu. Do đó, KHÔNG nên thu hồi các đặc quyền này. Nếu bạn cảm thấy cần phải làm điều này vì lý do bảo mật, thì trước tiên hãy đảm bảo rằng bạn có sẵn một kế hoạch sao lưu vững chắc, với các bản sao lưu toàn bộ cơ sở dữ liệu thông thường mà bạn đã kiểm tra là hợp lệ và có thể dễ dàng khôi phục. Việc nâng cấp cơ sở dữ liệu không thành công thường có thể được giải quyết bằng cách khôi phục cơ sở dữ liệu về phiên bản cũ, cấp quyền phù hợp và sau đó để WordPress thử cập nhật lại cơ sở dữ liệu. Khôi phục cơ sở dữ liệu sẽ đưa nó trở lại phiên bản cũ đó và màn hình quản trị WordPress sau đó sẽ phát hiện phiên bản cũ và cho phép bạn chạy các lệnh SQL cần thiết trên đó. Hầu hết các bản nâng cấp WordPress không thay đổi lược đồ, nhưng một số thì có. Chỉ nâng cấp điểm chính (3. 7 đến 3. 8 chẳng hạn) sẽ thay đổi lược đồ. Nâng cấp nhỏ (3. 8 đến 3. 8. 1) nói chung sẽ không. Tuy nhiên, hãy sao lưu thường xuyên

    Việc thêm mật khẩu bảo vệ phía máy chủ (chẳng hạn như BasicAuth) vào

    find /path/to/your/wordpress/install/ -type d -exec chmod 755 {} \;
    2 sẽ thêm lớp bảo vệ thứ hai xung quanh khu vực quản trị blog, màn hình đăng nhập và các tệp của bạn. Điều này buộc kẻ tấn công hoặc không tấn công lớp bảo vệ thứ hai này thay vì các tệp quản trị thực của bạn. Nhiều cuộc tấn công WordPress được thực hiện tự động bởi bot phần mềm độc hại

    Chỉ cần bảo mật thư mục

    find /path/to/your/wordpress/install/ -type f -exec chmod 644 {} \;
    5 cũng có thể phá vỡ một số chức năng của WordPress, chẳng hạn như trình xử lý AJAX tại
    find /path/to/your/wordpress/install/ -type f -exec chmod 644 {} \;
    6. Xem phần để biết thêm tài liệu về cách đặt mật khẩu bảo vệ thư mục
    find /path/to/your/wordpress/install/ -type f -exec chmod 644 {} \;
    5 của bạn đúng cách

    Các cuộc tấn công phổ biến nhất vào blog WordPress thường thuộc hai loại

    1. Gửi các yêu cầu HTTP được tạo đặc biệt đến máy chủ của bạn với tải trọng khai thác cụ thể cho các lỗ hổng cụ thể. Chúng bao gồm các plugin và phần mềm cũ/lỗi thời
    2. Cố gắng giành quyền truy cập vào blog của bạn bằng cách đoán mật khẩu “brute-force”

    Việc triển khai cuối cùng của bảo vệ mật khẩu “lớp thứ hai” này là yêu cầu kết nối được mã hóa HTTPS SSL để quản trị, sao cho tất cả thông tin liên lạc và dữ liệu nhạy cảm được mã hóa. Xem Quản trị qua SSL

    Lớp bảo vệ thứ hai có thể được thêm vào nơi các tập lệnh thường không dành cho bất kỳ người dùng nào truy cập. Một cách để làm điều đó là chặn các tập lệnh đó bằng cách sử dụng mod_rewrite trong. tập tin htaccess. Ghi chú. để đảm bảo mã bên dưới không bị WordPress ghi đè, hãy đặt mã bên ngoài thẻ

    find /path/to/your/wordpress/install/ -type f -exec chmod 644 {} \;
    8 và
    find /path/to/your/wordpress/install/ -type f -exec chmod 644 {} \;
    9 trong. tập tin htaccess. WordPress có thể ghi đè lên bất cứ thứ gì giữa các thẻ này

    # Block the include-only files.
    
    RewriteEngine On
    RewriteBase /
    RewriteRule ^wp-admin/includes/ - [F,L]
    RewriteRule !^wp-includes/ - [S=3]
    RewriteRule ^wp-includes/[^/]+\.php$ - [F,L]
    RewriteRule ^wp-includes/js/tinymce/langs/.+\.php - [F,L]
    RewriteRule ^wp-includes/theme-compat/ - [F,L]
    
    
    
    # BEGIN WordPress

    Lưu ý rằng điều này sẽ không hoạt động tốt trên Multisite, vì

    # Block the include-only files.
    
    RewriteEngine On
    RewriteBase /
    RewriteRule ^wp-admin/includes/ - [F,L]
    RewriteRule !^wp-includes/ - [S=3]
    RewriteRule ^wp-includes/[^/]+\.php$ - [F,L]
    RewriteRule ^wp-includes/js/tinymce/langs/.+\.php - [F,L]
    RewriteRule ^wp-includes/theme-compat/ - [F,L]
    
    
    
    # BEGIN WordPress
    0 sẽ ngăn các tệp ms. php từ việc tạo hình ảnh. Bỏ qua dòng đó sẽ cho phép mã hoạt động, nhưng cung cấp bảo mật kém hơn

    Bạn có thể di chuyển tệp

    # Block the include-only files.
    
    RewriteEngine On
    RewriteBase /
    RewriteRule ^wp-admin/includes/ - [F,L]
    RewriteRule !^wp-includes/ - [S=3]
    RewriteRule ^wp-includes/[^/]+\.php$ - [F,L]
    RewriteRule ^wp-includes/js/tinymce/langs/.+\.php - [F,L]
    RewriteRule ^wp-includes/theme-compat/ - [F,L]
    
    
    
    # BEGIN WordPress
    1 vào thư mục phía trên cài đặt WordPress của mình. Điều này có nghĩa là đối với một trang web được cài đặt trong thư mục gốc của không gian web của bạn, bạn có thể lưu trữ
    # Block the include-only files.
    
    RewriteEngine On
    RewriteBase /
    RewriteRule ^wp-admin/includes/ - [F,L]
    RewriteRule !^wp-includes/ - [S=3]
    RewriteRule ^wp-includes/[^/]+\.php$ - [F,L]
    RewriteRule ^wp-includes/js/tinymce/langs/.+\.php - [F,L]
    RewriteRule ^wp-includes/theme-compat/ - [F,L]
    
    
    
    # BEGIN WordPress
    1 bên ngoài thư mục gốc của web

    Ghi chú. Một số người khẳng định rằng việc di chuyển wp-config. php có lợi ích bảo mật tối thiểu và nếu không được thực hiện cẩn thận, thực sự có thể gây ra các lỗ hổng nghiêm trọng. Những người khác không đồng ý

    Lưu ý rằng

    # Block the include-only files.
    
    RewriteEngine On
    RewriteBase /
    RewriteRule ^wp-admin/includes/ - [F,L]
    RewriteRule !^wp-includes/ - [S=3]
    RewriteRule ^wp-includes/[^/]+\.php$ - [F,L]
    RewriteRule ^wp-includes/js/tinymce/langs/.+\.php - [F,L]
    RewriteRule ^wp-includes/theme-compat/ - [F,L]
    
    
    
    # BEGIN WordPress
    1 có thể được lưu trữ MỘT cấp thư mục phía trên cài đặt WordPress (nơi chứa wp-gộp). Ngoài ra, hãy đảm bảo rằng chỉ bạn (và máy chủ web) mới có thể đọc tệp này (điều này thường có nghĩa là quyền 400 hoặc 440)

    Nếu bạn sử dụng một máy chủ với. htaccess, bạn có thể đặt tệp này vào tệp đó (ở trên cùng) để từ chối quyền truy cập đối với bất kỳ ai lướt tìm nó

    find /path/to/your/wordpress/install/ -type f -exec chmod 644 {} \;
    4

    Bảng điều khiển WordPress theo mặc định cho phép quản trị viên chỉnh sửa các tệp PHP, chẳng hạn như tệp plugin và chủ đề. Đây thường là công cụ đầu tiên mà kẻ tấn công sẽ sử dụng nếu có thể đăng nhập, vì nó cho phép thực thi mã. WordPress có một hằng số để tắt chỉnh sửa từ Bảng điều khiển. Đặt dòng này trong wp-config. php tương đương với việc loại bỏ khả năng 'edit_themes', 'edit_plugins' và 'edit_files' của tất cả người dùng

    find /path/to/your/wordpress/install/ -type f -exec chmod 644 {} \;
    5

    Điều này sẽ không ngăn kẻ tấn công tải các tệp độc hại lên trang web của bạn, nhưng có thể ngăn chặn một số cuộc tấn công

    Trước hết, hãy đảm bảo các plugin của bạn luôn được cập nhật. Ngoài ra, nếu bạn không sử dụng một plugin cụ thể, hãy xóa nó khỏi hệ thống

    Có nhiều plugin và dịch vụ có thể đóng vai trò là tường lửa cho trang web của bạn. Một số trong số họ làm việc bằng cách sửa đổi của bạn. htaccess
    và hạn chế một số quyền truy cập ở cấp độ Apache, trước khi nó được xử lý bởi WordPress. Một ví dụ điển hình là iThemes Security hoặc All in One WP Security. Một số plugin tường lửa hoạt động ở cấp độ WordPress, như WordFence và Shield và cố gắng lọc các cuộc tấn công khi WordPress đang tải, nhưng trước khi nó được xử lý hoàn toàn.

    Bên cạnh các plugin, bạn cũng có thể cài đặt WAF (tường lửa web) tại máy chủ web của mình để lọc nội dung trước khi nó được xử lý bởi WordPress. WAF mã nguồn mở phổ biến nhất là ModSecurity

    Tường lửa trang web cũng có thể được thêm vào làm trung gian giữa lưu lượng truy cập từ internet và máy chủ lưu trữ của bạn. Tất cả các dịch vụ này đều hoạt động như proxy ngược, trong đó chúng chấp nhận các yêu cầu ban đầu và định tuyến lại chúng đến máy chủ của bạn, loại bỏ tất cả các yêu cầu độc hại. Họ thực hiện điều này bằng cách sửa đổi bản ghi DNS của bạn, thông qua bản ghi A hoặc hoán đổi DNS đầy đủ, cho phép tất cả lưu lượng truy cập đi qua mạng mới trước. Điều này khiến tất cả lưu lượng truy cập bị tường lửa lọc trước khi đến trang web của bạn. Một số công ty cung cấp dịch vụ như CloudFlare, Sucuri và Incapsula

    Ngoài ra, các nhà cung cấp dịch vụ bên thứ ba này hoạt động như Mạng phân phối nội dung (CDN) theo mặc định, giúp tối ưu hóa hiệu suất và phạm vi tiếp cận toàn cầu

    Nếu một plugin muốn ghi quyền truy cập vào các tệp và thư mục WordPress của bạn, vui lòng đọc mã để đảm bảo rằng nó hợp pháp hoặc kiểm tra với người mà bạn tin tưởng. Những nơi có thể kiểm tra là Diễn đàn hỗ trợ và Kênh IRC

    Như chúng tôi đã nói, một phần của mục tiêu làm cứng WordPress là chứa thiệt hại nếu có một cuộc tấn công thành công. Các plugin cho phép PHP tùy ý hoặc mã khác thực thi từ các mục nhập trong cơ sở dữ liệu làm tăng hiệu quả khả năng thiệt hại trong trường hợp tấn công thành công

    Một cách để tránh sử dụng plugin như vậy là sử dụng lệnh gọi hàm đó. Một phần bảo mật mà điều này mang lại chỉ hoạt động khi bạn

    Bảo mật thông qua che khuất nói chung là một chiến lược chính không có cơ sở. Tuy nhiên, có những khu vực trong WordPress nơi che giấu thông tin có thể giúp bảo mật

    1. Đổi tên tài khoản quản trị. Khi tạo một tài khoản quản trị, hãy tránh các thuật ngữ dễ đoán như tên người dùng như
      # Block the include-only files.
      
      RewriteEngine On
      RewriteBase /
      RewriteRule ^wp-admin/includes/ - [F,L]
      RewriteRule !^wp-includes/ - [S=3]
      RewriteRule ^wp-includes/[^/]+\.php$ - [F,L]
      RewriteRule ^wp-includes/js/tinymce/langs/.+\.php - [F,L]
      RewriteRule ^wp-includes/theme-compat/ - [F,L]
      
      
      
      # BEGIN WordPress
      4 hoặc
      # Block the include-only files.
      
      RewriteEngine On
      RewriteBase /
      RewriteRule ^wp-admin/includes/ - [F,L]
      RewriteRule !^wp-includes/ - [S=3]
      RewriteRule ^wp-includes/[^/]+\.php$ - [F,L]
      RewriteRule ^wp-includes/js/tinymce/langs/.+\.php - [F,L]
      RewriteRule ^wp-includes/theme-compat/ - [F,L]
      
      
      
      # BEGIN WordPress
      5 vì chúng thường bị tấn công trước. Trên bản cài đặt WordPress hiện có, bạn có thể đổi tên tài khoản hiện có trong ứng dụng khách dòng lệnh MySQL bằng lệnh như
      # Block the include-only files.
      
      RewriteEngine On
      RewriteBase /
      RewriteRule ^wp-admin/includes/ - [F,L]
      RewriteRule !^wp-includes/ - [S=3]
      RewriteRule ^wp-includes/[^/]+\.php$ - [F,L]
      RewriteRule ^wp-includes/js/tinymce/langs/.+\.php - [F,L]
      RewriteRule ^wp-includes/theme-compat/ - [F,L]
      
      
      
      # BEGIN WordPress
      6 hoặc bằng cách sử dụng giao diện người dùng MySQL như phpMyAdmin
    2. Thay đổi table_prefix. Nhiều cuộc tấn công SQL-injection dành riêng cho WordPress đã xuất bản đưa ra giả định rằng table_prefix là
      # Block the include-only files.
      
      RewriteEngine On
      RewriteBase /
      RewriteRule ^wp-admin/includes/ - [F,L]
      RewriteRule !^wp-includes/ - [S=3]
      RewriteRule ^wp-includes/[^/]+\.php$ - [F,L]
      RewriteRule ^wp-includes/js/tinymce/langs/.+\.php - [F,L]
      RewriteRule ^wp-includes/theme-compat/ - [F,L]
      
      
      
      # BEGIN WordPress
      7, mặc định. Thay đổi điều này có thể chặn ít nhất một số cuộc tấn công SQL injection

    Sao lưu dữ liệu của bạn thường xuyên, bao gồm cả cơ sở dữ liệu MySQL của bạn. Xem bài viết chính. Sao lưu cơ sở dữ liệu của bạn

    Tính toàn vẹn của dữ liệu rất quan trọng đối với các bản sao lưu đáng tin cậy. Mã hóa bản sao lưu, giữ một bản ghi băm MD5 độc lập cho từng tệp sao lưu và/hoặc đặt các bản sao lưu trên phương tiện chỉ đọc giúp bạn tin tưởng hơn rằng dữ liệu của mình không bị can thiệp

    Một chiến lược sao lưu hợp lý có thể bao gồm việc giữ một tập hợp các ảnh chụp nhanh được định thời gian thường xuyên của toàn bộ cài đặt WordPress của bạn (bao gồm các tệp lõi WordPress và cơ sở dữ liệu của bạn) ở một vị trí đáng tin cậy. Hãy tưởng tượng một trang web tạo ảnh chụp nhanh hàng tuần. Chiến lược như vậy có nghĩa là nếu một trang web bị xâm phạm vào ngày 1 tháng 5 nhưng sự xâm phạm không được phát hiện cho đến ngày 12 tháng 5, chủ sở hữu trang web sẽ có các bản sao lưu trước khi bị xâm phạm có thể giúp xây dựng lại trang web và thậm chí có thể là các bản sao lưu sau khi bị xâm phạm sẽ hỗ trợ trong việc

    Nhật ký là người bạn tốt nhất của bạn khi hiểu điều gì đang xảy ra với trang web của bạn, đặc biệt nếu bạn đang cố gắng thực hiện pháp y. Trái với niềm tin phổ biến, nhật ký cho phép bạn xem những gì đã được thực hiện và bởi ai và khi nào. Thật không may, nhật ký sẽ không cho bạn biết ai, tên người dùng, đã đăng nhập, nhưng nó sẽ cho phép bạn xác định IP và thời gian và quan trọng hơn là những hành động mà kẻ tấn công có thể đã thực hiện. Bạn sẽ có thể thấy bất kỳ cuộc tấn công nào trong số này thông qua nhật ký – Tập lệnh chéo trang (XSS), Bao gồm tệp từ xa (RFI), Bao gồm tệp cục bộ (LFI) và các lần thử Truyền tải thư mục. Bạn cũng sẽ có thể xem các nỗ lực vũ phu. Có sẵn nhiều ví dụ và hướng dẫn khác nhau để giúp hướng dẫn bạn trong quá trình phân tích cú pháp và phân tích nhật ký thô của bạn

    Nếu bạn cảm thấy thoải mái hơn với nhật ký của mình, bạn sẽ có thể thấy những thứ như, khi nào trình chỉnh sửa chủ đề và plugin đang được sử dụng, khi ai đó cập nhật các tiện ích con của bạn cũng như khi các bài đăng và trang được thêm vào. Tất cả các yếu tố chính khi thực hiện công việc pháp y trên máy chủ web của bạn. Có một số plugin Bảo mật WordPress cũng hỗ trợ bạn làm điều này, chẳng hạn như công cụ Sucuri Auditing hoặc plugin Audit Trail

    Có hai giải pháp nguồn mở chính mà bạn sẽ muốn có trên máy chủ web của mình từ góc độ bảo mật, đây là một cách tiếp cận theo lớp để bảo mật

    OSSEC có thể chạy trên mọi bản phân phối NIX và cũng sẽ chạy trên Windows. Khi được cấu hình đúng, nó rất mạnh. Ý tưởng là tương quan và tổng hợp tất cả các bản ghi. Bạn phải chắc chắn định cấu hình nó để nắm bắt tất cả các access_log và error_log và nếu bạn có nhiều trang web trên tài khoản máy chủ cho điều đó. Bạn cũng sẽ muốn chắc chắn lọc được tiếng ồn. Theo mặc định, bạn sẽ thấy rất nhiều nhiễu và bạn sẽ muốn cấu hình để nó thực sự hiệu quả

    Đôi khi phòng ngừa là không đủ và bạn vẫn có thể bị hack. Đó là lý do tại sao phát hiện/giám sát xâm nhập là rất quan trọng. Nó sẽ cho phép bạn phản ứng nhanh hơn, tìm hiểu điều gì đã xảy ra và khôi phục trang web của bạn

    Nếu bạn đang sử dụng một máy chủ riêng ảo hoặc chuyên dụng, trong đó bạn có quyền truy cập root, bạn có khả năng dễ dàng định cấu hình mọi thứ để có thể xem điều gì đang xảy ra. OSSEC dễ dàng tạo điều kiện thuận lợi cho việc này và đây là một bài viết nhỏ có thể giúp bạn tìm ra OSSEC cho Bảo mật Trang web - Phần I

    Khi một cuộc tấn công xảy ra, nó luôn để lại dấu vết. Trên nhật ký hoặc trên hệ thống tệp (tệp mới, tệp đã sửa đổi, v.v.). Ví dụ: nếu bạn đang sử dụng OSSEC, nó sẽ giám sát các tệp của bạn và thông báo cho bạn khi chúng thay đổi

    Các mục tiêu của việc theo dõi hệ thống tập tin bao gồm

    • Theo dõi các tệp đã thay đổi và thêm
    • Nhật ký thay đổi và bổ sung
    • Khả năng hoàn nguyên các thay đổi chi tiết
    • cảnh báo tự động

    Quản trị viên có thể giám sát hệ thống tệp thông qua các công nghệ chung như

    • Tiện ích hệ thống
    • Kiểm soát sửa đổi
    • Giám sát mức hệ điều hành/hạt nhân

    Các tùy chọn để giám sát hệ thống tập tin bao gồm

    • diff – xây dựng bản sao thử nghiệm rõ ràng của trang web của bạn và so sánh với bản sản xuất
    • Git – quản lý mã nguồn
    • inotify và incron – Dịch vụ giám sát tệp cấp nhân hệ điều hành có thể chạy các lệnh trên các sự kiện của hệ thống tệp
    • Watcher – Thư viện inotify Python
    • OSSEC – Hệ thống phát hiện xâm nhập dựa trên máy chủ nguồn mở thực hiện phân tích nhật ký, kiểm tra tính toàn vẹn của tệp, giám sát chính sách, phát hiện rootkit, cảnh báo theo thời gian thực và phản hồi tích cực

    Khi định cấu hình chiến lược giám sát dựa trên tệp, có nhiều cân nhắc, bao gồm những điều sau

    Chạy tập lệnh/dịch vụ giám sát với quyền root

    Điều này sẽ khiến kẻ tấn công khó vô hiệu hóa hoặc sửa đổi giải pháp giám sát hệ thống tệp của bạn

    Vô hiệu hóa giám sát trong quá trình bảo trì/nâng cấp theo lịch trình

    Điều này sẽ ngăn các thông báo không cần thiết khi bạn đang thực hiện bảo trì thường xuyên trên trang web

    Chỉ giám sát các loại tệp thực thi

    Có thể an toàn hợp lý nếu chỉ giám sát các loại tệp thực thi, chẳng hạn như. tệp php, v.v. Lọc ra các tệp không thể thực thi có thể làm giảm các mục nhật ký và cảnh báo không cần thiết

    Sử dụng quyền hệ thống tập tin nghiêm ngặt

    Đọc về bảo vệ quyền và quyền sở hữu tệp. Nói chung, tránh cho phép thực thi và ghi quyền trong phạm vi có thể

    Nếu kẻ tấn công cố gắng thay đổi giao diện trang web của bạn hoặc thêm phần mềm độc hại, bạn cũng có thể phát hiện những thay đổi này bằng cách sử dụng giải pháp giám sát tính toàn vẹn dựa trên web. Điều này có nhiều dạng ngày nay, hãy sử dụng công cụ tìm kiếm yêu thích của bạn và tìm kiếm Phát hiện và khắc phục phần mềm độc hại trên web và bạn có thể sẽ nhận được một danh sách dài các nhà cung cấp dịch vụ