恶意代码分析实战 2 动态分析基础技术

news2025/1/16 16:55:20

2.1 Lab3-1

使用动态分析基础技术来分析在Lab03-01.exe文件中发现的恶意代码。
问题

  1. 找出这个恶意代码的导入函数与字符串列表。

C:\Documents and Settings\Administrator>strings Lab03-01.exe
ExitProcess
kernel32.dll
ws2_32
cks=u
advapi32
ntdll
user32
StubPath
SOFTWARE\Classes\http\shell\open\commandV
Software\Microsoft\Active Setup\Installed Components
www.practicalmalwareanalysis.com
admin
WinVMX32-
vmx32to64.exe
SOFTWARE\Microsoft\Windows\CurrentVersion\Run
SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders
AppData

网址是需要注意的,注册表的这个目录也需要注意,CurrentVersion经常用于恶意软件的自启动。
拖入PEiD,查看一下是否有壳。
vmware_a2UET0oKtJ.png
vmware_DrNsp9Aav2.png
由于加了壳,只能看到一个函数表。

  1. 这个恶意代码在主机上的感染迹象特征是什么。

首先启动wireshark,点击开始,然后打开Process Monitor,设置过滤器,最后打开,Process Explorer。
vmware_ltOhTutpx5.png
vmware_OZeWKpbi6H.png
包含ws2_32.dll,可能是存在联网操作。
vmware_QQwW0Uc11S.png
还创建了一个互斥量,创建互斥量的主要作用是是的某一时刻某程序能单独占用某个操作。
Process Monitor设置过滤的时候要设置为Process Name。
vmware_RXPcrmxwJQ.png
内容过多,不利于我们观看,所以再设置一下过滤器。
vmware_QKq4C8T9TT.png
vmware_z5UQdwywrg.png
发现出现了写入文件的操作,和修改注册表的操作。
vmware_oujG4EN14J.png
可能出现了随机数的操作。
vmware_LclTZfxHtE.png
可能出现了将自身复制到该路径的操作,找到该文件,将它和Lab03-01.exe进行比对,发现确实是同一个文件。
vmware_JeYmRrFHIW.png
vmware_86rypBvjUn.png
到注册表的这个位置进行查看。
vmware_B6XA9jp2u1.png
vmware_WaQi4GS4ld.png
这个自启动的地址设置为了该文件复制到的哪个文件目录。
到这里我们知道了,这个恶意文件创建了一个名为WinVM32的互斥量,并复制自身到一个目录下,并安装自己到系统自启动项中,通过创建注册表键值HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run\VideoDrive ,并将其设置为复制副本的位置。

  1. 这个恶意代码是否存在一些有用的网络特征码?如果存在,它们是什么?

配置网络
稀里糊涂的弄了个差不多,我是网络白痴,555。
参照如下两个教程:
https://www.jianshu.com/p/3d809e679653
https://www.cnblogs.com/hyq20135317/p/5515675.html
最后这个样子貌似是成功了,但是ApateDNS我没有成功下载安装。
vmware_8D75aJt1vu.png
使用wireshark进行监听,双击DNS查看。
vmware_6BSUEvwP2D.png
存在网络特征,像是进行一个网址的请求。
vmware_BBxKl3YWcg.png
每一次的SSL连接都是乱码,加上他存在随机数的行为,可能是随机发送乱码。vmware_TW2kS0VGCj.png
恶意代码在进行网址的域名解析后,持续地广播大小为256字节的数据包,其中包含看似随机的二进制数据。

2.1 Lab3-2

  1. 你怎样才能让这个恶意代码自行安装?

查看导出表
vmware_CZ1GmYB9IJ.png
查看导入表
程序会创建进程和线程。CreateProcessA和CreateThread。
vmware_Ietp19RoMd.png
程序还会创建服务,操控服务,操作注册表。
vmware_tniO3Y8jCu.png
程序对网络进行操作。
vmware_K0B6e3BwZb.png
查看其中的字符串信息:
注册表目录:
vmware_OBUpgbZk0B.png
程序目录。
vmware_yIsmBOWgLl.png
运行程序。
vmware_z5HKer3VZv.png
网址链接。
vmware_NNM9iJHrjX.png
我们看到了installA函数,我们可以使用这样一行命令来安转。

rundll32.exe Lab03-02.dll, installA

  1. 安装之后如何让恶意代码运行起来?

  2. 怎么可以找到这个恶意代码在哪个进程下运行的?

查找失效了,手动查找的,尬。
vmware_Yo12fHNXgy.png
PID是1012.

  1. 你可以在procmon中设置什么样的过滤器,才能收集到这个恶意代码的信息?

直接设置1012的PID即可。
vmware_u4taQImE40.png

  1. 这个恶意代码在主机上的感染迹象特征是什么?

使用Regshot来查看主机上的变化。

Regshot 1.9.0 x86 ANSI
Comments:
Datetime: 2022/10/3 08:36:17 , 2022/10/3 08:36:23
Computer: UOT9TWO1JSBICVH , UOT9TWO1JSBICVH
Username: Administrator , Administrator


Keys added: 6

HKLM\SYSTEM\ControlSet001\Services*IPRIP*
HKLM\SYSTEM\ControlSet001\Services\IPRIP\Parameters
HKLM\SYSTEM\ControlSet001\Services\IPRIP\Security
HKLM\SYSTEM\CurrentControlSet\Services\IPRIP
HKLM\SYSTEM\CurrentControlSet\Services\IPRIP\Parameters
HKLM\SYSTEM\CurrentControlSet\Services\IPRIP\Security


Values added: 20

HKLM\SYSTEM\ControlSet001\Services\IPRIP\Type: 0x00000020
HKLM\SYSTEM\ControlSet001\Services\IPRIP\Start: 0x00000002
HKLM\SYSTEM\ControlSet001\Services\IPRIP\ErrorControl: 0x00000001
HKLM\SYSTEM\ControlSet001\Services\IPRIP\ImagePath: “%SystemRoot%\System32\svchost.exe -k netsvcs”
HKLM\SYSTEM\ControlSet001\Services\IPRIP\DisplayName: “Intranet Network Awareness (INA+)”
HKLM\SYSTEM\ControlSet001\Services\IPRIP\ObjectName: “LocalSystem”
HKLM\SYSTEM\ControlSet001\Services\IPRIP\Description: “Depends INA+, Collects and stores network configuration and location information, and notifies applications when this information changes.”
HKLM\SYSTEM\ControlSet001\Services\IPRIP\DependOnService: 52 70 63 53 73 00 00
HKLM\SYSTEM\ControlSet001\Services\IPRIP\Parameters\ServiceDll: “C:\Documents and Settings\Administrator\Lab03-02.dll”
HKLM\SYSTEM\ControlSet001\Services\IPRIP\Security\Security: 01 00 14 80 90 00 00 00 9C 00 00 00 14 00 00 00 30 00 00 00 02 00 1C 00 01 00 00 00 02 80 14 00 FF 01 0F 00 01 01 00 00 00 00 00 01 00 00 00 00 02 00 60 00 04 00 00 00 00 00 14 00 FD 01 02 00 01 01 00 00 00 00 00 05 12 00 00 00 00 00 18 00 FF 01 0F 00 01 02 00 00 00 00 00 05 20 00 00 00 20 02 00 00 00 00 14 00 8D 01 02 00 01 01 00 00 00 00 00 05 0B 00 00 00 00 00 18 00 FD 01 02 00 01 02 00 00 00 00 00 05 20 00 00 00 23 02 00 00 01 01 00 00 00 00 00 05 12 00 00 00 01 01 00 00 00 00 00 05 12 00 00 00
HKLM\SYSTEM\CurrentControlSet\Services\IPRIP\Type: 0x00000020
HKLM\SYSTEM\CurrentControlSet\Services\IPRIP\Start: 0x00000002
HKLM\SYSTEM\CurrentControlSet\Services\IPRIP\ErrorControl: 0x00000001
HKLM\SYSTEM\CurrentControlSet\Services\IPRIP\ImagePath: “%SystemRoot%\System32\svchost.exe -k netsvcs”
HKLM\SYSTEM\CurrentControlSet\Services\IPRIP\DisplayName: “Intranet Network Awareness (INA+)”
HKLM\SYSTEM\CurrentControlSet\Services\IPRIP\ObjectName: “LocalSystem”
HKLM\SYSTEM\CurrentControlSet\Services\IPRIP\Description: “Depends INA+, Collects and stores network configuration and location information, and notifies applications when this information changes.”
HKLM\SYSTEM\CurrentControlSet\Services\IPRIP\DependOnService: 52 70 63 53 73 00 00
HKLM\SYSTEM\CurrentControlSet\Services\IPRIP\Parameters\ServiceDll: “C:\Documents and Settings\Administrator\Lab03-02.dll”
HKLM\SYSTEM\CurrentControlSet\Services\IPRIP\Security\Security: 01 00 14 80 90 00 00 00 9C 00 00 00 14 00 00 00 30 00 00 00 02 00 1C 00 01 00 00 00 02 80 14 00 FF 01 0F 00 01 01 00 00 00 00 00 01 00 00 00 00 02 00 60 00 04 00 00 00 00 00 14 00 FD 01 02 00 01 01 00 00 00 00 00 05 12 00 00 00 00 00 18 00 FF 01 0F 00 01 02 00 00 00 00 00 05 20 00 00 00 20 02 00 00 00 00 14 00 8D 01 02 00 01 01 00 00 00 00 00 05 0B 00 00 00 00 00 18 00 FD 01 02 00 01 02 00 00 00 00 00 05 20 00 00 00 23 02 00 00 01 01 00 00 00 00 00 05 12 00 00 00 01 01 00 00 00 00 00 05 12 00 00 00


Values modified: 1

HKLM\SOFTWARE\Microsoft\Cryptography\RNG\Seed: 43 C7 CF 31 CE B0 E5 64 8F B2 28 06 2B E6 C3 A4 51 71 BD F5 CF 95 E7 6A 6A 55 D1 CE BC 52 80 15 1A 8E A1 7E FF 29 15 9B 60 EB 8E A5 78 EA 48 B7 B0 69 E4 62 DD 74 7F DA 4D 02 85 E5 99 07 EB 65 3C C3 7A B8 E5 AD FB 31 8B 7B D5 49 92 D0 C8 A4
HKLM\SOFTWARE\Microsoft\Cryptography\RNG\Seed: 0E 4F 49 D0 CC 39 12 16 73 3C E7 84 7B 52 5F EB 89 55 2D BC 12 5C CA 42 C3 F8 22 D1 C1 95 5E 05 C1 77 43 D7 61 31 7D 5C D3 16 CE C3 07 0E CB 60 C5 D0 9B 5E AE E3 5E C0 75 73 8B 97 B2 91 F0 F7 6B EF F3 89 95 A2 74 28 F5 6D FF 0E BB 4C C9 7E


Total changes: 27

感染迹象就是会有创建一个服务叫IPRIP。

  1. 此恶意代码是否存在一些有用的网络特征码?

使用WireShark查看,
vmware_6l10zssA0h.png
请求报文都出来了,当然存在有用的网络特征码。

2.3 Lab 3-3

问题

  1. 当你使用Process Explorer工具进行监视的时候,你注意到了什么?

启动Process Explorer,运行程序Lab03-03.exe
vmware_f7eZK3gSCy.png
可以看到Lab03-03.exe一闪而过,创建了一个子类进程svchost.exe然后迅速将自身删除。

  1. 你可以找到任何的内存修改的行为吗?

内存比映像中多了一些奇怪的东西,像是记录了键盘一样。
vmware_KQb64ohwFS.png
还有一个奇怪的日志。
哇,这日志直接给我写下来了。
vmware_hd8x6zR44b.png

  1. 这个恶意代码在主机上的感染迹象特征是什么?

打开那个日志文件一看。
vmware_iXG4737XY9.png
妥妥的记录键盘。
打开Process Monitor一看,频繁的创建写入文件,必然有鬼。
vmware_sh05V4c6iU.png

  1. 这个恶意代码的目的是什么?

这个程序在svchhost.exe进程上执行了进程替换,来启动一个击键记录器。

2.4 Lab 3-4

查壳,发现程序并没有加壳,导入表中的dll,可以判断出程序有网络操作
可以看到导入表中具有复制文件、读写文件功能。
msedge_Df1Wh5qefy.png
还有创造文件、创建进程等功能。
msedge_7Hqw3aAjT0.png
还有个getSystemDirectoryA函数用来获取系统目录。
msedge_h4RHN6zF18.png
关于注册表的操作、创建服务、删除服务等等。
在查看字符串的时候,还发现了一个网址。

  1. 当你运行这个文件时,会发生什么呢?

双击运行之后,这个程序没了。
使用Process Monitor进行监控。
vmware_YyVSML8f9H.png
“C:\WINDOWS\system32\cmd.exe” /c del C:\DOCUME1\ADMINI1\Lab03-04.exe >> NULL"
这一行命令可能就是删除文件的命令。

  1. 是什么原因造成动态分析无法有效实施?

我们怀疑可能需要提供一个命令行参数,或者这个程序的某个部件缺失了。

  1. 是否有其它方式来运行这个程序?

我们尝试使用在字符串列表中显示的一些命令行参数,比如-in,但这样做却没有得到有效的结果,需要更深入的分析。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/178373.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

39.Isaac教程--使用 Pose CNN 解码器进行 3D 物体姿态估计

使用 Pose CNN 解码器进行 3D 物体姿态估计 ISAAC教程合集地址: https://blog.csdn.net/kunhe0512/category_12163211.html 文章目录使用 Pose CNN 解码器进行 3D 物体姿态估计应用概述推理模块Pose CNN 解码器训练模块Pose CNN 解码器架构Pose CNN解码器训练从场景二进制文件生…

JAVA BIO与NIO、AIO的区别

1、 IO模型发展 在Java的软件设计开发中,通信架构是不可避免的,我们在进行不同系统或者不同进程之间的数据交互,或者在高并发下的通信场景下都需要用到网络通信相关的技术,对于一些经验丰富的程序员来说,Java早期的网…

通信原理简明教程 | 现代数字调制

文章目录1 多进制基带信号2 多进制数字调制2.1 多进制调制的基本原理2.2 MPSK调制3 MSK3.1 MSK信号的表示3.2 MSK的相位网格图3.3 MSK的产生和解调4 QAM4.1 QAM的基本原理4.2 QAM信号的产生和解调4.3 QAM信号的特性5 正交频分复用5.1 OFDM的基本思想5.2 OFDM的基本原理5.3 基于…

Python基础学习 -- 常用模块

一、time模块1、时间戳可以理解为是一个计算机世界的当前时间,很多加密验证什么的,都会用到import time ttime.time() print(int(t)) 运行结果: 16732534522、当前时间import time ttime.strftime("%Y-%m-%d %X") print(t) 运行结果…

vue项目搭建(offline方式)

项目搭建的前提 需要安装node.js,安装步骤可参考https://blog.csdn.net/qq_44628230/article/details/122634132 1.检查环境是否已准备好 2.全局安装vue-cli 3.进入到项目目录,创建一个基于 webpack 模板的新项目(online) 4.由…

JavaScript笔记+案例

前端开发 第四节JavaScript JavaScript:概要 概要: JavaScript,是一门编程语言。浏览器就是JavaScript语言的解释器。 DOM和BOM 相当于编程语言内置的模块。 例如:Python中的re、random、time、json模块等。jQuery 相当于是编程…

搭建代理服务器

搭建代理服务器搭建代理服务器场景ccproxy进行搭建代理服务器proxifier配置代理服务器总结搭建代理服务器 有这种情况,在家需要访问某个内网环境,但是内网的ip从外网是访问不到的,这种需要怎么处理呢? 答案是使用代理服务器。 …

索引失效原因

目录 1.最佳左前缀法则 2.不在索引列上做任何操作 3.存储引擎不能使用索引中范围条件右边的列 4.尽量使用覆盖索引 5.mysql 在使用不等于(! 或者<>)的时候无法使用索引会导致全表扫描 6..is null ,is not null 也无法使用索引 7.like以通配符开头(%abc...)mysql索…

tkinter布局详解

文章目录placepackgrid前情提要&#xff1a; Python UI 界面 tkinter初步Tkinter共有三种布局方案&#xff0c;分别是绝对位置布局 place&#xff0c; 相对位置布局 pack和网格布局 grid。place place是通过声明具体位置来进行布局的方法&#xff0c;这个具体位置既可以绝对坐…

【大数据管理】Java实现布谷鸟过滤器(CF)

实现布谷鸟过滤器&#xff0c;每当有一个小说被存储后将其加入布谷鸟过滤器&#xff0c;并能够使用布谷鸟过滤器查询上述小说是否已经被存储 一、解题思路 在介绍布谷鸟过滤器之前&#xff0c;首先需要了解布谷鸟哈希的结构。最简单的布谷鸟哈希结构是一维数组结构&#xff0…

JAVA基础知识05面向对象

目录 面向对象概述 为什么要学习面向对象&#xff1f; 1. 类和对象 1.1 类的介绍 1.2 类和对象的关系 组织代码 1.3 类的组成 1.4 创建对象和使用对象的格式 2. 对象内存图 2.1 单个对象内存图 2.2 两个对象内存图 3. 成员变量和局部变量 4. this 关键字 4.1 t…

【c语言进阶】结构体最常用知识点大全

&#x1f680;write in front&#x1f680; &#x1f4dc;所属专栏&#xff1a;c语言学习 &#x1f6f0;️博客主页&#xff1a;睿睿的博客主页 &#x1f6f0;️代码仓库&#xff1a;&#x1f389;VS2022_C语言仓库 &#x1f3a1;您的点赞、关注、收藏、评论&#xff0c;是对我…

【电动车】基于多目标优化遗传算法NSGAII的峰谷分时电价引导下的电动汽车充电负荷优化研究(Matlab代码实现)

&#x1f4a5;&#x1f4a5;&#x1f49e;&#x1f49e;欢迎来到本博客❤️❤️&#x1f4a5;&#x1f4a5; &#x1f3c6;博主优势&#xff1a;&#x1f31e;&#x1f31e;&#x1f31e;博客内容尽量做到思维缜密&#xff0c;逻辑清晰&#xff0c;为了方便读者。 ⛳️座右铭&a…

使用Redission和Aop以及注解实现接口幂等性

关于什么是接口幂等性这里不再赘述&#xff0c;本文将使用分布式锁来解决接口幂等性的问题。 本文接口幂等判断标准&#xff1a; String name IP 请求方式 URI 参数摘要值 当相同的name来临时&#xff0c;且上一个相同name对于的接口还未正常执行完毕&#xff0c;则判断为…

Python ·信用卡欺诈检测【Catboost】

Python 信用卡欺诈检测【Catboost】 提示&#xff1a;前言 Python 信用卡欺诈检测 提示&#xff1a;写完文章后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录Python 信用卡欺诈检测【Catboost】前言一、导入包二、加载数据三、数据可视化四、…

鱼雷的发射角设置

过年嘛 放松个五六天啥的 玩了个猎杀潜航的游戏觉得那玩意挺有意思的开年了 要美赛 写个设置鱼雷发射角的小程序玩玩 游戏嘛,反正大概简易版就是这个框架,自己补充呗 各种设定啥的,没怎么关心,就是总结一下里面的平面几何..水个文章玩玩顺便练习一下pptx绘图美赛的时候估计还是…

30. PyQuery: 基于HTML的CSS选择器

目录 前言 导包 基本用法 按标签选择 标签链式操作 简便链式&#xff1a;后代选择器 类选择器 id 选择器 属性/文本选择器&#xff08;重点&#xff09; 改进多标签拿属性方法 快速总结 PyQuery的强大功能&#xff1a;修改源代码 添加代码块 修改/添加属性 删…

java spring IOC xml方式注入(数组 list集合 map集合 set集合)类型属性

我们先创建一个基本的java项目 然后引入 spring 的基本依赖 然后在src下创建一个包 我这里叫 collectiontype 和我同名 会避免一些找不到资源的麻烦 毕竟说 你们开发代码大部分会在这篇文章拿过去 当然 名称是看自己去取的 只是和我同名会方便一些 直接复制过去就好了 然后在…

C语言函数定义

函数是一段可以重复使用的代码&#xff0c;用来独立地完成某个功能&#xff0c;它可以接收用户传递的数据&#xff0c;也可以不接收。接收用户数据的函数在定义时要指明参数&#xff0c;不接收用户数据的不需要指明&#xff0c;根据这一点可以将函数分为有参函数和无参函数。将…

ARP渗透与攻防(七)之Ettercap Dns劫持

系列文章 ARP渗透与攻防(一)之ARP原理 ARP渗透与攻防(二)之断网攻击 ARP渗透与攻防(三)之流量分析 ARP渗透与攻防(四)之WireShark截获用户数据 ARP渗透与攻防(五)之Ettercap劫持用户流量 ARP渗透与攻防(六)之限制网速攻击 ARP-Ettercap Dns劫持 1.什么是DNS 1.概念 DNS是D…