Files
2020-12-12 17:43:21 -05:00

35 lines
3.6 KiB
JSON

{
"base": {
"name": "SharpGen",
"type": "extended",
"author": ["Russel Van Tuyl (@Ne0nd0g)"],
"credits": ["Ryan Cobb (@cobbr)"],
"path": ["windows", "x64", "csharp", "misc", "SharpGen.json"],
"platform": "WINDOWS",
"arch": "x64",
"lang": "dotnet_core",
"privilege": false,
"remote": "",
"local": [""],
"options": [
{"name": "dotnetbin", "value": "dotnet", "required": true, "flag": "", "description":"The file path for the \"dotnet\" core executable. Use just executable name if in PATH variable "},
{"name": "sharpgenbin", "value": "data/src/cobbr/SharpGen/bin/release/netcoreapp2.1/SharpGen.dll", "required": true, "flag": "", "description":"Path to SharpGen DLL"},
{"name": "help", "value": "false", "required": false, "flag": "-h", "description":"Show help information"},
{"name": "file", "value": "output.exe", "required": true, "flag": "-f", "description":"The output file name (not the path)"},
{"name": "dotnet", "value": "", "required": false, "flag": "-d", "description":"The Dotnet Framework version to target (net35 or net40)"},
{"name": "output-kind", "value": "", "required": false, "flag": "-o", "description":"The OutputKind to use (dll or console)"},
{"name": "platform", "value": "", "required": false, "flag": "-p", "description":" The Platform to use (AnyCpy, x86, or x64)"},
{"name": "no-optimization", "value": "", "required": false, "flag": "-n", "description":"Don't use source code optimization"},
{"name": "assembly-name", "value": "", "required": false, "flag": "-a", "description":"The name of the assembly to be generated"},
{"name": "source-file", "value": "", "required": false, "flag": "-s", "description":"The source code to compile"},
{"name": "class-name", "value": "", "required": false, "flag": "-c", "description":"The name of the class to be generated"},
{"name": "confuse", "value": "", "required": false, "flag": "--confuse", "description":"The ConfuserEx ProjectFile configuration"},
{"name": "code", "value": "Console.WriteLine(Mimikatz.LogonPasswords());", "required": false, "flag": "", "description":"CSharp code to compile"},
{"name": "verbose", "value": "", "required": false, "flag": "", "description":"Show dotnet compilation output"},
{"name": "spawnto", "value": "C:\\WIndows\\System32\\dllhost.exe", "required": true, "flag": "", "description": "The file path to the executable that will be spawned and the shellcode will be injected into"},
{"name": "args", "value": "", "required": false, "flag": "", "description": "Arguments for the spawnto process. They will actually be used"}
],
"description": "SharpGen is a .NET Core console application that utilizes the Rosyln C# compiler to quickly cross-compile .NET Framework console applications or libraries.\r\n\tGitHub: https://github.com/cobbr/SharpGen\r\n\tIntroductory blog post: https://cobbr.io/SharpGen.html.\r\n\tThe generated .NET assembly will be converted to shellcode and executed on target host in the spawnto process.",
"notes": "This module is based on Ryan Cobb's SharpGen projects at https://github.com/cobbr/SharpGen.\r\n\t.NET CORE 2.1 SDK must ALREADY be installed on the Merlin server: https://dotnet.microsoft.com/download/dotnet-core/2.1.\r\n\tThe SharpGen DLL must be built ahead of time. This can be done by issuing the 'dotnet build -c release' command from the 'data/src/cobbr/SharpGen' directory to build the `SharpGen.dll` executable.\r\n\tSharpGen can be run on other operating systems such as Linux and macOS.\r\n\tView the SharpSploit API reference for additional commands at: https://sharpsploit.cobbr.io/api/index.html"
}
}