Категория
Информатика
Тип
реферат
Страницы
6 стр.
Дата
09.10.2009
Формат файла
.rtf — Rich Text Format (Wordpad)
Архив
20756.zip — 29.68 kb
  • api-spying_20756_1.rtf — 229.44 Kb
  • Readme_docus.me.txt — 125 Bytes
Оцените работу
Хорошо  или  Плохо


Текст работы

API Spying Alena Alena
API Spying
Сергей Холодилов
Я открываю свойства растений и трав..
Борис Гребенщиков
Словосочетанием «API Spying» называется слежение за вызовами функций API некоторым приложением. То есть, каждый факт вызова этим приложением выбранных
функций каким-то образом фиксируется, например, добавляется запись в лог
.
ПРИМЕЧАНИЕ
Для ясности назовём «некоторое приложение» исследуемым приложением, а
«выбранные функции» – отслеживаемыми функциями.
Зачем это нужно
API Spying может использоваться на одном
из этапов исследования программы, логику работы которой вы пока не до конца понимаете. Хотя эта технология и не позволяет получить детальную информацию, она может значительно сузить область последующих этапов исследования, сконцентрировав ваше внимание на тех вызовах, которые происходят в ключевые моменты работы программы.
На первый взгляд может показаться, что задача лучше решается с помощью перехвата API, так как он даёт возможность не только отследить вызов, но и изучить/изменить параметры и возвращаемое значение, или даже полностью переписать функцию.
Действительно, перехват API – замечательная и часто упоминаемая техника (на данный момент на RSDN этой теме посвящены три статьи), позволяющая довольно глубоко изучить исследуемое приложение, но это и гораздо более трудоёмкое решение. Даже если реализации функций будут почти пустыми (только запись в лог и вызов оригинальной функции), ваш код будет примерно таким:
typedef int (__stdcall* Function1_type)(int i);
Function_type _Function1;
// Обёртка , логирующая
вызовы
int __stdcall MyFunction1(int i)
printf("MyFunction1\n");
return _Function(i); // Вызов
оригинальной



Ваше мнение



CAPTCHA