[Stupidly Simple VM ]SSVM #1配置 & 启动虚拟机

简介: 本文主要介绍SSVM框架的配置方法

0x01 介绍

SSVM (Stupidly Simple VM),目前releases中最新版本为1.9.0.3,是一个能在虚拟机中模拟虚拟机行为的一种简单且独立的虚拟机。能够进行模拟运算基本数据结果。
目前该虚拟机支持的功能有:

功能(来自README)

  • InvokeDynamic
  • Reflection
  • Class loading
  • File system (part of it)
  • Mapped I/O streams between VM & host OS
  • sun/misc/Unsafe implementation
  • JDK 8/9 bootstrapping
  • Multi-threading (see ThreadManager)
  • Interface to modify VM behaviour, similar to JVM TI
  • Instruction rewriting: rewrite parts of methods as the VM executes

    应用

  • 对恶意代码进行分析
  • 用于逆向工程

0x02 配置环境

为了方便,我们使用gradle进行配置.
{FD26E480-4891-47fe-9EB2-C696D60E239E} 拷贝.png
等待依赖下载完成后成功即可.


0x03 虚拟机启动


import dev.xdark.ssvm.VirtualMachine;

public class Example {
   

   public static void main(String[] args) {
   
        VirtualMachine vm = new VirtualMachine();
        //虚拟机启动
        vm.bootstrap();
        //无异常报错即为虚拟机启动成功
  }
}

0x04 虚拟机启动失败解决方案

虚拟机启动失败

Exception in thread "main" java.lang.IllegalStateException: VM bootstrap failed
    at dev.xdark.ssvm.VirtualMachine.bootstrap(VirtualMachine.java:288)
    at org.example.Main.main(Main.java:26)

需要注意的是测试时,需要使用系统编码为ANSI的系统进行测试(在vmware中使用相同的java版本进行测试得出的结论,也许还有其他的解决办法)

目录
相关文章
|
4月前
|
虚拟化
如何为VM虚拟机添加D盘
这篇文章介绍了如何在VMware虚拟机中将E盘修改为D盘,并提供了详细的操作步骤,包括在计算机管理中更改驱动器号和路径,以及初始化和格式化新磁盘的指导。
如何为VM虚拟机添加D盘
|
4月前
|
虚拟化
VM虚拟机只有一个C盘怎么添加硬盘新分区盘符
关于如何在VMware虚拟机中解决只有一个C盘的问题,介绍了增加硬盘和创建新分区的方法。
VM虚拟机只有一个C盘怎么添加硬盘新分区盘符
|
4月前
|
应用服务中间件 nginx Docker
本地通过域名访问虚拟机上nginx的服务、搭建域名访问环境一(反向代理配置)
这篇文章介绍了如何通过域名在本地访问虚拟机上的nginx服务,包括创建nginx容器、修改配置文件、修改本地host文件以及进行访问测试的详细步骤。文章提供了具体的Docker命令来创建并配置nginx容器,展示了配置文件的修改示例,说明了如何在本地系统的hosts文件中添加虚拟机IP和自定义域名,以及如何通过浏览器进行测试访问。
本地通过域名访问虚拟机上nginx的服务、搭建域名访问环境一(反向代理配置)
|
4月前
|
安全
【Azure 云服务】Azure Cloud Service 关于虚拟机资源,杀毒软件配置,补丁机制的问答
【Azure 云服务】Azure Cloud Service 关于虚拟机资源,杀毒软件配置,补丁机制的问答
|
4月前
|
存储 网络协议 搜索推荐
在Linux中,如何配置和管理虚拟机的网络和存储?
在Linux中,如何配置和管理虚拟机的网络和存储?
|
4月前
|
安全
如何修改Xshell中的字体颜色大小等样式 修改Vm虚拟机终端的字体颜色
这篇文章介绍了如何在Xshell中修改字体颜色、大小等样式,以及如何在虚拟机终端设置字体颜色,以实现统一和舒适的视觉效果。
如何修改Xshell中的字体颜色大小等样式 修改Vm虚拟机终端的字体颜色
|
4月前
|
安全 Windows
【Azure 环境】Azure 的PaaS服务如果涉及到安全漏洞问题后,我们如何确认所用服务的实例(VM:虚拟机)的操作系统已修复该补丁呢?
【Azure 环境】Azure 的PaaS服务如果涉及到安全漏洞问题后,我们如何确认所用服务的实例(VM:虚拟机)的操作系统已修复该补丁呢?
|
4月前
|
API 网络架构
【Azure Developer】如何通过Azure REST API 获取到虚拟机(VM)所使用的公共IP地址信息
【Azure Developer】如何通过Azure REST API 获取到虚拟机(VM)所使用的公共IP地址信息
|
4月前
|
存储 API 开发工具
【Azure 环境】在Azure虚拟机(经典) 的资源中,使用SDK导出VM列表的办法
【Azure 环境】在Azure虚拟机(经典) 的资源中,使用SDK导出VM列表的办法
|
4月前
|
Java 数据安全/隐私保护 Windows
【Azure Developer】使用Java代码启动Azure VM(虚拟机)
【Azure Developer】使用Java代码启动Azure VM(虚拟机)