xfarrow / locatemydevice

Application miming Google's Find My Device through SMS
GNU General Public License v3.0
109 stars 11 forks source link

Feedback #2

Closed SloppyPuppy closed 1 year ago

SloppyPuppy commented 1 year ago

Samsung Galaxy A41/DS - Android 10

Love the concept, however I do have a couple of issues:

Thank you for the hard work, cool app.

xfarrow commented 1 year ago

Hi, thank you for your interest! Let me address this issue:

Have a nice day!

SloppyPuppy commented 1 year ago

Epic, props to you, really good idea for an app, also to note, I think password should be visible inside the app, because it would be unsecure to use a password somebody uses usually in an sms (poor to no encryption), and besides if you are able to reconfigure the app you already are able to control the device.

xfarrow commented 1 year ago

Hi @SloppyPuppy, thank you for your yet another feedback! Yes, I should write in the readme that it's suggested to change password each time you use it 'cause SMSs do not provide any encryption, hence, a simple MiM after the SMS is sent would allow an attacker to take control of the device and/or get sensitive data such as location.

I am afraid I did not well understand what you mean by showing the password inside the app: when actually writing it or showing it all the time? If you mean the latter, I don't think it's possible: the password gets stored as an hash. This has been done to protect users who have the so-called root so even if other apps have the possibility to access locatemydevice's private files, they won't be able to obtain the password. If you mean the former, I will take this suggestion in consideration! Thank you :100:

SloppyPuppy commented 1 year ago

Oh, I didn't read through that part, but I guessed it was stored as a hash, but it might be useful to just store it as cleartext in the app, but I am not quite sure.

Thank you for such hard work and being such a responsive dev, well I honestly am not sure what the optimal solution would be.

A password sent through sms is unsecure, an OTP is too complicated, and could possibly stop working if the phone date/time were to change. Very interesting project nonetheless, I downloaded studio, and although I have basically no android studio experience and very little knowledge in java ima think through some features and maybe implement something over the weekend.

Still juggling ideas in my head while writing, again a bit of a complicated one but using a keypair to encrypt messages to the phone might be an idea, but would have to carefully choose the cipher. ex. (activation command header) (cipher text that contains auth info + command) so the workflow would be listen for text messages with the given str(activation command) , then decrypt the following block using the private key from the generated keypair.

Also to note, very interestingly, alot of github projects have now been coming up in my google news feed, included but not limited to: this, PS5 arbitrary code exploit, the M1 silicon hardware vuln, and other fun hacky tools/projects.

And once again, thanks for contributing to foss.

xfarrow commented 1 year ago

Thank you for your valuable ideas! I will think about how to create an even more secure password exchange.

The best part of writing FOSS is the community sharing ideas and/or creating own forks, thank you!