[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版本进行测试得出的结论,也许还有其他的解决办法)

目录
相关文章
|
2天前
|
存储 网络协议 网络安全
Hyper-V Win10虚拟机配置常见问题
在配置Hyper-V Win10虚拟机时,用户常面临网络连接、虚拟交换机配置、资源分配及其他问题。例如,虚拟机无法获取IP地址可能源于DHCP服务异常,需检查并启动该服务;外部虚拟交换机配置错误则需确保物理网络适配器正确连接。此外,内存不足或虚拟硬盘性能瓶颈也会影响运行效果。通过合理调整资源配置、优化设置及遵循最佳实践,可有效解决这些问题。
|
16天前
|
存储 编解码 虚拟化
【2025最新】VMware Workstation Pro 虚拟机配置与安装VMware Tools 感受它的强大~
VMware Tools 是 VMware 虚拟机中自带的一种增强工具,能够显著提升虚拟机的性能和用户体验。它提供了优化的显卡驱动程序、文件共享与拖放功能、时间同步以及跨虚拟机和宿主机的复制粘贴功能。安装 VMware Tools 可以让虚拟机在 VMware 平台上运行得更加高效,并且对于老旧系统(如 Win98、Win2000、WinXP)也能提供必要的驱动支持。每个虚拟机都需要独立安装与其操作系统版本相匹配的 VMware Tools,以确保最佳兼容性和性能表现。
59 6
【2025最新】VMware Workstation Pro 虚拟机配置与安装VMware Tools 感受它的强大~
|
8天前
|
安全 网络协议 网络安全
当虚拟机出现网络连接问题时,应该先检查Hyper-V的网卡连接配置
当虚拟机出现网络连接问题时,应首先检查Hyper-V的网卡配置。具体步骤包括:确认虚拟机运行状态、检查虚拟交换机类型和物理网卡连接、确保虚拟机网络适配器正确连接到虚拟交换机,并验证网络配置(IP地址等)。常见问题如虚拟交换机配置错误、网络适配器未连接或防火墙阻止连接,可通过重新配置或调整设置解决。必要时重启虚拟机和宿主机,查看事件日志或联系技术支持以进一步排查问题。
|
9天前
|
虚拟化 网络虚拟化 Windows
导入虚拟机到Hyper-V环境时,理解并配置网络适配器设置是确保网络通信的关键
在Hyper-V环境中,正确配置虚拟机的网络适配器是确保其网络通信的关键。需先启用Hyper-V功能并创建虚拟交换机。接着,在Hyper-V管理器中选择目标虚拟机,添加或配置网络适配器,选择合适的虚拟交换机(外部、内部或私有),并根据需求配置VLAN、MAC地址等选项。最后,启动虚拟机并验证网络连接,确保其能正常访问外部网络、与主机及其他虚拟机通信。常见问题包括无法访问外部网络或获取IP地址,需检查虚拟交换机和适配器设置。
|
7月前
|
安全
【Azure 云服务】Azure Cloud Service 关于虚拟机资源,杀毒软件配置,补丁机制的问答
【Azure 云服务】Azure Cloud Service 关于虚拟机资源,杀毒软件配置,补丁机制的问答
|
7月前
|
存储 网络协议 搜索推荐
在Linux中,如何配置和管理虚拟机的网络和存储?
在Linux中,如何配置和管理虚拟机的网络和存储?
|
7月前
|
安全 Windows
【Azure 环境】Azure 的PaaS服务如果涉及到安全漏洞问题后,我们如何确认所用服务的实例(VM:虚拟机)的操作系统已修复该补丁呢?
【Azure 环境】Azure 的PaaS服务如果涉及到安全漏洞问题后,我们如何确认所用服务的实例(VM:虚拟机)的操作系统已修复该补丁呢?
|
7月前
|
API 网络架构
【Azure Developer】如何通过Azure REST API 获取到虚拟机(VM)所使用的公共IP地址信息
【Azure Developer】如何通过Azure REST API 获取到虚拟机(VM)所使用的公共IP地址信息
|
7月前
|
存储 API 开发工具
【Azure 环境】在Azure虚拟机(经典) 的资源中,使用SDK导出VM列表的办法
【Azure 环境】在Azure虚拟机(经典) 的资源中,使用SDK导出VM列表的办法
|
7月前
|
Java 数据安全/隐私保护 Windows
【Azure Developer】使用Java代码启动Azure VM(虚拟机)
【Azure Developer】使用Java代码启动Azure VM(虚拟机)

热门文章

最新文章