seemoo-lab / openhaystack

Build your own 'AirTags' 🏷 today! Framework for tracking personal Bluetooth devices via Apple's massive Find My network.
https://owlink.org
GNU Affero General Public License v3.0
8.03k stars 428 forks source link

Mail Plug-In #203

Closed Logy2470 closed 8 months ago

Logy2470 commented 1 year ago

It says "Cannot Connect to the Mail Plug-In. Open Apple Mail and Make sure the plug-in is enabled." and I can't figure out how to change it.

linusheck commented 1 year ago

This happens on every mail update sadly

Sn0wfreezeDev commented 1 year ago

The issue is also that from the next Apple macOS Mail Plug-Ins are no longer supported.

linusheck commented 1 year ago

I'm pretty sure it's possible to use the API directly right? There are multiple examples flying around the issues.

Sn0wfreezeDev commented 1 year ago

The app accesses the API directly. The issue is that you need the iCloud tokens to do that. You can only generate these tokens over a private Apple API or by using a hack (currently done on Linux) that uses the Apple Music app for Android to generate these tokens.

etalot commented 11 months ago

The issue is also that from the next Apple macOS Mail Plug-Ins are no longer supported.

So, is this project died??

I just compiled latest version in Xcode and does't work. I have Mac OS 13.4 and Mail Version 16.0 (3731.600.7)

skorokithakis commented 10 months ago

Can those of us who use Linux generate the tokens and use the app, then? It would be nice to get some instructions on how to do this, use of Linux/Android isn't an issue.

skorokithakis commented 10 months ago

@Sn0wfreezeDev Would it be possible to get these keys from the Linux/Android hack and add them to the mobile app directly (and not need the Mac proxy)?

linusheck commented 10 months ago

@Sn0wfreezeDev Would it be possible to get these keys from the Linux/Android hack and add them to the mobile app directly (and not need the Mac proxy)?

No. See https://github.com/seemoo-lab/openhaystack/issues/63

skorokithakis commented 10 months ago

Ah, so there's no way to use the project currently?

linusheck commented 10 months ago

There is code that can fetch the locations without the app on a Mac. For instance, for our service we have this repo: https://gitlab.com/eselac/openhaybike

skorokithakis commented 10 months ago

Sorry, I mean even on a Mac. It doesn't seem like Mail will load the plugin for me (it never appears in the list).

skorokithakis commented 10 months ago

@glatteis is there any documentation for that project? I can't find anything in that repo.

linusheck commented 10 months ago

@glatteis is there any documentation for that project? I can't find anything in that repo.

There isn't currently, as we just use that for our own purposes and there was no reason yet to add some (not really intended for direct public use), but I can give you a small walkthrough that should fetch locations for a given tracker:

this should fetch locations for a tracker (you can still generate the trackers in the open haystack app, don't trust the generate_credentials script, not sure if that works) - if you have any trouble please send me a message :)

notice that it doesn't have a license right now, please respect that - because I think there's some code in there that I haven't credited correctly. need to do that now that I publicly linked it

skorokithakis commented 10 months ago

I'll try that, thank you!

skorokithakis commented 10 months ago

I can confirm that the OpenHaybike code works great, so presumably it can be implemented into OpenHaystack without needing to rely on the Mail plugin.

23tom2323 commented 10 months ago

I'm currently testing openhaybike.

I have the icloud_key. But I can't get any further.

Where can I find the config.toml where the icloud_key should go in?

And python scripts/locations.py --key-id <your key id> --private-key <your private key> is also not clear yet.

Where can I find the your key id and your private key ?

linusheck commented 10 months ago

If you write stuff in here it pings all users, please send me questions about the openhaybike repo directly. Just making this more clear:

I'm currently testing openhaybike.

I have the icloud_key. But I can't get any further.

Where can I find the config.toml where the icloud_key should go in?

You create the config.toml yourself, just in the root folder of openhaybike. Or run cp config.toml.sample config.toml and paste in your key.

And "python scripts/locations.py --key-id --private-key " is also not clear yet.

Where can I find the and ?

Your tracker has a key id and a private key - you pass them as arguments to the script. Openhaybike doesn't create the tracker for you, you need to follow openhaystack's instructions for that.

bbsan2k commented 10 months ago

I think the base of the authentification stuff is a little bit better documented here: https://github.com/Hsn723/MMeTokenDecrypt

In fact it relies on a vulnerability in macOS which is already present since MMe(?) - but if it’s still present it should be pretty straightforward to implement it in openhaystack

Sn0wfreezeDev commented 8 months ago

I just updated the OpenHaystack code to support the Mail plugin on 13.5 and 13.6