Earlier quoted context omitted.
At the very least, the privacy-respecting solution would be to upload hashes and only upload libraries once some critical mass of users had reported the hash along with a bug. Even then, you would only upload the files themselves from some capped number of users.
That makes no difference from a privacy point of view but would be more respectful of people’s bandwidth limits.
Facebook scans system libraries on Android and uploads them to their server
171–180 of 188 posts
Re: Facebook scans system libraries on Android and uploads them to their server
#172Re: Facebook scans system libraries on Android and uploads them to their server
#173I was going to say this isn’t a big deal but copying and uploading the libraries is actually illegal (copyright violation) and users likely can’t even consent to this even if it is in the Facebook ToS as many android phones contain proprietary libraries not licensed for redistribution. The creators of those various libraries should have a valid legal case against Facebook here, if they want to exercise it. I doubt an…
At first glance, the amount of damage being done is close to nil — even if they reverse engineer received files to steal trade secrets therein (lol), it is hard to pinpoint specific amount of harm, dealt to the copyright owners.
But actually... why are Facebook people doing that? If I were to wager a guess, Facebook needs those files to create exact copies of user systems to debug. In other words, they are trying to save up on buying real devices for their test lab! Using "pirated" copies of libraries to spin up testing VMs is most likely cheaper than owning lots of real smartphones with all available firmware versions. And also illegal.
I wonder if they gauged possibility of being sued for this along with possible legal expenses and found that it is still cheaper than buying those devices themselves.
Re: Facebook scans system libraries on Android and uploads them to their server
#174Aside from fingerprinting, what other nefarious uses could this have in theory?
They already have your username. You logged into the app. What other level of fingerprinting to do they need?
Re: Facebook scans system libraries on Android and uploads them to their server
#175Earlier quoted context omitted.
They already have your username. You logged into the app. What other level of fingerprinting to do they need?
I meant if they gave away all of this data about your device then someone on a different app could identify you by comparing.
Re: Facebook scans system libraries on Android and uploads them to their server
#176Earlier quoted context omitted.
How would uploading the library help with that?
It's almost infinitely easier to track a library update if you have the actual libraries on hand to compare, rather than two hashes.
Re: Facebook scans system libraries on Android and uploads them to their server
#177It’s is extremely difficult to diagnose Android native code crashes. Unlike iOS where it is both straightforward to unwind on the phone, and where Apple makes the iOS system symbols available for symbolizing system frames in a stack trace, neither of these things are true on Android.
My first approach for my company’s Android crash manager SDK was to use Google Breakpad. This works by capturing a snapshot of stack memory at the time of the crash. Unwinding then occurs on a backend server. But to unwind successfully, absent a frame pointer register, you need unwind info to provide to the unwinder. This simply isn’t available except for Nexus devices for which you can download the system images from Google. And even on devices where the code was compiled with a frame pointer, you still need symbols so you know what each frame’s function was.
Another approach is to unwind on the device. In my experience, using libunwind, this is successful about 50% of the time. It also risks hanging the app, which looks even worse to the user than just crashing.
Years ago, I briefly considered having our crash SDK, optionally and with user consent, extract the symbols and unwind data from the libraries on the device and upload them to our backend. I dismissed it as too expensive to do on a user’s phone.
Instead, we crowd source as much as we can from our employee phones.
Android native code crashes remain a bear to diagnose. Especially annoying since Android itself collects a ton of diagnostic data about your app when it crashes - it just doesn’t make it easily, or in some cases at all, accessible to the app itself.
Re: Facebook scans system libraries on Android and uploads them to their server
#178I was going to say this isn’t a big deal but copying and uploading the libraries is actually illegal (copyright violation) and users likely can’t even consent to this even if it is in the Facebook ToS as many android phones contain proprietary libraries not licensed for redistribution. The creators of those various libraries should have a valid legal case against Facebook here, if they want to exercise it. I doubt an…
> copying and uploading the libraries is actually illegal Is it through? If I'm uploading a library to virustotal to check if it's a known piece of malware, am I breaking the law if it was clean?
Absent a rather dubious user agreement allowing Facebook to copy all the data off your phone, Facebook does not have that fair use right. Nor is it likely even remotely ethical to be doing this without explicitly notifying the user. So, illegal and unethical, but I guess unless some PR firm is paying the news media to be outraged about it, they're not likely to care.
Re: Facebook scans system libraries on Android and uploads them to their server
#179Earlier quoted context omitted.
That's why telemetry uploads metadata, not actual binaries. If you don't upload other's files, you don't need to ask permission to do so.
That seems like a stretch. Metadata is still data.
Re: Facebook scans system libraries on Android and uploads them to their server
#180Isn’t this potentially a copyright violation? Especially on Qualcomm devices (such as the Jolla phone) Qualcomm explicitly forbids you from distributing their OpenGL drivers. So if facebook copies libGLESv2.so off from the device they are potentially performing straight piracy at that point. If I recall the damages demanded by RIAA it was several hundred k per infringement.
The exact details would depend on what they do with the uploads and the specific countries they're uploaded to/from. I'd presume they do this for security and debugging purposes, not to 'steal' the libraries. Like a virus company uploading samples of 'suspicious' .dlls for analysis, this looks like a fair use exception.