Git Product home page Git Product logo

pigeonhive's Introduction

PigeonHive

PigeonHive is a tool for offensive security teams to simulate MFA-defeating social engineering attacks at scale.

It defeats MFA by tricking end users into authenticating on an attacker-controlled server. It creates an unlimited number of hive nodes using containerized browsers sharing their content through VNC. This allows security teams to simulate attacks for large groups of end users, using real login portals for phishing campaigns.

Intro

The Attack

PigeonHive uses the "Browser-in-the-Middle" (BITM) attack. This was inspired by original research1 and a popular implementation2.

The attack works by hosting an isolated browser instance in an attacker-controlled network. This browser instance can point to any login page. This instance is also running a VNC server, which is connected to by a client running in the victim's browser. By doing this, the victim is actually interacting with the real login page, just on a different computer.

How PigeonHive Makes This Useful

PigeonHive takes this technique and makes it operational in a few ways.

  1. Containerizes the browser/VNC combo machine (this is called a "pigeoncell")
  2. Makes it easy to map these machines to email addresses for internal tracking
  3. Allows for accessing each machine through subdomains
  4. Enables interaction tracking (currently in the "GoPhish Addon" branch)

The Name

The name PigeonHive was chosen because this method essentially creates pigeonholes for the targeted users. "Hive" seemed appropriate for a group of these managed by a swarm.

Usage

Setup

Prerequisites

  • You must be running a Docker Swarm
  • Ensure that your desired manager node has the label "pigonhive_leader=true"
    • docker node update --label-add pigeonhive_leader=true node_name_here

Installation

Install requirements with

pip install -r requirements.txt

Running

To run PigeonHive and see the help output, run

python3 pigeonhive.py -h

PigeonHive features three subcommands: create, query, and delete.

Subcommands

Note: please refer to the program's help output for more detailed instructions on how to use the subcommands.

create

Creates pigeoncell containers and exposes them to the reverse proxy.

query

Allows you to list active pigeoncell containers and see their email mappings.

delete

Removes active containers.

Footnotes

  1. https://link.springer.com/article/10.1007/s10207-021-00548-5 - An academic look at the attack

  2. https://mrd0x.com/bypass-2fa-using-novnc/ - The original inspiration for this repository

pigeonhive's People

Contributors

james-stahl avatar

Stargazers

tianqi sun avatar  avatar  avatar Ben avatar mrz-secops-offsec avatar Christian Scott avatar  avatar osonkr avatar  avatar Chinmay1743 avatar

Watchers

Mehul Vaghani avatar Luis Alberto Anton Delgadillo avatar Katterin Soto avatar Dahvid Schloss (APT Big Daddy) 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.