Giter VIP home page Giter VIP logo

uberhid's Introduction

UberHid

logo

Wifi keylogger with keyboard and mouse injection capabilities.

├── docs # docs and pictures
├── firmware # firmware code
│ ├── UberHID-ESPUSB # ESP8266 firmware
│ │ └── data # ESP8266 static files
│ └── UberHID-Leonardo # ATmega32u4 firmware
└── hardware # hardware schematics

Bill of Materials

Qty. Description Obs.
1 UBERHid PCB Designed by @kripthor
1 Arduino atmega32u4 Board is designed for DM Micro AU version (Beetle with 18 pins)
1 ESP8266 ESP-12E module Module to solder
1 MAX3421EEHJ+ USB USB Peripheral Host Controller 32-Pin
5 10kΩ Resistor SMD.
2 33Ω Resistor SMD.
2 18pF Capacitator SMD.
1 XTAL TXC 12Mhz SMD.
1 2k2 Resistor 2.2KΩ SMD.
1 FTDI FT232RL USB to TTL Serial 3.3V/5V USB Adapter or equivalent. Used to program the ESP8266.

UBERHid Parts

  • All the components can be found in the usual online stores such as Aliexpress and eBay.

Schematics

UBERHid PCB

UBERHid PCB

UBERHid Schematic

Schematic

UBERHid Wiring

Details of the wiring between the ATmega32u4 and FTDI programmer. Note that the ATmega used in this case was an SS Micro version which does not have the same pinout as the recommended DM Micro AU Beetle Leonardo, which fits directly in the PCB pinout layout.

Wiring

Soldering

The components must be soldered accordingly to the above schematic. Some extra details and protips:

  • Start by sodering the smaller components, especially the MAX3421 chip, the SMD resistors and capacitors and the XTAL crystal.
  • Two pins stay right bellow the ESP8266 chip. You have to be sure that these pins do not make any contact with the ESP8266 after the soldering is completed. I used a little of heat-resistant isolator tape to avoid any contact and soldered the pins on the other side of the board.
  • Solder the ESP8266 before the remaining pinouts to have more space.
  • Finish the soldering by adding the remaining pins and the USB port.
  • The atmega32u4 can be soldered directly on top of the UBERHid PCB, although some jumper cables can also be used to make it possible to reuse it to other projects.
  • Clean the board using isopropyl alcohol.

How to program the devices

ESP8266

  1. Connect the FTDI to the PCB pins as depicted in the wiring scheme above.
  2. GPIO0 is needs to be grounded to get into programming mode.
  3. Uncomment the follwing lines in platformio.ini:
src_dir = ${workspacedir}/firmware/UberHID-ESPUSB/.
data_dir = ${workspacedir}/firmware/UberHID-ESPUSB/data/.
  1. $ platformio run -e esp12e sanity check
  2. $ platformio run -e esp12e --target upload --upload-port <dev/ttyUSB*> uploads firmware
  • Replace <dev/ttyUSB*> with your device, e.g.: dev/ttyUSB0
  1. $ pio run -e esp12e --target uploadfs --upload-port <dev/ttyUSB*> uploads filesystem (data folder)
  • Replace <dev/ttyUSB*> with your device, e.g.: dev/ttyUSB0

Arduino Leonardo (atmega32u4)

  1. Plug-in the Arduino Leonardo in one of the computer USB ports.
  2. Uncomment the follwing line in platformio.ini:
src_dir = ${workspacedir}/firmware/UberHID-Leonardo/.
  1. $ platformio run -e leonardo sanity check
  2. $ platformio run -e leonardo --target upload --upload-port <dev/ttyACM*>
  • Replace <dev/ttyACM*> with your device, e.g.: dev/ttyACM0

How to use it?

  1. Connect the device between a keyboard and a computer.
----------     ---------     ----------
|Keyboard| <-> |UBERHid| <-> |Computer|
----------     ---------     ----------
  1. Connect to the device access point.
  • It can be visible or hidden depending on the configuration on file Config.h in firmware/UberHID-ESPUSB. Other configurations available are the access point name and password.
#define WIFISSID "UBERHID"
#define WIFIPASS "uberidiota"
#define WIFICHANNEL 7
#define WIFISSIDHIDDEN 0 // 0 for not hidden
  1. Navigate to 192.168.4.1

UBERHid Homepage

  1. You can see the keystrokes in realtime and inject keyboard and mouse commands. Also, you can RickRoll your friends.

uberhid's People

Contributors

jpdias avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

uberhid's Issues

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.