设为首页  
联系我们  
加入收藏  
网页制作 冲浪宝典 图形图像 操作系统 软件教学 编程开发 认证考试 安全技术 站长专区 文学驿站 娱乐天地 游戏天地 办公软件
文章搜索
您的位置: 首页 >> 文章首页 >> 安全技术 >> 入侵检测 >> LIDS精通与进阶(一)
精品推荐
入侵检测点击TOP10
·snort+acid打造LINUX下的入侵检测系统(IDS)(上)
·入侵检测系统Radware DefensePro
·Kfsensor IDS+HONEYPOT高级配置
·在家制造你的Cisco IDS
·一个网络入侵检测系统的实现
·LIDS精通与进阶(二)
·网吧入侵和网吧老板斗争到底
·snort+acid打造LINUX下的入侵检测系统(IDS)(下)
·用LIDS增强系统安全
·专家剖析黑客如何通过Google发动攻击
安全技术点击TOP10
·主板芯片级维修技术资料
·Symantec AntiVirus防病毒服务器安装配置使用指南
·教你如何手动查杀“幽灵(I-Worm.Ghost)”病毒
·贴片元件标记对应型号资料
·主板芯片组详解
·在WindowsXP/2003下查看端口对应的进程
·主板点不亮(不显示)的BIOS修复两法
·计算机启动过程详解
·网吧如何禁止使用PP点点通
·主板开机原理
精选专题

LIDS精通与进阶(一)

作者: 来源:网络文章 时间:2005-12-19 16:29:02

LIDS精通与进阶(一)(2)

  • 只可增加文件或目录。这些文件是那些只可以增加大小的文件。大多数是系统的日值文件,如在/var/log里的只可增加文件。
  • 额外的文件或目录,这些文件没有被保护。一般来说,你想要保护目录下的所有文件,但是,还需要有一些特殊的文件不要被保护。所以我们可以定义这些文件作为额外的其他的只读文件。
  • 保护挂载或卸载文件系统。当你在启动的时候挂载文件系统的时候,你可以禁止所有人,甚至是root,去卸载文件系统。你也可以禁止任何人在当前文件系统下挂载文件系统来覆盖它。
          2、LIDS如何在内核保护文件

          在这部分,我们会看到一些内核的代码来理解LIDS是如何保护文件的。

      (1)、Linux文件系统数据结构程序

      首先,我们必须了解Linux的虚拟文件系统。

      在Linux里的每一个文件,不管是什么样子的,都有一个结点inode数,文件系统提供了以下数据结构。

      在/usr/src/linux/include/linux/fs.h

      strUCt inode {
      struct list_head     i_hash;
      struct list_head     i_list;
      struct list_head     i_dentry;

      unsigned long       i_ino; ----> inode number.
      unsigned int       i_count;
      kdev_t          i_dev; ----> device number.
      umode_t          i_mode;
      nlink_t          i_nlink;
      uid_t           i_uid;
      ......
      }

      注意:用来鉴定一个结点inode。这个意思是你可以用一对I_INO,I_DEV来得到一个系统里独一无二的inode。

      在/ur/src/linux/cinclude/linux/dcache.h里

      struct dentry {
          int d_count;
          unsigned int d_flags;
          struct inode * d_inode;       /* Where the name belongs to - NULL is negative */
          struct dentry * d_parent;     /* parent directory */
          struct dentry * d_mounts;     /* mount information */
          struct dentry * d_covers; struct list_head d_hash;   /* lookup hash list */
          struct list_head d_lru;      /* d_count = 0 LRU list */
          struct list_head d_child;     /* child of parent list */
          struct list_head d_subdirs;    /* our
          ......
      }

         dentry是一个目录文件的入口。通过这个入口,我们可以很容易的在文件的父目录下移动。

         例如,如果你一文件的inode是(struct inode*)file_inode,如果你可以用file_inode->d_entry来得到它的目录入口并且用file_inode->d_entry->d_parent来得到父目录的目录入口。

      (2)、LIDS保护数据结构

      在分析完linux文件系统后,让我们来看看LIDS是如何容VFS来保护文件和目录的。

      在/usr/src/linux/fs/lids.c

    • 共7页 9 7 [1] [2] [3] [4] [5] [6] [78 :>

      LIDS精通与进阶(一) 相关文章:
      LIDS精通与进阶(一) 相关软件:
      特别声明:本站除部分特别声明禁止转载的专稿外的其他文章可以自由转载,但请务必注明出处和原始作者。文章版权归文章原始作者所有。对于被本站转载文章的个人和网站,我们表示深深的谢意。如果本站转载的文章有版权问题请联系编辑人员,我们尽快予以更正。
      转载请注明来源:http://www.xgdown.com