Регистрация Главная Сообщество
Сообщения за день Справка Регистрация
Навигация
Zhyk.org LIVE! Реклама на Zhyk.org Правила Форума Награды и достижения Доска "почета"

Ответ
 
Опции темы
Старый 18.03.2012, 18:32   #1
Заблокирован
 Рыцарь-лейтенант
Аватар для RChesteR
 
RChesteR сломал счётчик популярности :(RChesteR сломал счётчик популярности :(RChesteR сломал счётчик популярности :(RChesteR сломал счётчик популярности :(RChesteR сломал счётчик популярности :(RChesteR сломал счётчик популярности :(RChesteR сломал счётчик популярности :(RChesteR сломал счётчик популярности :(RChesteR сломал счётчик популярности :(RChesteR сломал счётчик популярности :(RChesteR сломал счётчик популярности :(
Регистрация: 13.02.2011
Сообщений: 422
Популярность: 13168
Золото Zhyk.Ru: 10
Сказал(а) спасибо: 643
Поблагодарили 733 раз(а) в 369 сообщениях
Отправить сообщение для RChesteR с помощью ICQ Отправить сообщение для RChesteR с помощью Skype™
 
По умолчанию [ВИДЕО] Простейшая функция подключения с IDA, обходы и C + +

В этом уроке мы будем делать самые основные функции подключения использованием Detours 1,5 , IDA, OllyDbg или любого другого дизассемблера или отладчика (я буду использовать IDA для этого урока, как это наиболее очевидный споссоб, чтобы увидеть вначале функции мы хотим подключить ) и некоторые C + +. Наша цель программы это

Простейшая функция подключения с IDA, обходы и C + +


Код:
          #include <Windows.h>
#include <iostream>

double function(double arg)
{
    std::cout << "Function: Much easier to find me this way! " << arg << std::endl;
    return arg;
}

void function2()
{
  std::cout << "Function2: This is function2." << std::endl;
}

int main()
{
    for(;;)
    {
    Sleep(2500);
    function(3.14);
    Sleep(2500);
    function2();
    }

    return 0;
}
После того как мы собрали выше исходный код, мы собираемся открыть его в IDA и в поиске строк выберите Вид-> Открыть подвиды-> Shift + F12. функции,которые мы намерены подключить будут описаны в гайде
Код:
          double function(double arg)
Таким образом, в строчке Просмотр поиска
Код:
         Function: Much Easier to find me this way
[Ссылки могут видеть только зарегистрированные пользователи. ]
Дважды щелкните по нему, и он должен открыть в новой вкладке IDA-Вид на сегмент данных (сегмент данных содержит глобальные и статические переменные, используемые в программе, которые инициализируются. ) нашей программы.
[Ссылки могут видеть только зарегистрированные пользователи. ]
Снова дважды щелкните на строке и IDA приведет нас к функции где строка, которую мы искали, была перекрещена ссылками @ sub_4013CC +16 ч байт. Таким образом, наши
Код:
         Function: Much Easier to find me this way
начинается с адреса 0x4013CC.
[Ссылки могут видеть только зарегистрированные пользователи. ]
После того как мы нашли адрес, по которому наша функция начинается, пора подключить его, мы сделаем это с помощью обходных путей. Создайте новый проект библиотеки DLL в IDE на ваш выбор. Используйте этот источник,
Код:
        #include <windows.h>
#include <detours.h>
#include <iostream>

#define ADDRESS 0x40133C    //This is the address where our targeted function begins
double (__cdecl* originalFunction)(double); //Pointer to the function we are going to hook, must be declared same as original(returns double and takes double as argument)



/*Our modified function code that is going to be executed
before continuing to the code of original function*/
double hookedFunction(double a)  
{                                 
std::cout << "original function: argument = "<< a << std::endl; //we can access arguments passed to original function
a=50.1337;                                                        //Modify arguments
return originalFunction(a);                                        //before returning to normal execution of function
}

BOOL APIENTRY DllMain(HANDLE hModule, DWORD dwReason, LPVOID lpReserved)
{
switch (dwReason)
{
case DLL_PROCESS_ATTACH:
originalFunction = (double(__cdecl*)(double))DetourFunction((PBYTE)ADDRESS, (PBYTE)hookedFunction); //Magic
break;
}
return TRUE;
}
Собрать и заинжектить таким инжектором как Winject, и если вы все сделали правильно, вы должны получить это,
[Ссылки могут видеть только зарегистрированные пользователи. ]
[Ссылки могут видеть только зарегистрированные пользователи. ]//Перевод by mr.ChesT

Последний раз редактировалось RChesteR; 27.03.2012 в 19:55.
  Ответить с цитированием
Пользователь сказал cпасибо:
Drem95 (01.12.2012)
Старый 27.03.2012, 11:05   #2
Читер-спонсор
 Рыцарь-защитник
Аватар для Nickitee
 
Nickitee сломал счётчик популярности :(Nickitee сломал счётчик популярности :(Nickitee сломал счётчик популярности :(Nickitee сломал счётчик популярности :(Nickitee сломал счётчик популярности :(Nickitee сломал счётчик популярности :(Nickitee сломал счётчик популярности :(Nickitee сломал счётчик популярности :(Nickitee сломал счётчик популярности :(Nickitee сломал счётчик популярности :(Nickitee сломал счётчик популярности :(
Регистрация: 28.08.2009
Сообщений: 603
Популярность: 19129
Золото Zhyk.Ru: 500
Сказал(а) спасибо: 84
Поблагодарили 602 раз(а) в 321 сообщениях
 
По умолчанию Re: [ВИДЕО] Простейшая функция подключения с IDA, обходы и C + +

Код:
функции,которые мы намерены подключить в этом учебнике будут
Код:
Использование этого источника,
Код:
Собрать и внедрить его в программу с инжектором как Winject
________________
We are Ducks. We are birds. We like bread. We cryack. Cryack.
  Ответить с цитированием
Пользователь сказал cпасибо:
RChesteR (27.03.2012)
Старый 31.03.2012, 15:30   #3
 Разведчик
Аватар для SumaNer
 
SumaNer на правильном пути
Регистрация: 11.03.2012
Сообщений: 4
Популярность: 20
Сказал(а) спасибо: 0
Поблагодарили 6 раз(а) в 1 сообщении
 
По умолчанию Re: [ВИДЕО] Простейшая функция подключения с IDA, обходы и C + +

Вместо
std::cout<< ...

можна


#include <...>
using namespace std;

int main()
{
cout << ... <<endl;
cin << ...;
}
  Ответить с цитированием
Старый 08.11.2012, 21:14   #4
 Разведчик
Аватар для Web-Service
 
Web-Service скоро будет известенWeb-Service скоро будет известенWeb-Service скоро будет известенWeb-Service скоро будет известенWeb-Service скоро будет известен
Регистрация: 07.11.2012
Сообщений: 20
Популярность: 448
Сказал(а) спасибо: 76
Поблагодарили 37 раз(а) в 24 сообщениях
 
По умолчанию Re: [ВИДЕО] Простейшая функция подключения с IDA, обходы и C + +

SumaNer,using namespace std; - для того, чтоб каждый раз не прописывать перед cout std::
  Ответить с цитированием
Старый 23.11.2012, 16:37   #5
 Сержант
Аватар для avi2011class
 
avi2011class сломал счётчик популярности :(avi2011class сломал счётчик популярности :(avi2011class сломал счётчик популярности :(avi2011class сломал счётчик популярности :(avi2011class сломал счётчик популярности :(avi2011class сломал счётчик популярности :(avi2011class сломал счётчик популярности :(avi2011class сломал счётчик популярности :(avi2011class сломал счётчик популярности :(avi2011class сломал счётчик популярности :(avi2011class сломал счётчик популярности :(
Регистрация: 02.09.2012
Сообщений: 123
Популярность: 32496
Сказал(а) спасибо: 393
Поблагодарили 116 раз(а) в 89 сообщениях
Отправить сообщение для avi2011class с помощью Skype™
 
По умолчанию Re: [ВИДЕО] Простейшая функция подключения с IDA, обходы и C + +

замени это
std::cout<< ...
На это
#include <...>
using namespace std;

int main()
{
cout << ... <<endl;
cin << ...; }
________________
  Ответить с цитированием
Ответ


Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
[Статья] Избавляемся От Подключения Sdk.... [TLT]KotE*Mc228 Разработка ПО для Point Blank 3 06.03.2012 12:08
Функция записи видео на американских серверах Point Blank(Будет и у нас) Qull Общение и обсуждение, архив Point Blank 4 12.12.2011 16:18
Проблема подключения IOvelir Вопросы и ответы, обсуждения 7 13.03.2011 17:55
Логин в процессе подключения vladok000 Общение и обсуждение, архив Point Blank 1 31.01.2011 10:46

Заявление об ответственности / Список мошенников

Часовой пояс GMT +4, время: 04:14.

Пишите нам: [email protected]
Copyright © 2024 vBulletin Solutions, Inc.
Translate: zCarot. Webdesign by DevArt (Fox)
G-gaMe! Team production | Since 2008
Hosted by GShost.net