WordPress站点经常受到的恶意访问和攻击,以及如何应对

     0评论

部署网站不难,日常维护和带来流量才是挑战。小站或刚起步的站点常常从站点日志发现,爬虫和恶意访问的数量要远远超过正常用户的访问,WordPress等流行的、开源的站点更容易成为攻击者的目标,并且这种攻击行为已经高度自动化、低成本,攻击者几乎不用付出什么成本,所以再小的自觉价值不大的站也会成为目标。一旦攻击者得逞,就可能通过机器人发布垃圾广告信息,窃取数据库信息,甚至将你的服务器变成“肉鸡”,用来干坏事或者从事黑产,而这些行为会给服务器用户带来潜在威胁。总之,日常关注服务器日志,根据常见的攻击做一些防护是很有必要的。本文就几个小站点的日志做了一些分析,揭示以WordPress为主的站点经常会受到那些恶意访问,并提出应对建议。

除了上述威胁,这些攻击和恶意探测还有一个很现实的恶果,就是会让你很难从站点日志中直观、快速地了解,那些你真正需要的针对正常用户的访问记录的统计数据。采取措施尽量将这些攻击屏蔽掉,可以得到更有价值的站点日志。

下面是对一些站点日志的简要表格统计和简评,应对措施和建议会放在文末。

暴力攻击和恶意访问

有个词是专门描述此类行为的,Brute Force Attacks,就是暴力的、恶意的访问,可以从codex详细了解。以下表格中的请求数占比是对相应路径的访问占一段时间内总请求数的比例。

这是一个WordPress站点,下表是频繁POST /wp-admin/admin-ajax.php

样本站1高频请求路径分析

这是一个WordPress站点,下表是常见的对 /wp-login.php请求以尝试登陆和对 /xmlrpc.php请求以恶意利用API。

样本站2高频请求路径分析

这是一个WordPress站点,9成的访问都来自攻击,下表是常见的对 /wp-login.php请求以尝试登陆和对 /xmlrpc.php请求以恶意利用API。请求author参数地址以试图获取管理员账户名称,请求/wp-comments-post.php试图发表垃圾评论。

样本站3高频请求路径分析

这是一个WordPress站点,至少7成的访问来自攻击,下表是常见的对 /wp-login.php请求以尝试登陆和对 /xmlrpc.php请求以恶意利用API。另外有一个通过user.php登陆的尝试。

样本站4高频请求路径分析

这是一个WordPress站点,超过6成的访问来自攻击,下表是常见的对 /wp-login.php请求以尝试登陆和对 /xmlrpc.php请求以恶意利用API。请求/wp-comments-post.php试图发垃圾评论。

样本站5高频请求路径分析

这是服务器的IP Vhost日志,攻击者试图通过phpMyAdmin突破数据库。

样本站6高频请求路径分析

这是服务器的IP Vhost,攻击者试图利用ThinkPHP的潜在BUG,以及可能的探针地址。

样本站7高频请求路径分析

这是一个利用有一定用户基数的程序部署的forum站点,攻击者尝试注册用户以发布垃圾信息。

样本站8高频请求路径分析

恶意探测造成的404

以下表格中的请求占比是行内路径的请求数占全部404数量的比例。

这是一个WordPress站点,下表数据显示了猜管理员、探测可能更改了的登陆地址以及窃取可能的脚本数据等行为。

样本站1高频404请求分析

这是一个WordPress站点,下表数据显示了猜管理员、探测可能更改了的登陆地址以及窃取可能的脚本数据等行为。

样本站2高频404请求分析

这是一个WordPress站点,下表数据显示了猜管理员、探测可能更改了的登陆地址、窃取可能的脚本数据、发现利用插件bug等行为。

样本站3高频404请求分析

这是一个WordPress站点,下表数据显示了猜管理员、下载可能存放在站点根目录下特定名称资料包的行为。

样本站4高频404请求分析

这是一个WordPress站点,下表数据显示了猜管理员、探测可能更改了的登陆地址以及利用插件bug等行为。

样本站5高频404请求分析

这是一个服务器的IP Vhost,下表数据显示了一些对常见名称脚本的访问,可能是为了访问探针或者窃取数据库信息。

样本站6高频404请求分析

这是一个服务器的IP Vhost,下表数据显示了一些对常见名称脚本的访问,可能是为了访问探针或者窃取数据库信息。

样本站7高频404请求分析

这是一个Joomla站点,下表数据显示了一些不熟悉的攻击。

样本站8高频404请求分析

总结

WordPress根目录下有十来个文件,而攻击者总青睐wp-login和xmlrpc,也就是权限是根本,API易被攻击。

WordPress根目录下的文件列表:
index.php
wp-activate.php
wp-blog-header.php
wp-comments-post.php
wp-config.php
wp-cron.php
wp-links-opml.php
wp-load.php
wp-login.php
wp-mail.php
wp-settings.php
wp-signup.php
wp-trackback.php
xmlrpc.php

一些防护建议

  • 不要用常见的诸如admin/root/[域名]的用户名和类似123456/abcd/admin/password这样的弱密码,最好用随机字符串做密码;
  • 隐藏wp-login.php和xmlrpc.php,可以用插件更改其路径,xmlrpc如果用不到可以通过插件关掉,这可以屏蔽大部分针对WordPress的攻击;
  • 不要在站点根目录下放简单命名的PHP探针文件或的站点备份压缩包等;
  • 一定要有防垃圾评论的手段,如果评论不多,可以设置后台审核后才可见;
  • 如果不常用,不要安装类似phpMyAdmin这种通过web管理数据库的软件;

-- EOF --

本文最后修改于5年前 (2019-05-12)

差评不太行一般挺好非常不错 (1 votes, average: 5.00 out of 5)
读取中...
发表我的评论
取消评论
表情

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址