open-obfuscator / o-mvll

:electron: O-MVLL is a LLVM-based obfuscator for native code (Android & iOS)
https://obfuscator.re/omvll
Apache License 2.0
617 stars 66 forks source link

XCode 14.3 Clang command failing #10

Closed mohammedDehairy closed 8 months ago

mohammedDehairy commented 1 year ago

Followed all instructions :

Using O-MVLL with Xcode is a bit easier than Android since we don’t need to deal with different libstdc++/libc++. To enable O-MVLL, one needs to go to:

Build Settings > Apple Clang - Custom Compiler Flags > Other C/C++ Flags

and add -fpass-plugin=<path>/omvll_xcode_14.dylib. We also need to disable the legacy pass manager with: -fno-legacy-pass-manager.

Finally, we can create an omvll.yml file next to the *.xcodeproj file which defines OMVLL_PYTHONPATH and OMVLL_CONFIG.

Et voila :)

but when i try to build using xcode i get this error:

Screenshot 2023-05-08 at 08 56 59

it seems clang crashed

Crashed Thread:        0  Dispatch queue: com.apple.main-thread

Exception Type:        EXC_BAD_ACCESS (SIGKILL (Code Signature Invalid))
Exception Codes:       UNKNOWN_0x32 at 0x0000000118000000
Exception Codes:       0x0000000000000032, 0x0000000118000000

Can you help me?

Target: iOS O-MVLL Version: OMVLL Version: 1.1.0-86087c7 / 14.0.0git (d5f117e38620783fc095e5620416bdae08554588) Compilation of O-MVLL: on my own

romainthomas commented 1 year ago

This is likely because of M1 code signature enforcement. I know that it is not ideal but I had to disable SIP.

mohammedDehairy commented 1 year ago

Thanks @romainthomas for the quick response!

Yeah, I don’t think I can disabled SIP, any other possible work around?

if that’s the only way, I am afraid we’ll have to use some other obfuscation tool

JordiVentayol commented 1 year ago

Hi @mohammedDehairy , I was able to solve the error by signing the library: codesign --force --deep -s <identity> omvll_xcode_14.dylib .

Now I'm running into another problem:

jvmxcode

but you can try if the same thing happens to you.

JordiVentayol commented 1 year ago

Hi @mohammedDehairy , I was able to solve the error by signing the library: codesign --force --deep -s <identity> omvll_xcode_14.dylib .

Now I'm running into another problem:

jvmxcode

but you can try if the same thing happens to you.

Okay, this error was due to an IndentationError in my ovmll_config.py, so what was suggested above should solve the error.

marcobrador commented 8 months ago

Code signature was implemented as part of v1.0.3