Giter VIP home page Giter VIP logo

oxipot's Introduction

Oxipot

oxipot_logo

A network telnet HoneyPot written in Rust.

Features

  • Detect IT, OT and IoT bots ๐Ÿค–
  • Capture IP and location information of bots, attackers and intruders trying to gain access to your network
  • In-memory (volatile) and database (non-volatile) IP and location information caching
  • Handles a lot of concurrent network connections
  • Rate-limits persistent intruders
  • Build a big username and password database for IT, OT and IoT (thanks to malicious actors)
  • Extremely resource friendly and efficient to run
  • Containerized for portability and better security
  • SSH support (TBD)

Run

Using Docker Compose

This is the recommended way since it will always makes sure the container remains up.

  1. Make the database directory:

    mkdir /var/log/oxipot
  2. Start the container:

    docker compose up

Please note this example is using the new compose plugin and not docker-compose. Nonetheless, there should be no difference.

Using Docker

  1. Make the database directory:

    mkdir /var/log/oxipot
  2. Map port 23 to oxipot's default port, 2223 and specify the directory you want the database to be stored in.

    docker run --name oxipot --rm -t -p 23:2223 -v /var/log/oxipot:/oxipot/db:rw oxipot:latest

Using The Executable

Directly using the executable is not recommended. This method should be used only if you know your craft.

  1. Download the executable.

  2. Extract the file:

    tar -zxvf oxipot.tar.gz
  3. Make it executable:

    chmod +x oxipot
  4. Make the database directory:

    mkdir db
  5. Run it:

    ./oxipot

A folder named db will be created in the same directory that will host oxipot.db containing the intruder reports.

View The Report

After a connection is made to the machine running oxipot, a sqlite3 database is created that you can refer to in order to see who has connected to the machine and what credentials they have used.

Depending on how you run oxipot, the location of the database will differ.

  • Using docker compose, the database will be located at /var/log/oxipot/oxipot.db.
  • Using docker run, the database will be located at the directory the image was started at /var/log/oxipot/oxipot.db or a custom directory you have specified.
  • Using the executable, the database will be located at the same directory as oxipot.

Utilizing sqlite3, you can view the reports.

  1. Open the database:

    sqlite3 /var/log/oxipot/oxipot.db
  2. Run your query:

    SELECT * FROM intruders;

The result will be similar to:

oxipot_report

Disclaimer

This is a hobby project and work in progress prone to many changes. Run at your own risk.

oxipot's People

Contributors

pouriyajamshidi avatar dependabot[bot] avatar

Stargazers

Juri Hahn avatar Vitaliy Yermolenko avatar Shaun Savage avatar Adam S avatar JustSKY avatar Marco Ochse avatar hx avatar Mark Pashmfouroush avatar

Watchers

 avatar

Forkers

greenpdx

oxipot's Issues

Reverse attack

Describe the solution you'd like
I would like to use it to attack the client and see if I can own their computer.

Describe alternatives you've considered
Write my own

Additional context
I would do the programming, and I could also help log JSON in mongodb.

Are you planning to include JSON logging?

Currently logging seems to be limited to sqlite3. While logging to the Elastic Stack or Splunk seems to be possible with sqlite3 plugins, having a JSON log would make things a lot easier.
Maybe you have already planned or looked into it.

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.