Так что я недавно подключил PR_Write в Mozilla и смог записать результаты (все соединения буквально) в файл журнала, однако есть одна проблема, я предполагал, что после подключения PR_Write я смог бы захватить HTTPS, но когда я вхожу на сервер HTTPS, он не захватывает незашифрованные данные POST, я пытался использовать localhost и создавал поддельный POST, и он фиксирует сообщение localhost, учитывая, что он не зашифрован. Является ли точка подключения PR_Write не к захвату всех видов данных?PR_Write после подключения
Это прототип PR_Write, что я использую и переменная:
typedef int (*Custom_Write)(PVOID, LPVOID, INT);
Custom_Write c_write=NULL;
PR_Write definition by Mozilla
и в функции объезда, я называю оригинальный PR_Write, получая адрес, хранящийся в c_write
с использованием GetProcAddress. Ниже, как это называется:
// detour function
int detour_pr_write(int fd, LPVOID buf, int bytes)
{
// ... code for virtual protect
int retaddr=c_write(fd, buf, bytes);
// file functions
fwrite(buf, sizeof(char), strlen(buf), fileHandle);
// ... code for virtual protect
return retaddr; // go to original function
}
Каротажа и другие вещи работают нормально, но когда дело доходит до написания зашифрованных данных POST, он выходит из строя. Это заканчивается написанием тарабарщины.
Уверенный - в нем есть strlen(). Связано быть неправильным. –
Интересно, почему у подключенного вызова есть параметр 'int bytes'? Я уверен, что он должен быть там по какой-то причине ..... –
определение PR_Write имеет те три параметра, которые указаны здесь https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSPR/Ссылка/PR_Write – demogorgon