News for hackers. Stuff that matters.
Re:Bluetooth keystroke-injection in Android, Linux, macOS an... by kelnos on Saturday December 16, 2023 @02:21AM (#38662439)
I had to dig a little to figure this out, so, to keep yourself safe:

Android: disable Bluetooth when you're not using it (but you'll be vulnerable while you are). My Pixel just got the 12/5/2023 security update, which fixes the issue; not sure about non-Pixel phones.

Linux: Open up /etc/bluetooth/input.conf and set ClassicBondedOnly=true (in my case I just had to uncomment this, not add anything). The next version of bluetoothd should default to =true, but you can set this yourself now. Don't forget to restart the bluetooth service after doing so.

Not sure about macOS or iOS; I don't have devices running either of those.

Re:Bluetooth keystroke-injection in Android, Linux, macOS an... by magicalhippo on Saturday December 16, 2023 @04:27AM (#38662982)
> Android: disable Bluetooth when you're not using it (but you'll be vulnerable while you are).

Page says it only works for stuff that doesn't require password or biometrics.

I actively lock my phone when not using it, and surely I'd see the activity of the keystrokes being sent when using my device, no?

In that case it doesn't seem that horrible to leave Bluetooth enabled.

Re:Bluetooth keystroke-injection in Android, Linux, macOS an... by mihalycsaba on Saturday December 16, 2023 @07:36AM (#38663784)
Does this even work without pairing?
Re:Bluetooth keystroke-injection in Android, Linux, macOS an... by ranguna on Monday December 18, 2023 @03:51AM (#38680433)
The vulnerabilities work by tricking the Bluetooth host state-machine into pairing with a fake keyboard without user-confirmation.
Re:Bluetooth keystroke-injection in Android, Linux, macOS an... by Aachen on Saturday December 16, 2023 @09:49AM (#38664606)
> surely I'd see the activity of the keystrokes being sent when using my device, no?

That was my first thought as well. Then I remembered how much time my device spends in my pocket or on my nightstand

Re:Bluetooth keystroke-injection in Android, Linux, macOS an... by magicalhippo on Saturday December 16, 2023 @10:07AM (#38664737)
Right, but can it enter keystrokes when the device is locked? As in use the device "behind" the lock screen?
Re:Bluetooth keystroke-injection in Android, Linux, macOS an... by Aachen on Saturday December 16, 2023 @01:17PM (#38666469)
I don't have a device lock because I keep the thing on my body and anyone violating that will also get the password anyhow and I don't want to have to authenticate a million times a day. That logic worked until now I guess :/
Re:Bluetooth keystroke-injection in Android, Linux, macOS an... by davrosthedalek on Saturday December 16, 2023 @10:10AM (#38664762)
Not sure. Doesn't the iphone lock you out for a day if you enter your pin wrong too often? If that pin-entering can be done via bluetooth.... More a prank than an attack, but still quite annoying.
Re:Bluetooth keystroke-injection in Android, Linux, macOS an... by rplnt on Saturday December 16, 2023 @03:34AM (#38662754)
Too bad iOS makes it very hard to disable bluetooth. Android was swipe+click, iOS it's swipe, two long presses, two clicks. Or you can type it, but that's obviously more clicks (though possibly faster).

I used to make the effort when I switched from Android, but I already gave up...

Re:Bluetooth keystroke-injection in Android, Linux, macOS an... by haraldooo on Saturday December 16, 2023 @03:41AM (#38662780)
Am I missing something? Swipe from the top, tap to disable BT?
Re:Bluetooth keystroke-injection in Android, Linux, macOS an... by rplnt on Saturday December 16, 2023 @04:14AM (#38662931)
Notice the difference in color when you do that. As the other comment pointed out, it only disconnects devices. Apple makes it hard for their users to disable bluetooth (or gps) so features like airtag work well.

You are sacrificing your battery life (and I guess privacy and security) for the ecosystem to work.

Re:Bluetooth keystroke-injection in Android, Linux, macOS an... by cma on Saturday December 16, 2023 @08:27AM (#38664022)
Google won't let you use GPS for maps without also turning on wifi for similar reasons I guess. It does make it more accurate but shouldn't be required.
Re:Bluetooth keystroke-injection in Android, Linux, macOS an... by slau on Saturday December 16, 2023 @09:10AM (#38664303)
Wasn’t there this thing that Google collected a list of SSIDs using their Google Maps cars, and that gave them “good enough” geolocation using passive WiFi scanning, which was much less battery intensive and faster than GPS?
Re:Bluetooth keystroke-injection in Android, Linux, macOS an... by 0xDEADFED5 on Saturday December 16, 2023 @04:52PM (#38668089)
That's nonsense, Maps works perfectly fine with wifi off
Re:Bluetooth keystroke-injection in Android, Linux, macOS an... by cma on Tuesday December 19, 2023 @02:24AM (#38692829)
They might have changed it again, but it was a thing, I saw the prompts mentioned here too:

https://news.ycombinator.com/item?id=30167865

Re:Bluetooth keystroke-injection in Android, Linux, macOS an... by hybridtupel on Saturday December 16, 2023 @03:49AM (#38662817)
That’s unfortunately only disconnecting until the next day (see text appearing above when pressing).
Re:Bluetooth keystroke-injection in Android, Linux, macOS an... by sumuyuda on Saturday December 16, 2023 @04:32AM (#38663005)
I had to create custom shortcuts to disable WiFi and Bluetooth after Apple made the ones from Control Center useless.
Re:Bluetooth keystroke-injection in Android, Linux, macOS an... by rplnt on Saturday December 16, 2023 @04:37AM (#38663023)
Is it possible to do for Location as well? Last time I tried to search for it, it really wasn't possible except through Siri somehow.
Re:Bluetooth keystroke-injection in Android, Linux, macOS an... by vldo on Saturday December 16, 2023 @09:27AM (#38664413)
I made one to open locations in settings via open URL: prefs:root=Privacy&path=LOCATION
Re:Bluetooth keystroke-injection in Android, Linux, macOS an... by malfist on Saturday December 16, 2023 @09:45AM (#38664570)
Wow, that's bonkers. I thought apple cared about privacy?
Re:Bluetooth keystroke-injection in Android, Linux, macOS an... by vldo on Saturday December 16, 2023 @09:55AM (#38664649)
Re:Bluetooth keystroke-injection in Android, Linux, macOS an... by vldo on Saturday December 16, 2023 @09:53AM (#38664642)
it's route for the settings menu, not sure it works in the browser :)
Re:Bluetooth keystroke-injection in Android, Linux, macOS an... by judge2020 on Saturday December 16, 2023 @08:53AM (#38664201)
It makes sense for most people. When they want to turn those off they want to either disconnect from WiFi or disconnect from Bluetooth audio, and they don’t expect things like airdrop or their Apple Watch to stop working when they turn them off.
Re:Bluetooth keystroke-injection in Android, Linux, macOS an... by CamperBob2 on Saturday December 16, 2023 @12:45PM (#38666224)
Sounds like an excellent opportunity for a UI affordance to me. Instead, Apple has chosen the path of least-yet-most-unpleasant surprise.
Re:Bluetooth keystroke-injection in Android, Linux, macOS an... by amarshall on Saturday December 16, 2023 @06:46AM (#38663568)
It’s impossible to permanently disable Bluetooth on iOS. Every iOS update re-enables it.
Re:Bluetooth keystroke-injection in Android, Linux, macOS an... by SamuelAdams on Saturday December 16, 2023 @09:01AM (#38664244)
Same on MacOS. It got to the point where I made a start up script to check and disable Bluetooth.

Apples official stance is that this behavior “functions as intended”.

https://lapcatsoftware.com/articles/bluetooth.html

Re:Bluetooth keystroke-injection in Android, Linux, macOS an... by DougBTX on Saturday December 16, 2023 @07:42AM (#38663803)
> Too bad iOS makes it very hard to disable bluetooth.

Depending on whether you have the Settings icon on your Home Screen, that’s three taps (Settings -> Bluetooth -> Off). Not even any scrolling.

Re:Bluetooth keystroke-injection in Android, Linux, macOS an... by rplnt on Saturday December 16, 2023 @09:06AM (#38664279)
Setting doesn't always open on "home".

Annoyingly so it doesn't even always open on the expected screen, e.g. when opening "Wifi settings" from the network selection you might end up in notifications if it was the last screen you used. Not a consistent bug.

Re:Bluetooth keystroke-injection in Android, Linux, macOS an... by vldo on Saturday December 16, 2023 @09:28AM (#38664424)
You can make a shortcut with the action Toggle and set Bluetooth
Re:Bluetooth keystroke-injection in Android, Linux, macOS an... by ace2358 on Saturday December 16, 2023 @03:49PM (#38667530)
I’m trying this now and can’t figure this out. I’ve been trying for months now.

I’m adding a new action, I search toggle and Bluetooth and I’m not getting any actions to set Bluetooth. What am I doing wrong? Edit: Scratch that! I figured it out! Realised I wanted a way to connect to a Bluetooth device (my flaky headphones don’t always connect, pain to dig into the settings every time)

Re:Bluetooth keystroke-injection in Android, Linux, macOS an... by lencastre on Saturday December 16, 2023 @08:08AM (#38663922)
Make a shortcut to disable or enable and add that shortcut to your Home Screen
Re:Bluetooth keystroke-injection in Android, Linux, macOS an... by lxgr on Saturday December 16, 2023 @12:00PM (#38665747)
To be fair, the default behavior does exactly what I want: Disconnect me from a broken Wi-Fi network/Bluetooth headphone/speaker implementation that is hijacking my audio output, without breaking "Find My", Airdrop or Wi-Fi geolocation.

AirPods can stay connected, which is maybe unfair towards third-party vendors, but they also don't insist on connecting to all paired devices at once and usually pick the two wrong ones and steal audio from whoever in my home is using that device at the moment.

Re:Bluetooth keystroke-injection in Android, Linux, macOS an... by mejutoco on Saturday December 16, 2023 @02:44PM (#38667106)
On iOS you can scroll diagonally from top right corner and one more click to disable it.

It is not permanent and comes back when disabling airplane mode, in addition to updates too.

Re:Bluetooth keystroke-injection in Android, Linux, macOS an... by diroussel on Saturday December 16, 2023 @04:00PM (#38667629)
The toggle in control centre does not disable Bluetooth. It disconnects Bluetooth until tomorrow. It even says that in control centre when you tap on the toggle.
Re:Bluetooth keystroke-injection in Android, Linux, macOS an... by fellerts on Saturday December 16, 2023 @07:05AM (#38663649)
Seems like the flag defaults to true since December 7 (Fedora 38) with bluez v5.70-4:

    $ rpm -q --changelog bluez | grep CVE-2023-45866 -C1
    * Thu Dec 07 2023 Peter Robinson <[email protected]> - 5.70-4
    - Add mitigation for CVE-2023-45866
Re:Bluetooth keystroke-injection in Android, Linux, macOS an... by jdfedgon on Saturday December 16, 2023 @08:52AM (#38664189)
This seems correct, however 'ClassicBondedOnly=true' is commented out in '/etc/bluetooth/input.conf' in Fedora 39 with bluez v5.70-4 anyways.
Re:Bluetooth keystroke-injection in Android, Linux, macOS an... by maxerickson on Saturday December 16, 2023 @09:57AM (#38664661)
Presumably so you can't turn it off simply by uncommenting the line. The default is defined in some source file.
Re:Bluetooth keystroke-injection in Android, Linux, macOS an... by creer on Saturday December 16, 2023 @10:44PM (#38670155)
Mine says

  # Defaults to true for security.
  #ClassicBondedOnly=true
(which is the patch indicated)
Re:Bluetooth keystroke-injection in Android, Linux, macOS an... by maxerickson on Sunday December 17, 2023 @10:04AM (#38673294)
I don't follow your point.
Re:Bluetooth keystroke-injection in Android, Linux, macOS an... by creer on Sunday December 17, 2023 @02:17PM (#38675500)
I was answering yours (perhaps reading it not the way you intended) and the grand parent's "HOWEVER 'ClassicBondedOnly=true' is commented out". No big deal. This style of option and comment and commenting out the option (default or not) is autopilot common - no special intent here.
Re:Bluetooth keystroke-injection in Android, Linux, macOS an... by cozzyd on Saturday December 16, 2023 @05:18PM (#38668279)
Generally commented out lines are defaults, right?
Re:Bluetooth keystroke-injection in Android, Linux, macOS an... by creer on Saturday December 16, 2023 @10:47PM (#38670171)
Often yes, but not always. Here both the default is mentioned and a commented line is offered (I like commented lines as they show a proper format).

  # Set idle timeout (in minutes) before the connection will
  # be disconnect (defaults to 0 for no timeout)
  #IdleTimeout=30
Re:Bluetooth keystroke-injection in Android, Linux, macOS an... by tesdinger on Saturday December 16, 2023 @08:47AM (#38664152)
I don't have an input.conf file on my OnePlus phone. There are bt_stack.conf and bt_did.conf in the same directory though.
Re:Bluetooth keystroke-injection in Android, Linux, macOS an... by galangalalgol on Saturday December 16, 2023 @10:25AM (#38664870)
Any idea how to tell if grapheneOS fixed this in its sunfish (4a) branch? I'm stuck on android 13 with a 4a and I need Bluetooth to open my car door. If graphene fixed this, it would spur me to finally move to it. I just can't justify getting a new phone when this one works fine.
Re:Bluetooth keystroke-injection in Android, Linux, macOS an... by lofaszvanitt on Saturday December 16, 2023 @11:23AM (#38665402)
I always hated that after an ios update bluetooth always came back as enabled... when I never actually used it... this puzzled me for a long time......

also, the emmentaler like wifi cannot be fully turned off frmo the control panel either

Re:Bluetooth keystroke-injection in Android, Linux, macOS an... by hmottestad on Monday December 18, 2023 @05:16PM (#38689159)
You can turn off WiFi from the settings. Dunno it it’ll come back on again after updating.

The control panel only disables WiFi until the next day.

Re:Bluetooth keystroke-injection in Android, Linux, macOS an... by lofaszvanitt on Tuesday December 19, 2023 @03:59PM (#38701460)
Theoretically, you can.
Re:Bluetooth keystroke-injection in Android, Linux, macOS an... by hmottestad on Wednesday December 20, 2023 @05:14AM (#38707086)
What can you do theoretically?
Re:Bluetooth keystroke-injection in Android, Linux, macOS an... by horusthegame on Saturday December 16, 2023 @01:33PM (#38666585)
Ubuntu 2022, the default appears to be true already:

# Defaults to true for security. #ClassicBondedOnly=true

Re:Bluetooth keystroke-injection in Android, Linux, macOS an... by moritzwarhier on Saturday December 16, 2023 @03:26PM (#38667387)
iOS: https://support.apple.com/en-us/HT214035

macOS: https://support.apple.com/en-us/HT214035

Both say:

> Impact: An attacker in a privileged network position may be able to inject keystrokes by spoofing a keyboard Description: The issue was addressed with improved checks.

Re:Bluetooth keystroke-injection in Android, Linux, macOS an... by lannisterstark on Saturday December 16, 2023 @05:36PM (#38668411)
>disable Bluetooth when you're not using it (but you'll be vulnerable while you are

As someone with bluetooth devices (Smartwatch, buds, headphones, glasses etc) this is...difficult lol

Re:Bluetooth keystroke-injection in Android, Linux, macOS an... by eternityforest on Saturday December 16, 2023 @08:11PM (#38669462)
I'm really glad I went with a Pixel!