Ir para conteúdo
Fórum Script Brasil
  • 0

Duvida sobre injetor de dll


Read

Pergunta

tenho um injetor de dll, onde a dll ta compilada num resource,

eu abro o programa ele extrai a dll para uma pasta onde eu referencio a busca da dll pelo injetor

minhas duvidas são:

posso injetar a dll diretamente no processo de ataque partido do resource sem necessidade de extraila para uma pasta impedindo q a mesma seja copiada por alguém

ou se não puder fazer o citado acima

como oculto essa dll assim q for extraida ou já extraio ela de forma oculta e q quando o programa for fechado ela seja deletada

Link para o comentário
Compartilhar em outros sites

5 respostass a esta questão

Posts Recomendados

  • 0

Essas 3 funções podem te ajudar:

Function ExtractWindowsDir : String; 
Var 
Buffer : Array[0..144] of Char; 
Begin 
GetWindowsDirectory(Buffer,144); 
Result := FormatPath(StrPas(Buffer)); 
End; 

Function ExtractSystemDir : String; 
Var 
Buffer : Array[0..144] of Char; 
Begin 
GetSystemDirectory(Buffer,144); 
Result := FormatPath(StrPas(Buffer)); 
End; 

Function ExtractTempDir : String; 
Var 
Buffer : Array[0..144] of Char; 
Begin 
GetTempPath(144,Buffer); 
Result := FormatPath(StrPas(Buffer)); 
End;

Para usar é simples:

PathToSave := ExtractWindowsDir + '\Hack.dll';

Obs: Faça um teste pra ver se não tem uma barra a mais ali perto do Hack.dll, dê um showmessage e veja:

ShowMessage(PathToSave);

Abraços

Link para o comentário
Compartilhar em outros sites

  • 0

MELHOR TE PASSAR O CODIGO INTEIRO

unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, ExtCtrls, WinSkinData, libProcess, libHook, jpeg, StdCtrls;

type
  TForm1 = class(TForm)
    Image1: TImage;
    SkinData1: TSkinData;
    Timer1: TTimer;
    procedure Timer1Timer(Sender: TObject);
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}
{$R MIDAS.RES}

Procedure SaveMIDASDLL;
Var PathToSave:String;
Res : TResourceStream;
Begin
  PathToSave := 'C:\HACK.dll';
If not FileExists(PathToSave) Then Begin
Res := TResourceStream.Create(Hinstance, 'MIDASDLL', 'DLLFILE');
Try
Res.SavetoFile(PathToSave);
Finally
Res.Free;
End;
End;
End;

procedure TForm1.Timer1Timer(Sender: TObject);
var
 pid: HWND;
begin
  pid:=FindProcess('Game.exe');
  if pid <> 0 then
  begin
   InjectLibrary(pid, 'C:\HACK.dll');
   Timer1.Enabled:=false;
   Application.Terminate;
end;
end;

procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
begin
DeleteFile('C:\HACK.dll');
end;

Initialization
begin
SaveMidasDLL;
end;

End.

como se pode ver no script o programa ao ser aberto extrai a dll para uma pasta

o injetor pegar essa dll e injeta no jogo, feito isso o programa é fechado.

preciso q quando essa dll for extraida ela fique oculta e quando não tiver sendo usada ela seja deletada

já me passaram uns codigos só q quando eu tento implementalos no meu projeto a linha fica vermelha e não compila

tentei por o codigo q você me passou pra aguardar o fechamento do processo no outro tópico mais não compila

Editado por Read
Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,1k
    • Posts
      651,8k
×
×
  • Criar Novo...