恶意代码分析班作业 | 学习恶意代码分析需要的环境安装

2022年3月1日 336点热度 0人点赞 0条评论

文章来源|MS08067 恶意代码分析实战班作业

本文作者:Qber(恶意代码分析1期学员)


T1-配置Win7虚拟

Step1:启动虚拟

Step2:配置虚拟-安装常用

Step3:拍摄快照

T2-探索文件后缀名
Setp1:对于文件后缀的个人理解
Step2:常见的文件后缀
Step3:不常见的文件后缀

T3-编译代码并运行
Setp1:Java
Step2:Go
Step3:C++
Step4:Python

T4:运行并观察恶意代码

T5:安装并配置Vs Studio

Step1:安装 .Net Framework>4.6
Step2:选择C++开发组件

Step3:配置Vs Studio

T1-配置Win7虚拟

Step1:启动虚拟机

安装好vmware软件,下载百度网盘上的虚拟机,找到VMX文件,打开,启动window7虚拟机。

图片

Step2:配置虚拟机-安装常用软件

配置:退出域控,切换成本地管理员账户,便于后续的操作。

域控账户密码 bbs.enweb.cn/bbs.enweb.cn

软件:除了老师已经安装好的软件,还安装了一些顺手的工具,Sublime Text4,lisbary(快捷启动器,类似terminal),chrome浏览器,vs studio 2022

图片

Step3:拍摄快照

图片

打上一个快照,如果后期不小心把环境弄崩溃了,可以随时还原,快照类似一个系统还原点,如果还是不放心,可以把配置好的vmware文件,打一个压缩包,保证绝对备份系统完整安全。

T2-探索文件后缀名

Setp1:对于文件后缀的个人理解

百科:文件扩展名(Filename Extension)也称为文件的后缀名,是操作系统用来标记文件类型的一种机制。扩展名几乎是每个文件必不可少的一。如果一个文件没有扩展名,那么操作系统就无法处理这个文件,无法判别到底如何该文件。

个人理解:文件后缀名是用于文件格式的一种标记,便于系统找到对应的程序去打开它,如果系统找不到,其实我们手动指定打开方式也可以。

我们将一个txt文件,改名为.tx文件,直接双击,系统已经无法正常的打开它。

图片

我们选择使用记事本程序打开,可以正常打开。

图片

结论:文件后缀只是一个便于程序识别其对应文件的索引,在linux中,一切皆文件,无格式之说。我以前总认为一个mp4能播放,是因为他叫mp4文件,后来随着学习才能明白,是因为它本身就是一个媒体文件类型,与mp4这个后缀没有根本关系。

可执行文件:

可执行文件 (executable file) 指的是可以由操作系统进行加载执行的文件。在不同的操作系统环境下,可执行程序的呈现方式不一样。

在windows操作系统下,可执行程序可以是 .exe文件 .sys文件 .com等类型文件。


Step2:常见的文件后缀

图片类:jpg,bmp,jpeg,raw

视频类:mp4, avi, mkv, flv,

压缩包类:zip, rar, 7z,

文档类:doc, xls, ppt, txt, pdf,

这些都是不可执行的文件。

Step3:不常见的文件后缀

.log:日志文件,一般由系统或者程序产生的,类似txt,可用记事本打开,不可执行文件。

.swg:虚拟内存交换文件,由操作系统产生,不可执行文件。

.tmp:临时文件,一般由系统或者程序产生,不可执行文件。

.cert:证书文件,由机构发行,认证作用,不可执行文件。

文件后缀大全link:

https://wenku.baidu.com/view/a9534550f56527d3240c844769eae009581ba2b4.html

T3-编译代码并运行

因为电脑上正好装了一些IDE,就把电脑有的,都跑一遍了。

Java、Go、Python、C++

Setp1:Java

图片

配置好IDEA后,直接新建一个class,记得类名与报名要一致,java每一行结束后需要分号,单引号和双引号也有区别,单引号是字符,双引号为字符串。

Step2:Go

图片

这里使用的是Goland-IDE,直接写的Go,据说Go对多线程,高并发支持更优秀,也是抱着兴趣的角度,去学习了一下。

图片

Goland直接运行是不会生成exe文件的,我们需要在Terminal下,手动go build一下,生成exe可执行程序。

Step3:C++

图片

正好装了CLion,就用CLion写了一下。

图片

我们可以在build文件夹中,发现打包好的exe程序,放在cmd运行,是为了避免一闪而过,双击运行也是可以的,需要加一个等待输入函数,不然容易看不到效果。

Step4:Python

图片

这里直接运行的是Python脚本,如果想要生成exe,我们需要使用pyinstrller打包。安装pyinstaller

图片

安装完成后输入,pyinstaller -F 路径/xx.py

图片

这就是打包成功了,如果没加参数就是当前包的dist文件夹里面。

图片

也可以加一些参数,使得其更像一个exe 程序,包括制定图标,名称等。

T4:运行并观察恶意代码

太恶意的软件,也没想不到什么,特别是win10下,很多恶意软件跑不起来,这运行一个用于内网渗透的代理转发软件,可能也不是很恶意,因为它也可以拿来做有用的事情吧。

首先,这是运行恶意软件前的 任务管理器与网络连接状况。

图片

这里尝试运行一个frp代理文件。

图片

可以看到任务管理器多了一个frp.exe进程,网络连接多了一个连接,并且外部地址是对应的代理服务器地址。

一般来说,一个程序运行,就会在系统里留下一些痕迹,比如进程,注册表,服务启动项,网络连接,tmp等,通过这些增改的变动,我们可以反推出这个恶意软件想要做什么,从而去针对性的分析它。

T5:安装并配置Vs Studio

Step1:安装 .Net Framework>4.6

图片

Vs Studio安装程序,如果没有安装.Net框架,就会报错,需要根据报错信息,安装对应的框架。

Step2:选择C++开发组件

这里应该已经错过截图了,就没有图了,安装组件的时候,只选一个C++开发就好,这样的话,整个程序装完大概是8-10G,安装旺完成图,需要重启。

图片

Step3:配置Vs Studio

图片

工具-选项,配置相关设置,一般来说,我喜欢把字体调大一点,字体喜欢console字体,关闭自动更新,还有就是这个中文,看多了英文的IDE,这个中文看起来,觉得十分别扭。

图片

跌跌撞撞,跑起来了第一个程序,还是有很多不适应,这个太大了,需要看教程慢慢学习。

恶意代码分析的分类:

恶意代码分析也可作为单独的安全专业类别来看待,不过总体是偏逆向方向的,希望的受众是逆向相关的就行了,比如以前只会逆向但是不会恶意代码的分析的,或者想提升自己能力的渗透测试人员。

面向受众:

想入门恶意代码分析的学生,想提升自己面对恶意代码能力的安全运维人员和安全研究人员。

学完可以收获什么:

学完之后的收获基本上就是学习基本的恶意代码的分析和处理流程,并且能对实战,不管是攻防环境还是真实生产环境下遇到的恶意代码做分析和处理。

恶意代码分析 实战班

课程费用

每期班定价2499第二期班预定1999(转发本文至朋友圈送二进制逆向星球名额),同样每个报名学员都可享受一次免费重听后续任意一期班的权益,一次没学懂就再来一遍!

凡是MS08067旗下任意星球学员或其他培训课程学员,可享内部价1799

上课时间

每周五、六、日的晚间 19:30-21:30 ,共21课时,为期二个月不到
如果无法准时参加直播课程,在线培训的每节课程都会被录制成视频(一机一码)上传到学员区,可随时下载观看。

上课方式

培训采用在线直播+随堂录播+微信群解答 的形式,无需等待,报名后立即进入“二进制逆向星球”开始预习。

讲师介绍

讲师:
小玉玉,MS08067安全实验室核心成员,金牌讲师,前某国企安全研究员,擅长恶意代码分析、APT攻击和社会工程学。

课程目录1.0版

第1天课 恶意代码分析基础
windows操作系统中的文件类型简介;
常见可执行和不可执行文件的类型;
windows下运行代码的基本过程代码的编译;
执行过程,内存与cpu的关系;
windows下恶意代码的常见类型和危害;
常见的恶意代码类型:木马、病毒;
常见的恶意代码中的行为有哪些以及为什么会有这些行为;
第2天课 语言基础
C++基础内容、语言结构、变量和数据类型、控制语句、函数;
windows API基础内容;
windows api的作用;
windows api的查询;
windows api的使用;
第3天课 汇编语言
语言结构;
变量和数据类型;
控制语句;
函数;
第4天课 针对pe结构的恶意代码
静态分析1-pe结构;
常见的pe结构文件;
pe结构的介绍;
使用pefile或peid工具查看pe结构(自动分析);
使用010edtor或winhex工具查看pe结构(手动分析);
第5天课 针对pe结构的恶意代码
静态分析2-ida静态分析;
ida的基础使用;
ida的功能结构;
ida的实际操作;
ida的插件编写和使用;
第6天课 针对pe结构的恶意代码
静态分析3-复杂结构恶意代码分析;
多分支的恶意代码分析;
网络协议的恶意代码分析;
多文件的恶意代码分析;
加解密的恶意代码分析;
第7天课 针对pe结构的恶意代码
动态分析1-od的使用;
od的基础使用;
od的功能结构;
od的实际操作;
第8天课 针对pe结构的恶意代码
动态分析2-行为查看器的使用;
promon和peoexp等工具的使用;
wiershark等工具的使用;
威胁情报平台的使用;
第9天课 针对pe结构的恶意代码
综合分析-完全实战案例;
综合利用之前的知识实战案例;

第10天课 针对pe结构的恶意代码的应急响应以及防护
针对pe结构的恶意代码的应急响应措施;
针对pe结构的恶意代码的防护提升措施;

第11天课 常见的pe结构的恶意代码加壳
常见类型;
加壳过程;
工具加壳;
手工加壳;
第12天课 常见的pe结构的恶意代码脱壳
常见类型;
脱壳过程;
工具脱壳;
手工脱壳;
第13天课 常见的pe结构的恶意代码反调试
常见类型;
反调试过程;
手工反调试;
第14天课 常见的pe结构的恶意代码反反调试
常见类型;
反反调试过程;
手工反反调试;
第15天课 针对宏的恶意代码分析基础
宏的使用;
vba基础内容;
语言结构;
变量和数据类型;
控制语句;
函数;
第16天课 针对宏的恶意代码分析
分析的思路;
分析的过程和重点;

第17天课 针对powershell的恶意代码分析基础
powershell的使用;
powershell基础内容;
语言结构;
变量和数据类型;
控制语句;
函数;
第18天课 针对powershell的恶意代码分析
分析的思路;
分析的过程和重点;

第19天课 针对综合结构的恶意代码综合分析-完全实战案例
综合利用之前的知识实战案例;

第20天课 针对综合结构的恶意代码的应急响应以及防护
针对综合结构的恶意代码的应急响应措施;
针对综合结构的恶意代码的防护提升措施;

第21天课 ATT&CK以及人工智能的补充
att&ck的介绍;
att&ck的使用;
人工智能在恶意代码中的介绍;
人工智能在恶意代码中的使用;
*大纲仅作为参考,会根据当期进度有所变化。

    你距离大佬,只差一个决定       

课程报名请联系小客服

图片

扫描下方二维码加入星球学习

加入后邀请你进入内部微信群,内部微信群永久有效!

图片 图片

图片图片

图片 图片

来和5000+位同学一起加入星球学习吧!

图片

8

20510恶意代码分析班作业 | 学习恶意代码分析需要的环境安装

root

这个人很懒,什么都没留下

文章评论