Git Product home page Git Product logo

wpscan_out_parse's Introduction

WPScan Output Parser

wpscan_out_parse is a Python parser for WPScan output files (JSON and CLI).
It analyze vulnerabilities, miscellaneous alerts and warnings and other findings.

Features

  • Support WPScan JSON and CLI output files
  • Display results to stdout in CLI, JSON or HTML output format
  • Generate a summary table of your wordpress component containing version and vulnerabilities
  • Divide the results in "Alerts", "Warnings" and "Informations"
  • Additionnal alerts depending of finding type (SQL dump, etc.)
  • Signal result via exit code
  • Ignore messages based on false positives strings
  • Simple Python library usage
  • Colorized output by default

Design of summary table is largely inspired by wpscan-analyze (Rust code).

Install

python3 -m pip install wpscan-out-parse

How to use

As a CLI tool

Run WPScan

wpscan --url https://mysite.com --output file.json --format json --api-token YOUR_API_TOKEN

Run wpscan_out_parse

python3 -m wpscan_out_parse file.json

And process output and/or exit code.

Exit codes

  • 5 -> ALERT: Your WordPress site is vulnerable
  • 6 -> WARNING: You WordPress site is oudated or potentially vulnerable
  • 4 -> ERROR: WPScan failed
  • 1 -> ERROR: Parser error
  • 0 -> All OK

Exemples

Display results in HTML format

% python3 -m wpscan_out_parse ./test/output_files/potential_vulns.json --format html > html_output.html

WPWatcher Report

As a Python library

See the API reference.

Additionnal alerts strings

Some additionnal warnings and alerts are raised when detecting the following strings in your output file.

Alerts

"SQL Dump found",
"Full Path Disclosure found",
"www.owasp.org/index.php/Full_Path_Disclosure",
"codex.wordpress.org/Resetting_Your_Password#Using_the_Emergency_Password_Reset_Script",
"www.exploit-db.com/ghdb/3981/",
"A backup directory has been found",
"github.com/wpscanteam/wpscan/issues/422",
"ThemeMakers migration file found",
"packetstormsecurity.com/files/131957",
"Search Replace DB script found",
"interconnectit.com/products/search-and-replace-for-wordpress-databases/"

Warnings

"Upload directory has listing enabled",
"Registration is enabled",
"Debug Log found",
"codex.wordpress.org/Debugging_in_WordPress",
"Fantastico list found",
"www.acunetix.com/vulnerabilities/fantastico-fileslist/"

Full help

% python3 -m wpscan_out_parse -h
usage: python3 -m wpscan_out_parse [Options] <File path>

wpscan_out_parse is a Python parser for WPScan output files (JSON and CLI).  
It analyze vulnerabilities, miscellaneous alerts and warnings and other findings.

positional arguments:
  <File path>           WPScan output file to parse.

optional arguments:
  -h, --help            show this help message and exit
  --format <Format>     output format, choices are: "cli", "html", "json"
  --summary             display ony the summary of issues per component.
  --inline              display only one line like: "WPScan result summary:
                        alerts={}, warnings={}, infos={}, error={}".
  --no_warnings         do not display warnings, only summary and alerts.
                        Implies --no_infos.
  --no_infos            do not display informations and findinds.
  --no_summary          do not display the summary of issues.
  --show_all            show all findings details (found by, confidence,
                        confirmed by).
  --false_positive String [String ...]
                        consider all matching messages as infos and add
                        "[False positive]" prefix.
  --no_color            do not colorize output.
  --version             print wpscan_out_parse version and exit.

wpscan_out_parse's People

Contributors

tristanlatr avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

wpscan_out_parse's Issues

Version State gets reported incorrectly

WPScan starting from version 3.7 reports outdated WordPress version as
"status": "outdated" (instead of "status": "insecure" as before):

Screen Shot 2021-04-08 at 7 43 43 PM


As a result, wpscan_out_parse reports Version State as Unknown (not Outdated as expected):
Screen Shot 2021-04-08 at 7 46 18 PM

Status "Ok (false positive)" do not showe up when ignoring potential vulnerabilities

Exemple:

% wpscan_out_parse test/output_files/potential_vulns.json --false "Potential Vulnerability" --sum

        Summary
        -------

Component                                 | Version | Version State                 | Vulnerabilities | Status 
----------------------------------------- | ------- | ----------------------------- | --------------- | -------
WordPress 5.3.4 (2020-06-10)              | 5.3.4   | Latest                        | 0               | Ok     
Main Theme: nirvana-child                 | 1.2.1   | Unknown                       | 0               | Unknown
Plugin: brands-for-woocommerce            | Unknown | N/A (latest is 3.5.1.8)       | 0               | Unknown
Plugin: contact-form-7                    | 5.1.8   | Outdated (latest is 5.2.2)    | 0               | Warning
Plugin: contact-form-7-datepicker         | Unknown | N/A (latest is 2.6.0)         | 1 (potential)   | Warning
Plugin: ec-authorizenet-arb               | Unknown | N/A                           | 0               | Unknown
Plugin: google-analytics-dashboard-for-wp | 6.0.2   | Outdated (latest is 6.2.2)    | 0               | Warning
Plugin: jetpack                           | 8.5     | Outdated (latest is 8.9)      | 0               | Warning
Plugin: responsive-lightbox               | 2.2.2   | Outdated (latest is 2.2.3.1)  | 0               | Warning
Plugin: woocommerce                       | 3.9.2   | Outdated (latest is 4.5.0)    | 2               | Alert  
Plugin: wordpress-seo                     | 14.1    | Outdated (latest is 14.9)     | 0               | Warning
Plugin: youtube-embed-plus                | 13.3.1  | Outdated (latest is 13.4.1.1) | 0               | Warning

WPScan result summary: alerts=2, warnings=7, infos=12, error=0

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.