Buenas, dando continuidade as minhas experiências com javascript rodando através da url no navegador achei uma utilidade para alguns comandos, por exemplo recuperar senhas que estão salvas no navegador.
O código utiliza jQuery, portanto o site deve ter o jQuery carregado (ou você pode carregar pela url, como explicado neste post).
Recuperando senhas gravadas no navegador
Existem softwares para recuperação de senhas gravadas em inputs do tipo password, neste caso não vou utilizar nenhum programa externo, apenas javascript e um navegador (testado apenas no FF).
O primeiro passo é acessar o site e fazer com que a senha seja carregada no campo de password, em alguns casos é necessário digitar o usuário para que isto aconteça.
Feito isso, carregue o jQuery no site através do campo da url:
javascript:var%20script=document.createElement("script");script.type="text/javascript";script.src="http://ajax.googleapis.com/ajax/libs/jquery/1.4/jquery.min.js";document.getElementsByTagName("head")[0].appendChild(script);void(0);
via Como carregar javascript externo em qualquer site
Sabendo que agora você pode usar os recursos do jQuery, você precisa encontrar o input do tipo password e exibir o atributo "value" dele, o código que faz isso:
javascript:alert($("input[type=password]").val())
Simples assim, este comando deve abrir um alert com a sua senha.
Paranóico que sou, fui fazer testes em sites bancários – que não armazenam a senha, porém queria testar se era possível visualizar uma senha já digitada.
O site do Banco do Brasil chama uma função a cada tecla pressionada, que criptografa o valor digitado na senha, a função se chama filtraPassa. Portanto, o alert exibe a senha, mas ela é "criptografa".
Maldade: destruir a função filtraPassa, para isso fui na url e…
javascript: function filtraPassa(){};void(0);
A cada tecla pressionada a função é chamada (e não faz nada), então utilizando o código anterior é possível dar um alert na senha.
Não vejo isso como nenhum risco a segurança, já que é necessário ter acesso ao computador para fazer isso tudo (e a página não pode ser recarregada), então o relato foi apenas para entender o funcionamento da segurança nestes site. 🙂