From 3db88263acda0170d37c8185d6c23699de5c3a7e Mon Sep 17 00:00:00 2001 From: IDontCode Date: Wed, 11 Nov 2020 14:57:55 -0800 Subject: [PATCH] renamed the project and added added a try/catch in nasa::injector_ctx::translate so if the pml4 index isnt in the std::map then go and get the pml4e, insert it into map_into's pml4 and also insert the index into the std::map --- nasa-injector.sln => reverse-injector.sln | 11 +-- reverse-injector/icon.rc | 3 + .../injector_ctx/injector_ctx.cpp | 54 ++++++++++++--- .../injector_ctx/injector_ctx.hpp | 0 {nasa-injector => reverse-injector}/main.cpp | 8 ++- .../mem_ctx/mem_ctx.cpp | 31 ++++----- .../mem_ctx/mem_ctx.hpp | 0 .../reverse-injector.vcxproj | 65 ++---------------- .../reverse-injector.vcxproj.filters | 5 ++ .../reverse-injector.vcxproj.user | 0 reverse-injector/small.ico | Bin 0 -> 137278 bytes .../util/loadup.hpp | 0 .../util/nt.hpp | 0 .../util/util.hpp | 0 .../vdm/raw_driver.hpp | 0 .../vdm/vdm.hpp | 0 .../vdm_ctx/vdm_ctx.cpp | 0 .../vdm_ctx/vdm_ctx.hpp | 0 18 files changed, 79 insertions(+), 98 deletions(-) rename nasa-injector.sln => reverse-injector.sln (52%) create mode 100644 reverse-injector/icon.rc rename {nasa-injector => reverse-injector}/injector_ctx/injector_ctx.cpp (54%) rename {nasa-injector => reverse-injector}/injector_ctx/injector_ctx.hpp (100%) rename {nasa-injector => reverse-injector}/main.cpp (90%) rename {nasa-injector => reverse-injector}/mem_ctx/mem_ctx.cpp (97%) rename {nasa-injector => reverse-injector}/mem_ctx/mem_ctx.hpp (100%) rename nasa-injector/nasa-injector.vcxproj => reverse-injector/reverse-injector.vcxproj (60%) rename nasa-injector/nasa-injector.vcxproj.filters => reverse-injector/reverse-injector.vcxproj.filters (93%) rename nasa-injector/nasa-injector.vcxproj.user => reverse-injector/reverse-injector.vcxproj.user (100%) create mode 100644 reverse-injector/small.ico rename {nasa-injector => reverse-injector}/util/loadup.hpp (100%) rename {nasa-injector => reverse-injector}/util/nt.hpp (100%) rename {nasa-injector => reverse-injector}/util/util.hpp (100%) rename {nasa-injector => reverse-injector}/vdm/raw_driver.hpp (100%) rename {nasa-injector => reverse-injector}/vdm/vdm.hpp (100%) rename {nasa-injector => reverse-injector}/vdm_ctx/vdm_ctx.cpp (100%) rename {nasa-injector => reverse-injector}/vdm_ctx/vdm_ctx.hpp (100%) diff --git a/nasa-injector.sln b/reverse-injector.sln similarity index 52% rename from nasa-injector.sln rename to reverse-injector.sln index 3f2b9b2..569ee3c 100644 --- a/nasa-injector.sln +++ b/reverse-injector.sln @@ -3,24 +3,15 @@ Microsoft Visual Studio Solution File, Format Version 12.00 # Visual Studio Version 16 VisualStudioVersion = 16.0.30503.244 MinimumVisualStudioVersion = 10.0.40219.1 -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "nasa-injector", "nasa-injector\nasa-injector.vcxproj", "{ED392663-3AF3-40DE-8AC7-2F373B3E9B45}" +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "reverse-injector", "reverse-injector\reverse-injector.vcxproj", "{ED392663-3AF3-40DE-8AC7-2F373B3E9B45}" EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution - Debug|x64 = Debug|x64 - Debug|x86 = Debug|x86 Release|x64 = Release|x64 - Release|x86 = Release|x86 EndGlobalSection GlobalSection(ProjectConfigurationPlatforms) = postSolution - {ED392663-3AF3-40DE-8AC7-2F373B3E9B45}.Debug|x64.ActiveCfg = Debug|x64 - {ED392663-3AF3-40DE-8AC7-2F373B3E9B45}.Debug|x64.Build.0 = Debug|x64 - {ED392663-3AF3-40DE-8AC7-2F373B3E9B45}.Debug|x86.ActiveCfg = Debug|Win32 - {ED392663-3AF3-40DE-8AC7-2F373B3E9B45}.Debug|x86.Build.0 = Debug|Win32 {ED392663-3AF3-40DE-8AC7-2F373B3E9B45}.Release|x64.ActiveCfg = Release|x64 {ED392663-3AF3-40DE-8AC7-2F373B3E9B45}.Release|x64.Build.0 = Release|x64 - {ED392663-3AF3-40DE-8AC7-2F373B3E9B45}.Release|x86.ActiveCfg = Release|Win32 - {ED392663-3AF3-40DE-8AC7-2F373B3E9B45}.Release|x86.Build.0 = Release|Win32 EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE diff --git a/reverse-injector/icon.rc b/reverse-injector/icon.rc new file mode 100644 index 0000000..5856874 --- /dev/null +++ b/reverse-injector/icon.rc @@ -0,0 +1,3 @@ +// Icon Resource Definition +#define MAIN_ICON 102 +MAIN_ICON ICON "small.ico" \ No newline at end of file diff --git a/nasa-injector/injector_ctx/injector_ctx.cpp b/reverse-injector/injector_ctx/injector_ctx.cpp similarity index 54% rename from nasa-injector/injector_ctx/injector_ctx.cpp rename to reverse-injector/injector_ctx/injector_ctx.cpp index b126c3f..6439def 100644 --- a/nasa-injector/injector_ctx/injector_ctx.cpp +++ b/reverse-injector/injector_ctx/injector_ctx.cpp @@ -5,17 +5,18 @@ namespace nasa injector_ctx::injector_ctx(nasa::mem_ctx* map_into, nasa::mem_ctx* map_from) : map_into(map_into), - map_from(map_from) + map_from(map_from), + pml4_index_map{} {} injector_ctx::~injector_ctx() { const auto pml4 = reinterpret_cast( - this->map_into->set_page( - this->map_into->get_dirbase())); - + map_into->set_page( + map_into->get_dirbase())); + // zero inserted pml4e's... - for (const auto [real_idx, inserted_idx] : this->pml4_index_map) + for (const auto [real_idx, inserted_idx] : pml4_index_map) pml4[inserted_idx] = pml4e{ NULL }; while (!SwitchToThread()); @@ -36,13 +37,13 @@ namespace nasa std::vector> present_pml4es; std::vector empty_pml4es; - // find present pml4e's in usermode, and also find empty pml4e's in usermode... - for (auto idx = 0u; idx < 256; ++idx) + // find present pml4e's in map_from, and also find empty pml4e's in map_into... + for (auto idx = 100u; idx < 256; ++idx) { if (source_pml4[idx].present) present_pml4es.push_back({ idx, source_pml4[idx] }); - if (!target_pml4[idx].present) + if (!target_pml4[idx].value) empty_pml4es.push_back(idx); } @@ -53,7 +54,7 @@ namespace nasa // setup translation table and insert pml4e's... for (auto idx = 0u; idx < present_pml4es.size(); ++idx) { - this->pml4_index_map.insert({ present_pml4es[idx].first, empty_pml4es[idx] }); + pml4_index_map.insert({ present_pml4es[idx].first, empty_pml4es[idx] }); target_pml4[empty_pml4es[idx]] = present_pml4es[idx].second; } return true; @@ -63,7 +64,40 @@ namespace nasa std::uintptr_t injector_ctx::translate(std::uintptr_t translate) const { virt_addr_t virt_addr{ reinterpret_cast(translate) }; - virt_addr.pml4_index = pml4_index_map[virt_addr.pml4_index]; + try + { + virt_addr.pml4_index = pml4_index_map.at(virt_addr.pml4_index); + } + catch (const std::out_of_range& e) + { + // the pml4e is not in the map so we need to go get it + // and put it inside of the map. also put it inside of + // map_into's pml4... + + const auto map_into_pml4 = + reinterpret_cast( + map_into->set_page( + map_into->get_dirbase())); + + const auto map_from_pml4 = + reinterpret_cast( + map_from->set_page( + map_from->get_dirbase())); + + const auto new_pml4e = + map_from_pml4[virt_addr.pml4_index]; + + for (auto idx = 100u; idx < 256; ++idx) + { + if (!map_into_pml4[idx].value) + { + map_into_pml4[idx] = new_pml4e; + pml4_index_map[virt_addr.pml4_index] = idx; + virt_addr.pml4_index = idx; + break; + } + } + } return reinterpret_cast(virt_addr.value); } } \ No newline at end of file diff --git a/nasa-injector/injector_ctx/injector_ctx.hpp b/reverse-injector/injector_ctx/injector_ctx.hpp similarity index 100% rename from nasa-injector/injector_ctx/injector_ctx.hpp rename to reverse-injector/injector_ctx/injector_ctx.hpp diff --git a/nasa-injector/main.cpp b/reverse-injector/main.cpp similarity index 90% rename from nasa-injector/main.cpp rename to reverse-injector/main.cpp index 315ca4e..f1cf10c 100644 --- a/nasa-injector/main.cpp +++ b/reverse-injector/main.cpp @@ -4,6 +4,12 @@ int __cdecl main(int argc, char** argv) { + if (argc < 3 || strcmp(argv[1], "--pid")) + { + std::printf("[!] please provide a process id... (--pid X)\n"); + return false; + } + const auto [drv_handle, drv_key] = vdm::load_drv(); if (!drv_handle || drv_key.empty()) { @@ -49,7 +55,7 @@ int __cdecl main(int argc, char** argv) vdm.set_read(_read_phys); vdm.set_write(_write_phys); - nasa::mem_ctx notepad_proc(vdm, util::get_pid("notepad.exe")); + nasa::mem_ctx notepad_proc(vdm, std::atoi(argv[2])); nasa::injector_ctx injector(&my_proc, ¬epad_proc); if (!injector.init()) diff --git a/nasa-injector/mem_ctx/mem_ctx.cpp b/reverse-injector/mem_ctx/mem_ctx.cpp similarity index 97% rename from nasa-injector/mem_ctx/mem_ctx.cpp rename to reverse-injector/mem_ctx/mem_ctx.cpp index 0f80b7d..8d84258 100644 --- a/nasa-injector/mem_ctx/mem_ctx.cpp +++ b/reverse-injector/mem_ctx/mem_ctx.cpp @@ -75,31 +75,30 @@ namespace nasa mem_ctx::~mem_ctx() { - set_pml4e(reinterpret_cast<::ppml4e>(get_dirbase()) + this->pml4e_index, pml4e{NULL}); - while (!SwitchToThread()); + const auto pml4 = + reinterpret_cast( + set_page(dirbase))[pml4e_index] = pml4e{ NULL }; } void* mem_ctx::set_page(void* addr) { // table entry change. + ++pte_index; + if (pte_index >= 511) { - ++pte_index; - if (pte_index >= 511) - { - ++pde_index; - pte_index = 0; - } - - if (pde_index >= 511) - { - ++pdpte_index; - pde_index = 0; - } + ++pde_index; + pte_index = 0; + } - if (pdpte_index >= 511) - pdpte_index = 0; + if (pde_index >= 511) + { + ++pdpte_index; + pde_index = 0; } + if (pdpte_index >= 511) + pdpte_index = 0; + pdpte new_pdpte = { NULL }; new_pdpte.present = true; new_pdpte.rw = true; diff --git a/nasa-injector/mem_ctx/mem_ctx.hpp b/reverse-injector/mem_ctx/mem_ctx.hpp similarity index 100% rename from nasa-injector/mem_ctx/mem_ctx.hpp rename to reverse-injector/mem_ctx/mem_ctx.hpp diff --git a/nasa-injector/nasa-injector.vcxproj b/reverse-injector/reverse-injector.vcxproj similarity index 60% rename from nasa-injector/nasa-injector.vcxproj rename to reverse-injector/reverse-injector.vcxproj index 8e883b0..9a90603 100644 --- a/nasa-injector/nasa-injector.vcxproj +++ b/reverse-injector/reverse-injector.vcxproj @@ -1,14 +1,6 @@ - - Debug - Win32 - - - Release - Win32 - Debug x64 @@ -24,21 +16,9 @@ {ed392663-3af3-40de-8ac7-2f373b3e9b45} nasainjector 10.0 + reverse-injector - - Application - true - v142 - Unicode - - - Application - false - v142 - true - Unicode - Application true @@ -57,12 +37,6 @@ - - - - - - @@ -70,46 +44,12 @@ - - true - - - false - true false - - - Level3 - true - WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions) - true - - - Console - true - - - - - Level3 - true - true - true - WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) - true - - - Console - true - true - true - - Level3 @@ -158,6 +98,9 @@ + + + diff --git a/nasa-injector/nasa-injector.vcxproj.filters b/reverse-injector/reverse-injector.vcxproj.filters similarity index 93% rename from nasa-injector/nasa-injector.vcxproj.filters rename to reverse-injector/reverse-injector.vcxproj.filters index 71363a7..0ce1288 100644 --- a/nasa-injector/nasa-injector.vcxproj.filters +++ b/reverse-injector/reverse-injector.vcxproj.filters @@ -56,4 +56,9 @@ Header Files + + + Header Files + + \ No newline at end of file diff --git a/nasa-injector/nasa-injector.vcxproj.user b/reverse-injector/reverse-injector.vcxproj.user similarity index 100% rename from nasa-injector/nasa-injector.vcxproj.user rename to reverse-injector/reverse-injector.vcxproj.user diff --git a/reverse-injector/small.ico b/reverse-injector/small.ico new file mode 100644 index 0000000000000000000000000000000000000000..ce58e66246c6d4c41e4dc24e8662b20555443e2c GIT binary patch literal 137278 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

By!Z$6W0zG+bySh9wz)k+vYgm9gzIm?@VV3l2 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 rMtSFZ