恶意软件|我们怎么样才能自己分析恶意软件?

恶意软件|我们怎么样才能自己分析恶意软件?

【恶意软件|我们怎么样才能自己分析恶意软件?】在搜索恶意软件之前 , 每个研究人员都需要找到一个系统来分析它 。 有两种方法可以做到这一点:构建可以分析恶意软件的环境或者使用第三方解决方案 。 今天 , 我们将构建可以分析恶意软件的环境——自定义恶意软件沙箱 , 我们可以在不感染计算机的情况下进行适当的分析 。

阐述步骤之前 , 我们先来了解一下沙盒沙盒(sandbox , 又译为沙箱) , 在计算机安全领域里是一类安全机制 , 为运行的程序提供的隔离环境 。 通常是为一些来源不可信、具破坏力或无法判定程序意图的程序提供实验之用 。
沙盒通常严格控制其里的程序所能访问的资源 , 比如 , 沙盒可以提供用后即回收的磁盘及内存空间 。 在沙盒里 , 网络访问、对真实系统的访问、对输入设备的读取通常被禁止或是严格限制 。
举个例子:iOS系统相对于Android(或Windows)系统来说比较安全的原因有很多 , 其中有一点就是苹果推出的沙盒机制 , 每个应用都有自己对应的沙盒 , 每个应用程序之间不能相互访问非本程序的沙盒 , 所以 , iOS系统相对于其他的系统来说比较安全 , 再是从内存上来说相对于Windows来说也比较安全 , Apple的应用程序在内存消耗过高时会收到内存警告 , 如果不及时处理的话应用程序会自动退出 , 而不像Windows系统一样 , 中了病毒或者木马会一直消耗内存 , 直到内存没有了才宕机 。 可以说沙盒机制 , 让iOS系统变得更安全 。
沙盒里的所有改动对操作系统不会造成任何损失 。 通常 , 这类技术被计算机技术人员广泛用于测试可能带毒的程序或是其他的恶意代码 。
想象一下 , 在一个装满了平整细沙的盒子里 , 我们可以尽情随意地在上面作画、涂写 , 无论画的好坏 , 最后轻轻一抹 , 沙盒又回到了原来的平整状态 。 沙盒的魅力就在于他允许你出错 , 还可以给你改正的机会 。 而且沙盒允许检测网络威胁且安全地分析它们 。 所有信息都会保持安全 , 并且可疑文件无法访问系统 。 我们可以监视恶意软件进程 , 识别其模式并调查其行为 。
这也就是为什么我们需要沙盒的原因 。
如何构建自己的恶意软件沙盒?下面 , 让我们逐步了解为恶意软件设置一个简单的研究环境所需的所有步骤:
1.安装虚拟机
运行恶意软件应该发生在适当隔离的环境中 , 以避免感染主机操作系统 。 最好有一台独立的计算机 , 但我们可以设置一台虚拟机 , 安装不同版本的操作系统 。 市场上有很多可选的虚拟机:VMWare、VirtualBox、KVM、Oracle VM VirtualBox、Microsoft Hyper-V、Parallels或Xen 。
2.检查工件
现代恶意软件是智能的 ——它能知晓自己是否在虚拟机上运行 。 这就是为什么检查至关重要的原因 。 我们可以检查代码、删除检测等 。
3.使用其他网络
另一个预防措施是使用不同的网络系统 。 防止网络上其他计算机受到任何感染是非常重要的 。 我们需要获取并正确设置VPN服务 , 不能让流量从真实的IP地址泄漏 。
4.分配实际数量的资源
我们的目标是使系统看起来尽可能真实 , 以诱骗任何恶意程序的执行 。 因此需要确保分配的资源数量符合实际情况:超过4 Gb的RAM , 至少4个内核 , 以及100GB或更多的磁盘空间 。 这是伪装成合法系统的基本要求 。 但是 , 恶意软件会检查设备的配置(敲重点)——如果某个地方有虚拟机的名称 , 恶意对象就会识别它并停止工作 。

相关经验推荐