针对博客网站的扫描神器Wpscan入门使用指南

2022-12-06 14:34:38 浏览数 (3)

简介

WordPress是全球流行的博客网站,全球有上百万人使用它来搭建博客。他使用PHP脚本和Mysql数据库来搭建网站。

Wordpress作为三大建站模板之一,在全世界范围内有大量的用户,这也导致白帽子都会去跟踪 WordPress的安全漏洞,Wordpress自诞生起也出现了很多漏洞`

Wordpress还可以使用插件、主题。于是Wordpress`本身很难挖掘什么安全问题的时候,安全研究者开始研究其插件、主题的漏洞。

通过插件,主题的漏洞去渗透Wordpress站点,于是WPScan应运而生,收集 Wordpress的各种漏洞,形成一个Wordpress专用扫描器

WPScan是一个扫描 WordPress 漏洞的黑盒子扫描器,它可以为所有 Web 开发人员扫描 WordPress 漏洞并在他们开发前找到并解决问题。我们还使用了 Nikto ,它是一款非常棒的Web 服务器评估工具,我们认为这个工具应该成为所有针对 WordPress网站进行的渗透测试的一部分

WPScan是Kali Linux默认自带的一款漏洞扫描工具,它采用Ruby编写,能够扫描WordPress网站中的多种安全漏洞,其中包括WordPress本身的漏洞、插件漏洞和主题漏洞。

最新版本WPScan的数据库中包含超过18000种插件漏洞和2600种主题漏洞,并且支持最新版本的WordPress。

值得注意的是,它不仅能够扫描类似robots.txt这样的敏感文件,而且还能够检测当前已启用的插件和其他功能

该扫描器可以实现获取站点用户名,获取安装的所有插件、主题,以及存在漏洞的插件、主题,并提供漏洞信息。

同时还可以实现对未加防护的Wordpress站点暴力破解用户名密码。

WPScan是一个黑盒漏洞扫描程序。WPScan使用Ruby编程语言编写,可帮助检测安全配置,主题,插件和用户权限等问题。在Kali,Pentoo和Samurai WTF WPScan已预先安装。

此工具是针对Wordpress的专用扫描器。https://wordpress.org/plugins/ose-wp-scan/

github项目地址: https://github.com/wpscanteam/wpscan

帮助文档

代码语言:javascript复制
wpscan -h

Usage: wpscan [options]
        --url URL                                 The URL of the blog to scan
                                                  Allowed Protocols: http, https
                                                  Default Protocol if none provided: http
                                                  This option is mandatory unless update or help or hh or version is/are supplied
    -h, --help                                    Display the simple help and exit
        --hh                                      Display the full help and exit
        --version                                 Display the version and exit
    -v, --verbose                                 Verbose mode
        --[no-]banner                             Whether or not to display the banner
                                                  Default: true
    -o, --output FILE                             Output to FILE
    -f, --format FORMAT                           Output results in the format supplied
                                                  Available choices: json, cli-no-colour, cli-no-color, cli
        --detection-mode MODE                     Default: mixed
                                                  Available choices: mixed, passive, aggressive
        --user-agent, --ua VALUE
        --random-user-agent, --rua                Use a random user-agent for each scan
        --http-auth login:password
    -t, --max-threads VALUE                       The max threads to use
                                                  Default: 5
        --throttle MilliSeconds                   Milliseconds to wait before doing another web request. If used, the max threads will be set to 1.
        --request-timeout SECONDS                 The request timeout in seconds
                                                  Default: 60
        --connect-timeout SECONDS                 The connection timeout in seconds
                                                  Default: 30
        --disable-tls-checks                      Disables SSL/TLS certificate verification
        --proxy protocol://IP:port                Supported protocols depend on the cURL installed
        --proxy-auth login:password
        --cookie-string COOKIE                    Cookie string to use in requests, format: cookie1=value1[; cookie2=value2]
        --cookie-jar FILE-PATH                    File to read and write cookies
                                                  Default: /tmp/wpscan/cookie_jar.txt
        --force                                   Do not check if the target is running WordPress
        --[no-]update                             Whether or not to update the Database
        --wp-content-dir DIR
        --wp-plugins-dir DIR
    -e, --enumerate [OPTS]                        Enumeration Process
                                                  Available Choices:
                                                   vp   Vulnerable plugins
                                                   ap   All plugins
                                                   p    Plugins
                                                   vt   Vulnerable themes
                                                   at   All themes
                                                   t    Themes
                                                   tt   Timthumbs
                                                   cb   Config backups
                                                   dbe  Db exports
                                                   u    User IDs range. e.g: u1-5
                                                        Range separator to use: '-'
                                                        Value if no argument supplied: 1-10
                                                   m    Media IDs range. e.g m1-15
                                                        Note: Permalink setting must be set to "Plain" for those to be detected
                                                        Range separator to use: '-'
                                                        Value if no argument supplied: 1-100
                                                  Separator to use between the values: ','
                                                  Default: All Plugins, Config Backups
                                                  Value if no argument supplied: vp,vt,tt,cb,dbe,u,m
                                                  Incompatible choices (only one of each group/s can be used):
                                                   - vp, ap, p
                                                   - vt, at, t
        --exclude-content-based REGEXP_OR_STRING  Exclude all responses matching the Regexp (case insensitive) during parts of the enumeration.
                                                  Both the headers and body are checked. Regexp delimiters are not required.
        --plugins-detection MODE                  Use the supplied mode to enumerate Plugins, instead of the global (--detection-mode) mode.
                                                  Default: passive
                                                  Available choices: mixed, passive, aggressive
        --plugins-version-detection MODE          Use the supplied mode to check plugins versions instead of the --detection-mode or --plugins-detection modes.
                                                  Default: mixed
                                                  Available choices: mixed, passive, aggressive
    -P, --passwords FILE-PATH                     List of passwords to use during the password attack.
                                                  If no --username/s option supplied, user enumeration will be run.
    -U, --usernames LIST                          List of usernames to use during the password attack.
                                                  Examples: 'a1', 'a1,a2,a3', '/tmp/a.txt'
        --multicall-max-passwords MAX_PWD         Maximum number of passwords to send by request with XMLRPC multicall
                                                  Default: 500
        --password-attack ATTACK                  Force the supplied attack to be used rather than automatically determining one.
                                                  Available choices: wp-login, xmlrpc, xmlrpc-multicall
        --stealthy                                Alias for --random-user-agent --detection-mode passive --plugins-version-detection passive

[!] To see full list of options use --hh.

WPScan更新

代码语言:javascript复制
wpscan -update #为了更新最新发布的漏洞

扫描漏洞

没搭建WordPress环境,简单测试

代码语言:javascript复制
wpscan --url http://www.baidu.com/

枚举WordPress用户

代码语言:javascript复制
wpscan --url http://www.baidu.com/ --enumerate u

查找到的用户进行暴力破解

代码语言:javascript复制
wpscan --url http://www.baidu.com/ --wordlist <字典的路径> --username <用户名> 使用多线程可加--max-threads

枚举插件

代码语言:javascript复制
wpscan --url http://www.baidu.com/ --enumerate p

枚举插件漏洞

代码语言:javascript复制
wpscan --url http://www.baidu.com/ --enumerate vp
代码语言:javascript复制
#### --api-token api

去官方网站申请一个token,枚举出所有插件后,都可以通过这个api去访问官方站点,可以查看插件已知漏洞的信息

#### -e ap --plugins-detection aggressive --api-token api

这两个参数常常一起使用

去官方网站申请一个token,枚举出所有插件后,都可以通过这个api去访问官方站点,可以查看插件已知漏洞的信息

0 人点赞