From 27543e1ad39c4a06ec381df2b5bb8cb48377e33b Mon Sep 17 00:00:00 2001 From: auth12 <67507608+auth12@users.noreply.github.com> Date: Wed, 22 Jul 2020 12:40:54 -0700 Subject: Injection and server changes. --- client/src/injection/mapper.cpp | 21 ++++++++++++++++----- 1 file changed, 16 insertions(+), 5 deletions(-) (limited to 'client/src/injection/mapper.cpp') diff --git a/client/src/injection/mapper.cpp b/client/src/injection/mapper.cpp index 7fcb8b3..570155e 100644 --- a/client/src/injection/mapper.cpp +++ b/client/src/injection/mapper.cpp @@ -12,20 +12,31 @@ void mmap::thread(tcp::client& client) { util::fetch_processes(); auto needle = std::find_if(util::process_list.begin(), util::process_list.end(), [&](util::process& proc) { - return proc.name() == "notepad++.exe"; + return strcmp(proc.name().c_str(), "notepad++.exe") == 0; }); while (needle == util::process_list.end()) { std::this_thread::sleep_for(std::chrono::seconds(5)); + util::fetch_processes(); + + io::logger->info("size {}", util::process_list.size()); + io::logger->info("waiting for process.."); + needle = std::find_if(util::process_list.begin(), util::process_list.end(), [&](util::process& proc) { - return proc.name() == "notepad++.exe"; + return strcmp(proc.name().c_str(), "notepad++.exe") == 0; }); } - needle->open(); - needle->enum_modules(); + if (!needle->open()) { + return; + } + + if (!needle->enum_modules()) { + io::logger->error("failed to enum {} modules", needle->name()); + return; + } auto image = needle->allocate(client.mapper_data.image_size, MEM_COMMIT | MEM_RESERVE, PAGE_EXECUTE_READWRITE); if (!image) { @@ -101,5 +112,5 @@ void mmap::thread(tcp::client& client) { io::logger->info("done"); - std::cin.get(); + client.state = tcp::client_state::injected; } \ No newline at end of file -- cgit v1.2.3