搭建安全的分析环境

embedded/2024/12/30 22:22:42/

分析恶意软件,动态行为分析是必不可少的一步,所有样本都必须在虚拟环境中执行,不可在主机上执行。因此,我们要需要搭建供动态分析的环境以及防止在主机运行的环境。

动态分析环境搭建

工具

虚拟机

虚拟机软件有很多,我这里选择的是vmware

镜像

可以选择Win7和Win10两种系统进行搭建,推荐去msdn下载干净完整的镜像,避免部分镜像带毒问题。

环境搭建

安装完虚拟机后,然后再安装常用软件、运行依赖库、分析工具等环境。针对分析过程中,需要有以下注意:

  • 在分析之前都要为虚拟机添加快照,方便多次反复使用。
  • 一般情况下,由于很多恶意软件需要联网才能复现出对应行为,网络连接可以设置为NAT模式保证部分网络隔离。但如果分析感染型、蠕虫、勒索病毒等带蠕虫特性的恶意软件时,为了局域网的安全,一定要注意断网分析。
  • 当分析时出现期望或意外的现场时,要先添加快照,因为每一种情况都可能时你最后一次遇到。

主机安全环境配置

进行恶意代码分析,主机不可避免会存放一些恶意软件,为了防止误点击恶意软件对主机造成破坏,我们需要防止恶意软件在本地运行。

设置组策略

在主机存放恶意软件的路径必须通过组策略设置为不可运行,并且恶意软件样本尽量不要带任何后缀,可以复制到虚拟机后再添加后缀。

组策略设置步骤:

1.运行"gpedit.msc",打开组策略对话框

2.在组策略中依次打开"计算机配置"→Windows设置→安全设置→软件限制策略(Software Restriction Policies)→其他规则(Additional Rules),新建路径规则,填入路径。

3.设置好路径规则后,我们还需要全面考虑各种文件类型,并确保禁止执行目录中包含所有可能执行恶意代码的文件类型,以防止恶意软件的执行。

在"指定的文件类型"可以查看能禁止运行的文件类型,由于默认的指定文件类型不够全面。仍然存在恶意代码执行的风险。因此,为了更全面地防止恶意软件的运行,需要细致地设置指定的文件类型。

可添加的文件扩展名有:jar、doc、docx、xls、xlsx、pdf等

注意:如果其他脚本文件和对应的解释器做了文件关联,可以双击执行,那么也应该将该类型添加。

设置完毕后重启电脑,并将正常的程序放入指定目录进行双击执行测试。如果设置成功,将看到如下窗口弹出。

经过虚拟机环境的搭建和主机环境的配置,现在可以安全地进行恶意软件分析了。


http://www.ppmy.cn/embedded/125052.html

相关文章

5.将扩散模型应用于具有特殊结构的数据

虽然扩散模型在图像和音频等数据应用领域中取得了巨大的成功,但他们不一定能无缝地转移到其他模态上。在许多重要的领域,数据有特殊的结构。为了让扩散模型有效运作,必须考虑并处理这些特殊结构。比如,经典扩散模型所依赖的分数的…

CSS元素显示类型

display 属性是 CSS 中最重要的属性之一&#xff0c;主要用来控制元素的布局&#xff0c;通过 display 属性您可以设置元素是否显示以及如何显示。 根据元素类型的不同&#xff0c;每个元素都有一个默认的 display 属性值&#xff0c;例如<div>默认的 display 属性值为 …

如何将数据从 AWS S3 导入到 Elastic Cloud - 第 1 部分:Elastic Serverless Forwarder

作者&#xff1a;来自 Elastic Hemendra Singh Lodhi 这是多部分博客系列的第一部分&#xff0c;探讨了将数据从 AWS S3 导入 Elastic Cloud 的不同选项。 Elasticsearch 提供了多种从 AWS S3 存储桶导入数据的选项&#xff0c;允许客户根据其特定需求和架构策略选择最合适的方…

如何学习大数据 (学习路线)

学习大数据是一个广泛的过程&#xff0c;需要从概念、工具、技术栈到实战项目逐步深入。以下是一条系统的学习路径&#xff0c;帮助你逐步掌握大数据领域的关键知识和技术。 学习路径 1. 理解大数据的基本概念和原理 在正式学习大数据技术之前&#xff0c;先了解一些基础的概…

Rust语言发展历程

Rust是一种系统编程语言&#xff0c;它的设计目标是提供安全性和性能&#xff0c;同时解决C的内存安全问题。以下是Rust的发展历程&#xff1a; 2006年&#xff1a;Rust的构思始于这一年&#xff0c;由Mozilla的程序员Graydon Hoare开始设计。 2010年&#xff1a;Rust的第一个…

Python库pandas之六

Python库pandas之六 输入/输出read_sql函数应用实列 输入/输出 read_sql 函数 词法&#xff1a;pandas.read_sql(sql, con, index_colNone, coerce_floatTrue, paramsNone, parse_datesNone, columnsNone, chunksizeNone, dtype_backend<no_default>, dtypeNone) rea…

【MySQL】存储过程

MySQL 存储过程是数据库中一组 SQL 语句的集合&#xff0c;可以通过名称调用并执行。存储过程可以封装复杂的业务逻辑&#xff0c;减少网络传输的次数&#xff0c;提升性能。以下是关于 MySQL 存储过程的详细教学&#xff1a; 1. 存储过程的基本语法 创建存储过程的基本语法如…

acwing用数组实现单双链表

题目1&#xff1a;单链表 实现一个单链表&#xff0c;链表初始为空&#xff0c;支持三种操作&#xff1a; ​ 向链表头插入一个数&#xff1b; ​ 删除第 k 个插入的数后面的数&#xff1b; ​ 在第 k 个插入的数后插入一个数。 现在要对该链表进行 M 次操作&#xff0c;进行…