Most active commenters
  • nmg(3)
  • jachee(3)
  • iso1631(3)

←back to thread

2603 points mattsolle | 82 comments | | HN request time: 2.504s | source | bottom
1. modeless ◴[] No.25075336[source]
You've got to be kidding me. When Apple's servers are down, all Macs worldwide start freezing randomly? My XCode is hanging during builds, is this why?

This code signing enforcement stuff has gone way too far. Heads should roll for this.

replies(7): >>25075369 #>>25075380 #>>25075549 #>>25075960 #>>25076693 #>>25079741 #>>25080072 #
2. augustl ◴[] No.25075369[source]
That's correct. AFAIK Catalina will check online for everything, even binaries you compile yourself.
replies(2): >>25075839 #>>25079574 #
3. twoodfin ◴[] No.25075380[source]
Almost certainly so. Apple has built chains of certificate trust very deep into the OS, along with apparently an assumption that this particular revocation service check is reliable & fast enough to call out to the network a lot.
replies(1): >>25077062 #
4. p1necone ◴[] No.25075549[source]
Wait what happens if you don't have an internet connection? Can Macs not be used offline any more, surely that's still a relatively common use case for a laptop even today in a lot of places?
replies(7): >>25075778 #>>25075945 #>>25076204 #>>25078280 #>>25078541 #>>25081169 #>>25083116 #
5. josephcsible ◴[] No.25075778[source]
My understanding is that if you're offline, it skips this check and everything works fine. The reason this is a big deal is that the problem's on their end, so you're not offline, so it keeps trying and waiting instead of just letting you skip the check.
replies(3): >>25075909 #>>25076399 #>>25076495 #
6. Aperocky ◴[] No.25075839[source]
wait what, how?
replies(1): >>25075862 #
7. szhu ◴[] No.25075862{3}[source]
https://news.ycombinator.com/item?id=23281564
replies(1): >>25076479 #
8. Spivak ◴[] No.25075909{3}[source]
Unfortunately there’s not a way to differentiate “we’re online but Apple’s servers are having issues — probably fine” and “we’re online and something something is preventing us from talking to them — something nefarious might be happening.”
replies(1): >>25076601 #
9. bangonkeyboard ◴[] No.25075945[source]
On iOS, after a period of disconnection "the phone won't let you turn it on again until it goes online": https://youtu.be/BW32yUEymvU?t=1212
replies(2): >>25076628 #>>25077382 #
10. guac ◴[] No.25075960[source]
This seems to explain why my Mac was nearly unusable after a reboot last week. Turns out bind crashed on my firewall leaving me with no DNS.

After I restarted it I could actually launch apps other than terminal again.

11. protomyth ◴[] No.25076204[source]
If you don't have a connection, it just doesn't do the check. If you have a crappy connection like many of our students, it takes forever to check. If the server is down, life just sucks and non-Apple programs don't open.
12. 8note ◴[] No.25076399{3}[source]
That still seems weird. Why does running unrecognized software become safe when you're off line?
replies(3): >>25076483 #>>25077222 #>>25082161 #
13. jrochkind1 ◴[] No.25076479{4}[source]
The behavior documented there is on FIRST run of a new executable.

You can like that behavior or find it unacceptable, but the issue in OP is not that, it was applying to executables that had already been launched plenty of times on the machine.

replies(1): >>25082625 #
14. sprt ◴[] No.25076483{4}[source]
Yes, can someone clarify this? What the hell is going on here?
replies(1): >>25077571 #
15. berryg ◴[] No.25076495{3}[source]
I experienced this a couple of weeks ago. My wifi was up, but my internetprovider was down. My Macbook came to a halt. Nothing worked anymore. The whole machine was extremely slow. When the internetprovider came back up again, everything was fine again.
replies(2): >>25077853 #>>25078261 #
16. alistairSH ◴[] No.25076601{4}[source]
Local copy of whatever Apple is checking? Update that daily (on sign on or something). Not going to catch zero day type stuff, but better than making the laptop unusable.
replies(3): >>25077846 #>>25077865 #>>25079683 #
17. nomel ◴[] No.25076628{3}[source]
I'm guessing this is to help trigger the wipe of stolen phones.
18. Aperocky ◴[] No.25077062[source]
Oh man, imagining a DDOS to fail that over.

Imagine how many people would lost their productiveness, maybe not at the big corps or govt (I assume they use a version of mac that call somewhere else/don't). But very very many people.

replies(3): >>25078347 #>>25078533 #>>25079297 #
19. type0 ◴[] No.25077222{4}[source]
It's a security theater
replies(4): >>25077806 #>>25078011 #>>25079751 #>>25080381 #
20. comex ◴[] No.25077382{3}[source]
That sounds like it might just be a bug. At least, I wasn't able to find any information whatsoever on this phenomenon on Google.
21. db48x ◴[] No.25077571{5}[source]
It doesn't become safe when you're offline, it's just that you're no worse off than you were. OCSP is s a certificate revocation protocol. It's only used for disabling certificates which were issued in good faith but now need to be revoked. Suppose Apple signs application X, and the signature is good for a year. Six months later, Apple discovers that application X contains malware, so they revoke the certificate. However, your computer doesn't know about the revocation until it checks the OCSP server, which requires you to be online. If you're offline, it just skips the check; the certificate wasn't revoked yesterday, so it's probably fine today too. The bug is that if you're connected to a network but can't contact the OCSP server (either because the OCSP server is down, or because you're not connected to the internet) then OSX keeps trying to connect and becomes sluggish and/or unresponsive. This is how we know that it's a defect rather than a deliberate choice; if they had decided to make the OS non−functional unless connected to the internet they would have done a better job of it.

It wouldn't surprise me if they one day wanted to require you to be online 100% of the time so that you can't skip the OCSP checks on applications, but I don't think that would go over very well. Apple wouldn't even be the first to produce applications that refuse to work if there's no internet connection. If you don't like the thought that they might one day spring this on you, I recommend investigating Linux.

22. nmg ◴[] No.25077806{5}[source]
Thank you. Phrased perfectly.

It's an invasive restriction, cynically designed, poorly engineered and improperly managed, that impairs your ability to function.. masquerading as security.

macOS is my favorite OS, but I don't need to use it. I was so psyched reading about the new Macbooks, and I've had to walk all that excitement back now. I cannot invest in a computer that locks me out of my job if a cable gets cut by a maintenance crew in Cupertino.

replies(2): >>25077953 #>>25078576 #
23. Spivak ◴[] No.25077846{5}[source]
I think the point is that that database is too large to store on a single machine which is why it has to be ad-hoc queried and cached. I mean it will have the signature of every program run on a Mac.
replies(1): >>25092269 #
24. kps ◴[] No.25077853{4}[source]
So you can't use a computer on an airgapped network? That seems counterproductive if the objective is security.
replies(1): >>25077877 #
25. jagger27 ◴[] No.25077865{5}[source]
I don’t really want a giant hash table on my disk either.
replies(1): >>25078177 #
26. floatingatoll ◴[] No.25077877{5}[source]
If your computer is actually airgapped and has no networking interfaces configured, you won't have this issue.

If your computer is able to resolve DNS for ocsp.apple.com but to connection-timeout all traffic, yes, you could possibly reproduce today's issue.

replies(1): >>25078423 #
27. craftinator ◴[] No.25077901[source]
There's a non-zero chance that this bug has caused at least one death.
replies(1): >>25078919 #
28. bnj ◴[] No.25077953{6}[source]
I agree that it’s security theater and a suspect implementation, but I was playing a game of “let’s imagine why someone might do this...”—

I’m wondering, suppose it was designed this way because part of the goal is to prevent the spread of malware, the fastest means of which is an internet connected computer. In that event, the feature only intrudes when the computer, by virtue of it’s internet connection, is a member of the threat class.

So... plausible?

replies(2): >>25078107 #>>25088723 #
29. johncolanduoni ◴[] No.25078011{5}[source]
Mandatory OCSP is security theater? That’s a pretty bold claim.
replies(1): >>25078132 #
30. nmg ◴[] No.25078107{7}[source]
Apple built the computer; I exchanged money for the computer; now I own the computer.

Apple does not own the computer.

If Apple wants to own the computer, they can pay me instead.

replies(1): >>25079446 #
31. josephcsible ◴[] No.25078132{6}[source]
Mandatory OCSP that fails open when you're offline is security theater.
replies(1): >>25078452 #
32. esclerofilo ◴[] No.25078177{6}[source]
A Bloom Filter[1] could be used as a lighter alternative. You probably have at least one of those in your disk now.

[1]: https://en.wikipedia.org/wiki/Bloom_filter

33. aunty_helen ◴[] No.25078261{4}[source]
Had the same thing earlier in the week as the isp was doing maintenance two nights in a row. 5+ seconds to start sublime and other really basic apps. Apple apps had no problem of course.

Remembering the notarization problems people were having months ago I did some tests and confirmed.

Now have little snitch installed again and my laptops going to be an Apple orphan. So I never noticed this problem today by virtue of it pissing me off 2 days before.

replies(1): >>25079331 #
34. naetius ◴[] No.25078280[source]
That's why notarized applications should be stapled too. The stapling "ticket" is embedded in the app bundle and allows macOS to perform an offline check.

Basically you'll get the usual GateKeeper window, but with a slightly different message, along the lines of "I can't check this binary in realtime but I trust the embedded notarization".

35. notnap ◴[] No.25078347{3}[source]
Today I was late to join a corporate conference call. It took like 5 mins to start conferencing software.

First time ever I'm genuinely frustrated with apple - macs are not those unicorn tools anymore that work reliable

36. kps ◴[] No.25078423{6}[source]
Airgapped network — an IP LAN not connected to the internet. These do exist, sometimes permanently for security reasons, and sometimes just where external connectivity sucks but you still want your laptop to talk to your NAS.
replies(2): >>25079265 #>>25080545 #
37. snowwrestler ◴[] No.25078452{7}[source]
OCSP fails open by definition because it is a revocation protocol. In the absence of revocation, a valid cert continues to be valid.

The problem here is simply that Apple did not build a short enough timeout into their client.

replies(1): >>25080027 #
38. octoberfranklin ◴[] No.25078533{3}[source]
> Oh man, imagining a DDOS to fail that over.

That might be what we just saw happen.

39. in_ab ◴[] No.25078541[source]
If you are connected to a network without an Internet connection, it just becomes unusable. Internet connection is somewhat unreliable in my area, and I had an internet outage that lasted for days during the COVID lockdown. I feared it was a malware infection causing the slow down. I switched over to Linux not long after.
40. snowwrestler ◴[] No.25078576{6}[source]
If you point the request at localhost, the problem resolves. This means that a cable getting cut in Cupertino won’t matter. It is a revocation protocol; it fails open.

The problem today is that not that the connection to the server failed, but that it succeeded very slowly. The result was an accidental denial of service on the client.

It is a bug, and an easily fixed one at that.

replies(1): >>25078757 #
41. tomxor ◴[] No.25078757{7}[source]
This particular issue is easy to work around for technical users; the _problem_ is the philosophy that made it possible.

This is the reason I can no longer use Apple computers - the continuous battle they are waging against the users freedom on all fronts - the anxiety of what they will do next to _my_ computer is too much.

replies(1): >>25079438 #
42. philistine ◴[] No.25078919{3}[source]
Scary, but most likely true.
43. justinclift ◴[] No.25079265{7}[source]
Agreed. These are really useful in various settings, but seem to be outside of most people's experience.
44. pfortuny ◴[] No.25079297{3}[source]
SelfDDOS. The first ever.
45. hackerfromthefu ◴[] No.25079331{5}[source]
Might as well get a chromebook then hahaha
46. cyberlurker ◴[] No.25079406[source]
Are you referring to Steve Bannon who said Dr. Fauci should be beheaded? Or something else?
47. jachee ◴[] No.25079438{8}[source]
Good luck finding a suitable replacement. Microsoft does unpredictable things to Windows. Linux maintainers do unpredictable things to all sorts of things.

Your only real recourse is to compile everything from source after a thorough review every time...

...or else trust someone.

Sure Apple had a problem here, but there are so many other reasons to trust them over any other org that I can't in good conscience switch platforms, because there's so much more anxiety elsewhere.

replies(2): >>25079462 #>>25087766 #
48. jachee ◴[] No.25079446{8}[source]
They own the software.

You didn't pay for that. You licensed it from them.

replies(1): >>25081596 #
49. heavyset_go ◴[] No.25079462{9}[source]
> Linux maintainers do unpredictable things to all sorts of things.

With Linux you don't have to worry about every program you launch being reported to the mothership, or that failure of the mothership to respond would cause your computer to not function.

replies(1): >>25079548 #
50. jachee ◴[] No.25079548{10}[source]
If you're not reading all the source of everything you're running, any or all of it it absolutely could be reporting usage/stats/your data to a "mothership".

Just because there's no single central org involved doesn't mean there aren't risks.

replies(3): >>25079992 #>>25081276 #>>25086229 #
51. robocat ◴[] No.25079574[source]
Microsoft Windows also uploads your private exe’s, and then runs them on Microsoft servers:

https://medium.com/sensorfu/how-my-application-ran-away-and-...

replies(3): >>25079979 #>>25082632 #>>25082989 #
52. noobermin ◴[] No.25079683{5}[source]
I'm going to make a bold claim but Linus made a claim to this effect. Security is important but it cannot be the only main priority when designing systems. Apple's mistake here is probably the main story but more generally this attitude (letting systems spectacularly fail for the sake of hypothetical security) is foolish and results in rather terrible bugs like this.
53. dschuetz ◴[] No.25079741[source]
You need to set up your own DNS caching resolver and start selectively filtering out Apple domains. Pihole does that wonderfully. Ask your Apple geniuses whether they would help you setting it to make your Macs work.
54. unethical_ban ◴[] No.25079751{5}[source]
Or defense in depth.

I hate it too, but 'theater' implies it isn't useful in any way.

55. p410n3 ◴[] No.25079979{3}[source]
Holy Shit. That should be illegal. All it needs is one rogue employee to potentially steal trade secrets? And dont tell me MS employees never go rogue after the recent events...
replies(1): >>25080786 #
56. inimino ◴[] No.25079992{11}[source]
You don't need to read it, you just need to be able to read it.

Just because there are risks doesn't mean the risks are meaningfully comparable.

replies(1): >>25080967 #
57. anticensor ◴[] No.25080027{8}[source]
Make OCSP fail locked and it would be a software imprisonment protocol instead.
58. grishka ◴[] No.25080072[source]
Code signing is an okay thing as long as the signing identities don't get discriminated. Android has had code signing ever since it was released, but you always generated the certificate yourself, and the purpose was simply to stop someone else from making an apk with the same package id that would install over yours and gain access to its data.

The thing Apple does, on the other hand, with trusting themselves more than the user, is disgusting. I'm mostly libertarian, but if I ever become a president, this would be one of the first things I'd make illegal, right after shortening the copyright term to like 3 years.

replies(1): >>25080801 #
59. sildur ◴[] No.25080381{5}[source]
And probably a ruse to amass application usage stats.
60. floatingatoll ◴[] No.25080545{7}[source]
The point stands: if you allow a host to resolve ocsp.apple.com to an unresponsive (timeout) address, it might break macOS the same as today — whether by air gap, by firewall, or who knows what else.
61. iso1631 ◴[] No.25080786{4}[source]
Surely it's against copyright law
replies(2): >>25081382 #>>25081394 #
62. iso1631 ◴[] No.25080801[source]
Give me, the owner of the computer, over the keystore for the root certificates I trust, and code signing is great.

> I'm mostly libertarian, but if I ever become a president, this would be one of the first things I'd make illegal, right after shortening the copyright term to like 3 years.

As a libertarian I can see the argument for getting rid of presumptive copyright (and tanking the US economy), but the government preventing people from entering into contracts that you don't like? That's just hypocritical.

replies(1): >>25081089 #
63. muraiki ◴[] No.25080967{12}[source]
Ken Thompson won a Turing Award for showing how that isn’t the case: http://users.ece.cmu.edu/~ganger/712.fall02/papers/p761-thom...
replies(2): >>25088083 #>>25090093 #
64. grishka ◴[] No.25081089{3}[source]
> but the government preventing people from entering into contracts that you don't like?

It's not that. Plain and simple: in an ideal world, more money shouldn't grant more power and immunity. Governments should disincentivize this growth into the sky by, for example, progressive taxation for companies. The world would be a better place if tech companies actually competed with each other by making better products, not trying their damnest to lock everyone into their walled gardens to earn even more money they have no clue what to do with. Currently, when choosing something like a computer or a phone, you just pick one that sucks the least. There's no healthy competition.

replies(1): >>25082670 #
65. _trampeltier ◴[] No.25081169[source]
With Android is the same. I have an App Firewall on my Android phone and since then the standard Android gallery app does not work really anymore. A lot of things break, for ex. when I_ like to send a file with Threema, I have to go offline, choose the file and then go online again. Otherwise the file dialoge does freeze. It's just standard these days. Also a lot of things break, if you are just on a network without internet connection. Welcome in 2020.
66. isakkeyten ◴[] No.25081382{5}[source]
A law is only dealing with the consequences, it's not prevention.
67. nordsieck ◴[] No.25081394{5}[source]
> Surely it's against copyright law

It almost certainly is, but

1. You have to know it's happening before you can do anything about it

2. If your "work" isn't registered with the copyright office, you're limited to actual damages, which are probably close to $0

68. nmg ◴[] No.25081596{9}[source]
That's a fair point that I hadn't considered, and I appreciate it. But I still feel like "ability to use your computer as a service" is not something I signed up for.
69. eternalban ◴[] No.25082161{4}[source]
Because it is not yet illegal to operate a computing machine that is not centrally monitored. New Normal, get used to it. Soon, this corner case will go away.

"Why were you offline when using your computer?"

70. SolarUpNote ◴[] No.25082625{5}[source]
[deleted]
replies(1): >>25082729 #
71. phendrenad2 ◴[] No.25082632{3}[source]
TL;DR: It's an option that can be disabled, unlike on Mac. Also doesn't lock up your PC if Apple's network is having a bad day.
72. iso1631 ◴[] No.25082670{4}[source]
That does not sound like a libertarian view at all.
replies(1): >>25089443 #
73. jrochkind1 ◴[] No.25082729{6}[source]
Right. The recent problem (in top-level OP, and that you were presumably experiencing) was not just first run, but the behavior explained at the GP link (https://news.ycombinator.com/item?id=23281564 , HN thread for https://lapcatsoftware.com/articles/catalina-executables.htm...) is just about first-run, so the behavior explained at the GP link is not sufficient explanation for the recent problem, it's not talking about the same thing.
74. mensetmanusman ◴[] No.25082989{3}[source]
Is this how we look for the next Stuxnet?
75. peeters ◴[] No.25083116[source]
Often when I would see this type of error it would be when something silently drops TCP packets (rather than sending a RST). This is one way to configure a firewall, and it's indistinguishable from high latency. Hence the difference in behavior. If the address was unroutable, or immediately closed the connection, it would fail quickly (and presumably for the OCSP check, it would be skipped immediately). But when packets are silently dropped, it's up to the client to decide how long to wait for an ACK, which might cause a hang.

I've seen an identical problem where Chrome would hang for minutes when loading sites, and it was because I was in a firewalled environment that was outright dropping packets to Chrome's OCSP server.

76. heavyset_go ◴[] No.25086229{11}[source]
We already know that, by design, macOS will report back to the mothership. If things are working 100% correctly, Apple will collect what programs you run and when you do so.

Linux won't report to the mothership by design. If things work 100% correctly, you don't have to worry about some company knowing what programs you run and when.

77. tomxor ◴[] No.25087766{9}[source]
I've already found a replacement, Debian stable + i3wm has been my happy place for the last 5 years. No unexpected behavior changes on update, just bug fixes, it does what I tell it, nothing crazy like Debian maintainers dictating what binaries I can run... if you want more or less control you've got plenty of Ubuntu style distros in one direction and Arch style in the other.

If you're a media person then yeah, I feel bad for you, i've been there and it sucks, you're stuck with mac and windows if you require mainstream design apps.

78. teddyh ◴[] No.25088083{13}[source]
May I direct your attention to https://reproducible-builds.org/
79. boneitis ◴[] No.25088723{7}[source]
Plausible a la NSA, yeah?

I presume this setup wasn't public knowledge.

80. freedomben ◴[] No.25089443{5}[source]
Libertarian is not a well defined word. I have a friend who identifies as a Socialist and a Libertarian. He believes that true libertarianism (anarchy) would result in a collapse of capitalism since there would be no state to enforce private property rights.

So yeah, always gotta find out what a person means when they say "Libertarian"

81. inimino ◴[] No.25090093{13}[source]
That what isn't the case? Pointing out additional threat vectors doesn't in any way contradict my point.
82. salawat ◴[] No.25092269{6}[source]
Funny how DNS has that same issue, and yet, we still decentralized it to a point, even if there is some inertia going on to keep it as centralized as possible.