sunnamed434 / BitMono

Obfuscator for .NET and Mono, with a customizable engine for building your own obfuscators.
https://bitmono.readthedocs.io/en/latest/
MIT License
316 stars 26 forks source link

Can not run ActiveX dll after BitMono crypted. #171

Closed Zeki-Gursoy closed 1 month ago

Zeki-Gursoy commented 4 months ago

I wrote Net FW 4.8.1 dll and create TLB. Dll can not load in Excel VBA. I get "Automation error". Trying 32 and 64 bits.

sunnamed434 commented 4 months ago

Hi, can you send the Protections.json file, and the logs you got from BitMono

Zeki-Gursoy commented 4 months ago

Of course... I attached. . bitmono-2024-05-09-22-02-45.log

protections.json

sunnamed434 commented 3 months ago
[2024-05-09 22:02:47 WRN][BitMono.Obfuscation.Notifiers.ProtectionsRuntimeMonikerNotifier] [!!!] UnmanagedString - Intended for .NET Core runtime
[2024-05-09 22:02:47 WRN][BitMono.Obfuscation.Notifiers.ProtectionsRuntimeMonikerNotifier] [!!!] UnmanagedString - Intended for .NET Framework runtime
[2024-05-09 22:02:47 WRN][BitMono.Obfuscation.Notifiers.ProtectionsRuntimeMonikerNotifier] [!!!] AntiDecompiler - Intended for Mono runtime
[2024-05-09 22:02:47 WRN][BitMono.Obfuscation.Notifiers.ProtectionsRuntimeMonikerNotifier] [!!!] BitDotNet - Intended for Mono runtime
[2024-05-09 22:02:47 WRN][BitMono.Obfuscation.Notifiers.ProtectionsRuntimeMonikerNotifier] [!!!] BitMono - Intended for Mono runtime

First of, when you see Intended for <...> runtime its means specific feature is only able to work on the provided runtime. By this I mean probably this is why your .dll can't be used normally, I'd recommend to disable next features: AntiDecompiler, BitDotNet, and BitMono.

But, to ensure it work fine, keep only AntiILdasm feature as single enabled feature in protections.json and try to repeat the same thing you did before and let me know if it work or not

Zeki-Gursoy commented 3 months ago

I tried all protection options one by one. My dll code not work in VBA below options: Also, BitMono app converts AnyCpu dll to 32 bit dll.

  1. NoNamespaces
  2. FullRenamer
  3. DotNetHook
  4. BitMethodDotnet
  5. BitDotNet
  6. BitMono
sunnamed434 commented 3 months ago

Ok. Try to do this

Zeki-Gursoy commented 3 months ago

I tried...

Have you idea?

sunnamed434 commented 3 months ago
  1. Ok, I'll try to make a fix
  2. Can you enable only AntiIldasm feature, and let me know if it work
Zeki-Gursoy commented 3 months ago

Ok, I tried only "AntiIlDasm" VBA code works. But, DLL code full readable with ILSPY.

sunnamed434 commented 3 months ago

Nice that it work. I guess FullRenamer was breaking smth in your code

sunnamed434 commented 3 months ago

Try to use CallToCalli, it should work fine and hide some code

sunnamed434 commented 1 month ago

Closing it for now, if you still experience problems with it let me know I'll reopen this