2021年1月15日

摘要: 目前Go语言支持GDB、LLDB和Delve几种调试器。其中GDB是最早支持的调试工具,LLDB是macOS系统推荐的标准调试工具。但是GDB和LLDB对Go语言的专有特性都缺乏很大支持,而只有Delve是专门为Go语言设计开发的调试工具。而且Delve本身也是采用Go语言开发,对Windows平台 阅读全文
posted @ 2021-01-15 16:43 tycoon3 阅读(296) 评论(0) 推荐(0)
摘要: 参考资料: Playing with ptrace, Part I Playing with ptrace, Part II 这两篇文章里的代码都是在x86平台上运行的,本文中将其移植到了x86_64平台。 ptrace提供让一个进程来控制另一个进程的能力,包括检测,修改被控制进程的代码,数据,寄存 阅读全文
posted @ 2021-01-15 15:06 tycoon3 阅读(467) 评论(0) 推荐(0)
摘要: KVM 基础知识 kvm是一个内核模块,它实现了一个/dev/kvm的字符设备来与用户进行交互,通过调用一系列ioctl函数可以实现qemu和kvm之间的切换。 KVM结构体 KVM结构体在 KVM的系统架构中代表一个具体的虚拟机,当通过 VM_CREATE_KVM 指令创建一个新的 KVM结构体对 阅读全文
posted @ 2021-01-15 12:03 tycoon3 阅读(278) 评论(0) 推荐(0)
摘要: 主要参考的文章是david942j@217的这篇博客和这篇介绍。 在做abyss这个题目的时候涉及到了很多hypervisor, kvm的内容。虚拟化这一层一般也是我们在逃逸的最后一层了。 Basic Intro KVM的全称是Kernel Base Virtual Machine,基于内核的虚拟机 阅读全文
posted @ 2021-01-15 12:00 tycoon3 阅读(258) 评论(0) 推荐(0)
摘要: KVM is a virtualization technology that comes with the Linux kernel. In other words, it allows you to run multiple virtual machines (VMs) on a single 阅读全文
posted @ 2021-01-15 11:57 tycoon3 阅读(215) 评论(0) 推荐(0)
摘要: 一、背景知识 介绍:KVM 全称是 基于内核的虚拟机(Kernel-based Virtual Machine),它是Linux 的一个内核模块,该内核模块使得 Linux 变成了一个 Hypervisor。 KVM架构:KVM 是基于虚拟化扩展(Intel VT 或者 AMD-V)的 X86 硬件 阅读全文
posted @ 2021-01-15 11:25 tycoon3 阅读(360) 评论(0) 推荐(0)

导航