{"id":13508439,"url":"https://github.com/asamy/ksm","last_synced_at":"2025-04-13T02:14:40.235Z","repository":{"id":44393539,"uuid":"63276435","full_name":"asamy/ksm","owner":"asamy","description":"A fast, hackable and simple x64 VT-x hypervisor for Windows and Linux.  Builtin userspace sandbox and introspection engine.","archived":false,"fork":false,"pushed_at":"2021-10-20T19:32:29.000Z","size":1242,"stargazers_count":848,"open_issues_count":12,"forks_count":185,"subscribers_count":56,"default_branch":"master","last_synced_at":"2025-04-13T02:14:06.280Z","etag":null,"topics":["hypervisor","introspect","kernel","linux","reverse-engineering","sandbox","virtualization","windows","x86-64"],"latest_commit_sha":null,"homepage":"https://asamy.github.io/ksm/","language":"C","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/asamy.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2016-07-13T20:15:04.000Z","updated_at":"2025-04-04T19:07:21.000Z","dependencies_parsed_at":"2022-07-15T02:16:48.548Z","dependency_job_id":null,"html_url":"https://github.com/asamy/ksm","commit_stats":null,"previous_names":[],"tags_count":6,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/asamy%2Fksm","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/asamy%2Fksm/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/asamy%2Fksm/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/asamy%2Fksm/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/asamy","download_url":"https://codeload.github.com/asamy/ksm/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248654095,"owners_count":21140236,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["hypervisor","introspect","kernel","linux","reverse-engineering","sandbox","virtualization","windows","x86-64"],"created_at":"2024-08-01T02:00:53.083Z","updated_at":"2025-04-13T02:14:40.190Z","avatar_url":"https://github.com/asamy.png","language":"C","readme":"# ksm v1.6-dev [![Build Status](https://img.shields.io/travis/asamy/ksm/master.svg?style=flat-square\u0026label=Linux)](https://travis-ci.org/asamy/ksm) [![Build Status](https://img.shields.io/appveyor/ci/asamy/ksm/master.svg?style=flat-square\u0026label=Windows)](https://ci.appveyor.com/project/asamy/ksm) \u003ca href=\"https://scan.coverity.com/projects/asamy-ksm\"\u003e\u003cimg alt=\"Coverity Scan Build Status\" src=\"https://scan.coverity.com/projects/10823/badge.svg\"/\u003e \u003c/a\u003e [![BountySource](https://www.bountysource.com/badge/team?team_id=189129\u0026style=raised)](https://www.bountysource.com/teams/ksm?utm_source=ksm\u0026utm_medium=shield\u0026utm_campaign=raised)  \n\nA really simple and lightweight x64 hypervisor written in C for Intel processors.  \nKSM has a self-contained physical memory introspection engine and userspace physical\nmemory virtualization which can be enabled at compiletime.\n\nCurrently, KSM runs on Windows and Linux kernels natively, and aims to support\nmacOS by 2017, if you want to port KSM see `Documentation/SPEC.rst` for more information.\n\n**Note**: You can find Windows 10 precompiled binaries [here](https://ci.appveyor.com/project/asamy/ksm).  \n\n## Purpose\n\nUnlike other hypervisors (e.g. KVM, XEN, etc.), KSM's purpose is not to run\nother Operating Systems, instead, KSM can be used as an extra layer of\nprotection to the existing running OS.  This type of virtualization is usually\nseen in Anti-viruses, or sandboxers or even Viruses.  KSM also supports\nnesting, that means it can emulate other hardware-assisted virtualization tools\n(VT-x).\n\n## Usage under Linux (+sandbox)\n\n[![asciicast](https://asciinema.org/a/10cu6v7c6l0j4532cww8tq1a1.png)](https://asciinema.org/a/10cu6v7c6l0j4532cww8tq1a1)\n\n## Features\n\n- IDT Shadowing\n- EPT violation #VE (Disabled when unavailable - At least Broadwell required)\n- EPTP switching VMFUNC (Emulated when unavailable - At least Haswell required)\n- APIC virtualization (Experimental, do not use)\n- VMX Nesting (Experimental, do not use)\n- Builtin Userspace physical memory sandboxer (Optional)\n- Builtin Introspection engine (Optional)\n\n## Requirements\n\n- An Intel processor (with VT-x and EPT support)\n- A working C compiler (GCC or Microsoft compiler aka CL are supported)\n\n## Supported Kernels\n\n- Windows NT kernel (7/8/8.1/10)\n- Linux kernel (tested under 3.16, 4.8.13 and mainline)\n\n## Documentation\n\n- [Building](https://github.com/asamy/ksm/blob/master/Documentation/BUILDING.rst)\n- [Contributions](https://github.com/asamy/ksm/blob/master/Documentation/CONTRIBUTIONS.rst)\n- [Specification](https://github.com/asamy/ksm/blob/master/Documentation/SPEC.rst)\n- [TODO](https://github.com/asamy/ksm/blob/master/Documentation/TODO.rst)\n\n## Module integration\n\nFew modular examples are included to illustrate usage, those are:\n\n- `epage.c` - A shadow executale page hooking mechanism using multiple EPTP.\n- `introspect.c` - A small and stupid physical memory introspection engine using EPT.\n- `sandbox.c` - A small, incomplete and simple userspace physical memory sandbox.\n\nSee Documentation/BUILDING.rst on how to enable those modules while building.\n\n## Issues (bugs, features, etc.)\n\nFeel free to use Github Issues, there is an Issue Template to help you file\nthings as required.\n\n## References\n\n- Linux kernel (KVM)\n- HyperPlatform\n- XEN\n\n## License\n\nGPL v2, see LICENSE file.  Note that some code is thirdparty, respective\nlicenses and/or copyright should be there, if you think otherwise, feel free to mail me.\n","funding_links":[],"categories":["Research Projects","C","windows","\u003ca id=\"b478e9a9a324c963da11437d18f04998\"\u003e\u003c/a\u003e工具"],"sub_categories":["AMD","\u003ca id=\"19cfd3ea4bd01d440efb9d4dd97a64d0\"\u003e\u003c/a\u003eVT\u0026\u0026虚拟化\u0026\u0026Hypbervisor"],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fasamy%2Fksm","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fasamy%2Fksm","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fasamy%2Fksm/lists"}