Суббота, 05.10.2024, 00:17 Приветствую вас Гость | Группа "Гости" 
[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 1 из 1
  • 1
Модератор форума: Anton93, Волк-1024, xXxSh@dowxXx  
Inject exe to process
xXxSh@dowxXxДата: Пятница, 27.12.2013, 19:57 | Сообщение # 1
Авторитетный
Зарегистрирован: 22.01.2012
Группа: Модераторы
Сообщений: 702
Статус: Offline
И снова здравствуйте!

Есть у меня исходник одного примера инжекта исполняемых файлов в процесс, исходник очень простой, даже помнится мне пару лет назад мы его уже обсуждали, но в связи с давними переездами форума видимо тема где то затерялась, ну да ладно, не суть...

так вот, в исходнике есть одна процедура, вот кстати и она:
Код

procedure MyFunc(Mass: Pointer); stdcall;
    begin
    with TMass(Mass^) do
           begin
             @WinExec:=GetProcAddress(LoadLibrary(Kernel32), WinExecName);
             @Sleep:=GetProcAddress(LoadLibrary(Kernel32), SleepName);
             while true do
               begin
                WinExec(MyName, 5);
                Sleep(10000);
               end;
           end;
    end;

но вот незадача, необходимо реализовать проверку на то запущен ли наш файл из процесса в который мы проинжектились, дабы не запуститься дважды, или не запущен.

необходимо как то добавить функцию проверки процесса (она кстати тоже есть в исходнике, но она относится к основной программе инжектору) в процедуру которая инжектится с файлом в процесс, как это можно реализовать?

выкладываю исходник что бы все было более менее понятно, если не затруднит, подскажите пожалуйста, будьте так любезны?

Добавлено (27.12.2013, 19:57)
---------------------------------------------
И еще, вот в этом примере инжектиться не сам исполняемый файл в процесс, а лишь только часть кода которая его запускает оттуда где лежит сам исполняемый exe файл, а может быть кто нибудь знает как целиком инжектить файл в процесс ну или в память, или проще переписать код в библиотеку и инжектить уже её ?

Прикрепления: inj_exe_to_proc.rar (10.0 Kb)


Сообщение отредактировал xXxSh@dowxXx - Пятница, 27.12.2013, 15:19
 
d4rkzyДата: Пятница, 27.12.2013, 22:20 | Сообщение # 2
Постоянный
Зарегистрирован: 15.11.2013
Группа: Пользователи
Сообщений: 135
Статус: Offline
[hide]
Цитата xXxSh@dowxXx ()
быть кто нибудь знает как целиком инжектить файл в процесс ну или в память, или проще переписать код в библиотеку и инжектить уже её ?


Прикрепил юнит для запуска файла из стрим массива в память (можно юзать стрим или стринг)

Пример использования:
Код
var
D4RKZY : string;
begin
ExecuteFromMem(ParamStr(0), '', @D4RKZY[1]);
end;


Подробней:
Код
ExecuteFromMem(ПУТЬ ДО ФАЙЛА В КОТОРЫЙ ИНЖЕКТИМ, '', @массив1]);
ExecuteFromMem('explorer.exe', '', @массив1]);[/hide]
Прикрепления: uExecFromMem.pas (5.5 Kb)


Сообщение отредактировал d4rkzy - Пятница, 27.12.2013, 22:21
 
  • Страница 1 из 1
  • 1
Поиск:

delphicode.ru © 2008 - 2024 Хостинг от uCoz