I got the same error when trying to run an app on my system. Following the @tripleee answer (trying to launch the app's binary) gave me a more instructive message:
wsee$ cd /Applications/someapp/Contents/MacOS
wsee$ ./someapp
2022-02-16 11:34:06.010 someapp The application with bundle ID XYZ is running setugid() which is not allowed. Exiting.
Sure enough, when I checked the setuid bit was set (bolded in example below):
wsee$ ls -l
drw**s**r-xr-x@ 3 wsee staff 96 12 Jul 2021 someapp
When an executable has its setuid bit set then it will be run as the file owner no matter which user launches it. In the above example, if user Bob launches someapp then it will run with the effective user id of 'wsee' even though it is Bob running the app.
Setuid (aka set-user-ID-on-execution and SUID) presents a serious security risk when used on executables owned by root
, because if a vulnerability exists in the executable then an attacker might be able to execute code as root, giving them limitless control over the system.
Removing the setuid bit was a simple matter of running:
chmod u-s someapp