Тема: Сниффер
Показать сообщение отдельно
Старый 22.05.2011, 14:31   #198
TOM_RUS
MaNGOS Dev
 
Регистрация: 11.03.2010
Сообщений: 468
Сказал(а) спасибо: 0
Поблагодарили 514 раз(а) в 163 сообщениях
TOM_RUS Как свет с небесTOM_RUS Как свет с небесTOM_RUS Как свет с небесTOM_RUS Как свет с небесTOM_RUS Как свет с небесTOM_RUS Как свет с небес
По умолчанию

Цитата:
Сообщение от Grinder Посмотреть сообщение
Разщбираюсь со снифером! Как образец взял tiawps.
Добился получения процесса!
Но блин упорно не хочет читать SessionKey

В tiawps делают вот так:

PHP код:
DWORD number_of_read_bytes=0;

    
char pointer***91;4***93; = {'\0'};
    
ReadProcessMemory(wow_process_handle, (LPCVOID)CONNECTION_PTR_OFFSETpointer4, &number_of_read_bytes);

    if(
number_of_read_bytes != 4)
    {
        
printf("couldn't read pointer, just read %u bytes instead of 4\n"number_of_read_bytes);
        
CloseHandle(wow_process_handle);
        return 
FALSE;
    }
    
// convert bytes to pointer
    
unsigned int sessionKeyPosition 0;
    
memcpy(&sessionKeyPositionpointer4);
    
printf("Got pointer: %#X\n"sessionKeyPosition);

    
number_of_read_bytes 0;
    
ReadProcessMemory(wow_process_handle, (LPCVOID)(SESSIONKEY_OFFSET+sessionKeyPosition), sessionKeySESSIONKEY_LENGTH, &number_of_read_bytes);
    
CloseHandle(wow_process_handle);
    if(
number_of_read_bytes != SESSIONKEY_LENGTH)
    {
        
printf("couldn't read sessionkey, read %u bytes instaed of %u\n"number_of_read_bytesSESSIONKEY_LENGTH);
        return 
FALSE;
    } 
Это забил в enum'е чтобы не передавать параметры

PHP код:
SESSIONKEY_LENGTH 40
SESSIONKEY_OFFSET 
0x508
CONNECTION_PTR_OFFSET 
0x00D03F14 
Для проверки делал вывод в консоль на равенство
PHP код:
if(number_of_read_bytes != SESSIONKEY_LENGTH
В итоге плучил что number_of_read_bytes = 0!!!!! Где косяк?
GetLastError() и смотрите код ошибки...
TOM_RUS вне форума   Ответить с цитированием