O.MG Cable

This page contains the highlights behind the initial project work behind the O.MG Cable. Slowly, it turned into a product!

---2020-02-07---
USB C and Micro variants are now up at Hak5
New video is
on twitter and youtube

---2019-12-31---
Rev 1 of the O.MG Cable is now being fully manufacturered and available for sale!
Launch video is on twitter and youtube

For sale: at Hak5

The software has continued to evolve with @d3d0c3d and [myself](@d3d0c3d chasing all kinds of things. Many of it still hasn't seen the light of day. The physical components required some minor changes to adapt for factory production. The programmers also got some changes. @clevernyyyy continues to help on the app, and we have some awesome logo work from Dustrial

The cost and time required seem to exponentially rise every week, but hopefully that will start to taper off now. And, for those paying very close attention to the Hak5 page, you can see we have some variants in the pipeline. :)

---2019-08-08---
New demo video here
Final prototypes, fully hand-built, are ready for sale at DEFCON!
This ended up becoming a much bigger project than we all anticipated. The software development ended up going way deeper than just some JavaScript work and everything is a lot more complex now.

This full update is long and mixed with some other research, so you can find it here: https://mg.lol/blog/defcon-2019/

---2019-04-12---

New demo video here
It has been 2 months since the original demo. The day after the demo I started a new job on a Red Team. I have also been helping Joe FitzPatrick run his new rapid prototyping and hardware implant clases. So things outside the project have been pretty busy. Luckily, the O.MG Cable project now has a collaborative group behind it.

As mentioned in the video, @d3d0c3d, @pry0cc, @clevernyyyy, @JoelSernaMoreno, @evanbooth, and @noncetonic have been moving things forward in some fun ways. While @cnlohr & @RoganDawes have provided valuable input and suggestions.

@noncetonic (of @BlacksunLabs_) also provided the great LockScream payload you see here. I hear he is looking for work if you want to try and steal him before someone else does!

I think the video does a good job of explaining what we have done so far and what is next. I will add that a batch of prototypes are going to be landing in the hands of all the active participants of the group working on this. We are pretty close to moving this toward an official production run and open source. There are some significant improvements and features that would be nice to get in place first, along with efficiency and stabilization. We could use some help there from someone who has deep pockets in writing embedded USB code.

It seems like handing batches to existing online shops is the easiest approach that doesnt take time away from future research. Dealing with all of that overhead sounds like a nightmare, expecially on a near zero (more likely negative) profit project.

As for the DIY PCB milling research, I continue to find new pathways that improve the quality and easy of replication. I am actually now experimenting with low cost custom tooling that will hopefully provide considerable improvements for DIY PCB creation spanning from blank copper clad FR-4 to the finished and solder-masked finished board. My plan of having a "finished process" may not happen anytime soon, especially with Bantam being extremely busy small shop (they have been great help), so I may just post incremental process improvements and changes.

---2019-02-11---
My intent is to make these available for many of you, and open source as much as possible. If you haven't seen the video demo yet, go here.

Firstly, the frontend needs some help! If you are good with JavaScript and would like to contribute, please reach out to me on twitter. cnlohr did the heavy lifting on the backend, so there is mostly just frontend work that needs to be done. Corey Harding is currently evaluating a port of ESPloitV2 over to this hardware and code base, so this will be a huge value if it happens. <EDIT Feb 11 - We now have a whole team helping with this so we will not need additional assistance here!>

Secondly, yes.. I am going to work on getting a batch of these made for researchers and those working in the industry. I don't have the exact logistics worked out, but I am sending a batch of these off to be made. Whether I will just hand them out or sell them at a low cost is up in the air, but selling them probably makes this easiest to get it in as many hands as possible. Many are asking about this, so I will keep this page update on the status in addition to posting info on twitter when I have major news.

I spent ~$4k and ~300hrs across the last month chasing this project as a way to also pick up a bunch of new skills. That is a lot more time and money than most people would take, but I was starting from zero on a lot of this. I had not used "real" PCB design software before, used a desktop mill to cut boards, worked with solder mask, soldered things this small/cramped, played with this level of code, etc. I also wanted to do as much as possible on the mill instead of sending the boards off to be professionally made. Firstly, I found the mill for $950 used. But more importantly, the mill allowed me to rapidly test my prototypes. I could turn around a board design in under an hour instead of waiting a few days. I probably made a dozen or so different board revisions due to various failures. So it was amazing for quickly learning through failure.

Bantam, the manufacturer of this desktop mill, has reached out to me so we can polish up the PCB creation process that I created. Hopefully we can make it so others can reproduce this quality of PCB for themselves. Bantam advertises the mill as not being capable of footprints and paths this small (I am also using an older, less accurate model). Also, the solder mask application method that most people use for DIY purposes is much less accurate, more messy, and more time consuming. I plan on publishing a walkthrough on getting boards of this quality once I work with Bantam to make some process improvements.

There will certainly be more learning for me in this project, but I now have a functional proof-of-concept/early-prototype to share. And I just barely did it in the window of time I put aside for this while I was taking time off between jobs. (I actually was supposed to be done 2 weeks before the new job, but ended up finishing the day before the new job.)