News for hackers. Stuff that matters.
Re:Extracting Data from an Old iOS App Broken by iOS 14.5 by Daedren on Friday May 28, 2021 @07:02AM (#27313917)
Apple's been automatically updating apps with these new signatures by themselves. You'll see changelogs with the following "This app has been updated by Apple to use the latest signing certificate."

I believe this is the case of an app that has been removed from the App Store though, which will receive no such support.

Re:Extracting Data from an Old iOS App Broken by iOS 14.5 by Cthulhu_ on Friday May 28, 2021 @08:06AM (#27314384)
Must have to do with Apple's change over time that you no longer submit the installable app to them for review, but an intermediate package with code and assets for multiple CPU architectures and screen resolutions; that means they can do the final packaging before installation. Smart.
Re:Extracting Data from an Old iOS App Broken by iOS 14.5 by callmeal on Friday May 28, 2021 @10:04AM (#27315450)
wow. This means that there is no guarantee that the code I published is the code that gets installed. Does no one else have a problem with this?
Re:Extracting Data from an Old iOS App Broken by iOS 14.5 by 1f60c on Friday May 28, 2021 @11:23AM (#27316473)
If you do not trust Apple, why are you wasting time writing apps for their platform?
Re:Extracting Data from an Old iOS App Broken by iOS 14.5 by drewzero1 on Friday May 28, 2021 @12:31PM (#27317429)
I'm not a published app developer, but even if I don't trust Apple hundreds of millions of users do. If I wanted to market to those users, or if I worked for a company that wanted to, I would have to suck it up and deal with Apple and their platform in order to reach the users.
Re:Extracting Data from an Old iOS App Broken by iOS 14.5 by Brian_K_White on Friday May 28, 2021 @03:27PM (#27319501)
Not a useful question.

Also, trustworthy people do not ask you to trust them.

I am honest and trustworthy, and so if you gave me the pin to your debit card to go buy something for you, I would not mis-use that information.

But because I am honest, I would never ask you to trust me with your pin. If we were standing next to each other at a pos, I actively look away when you start to type so I don't even find it out by innocent accident.

Honest people take the trouble to figure out some way to get a job done without requiring you to trust them, even if you would have, even if it's less convenient for you both.

In fact, I think that one thing is probably the single biggest proof of trustworthiness.

A person or organization that I've never met before and and does not ask me to trust them, is more trustworthy than one that I've known for years and have a long history of good interactions with.

Re:Extracting Data from an Old iOS App Broken by iOS 14.5 by nodamage on Friday May 28, 2021 @04:29PM (#27320103)
I mean, since Apple controls the entire OS there is already no guarantee that the code that gets installed is the code that gets executed. In other words, you already had that problem. (Of having to trust Apple in the first place.)
Re:Extracting Data from an Old iOS App Broken by iOS 14.5 by Brian_K_White on Friday May 28, 2021 @03:16PM (#27319380)
Many people have voiced exactly this problem.

And I would agree it should be outrageous and intolerable.

I wonder if there might be some way for a developer to post their own hashes somewhere, but then there's no good way for an end user to use them to verify their phone.

You could post a web page that reports that Apple has not modified the contents of your app, or a site could do that for many apps, by downloading the Apple-repacked app and checking it, but you could only check the copy of the app that the site downloaded.

It would not prove that Apple didn't modify the individual copy of the app residing on anyones phone.

I don't know the details of ios userspace, but I extremely doubt it's possible for the browser or any other app to read some other apps files and uload them to a site to have them checked. So you couldn't make a 3rd party site that says "check my phone".

Maybe such a report could be made by reading the app out of an unencrypted backup?

Re:Extracting Data from an Old iOS App Broken by iOS 14.5 by atatatat on Friday May 28, 2021 @04:24PM (#27320041)
> I wonder if there might be some way for a developer to post their own hashes somewhere

Twitter, JSON/ATOM/RSS feeds, apps in privately hosted F-Droid compatible repos...etc

Re:Extracting Data from an Old iOS App Broken by iOS 14.5 by derefr on Friday May 28, 2021 @12:33PM (#27317450)
Apple could publish a builder binary with which you could verify that your submitted code gets compiled+linked+thinned into the same thing you get from the App Store (minus the signature.)

They haven't — which is bad — but they could, and that would be a guarantee. Same as you get with reproducible binary packages in Debian.

Re:Extracting Data from an Old iOS App Broken by iOS 14.5 by rlf_dev on Friday May 28, 2021 @10:18AM (#27315594)
App Thinning removes unused slices on download, it doesn't change compiled code.
Re:Extracting Data from an Old iOS App Broken by iOS 14.5 by comex on Friday May 28, 2021 @01:17PM (#27318051)
But if you enable bitcode, that does involve the server recompiling your code for you.
Re:Extracting Data from an Old iOS App Broken by iOS 14.5 by rlf_dev on Friday May 28, 2021 @01:38PM (#27318295)
Sure, but it's still your own LLVM IR that's being compiled, just on their end and not yours.
Re:Extracting Data from an Old iOS App Broken by iOS 14.5 by atatatat on Friday May 28, 2021 @04:22PM (#27320016)
Oh, this is too good.
Re:Extracting Data from an Old iOS App Broken by iOS 14.5 by Dah00n on Friday May 28, 2021 @11:02AM (#27316195)
How is this different than when Google wants to do this? Because as far as I remember the consensus when the topic was last posted on HN was pretty clear that this was Google doing Bad Evil Things (as you have no guarantee that the code you submit is the code published).
Re:Extracting Data from an Old iOS App Broken by iOS 14.5 by toast0 on Friday May 28, 2021 @11:57AM (#27316973)
On iOS, the security model has always been Apple signs the code, and no cryptographic protection from Apple modifying it.

On Android, the original security model was that the developer signs the code, preventing a distributor from modifying it (as long as the signature checks are sound).

Apple's system is worthy of complaining about, but you can only bring it up so often. Google taking Android backwards in this regard is worth making a fuss over; but Google is likely to just steamroll through.

Re:Extracting Data from an Old iOS App Broken by iOS 14.5 by pkamb on Friday May 28, 2021 @01:39PM (#27318313)
I received an email from Apple regarding these updates, and posted it on SO looking for more information:

https://stackoverflow.com/questions/67067587/app-store-app-n...

I just checked the App Store for the first time since that update. The version number and release date remain the same. The only visible change is the new release text prepended with:

> This app has been updated by Apple to use the latest Apple signing certificate.

Re:Extracting Data from an Old iOS App Broken by iOS 14.5 by busymom0 on Friday May 28, 2021 @07:29AM (#27314092)
Yep. I received that in an email from Apple couple months ago for an old app I have on the store and since it had been working just fine for 3 years, I hadn't updated it. I decided to update it just in case the new signature would break something.

Link for those curious:

https://www.macrumors.com/2021/04/16/psa-apple-updating-old-...

Re:Extracting Data from an Old iOS App Broken by iOS 14.5 by jmercouris on Friday May 28, 2021 @06:18AM (#27313643)
Perhaps the real lesson to be learned is do not store your data in a place that you have no control over it.
Re:Extracting Data from an Old iOS App Broken by iOS 14.5 by ascagnel_ on Friday May 28, 2021 @09:34AM (#27315131)
More accurately: do not store your data in a proprietary format. The issue isn't that the app stopped working, the issue is that the app changed from a single-purchase to a subscription model, and the last version of the single-purchase app is no longer supported.

If the data was freely accessible, you could at least pull it out and migrate to an app with a more user-friendly business model.

Re:Extracting Data from an Old iOS App Broken by iOS 14.5 by ihuman on Friday May 28, 2021 @11:01AM (#27316183)
Based on the image at the end of the page, it looks like the app does allow you to export the data in a non-propriety format. The problem was that the app couldn't launch, so the author couldn't export the data.
Re:Extracting Data from an Old iOS App Broken by iOS 14.5 by pintxo on Friday May 28, 2021 @07:42AM (#27314173)
Most people probably had never control over their local desktop system.
Re:Extracting Data from an Old iOS App Broken by iOS 14.5 by swiley on Friday May 28, 2021 @09:58AM (#27315375)
Pre Windows 10 they had way more control than they do with phones. Microsoft actually respected user intentions to some degree by comparison.
Re:Extracting Data from an Old iOS App Broken by iOS 14.5 by pintxo on Friday May 28, 2021 @10:54AM (#27316048)
It's more that a lot of people seem to have zero mental model about how the file system in their computer works (files, folders, paths, ...). Let alone their computer as a whole.
Re:Extracting Data from an Old iOS App Broken by iOS 14.5 by goldenkey on Friday May 28, 2021 @10:43AM (#27315908)
Windows 10 telemetry and whatnot can all be turned off. It's still the desktop OS it always was, just with some extra crapola (Cortana) that iOS millennials expect. At least Windows isn't sending a hash of every file I open to their servers like Apple is...
Re:Extracting Data from an Old iOS App Broken by iOS 14.5 by swiley on Friday May 28, 2021 @12:01PM (#27317034)
I have a computer science degree, and have gone through periods where I've maintained custom Linux distros built from scratch for myself. I'm not able to keep up with all of the newly discovered (and subsequently disabled) methods for disabling all of the online services in windows 10.

I didn't mention OSX because I didn't want to be overly verbose but yeah any non-free OS at this point has pretty much no respect at all for privacy or user freedom.

Re:Extracting Data from an Old iOS App Broken by iOS 14.5 by goldenkey on Sunday May 30, 2021 @07:46AM (#27332555)
I have a master degree in CS. There's really not much of a learning curve to disabling telemetry on Windows or OSX. It requires some labor, but so does any kind of technological upkeep.
Re:Extracting Data from an Old iOS App Broken by iOS 14.5 by toast0 on Friday May 28, 2021 @11:59AM (#27317002)
I think that's not every file, but every executable, right? And doesn't Microsoft do that and call it SmartScreen?
Re:Extracting Data from an Old iOS App Broken by iOS 14.5 by forgingahead on Friday May 28, 2021 @12:41PM (#27317576)
At least Windows isn't sending a hash of every file I open to their servers like Apple is.

Wait, what is Apple doing? Which Apple OS is sending a hash of every file that is opened? And can this be disabled?

Re:Extracting Data from an Old iOS App Broken by iOS 14.5 by _jal on Friday May 28, 2021 @01:54PM (#27318470)
It is a hash of executables, not files. It does include shell scripts.

The intent seems to be malware prevention, but yes, the implementation is terrible from a privacy perspective. Far better would be a local bloom filter or similar.

But the bit about Windows being more respectful of privacy is not correct, or at least substantially more complicated. For instance, if you run 'full' telemetry, Microsoft can, in fact, pull your documents from your machine and execute things on it remotely, something I've seen no indication Apple does.

https://answers.microsoft.com/en-us/insider/forum/insider_wi...

Re:Extracting Data from an Old iOS App Broken by iOS 14.5 by ValentineC on Friday May 28, 2021 @01:16PM (#27318042)
It's because of app notarisation. Here's one of the writeups on it: https://lapcatsoftware.com/articles/catalina-executables.htm...
Re:Extracting Data from an Old iOS App Broken by iOS 14.5 by brirec on Friday May 28, 2021 @06:31AM (#27313724)
There are reports that iOS 14.5 changed some sort of signature system, requiring people that first installed certain apps from long enough ago to redownload the app from the App Store. Chances are that if you delete and redownload Momento Classic from your current iPhone it’ll “just work.”
Re:Extracting Data from an Old iOS App Broken by iOS 14.5 by xuki on Friday May 28, 2021 @07:02AM (#27313918)
Don't do that, that'll delete all the data as well. Try to "Offload app" instead, the phone will delete the app but keep the data.
Re:Extracting Data from an Old iOS App Broken by iOS 14.5 by ChrisMarshallNY on Friday May 28, 2021 @09:23AM (#27315033)
This is a nasty problem that has been around for decades: Data storage rot.

Here's a rather embarrasing example of data storage rot[0].

> Don't do that, that'll delete all the data as well.

Not necessarily, but it depends on the app.

I use the User Defaults dictionary all the time, for things like operational prefs. I even have an SPM module that I wrote for it[1]. User Defaults gets deleted with the app, unless you do some hacking to sync it somewhere else.

I think that storing as an app file may also get deleted when the app is deleted.

We're not supposed to use that for persistent data, though. Apple provides Core Data for that kind of thing (a mixed bag). Even that needs to be done correctly, like storing using iCloud (Disclaimer: I have not chosen to use Core Data for my apps, so I can't speak to it authoritatively).

Or you could do what I do: Use a server.

[0] https://www.theguardian.com/uk/2002/mar/03/research.elearnin...

[1] https://riftvalleysoftware.com/work/open-source-projects/#RV...

Re:Extracting Data from an Old iOS App Broken by iOS 14.5 by ericlewis on Friday May 28, 2021 @11:31AM (#27316583)
keychain persists, user defaults won't, if you store files in the documents directory it will persist if offloading the application. CoreData will NOT afaik, unless you choose to define where it persists. I'd also say that CoreData isn't exactly only meant for persisting data either - it can do that, but first and foremost it is an object graph.

more fun facts: user defaults has a limit to how big it can be. And I also think that your library would benefit from using actual types instead of Any, you can actually define this so long as the value is Codable, generics would make the library nicer to work with instead of requiring the dev to cast the type themselves. You basically just switch out Any for a generic and have the Generic conform to Codable. If targeting an iOS version that is 14+ I would just recommend using the AppStorage or SceneStorage property wrappers.

Re:Extracting Data from an Old iOS App Broken by iOS 14.5 by ChrisMarshallNY on Friday May 28, 2021 @11:48AM (#27316835)
Hey, thanks for that! I can probably require Codable (even though it has been around for a while, I've only been using Codable a few months).

I'll probably do that. I started it years ago, so it has a lot of legacy. I will probably do a refactor, when I come up for air. A couple of my libs could use a facelift.

Re:Extracting Data from an Old iOS App Broken by iOS 14.5 by yalok on Friday May 28, 2021 @01:20PM (#27318094)
Thank you, this saved my day!!! I had very similar problems with MiniHack app on my older iPhone, that it stopped working after iOS 14.5 upgrade, but which still worked on a newer iPhone.

Offloading and reinstalling the app fixed the problem!

Re:Extracting Data from an Old iOS App Broken by iOS 14.5 by daxelrod on Friday May 28, 2021 @02:21PM (#27318780)
Thank you, this is fantastic advice that just worked for me to be able to redownload an old app with a new signature without losing its data.
Re:Extracting Data from an Old iOS App Broken by iOS 14.5 by swiley on Friday May 28, 2021 @10:00AM (#27315393)
Why can't they just have a home folder to keep their stuff in? Yeah all the apps could read it so don't put malware on your computer.
Re:Extracting Data from an Old iOS App Broken by iOS 14.5 by yalok on Friday May 28, 2021 @01:27PM (#27318173)
I had a very similar problems with MiniHack app on my older iPhone, that it stopped working after iOS 14.5 upgrade, but which still worked on a newer iPhone 11 that also runs 14.5.

Came to these comments specifically to find a reason for that (reinstalling an app was not an option because I think the app no longer is visible in the App Store).

Thanks to @xuki, I tried offloading and reinstalling the app, and it fixed the problem!

Re:Extracting Data from an Old iOS App Broken by iOS 14.5 by wrboyce on Sunday May 30, 2021 @06:08AM (#27332082)
FYI you can re-download the app by going to your purchase history (App Store, tap your photo top right, then “Purchased”).
Re:Extracting Data from an Old iOS App Broken by iOS 14.5 by Accacin on Friday May 28, 2021 @10:58AM (#27316137)
To be honest, this is another reason I moved away from Apple back to a Google Pixel running CalyxOS. I'm choosing to only install banking apps from Aurora and everything else is coming straight from fdroid. A massive thank you to Calyx and also to all the fdroid developers for making my life more simple and privacy focused.
Re:Extracting Data from an Old iOS App Broken by iOS 14.5 by kiririn on Friday May 28, 2021 @11:35PM (#27322834)
OTOH it is the reason I moved to iOS. Privacy is important, but so is having full access to your own data. You don’t get that on Android these days without rooting - adb backup barely works and more than half of apps opt out
Re:Extracting Data from an Old iOS App Broken by iOS 14.5 by sosodev on Friday May 28, 2021 @12:37PM (#27317506)
Similar thing: https://www.youtube.com/watch?v=341IsnWdaT4

It's a video about the efforts to preserve an old iOS App that had been broken by new updates and removed from the app store

Re:Extracting Data from an Old iOS App Broken by iOS 14.5 by busymom0 on Friday May 28, 2021 @07:32AM (#27314111)
Can someone tell me what app this is in the article? It doesn't look like the MacOS App Store but looks similar.

https://tidbits.com/uploads/2021/05/Setapp-sqlite-640x469.jp...

Re:Extracting Data from an Old iOS App Broken by iOS 14.5 by mosselman on Friday May 28, 2021 @07:41AM (#27314172)
Re:Extracting Data from an Old iOS App Broken by iOS 14.5 by busymom0 on Friday May 28, 2021 @08:08AM (#27314397)
Thanks. So it seems like it's just an App Store with a subscription?
Re:Extracting Data from an Old iOS App Broken by iOS 14.5 by haswell on Friday May 28, 2021 @08:16AM (#27314459)
Essentially, yes. I subscribed to Setapp as soon as I realized they have several apps I already had individual subscriptions for (like Ulysses), and Setapp is cheaper. I’m a happy customer.
Re:Extracting Data from an Old iOS App Broken by iOS 14.5 by ArchOversight on Friday May 28, 2021 @05:15PM (#27320612)
Yes, and for the value of the software it is well worth it! I had paid for several apps standalone, and I now get them through Setapp (including updates) and pay far less!

It's great!

Re:Extracting Data from an Old iOS App Broken by iOS 14.5 by cosmotic on Friday May 28, 2021 @03:57PM (#27319774)
Sounds like a good user story.

As an application user, I want to start a career as a software engineer, so that I may save my data from a deliberately crippled application.

Re:Extracting Data from an Old iOS App Broken by iOS 14.5 by Brian_K_White on Friday May 28, 2021 @02:52PM (#27319143)
"I have no one to blame but myself" is not the evaluation I come away with.
Re:Extracting Data from an Old iOS App Broken by iOS 14.5 by nodamage on Friday May 28, 2021 @04:36PM (#27320162)
The developer had already released a new version of the app that is compatible with iOS 14.5, the problem was the user was using a very old version from 2014. Expecting a 7-year old build of an app to continue to work on a modern version of iOS isn't really realistic, especially considering how often iOS introduces breaking changes.
Re:Extracting Data from an Old iOS App Broken by iOS 14.5 by Brian_K_White on Saturday May 29, 2021 @09:54PM (#27329945)
I use 30 and 40 year old software all the time, and more importantly, the data from 30 and 40 year old software all the time, with no problem at all.

There is no compatibility or obsolescence problem with ios, ios apps, or most importantly the data in ios apps, that is not artificially created by people who benefit from such problems.

Expecting a 7 year old build of anything to still work is entirely "realistic".

Re:Extracting Data from an Old iOS App Broken by iOS 14.5 by hrbf on Friday May 28, 2021 @11:54AM (#27316919)
This is exactly why I have become increasingly wary of any new app to store any kind of long-term data in. The fact that an OS update breaks an app and the developer is unwilling or unable to fix it is unacceptable in my book.