This idea is interesting to me because hell making my own stuff is fun. I have access to quite a few usb keys already so technically I might have the material available. Also my threat model is pretty low so I’m interested in security mostly for fun.
Most methods I have found talk about making a key to secure a computer but I would really like to make something that would do WebAuthn.
There is a neat Git project that shows how to turn a few specific devices into 2FA code prompters/automatic fillers. But in my naive mind that falls short of what I would truly wish to be able to accomplish ie. Stock USB --> WebAuthn/Passkey device.
Has anybody seen anything on the subject?
Have you seen this? https://flipperzero.one/
You can do way more than just 2FA with it. If you’re interested in security, there are all kinds of things you can do. It’s getting some heat because of people using them maliciously, but if you aren’t ethically compromised, it’s a great tool to play around with and find potential vulnerabilities in your own systems and learn a lot in the process.
https://docs.flipperzero.one/u2f
Also, there are custom firmware loads and open source apps that open up some other avenues with a highly engaged community.
https://github.com/ClaraCrazy/Flipper-Xtreme https://github.com/UberGuidoZ/Flipper
It’s super fun, I’ve barely scratched the surface with mine.
Thank you for sharing some of the flippers capabilities. I am looking for a 0$ option, I got my reasons.
By “USB keys” and “stock USB,” are you talking about USB flash drives? Chances are there’s no way to reprogram the controller in one to act as a HID device rather than mass storage.
I’ll look into HID devices but buying stuff is annoying. I was really hoping to be able to just repurpose a flash drive.
You could try USB Raptor - it’s Windows only and works as a wrapper to use your drive as the authentication since you need special hardware to make an actual HID authentication device as @SpaceNoodle correctly stated.
There were a few different resources talking about ways to make a security key that locks/unlocks a computer. It’s not on my radar right now. Thank you for sharing this one.
From what I remember, you need a specific usb drive with a controller that is able to be reprogrammed
Another way is to just buy a usb HID device, they’re cheap
The tutorials I found see to point towards specific controllers. I was hoping for a measly flash drive to be able to modified.
I don’t think it’s possible due to security keys having dedicated hardware for WebAuthn. I had the same idea before I got my pair of Yubikeys
Generally we’d say no, not really, and certainly not with the highest security.
The whole point of a security key is that it is supposed to be impossible to extract the key material, that simply isn’t going to be the case for a DIY solution. They have shields, and light sensors to prevent decapping/forensic inspection.
Recommend taking a look at this: https://duo.com/labs/research/microcontroller-firmware-recovery-using-invasive-analysis