ITPub博客

首页 > Linux操作系统 > Linux操作系统 > Linux内核入侵检测安全增强实现(下)(转)

Linux内核入侵检测安全增强实现(下)(转)

原创 Linux操作系统 作者:BSDLite 时间:2007-08-16 17:17:56 0 删除 编辑
Linux内核入侵检测安全增强实现(下)(转)[@more@]  四.实现

  这一段我们来实现我们刚才提出的在linux系统下建立参考监视器的设想。开始我们将描述一个访问控制功能函数,这个功能函数包括增加到内核的访问控制数据库(ACD)的数据结构定义。这个新的系统调用来读,写和升级ACD和参考功能函数。还会附有check_rootproc的代码。

  4.1 认证功能函数

  访问控制数据库包括一个关于每一个系统调用的参考监视器。在这里,只有两个主要的数据结构起作用,一个叫做setuid_acd用来检查对setuid的系统调用,一个是execve_acd来检查对execve的系统调用。这两个结构都在下面的图2中列出。
CODE:
/*setuid_acd*/

  static char rpasswd[LEN_PWD];

  /*execve_acd*/

  typedef struct setuid_proc_id{

  char comm[16];

  unsigned long count;

  }suidpid_t;

  typedef struct setuid_program{

  suidpid_t suidp_id;

  suidp_t *next;/*下一个程序*/

  }suidp_t;

  typedef struct exe_file_id{

  __kernel_dev_t device; /*设备号码r*/

  unsigned long inode; /*inode结点号码*/

  __kernel_off_t size; /*大小*/

  __kernel_time_t modif: /*修改时间*/

  }efid_t;

  typedef struct executable_file{

  efid_t efid;/*文件鉴定时间信息*/

  int prog_nr; /*可以调用exe的程序数量*/

  suidp_t *programs; /*认证程序列表*/

  }efile_t;

  typedef struct executable_file_list{

  efile_t lst[NR_EXE];

  unsigned int total; /*在列表里的exe的总数*/

  }eflst_t;

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/10617542/viewspace-962249/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论