Форум программистов, компьютерный форум, киберфорум
Наши страницы

C++

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 11, средняя оценка - 4.73
orienteer
7 / 6 / 0
Регистрация: 23.06.2009
Сообщений: 41
#1

Статья на rsdn, перехват API-функций - C++

08.06.2010, 03:35. Просмотров 1411. Ответов 3
Метки нет (Все метки)

Разбираю статью на рсдн, а именно Метод 1. Перехват API непосредственной записью в код системной функции.
dll вроде скомпилировал, дошел до тестирования
"Затем, откомпилируйте примеры внедряемых DLL, описанных выше. Результат компиляции мы назвали у себя METOD1.DLL. Откомпилируйте пример процедуры внедрения этих DLL в код внешнего процесса. Для работоспособности этой процедуры к ней нужно добавить код главного модуля программы, нечто вроде:
C++
1
2
3
4
5
6
7
8
9
10
11
int main(int argc, char* argv[])
{
  if(argc<3) 
  {
    printf("Parameters: PID , Dllname"); 
    getch();
    return 0;
  }
  InjectDll(atol(argv[1]), argv[2]);
  return 0;
}
вот здесь я остановился.
Помогите, что нужно сделать, как подключить эту библиотеку, создать эту программу ATTACH .EXE?
решаю задачу с библиотекой в первый раз. Заранее спасибо

Добавлено через 12 минут
из статьи:
"При запуске этой программы (назовем ее ATTACH .EXE) в качестве параметров надо будет указать идентификатор процесса, в который мы внедряем свой код, и имя DLL, которую следует прицепить к внешнему процессу."

Добавлено через 3 часа 15 минут
помогите кто в этом разбирается
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
08.06.2010, 03:35
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Статья на rsdn, перехват API-функций (C++):

Перехват пользовательских функций (процедур) - C++
Возможно перехватить API сообщение или функцию, а также любую другую ф-цию вызываемую из библиотеки. Но есть ли возможность перехватить...

Перехват и подмена вызываемых функций - C++
Здравствуйте. Нужно подменить вызов таких функций как open(), lstat(), stat(), read(), write(), mkdir(), chdir(), getcwd() для...

Перехват API через таблицу импорта - C++ Builder
Всем привет. Давно задумал совершить сабжевое действие, но в интернете всегда попадается либо код на дельфи, либо на низкоуровневых...

Перехват API функций - C++ WinAPI
Разработать программу, которая запускает приложение, переданное программе на вход. После запуска приложения должна выполняться...

Перехват API функций. Таблица импорта - C++ WinAPI
Необходимо лoггиpoвaть вызовы некоторых API-шных функций (для примера CloseHandle) в заданном процессе. После прочтения материала из...

Учебная статья - создание меню средствами API C++ - C++ WinAPI
Учебная статья - создание меню средствами API C++\СИ Добрый день, решил поделиться инфой по созданию меню VS 2010 средствами только API....

3
Black Fregat
1395 / 1026 / 231
Регистрация: 31.05.2009
Сообщений: 4,276
08.06.2010, 05:16 #2
Это стеб? Мне представляется странным задавать такие вопросы, занимаясь инжекцией DLL.
0
orienteer
7 / 6 / 0
Регистрация: 23.06.2009
Сообщений: 41
08.06.2010, 21:45  [ТС] #3
это не стеб
так я в первый раз этим занимаюсь, и еще толком не разобрался(можно сказать вообще не разобрался еще)
если этот вопрос тривиальный, подскажите уж плз начинающему в этом деле

Добавлено через 10 часов 41 минуту
Black Fregat, если знаешь напиши плз, не могу разобраться
0
orienteer
7 / 6 / 0
Регистрация: 23.06.2009
Сообщений: 41
10.06.2010, 02:51  [ТС] #4
народ, кто знает как работать с dll - объясните
при компиляции у меня создался только .dll файл, как его подключать?

Добавлено через 3 минуты
я скомпилировал тот код, создал программу
C++
1
2
3
4
5
6
7
#include "stdafx.h"
#include <windows.h>
int _tmain(int argc, _TCHAR* argv[])
{
    MessageBox(NULL, L"Something has been written here", L"MessageBox", 0);
    return 0;
}
у меня Visual Studio, запускаю свою dll, выбираю запускать вместе с этой программой, результата нет. Что я не так делаю?

Добавлено через 3 часа 54 минуты
дико извиняюсь за такие тупые вопросы, тему можно удалить
0
10.06.2010, 02:51
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
10.06.2010, 02:51
Привет! Вот еще темы с ответами:

Учебная статья - создаем строку состояния на API - C++ WinAPI
Строка состояния на API Необходимо добавить код: #include &lt;CommCtrl.h&gt; #pragma comment(lib,&quot;ComCtl32.Lib&quot;) Значит...

Перехват API - C++ WinAPI
Сразу код ) DWORD dwProtect = PAGE_READWRITE; BYTE old; BYTE * fPtr; #pragma pack(push, 1)

Перехват API - Delphi WinAPI
Здравствуйте, подскажите пожалуйста как можно перехватить функцию ReadFile? В интернете достаточно много информации, но разобраться с ней...

Перехват API вызовов - C++ WinAPI
Здравствуйте! Пытаюсь перехватить вызов функции CreateFileW и заменить на свою MyCreateFileW. Для этого в процесс(тестовая программа,...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru