首页 > 其他分享 >恶意代码分析入门--静态分析(chapter1_Lab01-01)

恶意代码分析入门--静态分析(chapter1_Lab01-01)

时间:2024-11-18 20:49:37浏览次数:3  
标签:文件 exe 恶意代码 dll Lab01 01 工具

恶意代码分析-工具收集 - 17bdw - 博客园 (cnblogs.com)

实验环境:Lab 1-1

这个实验使用Lab01-01.exe和Lab01-01.dll文件,使用本章描述的工具和技术来获取
关于这些文件的信息。

操作环境
操作场景:
windows xp sp3
实验工具:
PEiD v0.95
Strings(新工具-在cmd窗口运行打印出目标程序的可打印字符)
PETools v1.5
VirsCAN,org
实验文件:
Lab01-01.exe
Lab01-01.dll

问题

1、将文件上传至http://www.VirusTotal.com/进行分析并查看报告。文件匹配到了
已有的反病毒软件特征吗?
2、这些文件是什么时候编译的?
3、这两个文件中是否存在迹象说明它们是否被加壳或混淆了?如果是,这些
迹象在哪里?
4、是否有导入函数显示出了这个恶意代码是做什么的?如果是,是哪些导入函数?
5、是否有任何其他文件或基于主机的迹象,让你可以在受感染系统上查找?
6、是否有基于网络的迹象,可以用来发现受感染机器上的这个恶意代码?
7、你猜这些文件的目的是什么?

实验思路

  1. 利用网络扫描工具对自标程序进行扫描
  2. 利用本地静态分析工具分析自标程序
  3. 又 对上述结果进行分析

实验过程

1

如图所示:检测出报毒

image.png

image.png

2

文件.exe和.dll都是属于PE文件结构

看到下面的PE结构图

20191105010119908.jpg

在PE头的位置,有IMAGE_FILE_HEADER 成员,里面有TimeDateStamp的时间戳,表明了程序是什么时间编译的。由于难找工具,我直接使用的是LoadPE软件进行查看:

image.png

可以看到上面Lab01-01.exe的日期时间标志经过解码之后的时间。

然后看到Lab01-01.dll的时间也是差不多的一样。

image.png

3

image.png

image.png

以上可见Lab01-01.exe没有加壳,通过观察区段表也可以知道,非常的完整。

Lab01-01.dll分析同上理

4

我们先用PEID来观察.exe的导入表如下:

image.png

就能基本观察到他用了哪些API,懂点英文就应该能知道,find查找,filew文件,copy复制,Create创建,所以一般病毒都是先把自己复制到系统目录里隐藏起来。这事根据经验之谈。

再看Lab01-01.dll文件的导入表可以猜测功能:

image.png

分析可知,WS2_32.dll是进行一些联网的操作,然后Sleep休眠,CreateProcessA创建进程,CreateMutexA创建一个互斥体。等都是病毒经常使用的API函数。

5,6

首先这个问题我们可以使用到我们的Strings工具,这个工具我也是第一次用

(34条消息) strings工具(Win、Linux均可适用)_墨痕诉清风的博客-CSDN博客

(34条消息) chapter1 静态分析技术-04字符串搜索 strings工具_尉晓昌的博客-CSDN博客

据说可以列出在对象文件或二进制文件中查找可打印的字符串。

先看Lab01-01.exe 可以知道并且推测,由于数字1和字母l 在windows中长得太像了,所以可以推测这个程序将Lab-01-01.dll文件改名成了Kerne123.dll文件,实现伪装隐藏。

image.png

下面在看Lab-01-01.dll 可以发现一个IP地址

image.png

去查询ip.cn发现这是一个内网地址,可见病毒作者处于教学的目的,只随便写了一个内网地址,如果他是一个公网地址,那就很有可能在后台访问这个ip进行一些危险操作。

image.png

7

分析目的:

由于dll文件是不能够直接自己来运行的,所以,必须借助exe的外力在后台运行。所以exe就是专门用来安装和运行这个dll后门程序的。当exec和sleep结合使用的时候,必需特别的注意,因为exec可能通过网络来给后门程序传送命令,让他能通过CreateProcessA函数运行一个程序,而sleep可能是命令后门程序进入休眠模式。

标签:文件,exe,恶意代码,dll,Lab01,01,工具
From: https://blog.csdn.net/m0_64696290/article/details/136430134

相关文章

  • 纯新手学习记录Day01
    Day01:lecture1:文档编辑器推荐:typora(但是要花钱,89块)一些简单的typora操作:标题设置:选中文字,选择左上角:段落或者选中文字,ctrl+级名,比如ctrl+3就是设置为3级标题代码块设置:代码前后各三个反引号```(键盘左上角第二行第一个),然后加上python(自定义语言类型)引用设置:左上角......
  • [SDOI2016] 排列计数(组合数学)
    题目传送门解题思路可以先想想满足题目的序列是如何构造的?1.先从  个位置里选  个位置,使得这些位置上的 ,方案数为 。2.再将剩下的数错排。于是,这又扯到了错排问题。我们可以设  表示将  个元素错排的方案数。我们可以将第  个数放在其他  个位置,剩余......
  • 01MybatisPlus(SpringCloud入门必学!!!!微服务!!项目实战!!深度理解MP用法!!!)
    微服务springCloud,今天第一课就是MybatisPlus!!!大家在日常开发中应该能发现,单表的CRUD功能代码重复度很高,也没有什么难度。而这部分代码量往往比较大,开发起来比较费时。        因此,目前企业中都会使用一些组件来简化或省略单表的CRUD开发工作。目前在国内使用较多的......
  • [HCTF 2018]Warmup 详细题解
    知识点:目录穿越_文件包含static静态方法参数传递引用mb_strpos函数    mb_substr函数正文:页面有一张滑稽的表情包,查看一下页面源代码,发现提示那就访问/source.php 得到源码<?phphighlight_file(__FILE__);classemmm{publics......
  • linux学习day01_安装虚拟机
    1linx分区概念linux中几乎所有的硬件文件都在/dev目录下面   虽然新版的Linux大多认识了GPT分区表,没办法,我们server常常需要比较大容量的磁盘嘛!不过,在磁盘管理工具上面,fdisk这个老牌的软件并不认识GPT喔!要使用GPT的话,得要操作类似gdisk或者是parted......
  • Exchange 2016部署实施案例篇-07.Exchange日常运维检查
    有了ExchangeServer相信大家最苦恼的一件事情就是每天要如何检查ExchangeServer是否运行正常,今天就给大家分享下日常检查的一些操作步骤。日常检查邮件发送功能检查如何确保Exchange服务器可以正常往外网发送邮件,其实这个是很简单的,只需要一个简单的脚本就可以实现,如图所......
  • linux学习day01_计算机基础
    1、理解计算机的构成简单的说,CPU下达指令使是核心,内存提供正要进行的资源,硬盘用来存储数据,主板用来连接硬件,外设方便使用电脑的(键鼠组合),显卡为了看的更清楚,电源供电使用 2、电脑常用的计算单位1M=1024K=1024*1024Byte=1024*1024*8bit 20M=20Mbps=20/8=2.5Mbyte Tip:1......
  • Exchange 2016部署实施案例篇-06.升级到最新CU补丁
    更新到最新CU补丁这篇其实我是想更新完公网发布在写的,但由于最近条件有限,原来用于测试的公网IP地址由于运营商原因一直没办法更新,所以只好先更新这篇了。扩展架构首先我们还需要进行域架构扩展(或者让安装程序自己扩展也行),如图所示:扩展ActiveDirectory架构:Setup.exe/Prep......
  • Exchange 2016部署实施案例篇-05.OOS部署与基础配置
    昨天我们完成了ExchangeServer的初始化配置工作,接下来我们看下如何将OfficeOnlineServer(OOS)与ExchangeServer做集成。在没有跟OOS集成之前,我们在OWA里打开带附件的邮件只有下载的选项并没有预览的选项 OOS部署先决条件准备首先我们将需要部署OOS的服务器加入域......
  • 国标GB28181软件LiteGBS国标GB28181-2016平台如何实现雪亮工程与其他公共安全系统的互
    LiteGBS国标GB28181设备管理软件具有新开发的角色批量绑定和取消设备功能,为用户在设备管理方面提供了更多的灵活性和便利性。它既能作为业务平台独立运行,满足用户的各种业务需求;也能作为视频能力平台被业务管理平台调用,为其他平台提供强大的视频监控支持。LiteGBS以其支持GB2818......