Giter VIP home page Giter VIP logo

honeyku's Introduction

Heroku-based honey{pot/token}

License: GPL v3

honeyku (a sister project of honeyλ) is a simple Heroku-based web honeypot that can be used to create and monitor fake HTTP endpoints (i.e. honeytokens).

  • Slack notifications
  • Email and SMS alerts
  • Load config from local file or Amazon S3
  • Customize the HTTP response for each token
  • Designed to be deployed on Heroku Cloud Application Platform
    • Can be also set up on your own server

Description

Honeyku allows you to create and monitor fake HTTP endpoints automatically. You can then place these URL honeytokens in e.g. your inbox, documents, browser history, or embed them as {hidden} links in your web pages. Depending on how and where you implement honeytokens, you may detect human attackers, malicious insiders, content scrapers, or bad bots.

Honeyku is designed to be deployed on Heroku cloud application platform (PaaS), but as it uses Flask microframework it's not dependent to AWS API Gateway (like honeyλ) or any other cloud services. So you can deploy it on your own server as well!

Setup

$ pip install pipenv OR $ brew install pipenv (on macOS)

$ git clone https://github.com/0x4D31/honeyku
$ cd honeyku
  • Edit config.json and fill in your Slack Webhook URL. Change the trap/token configs as you need.
  • You can customize the HTTP response for each token/trap
    • For example you can return a 1x1px beacon image in response and embed the token in your decoy documents or email (tracking pixel!)

Deploy

  • Deploy the app
$ heroku login
$ heroku create
$ git push heroku master
  • Ensure the app is running
$ heroku ps
$ heroku open

Output:

$ git push heroku master
Counting objects: 3, done.
Delta compression using up to 12 threads.
Compressing objects: 100% (3/3), done.
Writing objects: 100% (3/3), 287 bytes | 287.00 KiB/s, done.
Total 3 (delta 2), reused 0 (delta 0)
remote: Compressing source files... done.
remote: Building source:
remote: 
remote: -----> Python app detected
remote:  !     The latest version of Python 3.6 is python-3.6.6 (you are using python-3.7.0, which is unsupported).
remote:  !     We recommend upgrading by specifying the latest version (python-3.6.6).
remote:        Learn More: https://devcenter.heroku.com/articles/python-runtimes
remote:        Skipping installation, as Pipfile.lock hasn't changed since last deploy.
remote: -----> Discovering process types
remote:        Procfile declares types -> web
remote: 
remote: -----> Compressing...
remote:        Done: 55.4M
remote: -----> Launching...
remote:        Released v18
remote:        https://still-chamber-36399.herokuapp.com/ deployed to Heroku
remote: 
remote: Verifying deploy... done.
To https://git.heroku.com/still-chamber-36399.git
   f1414c4..c02b5e3  master -> master

Usage

honeyku

honeyku

Slack Alert

slack

TODO

  • Remote config: load config from Amazon S3
  • Check the source IP address against Threat Intelligence feeds (e.g. Cymon API)
  • SMS alert (Twilio)
  • Logging: Support HTTP endpoint

honeyku's People

Contributors

0x4d31 avatar

Watchers

Trending Technology 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.