恶意代码动态分析

2023-11-09

实验一

使用动态分析技术来分析lab03-01.exe文件中发现的恶意代码

问题

找出这个恶意代码的导入函数和字符串列表
找出代码在主机上的感染特征
创建一个互斥量,并且复制到systems32下的目录下,而且还将自己添加到注册表的启动项中。
找出是否存在一些有用的网络特征码,如果存在,它们是什么?
不断进行DNS域名解析,并进行广播,并是** 的数据包,数据包是随机的。

实验环境

winxp
实验工具:Process Explorer(用于监控恶意程序进行的操作),strings,process Monitor(用于监控恶意程序产生的影响),PEID,Wireshark(监控全面监控目标程序对网络的改变)
实验文件:lab03-01.exe

实验思路

学会基本的动态分析工具的使用方法,监控恶意程序对本地计算机的修改,分析恶意程序的网络特征

实验过程

1、用PEID静态检测,看到导入函数只有kernel32的动态链接库,ExitProcess函数
2、strings程序查字符串,因为加壳有很多不可识别的字符串,看到注册表的路径和一个网址,
currentVersion\Run实现自启动的表项
3、启动wireshark,点击开始,启动Process Monitor,点击filter,点击筛选条件,点击process name 输入lab03-01.exe,点击add,ok,打开Process Explorer,全部启动之后,运行lab03-01.exe,
4、Process Explorer里面会自动监控到lab03-01.exe,点击view点击lower pane view,点击handles,会列出一些内容,例如mutant互斥量的名字是winvmx32,查看dlls,查看动态链接库,
如果有ws32和wshtcpip这两个动态链接库,说明是有联网操作的,所以可以看出恶意程序创建了一些互斥量并且有联网操作,关掉Process Explorer
5、查看Process Monitor,设置filter,选择operation,选择writefiles,点击add.选择operation,选择regsetvaule,点击add.在筛选结果中的注册表位置,用cmd查看这个注册表,可以看到创建了videodriver键值,或者双击筛选到的结果,可查看更详细的信息,看到路径system32,
Wireshark查看dns,可以看到网址,可双击进入查看详细,可查看SSL,查看相应的数据,是随机的字符

实验二

使用动态分析技术来分析lab03-02.dll文件中发现的恶意代码

问题

找出这个恶意代码的导入函数和字符串列表
找出代码在主机上的感染特征
创建一个互斥量,并且复制到systems32下的目录下,而且还将自己添加到注册表的启动项中。
找出是否存在一些有用的网络特征码,如果存在,它们是什么?
不断进行DNS域名解析,并进行广播,并是** 的数据包,数据包是随机的。

实验环境

操作系统:winxp
实验工具:Process Explorer(用于监控恶意程序进行的操作),strings,process Monitor(用于监控恶意程序产生的影响),PEID,Wireshark(监控全面监控目标程序对网络的改变),Regshot(对注册表在运行病毒前后进行快照进行比对,发现软件对注册表进行哪些操作)
实验文件:lab03-02.dll

实验思路

静态分析dll中的特征信息,安装dll动态链接库中的恶意代码,监控并分析恶意程序的特征

实验过程

1、用PEID静态检测,查看导出表,有service,和installA(进行自身安装),导入表(Reg,service,ws2_32有联网操作,interner,http,执行联网)
2、strings程序查字符串,可看到reg,system32,svehost(数组程序,帮助dll运行),网址(病毒连接网站进行操作)
3、rundll32.exe(系统自带的),用来安装dll
命令:rundll32.exe dll文件的路径(如c:\lab03-02.dll),installA,先不运行,打开Regshot,点击1st shot,回车运行,打开Process Explorer,看列表中是否有rundll32.exe,如果没有说明已经运行完毕,再点击2nd rhost,点击比对,查看报告,看到iprip,valueadd下有imagepath有svchost,
4、在cmd中输入net start IPRIP,先不按回车,先打开Wireshark,Process Explorer,process Monitor,点击Wireshark的start,在cmd中点击回车,dll文件是不会显示在进程,用Process Explorer的find输入lab03-02.dll查看dll附着在哪个程序上、在进程表中找到该进程,点击查看有相应dll文件,在process Monitor打开filter查看PID,输入980.点击add,ok,列出dll程序产生的影响
5、用Wireshark查看DNS,http查看有get请求,useragent,

实验三

在一个安全的环境中执行lab03_03.exe文件中发现的恶意代码,同时使用基础的动态分析工具监视他的行为

问题

1、使用Process Explorer监视的时候注意到什么
2、可以找出内存修改行为吗
3、恶意代码在主机上的感染特征?
4、这恶意代码的目的是?

实验环境

操作系统winxp
实验工具Process Explorer(用于监控恶意程序进行的操作),strings,process Monitor(用于监控恶意程序产生的影响)
实验文件lab03_03.exe

思路

观察恶意程序创建出的进程,分析正常与恶意程序进程的不同,监控并分析恶意程序的特征

实验过程

打开两个软件,双击lab03_03.exe,可以看到Process Explorer产生了svchost.exe,是一个孤儿进程,(没有父进程),右键svchost.exe选择属性,查看strings有image(磁盘映像),和memory(内存映像).在memory下的有键盘按键和log文件,在image下没有,确定恶意程序是键盘记录程序,查看svchost的PID是1640,在process Monitor中filter add pID为1640,
桌面新建txt,在process Monitor的operation中add createfile和writefile,查看有哪些操作,有很多log文件,记录了键盘操作。

实验四

同时使用基础的动态分析工具分析lab03_04.exe文件中发现的恶意代码

问题

1、当你运行这个文件时,会发生什么
2、是什么原因造成动态分析无法正常实施
3是否有其他方式运行这个程序

实验环境

操作系统:winxp
实验工具Process Explorer(用于监控恶意程序进行的操作),strings,process Monitor(用于监控恶意程序产生的影响),PEID,strings,
实验文件lab03_04.exe

实验思路

静态分析恶意程序的基本信息,监控并分析恶意程序的特征

实验过程

用PEID查看,出现service,createfile,ws2_32,使用strings查看-cc,-re,-in,这是命令参数,system32路径,http,用process explore,双击lab03_04.exe,但是桌面上的lab03_04.exe消失,说明程序会删除自身,process中没有变化。process Monitor中filter中输入process name.lab03_04.exe,add,再运行程序,可以看到process Monitor中出现的进程监控中双击,可以看到有del操作。
用其他方式运行程序,输入lab03_04.exe -in,查看C盘的lab03_04.exe,已经被删除,说明程序无法正常安装,后续在逆向的时候进行分析

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

恶意代码动态分析 的相关文章

  • 【信息系统项目管理师】十大管理——1、整合管理

    十大管理 1 整合管理 项目背景 项目概况 2021年6月 我有幸作为项目经理主持了 某省广电网络工程资源管理系统 项目的建设工作 该项目中标金额为888万元 建设工期为5年 该项目是该省广电网络公司的重点项目 该项目整合并条理化广电运营商
  • 画波形图的工具

    在数字电路设计中 常常会看波形图 通过波形图来表达时序关系 波形图也是设计者直接的标准语言 比如 A模块的开发者会用波形图来表示接口的输入信号或者输出信号的时序关系 B模块 对应A模块的驱动或者接收者会根据接口时序做相应的数据传输控制 那么
  • 目标检测算法研究

    1 目标检测基本介绍 1 1 项目结构 1 2 目标检测的算法分类 1 2 1两步走的目标检测 先进行区域推荐 而后进行目标分类 代表算法 R CNN SPP net Fast R CNN Faster R CNN 1 2 2 端到端的目标
  • Python入门--数组、list

    在Python中 列表 list 是一种用于存储一组有序元素的数据类型 列表中的元素可以是数字 字符串 变量或其他任何Python对象 列表是可变的 也就是说 可以添加 删除和修改列表中的元素 下面是一些列表的基本操作示例 1 创建一个空列
  • mov edi,edi - hook api

    mov edi edi hook api 系统 windows xp 查看系统函数的反汇编代码时会发现开头有个 mov edi edi 2字节 再往前则是5个nop指令 当然这不会引人注意 可是 mov edi edi 有什么用了 上网搜索
  • 故事篇:数据库架构演变之路

    故事的开头总是这样 适逢其会 猝不及防 今天我哼着 也是黄昏的沙滩上 有着脚印两对半 在海边散步 迎面走来了一位身穿黄金甲的男子 来海边还穿这么花哨 真是个傻X 定睛一看 这不是嘉文吗 背景介绍 嘉文四世 德玛西亚皇子 是有名的高富帅 与盖
  • openwifi ap sta路由配置教程

    一 先启动AP wgd sh sysctl w net ipv4 conf all forwarding 1 sysctl w net ipv4 conf default forwarding 1 sysctl w net ipv6 con
  • RANSAC(Random Sample Consensus)对点云进行多个平面的分割并可视化(附python代码)

    使用 RANSAC Random Sample Consensus 算法对点云进行多个平面的分割 并进行可视化 下面是对代码的逐行解释 pcd o3d io read point cloud xxx pcd 从文件中读取点云数据 并将其存储
  • L1-029. 是不是太胖了

    据说一个人的标准体重应该是其身高 单位 厘米 减去100 再乘以0 9所得到的公斤数 已知市斤是公斤的两倍 现给定某人身高 请你计算其标准体重应该是多少 顺便也悄悄给自己算一下吧 输入格式 输入第一行给出一个正整数H 100 lt H lt
  • STM32F1开发指南笔记46----字库原理及汉字库创建

    随着液晶显示技术的发展和应用 越来越多的开发人员希望在自己开发的仪器中使用液晶屏幕来显示汉字 通常的汉字显示方式是 先根据所需要的汉字提取汉字点阵 譬如16x16点阵 24x24点阵等 将点阵文件存入ROM中 形成新的汉字编码 然后在使用时

随机推荐

  • 蓝桥杯练习——Python砖墙

    题目 你的面前有一堵矩形的 由 n 行砖块组成的砖墙 这些砖块高度相同 也就是一个单位高 但是宽度不同 每一行砖块的宽度之和相等 你现在要画一条 自顶向下 的 穿过 最少 砖块的垂线 如果你画的线只是从砖块的边缘经过 就不算穿过这块砖 你不
  • API网关

    API网关 api gateway 即 api 网关 所有的请求首先会经过这个网关 这有点类似于前端控制器模式 也有点类似于 Facade模式 如下图所示 由于所有的请求会先经过这个 api 网关 所以 可以在 这里做 权限控制 安全 负载
  • 微信小程序支付开发及问题

    一 前期准备 微信后台申请微信支付 微信支付 商务号关联 个人信息 填写 操作密码 api密钥设置 得到appid AppSecret 商户号 api密钥等 微信支付接口签名校验工具 二大概流程 1 登录 获取code 一个code只能用一
  • 练习2-2 在不使用运算符&&或

    for i 0 i lt lim 1 c getchar n c EOF i s i c 练习2 2 在不使用运算符 或 的条件下编写一个与上面的for循环语句等价的循环语句 参考代码 include
  • mysql 如何修改数据库表结构_MySQL数据库如何修改表结构

    MySQL数据库修改表结构的方法 1 使用add添加字段 使用drop删除字段 2 使用alter修改字段名 3 修改列类型 4 修改表名 5 修改表选项 6 修改列属性 MySQL数据库修改表结构的方法 1 添加与删除字段 1 添加 Al
  • ChatGLM2-6B中引入ptuning报错:AttributeError: ‘ChatGLMModel‘ object has no attribute ‘prefix_encoder‘

    File home ai gm ChatGLM2 6B ptuning v1 main py line 411 in
  • hdoj1052 Tian Ji -- The Horse Racing(贪心算法+2)

    田忌赛马 关键在于比较的次序 首先先比较两个人最慢的马 如果田忌的马快就直接赢下一分 count 如果更慢的话就用这匹慢马去与大王最快的马比赛 count 如果相等的话 再比较两个人最快的马 如果田忌的马更快 count 反之就用田忌的慢马
  • 关于QT线程暂停、恢复、停止、重启、暂停后回收的处理

    thread h Qmutex m mutex void threadPause void threadResume thread cpp bool Flag StopThread 0 bool Flag PauseThread 0 voi
  • C#中? 、?? 、?. 、??= 的用法和说明

    一 可空类型修饰符 lt gt 引用类型能用空引用来表示一个表示一个不存在的值 但是值类型不能 例如 string str null int i null 编译报错 为了使值类型也能使用可空类型 就可以用 来表示 表现形式为 T 例如 in
  • 关于 Android 8.0 的录像 quota exceeded 异常

    这是个之前从没碰到过的问题 记录一下这无语的跟踪过程 两周前的某一天 忽然一封邮件转过来 测试那边描述手机录像在内置卡录满状态下会出问题 录出的文件播不了 按说 磁盘录满根本不是个大事 Camera APK 会统计内置卡或者外置卡的剩余可用
  • HTTP协议理解

    HTTP协议理解 参考 https www cnblogs com li0803 archive 2008 11 03 1324746 html HTTPS连接过程 https blog csdn net lblmlms article d
  • python爬虫(上课笔记)

    爬虫概述 爬虫 网络爬虫是一种按照一定的规则 自动地抓取万维网信息的程序或者脚本 其本质就是通过编写程序拟浏览器上网 抓取数据的过程 爬虫特点 在法律中都是不被禁止的 具有违法风险 爬虫是一个博弈的过程 反爬机制 反反爬策略 robots协
  • ffmpeg demux 实时流

    FFMPEG 的参数当中就有 i 表示 input 这里的input 不仅仅是文件 还可以是实时流 目前我用过的应该支持一下几种流格式 rtsp udp http 其他的没用到 查查文档应该能够找到它还能支持什么 一般用法 ffmpeg i
  • pytorch的cuda环境搭建(GPU版本安装)

    第一步 安装cuda 安装cuda 这里还需要安装对应版本的Visual Studio 具体参考本博主的博客 https blog csdn net qq 36653505 article details 81368346 第二步 安装cu
  • UniLM详解,统一语言模型(Unified Language Model,UniLM)

    先导知识 Transformer BERT GPT MASS 前言 预训练模型按照训练方式或者网络结构可以分成三类 一是以BERT 2 为代表的自编码 Auto Encoding 语言模型 它使用MLM做预训练任务 自编码预训模型往往更擅长
  • layui后台模板_ThinkPHP6开发博客实战入门(五),创建admin后台模板

    我们在app目录创建admin controller Index php文件 同时创建index和home操作方法 tp6的模板文件需要使用thinkfacadeView来操作视图 用return View fetch 来输出模板 默认in
  • 学习“基于深度学习的故障诊断”开源

    博主秋雨行舟在csdn b站都有开源 这里只做自己的学习记录用 基于深度学习的轴承故障诊断 原文在这里 软件的下载 环境的配置up主给的非常详细了 所以这里只记录一些代码注释 一 CNN 注意 作者的代码是有一点点问题的 更改三条代码就可以
  • git中的SSL certificate problem: unable to get local issuer certificate错误的解决办法

    git中的SSL certificate problem unable to get local issuer certificate错误的解决办法 我们在使用git初始化一个项目时 尤其是通过git submodule update in
  • 左程云老师算法课笔记(一)

    前言 仅记录学习笔记 如有错误欢迎指正 最近 有点忙 也有点懈怠 还是要加油加油 共勉 一 排序 异或 交换律 a b b a 结合律 a b c a c b 1 1 0 0 0 0 1 0 1 0 1 1 不进位相加 所以交换a b 的值
  • 恶意代码动态分析

    目录 实验一 问题 实验环境 实验思路 实验过程 实验二 问题 实验环境 实验思路 实验过程 实验三 问题 实验环境 思路 实验过程 实验四 问题 实验环境 实验思路 实验过程 实验一 使用动态分析技术来分析lab03 01 exe文件中发