BinaryScary / NET-Obfuscate

Obfuscate ECMA CIL (.NET IL) assemblies to evade Windows Defender AMSI
229 stars 50 forks source link

I get an issue when compile x64 version #1

Closed DjarDjar closed 4 years ago

DjarDjar commented 4 years ago

If i run NET-Obfuscate.exe -h, or any sort of command on the tool, I get this error: https://prnt.sc/u9t00l Unhandled Exception: System.IO.FileNotFoundException: Could not load file or assembly 'System.CommandLine.DragonFruit, Version=0.3.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35' or one of its dependencies. The system cannot find the file specified. at AutoGeneratedProgram.<Main>d__0.MoveNext() at System.Runtime.CompilerServices.AsyncTaskMethodBuilder1.Start[TStateMachine](TStateMachine& stateMachine) at AutoGeneratedProgram.Main(String[] args) at AutoGeneratedProgram.

(String[] args)`

BinaryScary commented 4 years ago

The project uses DragonFruit 0.3.0 for commandline utilities, you can download it from the NuGet repos here.

DjarDjar commented 4 years ago

@BinaryScary Could you help me a bit with the installation. Sorry, I am not familiar with .NET at all. Here is what I did: So basically I open powershell an type Install-Package System.CommandLine.DragonFruit -Version 0.3.0-alpha.20427.1, but then I get an error:

Install-Package : A parameter cannot be found that matches parameter name 'Version'.
At line:1 char:48
+ Install-Package System.CommandLine.DragonFruit -Version 0.3.0-alpha.2 ...
+                                                ~~~~~~~~
    + CategoryInfo          : InvalidArgument: (:) [Install-Package], ParameterBindingException
    + FullyQualifiedErrorId : NamedParameterNotFound,Microsoft.PowerShell.PackageManagement.Cmdlets.InstallPackage

Can you tell exactly how do I install this package and will I be required to build the .exe again after that.

Thank you

BinaryScary commented 4 years ago

I would suggest you to get at least a bit familiar with .NET and its ecosystem as there are cases where you may have to modify this tool depending on the binary you are trying to obfuscate, NET-Obfuscate is really only suppose to be a template.

In your case I believe the -Version flag is only available in the NuGet Package Manager Console inside Visual Studio, using a dev command prompt or removing the -Version flag should fix your issue.