草庐IT

【网安神器篇】——WPScan漏洞扫描工具

白昼安全 2024-02-16 原文

作者名:Demo不是emo 

主页面链接:主页传送门
创作初心:舞台再大,你不上台,永远是观众,没人会关心你努不努力,摔的痛不痛,他们只会看你最后站在什么位置,然后羡慕或鄙夷
座右铭:不要让时代的悲哀成为你的悲哀
专研方向:网络安全,数据结构

每日emo:联系人的那一个分组永远等你

 这是网安神器专栏的第一篇博客,本专栏主要是为了和大家分享平时遇见的冷门但实用的网安工具或项目,希望能帮助到同学们,今天给大家带来的是wordpress渗透神器——wpscan

目录

一:Wordpress简介

二:WPScan介绍 

三:安装

四:获取token

1.注册账号

 2.拿到token

 五:使用教程

1.常用选项

2.组合命令

1.模糊扫描

2.指定扫描用户

3.插件漏洞扫描 

4.主题漏洞扫描

5.TimThumbs文件扫描

六:实战技巧

1.添加token

2.暴力破解 

3.初步扫描 

七:拓展


一:Wordpress简介

Wordpress作为三大建站模板之一,在全世界范围内有大量的用户,特别是学校网站非常爱用,这也导致白帽子都会去跟踪 WordPress的安全漏洞,Wordpress自诞生起也出现了很多漏洞。Wordpress还可以使用插件主题。于是Wordpress本身很难挖掘什么安全问题的时候,安全研究者开始研究其插件、主题的漏洞。通过插件,主题的漏洞去渗透Wordpress站点,于是WPScan应运而生,收集 Wordpress的各种漏洞,形成一个Wordpress专用扫描器

二:WPScan介绍 

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

三:安装

下载命令如下:

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

但是WPScan一般来说kali都会默认自带,不过有可能只是预装,并没有下载,可以通过下面方法检验

检验方法:你可以打开终端输入wpscan  --help     

1. 如果回显是没找到wpscan,但是可以下载,那就输入yes                                                         他就会自己开始下载了,下载好了就可以用

 2.如果回显的是使用教程(就是很多命令的用法),那就是                                                         安装好了

 因为kali上很方便,我们就不多讲了,下面这些linux系统也都预装了WPScan

  • BackBox Linux
  • Kali Linux
  • Pentoo
  • SamuraiWTF
  • BlackArch

四:获取token

 注意:现在使用WPScan需要使用官方api-token,这个可以自己注册一个免费的账号。如果不使用api-token的话扫描结果就看不到漏洞信息,也是为了防止大家做坏事,下面就教大家如何获取官方的api-token

1.注册账号

首先我们打开WPScan的官网,点此进入

点击右上角的Get started 即可进入注册页面

 2.拿到token

在该页面填写信息后提交即可完成注册,再登录就可以看到下面这个页面

 这里直接点击立即开始,就可以看到免费的token

这里的token复制了留着待会用就可以了 ,只是免费的token的api有上限,不过我们普通人也够用了(比较殷实并且有想法的同学可以买收费的)

 五:使用教程

1.常用选项

               指令                                                  功能
              --url        要扫描的目标url,允许的协议http、https,默认使用http协议
             --help                                 显示简单的帮助

           --version 

                         显示WPScan的版本信息
                 -o                               输出文件到指定位置
                 -f                               指定文件输出的格式

       --user-agent  

                                 使用指定的ua头
 --random-user-agent                                    使用随机UA头
      --max-threads                       最大线程数,默认最大线程为5
           --proxy                                         加载代理
          --update                                       更新漏洞库

            --force      

                     不检测目标是否在运行wordpress
        --api-token                              使用token用于显示漏洞信息
  --wp-content DIR                                自定义指定检测内容
        --cookie                                               指定cookie
              vp                                       结果中显示有漏洞的插件
              ap                                             结果中显示目标的所有插件
               vt                                        结果中显示存在漏洞的主题
               at                                             结果中显示所有主题
               tt                                列举缩略图相关的文件
     --enumerate/-e                                        枚举  [option](要枚举的目标)
               u                                            枚举用户名
               p                                        枚举插件
               t                                        枚举主题

2.组合命令

:下面的wordpress url你们可以理解为wordpress的根目录,比如127.0.0.1/ad/wp-content,此时这里的url就是127.0.0.1/ad

1.模糊扫描

wpscan --url [wordpress url]

这里称为模糊扫描的原因是它扫出来的漏洞不一定存在,因为该命令扫描是通过wordpress的版本信息来看的,如果你的版本低于某个漏洞版本,他就认为你存在该漏洞,但其实很多人已经打补丁了,所以这个命令探测出来的漏洞不一定存在

 这里爆红的就是他探测的漏洞,可以看到都是基于版本探测的

2.指定扫描用户

wpscan --url https://www.xxxxxxx.com/wordpress --enumerate u

3.插件漏洞扫描 

wordpress需要使用大量的插件,这也给wordpress网站带来了很大的安全隐患,攻击者可以通过攻击插件的漏洞达到攻击网站的效果,命令格式如下:

wpscan --url https://www.xxxxx.com/wordpress --enumerate p

 这里扫描的是插件漏洞,这里的p也可以换成ap,vp,联系上面的常用选项,他的功能就很明了了

4.主题漏洞扫描

wpscan --url https://www.xxxxx.com/wordpress --enumerate t

5.TimThumbs文件扫描

 TimeThumbs也是一种wordpress常用的文件,主要跟缩略图的使用有关,所以WPScan也有对应的扫描格式,格式如下

wpscan --url https://www.xxxxx.com/wordpress --enumerate tt

六:实战技巧

1.添加token

注:渗透测试实战中一般要看到目标的漏洞和漏洞的详情,这时候就需要我前面说道的token_api了,所以一般使用语句时都需要加上下面这个选项

--api-token=从官网获得的token

 加上之后效果如下

 可以看到这里他在报告漏洞的同时还给出了漏洞的详细信息,有时甚至会附带漏洞的payload,所以平时的命令都带了token

2.暴力破解 

WPScan还有一个常用的功能,那就是暴力破解,可以爆破指定用户名密码,格式如下

wpscan --url [wordpress网址] --wordlist [字典文件] --username [要破解的用户] --threads [开启的线程数]

也可以如下这样爆破账密

wpscan --url http://xxxx.com/wordpress -P [密码字典] -U [用户名字典]

举个例子 ,像下面这种就是爆破成功了,获取了两个用户账密

3.初步扫描 

 很多人说,上面讲的命令指定这指定那的,如果刚拿到一个网站怎么办?其实这些命令通常都是拼接起来用,比如下面这个命令

wpscan --url http://dc-2 --enumerate vp,vt,tt,u

这就是把涉及到的站点,主题,插件,文件漏洞都扫描了,很多时候这种命令才是拿到一个wordpress站点的首要选择,接下来再去根据探测出来的信息做深一步操作

七:拓展

有时候一些wordpress站点WPScan扫描根目录也扫不到什么信息,甚至无法扫描,这是因为该站点禁止了wpscan的扫描,当然这也只是部分网站的策略,这时候可以多试试换cookie挂代理换UA头这些操作,有时候会有奇效哦

好了今天的神器分享就到这里了,如果有什么疑问或者想讨论的都可以私信我或者发布评论,看到都会回哦(如果有什么网安方面的小问题也可以来讨论讨论),最后,希望今天的内容能对大家有所帮助,感谢大家的阅读,再见啦!

有关【网安神器篇】——WPScan漏洞扫描工具的更多相关文章

  1. 世界前沿3D开发引擎HOOPS全面讲解——集3D数据读取、3D图形渲染、3D数据发布于一体的全新3D应用开发工具 - 2

    无论您是想搭建桌面端、WEB端或者移动端APP应用,HOOPSPlatform组件都可以为您提供弹性的3D集成架构,同时,由工业领域3D技术专家组成的HOOPS技术团队也能为您提供技术支持服务。如果您的客户期望有一种在多个平台(桌面/WEB/APP,而且某些客户端是“瘦”客户端)快速、方便地将数据接入到3D应用系统的解决方案,并且当访问数据时,在各个平台上的性能和用户体验保持一致,HOOPSPlatform将帮助您完成。利用HOOPSPlatform,您可以开发在任何环境下的3D基础应用架构。HOOPSPlatform可以帮您打造3D创新型产品,HOOPSSDK包含的技术有:快速且准确的CAD

  2. 基于C#实现简易绘图工具【100010177】 - 2

    C#实现简易绘图工具一.引言实验目的:通过制作窗体应用程序(C#画图软件),熟悉基本的窗体设计过程以及控件设计,事件处理等,熟悉使用C#的winform窗体进行绘图的基本步骤,对于面向对象编程有更加深刻的体会.Tutorial任务设计一个具有基本功能的画图软件**·包括简单的新建文件,保存,重新绘图等功能**·实现一些基本图形的绘制,包括铅笔和基本形状等,学习橡皮工具的创建**·设计一个合理舒适的UI界面**注明:你可能需要先了解一些关于winform窗体应用程序绘图的基本知识,以及关于GDI+类和结构的知识二.实验环境Windows系统下的visualstudio2017C#窗体应用程序三.

  3. Tomcat AJP 文件包含漏洞(CVE-2020-1938) - 2

    目录1.漏洞简介2、AJP13协议介绍Tomcat主要有两大功能:3.Tomcat远程文件包含漏洞分析4.漏洞复现 5、漏洞分析6.RCE实现的原理1.漏洞简介2020年2月20日,公开CNVD的漏洞公告中发现ApacheTomcat文件包含漏洞(CVE-2020-1938)。ApacheTomcat是Apache开源组织开发的用于处理HTTP服务的项目。ApacheTomcat服务器中被发现存在文件包含漏洞,攻击者可利用该漏洞读取或包含Tomcat上所有webapp目录下的任意文件。该漏洞是一个单独的文件包含漏洞,依赖于Tomcat的AJP(定向包协议)。AJP自身存在一定缺陷,导致存在可控

  4. postman接口测试工具-基础使用教程 - 2

    1.postman介绍Postman一款非常流行的API调试工具。其实,开发人员用的更多。因为测试人员做接口测试会有更多选择,例如Jmeter、soapUI等。不过,对于开发过程中去调试接口,Postman确实足够的简单方便,而且功能强大。2.下载安装官网地址:https://www.postman.com/下载完成后双击安装吧,安装过程极其简单,无需任何操作3.使用教程这里以百度为例,工具使用简单,填写URL地址即可发送请求,在下方查看响应结果和响应状态码常用方法都有支持请求方法:getpostputdeleteGet、Post、Put与Delete的作用get:请求方法一般是用于数据查询,

  5. ruby-on-rails - 有没有一种工具可以在编码时自动保存对文件的增量更改? - 2

    我最喜欢的Google文档功能之一是它会在我工作时不断自动保存我的文档版本。这意味着即使我在进行关键更改之前忘记在某个点进行保存,也很有可能会自动创建一个保存点。至少,我可以将文档恢复到错误更改之前的状态,并从该点继续工作。对于在MacOS(或UNIX)上运行的Ruby编码器,是否有具有等效功能的工具?例如,一个工具会每隔几分钟自动将Gitcheckin我的本地存储库以获取我正在处理的文件。也许我有点偏执,但这点小保险可以让我在日常工作中安心。 最佳答案 虚拟机有些人可能讨厌我对此的回应,但我在编码时经常使用VIM,它具有自动保存功

  6. ruby - 使用 Ruby 开发工具包将文件上传到 Amazon S3 - 2

    我正在尝试上传文件。一个简单的hello.txt。我正在关注文档,但无法将其上传到我的存储桶。#STARTAWSCLIENTs3=Aws::S3::Resource.newbucket=s3.bucket(BUCKET_NAME)begins3.buckets[BUCKET_NAME].objects[KEY].write(:file=>FILE_NAME)puts"Uploadingfile#{FILE_NAME}tobucket#{BUCKET_NAME}."bucket.objects.eachdo|obj|puts"#{obj.key}=>#{obj.etag}"endresc

  7. ruby - 在 StockChart (highchart) 中以编程方式显示柱形图的工具提示 - 2

    我有一个Highstock图表(带有标记和阴影的线条),并且想以编程方式显示一个highstock工具提示,例如,当我选择某个表上的一行(包含图表数据)我想显示相应的highstock工具提示。这可能吗? 最佳答案 股票图表thissolution不起作用:在thisexample你必须更换这个:chart.tooltip.refresh(chart.series[0].data[i]);为此:chart.tooltip.refresh([chart.series[0].points[i]]);解决方案可用here.

  8. 什么是0day漏洞?如何预防0day攻击? - 2

    什么是0day漏洞?0day漏洞,是指已经被发现,但是还未被公开,同时官方还没有相关补丁的漏洞;通俗的讲,就是除了黑客,没人知道他的存在,其往往具有很大的突发性、破坏性、致命性。0day漏洞之所以称为0day,正是因为其补丁永远晚于攻击。所以攻击者利用0day漏洞攻击的成功率极高,往往可以达到目的并全身而退,而防守方却一无所知,只有在漏洞公布之后,才后知后觉,却为时已晚。“后知后觉、反应迟钝”就是当前安全防护面对0day攻击的真实写照!为了方便大家理解,中科三方为大家梳理当前安全防护模式下,一个漏洞从发现到解决的三个时间节点:T0:此时漏洞即0day漏洞,是已经被发现,还未被公开,官方还没有相

  9. ABB-IRB-1200运动学分析MATLAB RVC工具分析+Simulink-Adams联合仿真 - 2

    一、机器人介绍        此处是基于MATLABRVC工具箱,对ABB-IRB-1200型号的微型机械臂进行正逆向运动学分析,并利Simulink工具实现对机械臂进行具有动力学参数的末端轨迹规划仿真,最后根据机械模型设计Simulink-Adams联合仿真。 图1.ABBIRB 1200尺寸参数示意图ABBIRB 1200提供的两种型号广泛适用于各作业,且两者间零部件通用,两种型号的工作范围分别为700 mm 和 900 mm,大有效负载分别为 7 kg 和5 kg。 IRB 1200 能够在狭小空间内能发挥其工作范围与性能优势,具有全新的设计、小型化的体积、高效的性能、易于集成、便捷的接

  10. Ruby 扫描/获取直到 EOF - 2

    我想扫描未知数量的行,直到扫描完所有行。我如何在ruby中做到这一点?例如:putreturnsbetweenparagraphsforlinebreakadd2spacesatend_italic_or**bold**输入不是来自"file",而是通过STDIN。 最佳答案 在ruby​​中有很多方法可以做到这一点。大多数情况下,您希望一次处理一行,例如,您可以使用whileline=getsend或STDIN.each_linedo|line|end或者通过使用-n开关运行ruby​​,例如,这意味着上述循环之一(在每次迭代中将

随机推荐