Olá Seja Bem vindo(a),

Você que esta chegando agora, para ver o conteúdo deste fórum será preciso estar cadastrado e conectado,

Sugestoes;
Não use Internet Explorer,não aparecem os conteúdos.
Leia as Regras do fórum antes de mais nada.
Não chiguem e nem divulguem outros fórums,comunidades,sites,blogs etc...


Equipe FatalCheats!



Participe do fórum, é rápido e fácil

Olá Seja Bem vindo(a),

Você que esta chegando agora, para ver o conteúdo deste fórum será preciso estar cadastrado e conectado,

Sugestoes;
Não use Internet Explorer,não aparecem os conteúdos.
Leia as Regras do fórum antes de mais nada.
Não chiguem e nem divulguem outros fórums,comunidades,sites,blogs etc...


Equipe FatalCheats!

Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.

[Tutorial] Criando Injetor de DLL Avançado

3 participantes

Ir para baixo

[Tutorial] Criando Injetor de DLL Avançado Empty [Tutorial] Criando Injetor de DLL Avançado

Mensagem por ll Lυciαиσ ll™ Dom Nov 20, 2011 10:45 am

Olá Galera...


Pelo que tenho visto por aí exitem muitos tutoriais ensinando como fazer um Injetor de DLL.

Mas também vi que todos aqueles tutoriais possuem erros, ou não injetam em jogos, ou são muito complicados para os iniciantes em delphi entenderem, e existe um também ensinando a criar Injetores funcionais somente em Gun Bound.
Neste tópico, estarei ensinando a criar um para Combat Arms



Chega de Conversa.. Let's go!

1° ~> Crie um novo projeto em DELPHI

2° ~> Adicione os Componente a seguir:

2 Label's
2 Edit's
1 Botão



[Tutorial] Criando Injetor de DLL Avançado Passo1j


Eu alterei os CAPTIONS:

label1 = Processo
label2 = DLL
Button1 = Injetar


-------------------------------------------------------------------------

Muito bem, se você chegou até aqui sem problemas irá conseguir o resto..

-- CÓDIGOS --

3° ~> Na parte USES Adicione -- Tlhelp32 --
( sem os -- )

4° ~> Abaixo de



Código:
implementation
 
{$R *.dfm}

Adicione as Funções:

1° Função


Código:
function ValorAsc(Letra: String): Byte;
begin
if Length(letra) > 0 then ValorAsc := Ord(Letra[1]) else ValorAsc := 0;
end;
function crypt(Texto: String): String;
var
Cont, Cod: Integer;
Retorna: String;
begin
for Cont := 1 to Length(Texto) do begin
Cod := ValorAsc(Copy(Texto, Cont, 1));
Retorna := Retorna + Chr(Cod + 57(*valor a ser adicionado - pode ser modificado*));
end;
Crypt := Retorna;
end;
function Descript(Texto: String): String;
var
Cont, Cod: integer;
Retorna: String;
begin
for Cont := 1 to Length(Texto) do begin
Cod := ValorAsc(Copy(Texto, Cont, 1));
Retorna := Retorna + Chr(Cod - 57);
end;
Descript := Retorna;
end;
 
function processExists(exeFileName: string): Boolean;
var
ContinueLoop: BOOL;
FSnapshotHandle: THandle;
FProcessEntry32: TProcessEntry32;
begin
FSnapshotHandle := CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, 0);
FProcessEntry32.dwSize := SizeOf(FProcessEntry32);
ContinueLoop := Process32First(FSnapshotHandle, FProcessEntry32);
Result := False;
while Integer(ContinueLoop) <> 0 do
begin
if ((UpperCase(ExtractFileName(FProcessEntry32.szExeFile)) =
UpperCase(ExeFileName)) or (UpperCase(FProcessEntry32.szExeFile) =
UpperCase(ExeFileName))) then
begin
Result := True;
end;
ContinueLoop := Process32Next(FSnapshotHandle, FProcessEntry32);
end;
CloseHandle(FSnapshotHandle);
end;

dê um enter e adicione

2° Função


Código:
unction GetID(Const ExeFileName: string; var ProcessId: DWORD): boolean;
    var
      i:integer;
      ContinueLoop: BOOL;
      FSnapshotHandle: THandle;
      FProcessEntry32: TProcessEntry32;
    begin
      i:=0;
      result := false;
      FSnapshotHandle := CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, 0);
      FProcessEntry32.dwSize := Sizeof(FProcessEntry32);
      ContinueLoop := Process32First(FSnapshotHandle, FProcessEntry32);
      while integer(ContinueLoop) <> 0 do begin
        if (StrIComp(PChar(ExtractFileName(FProcessEntry32.szExeFile)), PChar(ExeFileName)) = 0)
            or (StrIComp(FProcessEntry32.szExeFile, PChar(ExeFileName)) = 0)  then begin
            if i = 1 then begin
            ProcessId:= FProcessEntry32.th32ProcessID;
            result := true;
            break;
            end;
            i:=i+1;
        end;
        ContinueLoop := Process32Next(FSnapshotHandle,                  FProcessEntry32);
      end;
      CloseHandle(FSnapshotHandle);
    end;

Agora clique duas vezes no Botão e adicione o código:


Código:
var
Pid : dword;
ker41280dll : String;
pker41280dll : Pointer;
ker41280prcess,bw41280 : Cardinal;
hRemote_Thread : Cardinal;
begin
ker41280dll := ExtractFilePath(Application.Exename)+Edit2.Text;
if ProcessExists(PChar(Edit1.Text)) then begin
if FileExists(ker41280dll) then begin
GetID(PChar(Edit1.Text),pid);
ker41280prcess:= OpenProcess(PROCESS_ALL_ACCESS, false, PID);
pker41280dll := VirtualAllocEx(ker41280prcess,nil, length(ker41280dll), MEM_COMMIT,PAGE_EXECUTE_READWRITE);
WriteProcessMemory(ker41280prcess, pker41280dll, PChar(ker41280dll), length(ker41280dll), bw41280);
CreateRemoteThread(ker41280prcess, nil, 0, GetProcAddress(GetModuleHandle('kernel32.dll'),'LoadLibraryA'), pker41280dll, 0, hRemote_Thread);
CloseHandle(ker41280prcess);
ShowMessage('DLL Injetada Com Sucesso');


-------------------------------------------------------------------------

OK

Agora seu Injetor está criado...
Altere o visual ao seu gosto

-------------------------------------------------------------------------

Agora, irei passar o código para fazer com que seu Injetor funcione em todos os jogos, principalmente em Combat Arms.

No lugar da 2ª função, adicione


Código:
function CMKGETID(ExeFileName: string; var ProcessId: dword) :boolean; // A função
var
  ContinueLoop: BOOL;
  FSnapshotHandle: THandle;
  FProcessEntry32: TProcessEntry32;
begin
  result := false;
  FSnapshotHandle := CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, 0);
  FProcessEntry32.dwSize := Sizeof(FProcessEntry32);
  ContinueLoop := Process32First(FSnapshotHandle, FProcessEntry32);
  while integer(ContinueLoop) <> 0 do begin
    if (StrIComp(PChar(ExtractFileName(FProcessEntry32.szExeFile)), PChar(ExeFileName)) = 0)
      or (StrIComp(FProcessEntry32.szExeFile, PChar(ExeFileName)) = 0)  then begin
      ProcessId:= FProcessEntry32.th32ProcessID;
      result := true;
      break;
    end;
    ContinueLoop := Process32Next(FSnapshotHandle, FProcessEntry32);
  end;
  CloseHandle(FSnapshotHandle);
end;


-- não tente colocar as Duas funções no injetor senão vai dar problema --

-------------------------------------------------------------------------
Depois de fazer processo de Criação inteiro, vamos para a parte de salvar e Compilar o Projeto...

Algumas pessoas já me perguntaram como fazer isso então vou explicar.


Após ter Feito TUDO siga esta foto para salvar seu projeto:



[Tutorial] Criando Injetor de DLL Avançado 13yo6ed


O Programa irá pedir para vc salvar dois arquivos... (salve os dois na mesma Pasta)

Logo após ter salvado você terá que Compilar seu Projeto para o arquivo exe ser criado.. (Project1.exe)



[Tutorial] Criando Injetor de DLL Avançado 1zc3doj


Agora seu Trainer ou qualquer outro programa foi Criado...
O arquivo exe será criado Dentro da Pasta onde voce Salvou o Projeto anteriormente..

Para quem não tem o Delphi 7, faça o download aqui↓



Download >>AQUI<<


Créditos
Pelo Tutorial:Mrs.romanha
Pelo Topico:ll Luciano ll™
ll Lυciαиσ ll™
ll Lυciαиσ ll™
Guardião
Guardião

Posts : 70
Pontos : 4647
Agradecer : 26
Data de Ingresso : 19/11/2011
Localização : Gardião Combat Arms

Ir para o topo Ir para baixo

[Tutorial] Criando Injetor de DLL Avançado Empty Re: [Tutorial] Criando Injetor de DLL Avançado

Mensagem por ~Aluxer Dom Nov 20, 2011 6:15 pm

Olhe eu nao consegui mas deve ser porque sou novato mas nao tem problema eu uso o dos outros mesmo =|
~Aluxer
~Aluxer
Guardião
Guardião

Posts : 60
Pontos : 4637
Agradecer : 0
Data de Ingresso : 11/11/2011

Ir para o topo Ir para baixo

[Tutorial] Criando Injetor de DLL Avançado Empty Re: [Tutorial] Criando Injetor de DLL Avançado

Mensagem por Convidad Dom Nov 20, 2011 6:47 pm

Uma Grande dica Tem como tu posta o download
desse delphi ? eu realmente gostaria de fazer meu injector
mais eu queria saber se vc pode fazer um tuturial
de como eu faço o designer vlw

Atenciosamente: FatalCheatS / Obrigado!!
Anonymous
Convidad
Convidado


Ir para o topo Ir para baixo

[Tutorial] Criando Injetor de DLL Avançado Empty Re: [Tutorial] Criando Injetor de DLL Avançado

Mensagem por ~Aluxer Seg Nov 21, 2011 8:51 am

'Thiaguinho o download está no Tópico Delphi
~Aluxer
~Aluxer
Guardião
Guardião

Posts : 60
Pontos : 4637
Agradecer : 0
Data de Ingresso : 11/11/2011

Ir para o topo Ir para baixo

[Tutorial] Criando Injetor de DLL Avançado Empty Re: [Tutorial] Criando Injetor de DLL Avançado

Mensagem por -Gnomo Seg Nov 21, 2011 8:37 pm

'Thiaguinho escreveu:Uma Grande dica Tem como tu posta o download
desse delphi ? eu realmente gostaria de fazer meu injector
mais eu queria saber se vc pode fazer um tuturial
de como eu faço o designer vlw

Atenciosamente: FatalCheatS / Obrigado!!

Thiaago '-' , Posso cria um video se quiser. se o dono do tuto não fizer . de desenhando o design '-'
-Gnomo
-Gnomo
Combat Arms
Combat Arms

Posts : 72
Pontos : 4644
Agradecer : 1
Data de Ingresso : 02/11/2011
Localização : Na PuttaqueParil =x

Ir para o topo Ir para baixo

[Tutorial] Criando Injetor de DLL Avançado Empty Re: [Tutorial] Criando Injetor de DLL Avançado

Mensagem por ll Lυciαиσ ll™ Ter Nov 22, 2011 8:10 am

-Gnomo
,
Se você quiser fazer pode fazer é que to meio sem tempo.
tenho que se concentra nos estudos agora,final de ano neh,SaBe cúmé neh!
kkk
ll Lυciαиσ ll™
ll Lυciαиσ ll™
Guardião
Guardião

Posts : 70
Pontos : 4647
Agradecer : 26
Data de Ingresso : 19/11/2011
Localização : Gardião Combat Arms

Ir para o topo Ir para baixo

[Tutorial] Criando Injetor de DLL Avançado Empty Re: [Tutorial] Criando Injetor de DLL Avançado

Mensagem por Conteúdo patrocinado


Conteúdo patrocinado


Ir para o topo Ir para baixo

Ir para o topo

- Tópicos semelhantes

 
Permissões neste sub-fórum
Não podes responder a tópicos