{"id":20821987,"url":"https://github.com/mikehorn-git/kernel-dev","last_synced_at":"2025-04-10T01:34:25.468Z","repository":{"id":258823987,"uuid":"859371266","full_name":"MikeHorn-git/Kernel-Dev","owner":"MikeHorn-git","description":"Linux Kernel development Vagrant lab. Featuring LKM rootkit experiments samples","archived":false,"fork":false,"pushed_at":"2025-04-06T15:22:12.000Z","size":70083,"stargazers_count":5,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-04-06T16:29:41.661Z","etag":null,"topics":["kprobe","linux","lkm","rootkit","vagrant"],"latest_commit_sha":null,"homepage":"","language":"Ruby","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/MikeHorn-git.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,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-09-18T14:49:23.000Z","updated_at":"2025-04-06T15:23:14.000Z","dependencies_parsed_at":"2024-11-06T13:23:15.064Z","dependency_job_id":"bd023258-73c2-4b05-ab05-dabbb8433db6","html_url":"https://github.com/MikeHorn-git/Kernel-Dev","commit_stats":null,"previous_names":["mikehorn-git/kernel-dev"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MikeHorn-git%2FKernel-Dev","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MikeHorn-git%2FKernel-Dev/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MikeHorn-git%2FKernel-Dev/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MikeHorn-git%2FKernel-Dev/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/MikeHorn-git","download_url":"https://codeload.github.com/MikeHorn-git/Kernel-Dev/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248140921,"owners_count":21054369,"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":["kprobe","linux","lkm","rootkit","vagrant"],"created_at":"2024-11-17T22:13:38.962Z","updated_at":"2025-04-10T01:34:25.458Z","avatar_url":"https://github.com/MikeHorn-git.png","language":"Ruby","funding_links":[],"categories":[],"sub_categories":[],"readme":"[![kernelnewbies](https://github.com/user-attachments/assets/95a8f601-2a65-4563-b359-861b5b49eb8c)](https://kernelnewbies.org/)\n\n# Description\n\nA [Linux Kernel](https://en.wikipedia.org/wiki/Loadable_kernel_module) developer environments.  \n\n## Requirements\n\n```bash\nVAGRANT_DISABLE_STRICT_DEPENDENCY_ENFORCEMENT=1 vagrant plugin install vagrant-reload\n```\n\n### Libvirt\n\n```bash\nVAGRANT_DISABLE_STRICT_DEPENDENCY_ENFORCEMENT=1 vagrant plugin install vagrant-libvirt\n```\n\n### Virtualbox\n\nSupported by default.\n\n## Images\n\n* Alpine\n* Arch\n* Debian\n* Gentoo\n* Ubuntu\n\n## Provider\n\n* Libvirt\n* Virtualbox\n\n---\n\n## Build\n\n```bash\ngit clone https://github.com/MikeHorn-git/Kernel-Dev.git\ncd Kernel-Dev\n```\n\n### Libvirt\n\n```bash\nmake build\n```\n\n### Virtualbox\n\nThe Vagrantfile use libvirt provider by default.\nRemove ```ENV['VAGRANT_DEFAULT_PROVIDER'] = 'libvirt'```.\n\n```bash\nsed -i \"/ENV\\['VAGRANT_DEFAULT_PROVIDER'\\] = 'libvirt'/d\" Vagrantfile\nmake build\n```\n\n## Makefile\n\n```Makefile\nUsage: make \u003ctarget\u003e\nTargets:\n  help         Display this help message\n  base         Deploy base VM\n  build        Deploy VM and build kernel with defconfig\n  custom       Deploy VM miscs tools\n  all          Execute base, build and custom command\n  format       Format all .c, .h files with clang-format\n```\n\n## Vagrant Provisionning\n\n## Default\n\n* Update \u0026 Upgrade distros\n* Mandatory kernel-build packages\n* System tweaks:\n   * `CTRL+L` clears the terminal.\n   * Sets `TERM=xterm-256color` to prevent terminal type errors.\n\n## VAGRANT_KERNEL\n\nUse ```make build``` or export `VAGRANT_KERNEL=true` in env:\n\n* Kernel Download: Linux kernel version `6.11`.\n* Kernel Compilation and Installation:\n   * Extracts and compiles the kernel.\n   * Installs kernel modules and the kernel itself.\n* Initramfs Creation\n* Bootloader Update\n\n## VAGRANT_CUSTOM\n\nUse ```make custom``` or export `VAGRANT_CUSTOM=true` in env:\n\n* Oh-My-Bash (OMB): Installs Oh-My-Bash.\n* Rsyslog:\n   * Installs `rsyslog`.\n   * Starts the service and enables it at boot.\n\n---\n\n# Src\n\n* hello syscall\n* [jiffy](https://en.wikipedia.org/wiki/Jiffy_(time)#Computing) syscall\n* Userland test\n\n# Module\n\n\u003e [!Important]\n\u003e These samples are for educational and research purposes only.\n\n* Kprobe-based hide LKM\n* Openrc persistence\n* Local revshell\n\n## List\n\n* file_hide\n* hello\n* lkm_hide\n* persistence\n* pid_hide\n* port_hide\n* revshell\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmikehorn-git%2Fkernel-dev","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmikehorn-git%2Fkernel-dev","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmikehorn-git%2Fkernel-dev/lists"}