TrojanDownloader病毒分析报告

栏目: 编程工具 · 发布时间: 6年前

内容简介:TrojanDownloader(中文名:文件下载者病毒)主要通过游戏外挂等方式传播。是一款比较早期的病毒样本,已知最早的入库时间是在2008年,其本身危害性不高,但是由于他的作用,其危害性体现在其所下载的恶意代码上。这个函数是程序的主要执行部分。

TrojanDownloader病毒分析报告

零 前言

TrojanDownloader(中文名:文件下载者病毒)主要通过游戏外挂等方式传播。是一款比较早期的病毒样本,已知最早的入库时间是在2008年,其本身危害性不高,但是由于他的作用,其危害性体现在其所下载的恶意代码上。

一 目录

  • 1.目录
  • 2.样本信息
  • 3.行为分析
  • 4.样本分析
  • 5.技术上的总结

二 样本分析

  • 1.样本名称:sample.WSDump.exe
  • 2.样本md5:25a1eb3d3f8767a86050d16c226f9912
  • 3.是否加壳:UPX
  • 4.编写语言:VC++6.0
  • 5.样本来源:网络获取

三 行为分析

病毒首先创建互斥体121212,和判断自身文件是否存在,如果存在就启用网络套接字以便执行下一步操作。如果不存在则退出程序。

TrojanDownloader病毒分析报告

在执行体函数中,程序首先初始化一些服务控制器的状态信息,然后创建”Net CLR”的互斥体,接着枚举二进制资源,加载hra33.dll这个dll文件,接下来分别创建三个线程,执行不同的操作。

TrojanDownloader病毒分析报告

四 样本分析

ExecuteFun

这个函数是程序的主要执行部分。

  • 设置serviceStatus状态

TrojanDownloader病毒分析报告

  • 更新资源
  • 加载hra33.dll这个动态链接库文件
  • 创建三个线程

TrojanDownloader病毒分析报告

UpdateSource

这个函数主要是用于更新资源的,但是由于注册表Services.Net CLR不存在导致函数提前退出。

TrojanDownloader病毒分析报告
  • 根据Service注册表下Net CLR文件,创建新文件

TrojanDownloader病毒分析报告

  • 然后利用跟新资源的方式让其像一个可执行文件

TrojanDownloader病毒分析报告

Thread_1

利用od跟入Thread_1函数。

  • 获取本地主机的名称和地址

TrojanDownloader病毒分析报告

  • 获取本地网关

TrojanDownloader病毒分析报告 TrojanDownloader病毒分析报告

  • 这里有个病毒作者的错误,本来他想的是如果主机用户是管理员则执行这个判断,但是他直接引用的是字符串,造成判断无效,所有用户都成立

TrojanDownloader病毒分析报告

  • 利用上面得到的本地网关地址,和用户名及密码作为参数传入CreateFileAndExecuteFun(emmmm不像是真的)。

TrojanDownloader病毒分析报告

CreateFileAndExecuteFun

程序先与远程主机利用ipc$漏洞创建一个共享的命名管道,用IPC$,连接者甚至可以与目标主机建立一个空的连接而无需用户名与密码(当然,对方机器必须开了ipc$共享,否则你是连接不上的),而利用这个空的连接,连接者还可以得到目标主机上的用户列表(不过负责的管理员会禁止导出用户列表的)。还可以访问共享资源,并使用一些字典工具,进行密码探测,以至于获得更高的权限。然后黑客从服务端可以利用nc等软件向主机发送一个shell。

TrojanDownloader病毒分析报告

  • 把本地文件复制到共享文件的C-E盘

TrojanDownloader病毒分析报告

Thread_2

  • 获取本地时间和20130221进行比较,如果大于则创建Thread3这个线程执行

TrojanDownloader病毒分析报告 TrojanDownloader病毒分析报告

Thread_3

  • 判断链接192.168.1.107是否正常
    TrojanDownloader病毒分析报告
  • 利用switch 通过接收不同的指令,来决定执行的操作,如下图
    TrojanDownloader病毒分析报告
    • 16号:
      TrojanDownloader病毒分析报告
    • 18号:
      TrojanDownloader病毒分析报告
    • 20号:
      TrojanDownloader病毒分析报告
    • 6号:
      TrojanDownloader病毒分析报告
    • 2号:
      TrojanDownloader病毒分析报告
    • 3号:
      TrojanDownloader病毒分析报告
    • 4号:
      TrojanDownloader病毒分析报告

IsConnectFun()

  • 解Base编码得到IP地址:192.168.1.107:83

    TrojanDownloader病毒分析报告

GetInformationFun

  • 识别出当前系统版本信息
    TrojanDownloader病毒分析报告
  • 读取注册表,查看CPU的频率
    TrojanDownloader病毒分析报告 TrojanDownloader病毒分析报告 TrojanDownloader病毒分析报告
  • 调用 GlobalMemoryStatusEx获取内存信息,
    TrojanDownloader病毒分析报告
  • 查看网络适配器情况
    TrojanDownloader病毒分析报告

五 技术上的总结

调试程序比较难的地方在于跟入CreateThread创建的线程中,因为OD是单线程调试器,所以不会直接跟入创建的线程(子线程)中,我们采用Sleep函数来跟入线程函数中。

  • 找到线程所指向的函数,在函数开头下断
  • 修改调用CreateThread函数下一条语句,写入如下部分
    push 100000  ;将Slepp的参数压入
    Call Kernel32.Sleep
  • f8执行,函数自动断在线程函数刚刚下断的地方。

参考自: https://blog.csdn.net/whatday/article/details/9059281

关于ipc$的使用,参考自 https://blog.csdn.net/smithjackhack/article/details/78559970


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Java Web高级编程

Java Web高级编程

威廉斯 (Nicholas S.Williams) / 王肖锋 / 清华大学出版社 / 2015-6-1 / CNY 99.80

Java成为世界上编程语言之一是有其优势的。熟悉JavaSE的程序员可以轻松地进入到Java EE开发中,构建出安全、可靠和具有扩展性的企业级应用程序。编写《Java Web高级编程——涵盖WebSockets、Spring Framework、JPA Hibernate和 Spring Security》一书的目的正是如此。 《Java Web高级编程:涵盖WebSockets、Sp......一起来看看 《Java Web高级编程》 这本书的介绍吧!

CSS 压缩/解压工具
CSS 压缩/解压工具

在线压缩/解压 CSS 代码

Markdown 在线编辑器
Markdown 在线编辑器

Markdown 在线编辑器

RGB HSV 转换
RGB HSV 转换

RGB HSV 互转工具