network system extension + Safari 17.1.2 BREAKS protocol stack

Someone else may want to test this with their network system extension, but I found a nasty interaction with Apple's latest software update for Safari and my network system extension.

Summary: When I had my network system extension installed and updated to Safari 17.1.2, all networking was lost.

I first ran into this problem yesterday and documented in this thread. Today, I tried to pin it down on Ventura.

This test

  • Hardware: M1 Mac mini
  • OS: macOS Ventura 13.6.1 (downloaded from Mac App Store)
  • Safari version 16.6
  • Network system extension (mine)

When I updated to Safari Version 17.1.2, I lost all networking!

Furthermore, I could not uninstall my network extension. Deleting the app with the network system extension didn't help.

Fix 1:

  1. Disabled SIP
  2. Removed my network system extension (at which point networking worked fine again)
  3. Reenabled SIP
  4. Reinstalled my network system extension

Everything works fine.

Fix 2

I re-ran the experiment (same initial set up)

  • Hardware: M1 Mac mini
  • OS: macOS Ventura 13.6.1 (downloaded from Mac App Store)
  • Safari version 16.6
  • Network system extension (mine)

This time:

  1. I removed my network system extension first
  2. I updated to Safari 17.1.2 (this time no problems)
  3. I reinstalled my network system extension

Everything works fine

Having the network system extension in place and then updating Safari to 17.1.2 broke things pretty badly for me.

Was there something I did wrong with my network system extension design?

Answered by Todd_at_Ennetix in 773633022

This morning I repeated the experiment, and there was no loss of networking.

Again, experiment began with a clean install of macOS Ventura 13.6.1 and Safari 16.6, network system extension installed, and then upgraded Safari to 17.1.2.

This time everything worked! There were no problems

Maybe Apple modified one of the installer script (e.g., I see things like Perl running in the background during the upgrade process)? I hope Apple can provide some clarity to me, so I know what to look out for in the future.

FYI: I posted a feedback on this: FB13437047

Accepted Answer

This morning I repeated the experiment, and there was no loss of networking.

Again, experiment began with a clean install of macOS Ventura 13.6.1 and Safari 16.6, network system extension installed, and then upgraded Safari to 17.1.2.

This time everything worked! There were no problems

Maybe Apple modified one of the installer script (e.g., I see things like Perl running in the background during the upgrade process)? I hope Apple can provide some clarity to me, so I know what to look out for in the future.

Update: I am having a very similar problem updating to the beta of macOS 14.2.

When the beta (via TestFlight) of my app is installed with the network system extension installed with Sonoma 14.1.2, and then I update to the beta of macOS 14.2, I lose all networking.

Once I remove the network system extension, networking immediately returns.

I can then re-install the network system extension with no problems.

Having the network system extension installed when updating breaks networking. Perhaps it is because the network system extension was distributed through TestFlight (?).

Filed feedback: FB13458972

network system extension + Safari 17.1.2 BREAKS protocol stack
 
 
Q