Para quais arquivos o traço da chave e os dados do clique do mouse vão primeiro e de que forma eles têm?

2

Eu quero saber quais arquivos pertencem a pressionamentos de teclas e cliques do mouse, e que tipo de dados são enviados para eles.
Meu objetivo principal de fazer esta pergunta é o registro de chaves. Eu quero escrever um script keylogger que faça algumas tarefas como abaixo:

  • Em todos os lugares em que eu digito uma palavra especial, posso executar um comando em segundo plano. Por exemplo, quando eu digito o Firefox, em todo lugar no SO, o Firefox é aberto, a menos que eu mantenha pressionada uma tecla especial como a tecla alt.
  • Eu posso ter um arquivo de log abrangente dos principais toques e cliques do mouse.
  • Quando eu mudei o idioma de entrada do teclado e um programa especial, isto é, terminal, está aberto, ele muda automaticamente o idioma para o inglês (não quero dizer mudar o idioma de entrada, quero dizer um script que muda o outro) traços de tecla de idioma para que o programa ache que está no idioma inglês.)

Eu também quero detectar loggings de chaves no meu sistema (se houver) sabendo quais arquivos um keylogger precisa rastrear.

Notas :

  • Eu quero fazer o registro de chaves nos níveis mais baixos de execução. Quanto menor a corrida nível é, melhor o meu problema é resolvido.
  • Eu também li algumas perguntas como "Unix User Level Keylogger ", mas essas questões têm algumas limitações, ou seja, o registro de chaves ocorre apenas no terminal. Eu não quero usar comandos como script . Eu quero fazer o registro de chaves o caminho profundo e abrangente e sem limitações.
  • Pode haver outras formas melhores de fazer as coisas que listei acima. Mas como eu disse, meu objetivo é aprender o registro de chaves e saber mais sobre arquivos relacionados à entrada de teclado e mouse.

Eu sei que minha pergunta pode ter uma resposta longa. Se assim for, quero saber o seguinte:

  • Quais arquivos pertencem a toques de tecla?

  • Quais arquivos pertencem aos cliques do mouse? (Este é menos importante que anterior.)

  • Que tipo de dados são enviados para esses arquivos?

  • Quais comandos podem me ajudar para que eu possa alcançar meus propósitos listados acima?

por Mohammad 19.09.2015 / 16:42

1 resposta

1

No Linux, os dispositivos de entrada aparecem como dispositivos de caracteres em /dev/input . Para fazer coisas legais com eventos de entrada, veja o subsistema de kernel evdev e libevdev . Pesquise nos documentos do kernel se esse link da Wikipédia quebrar.

A pergunta é muito ampla para que essa resposta seja mais do que ponteiros para você começar. (Além disso, eu mesmo não sei os detalhes!)

Quanto à sua ideia de um Firefox universal, isso parece uma ideia estranha. Melhor ter um pressionamento de tecla especial para ativar a entrada de comando. A área de trabalho do Plasma do KDE faz isso: alt + espaço (a qualquer momento, independentemente de qual janela do X11 tenha o foco do teclado) traz uma caixa de texto na parte superior da tela. O texto procura arquivos no seu diretório e nomes de comandos.

Se você quiser sujar as mãos com o evdev, eu recomendo usar o monitoramento de teclas para detectar uma sequência de teclas do acionador. No que diz respeito a usar as bibliotecas, você ainda deseja obter as teclas all , só estou sugerindo que você faça algo mais sensato com elas. :)

Eu enlouqueceria se eu acidentalmente começasse programas sobre os quais eu estava falando em stackoverflow o tempo todo. Ter que pensar antes de digitar qualquer coisa para se certificar de que não era o gatilho para iniciar um programa que você não queria seria horrível .

    
por 19.09.2015 / 16:54