Benvenuto! Per postare e godere delle funzionalità del forum registrati, occorrono pochi secondi ed è gratis!

Aiuto....address logger WR

1 Life, 1 Avatar <3
Messaggi: 9,074
Discussioni: 271
Registrato: 08-2011
Reputazione:
77

Mix: 0
Stavo pensando di farmi il mio logger personale.Cioè , un logger che mi trovasse gli address, ma comunque volevo solo prendere una guida e copia incollarla, niente di che, poi ci lavorerò su.
Allora gli errori sono questi:
1>------ Inizio compilazione: Progetto: Logger, Configurazione: Release Win32 ------
1> Log.cpp
1>Log.cpp(15): warning C4996: 'strcpy': This function or variable may be unsafe. Consider using strcpy_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
1> C:\Program Files\Microsoft Visual Studio 10.0\VC\include\string.h(105): vedere la dichiarazione di 'strcpy'
1>Log.cpp(16): warning C4996: 'strcat': This function or variable may be unsafe. Consider using strcat_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
1> C:\Program Files\Microsoft Visual Studio 10.0\VC\include\string.h(110): vedere la dichiarazione di 'strcat'
1>Log.cpp(2Cool: warning C4996: '_vsnprintf': This function or variable may be unsafe. Consider using _vsnprintf_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
1> C:\Program Files\Microsoft Visual Studio 10.0\VC\include\stdio.h(363): vedere la dichiarazione di '_vsnprintf'
1>Log.cpp(35): error C2664: 'GetModuleFileNameW': impossibile convertire il parametro 2 da 'char [320]' a 'LPWSTR'
1> I tipi a cui si punta sono privi di relazioni. La conversione richiede reinterpret_cast, cast di tipo C o cast di tipo funzione
1>Log.cpp(3Cool: fatal error C1075: fine file raggiunta prima che fosse trovata la corrispondenza per l'elemento parentesi graffa '{' di sinistra in 'Log.cpp(33)'
1> Main.cpp
1>Main.cpp(11): error C2664: 'GetModuleHandleW': impossibile convertire il parametro 1 da 'const char [12]' a 'LPCWSTR'
1> I tipi a cui si punta sono privi di relazioni. La conversione richiede reinterpret_cast, cast di tipo C o cast di tipo funzione
1>Main.cpp(17): error C2153: le costanti esadecimali devono avere almeno una cifra esadecimale
1>Main.cpp(1Cool: error C2153: le costanti esadecimali devono avere almeno una cifra esadecimale
========== Compilazione: 0 completate, 1 non riuscite, 0 aggiornate, 0 ignorate ==========






e i codici sono questi:
Pattern.h


DWORD dwSize;
DWORD dwStartAddress;

BOOL bCompare(const BYTE* pData, const BYTE* bMask, const char* szMask)
{
for(;*szMask;++szMask,++pData,++bMask)
{
if(*szMask == 'x' && *pData != *bMask)
return 0;
}
return (*szMask)==NULL;
}
DWORD FindPattern(BYTE *bMask, char * szMask, int codeOffset, BOOL extract)
{
for(DWORD i = 0; i < dwSize; i++)
{
if(bCompare((BYTE*)(dwStartAddress + i),bMask,szMask))
{
if(extract)
{
return *(DWORD*)(dwStartAddress + i + codeOffset);
}
else
{
return (DWORD)(dwStartAddress + i + codeOffset);
}
}
}
return NULL;
}

Log.h

char *GetDirectoryFile(char *filename);
void __cdecl Writelog (const char * fmt, ...);
void logging(HMODULE hDll);

Main.cpp

#include <windows.h>
#include <stdio.h>
#include "Log.h"
#include "Pattern.h"

void SearchPatterns(void)
{
Sleep(1000);
dwStartAddress = 0x400000;
do {
dwStartAddress = (DWORD)GetModuleHandle("WarRock.exe");
Sleep(10);
}while(!dwStartAddress);

dwSize = 0x500000;

DWORD dwPlayerPointer = FindPattern((PBYTE)"\xA1\xF0\x8A\x9D\x00\x3B\xC3\x 74\x16\x33\xC9\x41\x89\x98\xA4\x02\x01\x00 ","xxxx?xxxxxxxxxxx?",1,true);
DWORD dwServerPointer = FindPattern((PBYTE)"\x83\x3D\x8C\x8A\x9D\x00\x00\x 74\x07\xE8\x50\x02\x00\x00\xEB\x02\x32\xC0\x84\xC0 ", "xxxxx??xxxxx??xxxxxx", 2, true);



//Now only Player & Serverpointer, you can fiind some Patterns here in the forum! I will post it under this topic
Writelog("//==============Chowniiqhtz's Logger==============\\");
Writelog("//==============Created and developed by:==============\\");
Writelog("//======================Chowniiqhtz===================\\");
Writelog("#define Addr_Playerpointer 0x00%X",dwPlayerPointer);
Writelog("#define Addr_Serverpointer 0x00%X",dwServerPointer);


Writelog("************************************************");




Writelog("//==============hackmix.altervista.org==============\\");



ExitProcess(0);
}

BOOL WINAPI DllMain ( HMODULE hDll, DWORD dwReason, LPVOID lpReserved )
{
DisableThreadLibraryCalls(hDll);
if (dwReason==DLL_PROCESS_ATTACH)
{
logging(hDll);
CreateThread(NULL, NULL, (LPTHREAD_START_ROUTINE)SearchPatterns, NULL, NULL, NULL);
}
return TRUE;
}

Log.cpp

#include <stdio.h>

using namespace std;

ofstream ofile;
char dlldirectory[320];

char *GetDirectoryFile(char *filename)
{
static char path[320];
strcpy(path, dlldirectory);
strcat(path, filename);
return path;
}

void __cdecl Writelog(const char *fmt, ...)
{
if(ofile != NULL)
{
if(!fmt) { return; }
va_list va_alist;
char logbuf[256] = {0};
va_start (va_alist, fmt);
_vsnprintf (logbuf+strlen(logbuf), sizeof(logbuf) - strlen(logbuf), fmt, va_alist);
va_end (va_alist);
ofile << logbuf << endl;
}}

void logging(HMODULE hDll){
DisableThreadLibraryCalls(hDll);
GetModuleFileName(hDll, dlldirectory, 512);
for(int i = strlen(dlldirectory); i > 0; i--) { if(dlldirectory[i] == '\\') { dlldirectory[i+1] = 0; break; } }
ofile.open(GetDirectoryFile("Pocciox's Logger.txt"), ios::app);



Come posso aggiustare il tutto???D:
sono anche disposto a dare il progetto se vi serve.....Tanto non è mio ...
Grazie a chi proverà ad aiutarmi a risolvere il problema.

01/11/2012, 15:49
#1
Cerca

Amministratore
Messaggi: 2,317
Discussioni: 231
Registrato: 03-2011
Reputazione:
78

Mix: 2,548
Lascia stare :


[Per vedere i link devi REGISTRARTI.]

Prima di aprire ogni contenuto scaricato su siti esterni ad HackMix, scansionatelo su VirusTotal.
01/11/2012, 17:56
#2
Cerca
(Questo messaggio è stato modificato l'ultima volta il: 01/11/2012, 22:55 da digger.)

Il criceto mannaro
Messaggi: 3,536
Discussioni: 201
Registrato: 03-2011
Reputazione:
106

Mix: 3,737
Pocciox stai cominciando a diventare un peso per questa stanca società Asd

Allora, cosi ad occhio senza avere il progetto direi :
1. i warnings te ne puoi infischiare
2. gli errori tipo impossibile convertire il parametro 2 da 'char [320]' a 'LPWSTR' sono dovuti al fatto che nel progetto non hai impostato il "multibyte" e stai invece usando l'UNICODE (nella mia guida spiego questa cosa)
3. in Log.cpp probabilmente per uno sbagliato copia incolla hai dimenticato di mettere in fondo come ultima cosa una parentesi graffa chiusa }
4. "le costanti esadecimali devono avere almeno una cifra esadecimale" si riferisce al Main.cpp dove ci sono queste righe:

DWORD dwPlayerPointer = FindPattern((PBYTE)"\xA1\xF0\x8A\x9D\x00\x3B\xC3\x 74\x16\x33\xC9\x41\x89\x98\xA4\x02\x01\x00 ","xxxx?xxxxxxxxxxx?",1,true);
DWORD dwServerPointer = FindPattern((PBYTE)"\x83\x3D\x8C\x8A\x9D\x00\x00\x 74\x07\xE8\x50\x02\x00\x00\xEB\x02\x32\xC0\x84\xC0 ", "xxxxx??xxxxx??xxxxxx", 2, true);


se ci fai caso hai scritto
\x 74

c'è uno spazio di troppo, deve diventare

\x74

correggi ste cose, ricompila e vedi se ti da altri errori, per ora è tutto Happywide


digger
01/11/2012, 22:54
#3
Cerca
(Questo messaggio è stato modificato l'ultima volta il: 02/11/2012, 0:06 da Pocciox.)

1 Life, 1 Avatar &lt;3
Messaggi: 9,074
Discussioni: 271
Registrato: 08-2011
Reputazione:
77

Mix: 0
2. gli errori tipo impossibile convertire il parametro 2 da 'char [320]' a 'LPWSTR' sono dovuti al fatto che nel progetto non hai impostato il "multibyte" e stai invece usando l'UNICODE (nella mia guida spiego questa cosa)


Che guida?Comunque ora provo



molto bene da diciassei errori siamo passati a 2!senza contare i warning che mi hai detto che sono inutili
ora gli errori sono questi

>Log.cpp(35): error C2664: 'GetModuleFileNameW': impossibile convertire il parametro 2 da 'char [320]' a 'LPWSTR'
1> I tipi a cui si punta sono privi di relazioni. La conversione richiede reinterpret_cast, cast di tipo C o cast di tipo funzione
1> Main.cpp
1>Main.cpp(11): error C2664: 'GetModuleHandleW': impossibile convertire il parametro 1 da 'const char [12]' a 'LPCWSTR'
1> I tipi a cui si punta sono privi di relazioni. La conversione richiede reinterpret_cast, cast di tipo C o cast di tipo funzione


Che se non ho capito male posso risolvere con la tua guida.
Hem si ma quale guida ??D:



RE_EDIT


Cel ho fatta senza la tua guida, mi dispiace ma ormai sono troppo professionale per i tuoi livelli, sono andato in propietà e ho cambiato da unicode a multibyte...
Bene ora mi da solo warning Happywide
grazie digger figo la compilazione è stata ultimata.+1

02/11/2012, 0:00
#4
Cerca

Il criceto mannaro
Messaggi: 3,536
Discussioni: 201
Registrato: 03-2011
Reputazione:
106

Mix: 3,737
ottimo Happywide


digger
02/11/2012, 0:57
#5
Cerca

1 Life, 1 Avatar &lt;3
Messaggi: 9,074
Discussioni: 271
Registrato: 08-2011
Reputazione:
77

Mix: 0
Si, e adesso non riesco piu a loggare e del file .txt non se ne vede traccia Happywide

02/11/2012, 11:02
#6
Cerca


Discussioni simili
Discussione Autore Risposte Letto Ultimo messaggio
  [aiuto] No segnale su sapphire R9 280. Pocciox 5 969 14/01/2015, 22:11
Ultimo messaggio: digger
  aiuto portatile oirad94 1 716 22/12/2014, 16:27
Ultimo messaggio: Admin
  Aiuto Nella Definizone Rokys091 9 1,486 25/11/2014, 10:24
Ultimo messaggio: digger



Utenti che stanno guardando questa discussione: 1 Ospite(i)