Skip to main content

PTP parses and ranks the discoveries listed in security tool reports.

Project description

What is PTP?

https://travis-ci.org/owtf/ptp.svg?branch=develop

The primary goal of ptp (Pentester’s Tools Parser) is to enhance OWASP - OWTF project in order to provide an automated ranking for each plugin. This will allow the user to focus attention on the most likely weak areas of a web application or network first, which will be valuable to efficiently use the remaining time in a penetration assessment.

Instead of evaluating every plugins run by OWASP - OWTF and defining the rankings for each of them, thanks to ptp, the user will be able to focus on the ones that have been ranked with the highest risks. The user is then able to confirm or override the automated rankings since we estimate that she/he is the only one that can accurately detect the false positives.

When developing the automated ranking system, ptp’s main goal was joined with a secondary one.

Apart from its main feature which is ranking the results from security tools reports, it also provides an unified way to reuse these reports directly in your python code, without having to deal with complex parsing.

Installation

Using pip

The ptp library is available on PyPI at the following address: https://pypi.python.org/pypi/ptp.

The easiest way to install it is using pip.

$ pip install ptp

Note: If an error occurs during the installation process, check your permissions. It might be required to run pip as root.

From scratch

It is also possible to install the library from its repository. You will then be able to use the latest possible version or even try the develop branch.

The first step is to clone the repository of the project:

$ git clone https://github.com/owtf/ptp.git

Then use the Makefile command:

$ make install

Usage

from __future__ import print_function
from ptp import PTP


if __name__ == '__main__':
    ptp = PTP()
    ptp.parse('path/to/the/report/directory')
    print('Highest severity:', ptp.highest_ranking)

Documentation

The documentation is available online at the following address: https://owtf.github.io/ptp/.

It explains how to use the library and even how to contribute. Plus it contains the technical documentation of the project.

Current support

  • arachni (0.4.x to 1.x) (XML and JSON report)

  • burpsuite (1.x.x) (XML report)

  • dirbuster (1.0-RC1)

  • hoppy (1.x.x)

  • metasploit

  • owasp

  • robots.txt

  • skipfish (2.10b)

  • w3af (1.x.x) (XML report)

  • wapiti (2.x.x) (XML report)

Warning: Since v0.4, PTP relies on the fact that the supported tools are following semantic version (except observed otherwise). In other words, as long as the tool doesn’t update its MAJOR version, PTP will assume that it can parse its report, reducing the maintenance cost on our side.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

PTP-0.4.1.tar.gz (694.6 kB view details)

Uploaded Source

File details

Details for the file PTP-0.4.1.tar.gz.

File metadata

  • Download URL: PTP-0.4.1.tar.gz
  • Upload date:
  • Size: 694.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for PTP-0.4.1.tar.gz
Algorithm Hash digest
SHA256 320a2c84a9741c27c668c4d8b2a88c86022c40d7484de28a612ce29e42e7146d
MD5 76fb40437aaab2f4a0b8e6045de8742e
BLAKE2b-256 8aa286ae43a1998f5c99610b09be1c66c0940387a7588e9345e70248db40909c

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page