Lỗi nghiêm trọng: không thể khai báo lại wordpress

Một trong những khách hàng của tôi đã bị hack với cái gọi là hack Cannot redeclare. Nó có vẻ liên quan chặt chẽ đến vụ hack TimThumb bất chính, vì vậy nếu bạn bị một trong hai vụ hack này tấn công, bạn nên kiểm tra cái còn lại. Rõ ràng những vụ hack này ảnh hưởng đến các máy chủ được chia sẻ, vì vậy nếu bạn lưu trữ nhiều trang web WordPress, thì khả năng cao là tất cả chúng đều bị nhiễm

Đang kiểm tra bản hack “Không thể khai báo lại”

Tin tốt là hack rất dễ chẩn đoán. Chỉ cần mở bất kỳ trang nào từ trang web của bạn và tìm thông báo lỗi PHP sau

Fatal error: Cannot redeclare _765258526() 
(previously declared in /path/to/www/wp-content/themes/THEME/footer.php(12) 
: eval()'d code:1) in /path/to/www/index.php(18) 
: eval()'d code on line 1

Các lỗi PHP như thế này thường nằm ở cuối trang web, nhưng có thể xuất hiện ở nơi khác hoặc thậm chí không phải tất cả trong một số trường hợp (i. e. , cấu hình thích hợp). Để chắc chắn, hãy quét nhật ký lỗi PHP của máy chủ để tìm chuỗi lỗi “Không thể khai báo lại”. Nếu bạn tìm thấy bất cứ điều gì phù hợp, đã đến lúc sửa trang web của bạn

Giới thiệu về bản hack "Không thể khai báo lại"

Nếu trang web của bạn bị lỗi "Không thể khai báo lại", thì bạn đang tham gia một bữa tiệc dọn dẹp hoang dã vì nó lây nhiễm mọi tệp index.phpfooter.php cho mọi trang web WordPress trên máy chủ

Ví dụ: khách hàng của tôi đã lưu trữ 11 trang web trên cùng một tài khoản dùng chung, vì vậy hãy nhân số đó với số tệp chỉ mục và tệp chân trang được WordPress sử dụng (tệp lõi và chủ đề) và bạn sẽ có hơn 200 tệp bị tấn công để dọn dẹp. Không cần phải nói các trang web của khách hàng đã được chuyển đến một vị trí an toàn hơn

May mắn thay, việc tìm kiếm các tệp chỉ mục bị tấn công tương đối dễ dàng, chỉ cần tìm kiếm tất cả các tệp trên máy chủ của bạn theo cụm từ sau

eval(gzun

Đây là ảnh chụp màn hình hiển thị kết quả tìm kiếm cho cụm từ này

Lỗi nghiêm trọng: không thể khai báo lại wordpress

Như đã thấy ở đây, các tệp bị tấn công sẽ dễ dàng nhận ra vì chúng

  • bao gồm cụm từ tìm kiếm eval(gzun
  • bao gồm các chuỗi dài vô nghĩa được mã hóa
  • bao gồm các tệp index.phpfooter.php

Nếu tìm kiếm của bạn cho kết quả tương tự nhưng không hoàn toàn như những gì chúng ta đang nói ở đây, thì nó có thể hợp pháp hoặc không. Điều chính mà chúng tôi đang tìm kiếm là những chuỗi dài vô nghĩa được mã hóa. Ngoài ra, hãy nhớ kiểm tra tất cả các trang web mà bạn có thể có trên cùng một máy chủ. Khi bạn đã cách ly các tệp bị nhiễm, đã đến lúc dọn dẹp chúng

Xóa bản hack “Không thể khai báo lại”

Nhìn vào bất kỳ tệp bị tấn công nào, bạn sẽ tìm thấy đoạn mã trông gớm ghiếc này

Những thứ kinh tởm và nếu bạn không nhìn thấy nó lúc đầu, điều đó không có nghĩa là nó không có ở đó. Những kẻ làm ăn bẩn thỉu này đủ thông minh để thụt lề mã để nó xuất hiện ngoài màn hình (thông qua thanh cuộn ngang). Đó là một thủ thuật thông minh, nhưng hầu hết các trình soạn thảo văn bản đều có giới hạn về số lượng ký tự xuất hiện trên mỗi dòng, do đó, chuỗi siêu dài của các từ vô nghĩa được mã hóa sẽ bao bọc và trở nên dễ dàng phát hiện

Lỗi nghiêm trọng: không thể khai báo lại wordpress

Chú ý nó ở dòng cuối cùng. nó giống như vậy cho tất cả các tập tin. Và một lần nữa, nếu bạn không thấy gì thì hãy tìm nó ngoài màn hình. Khi bạn tìm thấy nó, hãy xóa nó. Sau đó lặp lại cho tất cả các tệp chỉ mục và chân trang trên máy chủ của bạn. Khi bạn đã hoàn thành, lỗi "Không thể khai báo lại" sẽ không còn nữa, nhưng bạn nên thực hiện các bước để ngăn chặn các cuộc tấn công trong tương lai

Bảo mật trang web WordPress của bạn

Đối với các trang web công cộng, không có thứ gọi là bảo mật hoàn hảo. Tuy nhiên, có nhiều cách để cải thiện bảo mật, bao gồm cả việc tìm một máy chủ lưu trữ an toàn hơn cho các trang web của bạn. Nói chung, lưu trữ riêng hoặc một số loại lưu trữ riêng ảo tốt hơn lưu trữ chia sẻ (vì nhiều lý do), nhưng nó cũng đắt hơn. Hosting là một trong những thứ mà bạn phải trả tiền cho. vì vậy nếu bạn có phương tiện, nâng cấp lên một máy chủ tốt hơn, an toàn hơn là điều đầu tiên tôi sẽ xem xét

Ngoài việc chuyển đổi máy chủ, có một số biện pháp hiệu quả đã biết mà bạn có thể thực hiện để cải thiện tính bảo mật cho trang web của mình. Có rất nhiều tài nguyên tuyệt vời có sẵn để trợ giúp về bảo mật trang web (cả cho WordPress và nói chung), bao gồm toàn bộ Lynda. loạt video/screencast com tập trung chuyên sâu vào việc tạo các trang web WordPress an toàn. Thậm chí gần đây hơn là bài viết của Tạp chí Smashing về việc bảo mật trang web WordPress của bạn. Và nếu bạn muốn nghe nó trực tiếp từ miệng con ngựa, hãy xem WP Codex thời thượng để biết thông tin về cách làm cứng WordPress

Giúp đỡ nhiều hơn

Hiện tại không có nhiều thông tin về vụ hack “Không thể khai báo lại”, nhưng chủ đề Diễn đàn WP này cung cấp một số manh mối bổ sung. Nếu bạn có bất kỳ thông tin nào liên quan đến vụ hack này hoặc nó liên quan như thế nào đến vụ hack TimThumb, vui lòng để lại nhận xét để chia sẻ thông tin với những người khác trong cộng đồng WP. Thanks

Lỗi nghiêm trọng. Không thể khai báo lại _verifyactivate_widget() (được khai báo trước đó trong /themes/the-writer/functions. php. 40) trong /home/yoursite/public_html/wp-content/themes/the-writer/ocmx/includes/functions. php trên dòng 102

Lỗi này có thể là do một trong những điều sau đây

  1. Chủ đề con thiết lập không chính xác
  2. Cập nhật chủ đề không thành công hoặc cập nhật bị bỏ qua (tệp chưa được đồng bộ hóa)
  3. Tải lên chủ đề chưa hoàn thành
  4. Lỗi cài đặt hoặc cập nhật WordPress

Giải pháp

Tất cả các giải pháp yêu cầu bạn phải có quyền truy cập FTP vào trang web của mình thông qua một chương trình miễn phí như FileZilla hoặc bảng điều khiển lưu trữ của bạn