Skip to content
0i41E edited this page Jun 20, 2024 · 67 revisions

Intro

O.MG Cable is available at https://hak5.org/omg

All versions of the O.MG Cable, O.MG Adapter, O.MG UnBlocker, and the O.MG Plug are supported with our new universal firmware flasher.

O.MG Devices are shipped "deactivated" to comply with regulations. An O.MG Programmer is used to activate them.

Specs:

  • Interface: USB
  • Radio: 802.11b/g/n (2.4GHz)
  • Power:
    • Voltage: 5v ( /- 0.5v)
    • Current: 500mA (or higher)
  • Payload: Keystroke Injection transmitted via the active end of the cable/adapter.
  • Payload Syntax: DuckyScript, with enhancements to support extra O.MG capabilities.
  • Passthrough data speed (for O.MG Cable & O.MG Adapter): USB 2.0 (480mbps) when active end is connected to a USB host.
  • Passthrough charging (for O.MG Cable & O.MG Adapter):
    • The active end must be connected to a 5v (max) charge source for passthrough charging to work.
    • USB hosts are intended to be the charge source. However, advanced scenarios can utilize battery/wall charge sources as long as they output a fixed 5v. USB-PD is the only variable voltage charge protocol supported (USB-PD negotiation will be limited to 5v).
    • Failure to follow the above requirements will risk damage to the O.MG Device and any connected devices.
  • Capacity: 8 payload slots of Basic, Customizable up to 200 payloads for Plus & Elite models. ~650,000 keystrokes of storage (for models with Keylogger).
  • Keylogging Support: Full Speed USB keyboards. (Full Speed USB = 12 Mbps) Details & tested keyboards are listed here

Setup - Easy Method

O.MG Devices requires an initial firmware installation. After that, all controls happen inside the Web UI. The Web UI also includes documentation for payload syntax.

Just go to the O.MG Web Flasher and follow the directions on screen. If you get stuck on any step, click the help buttons.

The final page will remind you that the default network is SSID: O.MG Pass: 12345678

Browser Support: The Web Flasher only works with browsers that support web-serial such as Chrome.

Drivers: Some operating systems (especially Windows) may require you to install CP2102 divers to be able to find the O.MG Programmer.

If the O.MG Web Flasher is not working for you, or you would like more control, please use the Python Flasher in our Advanced Setup Page.

Setup - Advanced Method

This advanced method is meant to be for more experienced users who want to have more control over their devices during firmware flashing. The Python Flasher allows fully offline flashing of firmware, ability to customize the wifi settings while flashing, bulk flashing, creating backups, and factory resets.

Advanced Flashing Instructions


Connect to the O.MG Web UI

After flashing firmware, unplug the O.MG Device from the programmer and plug the active end into a USB port on a USB Host device. (Ex: For * to A devices, the active end is the Type A connector. For * to C devices, the active end is the Type C connector).

Then connect your controlling device (ex: your phone, or a laptop) to the O.MG's wireless network (Default SSID: O.MG, PASS: 12345678), wait for your device to get an IP, and then browse to the O.MG's IP address: http://192.168.4.1

Note: You can change the SSID, Password, and toggle between AP Mode & Station Mode (AP vs WiFi Client) using the settings menu in the Web UI. If you would like to configure this during flashing, you can use the python flasher.



Features

Your O.MG Device has many features. Click the relevant documentation to explore. Please note: some features are only available for specific O.MG models.

Understanding the Hardware

Active End vs Passthrough End

The active end transmits payloads to the device it is plugged into. The active end is also the end you connect to the O.MG Programmer when flashing your O.MG Device.

You will select the active end while adding the cable to your cart during purchase. For USB-A to * cables, the active end is the USB-A connector. For USB-C to * cables the active end is the USB-C connector. The Directional C to C cable has the active end of the cable marked with a USB logo. For O.MG Adapter, the active side is the USB-C connector.

Charging Passthrough: The active end is what "pulls" power from a power source and passes it to the passthrough end. By design, USB hosts are intended to be the power source. Advanced use-cases can utilize battery/wall charge sources ONLY if ALL power requirements are satisfied. Failure to follow the above will risk damage to the O.MG Cable and devices that are attached.

Data Passthrough: USB 2.0 (480mps) data transfer is active when payloads are not being transmitted. The active end should connect to the USB Host.

Directional Cable

The Directional O.MG Cable is different than the other O.MG Cables. Instead of being built for covert field deployments, the Directional O.MG Cable is designed for demos, training, and attacker deployed scenarios. Officially, there are 8 types of USB-C to USB-C cables a consumer can have. The O.MG C to C Directional cable is none of them! We exploit the Type C design specifications in a way that allows the cable's behavior to change depending on what direction you plug it in, unlike a "normal" C to C cable.

Example: Connect the active end to a host computer and the passive end to phone. Payloads will deliver to the host computer while the phone has a charge and data connection with the host. Now, unplug the O.MG Cable and plug just the active end into the phone, and now you can deliver payloads to the phone instead.

As with all O.MG Cables, please follow the guidelines and requirements for how to use the active end, power passthrough, and data passthrough.


Support

If you have read all of the above and are still experiencing problems, please join the Hak5 Discord to chat with the O.MG developers and customers who are familiar with the O.MG products.

For initial setup and warranty related issues, open a private ticket in the #omg-support channel.

For general usage needs, use the #omg-general-chat channel.