Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Doesn't work on new macOS big sur #7

Open
AlexDrBanana opened this issue Jul 9, 2020 · 16 comments · May be fixed by #15 or #21
Open

Doesn't work on new macOS big sur #7

AlexDrBanana opened this issue Jul 9, 2020 · 16 comments · May be fixed by #15 or #21

Comments

@AlexDrBanana
Copy link

This pam module doesn't seem to work with the new macOS big sur any more.

@newdev8
Copy link

newdev8 commented Jul 11, 2020

Same problem

@jankytay
Copy link

Library Validation failed: Rejecting '/usr/local/lib/pam/pam_watchid.so.2' (Team ID: none, platform: no) for process 'sudo(54344)' (Team ID: none, platform: yes), reason: mapped file has no cdhash, completely unsigned? Code has to be at least ad-hoc signed.

Okay so it needs to be signed on Big Sur. Also keep in mind the target for x64 system is "x86_64-apple-macosx10.16", at least that's true for dev beta 2.

@rblenkinsopp
Copy link

@jankytay How did you obtain the more detailed error message? I'm attempting to sign my version of this but I can't get the more detailed output at present.

@rmoats
Copy link

rmoats commented Jul 30, 2020

Even after signing with --options=library the error message becomes:

Library Validation failed: Rejecting '/usr/local/lib/pam/pam_watchid.so' (Team ID: T6RHPHE4L3, platform: no) for process 'sudo(16521)' (Team ID: none, platform: yes), reason: mapping process is a platform binary, but mapped file is not

From what I've been able to find, this is the result of a security move from Apple that prevents system components from loading plugins that are not system components, regardless of signature validity.

@scordinskyc
Copy link

Compiled and works fine for me. macOS 11.0 DP3 Build 20A5323l
Screenshot 2020-07-30 at 3 40 11 PM

@rblenkinsopp
Copy link

I can confirm that this seems to be resolved in macOS 11.0 DP3 Build 20A5323l for me as well - no changes and a completely unsigned .so

@rmoats
Copy link

rmoats commented Aug 1, 2020

Even after signing with --options=library the error message becomes:

Library Validation failed: Rejecting '/usr/local/lib/pam/pam_watchid.so' (Team ID: T6RHPHE4L3, platform: no) for process 'sudo(16521)' (Team ID: none, platform: yes), reason: mapping process is a platform binary, but mapped file is not

From what I've been able to find, this is the result of a security move from Apple that prevents system components from loading plugins that are not system components, regardless of signature validity.

I should mention that my recent struggles with this are on Catalina (10.15.6), definitely caused by a very recent (within the last week?) update, as I have been using pam_watchid daily for a month or more. Hopefully this breakage is actually being reverted in Big Sur on purpose.

@newdev8
Copy link

newdev8 commented Aug 1, 2020

I'm also using it on the latest macOS Catalina version 10.15.6 and it does work for me.

@ghost
Copy link

ghost commented Aug 4, 2020

@scordinskyc @rblenkinsopp

how did u guys made it to work..?

I'm also on macOS 11.0 Beta 3, only works if I disable SIP...

@TimofeyK
Copy link

I just successfully configured this on Big Sur release running on Mac mini. No extra steps needed

@cobbal
Copy link

cobbal commented Nov 23, 2020

As another data point, I just got this working on an arm mac mini. SIP off, no codesigning, only change was in Makefile TARGET=arm64-apple-macosx11.0

@alexclst
Copy link

alexclst commented Dec 16, 2020

After trying to install this, whatever arrangement of lines in the sudo file I use I get the following error when trying to use sudo:

sudo: unable to initialize PAM: No such file or directory

I'm on 11.1, so maybe Apple has protected this file further. I haven't, and really don't want to, disable any security settings.

@Linus-XZX
Copy link

Linus-XZX commented Dec 25, 2020

Works on my Intel MBP (12,1) on 11.1 (should be 20C69, don't exactly remember) (TARGET=x86_64-apple-macosx11.1) and 11.2 Beta (20D5029f) (TARGET=x86_64-apple-macosx11.2). I only modified the TARGET variable in Makefile and all default security settings were in place.

@joshpuetz
Copy link

Ditto, working here on an M1 Mac Mini by changing the Makefile target to TARGET=arm64-apple-macosx11.0

@alexclst
Copy link

Hmm, must have screwed up the build the first try. Just tried again and it worked. This time I used the TARGET that running swift -version returned. Note that on an M1 Mac this appears to be quite a different formulation for a target than on Intel Macs.

@fmckeogh
Copy link

I'm on Big Sur 11.1 on an M1 Mac mini, only change was TARGET=arm64-apple-darwin20.2.0 but I'm getting Killed: 9. Any advice?

@msanders msanders linked a pull request Feb 10, 2021 that will close this issue
@jnooree jnooree linked a pull request Nov 7, 2022 that will close this issue
jnooree added a commit to jnooree/pam-watchid that referenced this issue Nov 7, 2022
jnooree added a commit to jnooree/pam-watchid that referenced this issue Nov 7, 2022
jnooree added a commit to jnooree/pam-watchid that referenced this issue Nov 7, 2022
Partially supersedes biscuitehh#20.

Closes biscuitehh#15.
Resolves biscuitehh#7, resolves biscuitehh#14,
resolves biscuitehh#16, resolves biscuitehh#17.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet