SafeExamBrowser / seb-mac

Safe Exam Browser for macOS and iOS
https://www.safeexambrowser.org/macosx
97 stars 39 forks source link

Prohibited process locked SEB #294

Open lifeunexpected opened 1 year ago

lifeunexpected commented 1 year ago

We are having a digital exam today and experiencing a lot of different problems related to "Prohibited Process Locked SEB".

The problems seems to primarly be because Safari is being used because when they use Chrome or another web browser it works correct.

This happens on different versions om macOS and but the students are using SEB 2.1.4 and 2.3.2.

i will update the post if i get what os version and seb version the use and safari version

danschlet commented 1 year ago

This should be solved in SEB 3.2.x.

We don't support older SEB versions. Please only file issues when you observe them in the latest SEB version.

danschlet commented 9 months ago

Note: If this issue still happens with SEB 3.2.5 or 3.3, then please search the according SEB log files for this line Couldn't terminate app with localized name (error and post the full line here (best also the according SEB log file). I need to know the error number which would be listed in the log if SEB cannot terminate that process.

Also see this issue: https://github.com/SafeExamBrowser/seb-mac/discussions/320

danschlet commented 9 months ago

Another workaround to prevent this lock screens for "com.apple.WebKit.Networking" would be to disable the "Active" flag for the default preset prohibited process "Safari/WebKit Networking". This isn't preferable, as then students could use Safari or other WebKit-based browsers in the background to for example run some web-based screen sharing or video/audio conferencing tool.

All of this is efficiently prevented with the AAC lockdown mode, that's why that would be the way to go forward in future.

uollaswar commented 6 months ago

Hello i have a similar problem, i tried ANY workaround, even factory reset my MAC, still giving the same error... I don't know what to do now, any idea is welcome. 17048762458248330277991873659457

lmBored commented 5 months ago

Note: If this issue still happens with SEB 3.2.5 or 3.3, then please search the according SEB log files for this line Couldn't terminate app with localized name (error and post the full line here (best also the according SEB log file). I need to know the error number which would be listed in the log if SEB cannot terminate that process.

Also see this issue: #320

I also got this error, this is my log file:

2024/01/16 16:15:26:665  BrowserWindow <SEBBrowserWindow: 0x140f661c0>: Title of current Page: Safe Exam Browser 3.2.5  —  Test_name
2024/01/16 16:19:17:482  Started application with bundle ID: (null)
2024/01/16 16:19:18:362  Started application with bundle ID: com.apple.textkit.nsattributedstringagent
2024/01/16 16:19:18:462  Couldn't terminate app with localized name (error -1): com.apple.WebKit.Networking, bundle or executable URL: file:///System/Library/Frameworks/WebKit.framework/Versions/A/XPCServices/com.apple.WebKit.Networking.xpc/
2024/01/16 16:19:18:462  -[SEBOSXLockedViewController setLockdownAlertTitle:Message:]: Prohibited Process Locked SEB!: SEB is locked because a process, which isn't allow to run cannot be terminated. Enter the quit/unlock password or response, which usually exam supervision/support knows.
2024/01/16 16:19:18:462  Prohibited processes detected: (
        {
        PID = 37060;
        URL = "file:///System/Library/Frameworks/WebKit.framework/Versions/A/XPCServices/com.apple.WebKit.Networking.xpc/";
        bundleID = "com.apple.WebKit.Networking";
        name = "com.apple.WebKit.Networking";
    }
)
2024/01/16 16:19:18:464  openLockdownWindows: didLockSEBTime 2024-01-16 15:19:18 +0000, didBecomeActiveTime 2024-01-16 15:19:18 +0000
2024/01/16 16:19:18:464  Locking SEB with red frontmost covering windows
2024/01/16 16:19:18:464  -[SEBController openCoveringWindows]
2024/01/16 16:19:18:464  Screen is active, device description: {
    NSDeviceBitsPerSample = 8;
    NSDeviceColorSpaceName = NSCalibratedRGBColorSpace;
    NSDeviceIsScreen = YES;
    NSDeviceResolution = "NSSize: {144, 144}";
    NSDeviceSize = "NSSize: {1470, 956}";
    NSScreenNumber = 1;
}
2024/01/16 16:19:18:464  Opening lockdown alert covering window with frame {
    Height = 956;
    Width = 1470;
    X = 0;
    Y = 0;
} and window level 1000
2024/01/16 16:19:18:465  Cap window <CapWindowController: 0x1413ae010> init.
2024/01/16 16:19:18:466  BrowserWindow <SEBBrowserWindow: 0x140f661c0> did resign key
2024/01/16 16:19:18:466  Current key window: <CapWindow: 0x28ff648c0> with title 
2024/01/16 16:19:18:500  -[SEBLockedViewController appendErrorString:withTime:]: Prohibited processes detected: (
        {
        PID = 37060;
        URL = "file:///System/Library/Frameworks/WebKit.framework/Versions/A/XPCServices/com.apple.WebKit.Networking.xpc/";
        bundleID = "com.apple.WebKit.Networking";
        name = "com.apple.WebKit.Networking";
    }
)
 2024-01-16 16:19:18  
2024/01/16 16:19:18:502  Log scroll view <NSScrollView: 0x14405da00> frame: {
    Height = 378;
    Width = 458;
    X = 0;
    Y = 0;
}, y coordinate to scroll to: 0.000000
2024/01/16 16:19:18:502  Started application with bundle ID: com.apple.WebKit.WebContent
2024/01/16 16:19:18:808  Started application with bundle ID: (null)
2024/01/16 16:19:30:456  Started application with bundle ID: com.apple.WebKit.WebContent
2024/01/16 16:19:30:456  Started application with bundle ID: com.apple.WebKit.WebContent
2024/01/16 16:19:44:203  Started application with bundle ID: com.apple.WebKit.WebContent
2024/01/16 16:20:00:450  Started application with bundle ID: com.apple.WebKit.WebContent
2024/01/16 16:20:11:955  Started application with bundle ID: com.apple.WebKit.WebContent
2024/01/16 16:20:13:449  Started application with bundle ID: com.apple.WebKit.WebContent
2024/01/16 16:20:31:956  Started application with bundle ID: com.apple.WebKit.WebContent
2024/01/16 16:20:31:956  Started application with bundle ID: com.apple.WebKit.WebContent
2024/01/16 16:21:08:957  Started application with bundle ID: com.apple.WebKit.WebContent
2024/01/16 16:21:08:957  Started application with bundle ID: com.apple.WebKit.WebContent
2024/01/16 16:21:22:785  Password entered in lock view alert
2024/01/16 16:21:22:786  -[SEBLockedViewController appendErrorString:withTime:]: Correct password entered
 2024-01-16 16:21:22  
2024/01/16 16:21:22:800  BrowserWindow <SEBBrowserWindow: 0x140f661c0> did become key
2024/01/16 16:21:22:801  Opening info HUD: SEB was locked (exam interrupted) for 2:04 (minutes:seconds)
2024/01/16 16:21:27:698  Started application with bundle ID: com.apple.WebKit.WebContent
2024/01/16 16:21:52:456  Started application with bundle ID: com.apple.WebKit.WebContent
2024/01/16 16:29:15:125  Started application with bundle ID: (null)
2024/01/16 16:29:16:030  Started application with bundle ID: com.apple.textkit.nsattributedstringagent
2024/01/16 16:29:16:127  Couldn't terminate app with localized name (error -1): com.apple.WebKit.Networking, bundle or executable URL: file:///System/Library/Frameworks/WebKit.framework/Versions/A/XPCServices/com.apple.WebKit.Networking.xpc/
2024/01/16 16:29:16:127  openLockdownWindows: didLockSEBTime 2024-01-16 15:29:16 +0000, didBecomeActiveTime 2024-01-16 15:29:16 +0000
2024/01/16 16:29:16:127  Locking SEB with red frontmost covering windows
2024/01/16 16:29:16:127  -[SEBController openCoveringWindows]
2024/01/16 16:29:16:128  Screen is active, device description: {
    NSDeviceBitsPerSample = 8;
    NSDeviceColorSpaceName = NSCalibratedRGBColorSpace;
    NSDeviceIsScreen = YES;
    NSDeviceResolution = "NSSize: {144, 144}";
    NSDeviceSize = "NSSize: {1470, 956}";
    NSScreenNumber = 1;
}
2024/01/16 16:29:16:128  Opening lockdown alert covering window with frame {
    Height = 956;
    Width = 1470;
    X = 0;
    Y = 0;
} and window level 1000
2024/01/16 16:29:16:129  Cap window <CapWindowController: 0x141110fd0> init.
2024/01/16 16:29:16:129  BrowserWindow <SEBBrowserWindow: 0x140f661c0> did resign key
2024/01/16 16:29:16:129  Current key window: <CapWindow: 0x2a52ddf10> with title 
2024/01/16 16:29:16:162  Started application with bundle ID: com.apple.WebKit.WebContent
2024/01/16 16:29:16:388  Started application with bundle ID: (null)
2024/01/16 16:29:32:947  Started application with bundle ID: com.apple.WebKit.WebContent
2024/01/16 16:29:39:450  Started application with bundle ID: com.apple.WebKit.WebContent
2024/01/16 16:29:46:332  Started application with bundle ID: (null)
2024/01/16 16:29:56:955  Started application with bundle ID: com.apple.WebKit.WebContent
2024/01/16 16:29:56:955  Started application with bundle ID: com.apple.WebKit.WebContent
2024/01/16 16:30:18:240  Started application with bundle ID: com.apple.WebKit.WebContent
2024/01/16 16:30:18:240  Started application with bundle ID: com.apple.WebKit.WebContent
2024/01/16 16:30:23:336  Password entered in lock view alert
2024/01/16 16:30:23:337  -[SEBLockedViewController appendErrorString:withTime:]: Correct password entered
 2024-01-16 16:30:23

And I got this image:

IMG_0153

danschlet commented 5 months ago

This issue seems to finally be fixed in SEB 3.3.2. Please update, we don't recommend still using 3.2.5.

lmBored commented 4 months ago

This issue has not been fixed. I've just opened SEB today and still get that red screen. My SEB version is 3.3.2 and Im using MacOS Sonoma 14.2.1

image
lmBored commented 4 months ago

@danschlet could you have a look please? Im going to have some exams on SEB really soon.

Edit: This is my log file:

2024/02/19 20:09:45:474  kill(9) success: -1, errno: 1, error: Operation not permitted
2024/02/19 20:09:45:474  Couldn't terminate app with localized name (error 0): nsattributedstringagent Networking, bundle or executable URL: file:///System/Library/Frameworks/WebKit.framework/Versions/A/XPCServices/com.apple.WebKit.Networking.xpc/
2024/02/19 20:09:45:474  lockSEB: detectedProhibitedProcess
2024/02/19 20:09:45:474  -[SEBOSXLockedViewController setLockdownAlertTitle:Message:]: Prohibited Process Locked SEB!: SEB is locked because a process, which isn't allowed to run cannot be terminated. Enter the quit/unlock password, which usually exam supervision/support knows.
2024/02/19 20:09:45:475  Prohibited processes detected: (
        {
        PID = 88090;
        URL = "file:///System/Library/Frameworks/WebKit.framework/Versions/A/XPCServices/com.apple.WebKit.Networking.xpc/";
        bundleID = "com.apple.WebKit.Networking";
        name = "nsattributedstringagent Networking";
    }
)
2024/02/19 20:09:45:476  openLockdownWindows: didLockSEBTime 2024-02-19 19:09:45 +0000, didBecomeActiveTime 2024-02-19 19:09:45 +0000
2024/02/19 20:09:45:476  Locking SEB with red frontmost covering windows
2024/02/19 20:09:45:477  -[SEBController openCoveringWindows]
2024/02/19 20:09:45:477  Screen is active, device description: {
    NSDeviceBitsPerSample = 8;
    NSDeviceColorSpaceName = NSCalibratedRGBColorSpace;
    NSDeviceIsScreen = YES;
    NSDeviceResolution = "NSSize: {144, 144}";
    NSDeviceSize = "NSSize: {1470, 956}";
    NSScreenNumber = 1;
}
2024/02/19 20:09:45:477  Opening lockdown alert covering window with frame {
    Height = 956;
    Width = 1470;
    X = 0;
    Y = 0;
} and window level 1000
2024/02/19 20:09:45:479  Cap window <CapWindowController: 0x116f17a90> init.
2024/02/19 20:09:45:479  BrowserWindow <SEBBrowserWindow: 0x1333f7560> did resign key
2024/02/19 20:09:45:479  Current key window: <CapWindow: 0x1160bd040> with title 
2024/02/19 20:09:45:514  Successfully terminated application/process: {
    URL = "file:///Applications/Microsoft%20Edge.app/Contents/Frameworks/Microsoft%20Edge%20Framework.framework/Versions/121.0.2277.128/Helpers/Microsoft%20Edge%20Helper.app/Contents/MacOS/Microsoft%20Edge%20Helper";
    name = "Microsoft Edge Helper";
}
2024/02/19 20:09:45:524  Started application with bundle ID: com.apple.WebKit.WebContent
2024/02/19 20:09:45:526  -[SEBLockedViewController appendErrorString:withTime:configKey:]: Prohibited processes detected: (
        {
        PID = 88090;
        URL = "file:///System/Library/Frameworks/WebKit.framework/Versions/A/XPCServices/com.apple.WebKit.Networking.xpc/";
        bundleID = "com.apple.WebKit.Networking";
        name = "nsattributedstringagent Networking";
    }
)
danschlet commented 4 months ago

This seems to be an issue on your Mac, as we didn't get new similar reports yet. The improved logging in SEB 3.3.2 shows the error "Operation not permitted" when trying to terminate the offending WebKit process. The reason is likely because it's a system process.

But the question is why SEB wants to terminate this process. In the logs before what you posted it should be mentioned.

Are you using a Hackintosh (macOS on a Windows machine) or some other manipulation of macOS? Could even be a malware which manipulated your system.

lmBored commented 4 months ago

This seems to be an issue on your Mac, as we didn't get new similar reports yet. The improved logging in SEB 3.3.2 shows the error "Operation not permitted" when trying to terminate the offending WebKit process. The reason is likely because it's a system process.

But the question is why SEB wants to terminate this process. In the logs before what you posted it should be mentioned.

Are you using a Hackintosh (macOS on a Windows machine) or some other manipulation of macOS? Could even be a malware which manipulated your system.

No, I have a Macbook Air, and I don't think I downloaded any malware as I always download through a package manager and check every thing I download thoroughly. Do you know any other ways to identify the root of this problem?

danschlet commented 4 months ago

As I said, post your full log file (log level debug necessary). Before the part that you posted should be the reason why SEB tried to terminate the WebKit process.

Does your user have admin rights? Otherwise try it with a user which has admin rights.

You can also boot your Mac in Safe Mode and try it again.

lmBored commented 4 months ago

Here's my full log file, almost everything before that are just seb terminating microsoft app helper:

org.safeexambrowser.SafeExamBrowser 2024-02-19--19-09-16-368.log

danschlet commented 4 months ago

There is a process with the name "nsattributedstringagent Networking" and the bundle ID "com.apple.WebKit.Networking" running on your system, which SEB cannot terminate due to "Operation not permitted", which usually would happen when that process was started by another user (can be a system user, in my case there is a "nsattributedstringagent" process started by a user "_softwareupdate", which obviously is a system process).

"com.apple.WebKit.Networking" is one of the preset default prohibited processes in SEB. If you switch this off in your settings ("active" property for this prohibited process needs to be disabled"), SEB would not attempt to terminate this process. But then WebKit-based tools and browsers (Safari, Safari Technology Preview etc.) could be potentially used for cheating. Another option is to use the AAC Assessment Mode instead of the default SEB lockdown (kiosk) mode.

But I see you're using ANS, so they would need to change their settings.

But again the question is why there is a "nsattributedstringagent Networking" process running on your Mac and also usually processes running under another user don't show their Bundle ID, therefore it should be safe for SEB to terminate all processes with the Bundle ID "com.apple.WebKit.Networking". So try to quit all applications before running the SEB exam or boot in Safe Mode and start only SEB. You can also try to create a new, separate user account on your Mac for exams and don't change significant system settings and don't install any third party tools which theoretically could cause such issues.

lmBored commented 4 months ago

Thank you so much for the help! It seems like the user "_softwareupdate" also starts the "nsattributedstringagent" process in my case. Base on your suggestion, I guess I should start my laptop in safe mode then. Again, thanks a lot for your help!

lmBored commented 3 months ago

There is a process with the name "nsattributedstringagent Networking" and the bundle ID "com.apple.WebKit.Networking" running on your system, which SEB cannot terminate due to "Operation not permitted", which usually would happen when that process was started by another user (can be a system user, in my case there is a "nsattributedstringagent" process started by a user "_softwareupdate", which obviously is a system process).

"com.apple.WebKit.Networking" is one of the preset default prohibited processes in SEB. If you switch this off in your settings ("active" property for this prohibited process needs to be disabled"), SEB would not attempt to terminate this process. But then WebKit-based tools and browsers (Safari, Safari Technology Preview etc.) could be potentially used for cheating. Another option is to use the AAC Assessment Mode instead of the default SEB lockdown (kiosk) mode.

But I see you're using ANS, so they would need to change their settings.

But again the question is why there is a "nsattributedstringagent Networking" process running on your Mac and also usually processes running under another user don't show their Bundle ID, therefore it should be safe for SEB to terminate all processes with the Bundle ID "com.apple.WebKit.Networking". So try to quit all applications before running the SEB exam or boot in Safe Mode and start only SEB. You can also try to create a new, separate user account on your Mac for exams and don't change significant system settings and don't install any third party tools which theoretically could cause such issues.

Hi, user "_softwareupdate" also starts "nsattributedstringagent" process in my case, but kill -9 doesn't seem to be able to kill this process. Could you update seb to do sudo kill -9 instead please?

(this is me trying to kill the process)

~                                                                                                                                                      
❯ ps aux | grep nsattributedstringagent
_softwareupdate  85551   0.0  0.3 410681712  49504   ??  Ss   10:07PM   0:05.10 /System/Library/PrivateFrameworks/UIFoundation.framework/Versions/A/XPCServices/nsattributedstringagent.xpc/Contents/MacOS/nsattributedstringagent

~                                                                                                                                                       
❯ kill -9 85551
kill: kill 85551 failed: operation not permitted
danschlet commented 3 months ago

No, elevating privileges is not desired for SEB. The way to go is to use AAC Assessment Mode, then these processes don't have to be terminated.

lmBored commented 3 months ago

Could you guide me further on how to use AAC mode? I only need to click "prefer AAC" in the settings right? And if so, do I also have to check the DNS pre-pinning box?

HilmanKhairr commented 3 months ago

hi, i'm using 3.3.2 but this issue still happened. anyone can help, please???

2024/03/26 08:15:13:934 Cap window <CapWindowController: 0x6000023a20a0> init. 2024/03/26 08:15:13:935 [SEBDockController adjustDock] 2024/03/26 08:15:13:935 -[SEBController adjustModalAlertWindowLevels:] allowSwitchToThirdPartyApps: 0 2024/03/26 08:15:13:935 -[SEBController changeWindowLevels:] allowApps: 0 2024/03/26 08:15:13:935 -[SEBOSXBrowserController browserWindowsChangeLevelAllowApps:] allowApps: 0 2024/03/26 08:15:13:935 -[SEBOSXBrowserController setLevelForBrowserWindow:elevateLevels:] browserWindow: <SEBBrowserWindow: 0x7fd23ab4c2b0> elevateLevels: 1 2024/03/26 08:15:13:937 -[SEBController adjustModalAlertWindowLevels:] allowSwitchToThirdPartyApps: 0 2024/03/26 08:15:14:034 Started application with bundle ID: com.apple.appkit.xpc.openAndSavePanelService 2024/03/26 08:15:14:460 Started application with bundle ID: com.apple.quicklook.QuickLookUIService 2024/03/26 08:15:16:804 BrowserWindow <SEBBrowserWindow: 0x7fd23ab4c2b0>: Title of current Page: Safe Exam Browser 3.3 — Exam | Telkom ACI 2024/03/26 08:21:13:621 Started application with bundle ID: (null) 2024/03/26 08:21:15:991 Started application with bundle ID: com.apple.textkit.nsattributedstringagent 2024/03/26 08:21:16:321 Couldn't terminate app with localized name (error -1): com.apple.WebKit.Networking, bundle or executable URL: file:///System/Library/Frameworks/WebKit.framework/Versions/A/XPCServices/com.apple.WebKit.Networking.xpc/ 2024/03/26 08:21:16:321 -[SEBOSXLockedViewController setLockdownAlertTitle:Message:]: Prohibited Process Locked SEB!: SEB is locked because a process, which isn't allow to run cannot be terminated. Enter the quit/unlock password, which usually exam supervision/support knows. 2024/03/26 08:21:16:322 Prohibited processes detected: ( { PID = 2009; URL = "file:///System/Library/Frameworks/WebKit.framework/Versions/A/XPCServices/com.apple.WebKit.Networking.xpc/"; bundleID = "com.apple.WebKit.Networking"; name = "com.apple.WebKit.Networking"; } )

danschlet commented 3 months ago

Could you guide me further on how to use AAC mode? I only need to click "prefer AAC" in the settings right? And if so, do I also have to check the DNS pre-pinning box?

In such cases search either the SEB for macOS manual or release notes. In release notes when searching for the text "AAC", you would have found:

Added DNS pre-pinning when using AAC on macOS <12.1, according to new setting aacDnsPrePinning (Preferences / Security / Use AAC with DNS pre-pinning). SEB will then resolve all domains from settings Start URL and URL filter Allow rules before activating AAC (as in macOS <12.1 DNS lookup during AAC doesn't work). You can define allow rules and if you don't actually need URL filtering, deactivate it afterwards (Preferences / Network / Activate URL filtering) or deactivate single URL filter rules with its Active property. To ensure that DNS lookup works for your web application, you need to add all domains and subdomains as Allow filter rules (don't forget for example domains which are contacted for single-sign-on). Note: Without activating the setting aacDnsPrePinning (Preferences / Security / Use AAC with DNS pre-pinning), AAC will only be used on macOS Catalina 10.15.4 and >=10.15.6 and macOS Monterey 12.1 or newer (not on macOS Big Sur 11.0 - Monterey 12.0). If you want to enforce the use of AAC on all these systems, you either need to use the Use AAC with DNS pre-pinning setting or enforce that only macOS 12.1 or newer is used (Preferences / Security / Allow running from macOS version / Check full macOS version number / enter 12 for Major version number and 1 for Minor version number).

danschlet commented 3 months ago

If you need to support also older macOS versions than macOS 10.15 or AAC doesn't work for some of your students because they use macOS 11 Big Sur (for sure they must update to the latest macOS 11 minor version if they cannot/don't want to update to newer macOS versions!) and the pre-pinning feature is too complicated to set up for your web application (or you don't want to use AAC for other reasons):

lmBored commented 3 months ago

Could you guide me further on how to use AAC mode? I only need to click "prefer AAC" in the settings right? And if so, do I also have to check the DNS pre-pinning box?

In such cases search either the SEB for macOS manual or release notes. In release notes when searching for the text "AAC", you would have found:

Added DNS pre-pinning when using AAC on macOS <12.1, according to new setting aacDnsPrePinning (Preferences / Security / Use AAC with DNS pre-pinning). SEB will then resolve all domains from settings Start URL and URL filter Allow rules before activating AAC (as in macOS <12.1 DNS lookup during AAC doesn't work). You can define allow rules and if you don't actually need URL filtering, deactivate it afterwards (Preferences / Network / Activate URL filtering) or deactivate single URL filter rules with its Active property. To ensure that DNS lookup works for your web application, you need to add all domains and subdomains as Allow filter rules (don't forget for example domains which are contacted for single-sign-on). Note: Without activating the setting aacDnsPrePinning (Preferences / Security / Use AAC with DNS pre-pinning), AAC will only be used on macOS Catalina 10.15.4 and >=10.15.6 and macOS Monterey 12.1 or newer (not on macOS Big Sur 11.0 - Monterey 12.0). If you want to enforce the use of AAC on all these systems, you either need to use the Use AAC with DNS pre-pinning setting or enforce that only macOS 12.1 or newer is used (Preferences / Security / Allow running from macOS version / Check full macOS version number / enter 12 for Major version number and 1 for Minor version number).

Wait to ensure we are on the same page, can I tick "prefer AAC" in SEB settings as a student taking the test or do I need to be the examiner to do that?

danschlet commented 3 months ago

Only the examiner/exam administrator can change the settings of their exam. That's why we always point out that students should contact their exam provider/examiner, not us. We provide the software for free download without anybody having to register or getting a license. We often don't have an idea what exam system is used with SEB. So we're really not the right ones to ask when students have issues starting an exam. Our support is actually only meant for exam system administrators/providers/examiners/teachers which want to know how to correctly configure SEB...

danschlet commented 1 month ago

This should be fixed in SEB 3.3.3 for macOS. Please test and report if it works for you.