Metadata-Version: 2.1
Name: http-tools
Version: 4.0.0
Summary: httptools helps you to capture, repeat and live intercept HTTP requests. It is built on top of [mitmproxy](https://mitmproxy.org/)
Home-page: https://github.com/MobSF/httptools
Author: Ajin Abraham
Author-email: ajin25@gmail.com
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: GNU Lesser General Public License v3 or later (LGPLv3+)
Classifier: Programming Language :: Python :: 3.10
Description-Content-Type: text/markdown
License-File: LICENSE.txt
Requires-Dist: mitmproxy==10.1.5
Requires-Dist: markupsafe>=2.1.3

# httptools

## capture | intercept | repeat
httptools helps you to capture, repeat and live intercept HTTP requests with scripting capabilities and is built on top of [mitmproxy](https://mitmproxy.org/).

Made with ![Love](https://cloud.githubusercontent.com/assets/4301109/16754758/82e3a63c-4813-11e6-9430-6015d98aeaab.png) in India

[![PyPI version](https://badge.fury.io/py/http-tools.svg)](https://badge.fury.io/py/http-tools)
[![License](https://img.shields.io/:license-lgpl3+-blue.svg)](https://www.gnu.org/licenses/lgpl-3.0.en.html)
[![python](https://img.shields.io/badge/python-3.9+-blue.svg)](https://www.python.org/downloads/)
[![http-tools](https://github.com/MobSF/httptools/workflows/http-tools/badge.svg?branch=master)](https://github.com/MobSF/httptools/actions)

### Install

```
pip install http-tools
```

### Develop
```
$ git clone https://github.com/MobSF/httptools.git
$ cd httptools
$ python setup.py develop
```

### Usage

```
$ httptools
usage: httptools [-h] [-m MODE] [-p PORT] [-i IP] [-n NAME] [-u UPSTREAM]

optional arguments:
  -h, --help            show this help message and exit
  -m MODE, --mode MODE  Supported modes
                        1. capture: Capture requests.
                        2. repeat: Repeat captured requests.
                        3. intercept: Intercept and tamper the request.
                        4. server: Start httptools server.
  -p PORT, --port PORT  Proxy Port
  -i IP, --ip IP        Proxy Host
  -n NAME, --name NAME  Project Name
  -u UPSTREAM, --upstream UPSTREAM
                        Upstream Proxy
```

1. Capture - `httptools -m capture`
   * Starts HTTPS proxy at `0.0.0.0:1337` by default.
   * Install Root CA cert from `http://mitm.it/`
2. Repeat - `httptools -m repeat`
   * Replay the captured traffic. Use --upstream to forward it to
     a fuzzer like BurpSuite or OWASP ZAP.
3. Intercept - `httptools -m intercept`
   * To Fiddle with HTTP request and response in live.
   * Use: `http_tools/modules/interceptor.py` (The location will be relative to where httptools is installed)
3. Server Web UI - `httptools -m server`
   * Starts the Web UI at `https://0.0.0.0:1337` by default.
