Giter Club home page Giter Club logo

helicopter's Introduction

Helicopter

Helicopter is a small Python script that is meant to run on a payload server. Once running, it will periodically check VirusTotal for the hashes of your payloads. If the payload was submitted to VirusTotal, Helicopter will send a notification to a webhook URL. Helicopter uses the public VirusTotal search, not the API.

Note: this is still a somewhat beta release and requires some additional testing. If you have any feedback, please open an issue.

Setup

pip install -r requirements.txt
sudo python setup.py install

Usage

sudo helicopter [config]

Config is the path to the JSON config file. If no path is provided, Helicopter will use the path specified in the HELICOPTER_CONFIG environment variable. Barring that, it will fallback to the config located at /etc/helicopter/config.json, which is created during installation (make sure to change the default values).

Config Structure

{
  "webhook":{
    "url":"http://127.0.0.1:8081/webhook",
    "type":"teams",
    "id":"server01"
  },
  "time":{  
    "delay":5,
    "throttle":5
  },
  "directories":[
    {
      "root":"/var/www/html/documents",
      "glob":""
    },
    {
      "root":"/var/www/html/payloads",
      "glob":"*.exe"
    },
    ...
  ],
  "files":[
    "/var/www/html/images/thumbnail.png"
  ] 
}

[ Webhook ]

  • Type: the webhook type
    • currently supported types: Microsoft Teams (teams) and Slack (slack)
  • ID: an arbitrary identifier

[ Time ]

  • Throttle: the time (in seconds) between individual requests
  • Delay: the time (in minutes) between periods

[ Directories ]

  • Root: the root of the directory to monitor
  • Glob: the globbing pattern for files to monitor (e.g. *.exe)
    • If no glob pattern is specified, the pattern '**' is applied

[ Files ]

  • list of individual files to monitor

On Exit

When helicopter closes, it will send a webhook message. The main reason for this is to alert the operator if the program fails unexpectedly. Additionally, Helicopter creates a lock file at '/etc/helicopter/lock' on exit. If this file is present on startup, Helicopter won't start.

To-dos

Changelog

  • 8/19/2018 - Initial release

helicopter's People

Contributors

generaltesler avatar

Stargazers

 avatar

Watchers

 avatar  avatar

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.