diff --git a/3_RootkitTechniques/3.8_privileged_container_escaping/escape.c b/3_RootkitTechniques/3.8_privileged_container_escaping/escape.c index d135191..cff032f 100644 --- a/3_RootkitTechniques/3.8_privileged_container_escaping/escape.c +++ b/3_RootkitTechniques/3.8_privileged_container_escaping/escape.c @@ -13,6 +13,7 @@ #include #include #include +#include MODULE_LICENSE("GPL"); MODULE_AUTHOR("Xcellerator"); @@ -180,7 +181,20 @@ /* * structs for the 2 procfs files we need + * In kernel 5.6+, file_operations is replaced by proc_ops */ +#if LINUX_VERSION_CODE >= KERNEL_VERSION(5,6,0) +// proc_ops version +static const struct proc_ops proc_file_fops_escape = { + .proc_write = escape_write, +}; + +static const struct proc_ops proc_file_fops_output = { + .proc_write = output_write, + .proc_read = output_read, +}; +#else +// file_operations version static const struct file_operations proc_file_fops_escape = { .owner = THIS_MODULE, .write = escape_write, @@ -191,6 +205,7 @@ .read = output_read, .write = output_write, }; +#endif /* * LKM init function