Skip to main content

A minimalist REST API wrapper for python's subprocess API.

Project description

Flask-Shell2HTTP

CodeFactor Language grade: Python flask-shell2http on pypi

A minimalist Flask extension that serves as a REST API wrapper for python's subprocess API.

  • Convert any command-line tool into a REST API service.
  • Execute pre-defined shell commands asynchronously and securely via flask's endpoints.
  • Designed for development, prototyping or remote control.

Inspired by the work of awesome folks over at msoap/shell2http.

Use Cases

  • Set a script that runs on a succesful POST request to an endpoint of your choice. See Example code.
  • Map a base command to an endpoint and pass dynamic arguments to it. See Example code.
  • Can also process multiple uploaded files in one command. See Example code.
  • This is useful for internal docker-to-docker communications if you have lots of different binaries. See real-life example.
  • Currently, all commands are run asynchronously, so result is not available directly. An option would be provided for this in future release.

Note: This extension is primarily meant for executing long-running shell commands/scripts (like nmap, code-analysis' tools) in background from an HTTP request and getting the result at a later time.

Documentation / Quick Start

Documentation Status

Read the Quickstart from the documentation to get started!

Why?

This was initially made to integrate various command-line tools easily with IntelOwl.

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

Flask-Shell2HTTP-1.2.0.tar.gz (7.5 kB view details)

Uploaded Source

Built Distribution

Flask_Shell2HTTP-1.2.0-py3-none-any.whl (9.6 kB view details)

Uploaded Python 3

File details

Details for the file Flask-Shell2HTTP-1.2.0.tar.gz.

File metadata

  • Download URL: Flask-Shell2HTTP-1.2.0.tar.gz
  • Upload date:
  • Size: 7.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.48.0 CPython/3.8.3

File hashes

Hashes for Flask-Shell2HTTP-1.2.0.tar.gz
Algorithm Hash digest
SHA256 20671f9ed4b11da327c613f2d9178db0eae01bbcfd13cf28e6d817ad12cd3f73
MD5 57d580c33c5a79fb372b053bf884eb7e
BLAKE2b-256 29f793d2e5f1a10f24d3216fa7d6d478f68f9ecef3dc2a595bacf3cbbc184826

See more details on using hashes here.

File details

Details for the file Flask_Shell2HTTP-1.2.0-py3-none-any.whl.

File metadata

  • Download URL: Flask_Shell2HTTP-1.2.0-py3-none-any.whl
  • Upload date:
  • Size: 9.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.48.0 CPython/3.8.3

File hashes

Hashes for Flask_Shell2HTTP-1.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 3a82a2a9d0378e8f2dcd0c69950dbacce9cc2bfed6815edf53f416c82fbbc391
MD5 c4acb1d85c6ae018b611024b02822d04
BLAKE2b-256 db9169842e88464bb9be2ad95c36360070670c7566575db122389bcb10a7fd54

See more details on using hashes here.

Supported by

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