Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >恶意代码分析班作业 | 学习恶意代码分析需要的环境安装

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

作者头像
Ms08067安全实验室
发布于 2022-04-06 13:46:14
发布于 2022-04-06 13:46:14
8330
举报

文章来源|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,这个中文看起来,觉得十分别扭。

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

恶意代码分析的分类:

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

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2022-03-02,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 Ms08067安全实验室 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
恶意代码分析实战总结
(1)如果安装了VMware Tools,则使用CreateToolhelp32Snapshot、Process32Next扫描进程列表,查看是否有VMwareService.exe、VMwareTray.exe和VMwareUser.exe (2)查看网卡地址是否以00:0C:29开头,或查看其它硬件版本 (3)探测内存痕迹,搜索含有VMware的字符串 (4)Red Pill反虚拟机技术->漏洞指令sidt,根据返回的idtr值不同,在多核处理器上无效 (5)No Pill技术->漏洞指令sldt,主机系统上的LDTR值为0,虚拟机中不为0 (6)查看查询I/O通信端口,监视in指令,第二个操作数为VX (7)查看str指令,主机和虚拟机中返回值不一样,str指令用来从任务寄存器中检索段选择子
De4dCr0w
2019/02/27
2.6K0
内核级木马与病毒攻防:windows恶意代码分析入门
本节帮助读者入门windows上如何对恶意软件或病毒做初步分析。分析分两种,一种叫静态分析,也就是通过直接读取病毒或恶意程序的可执行文件来分析它的运行原理,一种是动态分析,也就是在病毒或恶意程序正在运行的情况下,监视其一举一动,通过观察它在系统中的运行情况来分析它的目的和原理。
望月从良
2020/07/14
1.5K0
内核级木马与病毒攻防:windows恶意代码分析入门
网络安全自学篇(十)| 论文之基于机器学习算法的主机恶意代码
自幼受贵州大山的熏陶,养成了诚实质朴的性格。经过寒窗苦读,考入BIT,为完成自己的教师梦,放弃IT、航天等工作,成为贵财一名大学教师,并想把自己所学所感真心传授给自己的学生,帮助更多陌生人。
释然IT杂谈
2020/05/11
1.3K0
[当人工智能遇上安全] 5.基于机器学习算法的主机恶意代码识别研究
《当人工智能遇上安全》系列博客将详细介绍人工智能与安全相关的论文、实践,并分享各种案例,涉及恶意代码检测、恶意请求识别、入侵检测、对抗样本等等。只想更好地帮助初学者,更加成体系的分享新知识。该系列文章会更加聚焦,更加学术,更加深入,也是作者的慢慢成长史。换专业确实挺难的,系统安全也是块硬骨头,但我也试试,看看自己未来四年究竟能将它学到什么程度,漫漫长征路,偏向虎山行。享受过程,一起加油~
Eastmount
2021/12/01
1K0
[当人工智能遇上安全] 5.基于机器学习算法的主机恶意代码识别研究
AI开发软件环境
不同ubuntu版本的ISO File: https://cn.ubuntu.com/download 注意: windows虚拟机中的显卡是物理CPU模拟出来的,没有调用物理GPU,所以虚拟机装ubuntu是无法进行深度学习训练。
timerring
2023/10/13
3350
AI开发软件环境
[1275]WSL的安装与使用
集成水平:WSL提供更深入的集成与主机操作系统Windows。例如,你可以在Windows的文件管理器中直接访问WSL文件系统,也可以在WSL中直接运行Windows的可执行文件。而虚拟机则创建了一个相对隔离的环境,虽然虚拟机可以访问主机文件系统,但需要特定的设置,并且整体上没有WSL那么直接和方便。
周小董
2024/04/07
5690
[1275]WSL的安装与使用
DrakvufSandbox:可以交互的开源windows恶意程序分析沙盒
DrakvufSandbox是一个自动化的黑盒恶意软件分析开源项目,该项目提供了一个友好的Web界面,允许您上传可疑文件进行分析。沙盒作业完成后,可以通过web界面浏览分析结果,并深入了解文件是否是恶意程序,下面介绍其安装以及使用。由于个人使用习惯,不想装物理的系统,所以选择在VMware下进行虚拟嵌套使用。
FB客服
2022/04/11
2.5K0
DrakvufSandbox:可以交互的开源windows恶意程序分析沙盒
VirtualBox安装部署Ubuntu 16.04 图文详解
安装之前,需要在bios开启Virtualization Technology (VTx) 选项, 其目的是:可以安装64位linux操作系统,并且可以开启虚拟机多CPU配置。
用户8705048
2021/06/08
7700
浅谈无文件攻击
与大多数恶意软件不同,“无文件”攻击并不会在目标计算机的硬盘中留下蛛丝马迹,而是直接将恶意代码写入内存或注册表中。由于没有病毒文件,传统基于文件扫描的防病毒软件很难侦测到它们的存在。然而,“无文件”攻击的定义已经逐渐扩大化,那些需要依靠文件系统的某些功能来实现激活或驻留的恶意软件也已经包括在了“无文件”攻击的范畴中。
德迅云安全--陈琦琦
2024/03/21
3200
Ubuntu实现树莓派交叉编译
在一个平台上生成另一个平台上的可执行代码。为什么要大费周折的进行交叉编译呢?一句话:不得已而为之。有时是因为目的平台上不允许或不能够安装所需要的编译器,而又需要这个编译器的某些特征;有时是因为目的平台上的资源贫乏,无法运行所需要的编译器;有时又是因为目的平台还没有建立,连操作系统都没有,根本谈不上运行什么编译器。
用户8705057
2021/06/08
2.7K0
Qt:windows下Qt安装教程
Qt5.12下载网址: http://download.qt.io/archive/qt/5.12/5.12.2/
全栈程序员站长
2022/08/29
6.6K0
Qt:windows下Qt安装教程
Kali-2020安装及配置
今天发现我的Kali版本是2017版,而Kali最新版已经到了2020,于是就打算重新安装一下,顺便水一篇文章,供新手参考
小简
2023/01/01
1.6K0
Kali-2020安装及配置
Python请求库的安装
今天开始学习崔大的「python3网络爬虫开发实战」,把每天学到的知识点记录下来,和大家一起交流、一起进步。
stormwen
2019/08/05
2.3K1
如何进行内存设置
如果您想要设置 C++ 语言环境,您需要确保电脑上有以下两款可用的软件,文本编辑器和 C++ 编译器。
iOS Magician
2023/03/22
1.5K0
新型OpcJacker恶意软件通过虚假的VPN传播恶意广告
趋势科技研究人员发现了一种新型恶意软件,将其命名为 "OpcJacker"(取其opc配置设计“opc”和加密货币劫持“hijack”能力英文前后缀opc-jack而成),该恶意软件自2022年下半年以来一直传播。OpcJacker是一个有趣的恶意软件,因为它的配置文件使用一个自定义的文件格式来定义窃取者的行为。具体来说,该文件格式类似于自定义的虚拟机代码,配置文件中存在的十六进制数字标识符使得窃密器可运行所需的功能。使用这种设计的目的可能是为了使研究人员更难理解和分析恶意软件的代码流。 恶意软件OpcJa
FB客服
2023/04/26
1.1K0
新型OpcJacker恶意软件通过虚假的VPN传播恶意广告
恶意代码分析实战 Lab5-1
得到字符串[This is RDO]pics.praticalmalwareanalys 后面是网址
红队蓝军
2023/09/05
2710
恶意代码分析实战 Lab5-1
二进制程序分析指南
分析恶意软件的第一步是收集二进制程序在主机上执行的行为事件,研究人员根据这些行为大体形成一个思路来描述恶意软件的功能。
FB客服
2021/10/11
2.2K0
计算机操作系统-操作系统的定义
Operating System是指控制和管理整个计算机系统的硬件和软件资源,并合理地组织调度计算机的工作和资源的分配,以提供给用户和其他软件方便的接口和环境。他是计算机系统中最基本的系统软件。
全栈程序员站长
2022/07/28
1.2K0
恶意软件分析101之文件类型与指纹识别
冰封三尺非一日之寒,本篇先交付恶意软件前置知识的文件类型与指纹识别,来帮助大家打基础。
FB客服
2021/08/24
1.3K0
Java基础入门篇(一)——Java虚拟机和运行环境
前面几篇文章用Java带大家一起了解了几个游戏小项目,感兴趣的小伙伴可以点击文章观摩下,手把手教你用Java打造一款简单故事书(上篇)、手把手教你用Java打造一款简单故事书(下篇)、手把手教你用Java打造一款简单考试系统(上篇)、手把手教你用Java打造一款简单考试系统(下篇)接下来的几篇文章是关于Java基础的,希望对大家的学习有帮助,欢迎大家在讨论区留言。
Java进阶者
2021/01/22
4880
相关推荐
恶意代码分析实战总结
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档