Researchers in the UK claim to have translated the sound of laptop keystrokes into their corresponding letters with 95 percent accuracy in some cases.
That 95 percent figure was achieved with nothing but a nearby iPhone. Remote methods are just as dangerous: over Zoom, the accuracy of recorded keystrokes only dropped to 93 percent, while Skype calls were still 91.7 percent accurate.
In other words, this is a side channel attack with considerable accuracy, minimal technical requirements, and a ubiquitous data exfiltration point: Microphones, which are everywhere from our laptops, to our wrists, to the very rooms we work in.
New policy from the corporate office: If you are working in a public place, like a coffee shop, please scream while typing your login password.
I screamed my password and now I got hacked. Thanks for nothing!
use the onscreen keyboard
much more secure
why won’t my bank stop calling me
Quite scary considering the accuracy and how many open mics everyone is surrounded by without even realizing it. Not to mention if any content creator types their password while live streaming or recording they could get their accounts stolen.
One more reason to switch to a password manager, even though they could still find out the master password…
Probably still have some safety if you’re using two-factor, or have a master key in addition to a password (e.g. 1Password).
Or use a local password safe like keepass.
Or host it yourself like the smart one you are
Only if you have to type it in to unlock your vault. Now, bear with me.
Bitwarden (maybe others) lets you set a PIN to unlock your vault. Normally, you would think this is a less secure setup, easier to crack with the method outlined in this article. Except with Bitwarden you have to set up the pin in every browser extension and every app install.
Meaning, unless they have access to your device, the PIN to unlock one instance of Bitwarden could be different from the PIN for another. They also don’t have to be strictly 4-digit PINs, either. I highly recommend password managers, but for my money, Bitwarden has all my love.
Disclaimer: I am on no way affiliated with Bitwarden. But I could be if they paid me!
but then I have to remember the PIN for each one of my devices. there should be some kind of app for storing those.
Do what users at most businesses do, write it on a sticky note and put it on the underside of your keyboard!
Stick around for more tech tips with a real life sysadmin!
Password manager and the LOUDEST MECHANICAL KEYBOARD POSSIBLE you have NO idea what keys I’m pressing with my blues, bitches
That’s the whole point though. The louder your keypresses the better.
laptop
laptop
laptop
I don’t think you read the article
A loud ass mech keyboard would fuck this study up
This has been a known attack vector for years, and I wonder how no livestreamer has been (publicly) attacked in this way.
I guess in large part this can be attributed to 2FA, passwords just aren’t worth much by themselves anymore (well I guess if someone is quick enough they can snipe the OTP as well, but streamers are rarely entering their 2FA while streaming since they’re on a trusted device).
In fact the biggest attack vector I’d worry about is the infamous SMS 2FA, which is actually 1FA for password resets, which is actually 0FA “yes dear phone operator I am indeed Mister Beast please move my phone number to this new SIM”.
Neat, so when my friends are taking about satisfyingly clackety keyboards I can inform them it’s a security hazard.
I’ll accept the risk. I need the clicky
Good luck, I have a non standard key layout
It’s still vulnerable to dictionary attacks
Except it’s not
??? If you can map sound to qwerty keystroke placement, then it’s a simple matter of mono alphabetic substitution for other layouts to generate candidate texts. Using a dictionary attack to find more candidate layouts would absolutely work.
No, all the timings change. You can’t just swap out the letters and hope it matches. Additionally I was responding to the poster claiming a dictionary attack on a password would work - only if it’s in the dictionary.
The method is not based on timings. It is based on identifying the unique sound profile of each keystroke
How can you make that claim? They used deep learning, does anyone know what characteristics the AI is using?
Dvorak?
Good luck making an acoustic map of the tens thousands of possible case, switch and key cap combinations.
Middle management will finally get rid of clacky keyboards with this weird trick
This is why I always make sure there are no boffins around before I start typing.
If there are boffins around, I start typing out the GDPR guidelines in full
What about Hornblower’s, Bolger’s, Took’s, Sackville’s or Grubb’s?
Not to be a jerk, but is this actually new? I’ve heard of this being done at least ten years ago…
On another note, one way to beat this (to a degree) would be to use an alternate keyboard like Dvorak (though you could probably code it to be able to detect that based on what’s being typed)
I think it’s largely been a state actor thing. Directional microphone to record your window from across the street, spend significant tax money on crunching numbers on a supercomputer to get at your password kind of thing, I think they already could do it in the 90s. Real-time 95% accuracy on a non-specialised device is a quite different ballpark: Now every skiddie can do it.
Now every skiddie can do it.
And this is the real, serious problem. Most people are pretty unlikely to stop a state sponsored spy operation no matter how careful they are. It’s barely worth worrying about unless you know for a fact you’re being tapped and that you will be killed about it, and even if you do know this the state can pull some space age bullshit out of their asses that doesn’t yet have a counter. Top secret military industrial research goes into maintaining that exact advantage every year, if they really want to get you, you will get got. But if Joey Dickbeater and his school friends can just point a mic at your window and then upload it to the Pass-o-Gram to decode it, you have a real problem. It’s like when TikTok kids figured out they can steal Kias with usb keys - if every teenager in America knows how to steal your car, its lifetime is going to be measured in minutes. Same with passwords.
Sounds like it’s time to buy a bunch of random cherry switches and randomize them across my keyboard…
What it means is that NIST probably needs to update its security recommendations to require hardware keys for even low level systems. It’s going to be a huge pain in the ass though.
Sounds like it’s time to buy a bunch of random cherry switches and randomize them across my keyboard…
And rotate them. While I don’t plan to waste my energy, having hot swap sockets and swapping a few around should thwart the attack. You would have to do it frequently enough that relevant training data gets wasted before it’s useful. I’m pretty paranoid, but not that much.
I’ll just consider it good security hygiene to get a new keyboard often :)
Have you considered only re-doing the tinfoil wrapper every day? It should crackle differently every time.
Gotcha, that makes more sense
Coding for alternate key mappings is almost as trivial as detecting other languages.
Yeah, that’s what I figured
It’s more trivial because it’s a 1:1 relationship. A is a, s is o, d is e, and so on. Detecting other languages is harder because there’s more of them and there isn’t a 1:1 conversation to English.
There has been previous work on this, yes. It required a dictionary of suggested words. That would make it useful for snooping most typing, but not for randomly generated passwords. This new technique doesn’t seem to have that limitation.
Okay, gotcha. I didn’t look that deeply into it previously so I never realized how limited that was
So about those people that run around saying passphrases are better… 😅
I guess my typos are now a security feature!
I’d be curious how well this approach translates to multi-lingual keyboard layouts. For english users, perhaps theres another benefit to non-QWERTY layouts (e.g. Colemak or Dvorak) after all? … and two factor authentication should remain helpful I presume. Especially physical key methods with no audible characters typed (e.g. Yubikey, Titan, etc.)
I was thinking the same, but it would be trivial for software to realize that “fnj xlg” maps to “the dog” with Colemak or Dvorak.
I wonder if you need to train it on a specific keyboard before it will work it.
Most likely
That would limit the practicallity quite a lot, as deskmats and typing style would change the sound of even a common keyboard.
I also notice that I slightly change my typing style between typing normally and entering my password.
That would limit the practicallity quite a lot, as deskmats and typing style would change the sound of even a common keyboard.
Eh… I don’t know if it would be enough of a change. Also consider mass produced popular laptops (e.g. targeting the MacBook keyboard).
I also notice that I slightly change my typing style between typing normally and entering my password.
I don’t really think that’s normal… But hey, maybe it gives you some protection 🙂
I doubt so. Wouldn’t Zipf’s law be used for this?
In the article it says that they had to record data from the keyboard ahead of time to plug into the model. This isn’t some magic thing that can listen to any keyboard it has to be trained for one keyboard at a time. It sounds like it’s just a proof that this technique could be used if a malicious actor could get physical access briefly to record the training data - then from that point on all you need is a microphone listening.
Some laptops like the Framework laptop have fingerprint sensors
Physical Security keys like NitroKeys or YubiKeys are another option
I don’t see the relevance.
You can use fingerprint or U2F to unlock your password manager and copy the password. That way you don’t have to type it in.
That does nothing for keylogging through this method.
It would have to be combined with a secure (no microphones) area during setup, but it seems like swapped biometric plus token would defeat this attack (password gathering). It would however not defeat generic data collection.
It would eliminate someone being able to get your username or password via this method though. Because you never have to type them in.
With my MacBook I can use either touchid or my watch to automatically unlock it, so I don’t even have to type my password in to get into my laptop. And then I use touchid and Keychain for all my passwords so I never have to type those in either.
Can we normalise good but quiet keyboards. Like, I like the tactile feel of using a mechanical, but I hate the sound. Quieter mechanical keyboards aren’t a thing but they should be. Now as a security measure if nothing else.
Also Dvorak keyboards I guess
I went out of my way to find a keyboard with Cherry MX Clear switches. They’re basically a high-force tactile feel, but no clicky sound like MX Blue switches. I absolutely love them for typing, and I’ve been using them for years.
I’m not sure if there’s newer options now for silent switches? I know they had a couple models with extra internal damping.
I used boba u4 silents on my custom keyboard. Absolutely love them. Wish they made a consumer-grade keyboard with them (or maybe they already do?) But I’ve been working on a MacBook recently and tbh the keyboard there is pretty good now. So next step for me is to build a low profile keyboard
normalise good but quiet keyboards
Oh man, if Topre became popular enough to bring the price down through scale that would be pretty rad
Dvorak
vi tho.
On my colemak keyboard I put arrow keys on another layer under where hjkl are on qwerty. Beyond that, most of the keys are remembered by mnemonic rather than position imo
That awkward moment when you use Nano
Up against the wall
I always uninstall nano the first time it shows itself
I never learned to touch-type, so my typing style is very different from most people though I can type fast enough for work.
My typing style only uses 3 fingers, and both hands type keys in the middle of the keyboard.
I wonder if this has any effect on accuracy?
Edit: Article states touch-typing can reduce accuracy. Wonder if that’s because they type more softly than us tech gorillas who tend to bash on the keys?
I’m a touch typist who can reach 160wpm when I’m really flowing, I would guess the speed makes accuracy harder to distinguish individual keys than you pressing keys with three fingers.
I type an awful lot slower than you, and still it’s faster than I can think. How do you think of what to type fast enough to type at 160wpm?
Not the original person you responded to, but I type 120ish wpm. The trick is to try to tap into the same part of your brain that verbalizes words when you talk, rather than the part that composes stuff when you write.
That speed is usually transcription for me, I’m listening to someone and type what I hear. Actual writing and composing a thought typing speed is closer to 120wpm or so. I learned to type on a typewriter which is much slower, current low profile mech keyboard contributes to faster typing speed too.
That speed is something you only reach when using something like monkeytype.com, where it gives a continues list of words for you to type over some time, and then calculates the wpm. I manage about 140.
Yeah, the article mentions that exactly - the faster you type the more the accuracy plummets.
I could see that, makes sense.
I wonder if different switches, keycap profiles, keyboard material ect affect the accuracy?
Might have to spend some time getting Easy Effects/Noise Torch set up on my systems again just to reduce the vectors again.
There is a good comment on this post on physical mitigation that seems helpful as well: https://www.reddit.com/r/Fedora/comments/uerp9z/comment/i6p0jqa/?utm_source=share&utm_medium=mweb3x&utm_name=mweb3xcss&utm_term=1&utm_content=share_button
Is it ignorance, indemnity, or conspiracy that this News Media Corporation didn’t give the primary mitigation?
A white noise generator.