seemoo-lab / openhaystack

Build your own 'AirTags' 🏷 today! Framework for tracking personal Bluetooth devices via Apple's massive Find My network.

Home Page:https://owlink.org

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Mail Plug-In

Logy2470 opened this issue · comments

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.

commented

This happens on every mail update sadly

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

commented

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

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.

commented

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)

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.

@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)?

commented

@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 #63

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

commented

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

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).

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

commented

@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:

  • install the requirements (preferably through pipenv)
  • in the pipenv, run python scripts/get_icloud_key.py and paste the output (icloud_key = ...) into config.toml
  • run python scripts/locations.py --key-id <your key id> --private-key <your private key>

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

I'll try that, thank you!

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.

commented

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 ?

commented

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.

commented

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

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