PHP 正则表达式修复被黑的 Wordpress 网站

标签 php regex wordpress sed

我有一个安装了多个 Wordpress 的客户,但他没有及时更新。结果,他被黑了。在我尝试找出黑客是如何进入并永久解决问题的同时,我正在尝试创建一个脚本来快速、自动地修复它们。

我找到了这个脚本,它可以满足我的要求:http://designpx.com/tutorials/wordpress-security/

它会自动删除 <?php eval(base64_decode("aWY..."); ?>来自每个 php 文件,但它用于执行此操作的正则表达式也删除了 <?php get_header(); ?>如果它跟随恶意代码。

所以,我想要的是改变它,让它只去除恶意代码,而不是第一行php代码。这是执行替换的脚本部分:

find $dir -name "*.php" -type f \  
|xargs sed -i 's#<?php /\*\*/ eval(base64_decode("aWY.*?>##g' 2>&1

我需要更改什么,所以它停在第一个 ?> , 而不是在第二个?

注意:我知道这是一种快速的临时修复方法,但在客户决定要修复哪些站点以及要删除哪些站点之前,它会一直有效。

最佳答案

  1. 备份数据库和主题。
  2. 删除 WordPress。
  3. 删除所有可疑文件。
  4. 安装最新的 WordPress。
  5. 保持新的 WordPress 文件写保护
  6. 打所谓的“管理员”不按时更新。
  7. 利润。

不需要一些疯狂的脚本之类的东西。除非文件被感染,否则 PHP 上的黑客无法工作。删除它解决了问题。

是的,即使您在同一台服务器上安装了多个 wordpress 也可以这样做(为什么?!)。

关于PHP 正则表达式修复被黑的 Wordpress 网站,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13000177/

相关文章:

Python 正则表达式将列表解析为文本以进行响应

mysql - 将 WordPress 站点转移到新的开发环境时 SQL 整理错误

wordpress - 将自定义类添加到 "wp_get_attachment_image( $attachment_id)"wordpress 函数

css - 自定义 Wordpress 主题 - 菜单仅在 Chrome 中的一个元素上有多种字体?

php - 难的SQL语句……四张表?

php - Code Igniter SQL注入(inject)和查询结构(具有相同列名的动态where子句)

mysql - 使用 REGEX 从 MySQL 中的 URL 中提取主机名

javascript - javascript 语言的正则表达式

php - 如何更新开源代码的修改版本?

php - 使用 javascript 或 jquery 更改值..有可能吗?